
:root {
	--event-red: rgb(253,15,29);
}

.align-right { text-align:right; }
.float-right { float:right; }
.cursor-pointer { cursor:pointer; }
.hidden { display:none; }
.is-invalid { border-color:#ff0000 !important; }
.form-validation-error { color:#ff0000; font-weight:bold; margin:-10px 0 10px 0;}
.smaller-font { font-size:0.875rem; }
.mt-5 { margin-top:5px; }
.mt-10 { margin-top:10px; }
.mt-22 { margin-top:22px; }
.mt-30 { margin-top:30px; }
.mt-40 { margin-top:40px; }
.mt-50 { margin-top:50px; }
.mb-0 { margin-bottom:0; }
.mb-5 { margin-bottom:5px; }
.mb-10 { margin-bottom:10px; }
.mb-20 { margin-bottom:20px; }
.mb-30 { margin-bottom:30px; }
.mb-50 { margin-bottom:50px; }
.desktop-only { display:block; }
.mobile-only { display:none; }
.not-visible { position:absolute; opacity:0; }
.row.remove-margin .columns:first-child { padding-left:0; }
.row.remove-margin .columns:last-child { padding-right:0; }
.clearfix::after {
  content: "";
  clear: both;
  display: table;
}

.gradient-orange {
	background: rgb(255,181,74); /* Old browsers */
	background: -moz-linear-gradient(top, rgba(255,181,74,1) 0%, rgba(234,145,7,1) 100%);
	background: -webkit-linear-gradient(top, rgba(255,181,74,1) 0%, rgba(234,145,7,1) 100%);
	background: linear-gradient(to bottom, rgba(255,181,74,1) 0%, rgba(234,145,7,1) 100%);
}

.gradient-gray {
	background-color: rgb(255,255,255); /* Old browsers */
	background-image: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(224,224,224,1) 100%);
	background-image: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(224,224,224,1) 100%);
	background-image: linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(224,224,224,1) 100%);
}

.gradient-red {
	background: rgb(253,15,29); /* Old browsers */
	background: -moz-linear-gradient(top, rgba(253,15,29,1) 0%, rgba(228,7,20,1) 100%);
	background: -webkit-linear-gradient(top, rgba(253,15,29,1) 0%, rgba(228,7,20,1) 100%);
	background: linear-gradient(to bottom, rgba(253,15,29,1) 0%, rgba(228,7,20,1) 100%);
}

.sb-loader {
  border: 16px solid #f3f3f3; /* Light grey */
  border-top: 16px solid #fda01c; /* red */
  border-radius: 50%;
  width: 120px;
  height: 120px;
  animation: spin 2s linear infinite;
  position:absolute;
  left:50%;
  top:50%;
  margin-left:-60px;
  margin-top:-60px;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.tx-schoolbooster form > h3 { color:#fda01c; margin:0 0 10px 0; }

.tx-schoolbooster [type="color"], .tx-schoolbooster [type="date"], .tx-schoolbooster [type="datetime-local"], .tx-schoolbooster [type="datetime"], .tx-schoolbooster [type="email"], .tx-schoolbooster [type="month"], .tx-schoolbooster [type="number"], .tx-schoolbooster [type="password"], .tx-schoolbooster [type="search"], .tx-schoolbooster [type="tel"], .tx-schoolbooster [type="text"], .tx-schoolbooster [type="time"], .tx-schoolbooster [type="url"], .tx-schoolbooster [type="week"], .tx-schoolbooster textarea {
	padding:9px;
}

.off-canvas-wrapper input.styled-checkbox, .off-canvas-wrapper input.styled-radio {
	display:none;
}

input.styled-checkbox + span::before {
  width: 18px;
  height: 18px;
  background:url(../Images/checkbox.png) no-repeat center center;
  display: block;
  content: "";
  float: left;
  margin-right: 8px;
  margin-top:1px;
  margin-bottom:8px;
}

input.styled-checkbox:checked + span::before {
  content: "";
  color:#fff;
  background:url(../Images/checkbox-checked.png) no-repeat center center;
  font-weight:bold;
  font-size:16px;
  line-height:16px;
  text-align:center;
}

input.styled-checkbox + span {
	float:left;
	display:block;
	width:98%;
	line-height:18px;
}

input.styled-checkbox + span > span {
	padding-left:26px;
	display:block;
	line-height:1;
}

input.styled-radio + span::before {
  width: 16px;
  height: 16px;
  border:1px solid #aaa;
  border-radius:8px;
  display: block;
  content: "";
  float: left;
  margin-right: 8px;
  margin-top:5px;
  margin-bottom:8px;
}

input.styled-radio:checked + span::before {
  content: "";
  color:#fff;
  background-color:#aaa;
  box-shadow:0 0 1px 2px inset #fff;
  font-weight:bold;
}

input[name="mandatory"] {
	display:inline-block;
	width:50px;
	height:2px;
	opacity:0;
	margin:0;
}

label[for="chkPrivacy"] input.styled-checkbox + span::before {
	margin-bottom:20px;
}

.typo3-messages {
	list-style:none;
	margin-left:0;
}

.box {
	border-top: 2px solid #e96b76; border-left:2px solid #e96b76; border-right:2px solid #a62d22; border-bottom:2px solid #a62d22;
	position:relative;
	width:100%;
	height:100%;
	 display: flex;
  align-items: center;
  justify-content: left;
}
body.theme-school-booster .csc-default .box h3, .box h3 { color:#fff; font-size:28px; margin:0; text-transform:uppercase; }
body.theme-school-booster .csc-default .box h4, .box h4 { color:#fff; font-size:16px; margin:0; text-transform:uppercase; font-weight:normal; 
	display: flex;
	align-items: center;
	height: 100%;
}
.box-col { width:50%; float:left; margin-bottom:0; }
.box-col.third { width:33.333%; }
.box-col.third:nth-child(3n) { width:33.33%; }
.box-col.third > div { height:80px; }
.box-full { width:100%; height:80px; display:inline-block; }
.box-full h3 { margin-left:10px; }
.box-half { height:80px; }
.box-category { display:inline-block; }
.box-category h4 { display: flex; align-items: center; justify-content: left; height:66px; position:relative; }

.box-col.third > div.sub-box { border: 2px solid #fec068; background-color:#fff4e5; color:#4f4f4f; width:100%; height:215px; clear:both; }

.form-sb .row { margin-left:-0.9375rem; margin-right:-0.9375rem; }
.form-sb .columns { position:relative; }
.form-sb select { background-position: right -0.4rem center; padding:0.5rem; font-size:1rem; border: 1px solid #cacaca; color:#0a0a0a; height: 2.4375rem; }
.form-sb .form-check { margin:1rem 0 1.5rem 0; }
.form-sb .form-check-label > input { width: 13px; margin-top:7px; margin-bottom:2rem; float:left; }
.form-sb .additionalinfo { position:absolute; left:-800px; width:20px; }
.invalid-feedback { margin-top: 10px; margin-bottom: 10px; color: red; font-weight: bold; display:none; clear:both; }
.invalid-feedback:before { content:''; display:table; clear:both; margin-bottom:10px;}
.is-invalid { border:1px solid red; }
.frame-default .tx-schoolbooster a { color:#fda01c; }
.frame-default .tx-schoolbooster a.btn-submit, .tx-schoolbooster input.btn-submit { background-color:#fda01c; color:#fff; }
.frame-default .tx-schoolbooster a.btn-submit.btn-smaller { padding:5px 15px; }
.frame-default .tx-schoolbooster a.btn-submit img { vertical-align:sub; margin-right:6px; }

p > a.btn-submit { display:inline-block; }

.adtype {  }
.adtype .icon { position:absolute; right:27px; bottom:0; }

.radio-dot { width:24px; height:24px; border-radius:12px; background-color:#fff; margin:-4px 36px 0 12px; display:inline-block; vertical-align:middle; }
.radio-dot img { display:none; }
.radio-dot.active img { display:block; }

.box-category .radio-dot { margin-right:10px; }
.box-category .category-title { width:53%; vertical-align:middle; hyphens:auto; line-height:1.05; letter-spacing:0; }
.box-category .category-title.desktop-only { display:inline-block; }
.box-category .category-title.mobile-only { display:none; }
.box-category .icon { position:absolute; right:7px; top:5px; }
.arrow { text-align:center; border-top:2px solid #ffb33d; margin:0 10px; display:block; }
.arrow img { display:block; margin:4px auto 0 auto; }
ul.subcategories { list-style:none; margin:5px 10px; padding:0; }
.box-category input.styled-checkbox + span {  }
ul.subcategories li span span { display:inline-block; width:85%; margin-top:1px; margin-bottom:6px; }

#upload-preview, .upload-preview {
	width:100%;
}

#upload-preview > div, .upload-preview > div {
	display:inline-block;
	margin-right:12px;
	margin-bottom:12px;
	vertical-align:top;
}

#upload-preview div.frame, .upload-preview div.frame {	
	border:1px solid #ededed;
	box-shadow:inset 0 0 3px 3px rgba(0,0,0,0.03);
	width:146px;
	height:113px;
}

#upload-preview .dz-details, #upload-preview .dz-progress, #upload-preview .dz-error-message, #upload-preview .dz-success-mark, #upload-preview .dz-error-mark,
.upload-preview .dz-details, .upload-preview .dz-progress, .upload-preview .dz-error-message, .upload-preview .dz-success-mark, .upload-preview .dz-error-mark {
	display:none;
}

#btn-add-img, #btn-add-image, #btn-add-logo {
	background:url(../Images/camera.png) no-repeat center center transparent;
}

#modal-upload, .modal-upload {
	position:fixed;
	z-index:1000;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,0.3);
	text-align:center;
}

#modal-upload .upload-wrapper, .modal-upload .upload-wrapper {
	position:absolute;
	left:50%;
	top:50%;
	margin-top:-100px ;
	margin-left:-250px;
	width:500px;
	background-color:#fff;
}

#cancel-upload,  .btn-cancel-upload {
	margin:0 auto 10px auto;
}

.dropzone {
	margin:12px;
}

.dz-functions {
	padding:2px 6px;
	border:1px solid #ededed;
}

.dz-functions > label, .dz-functions > span {
	font-size:0.875rem;
}

.dz-functions i {
	margin:0 9px 0 3px;
	color:#999;
}

/* Filter */

.box-filter > div {
	width:50%;
	display: flex; align-items: center; justify-content: left;
	color:#fff;
}
.box-filter label {
	font-weight:bold; text-transform:uppercase; color:#fff;
	padding-left:12px; padding-right:12px;
	font-size:18px;
}
.box-filter select {
	width:242px;
	height:46px;
	vertical-align:middle;
	border:0;
	margin:0;
	padding:5px 30px 5px 15px;
	background-color:transparent;
	box-shadow:inset 0 1px 2px hsl(0deg 0% 4% / 10%);
}
.contactform select {
	padding:5px 30px 5px 15px;
	height:2.4375rem;
	box-shadow:inset 0 1px 2px hsl(0deg 0% 4% / 10%);
}
.box-filter input {
	width:260px;
	height:46px;
	vertical-align:middle;
	border:0;
	margin:0;
	background-color:transparent;
	padding-left:40px !important;
}
.box-filter > div > div {
	position:relative;
	margin:12px 0;
}
.box-filter > div:last-child img {
	position:absolute;
	left:10px;
	top:12px;
	z-index:10;
	cursor:pointer;
}
.box-filter .clear-field {
	position:absolute;
	right:10px;
	top:5px;
	z-index:10;
	color:#666;
	font-size:24px;
}

/* List */

.sb-item { background-color:#f3f3f3; margin-bottom:12px; position:relative; display:none; }
/*.sb-item:nth-child(1), .sb-item:nth-child(2), .sb-item:nth-child(3), .sb-item:nth-child(4), .sb-item:nth-child(5) {
	display:block;
}*/
.sb-item.available { cursor:pointer; }
.sb-item .labels { position:absolute; right:0; top:0; width:auto; display: flex; align-items: center; justify-content: right; }
.sb-item .labels span {
	display: flex; align-items: center; justify-content: center;
	min-width:42px;
	height:42px;
	text-align:center;
	vertical-align:middle;
	margin-left:2px;
	color:#fff;
}
.sb-item .labels span:first-child { padding-left:20px; padding-right:20px; font-weight:bold; text-transform:uppercase; }
.sb-item .labels span img {
	width:32px;
	height:auto;
	margin:auto auto;
	vertical-align:middle;
}
.sb-item .labels span.category-4 img {
	width:40px;
}
.sb-item .list-img-wrap {
	width:200px;
	margin:12px 28px 12px 12px;
	float:left;
	position:relative;
}
.sb-item .list-img {
	width:200px;
}
.sb-item .success-label {
	position:absolute;
	left:0;
	top:0;
}
.sb-item h2 {
	font-size:20px;
	color:#010101;
	margin:20px 0 0 0;
}
.sb-item p {
	padding-right:28px;
}
.sb-item .btn-more {
	position:absolute;
	bottom:10px;
	right:12px;
}


/* Details */

.info-header h1 {
	font-size:20px;
	margin:0;
}
.info-header .itemlabel-wrap {
	display:inline-block;
}
.info-header .itemlabel {
	display: flex; align-items: center; justify-content: center;
	font-weight:bold;
	min-width:42px;
	height:42px;
	text-align:center;
	text-transform:uppercase;
	vertical-align:middle;
	margin-left:2px;
	color:#fff;
	padding-left:20px;
	padding-right:20px;
}
.sb-images {
	margin-left:-1px;
	margin-right:-1px;
}
.sb-images figure {
	display:inline-block;
	width:33.3333%;
	margin:0;
	padding:0 1px;
	overflow:hidden;
}
.sb-images figure img {
	margin:0;
}
.provider-info {
	padding:10px 20px;
	background-color:#fff4e4;
}

/* Form */

.contactform {
	margin-left:-0.9375rem;
	margin-right:-0.9375rem;
	position:relative;
}

.contactform h2, h2.school-booster {
	color:#fe9e15;
	margin:1.5rem 0 1rem 0;
}

img#captcha {
	display:block;
	margin-bottom:0.75rem;
	margin-bottom:0.75rem;
}

#form-message {
	color:#ff0000;
	font-weight:bold;
	display:none;
}

.contactform .sb-loader-wrap {
	position:fixed;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background-color:rgba(255,255,255,0.8);
	display:none;
	z-index:9999;
}

#msg-form-sent {
	font-weight:bold;
	display:none;
}
	
.page-526 .content-navigation .tx-dce-pi1, .page-526 .content-navigation .link-icon,
.page-556 .content-navigation .tx-dce-pi1, .page-556 .content-navigation .link-icon,
.page-557 .content-navigation .tx-dce-pi1, .page-557 .content-navigation .link-icon,
.page-559 .content-navigation .tx-dce-pi1, .page-559 .content-navigation .link-icon {
	vertical-align:top;
}

@media screen and ( min-width:481px ) {
	/*.sb-images figure:nth-child(3n+1) img {
		margin-left:0;
	}
	.sb-images figure:nth-child(3n+3) img {
		margin-right:0;
	}*/
}

@media screen and ( max-width:768px ) {
	
	.form-sb .row { margin-left:0; margin-right:0; }
}

@media screen and ( max-width:480px ) {
	
	.box-category .category-title.desktop-only { display:none; }
	.box-category .category-title.mobile-only { display:inline-block; width:calc(100% - 30px); }
	
	.box-col.third { width:100% !important; }
	.box-col.third > div.sub-box { height:auto; }
	
	.box.box-filter { display:block; padding-bottom:12px; }
	.box-filter > div { width:100%; display:block; clear:both; }
	.box-filter > div > div { margin:0 12px; }
	.box-filter > div:after { content:''; display:table; width:100%; }
	.box-filter input, .box-filter select { width:100%; }
	
	.sb-item .list-img { float:none; margin-top:52px; margin-bottom:0; }
	.sb-item h2 { margin:10px 12px 0 12px; }
	.sb-item p { padding-left:12px; }
	
	.hide-mobile { display:none; }
}