﻿@charset "utf-8";

/*
font-family:'Montserrat', sans-serif;
font-family:'Chewy', sans-serif;
font-family:'Nunito Sans', sans-serif;
*/

html, body {margin: 0; padding: 0; height:100%; font-size:19.2px;}
body  {text-align: center; font-family:'Nunito Sans', sans-serif; font-size:0; font-weight:400; line-height:1.8; color:#212121; height:100%; overflow-x:hidden;}
a img {border:none;}

/* -------- Text ------------ */
h1 {font-family:'Chewy', sans-serif; position:relative; font-size:86px; line-height:1; font-weight:400; color:#0288CF; margin:16px 0;}
h2 {font-family:'Chewy', sans-serif; position:relative; font-size:72px; line-height:1; font-weight:400; color:#0288CF; margin:16px 0;}
h3 {font-family:'Chewy', sans-serif; position:relative; font-size:36px; line-height:1.1; font-weight:400; color:#0288CF; margin:16px 0;}
h4 {font-family:'Montserrat', sans-serif; position:relative; font-size:24px; line-height:1.5; font-weight:900; color:#424242; margin:16px 0;}
h5 {font-family:'Montserrat', sans-serif; position:relative; font-size:21px; line-height:1.7; font-weight:600; color:#4F4F4F; margin:16px 0;}
h6 {position:relative; font-size:18px; line-height:1.8; font-weight:400; color:#212121; margin:16px 0;}
p {font-size:16px; line-height:1.8; font-weight:400; color:#212121; margin:16px 0;}

a  {color:#0080BD; text-decoration:none;}
a:hover {text-decoration:underline;}
b, strong {font-weight:900;}

hr {border:none; border-bottom:1px solid #909090; margin:24px 0; clear:both;}
blockquote {padding:16px; border-left:6px solid #E80285; margin:16px 0;}
blockquote * {margin:0;}
table, li {font-size:16px;}

.center, .align-center {text-align:center;}
.right, .align-right {text-align:right;}

.blue {color:#0288CF;}
.pink {color:#E80285;}
.green {color:#91D308;}
.group {display:inline-block;}

.indent {margin-left:80px;}

/* -------- Icons ------------ */
ul li:before,
.checkbox input[type="checkbox"]:checked + label:before,
.radio input[type="radio"]:checked + label:before,
.btn-dot:before, .btn-dot:after,
.btn-dot2:before, .btn-dot2:after,
.nav ul li ul li.sub:after,
.btn-sub,
.scroll-top,
.scroll-top:before,
.glide__arrow,
.arrow-mid,
.glide__arrow:before,
.icon-phone:before,
.icon-location:before,
.icon-hours:before {background-image:url(../images/icons.png); background-image:url(../images/icons.svg), linear-gradient(transparent, transparent), none;}

/* -------- Lists ------------ */
ul {list-style:none; padding:0; margin:16px 0;}
ul li {position:relative; list-style:none; padding:0 0 0 50px; margin:16px 0; font-size:18px; color:#212121;}
ul li:before {content:""; display:block; width:20px; height:20px; background-position:-540px -440px; position:absolute; left:0; top:0; margin:8px 0;}

/* -------- Table Scroll Wrap ------------ */
.table-wrap-inner {font-size:16px; overflow-x:auto;}
table {width:100%; margin:16px 0; border-spacing:0;}
th {padding:16px; font-size:16px; font-weight:900;}
td {padding:16px; font-family:"futura-pt", sans-serif; font-size:16px; font-weight:300;}
tr:nth-child(even) {background:#EEEEEE;}

/* -------- General Forms ------------ */ 
form {margin:0 auto; font-size:0;}
form .row {max-width:600px; margin:0 auto;}
fieldset {display:block; border:none; padding:0; margin:0;}
label {display:block; font-family:'Montserrat', sans-serif; font-size:16px; font-weight:700; color:#212121; line-height:26px; margin:20px 0 10px 0;}
input[type="submit"], button[type="submit"] {position:relative; display:inline-block; width:auto; vertical-align:middle; background-color:#0288CF;  color:#ffffff; font-family:"Montserrat", sans-serif; font-size:16px; font-weight:700; line-height:1.5em; text-align:center; text-decoration:none; text-transform:none; padding:1.125em 2.125em; border-radius:1.875em; margin:1em 0; background:filter 0.3s; white-space:normal; border:none; height:auto;}
button[type="submit"]:before {content:""; display:block; width:100%; height:100%; border-radius:1.875em; position:absolute; left:0; top:0; margin:0.28em; background:#91D308; z-index:-1;}
button[type="submit"]:hover:before {margin:0.22em;}
input[type="submit"]:hover, button[type="submit"]:hover {background:#047FB5; color:#ffffff; text-decoration:none; cursor:pointer; top:0.055em; left:0.055em;}
input, textarea, select, option {width:100%; font-size:16px; line-height:24px; padding:18px 10px; box-sizing:border-box; border:none; background:#ECEFF1;}
select, option {font-family:'IBM Plex Sans', sans-serif; font-size:16px; line-height:26px; font-weight:300;}
select {padding:0 50px 0 10px; height:60px; line-height:60px;  -moz-appearance:none; -webkit-appearance:none; background-position:right center; background-repeat:no-repeat; background-image:url(../images/select.png); background-image:url(../images/select.svg), linear-gradient(transparent, transparent), none; cursor:pointer;}
select::-ms-expand {display:none;}
textarea {resize:vertical;}
input[type="checkbox"], input[type="radio"] {width:auto;}

/* Powermail Forms */
.powermail_form > h3 {display:none;}
.powermail_form > fieldset {padding:0; border:none;}
.powermail_form > fieldset > legend {display:none;}
.mandatory {color:#c00000; margin-left:3px;}
.powermail_fieldwrap {margin:0;}
.parsley-error {border-color:#c00000;}
.parsley-errors-list {font-size:14px;}

.radio, .checkbox {display:inline-block; vertical-align:top;}
.radio label, .checkbox label {display:inline-block;}

.checkbox, .radio {position:relative; display:inline-block; vertical-align:top; margin-right:30px;}
.checkbox input[type="checkbox"], .radio input[type="radio"] {position:absolute; top:0; left:0; opacity:0; width:60px; height:60px;}
.checkbox input[type="checkbox"] + label, .radio input[type="radio"] + label {display:block; position:relative; padding:17px 0 17px 80px; margin-right:8px;}
.checkbox input[type="checkbox"] + label:before, .radio input[type="radio"] + label:before {content:""; display:block; top:0; left:0; position:absolute; width:60px; height:60px; background:#ECEFF1; cursor:pointer;}
.radio input[type="radio"] + label:before {border-radius:30px;}
.checkbox input[type="checkbox"]:checked + label:before {background-position:-520px -320px;}
.radio input[type="radio"]:checked + label:before {background-position:-520px -420px;}
.powermail_fieldwrap_type_radio .radio {display:inline-block; vertical-align:top;}

input[type='number'] {-moz-appearance:textfield; appearance:textfield;}
input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {-webkit-appearance:none; margin:0;}
.number {position:relative; max-width:220px;}
.number input {padding-left:70px; padding-right:70px;}
.number button {position:absolute; top:0; display:block; width:60px; height:60px; font-family:"Montserrat", sans-serif; font-weight:700; font-size:42px; color:#028BD2; transition:background 0.3s;}
.number button:hover {background:rgba(0,0,0,0.05);}
.number-remove {left:0; line-height:50px; border-right:1px solid #ffffff;}
.number-add {right:0; line-height:60px; border-left:1px solid #ffffff;}

.powermail_fieldwrap_type_submit {text-align:center;}

.form_left {display:inline-block; width:50%; padding-right:10px; box-sizing:border-box;}
.form_right {display:inline-block; width:50%; padding-left:10px; box-sizing:border-box;}

/* -------- Header ------------ */
#header, #header-sticky {height:100px; position:absolute; left:50%; top:0; width:1920px; margin-left:-960px; min-width:320px; padding:0 100px; box-sizing:border-box; z-index:50; text-align:right; font-size:0; background:none; white-space:nowrap;}

.btn-nav {display:block; width:60px; height:60px; position:absolute; left:0; top:0; margin:20px; cursor:pointer; text-align:center; white-space:nowrap; font-family:"Montserrat", sans-serif; font-size:16px; font-weight:700; color:#ffffff;}
.btn-nav.btn-dot:before {background-position:-0.33em -8.66em; position:relative;}
.btn-nav:after {background-position:-0.33em -0.33em;}
.scroll-bottom .btn-nav span {display:none;}

.header-logo {display:inline-block; vertical-align:top; float:left;}
.logo2 {display:none; padding:20px 0;}
.logo3 {display:none;}

.header-tour {position:relative; display:inline-block; vertical-align:top; padding:17px 20px 17px 74px; margin:20px 10px; transition:background-color 0.3s; border-radius:30px; transition:background 0.3s; font-family:"Montserrat", sans-serif; font-size:16px; font-weight:700; line-height:26px; color:#ffffff;}
.header-tour:after {background-position:-5.33em -0.33em;}
.header-tour:hover {text-decoration:none; background:rgba(0,0,0,0.05);}

.header-phone {position:relative; display:inline-block; vertical-align:top; padding:12px 20px 12px 74px; margin:20px 10px; transition:background-color 0.3s; border-radius:30px; transition:background 0.3s; font-family:"Chewy", sans-serif; font-size:36px; font-weight:700; line-height:36px; color:#ffffff;}
.header-phone:after {background-position:-7em -0.33em;}
.header-phone:hover {text-decoration:none; background:rgba(0,0,0,0.05);}

.header-contact {position:absolute; right:0; top:0; display:inline-block; vertical-align:top; width:60px; height:166px; margin:20px; transition:background-color 0.3s; border-radius:30px; transition:background 0.3s; font-family:"Montserrat", sans-serif; font-size:16px; font-weight:700; color:#ffffff; line-height:60px;}
.header-contact:after {background-position:-0.33em -2em;}
.header-contact:hover {text-decoration:none; background:rgba(0,0,0,0.05);}
.header-contact span {display:block; padding:0 20px; position:absolute; left:100%; top:0; margin-top:100%; white-space:nowrap; }
.header-contact span {transform-origin:0 0; transform:rotate(90deg);}

.header-login {position:absolute; right:0; top:186px; display:inline-block; vertical-align:top; width:60px; height:146px; margin:20px; transition:background-color 0.3s; border-radius:30px; transition:background 0.3s; font-family:"Montserrat", sans-serif; font-size:16px; font-weight:700; color:#ffffff; line-height:60px;}
.header-login:after {background-position:-2em -2em;}
.header-login:hover {text-decoration:none; background:rgba(0,0,0,0.05);}
.header-login span {display:block; padding:0 20px; position:absolute; left:100%; top:0; margin-top:100%; white-space:nowrap;}
.header-login span {transform-origin:0 0; transform:rotate(90deg);}

#header.header-blue {position:relative; max-width:1920px; margin:0 auto; left:auto; margin:0;}
.header-blue .btn-nav {color:#0288CF;}
.header-blue .logo1 {display:none;}
.header-blue .logo2 {display:block;}
.header-blue .nav > ul > li > a {color:#0288CF;}
.header-blue .header-tour {color:#0288CF;}
.header-blue .header-phone {color:#0288CF;}
.header-blue .header-contact {color:#0288CF; height:60px;}
.header-blue .header-contact span {display:none;}
.header-blue .header-login {color:#0288CF; top:100px;}

#header-sticky {position:fixed; top:auto; bottom:100%; z-index:100; background:#FFFFFF; padding-right:0; transition:transform 0.3s;}
#header-sticky.scroll {transform:translateY(100%); box-shadow:0 4px 16px rgba(0,0,0,0.1);}
#header-sticky .btn-nav span {display:none;}
#header-sticky .header-tour {margin-left:5px; margin-right:5px;}
#header-sticky .header-phone {margin-left:5px; margin-right:5px;}
#header-sticky .header-phone span {font-size:0.74em;}
#header-sticky .header-contact {position:relative; height:60px; margin-left:5px; margin-right:5px;}
#header-sticky .header-contact span {display:none;}
#header-sticky .header-login {position:relative; height:60px; top:auto; margin-left:5px; margin-right:5px;}
#header-sticky .header-login span {display:none;}

/* -------- Modals ------------ */
.overlay {overscroll-behavior:contain; position:fixed; width:1920px; min-width:320px; left:50%; margin-left:-960px; top:0; bottom:100%; background:rgba(2,136,207,0); overflow:hidden; -webkit-overflow-scrolling:touch; overflow-y:auto; z-index:110; transition:background 0.5s, bottom 0s 0.5s;}
.overlay.open {bottom:0; background:rgba(2,136,207,0.96); transition:background 0.5s, bottom 0s;}
.drawer-box {position:relative; overflow:hidden; border-radius:0 0 4rem 4rem; padding:40px 0; margin:0 auto; -webkit-transform:translateY(-100%); -moz-transform:translateY(-100%); transform:translateY(-100%); transition:transform 0.5s; box-shadow:0 4px 9px rgba(0,0,0,0.5); background:#ffffff; text-align:left;}
.overlay.open .drawer-box {-webkit-transform:translateY(0); -moz-transform:translateY(0); transform:translateY(0);}
.close {position:absolute; top:0; right:0; z-index:10; margin:2rem; width:80px; height:80px; cursor:pointer;}
.close.btn-dot2:before {background-position:-5.125em -6.375em;}
.close.btn-dot2:after {background-position:-2.625em -0.125em;}

.drawer-box .columns {margin:0;}

/* -------- Contact ------------ */
.drawer-contact .col-1 {width:60%; background:url(../images/blob-testimonial.svg) no-repeat center;}
.drawer-contact .col-1:after {content:""; display:block; position:absolute; right:0; top:56px; margin-top:4.48rem; bottom:40px; border-right:1px solid #909090;}
.drawer-contact header:before {display:none;}
.drawer-contact .col-2 h4 {color:#0288CF;}
.contact-logo:after {content:""; display:inline-block; margin:0 16px; width:4em; height:0.7em; background:url(../images/logo-katesplace-top2.svg) no-repeat center; background-size:contain;}

.icon-phone, .icon-location, .icon-hours {position:relative; border:1px solid #909090; border-width:1px 0; padding:50px 0 50px 150px; margin:0 0 -1px 0;}
.icon-phone:before, .icon-location:before, .icon-hours:before {content:""; font-size:60px; display:block; width:1em; height:1em; border-radius:0.5em; background-color:#0288CF; background-size:10em auto; position:absolute; left:0; top:50%; margin:-0.5em 26px;}
.icon-phone:after, .icon-location:after, .icon-hours:after {content:""; display:block; position:absolute; left:112px; top:0; bottom:0; margin:26px 0; border-left:1px solid #909090;}

.icon-phone:before {background-position:-7em -0.33em;}
.icon-phone a {display:inline-block; border-radius:30px; padding:17px; margin:0 -17px; transition:background 0.3s;}
.icon-phone a:hover {background:rgba(0,0,0,0.05); text-decoration:none;}

.icon-location {column-count:2; column-width:260px; column-gap:100px; column-rule:1px solid #909090;}
.icon-location:before {background-position:-8.66em -0.33em;}

.icon-hours:before {background-position:-0.33em -2em;}

@supports (clip-path:url('#blobclip')) {
  .icon-phone:before, .icon-location:before, .icon-hours:before {clip-path:url('#blobclip'); border-radius:45%;}
}

/* -------- Top Nav ------------ */
/* Nav First Level */
.nav {margin:0; padding:0; display:inline-block; vertical-align:top;}
.nav ul {display:block; margin:0; list-style:none; font-size:0; padding:0; text-align:right;}
.nav ul li {position:relative; display:inline-block; vertical-align:top; padding:0; margin:0;}
.nav ul li:before {display:none;}
.nav ul li a {position:relative; display:block; padding:17px 30px; color:#0288CF; text-decoration:none; font-family:"Montserrat", sans-serif; font-size:16px; font-weight:700; line-height:26px;}
.nav ul li:hover {z-index:1;}
.nav ul li:hover > a {text-decoration:none;}
.nav > ul > li > a {padding:37px 30px; color:#ffffff;}
.nav > ul > li > a span {display:block; padding:37px 30px; margin:-100px 0 0 0; transition:margin 0.3s; box-sizing:border-box; position:absolute; top:0; right:0; background:#eeeeee; color:#0288CF; border-radius:0 0 30px 30px;}
.nav > ul > li.sub > a span {wwidth:280px; border-radius:30px 30px 0 0;}
.nav > ul > li:hover > a span {margin-top:0;}
/* Nav Second Level */
.nav ul li ul {display:block; overflow:hidden; position:absolute; right:0; background:#ffffff; width:280px; max-height:0; white-space:normal; border-radius:30px 0 30px 30px; box-shadow:8px 8px 16px rgba(0,0,0,0.1); transform:translateY(-20px); opacity:0; transition:max-height 0s 0.3s, transform 0.3s, opacity 0.3s;}
.nav ul li:hover > ul {overflow:visible; max-height:800px; transform:translateY(0); opacity:1; transition:max-height 0s 0s, transform 0.3s, opacity 0.3s;}
.nav ul li ul li {display:block;}
.nav ul li ul li.sub > a {z-index:1; overflow:hidden;}
.nav ul li ul li.sub > a:after {content:""; display:block; width:0; height:0; position:absolute; right:-12px; top:0; border-width:30px 12px; border-style:solid; border-color:#D5D5D5 transparent;}
.nav ul li ul li.sub:hover > a:after {border-color:#FFFFFF transparent;}
.nav ul li ul li:last-child a {border-radius:0 0 30px 30px;}
.nav ul li ul li:hover > a {background-color:#EEEEEE;}
/* Nav Third Level */
.nav ul li ul li ul {left:100%; top:0; border-radius:0 30px 30px 30px; transform:translateX(-20px); overflow:hidden;}
.nav ul li ul li:hover > ul {transform:translateX(0); overflow:hidden;}

/* -------- Side Nav ------------ */
.drawer-nav .drawer-box {padding-top:0;}
.drawer-nav .close {width:60px; height:60px; right:auto; left:0; margin:20px; text-align:center; font-family:"Montserrat", sans-serif; font-size:16px; font-weight:700; color:#0288CF;}
.drawer-nav .close:before {position:relative;}
.drawer-nav .close:after {background-position:-2em -0.33em;}
.drawer-nav .header-contact {color:#212121;}
.drawer-nav .header-login {color:#212121;}
.drawer-nav .content-padding {padding:0 4%;}
.drawer-nav h1 {border-bottom:1px solid #E3E3E3; padding-bottom:0.36em; margin:0; max-width:960px;}
/* Sub Buttons */
.btn-sub {display:none; position:absolute; right:0; top:0; width:50px; height:50px; background-position:-325px -325px; cursor:pointer; z-index:1; transition:background-color 0.3s;}
.open > .btn-sub {background-position:-225px -325px;}
.btn-sub:hover {background-color:rgba(0,0,0,0.05);}
/* Nav First Level */
.nav-side {position:relative;}
.nav-side ul {display:block; position:relative; list-style:none; padding:0; margin:0; }
.nav-side > ul {margin:0 auto; padding:50px 0; max-width:1260px; column-count:3; background-image:linear-gradient(to right, #F6F6F6 33.33%, #EFEFEF 33.33%, #EFEFEF 66.66%, #F6F6F6 66.66%);}
.nav-side ul li {display:block; position:static; padding:0; margin:0; break-inside:avoid;}
.nav-side ul li:before {display:none;}
.nav-side ul li a {position:relative; display:block; padding:16px 10%; color:#0288CF; text-decoration:none; font-family:"Montserrat", sans-serif; font-size:18px; font-weight:900; line-height:28px; transition:background-color 0.3s;}
.nav-side ul li a:hover {text-decoration:none; background-color:rgba(0,0,0,0.03);}
.nav-side ul li ul {margin-left:16px;}
.nav-side ul li ul li a {font-weight:700; font-size:16px; color:#212121;}

/* -------- Body ------------ */
#body{display:table; table-layout:fixed; width:1920px; max-width:1920px; margin:0 auto; height:100%; min-height:100%; min-width:320px; position:relative; text-align:left;}
.body-cell {display:table-cell;}

/* -------- Content ------------ */
#content {display:table-row; position:relative;}
#content .body-cell {box-sizing:border-box; padding:0 0 4% 0;}

.content-inner {position:relative; max-width:1620px; margin:0 auto;}
.columns{position:relative; display:table; table-layout:fixed; width:100%; box-sizing:border-box; margin:0;}
.col {position:relative; display:table-cell; vertical-align:top;}
.content-padding {margin:40px 100px; box-sizing:border-box;}
.col-1 .content-padding {margin-right:50px; padding:0;}
.col-2 .content-padding {margin-left:50px; padding:0;}

.ce-textpic {overflow:visible;}
.ce-gallery .image {border-radius:0;}
.ce-border img {border:10px solid transparent;}

.clear {clear:both;}
.hidden {display:none;}
iframe {max-width:100%;}
img {max-width:100%; height:auto; vertical-align:bottom;}
h1 img {vertical-align:baseline;}
svg {max-width:100%; height:auto;}

header {position:relative;}
header:before {content:""; position:absolute; z-index:-1; left:0; top:0; margin:-1rem 0 0 -3.75rem; display:block; width:12.5rem; height:12.5rem; background:url(../images/blob-header.svg) no-repeat center bottom; background-size:contain;}
.header-text {display:inline-block; vertical-align:middle; width:66%;}
.header-btn {display:inline-block; vertical-align:middle; width:34%; text-align:center;}

.video-box {position:relative; height:0; padding-bottom:56.25%;}
.video-box iframe, .video-box video {position:absolute; left:0; right:0; width:100%; height:100%;}
.video-box div, .video-box figure {display:block; position:static !important; float:none !important; left:auto !important; right:auto !important;}

.image {position:relative; overflow:hidden; display:inline-block; margin:0; border-radius:0 0 4rem 0;}
.image-caption {text-align:left; position:absolute; left:0; right:0; bottom:0; padding:20px 40px 40px 40px; background:rgba(255,255,255,0.5); font-size:16px; font-weight:400;}
.image-caption:before {content:""; display:block; width:100%; height:30px; position:absolute; left:0; bottom:100%; opacity:0.5; background:url(../images/wave-bottom.svg) repeat-x center top; background-size: auto 100%;}
.caption-title {display:block; font-size:21px; font-weight:700;}

.page-divider {padding-bottom:10%; background:url(../images/wave-top.svg) no-repeat center bottom; background-size:contain;}
.page-divider hr {display:none;}

/* -------- Fluid Element Image Position ------------ */
.ce-left .ce-gallery, .ce-right .ce-gallery {max-width:50%;}
.ce-left:after, .ce-right:after {content:""; display:block; clear:both;}

/* -------- Butterfly ------------ */
#bf.left {transform:scaleX(-1);}
#bf.right {transform:scaleX(1);}
#bfmove {display:none; position:absolute; z-index:90; pointer-events:none; width:100px; height:100px; margin:-50px -110px;}
#bfcircle {transform-origin:100px center; animation:hover 5s infinite linear;}
#bfcircle2 {animation:hover2 5s infinite linear;}
#bf svg {transform:rotate(26deg);}
#bf {width:100px; height:100px; position:absolute; transition:transform 0.8s;}
#bf1, #bf2, #bf3 {animation:flap 0.3s infinite; transform-origin:center 49%;}

@keyframes flap {
	0%, 100% {transform:scaleY(1);}
	50% {transform:scaleY(-1);}
}
@keyframes hover {
	from {transform:rotate(0deg);}
	to {transform:rotate(360deg);}
}
@keyframes hover2 {
	from {transform:rotate(360deg);}
	to {transform:rotate(0deg);}
}

@supports(animation:flap 0.3s infinite) {
	#bfmove {display:block;}
}

/* -------- Buttons ------------ */
button {-webkit-appearance:none; -moz-appearance:none; border:none; font-family:inherit; font-size:100%; line-height:inherit; text-transform:none; padding:0; margin:0; background:none; cursor:pointer;}

.baguetteBox-button {background:rgba(255,255,255,0.6);}
.baguetteBox-button:focus, .baguetteBox-button:hover {background:rgba(255,255,255,1);}
.baguetteBox-button g, .baguetteBox-button polyline {stroke-width:1.6; stroke:#212121;}
.baguetteBox-button#close-button {width:46px; height:46px; border-radius:50%;}
.baguetteBox-button#close-button svg {margin:8px;}
.baguetteBox-button#previous-button, .baguetteBox-button#next-button {width:60px; border-radius:50%; transform:scale(0.77);}
.baguetteBox-button#previous-button svg, .baguetteBox-button#next-button svg {margin:0 8px;}
.lightbox a {cursor:zoom-in;}

.btn, .btn2 {position:relative; display:inline-block; vertical-align:middle; background-color:#0288CF; color:#ffffff; font-family:"Montserrat", sans-serif; font-size:16px; font-weight:700; line-height:1.5em; text-align:center; text-decoration:none; text-transform:none; padding:1.125em 2.125em; border-radius:1.875em; margin:1em 0.5em; transition:background 0.3s;}
.btn:before, .btn2:before {content:""; display:block; width:100%; height:100%; border-radius:1.875em; position:absolute; left:0; top:0; margin:0.28em; background:#91D308; z-index:-1;}
.btn:hover, .btn2:hover {background:#047FB5; color:#ffffff; text-decoration:none; top:0.055em; left:0.055em;}
.btn:hover:before, .btn2:hover:before {margin:0.22em;}

.btn2 {background:none; color:#212121; border:2px solid #212121; padding:1em 2em;}
.btn2:hover {background-color:rgba(33,33,33,0.06); color:#212121;}
.btn2:before {background:rgba(33,33,33,0.06);}

.btn-dot:before, .btn-dot2:before {content:""; display:block; font-size:60px; width:1em; height:1em; border-radius:0.5rem; position:absolute; left:0; top:0;  background-size:10em auto; background-position:-2em -8.66em; transition:transform 0.3s cubic-bezier(0.045, 0.355, 0.275, 2.2), background-color 0.3s;}
.btn-dot:after, .btn-dot2:after {content:""; display:block; font-size:60px; width:1em; height:1em; position:absolute; left:0; top:0; background-size:10em auto; z-index:1;}
.btn-dot:hover:before, .btn-dot2:hover:before {transform:scale(1.1);}

.btn-dot2:before {font-size:80px; background-size:7.5em auto; background-position:-3.875em -6.375em;}
.btn-dot2:after {font-size:80px; background-size:7.5em auto;}

.glide__arrows {text-align:center; margin:16px 0; z-index:1; font-size:60px; line-height:1;}
.glide__arrow {position:relative; display:inline-block; vertical-align:top; width:1.33em; height:1em; padding:0; background-position:-0.16em -7em; background-size:10em auto; cursor:pointer; margin:0;}
.glide__arrow:before {content:""; display:block; width:1em; height:1em; position:absolute; left:-0.2em; top:0; opacity:0; transition:opacity 0.3s; z-index:-1; background-size:10em auto; background-position:-7em -5.33em;}
.glide__arrow.glide__next:before {left:auto; right:-0.2em;}
.glide__arrow.glide__next {background-position:-1.83em -7em;}
.glide__arrow:hover:before {opacity:1;}
.arrow-mid {display:inline-block; vertical-align:top; width:1em; height:1em; margin:0 5px; background-size:10em auto; background-position:-8.66em -8.66em;}

.btn-enrol, .btn-tour {display:inline-block; padding:22px 20px 22px 100px; margin:10px 16px 10px 0; position:relative; font-family:'Chewy', sans-serif; font-size:36px; font-weight:400; line-height:1; color:#0288CF; border-radius:40px; transition:background 0.3s;}
.btn-enrol:after {background-position:-2.625em -1.375em;}
.btn-tour:after {background-position:-3.875em -1.375em;}
.btn-enrol:hover, .btn-tour:hover {text-decoration:none; background:rgba(0,0,0,0.05);}

.btn-phone, .btn-locations {display:inline-block; padding:12px 20px 12px 80px; margin:10px 0; position:relative; font-family:'Chewy', sans-serif; font-size:36px; font-weight:400; line-height:1; color:#0288CF; border-radius:40px; transition:background 0.3s;}
.btn-phone:before, .btn-locations:before {background-position:-3.66em -8.66em;}
.btn-phone:after {background-position:-7em -2em;}
.btn-locations:after {background-position:-8.66em -2em;}
.btn-phone:hover, .btn-locations:hover {text-decoration:none; background:rgba(0,0,0,0.05);}

.icon-facebook, .icon-instagram, .icon-twitter, .icon-google, .icon-youtube {display:inline-block; vertical-align:middle; width:60px; height:60px; margin:10px; position:relative; font-size:0; color:transparent; border-radius:40px;}
.icon-facebook:before, .icon-instagram:before, .icon-twitter:before, .icon-google:before, .icon-youtube:before {background-position:-3.66em -8.66em;}
.icon-facebook:after {background-position:-2em -3.66em;}
.icon-instagram:after {background-position:-3.66em -3.66em;}
.icon-twitter:after {background-position:-5.33em -3.66em;}
.icon-google:after {background-position:-7em -3.66em;}
.icon-youtube:after {background-position:-8.66em -3.66em;}
.icon-facebook:hover, .icon-instagram:hover, .icon-twitter:hover, .icon-google:hover, .icon-youtube:hover {text-decoration:none;}

@supports (clip-path:url('#blobclip')) {
  .btn-dot:before, .btn-dot2:before {background:#028BD2; clip-path:url('#blobclip'); border-radius:45%;}
  .btn-dot:hover:before, .btn-dot2:hover:before {background:#047FB5;}
	.btn-nav.btn-dot:before {background:#94D608;}
  .btn-nav.btn-dot:hover:before {background:#8BC108;}
	.icon-facebook:before, .icon-instagram:before, .icon-twitter:before, .icon-google:before, .icon-youtube:before {background:#F5F5F5; clip-path:url('#blobclip'); border-radius:45%;}
	.icon-facebook:hover:before, .icon-instagram:hover:before, .icon-twitter:hover:before, .icon-google:hover:before, .icon-youtube:hover:before {background:#EAEAEA;}
	.facebook-wrap .icon-facebook:before, .facebook-wrap .icon-instagram:before, .facebook-wrap .icon-twitter:before, .facebook-wrap .icon-google:before, .facebook-wrap .icon-youtube:before {background:#FFFFFF;}
	.facebook-wrap .icon-facebook:hover:before, .facebook-wrap .icon-instagram:hover:before, .facebook-wrap .icon-twitter:hover:before, .facebook-wrap .icon-google:hover:before, .facebook-wrap .icon-youtube:hover:before {background:#EAEAEA;}
	.btn-enrol:before, .btn-tour:before {background:#94D608;}
	.btn-enrol:hover:before, .btn-tour:hover:before {background:#8BC108;}
	.btn-phone:before, .btn-locations:before {background:#ffffff;}
	.btn-phone:hover:before, .btn-locations:hover:before {background:#EAEAEA;}
}

.btn-circle {display:inline-block; vertical-align:middle;}
.btn-circle:hover {text-decoration:none;}
.btn-circle svg {position:relative; max-width:100%; height:auto;}
.circle-text{animation:turn 9s infinite linear; animation-play-state:paused; transform-origin:center;}
.btn-circle:hover .circle-text {animation-play-state:running;}
.btn-circle .blob {transition:transform 0.3s cubic-bezier(0.045, 0.355, 0.275, 1.8), fill 0.3s;}
.btn-circle:hover .blob {transform:translate(-27%, -25%) scale(1.5); fill:#0288CF;}
@keyframes turn {
  from {transform:rotate(0);}
  to {transform:rotate(360deg);}
}

/* -------- Banner ------------ */
.banner-wrap {position:relative; margin-bottom:3%;}
.banner-wrap:after {content:""; z-index:2; display:block; width:100%; padding-bottom:5.2%; position:absolute; left:0; bottom:0; background-size:cover; background-image:url(../images/wave-bottom.svg);}

.banner {position:relative; background-position:center; background-size:cover; background-attachment:fixed; overflow:hidden;}
.banner video {position:absolute; left:0; top:0; width:auto; height:auto; min-width:100%; min-height:100%;}
.banner-text {position:relative; z-index:1; text-align:center; display:block; overflow:hidden; padding:10.4% 10% 14.5% 10%; border-top:100px solid transparent; margin:0; background:rgba(0,0,0,0.34); background:radial-gradient(rgba(0,0,0,0.14), rgba(0,0,0,0.34));}
.banner-video-btn .banner-text {padding-bottom:6%;}
.banner-text * {color:#ffffff;}
.banner-logo:before {content:""; display:block; margin:16px auto; width:4em; height:0.7em; background:url(../images/logo-katesplace-white.svg) no-repeat center; background-size:contain;}

/* -------- POE Menu ------------ */
.poe-menu.content-padding {position:relative; z-index:3; font-size:0; max-width:none; margin-top:-14%;}
.poe-item {position:relative; display:inline-block; vertical-align:top; overflow:hidden; width:33.33%; text-align:center; background-repeat:no-repeat; background-position:center; background-size:contain; background-image:url(../images/poe-fallback.png); background-image:url(../images/poe1.svg), linear-gradient(transparent, transparent), none;}
.poe-item-inner {position:relative; margin:7%; padding-bottom:72%; border-radius:100%;}
.poe-item-inner:before {content:""; pointer-events:none; display:block; position:absolute; left:0; top:0; margin:-7%; width:114%; height:114%;  background-position:center; background-size:contain; background-image:url(../images/poe2.svg), linear-gradient(transparent, transparent), none; transition:transform 0.3s cubic-bezier(0.045, 0.355, 0.275, 1.5);}
.poe-item-inner:after {content:""; pointer-events:none; display:block; position:absolute; left:0; top:0; margin:-7%; width:114%; height:114%;  background-position:center; background-size:contain; background-image:url(../images/poe3.svg), linear-gradient(transparent, transparent), none; transition:transform 0.3s cubic-bezier(0.045, 0.355, 0.275, 1.5), filter 0.3s;}
.poe-item a {display:block; width:100%; height:100%; border-radius:100%; position:absolute; left:0; top:0; z-index:1;}
.poe-item a:hover {text-decoration:none;}
.poe-item a span {display:inline-block; vertical-align:middle; font-family:"Chewy", sans-serif; font-size:86px; font-size:4.48rem; color:#ffffff;}
.poe-item a:after {content:""; display:inline-block; vertical-align:middle; width:0; height:100%;}
.poe-item-inner:hover:before {transform:rotate(-25deg) scale(1.08);}
.poe-item-inner:hover:after {transform:rotate(15deg) scale(1.08); filter:brightness(0.8);}

/* -------- Image Slider ------------ */
.image-slider-wrap {position:relative;}
.image-slider-wrap .glide__arrows {position:absolute; left:0; right:0; bottom:0; margin:40px; text-align:right;}
.image-slider-wrap .glide__arrow:hover:before {opacity:0.3;}
.image-slider-wrap .glide__track {border-radius:0 0 4rem 0;}
.image-slider-wrap .glide__slides {align-items:center;}
.image-slider-wrap .glide__slide img {display:block; margin:0 auto;}

.image-slide {display:none; position:relative; text-align:center;}
.image-slide:first-child, .glide .image-slide {display:block;}
.image-slide .image-caption {padding:20px 275px 40px 40px;}

/* -------- Testimonials ------------ */
.testimonial-slider-wrap {position:relative; overflow:hidden; border:10px solid #ffffff; border-width:0 10px;}
.testimonial-slider-wrap .glide__track {margin:0 -10px;}
.testimonial {position:relative; display:inline-block; vertical-align:top; text-align:center;}
.testimonial-inner {position:relative; display:inline-block; margin:8%; max-width:580px; transition:filter 0.3s;}
.testimonial-inner:hover {text-decoration:none; filter:brightness(0.95);}
.testimonial:after {content:""; display:block; width:20px; position:absolute; right:-10px; top:0; bottom:0; margin:14% 0; background:url(../images/waveline-v.svg) repeat-y center; background-size:contain;}
.testimonial-card {height:0; padding:20% 10% 80% 10%; background:url(../images/blob-testimonial.svg) no-repeat center; background-size:contain;}

.testimonial h3 {font-size:1.875rem;}
.testimonial h6 {font-size:0.9375rem;}
.testimonial-name {position:absolute; left:0; right:0; bottom:0; margin:20% 10%;}

.testimonial-full {position:relative; max-width:660px; margin:40px auto; background:#f5f5f5; padding:4rem; border-radius:3rem 0;}
.testimonial-full:before {content:"\201c"; display:block; font-family:"Chewy", sans-serif; color:#eeeeee; font-size:20rem; line-height:0.7; position:absolute; left:0; top:0;}
.testimonial-full:after {content:"\201d"; display:block; font-family:"Chewy", sans-serif; color:#eeeeee; font-size:20rem; line-height:0; position:absolute; right:0; bottom:-4rem;}

/* -------- Facebook ------------ */
.facebook-wrap {position:relative; padding:4% 7.8rem 3% 7.8rem;}
.facebook-wrap.content-padding {margin-bottom:0;}
.facebook-wrap:before {content:""; z-index:-2; position:absolute; left:0; top:0; width:100%;  padding-bottom:60%; min-height:110%; box-sizing:border-box; background:#F5F5F5; border-radius:4rem;}
.facebook-box {position:relative; overflow:hidden; max-width:1000px; border:20px solid transparent; border-width:0 20px; box-sizing:border-box; background:url(../images/blob-facebook.svg) no-repeat center; background-size:100% 100%;}
.facebook-box.content-padding {margin:0 auto 40px auto;}
.facebook-inner {position:relative; overflow:hidden; max-width:500px; margin:12% 22%; border:2rem solid #ffffff; box-shadow:8px 8px 16px rgba(0,0,0,0.1);}
.facebook-wrap header {display:inline-block; vertical-align:middle; width:50%; padding-right:20px; box-sizing:border-box;}
.facebook-wrap .ce-textpic {display:inline-block; vertical-align:middle; width:50%;}

/* -------- Image Menu ------------ */
.image-menu-slider {position:relative; overflow:hidden;}
.image-menu-slider .glide__track {background:url(../images/blob-testimonial.svg) no-repeat center; background-size:contain;}
.image-menu {margin:3% 0; font-size:0; text-align:center;}
.image-menu-item {position:relative; display:inline-block; vertical-align:top; width:25%; box-sizing:border-box; margin:0 0 20px 0; font-family:"Chewy", sans-serif; font-size:36px; font-size:1.875rem; font-weight:700; text-align:center; color:#028BD2;}
.glide__slide.image-menu-item {display:block; width:auto;}
.image-menu-image {position:relative; overflow:hidden; background-size:cover; background-position:center; padding-bottom:100%; border-radius:50%; margin:0 0 10px 0; transition:transform 0.3s cubic-bezier(0.045, 0.355, 0.275, 1.8);}
.image-menu a {display:block; margin:4% 14%; color:#028BD2;}
.image-menu a:hover {text-decoration:none;}
.image-menu-image:after {content:""; display:block; position:absolute; left:0; right:0; top:0; bottom:0; background:rgba(0,0,0,0); transition:background 0.3s;}
.image-menu a:hover .image-menu-image {transform:scale(1.03);}
.image-menu a:hover .image-menu-image:after {background:rgba(0,0,0,0.15);}

.clip {position:absolute; opacity:0;}
@supports (clip-path:url('#blobclip')) {
  .image-menu-image {border-radius:45%; clip-path:url('#blobclip');}
}

.locations .image-menu a {position:relative;}
.locations .image-menu-image {clip-path:none; border-radius:0;}
.locations .image-menu a:hover .image-menu-image {transform:none;}
.locations .image-menu a span {display:block; position:absolute; left:0; right:0; bottom:0; background:rgba(2,139,210,0.8); color:#ffffff;}

/* -------- Expand ------------ */
.expand.content-padding {margin-top:0; margin-bottom:-1px;}
.expand header {position:relative; padding:26px 16px 26px 60px; border:1px solid #212121; border-width:1px 0; cursor:pointer;}
.expand.open header {background:#EEEEEE;}
.expand header:before {content:"+"; display:block; position:absolute; z-index:1; left:0; top:0; width:40px; height:auto; margin:0; line-height:78px; text-align:center; font-family:"Montserrat", sans-serif; font-size:36px; font-weight:900; color:#94D608; background:none;}
.expand.open header:before {content:"\2013";}
.expand header * {font-family:"Montserrat", sans-serif; font-size:24px; font-weight:900; color:#212121; padding:0; margin:0;}
.expand header *:before {display:none;}
.expand > .ce-textpic {height:0; padding:0 16px; overflow:hidden; position:relative; transition:height 0.5s, padding 0.5s;}
.expand.open > .ce-textpic {padding:16px;}

/* -------- Grid ------------ */
.col-layout-grid {display:block; padding:40px 0; margin:80px; display:block; width:auto; position:relative; overflow:hidden;}
.col-layout-grid > .col {display:block; display:flex; flex-wrap:wrap; position:relative; border-top:1px solid #122E39;}
.col-layout-grid > .col > div {flex:0 0 25%; position:relative; display:inline-block; vertical-align:bottom; width:25%; box-sizing:border-box; padding:2.3%; border-bottom:1px solid #122E39; margin:0;}
.col-layout-grid > .col > div:after {content:""; display:block; position:absolute; right:-1px; top:0; bottom:0; margin:-40px 0; border-left:1px solid #122E39;}
.col-layout-grid .col .content-inner .content-padding {padding:0; max-width:280px; margin:0 auto;}

/* -------- Header Section ------------ */
.header-section {position:relative; background:#EEEEEE;}
.header-section:after {content:""; display:block; position:absolute; left:0; right:0; bottom:0; padding-bottom:5.2%; background:url(../images/wave-bottom.svg) repeat-x center bottom; background-size:auto 100%;}
.header-section columns {margin:0;}
.header-section .col-1 {padding:3% 0 5.2% 0; width:60%;}
.header-section .col-2 {background-position:center; background-size:cover;}

/* -------- CTA ------------ */
.cta {position:relative; z-index:1; max-width:600px; margin:8% auto; text-align:center; background:url(../images/blob-testimonial.svg) no-repeat center; background-size:contain;}
.cta:before, .cta:after {content:""; display:block; max-width:400px; height:20px; margin:0 auto 12% auto; background:url(../images/waveline-h.svg) repeat-x center; background-size:contain;}
.cta:after {margin:12% auto 0 auto;}

/* -------- Profiles ------------ */
.profile-slider-wrap {margin-top:0; margin-bottom:0;}
.profile-slider {display:none;}
.profile-slider.active {display:block;}
.profiles {text-align:center;}
.profile {display:inline-block; width:33.33%;}
.profile-card {display:inline-block; vertical-align:top; width:92%; max-width:480px; margin:4%; padding:0 0 16% 0; background:url(../images/blob-testimonial.svg) no-repeat center bottom; background-size:contain;}
.profile-image-wrap {position:relative; max-width:270px; margin:0 auto;}
.profile-image {padding-bottom:100%; background-size:cover; background-position:center; border-radius:50%;}
.profile h3 {text-align:center;}
.profile-details {display:table; margin:0 auto;}
.profile-details h6 {display:table-row;}
.profile-details strong {display:table-cell; text-align:right; padding-right:20px;}
.profile-details span {display:table-cell; text-align:left;}

@supports (clip-path:url('#blobclip')) {
  .profile-image {border-radius:45%; clip-path:url('#blobclip');}
}

.ptabs {text-align:center; margin:2% 0;}
.ptab {position:relative; cursor:pointer; display:inline-block; padding:10px 16px; margin:5px 10px; border-radius:30px; font-family:"Chewy", sans-serif; font-size:36px; line-height:1.1; color:#028BD2; text-align:center;}
.ptab:hover {background:#EEEEEE;}
.ptab.active {background:#94D608; color:#ffffff;}

/* -------- Footer ------------ */  
#footer {display:table-row; width:100%; height:1px;}
  #footer .body-cell {position:relative; box-sizing:border-box; overflow:hidden;}

  .scroll-top {position:absolute; z-index:1; right:20px; top:20px; width:60px; height:100px; background-position:-220px -400px; cursor:pointer;}
  .scroll-top:hover {opacity:0.8;}
  .scroll-top span {display:block; position:absolute; left:100%; top:100%; font-family:"Montserrat", sans-serif; font-size:16px; line-height:60px; font-weight:700; color:#212121; white-space:nowrap; -webkit-transform-origin:left top; -moz-transform-origin:left top; transform-origin:left top; -webkit-transform:rotate(90deg); -moz-transform:rotate(90deg); transform:rotate(90deg);}

  .footer-top {position:relative; overflow:hidden; background:#0288CF url(../images/bg-footer.svg) no-repeat center; margin-right:100px; padding:8% 0 4% 0; border-radius:0 0 8.6rem 0;}
	.footer-top:before {content:""; display:block; width:100%; padding-bottom:8.85%; position:absolute; left:0; top:0; background-size:contain; background-image:url(../images/wave-top.svg);}
  .footer-top .content-padding {position:relative; margin-bottom:0; max-width:none;}
	
	.footer-logo {position:absolute; left:0; top:0; max-width:16%;}
	
	.footer-buttons {margin-left:17.5%; padding-left:260px;}
	.footer-links h3 {position:absolute; margin:-112px 0 0 3.33%;}
	
	.footer-top * {color:#ffffff;}
	.footer-top .green {color:#91D308;}
	
	.footer-top .columns {padding-left:17.5%; margin:40px 0;}
	.footer-top .col-2 {width:360px; padding-left:20px;}

  .footer-links ul {position:relative; list-style:none; margin:0; padding:0;}
  .footer-links > ul {column-count:3;}
  .footer-links ul li {list-style:none; margin:0; padding:0; break-inside:avoid;}
  .footer-links ul li:before {display:none;}
  .footer-links ul li a {display:block; padding:16px 10%; font-family:"Montserrat", sans-serif; font-size:16px; line-height:26px; font-weight:900; color:#ffffff;}
  .footer-links ul li a:hover {text-decoration:none; background:rgba(0,0,0,0.05);}
  .footer-links ul li ul li a {font-weight:700;}
    
  .footer-bottom {position:relative; padding:50px 0; background:#ffffff; text-align:center;}
  .footer-bottom .content-padding {margin-top:0; margin-bottom:0; max-width:none;}
  
  .footer-bottom .columns {padding:0;}
  .footer-bottom .col {vertical-align:middle;}
  .footer-bottom .col-1 {text-align:left;}
  .footer-bottom .col-2 {text-align:center;}
  .footer-bottom .col-3 {text-align:right;}
      
  .website {}
  .website span {display:inline-block; vertical-align:middle; padding:0 10px 0 0;}
  .website a {display:inline-block; vertical-align:middle; margin-left:10px;}
  .website a:hover {opacity:0.7;}

/* -------- Media Queries ------------ */
@media screen and (max-width:1920px) {  
  /* -------- Text ------------ */
  html {font-size:1vw;}
  h1 {font-size:4.48rem;}
  h2 {font-size:3.75rem;}
  /* -------- Header ------------ */
  #header, #header-sticky {left:0; right:0; width:auto; margin:0;}
  /* -------- Modal ------------ */
  .overlay {width:auto; left:0; right:0; margin:0;}
  /* -------- Body ------------ */
  #body {width:100%;}
}

@media screen and (max-width:1800px) {
  /* -------- Header ------------ */
	#header {padding:0 90px;}
	.btn-nav {margin:20px 15px;}
	.header-logo {max-width:280px;}
	.header-tour {margin-right:0;}
	.header-phone {font-size:30px; margin-right:0;}
	.header-contact {margin:20px 15px;}
	.header-login {margin:20px 15px;}
	.header-blue .header-logo {max-width:260px;}
	.logo2 {padding:26px 0;}
	#header-sticky .header-phone span {font-size:0.76em;}
  /* -------- Nav ------------ */
	.drawer-nav .close {margin:20px 15px;}
	.nav ul li a, .nav > ul > li > a span {padding-left:20px; padding-right:20px;}
  /* -------- Content ------------ */
	.content-padding {margin:40px 80px;}
	.col-1 .content-padding {margin-right:40px;}
	.col-2 .content-padding {margin-left:40px;}
  /* -------- Footer ------------ */
	.footer-top {margin-right:80px;}
	.scroll-top {right:10px;}
}

@media screen and (max-width:1600px) {
  /* -------- Text ------------ */
	.indent {margin-left:60px;}
  /* -------- Header ------------ */
	#header {height:66px; padding:0 66px;}
	#header-sticky {height:66px; padding-left:66px;}
	.btn-nav {width:46px; height:46px; margin:10px; font-size:14px;}
	.header-logo {max-width:200px;}
	.header-tour {padding:10px 16px 10px 56px; margin:10px 5px; font-size:14px;}
	.header-phone {padding:5px 16px 5px 56px; font-size:22px; margin:10px 5px;}
	.header-contact {width:46px; height:136px; margin:10px; font-size:14px; line-height:46px;}
	.header-contact span {padding:0 14px;}
	.header-login {width:46px; height:114px; top:146px; margin:10px; font-size:14px; line-height:46px;}
	.header-login span {padding:0 14px;}
	.header-blue .header-logo {max-width:180px;}
	.logo2 {padding:18px 0;}
	.header-blue .header-login {top:66px;}
	#header-sticky .header-contact {height:46px;}
	#header-sticky .header-login {height:46px;}
  /* -------- Modals ------------ */
	.close {width:60px; height:60px;}
  /* -------- Contact ------------ */
	.icon-phone, .icon-location, .icon-hours {padding:30px 0 30px 100px;}
	.icon-phone:before, .icon-location:before, .icon-hours:before {font-size:46px; margin:-0.5em 16px;}
	.icon-phone:after, .icon-location:after, .icon-hours:after {left:78px; margin:30px 0;}
  /* -------- Nav ------------ */
	.drawer-nav .close {width:46px; height:46px; margin:10px; font-size:14px;}
	.nav > ul > li > a, .nav > ul > li > a span {padding:20px 18px;}
	.nav ul li a {font-size:14px;}
  /* -------- Content ------------ */
  .content-padding {margin:40px 60px;}
	.col-1 .content-padding {margin-right:30px;}
	.col-2 .content-padding {margin-left:30px;}
  /* -------- Buttons ------------ */
	.btn {font-size:16px;}
	.btn-dot:before {font-size:46px;}
	.btn-dot:after {font-size:46px;}
	.btn-dot2:before {font-size:60px;}
	.btn-dot2:after {font-size:60px;}
	.btn-enrol, .btn-tour {padding:15px 20px 15px 70px; font-size:30px;}
	.btn-phone, .btn-locations {padding:11px 20px 11px 60px; font-size:24px;}
	.icon-facebook, .icon-instagram, .icon-twitter, .icon-google, .icon-youtube {width:46px; height:46px; margin:10px;}
  /* -------- Footer ------------ */
	.footer-top {margin-right:60px;}
	.scroll-top {right:0;}
	.footer-links ul li a {font-size:14px; padding:12px 10%;}
	.footer-links h3 {margin-top:-102px;}
  /* -------- Image Slider ------------ */
  .image-slider-wrap .glide__arrows {margin:20px;}
	.image-slide .image-caption {padding:10px 275px 20px 20px;}
}

@media screen and (max-width:1300px) {
  /* -------- Header ------------ */
	#header {padding-right:0;}
	#header-sticky .header-phone span {font-size:1em;}
	.header-contact {position:relative; width:auto; height:46px; margin:10px 5px;}
	.header-contact span {transform:none; position:relative; left:auto; top:auto; margin:0; padding-left:56px;}
	#header-sticky .header-contact span {display:block; color:#0288CF;}
	.header-login {position:relative; top:auto; height:46px; margin:10px 5px;}
	.header-login span {display:none;}
	.header-blue .header-contact {height:46px;}
	.header-blue .header-contact span {display:block;}
	.header-blue .header-login {top:auto;}
  /* -------- Nav ------------ */
	.nav {display:none;}
  /* -------- Content ------------ */
  .content-padding {margin:40px;}
	.col-1 .content-padding {margin-right:20px;}
	.col-2 .content-padding {margin-left:20px;}
  /* -------- Footer ------------ */
	.footer-logo {display:none;}
	.footer-top h3 {padding:0;}
	.footer-top .columns {padding:0;}
	.footer-buttons {margin:0;}
  /* -------- Image Sliders ------------ */
  .image-caption {font-size:14px;}
  .caption-title {font-size:16px;}
  /* -------- Grid ------------ */
  .col-layout-grid > .col > div {flex:0 0 33.33%; width:33.33%;}
	/* -------- Testimonials ------------ */
	.testimonial-full {padding:50px 20px; border-radius:60px 0;}
	.testimonial-full:before {font-size:260px;}
	.testimonial-full:after {font-size:260px; bottom:-56px;}
}
 
@media screen and (max-width:1200px) {
  /* -------- Buttons ------------ */
	.btn, .btn2 {font-size:14px;}
	.glide__arrows {font-size:46px;}
	.btn-circle {width:120px;}
	/* -------- Image Sliders ------------ */
	.image-slide .image-caption {padding-right:220px;}
	/* -------- Testimonials ------------ */
	.testimonial h3 {font-size:3rem;}
	.testimonial h6 {font-size:1.5rem;}
}


@media screen and (max-width:1080px) {
  /* -------- Text ------------ */
	h1 {font-size:48px;}
	h2 {font-size:40px;}
	/* -------- Modals ------------ */
	.close {width:46px; height:46px;}
	.close:before {font-size:46px;}
	.close:after {font-size:46px;}
	/* -------- Contact ------------ */
	.drawer-contact .col-1 {width:auto;}
	.drawer-contact .col-1:after {display:none;}
  /* -------- Content ------------ */
  .columns {display:block;}
  .col{display:block; width:auto;}
  .content-padding {margin:40px 20px;}
  /* -------- Footer ------------ */
	.footer-top .columns {display:table;}
	.footer-top .col {display:table-cell}
	.footer-top .col-2 {width:auto;}
	.footer-links > ul {column-count:1;}
	.footer-links .btn-sub {display:block;}
	.footer-links ul li a {padding:12px 20px; border-bottom:1px solid rgba(0,0,0,0.05);}
	.footer-links ul li ul {display:none; margin-left:20px;}
	.footer-links ul li.open > ul {display:block;}
	.footer-links ul li ul li a {font-weight:600;}
	.footer-bottom {padding:20px}
	.footer-bottom .col-1 {text-align:center;}
	.footer-bottom .col-3 {text-align:center;}
  /* -------- Image Slider ------------ */
  .image-slider-wrap {max-width:600px; margin:0 auto;}
  /* -------- Header Section ------------ */
	.header-section .col-1 {width:auto; z-index:1; background:rgba(255,255,255,0.6);}
	.header-section .col-2 {position:absolute; left:0; right:0; top:0; bottom:0; background-attachment:fixed; background-position:top;}	
  /* -------- Grid ------------ */
  .col-layout-grid {margin:20px;}
  /* -------- Profiles ------------ */
	.ptab {font-size:3.33rem;}
	.profile h3 {font-size:3.33rem;}
	.profile h6 {font-size:1.66rem;}
	.profile-details strong {padding-right:1.85rem;}
}

@media screen and (max-width:960px) {
	/* -------- Fluid Element Image Position ------------ */
  .ce-left .ce-gallery, .ce-right .ce-gallery {float:none; max-width:none;}
  .ce-intext.ce-left .ce-gallery {margin-right:0;}
  .ce-intext.ce-right .ce-gallery {margin-left:0;}
  /* -------- Header ------------ */
	.header-logo {max-width:20%;}
	.header-tour {width:50px; white-space:normal; font-size:12px; font-weight:600; line-height:16px; padding:7px 12px 7px 56px; margin-right:0; text-align:left;}
	.header-phone {font-size:16px; padding-right:12px; margin-right:0;}
	.header-contact {width:46px;}
	.header-contact span, #header-sticky .header-contact span {display:none;}
	.header-blue .header-contact span {display:none;}
  /* -------- Footer ------------ */
	.footer-buttons {padding:0;}
	.footer-links h3 {position:relative; margin-top:0;}
	.footer-top {margin:0;}
	.scroll-top {margin:8% 16px; width:46px; height:46px; background-size:450px auto; background-position:-165px -390px;}
	.scroll-top span {display:none;}
	.scroll-top:before {content:""; display:block; width:46px; height:46px; background-position:-227px -327px;}
	.scroll-top:after {content:"Top"; display:block; font-family:"Montserrat", sans-serif; font-weight:700; font-size:14px; text-align:center; color:#ffffff;}
	.footer-top .col-2 {padding:0;}
  /* -------- Facebook ------------ */
	.facebook-wrap header {display:block; width:auto; padding:0;}
	.facebook-wrap .ce-textpic {display:block; width:auto; padding:0;}
	.facebook-box {background:#0288CF; border-radius:10%; padding:10%; border:none;}
	.facebook-box.content-padding {margin:0 20px 40px 20px;}
	.facebook-inner {margin:0 auto;}
  /* -------- Grid ------------ */
  .col-layout-grid > .col > div {flex:0 0 50%; width:50%;}
  /* -------- Nav ------------ */
	.drawer-nav .header-contact {width:auto;}
	.drawer-nav .header-contact span {display:block;}
	.drawer-nav .content-padding {margin:0; padding:0;}
	.drawer-nav h1 {padding:0 0 18px 66px; line-height:66px; margin-top:-66px;}
  /* -------- Banner ------------ */
	.banner video {display:none;}
  /* -------- Image Menu ------------ */
	.image-menu-item {width:33.33%; font-size:26px; font-size:2.7rem;} 
}

@media screen and (max-width:800px) {
  /* -------- Nav ------------ */
	.nav-side > ul {padding:20px 0; column-count:2; background-image:linear-gradient(to right, #F6F6F6 50%, #EFEFEF 50%);}
	.nav-side ul li a {font-size:16px; font-weight:600; padding:10px 30px;}
	.nav-side ul li ul li a {font-size:14px; font-weight:400;}
  /* -------- Footer ------------ */
	.footer-top .columns {display:block;}
	.footer-top .col {display:block; max-width:600px;}
  /* -------- Profiles ------------ */
	.profile {width:50%;}
	.profile h3 {font-size:4.5rem;}
	.profile h6 {font-size:2.25rem;}
	.profile-details strong {padding-right:2.5rem;}
}

@media screen and (max-width:700px) {
  /* -------- Header ------------ */
	.header-blue .logo2 {display:none;}
	.header-blue .logo3 {display:block;}
	/* -------- Testimonials ------------ */
	.testimonial-slider-wrap {border:none;}
	.testimonial-slider-wrap .glide__track {margin:0;}
	.testimonial:after {display:none;}
	.testimonial-inner {max-width:400px; margin:0;}
	.testimonial h3 {font-size:32px;}
	.testimonial h6 {font-size:15px;}
}

@media screen and (max-width:600px) {
  /* -------- Forms ------------ */
  .form_left {display:block; width:auto; padding-right:0;}
  .form_right {display:block; width:auto; padding-left:0;}
  /* -------- Header ------------ */
	#header, #header-sticky {height:56px; padding-left:56px;}
	.btn-nav {margin:5px;}
	.header-logo {max-width:96px;}
	.logo3 {height:50px; width:auto; padding:4px 0;}
	.header-tour {display:none;}
	.header-phone {margin:5px 0;}
	.header-contact {margin:5px;}
	.header-login {margin:5px;}
  /* -------- Contact ------------ */
	.icon-phone, .icon-location, .icon-hours {padding-left:64px;}
	.icon-phone {font-size:28px;}
	.icon-location, .icon-hours {font-size:15px;}
	.icon-phone:before, .icon-location:before, .icon-hours:before {margin-left:0;}
	.icon-phone:after, .icon-location:after, .icon-hours:after {left:54px;}
  /* -------- Nav ------------ */
	.drawer-nav .close {margin:5px;}
	.drawer-nav .close span {display:none;}
	.drawer-nav h1 {line-height:56px; margin-top:-56px; padding:0 0 0 56px;}
  /* -------- Content ------------ */
  .content-padding {margin:16px;}
	.header-text {display:block; width:auto;}
	.header-btn {display:block; width:auto;}
  /* -------- POE Menu ------------ */
	.poe-menu.content-padding {margin-left:0; margin-right:0;}
  /* -------- Footer ------------ */
	.footer-buttons a {display:table; margin:30px 0;}
  /* -------- Image Sliders ------------ */
  .image-slider-wrap .glide__arrows {font-size:46px; position:relative; left:auto; right:auto; bottom:auto; margin:16px 0; text-align:center;}
	.image-slide .image-caption {padding:10px 20px 20px 20px;}
  /* -------- Image Menu ------------ */
	.image-menu-item {width:50%; font-size:30px; font-size:5rem;} 
	.image-menu a {margin:0 4%;}
	/* -------- Expand ------------ */
	.expand header {padding:20px 16px 20px 60px;}
	.expand header:before {line-height:58px; font-size:36px;}
	.expand header * {font-size:18px;}
  /* -------- Grid ------------ */
  .col-layout-grid {margin:0;}
  .col-layout-grid > .col {display:block; margin:0;}
  .col-layout-grid > .col > div {display:block; width:auto; margin:0;}
  .col-layout-grid > .col > div:after {display:none;}
}

@media screen and (max-width:460px) {
  /* -------- Header ------------ */
	.header-phone {width:46px; height:46px; max-width:none; padding:0; margin:5px;}
  .header-phone span {display:none;}
  /* -------- Nav ------------ */
	.drawer-nav .header-contact {width:46px;}
	.drawer-nav .header-contact span {display:none;}
	.nav-side > ul {column-count:1; background:#F6F6F6;}
	/* -------- Testimonials ------------ */
	.testimonial h3 {font-size:6.9rem;}
	.testimonial h6 {font-size:3.2rem;}
  /* -------- Profiles ------------ */
	.ptab {font-size:16px;}
	.profile {display:block; width:auto;}
	.profile-image-wrap {max-width:240px;}
	.profile h3 {font-size:28px;}
	.profile h6 {font-size:16px;}
	.profile-details strong {padding-right:20px;}
}