/*
* Skeleton V2.0.4
* Copyright 2014, Dave Gamache
* www.getskeleton.com
* Free to use under the MIT license.
* http://www.opensource.org/licenses/mit-license.php
* 12/29/2014
*/


/* Table of contents
––––––––––––––––––––––––––––––––––––––––––––––––––
Skeleton CSS Library Styling
  - Grid
  - Base Styles
  - Typography
  - Links
  - Buttons
  - Forms
  - Lists
  - Code
  - Tables
  - Spacing
  - Utilities
  - Clearing
  - Media Queries
*/



/* Font Variables
–––––––––––––––––––––––––––––––––––––––––––––––––– */

:root {
  --base-font: 'Raleway', sans-serif;
  --heading-font: "highest-praise", sans-serif;
  --alt-font: 'Source Sans 3', sans-serif;
}

.highest-praise *, .highest-praise{
	font-family: "highest-praise", sans-serif !important;
	font-weight: 400 !important;
	font-style: normal !important;
}
.billy *, .billy{
	font-family: "billy_ohioregular", sans-serif !important;
	font-weight: 400 !important;
	font-style: normal !important;
}
.lovelo *, .lovelo{
  font-family: 'loveloblack', sans-serif !important;
	font-weight: 400 !important;
	font-style: normal !important;
}
.lato *, .lato{
  font-family: 'Lato', sans-serif;
}
.pink-dot{
  color: #E64093;
  font-size: 6rem;
  font-family: "billy_ohioregular", sans-serif !important;
  font-weight: 400 !important;
  font-style: normal !important;
  position: absolute;
  top: 0;
  bottom: 0;
  letter-spacing: 1.5rem;
  margin-left: -3rem;
}
.source-sans *, .source-sans{
  font-family: 'Source Sans 3', sans-serif !important;
}

/* Base Styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/* NOTE
html is set to 62.5% so that all the REM measurements throughout Skeleton
are based on 10px sizing. So basically 1.5rem = 15px :) */
html {
  font-size: 62.5%; 
}
body {
  font-size: 1.5em; /* currently ems cause chrome bug misinterpreting rems on body element */
  line-height: 1.6;
  font-weight: 400;
  font-family: var(--base-font);
  color: #222; 
}


/* Typography
–––––––––––––––––––––––––––––––––––––––––––––––––– */
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 2rem;
}
h1 { font-size: 7.3rem; line-height: 1.2;  }
h2 { font-size: 6.3rem; line-height: 1.25; }
h3 { font-size: 3.0rem; line-height: 1.3;  }
h4 { font-size: 2.2rem; line-height: 1.35; }
h5 { font-size: 2.0rem; line-height: 1.5;  }
p, li { font-size: 1.8rem; line-height: 1.5; }
.xl-p { font-size: 2.6rem; line-height: 1.7; }

h1, h2, h3{
  font-family: var(--heading-font);
	font-weight: 500;
}
h4, h5, h6, p, li, .btn{
  font-family: var(--base-font);
}
h3, h4, h5, h6{
	font-weight: bold;
}


h1, h2{
  color: #E64093;
}
h3, h4, h5, h6{
  color: #007C8A;
}

p, li{
  color: #414141;
}
.secondary-headline{
  color: #3B3D41;
}
.big-paragraph{
  color: #3B3D41;
}
.display-font{
  font-family: var(--heading-font);
}
.regular-font{
  font-family: var(--base-font);
}

/* Larger than phablet */
@media (min-width: 550px) {
  h1 { font-size: 11.5rem; }
  h2 { font-size: 8rem; }
  h3 { font-size: 3.2rem; }
  h4 { font-size: 2.6rem; }
  h5 { font-size: 2.4rem; }
  p, li  { font-size: 1.7rem; }
  .xl-p { font-size: 2.6rem;}
}

p {
  margin-top: 0; 
  margin-bottom: 0;
}





/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */
ul {
  list-style: disc; }
ol {
  list-style: decimal inside; }
ol, ul {
  padding-left: 0;
  margin-top: 0; }
ul ul,
ul ol,
ol ol,
ol ul {
  margin: 1.5rem 0 1.5rem 3rem;
}
li {
  margin-bottom: 1rem; }



/* Tables
–––––––––––––––––––––––––––––––––––––––––––––––––– */
th,
td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #E1E1E1; }
th:first-child,
td:first-child {
  padding-left: 0; }
th:last-child,
td:last-child {
  padding-right: 0; }


/* Spacing
–––––––––––––––––––––––––––––––––––––––––––––––––– */
button,
.button {
  margin-bottom: 1rem; }
input,
textarea,
select,
fieldset {
  margin-bottom: 1.5rem; }
pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
  margin-bottom: 2.5rem; }


/* Misc
–––––––––––––––––––––––––––––––––––––––––––––––––– */
hr {
  margin-top: 3rem;
  margin-bottom: 3.5rem;
  border-width: 0;
  border-top: 1px solid #E1E1E1; }


/******************************************************************/
/*                  Navigation: Standard                          */
/******************************************************************/
.mobile-navigation{
  z-index: 1000;
  position: relative;
}
.mobile-navigation .phone, .mobile-navigation .free-exam{
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  letter-spacing: -0.5px;
  color: #007C8A;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.2em;
}
.mobile-navigation .free-exam{
  font-family: var(--base-font);
}
.mobile-navigation .free-exam span{
  width: 118px;
  margin-left: 5px;
}
.mobile-navigation .phone{
  font-family: var(--alt-font);
}
.mobile-navigation .phone svg{
  fill: #E64093;
  height: 20px;
  margin-top: -3px;
  margin-right: 5px;
}
.offcanvas-menu > label, .unsticky-nav label, .sticky-nav label, .sticky-desktop label{
  position: absolute;
  top: 18px;
  right: 21px;
  width: 40px;
  height: 40px;
  cursor: pointer;
  transition: 0.3s ease;
  display: flex;
  align-items: center;
  z-index: 100;
}
.offcanvans-menu > label{
    position: fixed;
}
.unsticky-nav label{
  position: absolute;
  top: 14px;
  right: 8px;
  height: 63px;
  width: 63px;
  background: rgb(248,174,64);
  background: linear-gradient(180deg, rgba(248,174,64,1) 0%, rgba(230,64,147,1) 100%);
  display: flex;
  justify-content: center;
  border-radius: 6px;
}
.sticky-nav img{
  width: 60px;
}

.offcanvas-menu label span, .offcanvas-menu label span::before, .offcanvas-menu label span::after, .unsticky-nav label span, .unsticky-nav label span::before, .unsticky-nav label span::after, .sticky-nav label span, .sticky-nav label span::before, .sticky-nav label span::after{
  transition: background 0.3s, transform 0.3s;
	border-radius: 20px;
}
.offcanvas-menu label span, .offcanvas-menu label span::before, .offcanvas-menu label span::after, .unsticky-nav label span, .unsticky-nav label span::before, .unsticky-nav label span::after, .sticky-nav label span, .sticky-nav label span::before, .sticky-nav label span::after{
  content: "";
  position: absolute;
  height: 5px;
  width: 40px;
  background: #FFFDF3;
}
.offcanvas-menu label span::before, .unsticky-nav label span::before, .sticky-nav label span::before {
  transform: translateY(-12px);
}
.offcanvas-menu label span::after, .unsticky-nav label span::after, .sticky-nav label span::after {
  transform: translateY(12px);
}
.offcanvas-menu nav {
  position: fixed;
  height: 100%;
  width: 100vw;
  right: -100vw;
  top: 0;
  overflow: hidden;
  background: rgba(0,0,0,.5);
  transition: 0.3s ease;
	z-index:9999;
	overflow: scroll;
}
.offcanvas-menu nav .nav-container {
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0;
  background: #004C57;
}

.offcanvas-menu nav > div a i {
  font-size: 4rem;
  background: linear-gradient(120deg, #49a4ed 30%, #3d00a9 110%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.offcanvas-menu nav > div label {
  width: 30px;
  height: 30px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: 0.3s ease;
  right: 23px;
  position: absolute;
}
.offcanvas-menu nav > div label span, .offcanvas-menu nav > div label span:before, .offcanvas-menu nav > div label span:after {
  background: #4d4d4d;
}
.offcanvas-menu nav > ul {
  margin-top: 30px;
  counter-reset: nav-link-count;
}
.offcanvas-menu nav > ul li {
  cursor: pointer;
  transform: translateX(-30px);
  opacity: 0;
  transition: 0.4s ease;
  counter-increment: nav-link-count;
  background-color: #172A46;
  margin-bottom: 0;
  padding-left: 25px;
}
.offcanvas-menu nav > ul li a {
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: 400;
  color: #C7DDDB;
  display: block;
  text-decoration: none;
}


.offcanvas-menu input[type="checkbox"] {
  display: none;
}
.offcanvas-menu input[type="checkbox"]:checked ~ label {
  opacity: 0;
  pointer-events: none;
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav {
  right: 0;
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav label span {
  background: transparent;
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav label span:before {
  transform: rotate(-45deg);
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav label span:after {
  transform: rotate(45deg);
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav label span:before, .offcanvas-menu input[type="checkbox"]:checked ~ nav label span:after {
  transition-delay: 0.2s;
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav ul li {
  opacity: 1;
  transform: translateX(0px);
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav ul li:nth-child(1) {
  transition-delay: 0.1s;
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav ul li:nth-child(2) {
  transition-delay: 0.2s;
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav ul li:nth-child(3) {
  transition-delay: 0.3s;
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav ul li:nth-child(4) {
  transition-delay: 0.4s;
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav ul li:nth-child(5) {
  transition-delay: 0.5s;
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav ul li:nth-child(6) {
  transition-delay: 0.6s;
}
.offcanvas-menu input[type="checkbox"]:checked ~ nav ul li:nth-child(7) {
  transition-delay: 0.7s;
}
#menu-main-menu{
  width: 100%;
}
.offcanvas-menu .menu-item-has-children a{
  width: 100%;
  display: block;
}

.unsticky-nav .top-bar{
	display: flex;
}
.mobile-navigation .unsticky-nav .top-bar{
  display: flex;
    align-items: center;
    justify-content: space-between;
    /* margin-right: 86px; */
    width: 80%;
    padding-right: 3vw;

}
.unsticky-nav .bottom-bar{
  padding-top: 8px;
  padding-bottom: 8px;
  background: rgb(255,253,243);
  background: linear-gradient(180deg, rgba(255,253,243,1) 0%, rgba(247,238,215,1) 100%);
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}
.unsticky-nav .bottom-bar img{
	width: 215px;
}
.unsticky-nav .bottom-bar .divider-bar{
  height: 42px;
  width: 3px;
  background: #E4DBC3;
  display: block; 
}
.unsticky-nav .bottom-bar .free-exam{
  display: flex;
  justify-content: center;
  align-items: center;
}

.unsticky-nav .top-bar img{
	width: 307px;
  margin-left: 20px;
  padding-top: 11px;
  padding-bottom: 13px;
}
.unsticky-nav .social-links{
	margin-top: 19px;
	margin-left: 19px;
	display: flex;
    justify-content: center;
    align-items: start;
    gap: 15px;
}
.unsticky-nav .social-links svg{
	height: 20px;
}
.unsticky-nav .social-links svg{
	fill: #C7DDDB;
}
.unsticky-nav .booking-icon{
  width: 22px;
  height: 22px;
}
.nav-btn{
  color: white;
  border-radius: 10px;
  background-color: #31978F;
  height: 35px;
  width: 170px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.nav-btn:hover{
	color: #584D3E;
}
.nav-btn:hover #Rectangle_4763{
	fill: white;
}
.nav-btn .desktop-only{
	display: none;
}
.nav-btn.phone svg{
	width: 20px;
	max-height: 20px;
	fill: #584D3E;
}
.nav-btn svg{
	margin-right: 5px;
}
.logo-bg{
  height: 95px;
  justify-content: center;
  display: flex;
  align-items: center;
}
@media(max-width: 1000px){
	.nav-btn{
		padding-left: 5px;
    	padding-right: 5px;
	}
}
.offcanvas-menu .toogle-close{
  position: absolute;
    top: 8px;
    right: 8px;
    height: 63px;
    width: 63px;
    background: rgb(248,174,64);
    background: linear-gradient(180deg, rgba(248,174,64,1) 0%, rgba(230,64,147,1) 100%);
    display: flex;
    justify-content: center;
    border-radius: 6px;
}
.offcanvas-menu .toogle-close span, .offcanvas-menu .toogle-close span::before, .offcanvas-menu .toogle-close span::after{
	width: 30px !important;
	background-color: #FFFDF3;
}
.offcanvas-menu img{
	width: 207px;
	margin-bottom: 30px;
  margin-top: 11px;
  margin-left: 20px;
}
.offcanvas-logo-container{
	    display: flex !important;
    justify-content: left !important;
    align-items: center !important;
    width: 100%;
    background: #004C57;
    
}
.offcanvas-menu #menu-main-menu{
  background-color: #004C57;
}
.offcanvas-menu #menu-main-menu, .offcanvas-menu #menu-main-menu .sub-menu{
	list-style: none;
}
.offcanvas-menu #menu-main-menu > li{
	margin-bottom: 0;
  background-color: #003B43;
}
.offcanvas-menu #menu-main-menu a{
	text-decoration: none;
	color: white;
	height: 50px;
	display: flex;
    align-items: center;
	padding-left: 50px;
	width: 100%;
	background: rgba(0,0,0,0);
	transition: ease-in-out .2s background;
}
.offcanvas-menu #menu-main-menu .menu-item-has-children a:hover{
	background: #016773;
}
.offcanvas-menu #menu-main-menu .sub-menu{
	margin-left: 0;
}
.offcanvas-menu #menu-main-menu .sub-menu li{
	background-color: #007C8A;
	margin-bottom: 0px;
	width: 100%;
	border-bottom: #004C57 1px solid;
}
.offcanvas-menu #menu-main-menu .sub-menu li:last-of-type{
	padding-bottom: 30px;
}
.offcanvas-menu .sub-menu{
	margin-top: 0px;
	margin-bottom: 0px;
}
.offcanvas-menu .menu-item-has-children::after{
    content: "";
    font-size: 19px;
    color: #162E5D;
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    top: 17px;
    right: 28px;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 7px solid #fff;
    opacity: 1;
    transition: ease-in-out .2s all;
    border-radius: 39px;
}
.unsticky-nav{
    z-index: 101;
    position: relative;
	background-color: #004C57;
}
.sticky-nav{
	background-color: white;
	-webkit-box-shadow: 0px 6px 44px 0px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 6px 44px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 6px 44px 0px rgba(0,0,0,0.75);
}
/* Show Hide Sticky Header Speed Control */
.sticky-nav {
	transition: all .4s ease!important;
	z-index: 100;
	position: fixed;
	width: 100%;
	top: -100px;
}
.sticky-nav .nav-btn{
	padding-left: 5px;
    padding-right: 5px;
    margin-bottom: 10px;
}
.sticky-nav .nav-btn svg{
	margin-right: 3px;
}

.offcanvas-menu #menu-main-menu .sub-menu.slide-down{
    opacity: 1;
	height: fit-content;
}



.sticky {
  position: fixed;
  top: 0;
  width: 100%;
  /* Add any other styles for the sticky state here */
}


@media(min-width: 1000px){

	.mobile-only{
		display: none !important;
	}
	.desktop-only{
		display: block !important;
	}
  .unsticky-nav, .very-top-bar{
    background-color: #FFFDF3;
  }
  .mobile-navigation .unsticky-nav .top-bar {
    width: 100%;
    max-width: 1133px;
    margin: 0 auto;
  }
  .mobile-navigation .right-side{
    display: flex;
    justify-content: right;
    position: absolute;
    right: -54px;
  }
  .top-bar.desktop-only{
    display: flex !important;
    align-items: center;
  }
  .offcanvas-menu > label, .unsticky-nav label, .sticky-nav label, .sticky-desktop label {
    position: unset;
  }
  .offcanvas-menu nav .nav-container {
    width: 27%;
  }
  .very-top-bar{
    z-index: 101;
    position: relative;
    background: rgb(21,125,138);
    background: linear-gradient(264deg, rgba(21,125,138,1) 0%, rgba(12,76,87,1) 100%);
    color:#F7EED7;
    font-family: var(--alt-font);
  }
  .very-top-bar a, .very-top-bar span{
    color:#F7EED7;
    text-decoration: none;
  }
  .very-top-bar a{
    margin-left: 100px;
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .very-top-bar svg{
    fill: #B8D463 !important;
    margin-right: 5px;
  }
  .very-top-inner{
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: end;
    padding-right: 105px;
  }
  .unsticky-nav label{
    width: 250px;
    background-image: url(/wp-content/uploads/2023/11/menu-svg-updated.svg);
    background-size: 100% 100%;
  }
  .top-bar .text{
    color: #FFFFFF;
    position: relative;
    bottom: -16px;
    left: 48px;
  }

  .center-it{
    display: flex;
    justify-content:center;
    align-items: center;
    position: relative;
    right: 54px;
    position: relative;
    left: -20px;
    top: -3px;
  }
  .top-bar-inner{
    max-width: 1012px;
  }
  .sticky-nav .toogle-open{
    position: absolute;
  }

}
@media(max-width: 1001px){
  .desktop-only{
    display: none !important;
  }

}
@media(min-width: 1001px){
  #hide-header label{
    margin-right: -63px;
  }
  #hide-header .free-exam{
    position: absolute;
    top: 18px;
    right: 193px;
  }
}

@media(min-width: 1650px){
  .home-hero{
    background-size: cover;
  }
}
/* Media Queries
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/*
Note: The best way to structure the use of media queries is to create the queries
near the relevant code. For example, if you wanted to change the styles for buttons
on small devices, paste the mobile query code up in the buttons section and style it
there.
*/


/* Larger than mobile */
@media (min-width: 400px) {}

/* Larger than phablet (also point when grid becomes active) */
@media (min-width: 550px) {}

/* Larger than tablet */
@media (min-width: 750px) {}

/* Larger than desktop */
@media (min-width: 1000px) {}

/* Larger than Desktop HD */
@media (min-width: 1200px) {}





.logo-container{
  background-color: #584D3E;
  border-bottom: #95BDBB 16px solid;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 50px;
  padding-bottom: 50px;
}
.logo-container img{
  width: 250px;
}
@media(min-width: 1000px){
  .logo-container{
    padding-top: 60px;
    padding-bottom: 60px;
  }
}






.offcanvas-menu .menu-item-has-children.active::after{
  transform: rotate(90deg);
  opacity: .8;
}

/* Initial styling for the sub-menu */
.sub-menu {
    display: none;
}

/* Show sub-menu when hovering over the parent li */
.menu-item:hover .sub-menu {
    display: block;
}

.offcanvas-menu #menu-main-menu .sub-menu {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  transition: opacity 0.3s ease, max-height 0.3s ease;
}

.offcanvas-menu #menu-main-menu .menu-item-has-children.active .sub-menu {
  display: block;
  opacity: 1;
  max-height: 2000px; /* Adjust the maximum height as needed */
}