@media only screen and (max-width: 1624px) {
.main-slider:before {left:-140px;}
.main-slider:after {right:-140px;}
body { overflow-x:hidden}
}

@media only screen and (max-width: 1348px) {
.logo { width:300px; float:left; text-align:center; padding-top:2rem;}
.logo img { width:80%;}
.search { right:2rem}
header nav { float:left; width:calc(100% - 300px); padding-top:.5rem;}

.robot { display:none;}
.main-inner header .body { padding:0 !important;}
}

@media only screen and (max-width: 1280px) {
.logo { width:300px; float:left; text-align:center; padding-top:2rem; padding-left:0;}
.logo img { width:90%;}
.search { right:110px; width:190px;}
header nav { float:left; width:calc(100% - 300px); padding-top:.5rem;}
header .body { max-width:1400px; padding:0 110px;}
.main-inner header .body { max-width:1215px; padding:0 25px!important;}
.main-inner header .body .search { right:25px;}
}
@media only screen and (max-width: 1260px) {
.slogan span { font-size:1.556rem; padding-left:10rem;}
.slogan span:first-of-type { padding-right:10rem;}
.hex-container { width:350px;}
.kids, .teachers { width:350px; height:303px; background-size: 100% 100%;}

header .body { height: 210px;}
.logo { width:100%; padding-top:8px; padding-left:0;}
.logo img { width: auto;}
.search { width:20%;}
.search form input[type=text] { padding-left:.5rem;}
header nav {width:100%;}
header nav ul li:nth-of-type(1) { margin-left:0}
header nav ul li:nth-of-type(2n+1) {margin-top:55px; line-height:100px;}
header nav ul li:nth-of-type(2), nav ul li:nth-of-type(4) { margin-top:0px; line-height:119px; }
}

@media only screen and (max-width: 1200px) {
.body { width:92%;}
.boxes article { padding:0 1rem 2.5rem;}

.main-inner header .body { width:92%;}

.tabs-wrapper label { font-size:.889rem}
}


@media only screen and (max-width: 1024px) {
footer .body { width:92%}
.info {display:block; text-align:left;}
.info div { display: inline-block; padding-bottom:1rem}
.quote, .quote-inner { font-size:1rem;}
.slogan span { font-size:1.2rem;}

header .body { height: 185px;}
.search { top:70px;}
header nav ul li { width:110px; height:96px; line-height:96px; background-size:100% 100%; margin-left:-15px; font-size:.889rem !important}
header nav ul li:nth-of-type(1) { margin-left:0}
header nav ul li:nth-of-type(2n+1) {margin-top:40px; line-height:90px; background-size:100% 100%;}
header nav ul li:nth-of-type(2), header nav ul li:nth-of-type(4) { margin-top:0px; line-height:96px; background-size:100% 100%; }
header nav ul li a { padding:0}

.left-nav { width:26%;}
.text { width:74%; padding:0 2rem;}
.text.fullwidth { width:100%;}
.team div { width:30.33%; margin-left:3%;}
.team div:nth-of-type(4n+1) { margin-left:3%; clear: none;}
.team div:nth-of-type(3n+1) { margin-left:0; clear:left;}
.left-nav ul li a { padding:0 .7rem;}

.text .news-list img { width:100%; max-width:100%;}

}

@media only screen and (max-width: 1011px) {
.boxes article { width:50%;}
.boxes article:last-of-type {width:100%;}
.boxes article span { text-align:left;}
.quote { width:90%; padding:.5rem 10%;}
.slogan { padding:0;}
.slogan span { padding-top:4.3rem; padding-bottom:1rem; border-top:10px solid #fff;font-size:1.1rem; }
.hexes { margin-top:2rem;}
.main { background-size:auto 50%;}

header .body { height: 135px;}
.search { top: 20px;}
header + .body { position:relative; z-index:10}
#toggle {position:absolute; appearance:none; cursor:pointer; left:-100%; top:-100%; display:block;}

#toggle + label { cursor:pointer; background: url(../img/open.svg) no-repeat center center; font-family: 'pf_square_sans_promedium', sans-serif; -webkit-font-smoothing: antialiased; width:110px; height:96px; position:absolute; bottom:-40px; left:4% !important; margin-left:25px;}
#toggle + label:after { content:"";}

#toggle ~ .main-nav { opacity:0; z-index:-3;}
#toggle:checked ~ .main-nav { opacity:1;  z-index:160;}
#toggle:checked + label { background: url(../img/close.svg) no-repeat center center;}
#toggle:checked + label:after { content:""}

header nav ul { position: absolute; top:135px; z-index:160; -webkit-transition:opacity 300ms ease-in; transition:opacity 300ms ease-in; margin-left:5px; max-width:300px;}
header nav ul li { position:relative; width:100%; height: auto; line-height: normal !important; text-align: left; float:left; margin-left:0;}
header nav ul li:nth-of-type(2n+1) {background:#f0ede9; margin-top:0 !important}
header nav ul li:nth-of-type(1) { margin-left:0}
header nav ul li:nth-of-type(2), header nav ul li:nth-of-type(4) { background:#e3ded7; margin-top:0 !important; line-height: normal; }
header nav ul li a { color:#000; text-decoration:none; padding:.5rem 1rem; display:block;}

.search { width:40%;}

.left-nav { position:relative;}
.left-nav select { display:block; font-family: 'pf_square_sans_promedium', sans-serif; font-size:1rem; width:100%; height:3rem; background:#f0ede9; border:none; padding:0 .7rem; -webkit-appearance:none; appearance:none; position:relative}
.left-nav:after { content:'↓'; font-family: 'pf_square_sans_promedium', sans-serif; font-size:1rem; position:absolute; right:2rem;  background:#f0ede9; width:1.5rem; height:3rem; line-height:3rem; top:1rem; z-index:5; text-align:center;}
.left-nav ul { display:none;}
.left-nav, .text { width:100%;padding:1rem;}

.gallery-box { width:48.5%;padding:2.5rem 5%; margin-bottom:2rem; background:#f0ede9; max-width:600px;}
.gallery-box:nth-of-type(3n+1) { clear:none; margin-left:2%}
.gallery-box:nth-of-type(2n+1) { clear:left; margin-left:0}

table.tab-calendar thead tr td, table.tab-calendar tr td em { display:none; height:0;}
table.tab-calendar { border-collapse:collapse;}
table.tab-calendar tr td { display:block; width:100%; margin-bottom:0; text-align:left; padding:0}
table.tab-calendar tr td em { display:none;}
table.tab-calendar tr td a { height:auto !important; position:relative; line-height: normal; padding:1rem 2rem; width:100% !important; text-align:left; margin-bottom:1px; background:#f0ede9; color:#666}
table.tab-calendar tr td a:before {content: attr(data-title); float: left; opacity: 0.5; color:#aaa; font-size:.75rem}
table.tab-calendar tr td a small { position:relative; display:block; opacity:1; height:auto; bottom:auto; text-align:left; width:auto; left:auto; margin-left:0; transition:none; padding:0; width:100%; background:#f0ede9;  color:#666}
table.tab-calendar tr td a small:after { display:none;}
table.tab-calendar tr td a:hover small {opacity:1; height:auto; bottom:auto;}
}

@media only screen and (max-width: 799px) {
	table.tickets { margin-top:1rem;}
table.tickets thead {display: none;}

table.tickets td:nth-child(1), table.tickets td:nth-child(2), table.tickets td:nth-child(3){ width:100%;}
table.tickets td:nth-child(1):before, table.tickets td:nth-child(2):before, table.tickets td:nth-child(3):before{ display:block; padding:.3rem 1.5rem .5rem 0; width:100%; color:rgba(0,0,0,.4)}
table.tickets tr, table.tickets td{ display: block;}
table.tickets tr{position: relative; margin-bottom: 1em; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);}
table.tickets td{ border-top: none;}

.contact-info { width:100%; float:left; padding:3rem 2rem 0 .5rem;}
.contact-form { width:100%; float:left; padding:3rem 0;}

.main-info { width:100%; padding-right:0;}
aside { width:100%; padding-top:2rem}
}

@media only screen and (max-width:767px) {
.hex-container { position:relative; float:left; text-align:center; width:100%; left: auto; top: auto; -webkit-transform:translate(0,0); transform:translate(0,0); text-align:center}
.slogan { background:none;}
.slogan span {padding:.7rem 0 !important; margin:0;border-top:0 solid #fff; width:100%; text-align:center !important;  background: none !important}
.slogan span:first-of-type { padding-top:1rem !important;  background:#f0ede9 !important;}

.kids { float:none; margin:0 auto 1rem;}
.teachers { float:none; margin:0 auto;}

.quote-inner { line-height: normal;
border-bottom:70px solid #6c9689; border-left: 35px solid transparent; border-right:35px solid transparent; height: 0;}
.quote-inner span { display:inline-block; padding-top:.7rem}
.partners div {width:48.5%;}
.partners div:nth-of-type(3n+1) { margin-left:3%; clear:none;}
.partners div:nth-of-type(2n+1) { margin-left:0; clear:left;}

.col1 { width:100%; padding:3rem 0 0 0;}
.col2 { width:100%; padding:3rem 0}

.styled-select {width:100% !important;}
.styled-select.small-s { width:100%; margin-left:0;}
.f-section p {width:100% !important; margin-right:0;}
.f-section p.small { width:100%;}

.tabs-wrapper label, #tab1:checked + label, #tab2:checked + label, #tab3:checked + label, #tab4:checked + label, .tabs-wrapper label:hover { width: 100%; display: block;margin-bottom:2px; border-left: 0px solid transparent; border-right:0px solid transparent; }
#fileuploadurl  { width:100%;}

.tabs-wrapper.calendar label {line-height:45px; white-space: normal; padding:0 2rem;}
}

@media only screen and (max-width: 640px) {
.boxes article { width:100%;}
.quote { padding:.5rem 20%;}

.team div { width:48.5%; margin-left:3%;}
.team div:nth-of-type(3n+1) { margin-left:3%; clear: none;}
.team div:nth-of-type(2n+1) { margin-left:0; clear:left;}


}

@media only screen and (max-width: 639px) {
table.tab-calendar caption { padding:0 0 1rem 0;}
table.tab-calendar caption a:first-of-type { position: relative; left: auto; top: auto; display:block; text-align:center; width:100%; padding:.5rem 0}
table.tab-calendar caption a:last-of-type {position: relative; left: auto; top: auto; right:auto; display:block; text-align:center; width:100%; padding:.5rem 0}
}

@media only screen and (max-width: 599px) {
.copy, .abc { width:100%; text-align:center; line-height:2}
.info div { display:  block; padding-right:0; width:100%; text-align:center;}

.main-slider:before { background:none;}
.main-slider:after {background:none;}
.quote { width:100%; padding:.5rem 1rem;}

.search { right:4%; width:60%;}
header .body { padding:1rem 0 0 0}
#toggle + label { left:4%; margin-left:0}
nav ul { left:4%; width:92%; max-width:600px;}

.quote-inner {border-left: 0 solid transparent; border-right:0 solid transparent;}
.quote-inner span { display:inline-block; padding:.4rem 1rem 0;}

.main-inner header .body { max-width:1215px; padding:0 !important;}
.main-inner header .search { right:0 !important; width:60%;}
.main-inner header #toggle + label { left:0; margin-left:0}
.main-inner header nav ul { left:0; width:92%; max-width:600px;}

.text img { max-width:100%;}

.news-list, .gallery-box, .partners div { width:100%; margin-left:0;}
.contact-form p { width:100%;}

.text .main-info .partners div { text-align:left;}

.page-table  tr td { padding:.5rem 1rem; margin:0; vertical-align:top; border-bottom:3px solid #fff; display:block;}
.page-table tr td:nth-of-type(1) { width:35%; text-align: left;}
.page-table tr td:nth-of-type(2) {  border-bottom:0px solid #fff;}
.page-table tr, .page-table td{ display: block;}
.page-table  tr {position: relative; margin-bottom: 1em; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);}
}

@media only screen and (max-width:479px) {

#tab1:checked + label, #tab2:checked + label, #tab3:checked + label, #tab4:checked + label, .tabs-wrapper label:hover { height:auto; border-bottom:none; background:#e5d770; padding:1rem 0; line-height: normal; display:block;}
.tabs-wrapper label {height:auto; border-bottom:none; background:#f0ede9; padding:.7rem 0; line-height: normal; display:block;}

.tabs-wrapper.calendar label {padding:.7rem 0; line-height: normal; display:block;}
}