﻿/*--------------------
TABLE OF CONTENTS
01. Base Styles
02. Typography/Link Styles
03. Header Styles
04. Navigation Styles
05. Content Styles
06. Footer Styles

/*======================
01. BASE STYLES
========================*/

html {
  overflow-x:hidden;
}

body {
	font:100%/1.4 'Open Sans',sans-serif;
	color:#0d253b;
	background:#93ECFC;
}

body#supt {background:#fff;}

img {max-width:100%;}

a.skip-main {
    left:-999px;
    position:absolute;
    top:auto;
    width:1px;
    height:1px;
    overflow:hidden;
    z-index:-999; 
}
a.skip-main:focus, a.skip-main:active {
    color: #fff;
    background-color:#000;
    left: auto;
    top: auto;
    width: 30%;
    height: auto;
    overflow:auto;
    margin: 10px 35%;
    padding:5px;
    border-radius: 15px;
    border:4px solid yellow;
    text-align:center;
    font-size:1.2em;
    z-index:999;
}

.container {
	width:95%;
	margin:0 auto;
	max-width:1100px;
  position:relative;
}

.column {
	float:left;
	margin:0 1%;
}

.grid12 {width:98%;}
.grid11 {width:89.6667%;}
.grid10 {width:81.3333%;}
.grid9 {width:73%;}
.grid8 {width:65%;}
.grid7 {width:56.3333%;}
.grid6 {width:48%;}
.grid5 {width:39.6667%;}
.grid4 {width:31%;}
.grid3 {width:23%;}
.grid2 {width:14.6667%;}
.grid1 {width:6.3333%;}

.clear {clear:both;}

.alignright,.alignleft, .alignmid {
  border-radius:30px;
  -webkit-border-radius:30px;
  -moz-border-radius:30px;
}

.alignleft {
	float:left;
	margin-right:15px;
}
.alignright {
	float:right;
	margin-left:15px;
}
.alignmid {
	display:block;
	margin:0 auto;
}
.center {text-align:center;}

blockquote {
	text-align:center;
	color:#F49BC2;
	font-size: 1.7em;
  font-family: 'Baloo Chettan', cursive;
  line-height:1.2em;
  width:80%;
  margin:0 auto;
  margin-bottom:10px;

}

hr {
  border:0;
  height:2px;
  background:#F49BC2;
  padding:0;
  margin-top:10px;
  margin-bottom:25px;
}

.highlight {
  border-radius:20px;
  -webkit-border-radius:20px;
  -moz-border-radius:20px;
  background:#9CD200;
  width:220px;
  float:right;
  text-align:center;
  padding:15px 15px;
  margin:0 0 10px 15px;
}

.highlight h4 {padding-bottom:10px;}

/*======================
02. TYPOGRAPHY/LINK STYLES
========================*/

h1,h2,h3,h4,h5,h6 {
	font-weight:normal;
  font-family: 'Baloo Chettan', cursive;
}

h1 {
  font-size:3em;
  color:#7e43ab;
  line-height:1.1em;
}
h2 {
  font-size:2.5em;
  padding-bottom:0;
  color:#FACA0C;
}
h3 {
  font-size:1.8em;
  line-height:1em;
  padding-bottom:10px;
  color:#15C0E2;
}
h4 {
  font-size:1.7em;
  color:#7E43AB;
  line-height:1em;
}
h5 {
  font-size:1.5em;
  color:#9CD200;
  text-transform:uppercase;
  padding-bottom:10px;
}
h6 {font-size:1.1em;}

.blogsection h3 {color:#fff;}

a {color:#2878BD;transition:0.5s all ease;}

a:hover {color:#662992;}

a.button, a.read-more {
	background:#9CD200;
	color:#fff;
	text-align:center;
	display:inline-block;
	padding:8px 20px;
	text-decoration:none;
  border-radius:20px;
  -webkit-border-radius:20px;
  -moz-border-radius:20px;
  font-family: 'Baloo Chettan', cursive;
  font-size:1.2em;
}

a.read-more {margin-top:10px}

a.button:hover, a.read-more:hover {
	background:#15BBDF;
	color:#fff;
}

a.large {
  background:#7E44AB;
  font-size:1.4em;
}

a.quicklink {
  border-radius:40px;
  -webkit-border-radius:40px;
  -moz-border-radius:40px;
  font-family: 'Baloo Chettan', cursive;
  font-size:1.3em;
  color:#fff;
  text-decoration:none;
  display:inline-block;
  width:150px;
  height:125px;
  margin:15px 15px 15px 15px;
  text-align:center;
  line-height:1.1em;
  padding-top:25px;
  transition:0.5s ease all;
}

a.quicklink:hover {opacity:0.7;}

#linksection {
  margin-top:40px;
  text-align:center;
}

a#reviewsbtn {background:#f08cb7;}
a#formsbtn {background:#13bbdf;}
a#blogbtn {background:#8dc63f;}
a#apptbtn {background:#7e43ab;}

.container p,.container li {font-size:0.9em;}

/*======================
03. HEADER STYLES
========================*/

header {
  text-align:center;
  padding-top:10px;
  background:url('../img/header-bg.png') no-repeat center top;
  height:190px;
  z-index:9997;
  position:relative;
}

header .logo {margin-bottom:10px;}

header .container > .number {
  font-family: 'Baloo Chettan', cursive;
  color:#31c4e3;
  font-weight:400;
  font-size:1.2em;
  position:absolute;
  top:5px;
  left:0;
}

header .container > .social {
  position:absolute;
  top:5px;
  right:0;
}

header .container > .social img {
  margin-left:3px;
}

.social a.dent-store {
    font-family: 'Baloo Chettan', cursive;
    color: #fff;
    font-weight: 400;
    font-size: 1.2em;
    padding: 0 5px;
    background: #2878BD;
    border-radius: 11px;
    margin: 0 3px;
    text-decoration: none;
}

.social a.dent-store:hover {
  background: #9ad102;
}

header .container:before {
  position:absolute;
  content:"";
  left:-90px;
  width:228px;
  height:189px;
  top:40px;
  background:url('../img/helicopter.png') no-repeat;
  z-index:9998;
}

header .container:after {
  position:absolute;
  content:"";
  right:-110px;
  width:159px;
  height:98px;
  top:40px;
  background:url('../img/airplane.png') no-repeat;
  z-index:9998;
}

/*======================
04. NAVIGATION STYLES
========================*/

.main-navigation {display:none;}

nav.desktop {
  position:relative;
  z-index:9997;
  margin:0 auto;
  background:#9bd102;
  border-radius:20px;
  -webkit-border-radius:20px;
  -moz-border-radius:20px;

}

nav ul{
  list-style-type:none;
  padding-bottom:0;
  text-align:center;
}

nav li {
  display:inline-block;
  margin:0;
  padding:0;
  position:relative;
}

nav li a {
  display:block;
  text-decoration:none;
  color:#fff;
  font-size:1.3em;
  transition:0.5s all ease;
  line-height:40px;
  padding:0 16px;
  margin:0 -2px;
  font-family: 'Baloo Chettan', cursive;
}

nav li:hover a {
  background:#f08cb7;
  color:#fff;
}

/* DROPDOWN */

nav li ul {
  display: none;
}
nav li:hover ul {
  display: block;
  margin-left: -2px;
  position: absolute;
  top: 40px;
  z-index: 9999;
}
nav li:hover li {
  float: none;
  white-space: nowrap;
  width: 100%;
  background:none;
}

nav li:hover li a {
  background: #7e43ab;
  display: block;
  margin:0;
  height: auto;
  text-align: left;
  font-size:1.1em;
  line-height:40px;
  padding:0 40px 0 20px;
  border:0;
}
nav li:hover li a:hover {
  background: #5c208a;
}

/*======================
05. CONTENT STYLES
========================*/

.slideshow {
  background:#98edfe url('../img/cloud-sky.png') no-repeat center top;
  width:100%;
  margin-top:-50px;
  padding-top:60px;
}

.toparea {
  background:#51D4EE url('../img/cloud-sky.png') no-repeat center top;
  width:100%;
  margin-top:-50px;
  padding-top:60px;
  text-align:center;
  min-height:210px;
}

.toparea h1 {color:#fff;padding-bottom:0;}

.toparea h4 {
  color:#2878BD;
  padding-bottom:50px;
}

.toparea .spanish {margin-bottom:15px;}

.rslides {
  position: relative;
  list-style: none;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0;
  border:15px solid #fff;
  border-radius:30px;
  -webkit-border-radius:30px;
  -moz-border-radius:30px;
  z-index:9994;
  margin-left:-15px;
  }

.slideshow .container:before {
  content:"";
  width:196px;
  height:396px;
  position:absolute;
  left:-100px;
  bottom:-20px;
  background:url('../img/girl-ladder.png') no-repeat;
  z-index:9998;
}

.rslides:before {
  content:"";
  position:absolute;
}

.rslides li {
  -webkit-backface-visibility: hidden;
  position: absolute;
  display: none;
  width: 100%;
  left: 0;
  top: 0;
  margin-left:0;
  }

.rslides li:first-child {
  position: relative;
  display: block;
  float: left;
  }

.rslides img {
  display: block;
  height: auto;
  float: left;
  width: 100%;
  border: 0;
  }

.spanish {
  width:70%;
  background:#7e43ab;
  border-radius:35px;
  margin:0 auto;
  z-index:9995;
  position:relative;
  margin-top:-30px;
  padding:10px 0;
  color:#fff;
  font-family: 'Baloo Chettan', cursive;
  text-align:center;
  font-size:1.5em;
  margin-bottom:5px;
}

.call-to-action{
  width:60%;
  background: #FACA0C;
  border-radius:35px;
  margin:0 auto;
  z-index:9995;
  position:relative;
  margin-top:0px;
  padding:10px;
  color:#000;
  font-family: 'Baloo Chettan', cursive;
  text-align:center;
  font-size:1em;
  margin-bottom:5px;
}

.spanish a {
  color:#13bbdf;
}

.spanish a:hover {
  color:#fff;
}

.welcome {
  background:url('../img/welcome-bg.png') no-repeat center top;
  min-height:415px;
  margin-top:-4px;
  position:relative;
  z-index:9997;
  padding-top:50px;
}

#supt .welcome {
  background:url('../img/welcome-bg2.png') no-repeat center top;
  margin-top:-60px;
  padding-top:120px;
  min-height:300px;
  z-index:9990;
  padding-bottom:60px;
}

#supt .welcome:after {
  content:"";
  width:100%;
  height:425px;
  background:url('../img/welcome-bg-bottom.png') no-repeat center;
  left:0;
  bottom:0;
  position:absolute;
  z-index:-1;
}

.welcome > .container:before {
  content:"";
  width:176px;
  height:408px;
  position:absolute;
  left:-180px;
  top:-40px;
  background:url('../img/girl-balloons.png') no-repeat;
  z-index:9999;
}

.blogsection {
  background:url('../img/pink-blog.png') no-repeat center;
  height:500px;
  margin-top:-40px;
  position:relative;
  z-index:9998;
  padding-top:60px;
}

.blogsection .container:before {
  content:"";
  width:229px;
  height:375px;
  position:absolute;
  left:-240px;
  top:30px;
  background:url('../img/parachute.png') no-repeat;
  z-index:9999;
}

.blogsection .container:after {
  content:"";
  width:163px;
  height:168px;
  position:absolute;
  right:-20px;
  top:350px;
  background:url('../img/infant-bubble.png') no-repeat;
  z-index:9999;
}

.reviewsection {
  background:url('../img/green-review.png') no-repeat center;
  height:560px;
  margin-top:-80px;
  position:relative;
  z-index:9997;
  padding-top:60px;
}

.reviewsection > .container:before {
  content:"";
  width:149px;
  height:148px;
  position:absolute;
  left:-220px;
  top:320px;
  background:url('../img/toddler.png') no-repeat;
  z-index:9999;
}

.reviewsection > .container:after {
  content:"";
  width:245px;
  height:288px;
  position:absolute;
  right:-210px;
  top:270px;
  background:url('../img/llama.png') no-repeat;
  z-index:9999;
}

/* FORM STYLES */

#form .clear {clear:both;}
#form .center {text-align:center;}
#form h3 {margin:0 1%;}
#form small {font-style:italic;}
#form hr {width:98%;margin:10px 1% 15px 1%;}

/*GRID */
#form .column {
  float:left;
  margin:0 1%;
}

#form .full {width:98%;margin:0 1%;}
#form .half {width:48%;}
#form .twothird {width:65%;}
#form .onethird {width:31%;}

#form input:not([type=submit]):not([type=checkbox]):not([type=radio]) {
  width:96%;
  padding:10px 2%;
}

#form input[type=radio] {
  margin-bottom:5px;
}

#form textarea {
  width:96%;
  resize:none;
  padding:10px 2%;
  font:95%/1.4 'Tahoma',sans-serif;
}

#form select {
  width:101%;
  padding:10px 2%;
}



/*======================
06. FOOTER STYLES
========================*/

#home footer{
    margin-top: -70px;
}
footer {
  background:#058DAA url('../img/footer-bg.png') center top;
  min-height:300px;
  width:100%;
  position:relative;
  z-index:9990;
  margin-top:-40px;
  padding-top:70px;
  color:#fff;
  font-size:0.9em;
}

body#supt footer {
  margin-top:-50px;
  padding-top:80px;
  padding-bottom: 20px;
}

footer .container:before {
  content:"";
  width:203px;
  height:320px;
  position:absolute;
  left:-220px;
  top:-20px;
  background:url('../img/submarine.png') no-repeat;
  z-index:9999;
}

footer .container:after {
  content:"";
  width:376px;
  height:170px;
  position:absolute;
  right:220px;
  top:120px;
  background:url('../img/swimming.png') no-repeat;
  z-index:9999;
}

footer a {color:#c4e9ff;}
footer a:hover {color:#fff;}

.windowtop {
  display: inline-block;
  height: 40px;
  width: 40px;
  position: fixed;
  bottom: 40px;
  right: 30px;
  overflow: hidden;
  text-indent: 100%;
  background: #572D8B url('../img/top-arrow.png') no-repeat center 50%;
  visibility: hidden;
  opacity: 0;
  border-radius:20px;
  -webkit-border-radius:20px;
  -moz-border-radius:20px;
  z-index:9999 !important;
  transition:0.5s all ease;
  cursor:pointer;
}

.windowtop.cd-is-visible {
  /* the button becomes visible */
  visibility: visible;
  opacity: 1;
}

.no-touch .windowtop:hover {
  background-color: #e86256;
  opacity: 1;
}

/*======================
MEDIA QUERIES
========================*/

@media (max-width:1200px) {
  header .container:before, header .container:after,.welcome .container:before, .blogsection .container:before,footer .container:before  {display:none;}
}

@media (max-width: 1024px) {

  html {overflow-x:auto;}

  .slideshow .container:before, .blogsection .container:after, footer .container:after {display:none;}

  header .container > .number {
    position:relative;
    top:5px;
    margin-bottom:15px;
    text-align:right;
  }

  .desktop{
    display: none !important;
  }
  .mobile{
    display: block;
  }

  .mobile-button{
    display: block;
    position: absolute;
    top:10px;
    z-index: 9999;
    width:40px;
    height:40px;
    cursor: pointer;
    background:#9CD200 url('../img/hamburger-menu.png') no-repeat center;
    border-radius:10px;
    left:20px;
  }

  .main-navigation.mobile-menu{
    left: 0;
  }

  .main-navigation {
    display: block !important;
    background-color: #7E43AB;
    position: absolute;
    top: -10px;
    left: -250px;
    width: 250px;
    height:100vh;
    bottom:0;
    padding: 70px 0 0 0;
    z-index: 9998;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
  }

  .main-navigation > ul > li {
    height: auto;
    display: block;
    margin: 0;
  }

  .main-navigation > ul li{
    float: none;
    border-bottom:1px solid #A57CC5;
  }

  .main-navigation > ul li:first-child {
    border-top:1px solid #A57CC5;
  }

  nav {margin:0;}

  nav ul li:hover a {background:none;}

  nav li:hover li a:hover {
    background: none;
  }

  .main-navigation > ul > li a {
    display: block;
    float: none;
    font-size: 1.4em;
    width: 100%;
    text-align: left;
    overflow: hidden;
    line-height: 50px;
    color: #fff;
    padding:0;
    padding-left:20px;
  }

  .main-navigation > ul li > ul {
    margin: 0;
    position: static;
    height: auto;
    overflow: hidden;
    background-color: #5C208A;
  }

  .main-navigation > ul li {
    display:block;
  }

  .main-navigation > ul li > ul li:last-child {
    border-bottom:0;
  }

  .main-navigation > ul li > ul li a {
    line-height: 35px;
    color: #fff !important;
    font-size: 1em;
  }

  h1 {font-size:2.5em;}
  h2 {font-size:2.2em;}
  h3 {font-size:1.6em;}
  h4 {font-size:1.4em;}
  h5 {font-size:1.2em;}

	.grid1,.grid2,.grid3,.grid4,.grid5,.grid6,.grid7,.grid8,.grid9,.grid10,.grid11,.grid12 {
		width:100%;
		margin:0;
	}

	#form .column {
    float:none;
    margin:0;
  }
  #form .full, #form .half, #form .twothird, #form .onethird {
    width:98%;margin:0;
  }

  .welcome {
    background:#ffffff;
    border-top:30px solid #9CD200;
    min-height:inherit;
    margin-top:20px;
    padding-top:30px;
    overflow:auto;
  }

  #supt .welcome {
  background:none;
  margin-top:-20px;
  padding-top:40px;
  min-height:300px;
  z-index:9997;
  padding-bottom:60px;
}

  #linksection {
    margin-top:0;
  }

  .slideshow {
    background:#93ECFC;
  }

  .blogsection {
    background:#F08DB8;
    border-top:30px solid #CB5B8C;
    padding-top:20px;
    margin-top:0;
    height:auto;
    overflow:auto;
  }

  footer {
    background:#0C9CBA;
    overflow:auto;
    margin-top:0;
    padding-top:40px;
    text-align:center;
  }

  .rslides {
    border:5px solid #fff;
    margin-left:-5px;
  }

}

@media screen and (max-width:600px) {
	.alignleft, .alignright {
		float:none;
		display:block;
		margin:0 auto 20px auto;
	}

  .spanish {font-size:1.1em;}

  header {
    background:#fff;
    height:auto;
    padding-bottom:20px;
  }

  header .container > .social {
    position:relative;
    margin-top:10px;
  }

  #supt .welcome {
    margin-top:0px;
  }

  .highlight {
    width:93%;
    float:none;
    margin:15px 0;
  }
}

.activitycontainer {
      text-align:center;
  }

  .activity {
      width:23%;
      padding:0 1% 15px 1%;
      text-align:center;
      display:inline-block;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
  }

  .activity img {max-width:100%;}

  @media (max-width:650px) {
      .activity {
          width:46%;
          padding:0 2% 15px 2%;
      }

      .spanish a {display:block;}
  }
  
  /* ::: Base Styles (May exist already) ::: */
img {
    max-width: 100%;
}
.column {
   float:left;
   margin:0 1%;
}
 
/* ::: Tour Styles ::: */
.tour{
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
}
.tour{
   text-align: center;
}
.tour img{
   margin: auto;
}
.tour .column{
   max-width: 560px;
}