@import url('https://fonts.googleapis.com/css2?family=Montez&family=Montserrat:ital,wght@0,300;0,400;0,500;0,700;1,400;1,700&display=swap');
/* ===============================================
	
	elias-kathy
	
	Sesame Communications - (c) 2020
	Written by: Vita Stillion
	All rights reserved.
	Any reproduction or intentional misuse is strictly prohibited
	
=============================================== */

.ib {
  display: inline-block;
}

.financial-information #financial-online-services {
  display: none;
}
.btn-style01 .btn {
  letter-spacing: 0.2em;
  line-height: 3.84;
  font-size: 0.65em;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  color: #0fa7d5;
  height: 3.84em;
  padding: 0 2em;
  margin: 5px;
  display: inline-block;
  vertical-align: top;
  position: relative;
  transition: ease-in-out all 0.4s;
}
.btn-style01 .btn svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.btn-style01 .btn svg rect {
  stroke-width: 1.1;
  stroke-dasharray: 353, 0;
  stroke-dashoffset: 0;
  transition: all 600ms ease;
}
.btn-style01 .btn.btn01:hover svg rect {
  stroke-dasharray: 100, 266;
  stroke-dashoffset: 176;
}
.btn-style01 .btn.btn02:hover svg rect {
  stroke-dasharray: 115, 320;
  stroke-dashoffset: 200;
}
.btn-style01 .btn.btn03:hover svg rect {
  stroke-dasharray: 136, 402;
  stroke-dashoffset: 232;
}
/* ===============================================
Basic Stylings
These will affect every size of the site.
=============================================== */
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.fa,
.fas,
.fab,
.fal {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: 0;
}
body,
input,
select,
textarea,
form button {
  font-family: 'Montserrat', sans-serif;
}
nav ul li a,
nav ul ul li a {
  padding: 0;
}
li {
  line-height: inherit;
}
img {
  height: auto;
}
svg:not(:root) {
  overflow: visible;
}
/* Body */
body {
  font-weight: 300;
  font-size: 15px;
  line-height: 1.6em;
  font-weight: normal;
  background: #fff;
  color: #18191a;
  overflow: hidden;
}
p {
  margin: 0 0 1.58em;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}
/* Links */
a {
  text-decoration: none;
}
#content a {
  
  transition-duration: 0.3s;
  color: #0fa7d5;
  text-decoration: none;
}
#content a:hover {
  color: #005771;
}
/* Headings */
h1,
h2,
h3,
h4,
h5,
h6 {
  text-align: left;
  font-weight: 300;
  text-transform: uppercase;
  margin: 0 0 0.7em;
  text-rendering: auto;
  line-height: 1em;
  color: #18191a;
}
h1 {
  text-align: center;
  text-transform: none;
  font-family: 'Montez', cursive;
  font-size: 2.5em;
  color: #ffffff;
  margin-bottom: .75em;
}
.home h1 {
  text-align: center;
  color: #000000;
  margin-bottom: 0.7em;
}
.home h1 span {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  letter-spacing: 0.2em;
  display: block;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 3.2;
}
h2 {
  font-size: 1.5em;
}
h3 {
  font-size: 1.00em;
	color: #22a8d4;
}
h4 {
  font-size: 1em;
}
h5,
h6 {
  font-size: 0.9em;
}
hr {
  color: #d4d4d4;
  background-color: #d4d4d4;
  border: none;
  height: 1px;
  clear: both;
  margin: 1.58em 0;
}
.hr {
  visibility: hidden;
}
.container {
  max-width: 1000px;
}
#hide-stock {
  position: relative;
}
.sidebar {
  text-align: center;
  margin: 0 auto 2em;
  position: relative;
  max-width: 300px;
}
.static {
  margin: 0 0 20px 0;
  display: inline-block;
  vertical-align: top;
  width: 100%;
  max-width: 300px;
}
.team {
  display: inline-block;
  vertical-align: top;
  margin: 0 20px 20px 0;
}
.team-photo {
  display: block;
  width: 100%;
  float: none;
  margin: 0 auto 25px;
  max-width: 600px;
  border: solid 4px #ffffff;
}
.staff {
  display: block;
  width: 45%;
  max-width: 250px;
  margin: 0 auto 1em;
}
.patient-forms ul.forms li a {
  
  transition-duration: 0.3s;
}
/*.img-right { max-width: 100%; }*/
/* List Styling */
ul li {
  list-style: disc;
}
.content-text ul li {
  text-align: left;
}
.home .content-text {
  background: #fff;
  padding: 20px;
}
 
li {
  margin-left: 20px;
  line-height: inherit;
}
.office-tour li,
.invisalign-before-after li,
.before-and-after li {
  margin: 0;
}
#content ul {
  margin: 0 0 1.8em 25px;
}
.sitemap #content ul li {
  margin-left: 0;
}
#subnav {
  margin: 0;
  padding: 0;
}
#subnav li,
body.sitemap #content ul li {
  list-style: none;
}
/* Sitemap */
body.sitemap #content ul {
  margin: 0 0 1.8em 0;
}
body.sitemap #content ul li {
  margin-top: 21px;
  list-style: none;
}
body.sitemap #content ul li a {
  font-weight: 300;
  text-transform: uppercase;
  font-size: 1.625em;
  /* 26px */
  color: #0fa7d5;
  display: block;
  text-decoration: none;
}
body.sitemap #content ul ul {
  padding-left: 0;
  margin: 0;
  /* margin: 0 0 0 30px; */
}
body.sitemap #content ul ul li {
  margin: 0;
  list-style: none;
}
body.sitemap #content ul ul li a {
  font-weight: 300;
  display: inline-block;
  vertical-align: top;
  font-size: 1em;
  color: #0fa7d5;
  text-transform: none;
}
body.sitemap #content ul li a:hover,
body.sitemap #content ul ul li a:hover {
  color: #c7c7c7;
}
#sticky {
  position: fixed;
  width: 100%;
  z-index: 3000;
  padding-top: 80px;
  background: rgba(255, 255, 255, 0.8);
}
#sticky .container {
  max-width: none;
  width: 96% !important;
}
#sticky .social-media img,
#sticky .social-media .ib {
  vertical-align: top;
}
#sticky .social-media {
  text-align: center;
  height: auto;
  width: 100%;
  display: inline-block;
  vertical-align: top;
  padding: 0;
  margin: 0;
  position: relative;
  background: rgba(0, 0, 0, 0.8);
  display: none;
}
#sticky .social-media a {
  color: #ffffff;
  font-size: 14px;
  margin: 0 5px;
  position: relative;
  display: block;
  float: left;
  
  transition-duration: 0.3s;
  line-height: 2.5em;
}
#sticky .social-media a:hover {
  color: #0fa7d5;
  
  transform: scale(1.4);
}
/* Header */
#hd {
  text-align: center;
  width: 100%;
  padding: 0;
  /*position: relative;*/
  /* Header Info */
}
#hd .logo {
  float: none;
  display: block;
  text-align: center;
  width: 115px;
  height: 65px;
  margin: 0.5em;
  text-decoration: none;
  position: absolute;
  top: 0;
}
#hd .logo svg {
  width: 115px;
  height: 65px;
}
#hd .info {
  display:flex;
  justify-content:center;
  position: relative;
  z-index: 9401;
}
#hd .info a {
  
  transition: ease-in-out all 0.4s;
  display: inline-block;
  color: #0fa7d5;
  font-size: 29px;
  font-size: 21px;
  margin: 0.5em 0.4em;
}
#hd .info a:hover {
  
  transform: scale(1.3);
  color: #c7c7c7;
}
/* #hd .info .ico01 .icon {
  transform: scaleX(-1);
} */
#hd .info .ico03 {
  position: relative;
}
#hd .info .ico03:before {
  font-weight: 500;
  text-align: center;
  border-radius: 20px;
  display: inline-block;
  content: 'join us';
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  
  transition: ease-in-out all 0.4s;
  color: #ffffff;
  background: #0fa7d5;
  font-size: 11px;
  width: 94px;
  height: 32px;
  line-height: 32px;
  position: absolute;
  top: 110%;
  left: -34px;
  transform: scale(0.5);
  opacity: 0;
}
#hd .info .ico03:hover:before {
  transform: scale(0.8);
  opacity: 1;
}
/* ==================================================================
	main-nav
=================================================================== */
#main-nav {
  letter-spacing: 0.1em;
  font-size: 12px;
  text-align: center;
  text-transform: uppercase;
  font-weight: 300;
  height: 80px;
  width: 100%;
  padding: 0;
  margin: 0;
  clear: both;
  box-shadow: 0 1px 0 rgba(24, 25, 26, 0.1);
  /* light underline for mobile devices */
  position: absolute;
  top: 0;
  z-index: 600;
  pointer-events:none;
}
#main-nav .trigger {
  line-height: 0;
  font-size: 20px;
  text-align: right;
  color: #0fa7d5;
  height: 80px;
  width: 80px;
  padding: 0;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 600;
  transition-duration: 0.3s;
  pointer-events: auto;
  transform:translate(-0.5em,0);
}
#main-nav .trigger .nav_icon {
  width: 60px;
  height: 31px;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  display: inline-block;
  position: relative;
  top: 25px;
  
  transition-duration: 0.3s;
}
#main-nav .trigger .nav_icon span {
  height: 1px;
  width: 100%;
  background: currentColor;
  display: block;
  position: absolute;
  left: 0;
  opacity: 1;
  transform: rotate(0deg);
  transition: top 0.3s ease-in-out 0s, transform 0.15s ease-in-out 0s;
}
#main-nav .trigger .nav_icon span:nth-child(1) {
  top: 0px;
}
#main-nav .trigger .nav_icon span:nth-child(2) {
  top: 33%;
}
#main-nav .trigger .nav_icon span:nth-child(3) {
  top: 66%;
}
#main-nav .trigger .nav_icon span:nth-child(4) {
  top: 100%;
}
#main-nav .trigger:hover {
  color: #0fa7d5;
}
#main-nav .trigger:hover .nav_icon span {
  /*background:@color1;*/
}
#main-nav .open .trigger {
  color: #0fa7d5;
}
#main-nav .open .trigger .nav_icon {
  height: 60px;
  top: 10px;
  border-left-color: currentcolor;
  border-right-color: currentcolor;
}
#main-nav .open .trigger .nav_icon span {
  transition: top 0.3s ease-in-out 0s, transform 0.3s ease-in-out 0.28s;
}
#main-nav .open .trigger .nav_icon span:nth-child(1) {
  top: 50%;
  transform: rotate(-45deg);
}
#main-nav .open .trigger .nav_icon span:nth-child(2) {
  top: 100%;
}
#main-nav .open .trigger .nav_icon span:nth-child(3) {
  top: 0;
}
#main-nav .open .trigger .nav_icon span:nth-child(4) {
  top: 50%;
  transform: rotate(45deg);
}
#main-nav ul {
  width: 100%;
  margin: 0;
  padding: 1em 0;
  z-index: 550;
  position: relative;
  background: #7d7d7d;
  pointer-events: auto;
}
#main-nav ul li {
  clear: both;
}
#main-nav ul li a[id] {
  
  transition-duration: 0.3s;
  line-height: 40px;
  font-size: 12px;
  color: #ffffff;
  width: auto;
  height: 40px;
  margin: 0;
  padding: 0;
  display: inline-block;
  vertical-align: top;
  position: relative;
}
#main-nav ul li.clicked > a[id],
#main-nav ul li.active > a[id],
#main-nav ul li:hover > a[id] {
  color: #18191a;
  text-decoration: none;
}
#main-nav ul ul {
  padding: 0;
  width: 100%;
  float: left;
  background: rgba(138, 138, 138, 0.9);
  display: inline;
}
#main-nav ul ul:before {
  display: none;
}
#main-nav ul ul li {
  width: 100%;
  float: left;
  background: none;
}
#main-nav ul ul li a {
  
  transition-duration: 0.3s;
  line-height: 40px;
  color: #ffffff;
  width: auto;
  height: 40px;
  margin: 0;
  background: none;
  border: none;
  position: relative;
  display: inline-block;
}
#main-nav ul ul li a:before {
  content: '';
  width: 0;
  height: 2px;
  margin: 0 auto;
  background: #fff;
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
  
  transition-duration: 0.3s;
  z-index: -1;
}
#main-nav ul li.active ul li a:hover,
#main-nav ul ul li a:hover,
#main-nav ul ul li a.active {
  text-decoration: none;
  color: #ffffff;
  margin-bottom: 0;
  border: none;
}
#main-nav ul li.active ul li a:hover:before,
#main-nav ul ul li a:hover:before,
#main-nav ul ul li a.active:before {
  width: 100%;
}
/*main-nav make li fly in all cool*/
#main-nav .collapsible.open > ul li {
  animation: flyinmobilenav 0.4s 1;
}
#main-nav .collapsible.open ul ul li {
  animation: none;
}
/*make flyouts expand on mobile*/
#main-nav ul ul li {
  height: 0;
  overflow: hidden;
  
  transition-duration: 0.3s;
  opacity: 0;
}
/*all about that open class*/
#main-nav .open ul {
  display: inline-block;
}
#main-nav .open ul .open ul {
  padding: 1em 0;
}
#main-nav .open ul .open ul li {
  height: 40px;
  opacity: 1;
}
/* Subnav */
#subnav-outer {
  position: relative;
  padding: 1em 0;
  background: #333333 url(../images/bg-subnav.jpg) no-repeat center top;
  background-size: cover;
  text-align: center;
  margin-top: 125px;
}
#subnav-outer:before {
  content: '';
  background: rgba(98,213,255,.61);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

body.meet-dr-kathy-elias #subnav-outer{ background-image: url(../images/banner/meet-dr-kathy-elias.jpg);}
body.what-sets-us-apart #subnav-outer{ background-image: url(../images/banner/what-sets-us-apart.jpg);}
body.patient-reviews #subnav-outer{ background-image: url(../images/banner/testimonials.jpg);}
body.before-and-after #subnav-outer{ background-image: url(../images/banner/before-and-after.jpg);}
body.orthodontic-faqs #subnav-outer{ background-image: url(../images/banner/orthodontic-faqs.jpg);}
body.how-to-choose-an-orthodontist #subnav-outer{ background-image: url(../images/banner/how-to-choose-an-orthodontist.jpg);}
body.common-orthodontic-issues #subnav-outer{ background-image: url(../images/banner/common-orthodontic-issues.jpg);}
body.emergency-care #subnav-outer{ background-image: url(../images/banner/emergency-care.jpg);}
body.for-all-ages #subnav-outer{ background-image: url(../images/banner/for-all-ages.jpg);}
body.two-phase-treatment #subnav-outer{ background-image: url(../images/banner/two-phase-treatment.jpg);}
body.orthodontic-retention #subnav-outer{ background-image: url(../images/banner/orthodontic-retention.jpg);}
body.types-of-braces #subnav-outer{ background-image: url(../images/banner/types-of-braces.jpg);}
body.early-orthodontic-treatment #subnav-outer{ background-image: url(../images/banner/early-orthodontic-treatment.jpg);}
body.invisalign-treatment #subnav-outer{ background-image: url(../images/banner/invisalign-treatment.jpg);}
body.invisalign-treatment-for-teens #subnav-outer{ background-image: url(../images/banner/invisalign-treatment-for-teens.jpg);}
body.itero-digital-impression-system #subnav-outer{ background-image: url(../images/banner/itero-digital-impression-system.jpg);}
body.diode-laser-treatment #subnav-outer{ background-image: url(../images/banner/diode-laser-treatment.jpg);}
body.tmj-tmd #subnav-outer{ background-image: url(../images/banner/tmj-tmd.jpg);}
body.surgical-orthodontics #subnav-outer{ background-image: url(../images/banner/surgical-orthodontics.jpg);}
body.dentofacial-orthopedics #subnav-outer{ background-image: url(../images/banner/dentofacial-orthopedics.jpg);}
body.patient-forms #subnav-outer{ background-image: url(../images/banner/contact-elias-orthodontics.jpg);}
body.appointment-request #subnav-outer{ background-image: url(../images/banner/appointment-request.jpg);}
body.refer-a-friend #subnav-outer{ background-image: url(../images/banner/refer-a-friend.jpg);}
body.site-map #subnav-outer{ background-image: url(../images/banner/site-map.jpg);}
body.newman-family-dental #subnav-outer{ background-image: url(../images/banner/newman-family-dental-dearborn.jpg);}
body.manduzzi-family-dentistry #subnav-outer{ background-image: url(../images/banner/pointe-dental-group-shelby-township.jpg);}
body.johnson-dental-excellence #subnav-outer{ background-image: url(../images/banner/pointe-dental-group-grosse-pointe.jpg);}


#subnav-outer .divider {
  display: none;
  margin: 0 3px;
  vertical-align: top;
  line-height: 1;
}
#subnav-outer p {
  font-weight: 300;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #ffffff;
  width: 100%;
  margin: 0 auto;
  font-size: 0.750em;
  line-height: 30px;
}
#subnav-outer a {
  
  transition-duration: 0.3s;
  color: #ffffff;
  text-decoration: none;
  display: inline-block;
  vertical-align: top;
  position: relative;
  line-height: 1em;
  margin: 0.2em 0.8em;
  white-space: nowrap;
}
#subnav-outer a.active,
#subnav-outer a:hover {
  color: #fff;
  text-decoration: underline;
}
/* Slideshow */
#slideshow {
  font-size: 2vw;
  text-align: center;
  background: #000000;
  position: relative;
  z-index: 402;
    margin-top: 125px;
}
#slideshow video {
  width: 100%;
  vertical-align: top;
  opacity: 0.6;
}
#slideshow .ss_overlay {
  width: 100%;
  display: block;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 0;
  z-index: 400;
}
#slideshow .ss_overlay svg {
  width: 25em;
  height: 25em;
}
.torso {
  position: relative;
  z-index: 402;
}
#bd {
  position: relative;
  z-index: 400;
  background: #f1f1f1 url(../images/bg-int2.jpg) no-repeat top center;
  background-size: cover;
}

#bd .container {
  width: 100%!important;
}
.home #bd {
  background: url(../images/pattern6.png) repeat center bottom;
  z-index: 2;
}
/* Content */
#content {
  width: 100%;
  display: inline-block;
  font-weight: 300;
  position: relative;
  /*background: #ffffff;*/
  padding: 3em 2em;
}
.home #content p{
  text-align: justify;
}
.mediaSlider {
  text-align: center;
}


.mediaSlider .cycle-slideshow {
  width: 100%;
  margin: 0.5em 0 1.5em;
  position: relative;
}
.mediaSlider .cycle-slideshow .cycle-slide {
  padding: 0 5%;
}
.mediaSlider .cycle-slideshow > div {
  font-size: 2.8em;
  color: #18191a;
  position: absolute;
  top: 50%;
  z-index: 900;
  transform: translate(0, -50%);
}
.mediaSlider .cycle-slideshow > div span {
  transition: transform 0.35s ease, opacity 0.35s ease;
}
.mediaSlider .cycle-slideshow > div.cycle-prev {
  text-align: left;
  left: 0;
}
.mediaSlider .cycle-slideshow > div.cycle-prev span {
  transform-origin: left center;
}
.mediaSlider .cycle-slideshow > div.cycle-next {
  text-align: right;
  direction: rtl;
  right: 0;
}
.mediaSlider .cycle-slideshow > div.cycle-next span {
  transform-origin: right center;
}
.mediaSlider .cycle-slideshow > div:hover {
  cursor: pointer;
}
.mediaSlider .cycle-slideshow > div:hover span {
  
  transform: scale(1.4);
  opacity: 0.68;
}

 .testimonials-fix {
      background: #c7c7c7 url(../images/bg-testimonials.jpg) no-repeat center top;
    padding: 50px 20px;
}
 .testimonials-fix .cycle-slideshow {
    max-width: 750px;
    margin: 0.5em auto 1.5em;
 }

.testimonials-fix .cycle-slideshow > div{
    bottom: 0;
    top: auto; 

    color: #109dcf;
     transform:none;
}
.testimonials-fix .cycle-slideshow .cycle-slide {
    padding: 0 5% 5%;
    min-height: 200px;
}

.testimonials-fix .cycle-slideshow > div{
    bottom: 0;
    top: auto; 
     transform:none;
}

.testimonials-fix .cycle-slideshow p{
    color: #109dcf;
}
.testimonials-fix .cycle-slideshow .cycle-slide strong{
      bottom: 0; 
    left: 0;
    right: 0;
    position: absolute;
}
.testimonials-fix .cycle-slideshow > div.cycle-prev {
    left: 20%;
}

.testimonials-fix .cycle-slideshow > div.cycle-next {
    right: 20%;
}

.dr-fix {
    /*background: #c7c7c7 url(../images/bg-testimonials.jpg) no-repeat center top;*/
    padding: 20px 20px;
    margin-bottom: 1.58em;
}



/* Callouts */
 .spot00 {
  text-align: center;
  width: 100%;
  position: relative;
  background: #ffffff;
  padding: 0;
}
 .spot00 .mod {
  
  transition-duration: 0.3s;
  display: block;
  width: 100%;
  vertical-align: top;
  font-size: 3vw;
  padding: 3em 1em;
}
 .spot00 .mod .decor {
  border-radius: 50%;
  display: block;
  margin: 0 auto 1.5em;
  width: 50%;
}
 .spot00 .mod h2 {
  font-weight: 400;
  text-transform: none;
  font-family: 'Montez', cursive;
  text-align: center;
  font-size: 5em;
  margin-bottom: 0.45em;
}
 .spot00 .mod .detail {
  display: none;
  font-weight: 300;
  letter-spacing: 0.05em;
  margin-left: auto;
  margin-right: auto;
  font-size: 1em;
  line-height: 2.500;
}
 .spot00 .mod .btn,
#content .vc-btn {
  text-align: center;
  border-radius: 2em;
  text-transform: uppercase;
  
  transition: ease-in-out all 0.4s;
  font-weight: 700;
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: 0.1em;
  background: #0fa7d5;
  color: #ffffff;
  font-size: 0.813em;
  /* width: 13.08em; */
  padding: 0 20px;
  height: 3.85em;
  line-height: 3.85;
  margin: 0.5em;
  border: solid 1px #0fa7d5;
}
 .spot00 .mod .btn:hover,
#content .vc-btn:hover {
  background: none;
  color: #0fa7d5;
}
 .spot00 .mod01 {
  padding: 3em 2em;
  background: url(../images/pattern6.png) repeat;
  background-size: cover;
}
 .spot00 .mod01 .decor {
  max-width: 488px;
}
 .spot00 .mod02 {
  background: url(../images/bg-callout02.jpg) no-repeat center center;
  background-size: cover;
}
 .spot00 .mod02 .decor {
  max-width: 600px;
}
 .spot00 .mod03 {
  background: url(../images/pattern6.png) repeat;
  background-size: cover;
}
 .spot00 .mod03 .decor {
  max-width: 600px;
}
.spotlight {
  text-align:center;
  width: 100%;
  position: relative;
}
.spotlight > div{
  width: 100%;
  position: relative;
}
.spotlight .info {
  position: relative;
}
.spot01 {
  text-align: left;
  padding: 3em 0 4.25em;
  background: url(../images/bg-spot01.jpg) no-repeat left bottom;
  background-size: cover;
}
.spot01 .container {
  width: 90%!important;
  max-width: 1200px;
}
.spot01 .topic,
.spot01 .topic h2,
.spot01 .topic h3{
  text-align: left;
}
.spot01 h2 {
  font-family: 'Montez', cursive;
  font-weight: 300;
  text-transform: none;
  color: #000000;
  font-size: 5.000em;
  font-size: 15vw;
  margin: 0 0 -2px;
}
.spot01 h3 {
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-weight: 400;
  color: #000000;
  font-size: 1.250em;
  margin: 0.7em 0 0;
}
.spot01 .links {
  display: block;
  margin: 1.5em auto;
}
.spot01 .links a {
  letter-spacing: 0.2em;
  
  transition: ease-in-out all 0.4s;
  display: inline-block;
  width: 100%;
  text-transform: uppercase;
  color: #000000;
}
.spot01 .links01 a {
  font-weight: 300;
  letter-spacing: 0.16em;
  text-shadow: 0 0 2px rgba(255, 255, 255, 0.35);
  font-size: 2.125em;
  line-height: 1.2;
  margin: 0.2em auto;
}
.spot01 .links01 a span {
  
  transition: ease-in-out all 0.4s;
  display: inline-block;
  position: relative;
}
.spot01 .links01 a span:after {
  
  transition: ease-in-out all 0.4s;
  content: '';
  background: #0fa7d5;
  width: 0;
  height: 2px;
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
}
.spot01 .links01 a:hover {
  color: #0fa7d5;
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.8);
}
.spot01 .links01 a:hover span:after {
  width: 100%;
}
.spot02 {
  padding: 3em 0 4.25em;
  background: #0fa7d5 url(../images/bg-spot02.jpg) no-repeat center center;
  background-size: cover;
}
.spot02 h2 {
  text-transform: none;
  text-align: center;
  font-family: 'Montez', cursive;
  color: #ffffff;
  font-size: 15vw;
}
.spot02 a {
  text-align: center;
  
  transition: ease-in-out all 0.4s;
  display: inline-block;
  margin: 1.5em 0.5em;
  max-width: 280px;
    vertical-align: top;
}
.spot02 a:hover .decor img {
  transform: scale(1.2);
}
.spot02 a:hover .btn svg rect {
  stroke-dasharray: 70, 210;
  stroke-dashoffset: 122;
}
.spot02 a .decor {
  /*display: none;*/
  margin-bottom: 1.3em;
  overflow: hidden;
    text-align: center;
}
.spot02 a .decor img {
  transition: ease-in-out all 1s;
  width: 50%;
  margin: auto;
}
.spot02 a h3 {
  text-align: center; 
  letter-spacing: 0.2em;
  font-weight: 700;
  color: #ffffff;
  font-size: 0.813em;
  font-size: 13px;
}
.spot02 a .detail {
  font-weight: 300;
  letter-spacing: 0.05em;
  color: #ffffff;
  font-size: 0.875em;
  line-height: 1;
}
.spot02 a .btn {
  letter-spacing: 0.1em;
  line-height: 38px;
  font-size: 10px;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  color: #ffffff;
  width: 127px;
  height: 38px;
  padding: 0;
  margin: 2em 0 0;
  display: inline-block;
  vertical-align: top;
  position: relative;
  
  transition: ease-in-out all 0.4s;
}
.spot02 a .btn svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.spot02 a .btn svg rect {
  stroke-width: 1.1;
  stroke-dasharray: 353, 0;
  stroke-dashoffset: 0;
  transition: all 600ms ease;
}

/* Testimonials */
 .spot03 {
  text-align: center;
  padding: 3.85em 0 4.5em;
  background: #c7c7c7 url(../images/bg-testimonials.jpg) no-repeat center top;
  position: relative;
}
 .spot03 h2 {
  line-height: 1;
  font-size: 3.6em;
  font-family: 'Montez', cursive;
  text-align: center;
  text-transform: none;
  color: #0fa7d5;
  margin: 0 auto 1.46em;
}
 .spot03 .controls {
  text-align: left;
  width: 96%;
  max-width: 17.5em;
  display: block;
  margin: 0 auto -6em;
  position: relative;
  z-index: 420;
}
 .spot03 .controls a {
  line-height: 1.741;
  font-size: 1.35em;
  text-align: center;
  color: #0fa7d5;
  width: 1.741em;
  height: 1.741em;
  border-radius: 50%;
  display: inline-block;
  vertical-align: top;
  position: relative;
  /*border:solid 1px @color2;*/
  
  transition-duration: 0.3s;
  z-index: 400;
}
 .spot03 .controls a#next {
  float: right;
}
 .spot03 .controls a:hover {
  color: #005771;
  
  transform: scale(1.2);
}
 .spot03 .controls a:after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;
  border: 1px solid currentcolor;
}
 .spot03 .cycle-slideshow {
  width: 96%;
  max-width: 36em;
  margin: 0 auto 3em;
  display: block;
}
 .spot03 .cycle-slide {
  color: #000;
  transition: color 0.35s;
  width: 100%;
  display: block;
  margin: 0 auto ;
}
 .spot03 .cycle-slide:hover {
  color: #0fa7d5;
}
 .spot03 .patient {
  width: 9.5em;
  border-radius: 50%;
  margin: 0 auto 1.35em;
  display: block;
}
 .spot03 .voluble {
  letter-spacing: 0.04em;
  line-height: 1.63;
  font-size: 0.8em;
  font-weight: 300;
  margin: 0 0 1em;
  display: block;
}
 .spot03 .cred {
  letter-spacing: 0.2em;
  line-height: 2;
  font-size: 0.65em;
  font-weight: 700;
  text-transform: uppercase;
  display: block;
}
 .spot03 .testimonials-pager {
  line-height: 0;
  width: 100%;
  display: block;
  position: relative;
  z-index: 400;
  margin-top: 1em;
}
 .spot03 .testimonials-pager span {
  font-size: 0;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  margin: 0 3px;
  background: #ffffff;
  display: inline-block;
  vertical-align: top;
  
  transition-duration: 0.3s;
}
 .spot03 .testimonials-pager span.cycle-pager-active {
  background: #0fa7d5;
}
 .spot03 .testimonials-pager span:hover {
  cursor: pointer;
  
  transform: scale(1.2);
  background: #0fa7d5;
}
 .spot03 .links {
  font-size: 20px;
  margin-top: 2.75em;
}
 .spot03 .links .btn {
  letter-spacing: 0.2em;
  line-height: 3.84;
  font-size: 0.65em;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  color: #0fa7d5;
  height: 3.84em;
  padding: 0 2em;
  margin: 5px;
  display: inline-block;
  vertical-align: top;
  position: relative;
  
  transition: ease-in-out all 0.4s;
}
 .spot03 .links .btn svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
 .spot03 .links .btn svg rect {
  stroke-width: 1.1;
  stroke-dasharray: 353, 0;
  stroke-dashoffset: 0;
  transition: all 600ms ease;
}
 .spot03 .links .btn.btn01:hover svg rect {
  stroke-dasharray: 100, 266;
  stroke-dashoffset: 176;
}
 .spot03 .links .btn.btn02:hover svg rect {
  stroke-dasharray: 115, 320;
  stroke-dashoffset: 200;
}
 .spot03 .links .btn.btn03:hover svg rect {
  stroke-dasharray: 136, 402;
  stroke-dashoffset: 232;
}


 .spot04 {
  padding: 3em 0 4.25em;
  background: url(../images/pattern12.png) repeat;
}
 .spot04 .info {
  display: inline-block;
  margin-bottom: 1.5em;
}
 .spot04 svg {
  width: 8.9375em;
  /* 143 */
  height: 2.5625em;
  /* 41 */
  display: inline-block;
  vertical-align: -1.25em;
  margin-right: 0.6em;
}
 .spot04 .handle {
  transition: ease-in-out all 0.4s;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-weight: 700;
  display: inline-block;
  vertical-align: middle;
  font-size: 1.063em;
  color: #000000;
}
 .spot04 .handle:hover {
  color: #0fa7d5;
}
 .spot04 .cycle-slideshow {
  width: 200%;
  max-width:1250px;
  margin: 0;
  background: none;
  -webkit-perspective: 1000;
          perspective: 1000;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  overflow:visible!important;
}

/* Footer */
#ft {
  background: #1293bb url(../images/ft-decor.png) no-repeat center bottom;
  background-size: 100%;
  text-align: center;
  width: 100%;
  padding: 0 0 3em;
  position: relative;
  display:flex;
  flex-wrap:wrap;
  justify-content: center;
  align-items: center;
}
#ft h2 {
  text-transform: none;
  text-align: center;
  font-family: 'Montez', cursive;
  color: #ffffff;
  font-size: 2.313em;
  width:100%;
  margin: 0;
  padding: 1em;
  line-height: 1;
  background: #0786ad;
}
#ft .map {
  display: none;
}
#ft .mod {
  display: inline-block;
  width: auto;
  width: 90%;
}
#ft .mod01 {
  display: inline-block;
  background: rgba(0, 0, 0, 0.8);
  padding: 2em min(3.9%, 20px);
  /* margin-top: 3em; */
}
#ft .mod01 .doctor {
  display: block;
  letter-spacing: 0.2em;
  
  transition: ease-in-out all 0.4s;
  font-weight: 700;
  text-transform: uppercase;
  color: #ffffff;
  font-size: 18px;
  line-height: 1.15;
}
#ft .mod01 .doctor .cred {
  letter-spacing: 0.2em;
  line-height: 1.21;
  font-size: 14px;
  display: block;
}
#ft .mod01 h3 {
  letter-spacing: 0.2em;
  text-align: center;
  display: block;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  color: #ffffff;
  font-size: 13px;
  margin-top: 2.1em;
  margin-bottom: 2em;
  line-height: 1.4;
}
#ft .mod01 h4 {
  text-align: center;
  display: block;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  color: #ffffff;
  font-size: 13px;
  line-height: 1.3;
  margin: 0;
}

#ft .mod01 .bookonline {
  .ib; 
  color:#0fa7d5; 
  
  transition-duration: 0.3s;
  &:hover { color:#fff; }
}

#ft .mod01 .loc {
  display: block;
  line-height: 1;
  margin: 0 0 14px;
}
#ft .mod01 .addy {
  
  transition-duration: 0.3s;
  text-transform: uppercase;
  text-decoration: none;
  display: inline-block;
  color: #ffffff;
  font-size: 13px;
  line-height: 1.615;
}
#ft .mod01 .phone {
  
  transition-duration: 0.3s;
  font-weight: 300;
  text-decoration: none;
  display: inline-block;
  color: #ffffff;
  font-size: 13px;
}
#ft .mod01 a:hover {
  color: #0fa7d5;
}

#ft .mod02 {
  font-size: 20px;
  margin: 2em auto;
}
#ft .mod02 h2 {
  font-family: 'Montez', cursive;
  text-transform: none;
  text-align: center;
  color: #ffffff;
  line-height: 1.191;
  font-size: 2.350em;
  background: #000;
  margin: 0;
  line-height: 1.667em;
}
#ft .mod02 form {
  margin-left: auto;
  margin-right: auto;
  display: block;
}
#ft .mod02 input[type="text"],
#ft .mod02 textarea {
  color: #000000;
  text-transform: uppercase;
  width: 100%;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin: 0 auto;
  background: #ffffff;
  border: none;
  border-bottom: 1px solid #22a8d4;
  transition-duration: 0.3s;
  font-size: 0.5em;
  position: relative;
}
#ft .mod02 input[type="text"]::-webkit-input-placeholder,
#ft .mod02 textarea::-webkit-input-placeholder {
  color: #000000;
}
#ft .mod02 input[type="text"]:-moz-placeholder,
#ft .mod02 textarea:-moz-placeholder {
  color: #000000;
}
#ft .mod02 input[type="text"]::-moz-placeholder,
#ft .mod02 textarea::-moz-placeholder {
  color: #000000;
}
#ft .mod02 input[type="text"]:-ms-input-placeholder,
#ft .mod02 textarea:-ms-input-placeholder {
  color: #000000;
}
#ft .mod02 input[type="text"]:focus,
#ft .mod02 textarea:focus {
  box-shadow: none;
  background: #000000;
  color: #ffffff;
  border-color: #ffffff;
}
#ft .mod02 input[type="text"]:focus::-webkit-input-placeholder,
#ft .mod02 textarea:focus::-webkit-input-placeholder {
  color: #ffffff;
}
#ft .mod02 input[type="text"]:focus:-moz-placeholder,
#ft .mod02 textarea:focus:-moz-placeholder {
  color: #ffffff;
}
#ft .mod02 input[type="text"]:focus::-moz-placeholder,
#ft .mod02 textarea:focus::-moz-placeholder {
  color: #ffffff;
}
#ft .mod02 input[type="text"]:focus:-ms-input-placeholder,
#ft .mod02 textarea:focus:-ms-input-placeholder {
  color: #ffffff;
}
#ft .mod02 input[type="text"] {
  height: 50px;
}

#ft .mod02 textarea {
  padding-top: 20px;
  height: 120px!important;
}
#ft .mod02 .widget-btn {
  border-radius: 2em;
  text-transform: uppercase;
  
  transition: ease-in-out all 0.4s;
  font-weight: 700;
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: 0.1em;
  background: #0fa7d5;
  color: #ffffff;
  font-size: 0.650em;
  width: 13.08em;
  /* 171 */
  height: 3.85em;
  /* 51 */
  line-height: 3.85;
  margin: 2em auto 0;
  border: solid 1px #0fa7d5;
  padding: 0!important;
}
#ft .mod02 .widget-btn:hover {
  background: none;
  color: #0fa7d5;
}
#ft .custom-select {
  position: relative;
}
#ft .custom-select select {
  display: none;
}
#ft .select-selected {
  background-color: #fff;
}
#ft .select-selected:after {
  content: "";
  width: 0;
  height: 0;
  border: 8px solid transparent;
  border-bottom: 15px solid #2c3030;
  border-top: 0 solid #2c3030;
  position: absolute;
  top: 16px;
  right: 30px;
  transition: border-top-width 0.3s ease 0s, border-bottom-width 0.3s ease 0.3s;
}
#ft .select-selected.select-arrow-active:after {
  border-bottom-width: 0;
  border-top-width: 15px;
  transition: border-top-width 0.3s ease 0.3s, border-bottom-width 0.3s ease 0s;
}
#ft .select-items {
  text-align: left;
  width: 100%;
  height: 95px;
  padding: 25px 0 0 30px;
  background-color: #43b5d8;
  position: relative;
  /*position: absolute;top: 100%;left: 0;*/
  z-index: 99;
  transition: height 0.3s ease, padding-top 0.3s ease;
}
#ft .select-items div {
  line-height: 16px;
  font-size: 10px;
  text-transform: uppercase;
  color: #000;
  width: 100%;
  cursor: pointer;
}
#ft .select-items div:hover {
  color: #fff;
}
#ft .select-selected {
  letter-spacing: 0.2em;
  line-height: 53px;
  font-size: 10px;
  text-align: left;
  font-weight: 700;
  text-transform: uppercase;
  color: #000;
  height: 53px;
  width: 100%;
  max-width: 100%;
  border-radius: 0;
  margin: 0;
  padding: 0 0 0 20px;
  background-color: #fff;
  /*background-image:url(../images/icons/formIcon.svg);
	background-repeat:no-repeat;
	background-position:right 1em top 50%;*/
  border: none;
  border-bottom: 1px solid #22a8d4;
}
#ft .select-hide {
  height: 0;
  padding-top: 0;
  visibility: hidden;
}
#ft .full textarea {
  padding: 20px 0 0 20px!important;
  min-height: 0;
  border: none;
}
#ft input[type="text"],
#ft input[type="date"],
#ft input[type="email"],
#ft input[type="search"],
#ft input[type="tel"],
#ft input[type="file"] {
  padding: 0 0 0 20px!important;
}
#ft select[multiple] option:checked {
  color: #fff!important;
  background: #42b4d7 linear-gradient(0deg #42b4d7 0%, #42b4d7 100%);
}

.consent {
 color:#fff;
 width:100%;
 padding:1.1em 3%;
 background-color:#000;
 border-top:1px solid #fff;
 display:flex;
 flex-direction:column;
 justify-content: center;
 position:relative;
 gap:0.75em;
}
@media only screen and (min-width: 768px) { 
  .content-text .consent{
    max-width:calc(70% - 10px);
  }
} 
@media only screen and (min-width: 1300px) { 
  .content-text .consent{
    max-width:684px;
  }
} 

.consent legend{
  line-height:1;
  font-family: 'Montez', cursive; 
  padding:0;
  float:left;/* somehow only way to fix spacing issues */
}
.consent label{
  margin:0;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:9px;
}

@media only screen and (min-width: 768px) {
 .consent label{
   justify-content:flex-start;
 } 
}
 
form.full .consent label input,
.consent label input{ 
  width:14px!important;
  flex:0; 
}

.consent label a{ color:#fff;text-decoration:underline; }
.consent label a:focus,
.consent label a:hover{ color:#0fa7d5;text-decoration:none; }
.consent label span{ margin:0; }

.consent label span,
#consent-disclosure{
 font-size:12px;
}
.consent p{
  line-height:1.5;
  margin:0;
}

#links {
  background: #0fa7d5 url(../images/bg-spot02.jpg) no-repeat center center;
  clear: both;
  width: 100%;
  color: #ffffff;
  text-align: center;
  position: relative;
  padding: 4.375em 0 3em;
  font-size: 3vw;
  z-index: 1000;
  /*global override*/
}
#links .util {
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  font-size: 0.688em;
}
#links .util .divider {
  margin: 0 0.4375em;
}
#links a {
  
  transition-duration: 0.3s;
  color: #ffffff;
  float: none;
  text-decoration: none;
  transition-duration: 0.5s;
  display: inline-block;
  vertical-align: top;
}
#links a:hover {
  color: #86dcf7;
}
#links .logo {
  display: block;
  margin-bottom: 1.5em;
}
#links .logo svg {
  width: 23.0625em;
  /* 369 */
  height: 11.25em;
  /* 180 */
}
#links .logo svg path {
  fill: #ffffff;
}
#links .social-media img,
#links .social-media .ib {
  vertical-align: top;
}
#links .social-media {
  text-align: center;
  height: auto;
  width: 100%;
  display: inline-block;
  vertical-align: top;
  padding: 0;
  margin: 0;
  position: relative;
}
#links .social-media a {
  color: #ffffff;
  font-size: 0.813em;
  margin: 0 0.5em;
  position: relative;
  display: block;
  float: left;
  
  transition-duration: 0.3s;
}
#links .social-media a:hover {
  color: #86dcf7;
  
  transform: scale(1.4);
}
#links .sesame-link .sesame-icon {
  width: 19px;
  height: 16px;
  margin-right: 0.6em;
  display: inline-block;
  vertical-align: middle;
}
#links .sesame-link .sesame-icon path {
  
  transition-duration: 0.3s;
}
#links .sesame-link .sesame-icon path.top {
  fill: #fff;
}
#links .sesame-link .sesame-icon path.bottom {
  fill: #fff;
}
#links .sesame-link:hover .sesame-icon path {
  fill: currentColor;
}
#links .back-to-top {
  letter-spacing: 0.2em;
  line-height: 3.85;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  color: #fff;
  width: 6.9em;
  height: 3.85em;
  margin: 1.9em auto 2.7em;
  display: block;
  position: relative;
}
#links .back-to-top:hover {
  color: #0fa7d5;
}
#links .back-to-top:hover svg rect {
  stroke-dasharray: 44, 200;
  stroke-dashoffset: 127;
}
#links .back-to-top svg {
  font-size: 20px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
#links .back-to-top svg rect {
  stroke-width: 1.1;
  stroke-dasharray: 238, 0;
  stroke-dashoffset: 0;
  transition: all 600ms ease;
}
/* Form Buttons */
form button {
  background: #0fa7d5;
  border: 1px solid #0fa7d5;
  color: #ffffff;
  text-transform: uppercase;
  padding: 10px 30px !important;
  margin:24px 0;
  text-align: center;
  font-size: 0.9285714285714286em;
  display: inline-block;
  vertical-align: top;
  
  transition-duration: 0.5s;
}
form button:hover {
  color: #ffffff;
  border-color: #0c82a5;
  background: #0c82a5;
}
.success {
  text-transform: none;
  font-weight: 400;
  color: #fff;
  padding:2.1em 3%;
  float: left;
  background: #0fa7d5;
}
/* BLOG FORM */
.stButton {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.st_plusone_large {
  top: 9px;
  position: relative;
}
.share-article-links {
  text-align: center;
}
.share-text {
  color: #005771;
  font-size: 1.5em;
  margin: 0 0 0.8em;
  font-weight: 400;
  text-align: center;
}
form#blog_search {
  background: #005771;
  color: #0fa7d5;
  margin: 10px 0 0;
  padding: 15px 10px;
  position: relative;
  text-align: center;
  width: 100%;
}
form#blog_search label {
  color: #ffffff;
  text-transform: uppercase;
  font-size: 17px;
  margin: 0px;
  text-align: center;
  margin: 0 0 -2px;
}
form#blog_search input {
  background: #cccccc;
  color: #0fa7d5;
  width: 178px;
  margin: 6px auto;
  transition: all 0.15s linear;
}
form#blog_search input:hover {
  background: #ffffff;
}
form#blog_search button {
  
  transition-duration: 0.3s;
  display: block;
  background: #0fa7d5;
  color: #ffffff;
  font-size: 12px!important;
  text-transform: uppercase;
  padding: 5px 12px!important;
  transition: all 0.25s linear;
  margin: 5px auto 0;
  border: none;
}
form#blog_search button:active,
form#blog_search button:hover {
  background: #00080b;
}
/* end blog css */
/* Generic Classes */
.ie8 nav.horizontal ul li a {
  max-width: none;
}
.shift {
  position: relative;
}
.columns {
  display: inline;
  float: left;
}
.genie {
  opacity: 1.0;
  filter: alpha(opacity=100);
}
.genie:hover {
  opacity: 0.4;
  filter: alpha(opacity=40);
}
.video-sleeve {
  margin-bottom: 1.85em;
}
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
}
.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
input[type="text"],
input[type="email"],
input[type="search"],
input[type="tel"],
input[type="file"],
textarea {
  width: 80%;
  
  transition-duration: 0.3s;
}
input[type="text"]::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="search"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="file"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #18191a;
}
input[type="text"]:-moz-placeholder,
input[type="email"]:-moz-placeholder,
input[type="search"]:-moz-placeholder,
input[type="tel"]:-moz-placeholder,
input[type="file"]:-moz-placeholder,
textarea:-moz-placeholder {
  color: #18191a;
}
input[type="text"]::-moz-placeholder,
input[type="email"]::-moz-placeholder,
input[type="search"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="file"]::-moz-placeholder,
textarea::-moz-placeholder {
  color: #18191a;
}
input[type="text"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="search"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="file"]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #18191a;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="file"]:focus,
textarea:focus {
  box-shadow: none;
  background: rgba(0, 0, 0, 0.1);
  color: #18191a;
}
input[type="text"]:focus::-webkit-input-placeholder,
input[type="email"]:focus::-webkit-input-placeholder,
input[type="search"]:focus::-webkit-input-placeholder,
input[type="tel"]:focus::-webkit-input-placeholder,
input[type="file"]:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
  color: #18191a;
}
input[type="text"]:focus:-moz-placeholder,
input[type="email"]:focus:-moz-placeholder,
input[type="search"]:focus:-moz-placeholder,
input[type="tel"]:focus:-moz-placeholder,
input[type="file"]:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
  color: #18191a;
}
input[type="text"]:focus::-moz-placeholder,
input[type="email"]:focus::-moz-placeholder,
input[type="search"]:focus::-moz-placeholder,
input[type="tel"]:focus::-moz-placeholder,
input[type="file"]:focus::-moz-placeholder,
textarea:focus::-moz-placeholder {
  color: #18191a;
}
input[type="text"]:focus:-ms-input-placeholder,
input[type="email"]:focus:-ms-input-placeholder,
input[type="search"]:focus:-ms-input-placeholder,
input[type="tel"]:focus:-ms-input-placeholder,
input[type="file"]:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
  color: #18191a;
}
body.office-tour .video-sleeve {
  margin: 0 auto;
}
#invisalign-before-after {
  max-width: 464px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
#invisalign-before-after ul {
  margin: 0;
}
#invisalign-before-after p.caption {
  position: relative;
}
#pro-pack #invisalign-footer {
  margin-left: auto;
  margin-right: auto;
}
#damon-before-after {
  max-width: 539px;
  width: 100%;
}
.test-cred {
  display: block;
  font-weight: bold;
  font-size: smaller;
}
.flash {
  margin: 20px 0;
}
/* hide double hr */
body.types-of-appliances div.hr,
body.ortho-dictionary div.hr {
  display: none;
}
#hide-stock {
  display: none;
}
.meet-the-doctor #hide-stock,
body[class^='meet-dr-'] #hide-stock,
body[class^='meet-doctor-'] #hide-stock {
  display: block;
  text-align: center;
  margin: 1em auto;
}
/* Office Tour */
ul.slideshow {
  margin: 0 auto !important;
}
form p {
  height: auto;
}
/*other forms*/
input[type="text"],
input[type="email"],
input[type="search"],
input[type="tel"],
input[type="file"] {
  height: 34px;
}
/* hidden field styles */
.hidden-option {
  display: none;
}
p.office-hours {
  margin-bottom: 0;
}
.location-page,
table.office-hours {
  margin-bottom: 1.8em;
}
/*office-location*/
.map-directions .embed-container,
.address-and-hours .embed-container,
body[class*="office"] .embed-container,
body[class*="location"] .embed-container {
  width: auto;
  margin-top: 2em;
  padding-bottom: 55%;
  /*default 55%*/
}

.sizing-fix{
    padding: 20px 17%; 
}
.color-block {
  background: #0fa7d5;
    color: #ffffff;
    padding: 20px 10px ;
    margin: 0 0 0.7em;
}
.color-block h2{
  margin: 0;
  color: #fff;
}
.dr-wrapper h2{
  text-transform: unset;

}
.dr-wrapper {
  position: relative;
}
.dr-wrapper .align-fix{
    padding: 0;
}
.dr-wrapper .quote-mark {
  font-size: 48px;
  position: absolute;
  top: 0;
  left: -20px;
  opacity: .2;
  font-family: serif;
}

.vMaster {
  left:auto !important;
  right:  0;
  border-radius:  8px 0 0  8px !important;
}
.vTrigger{
    border-radius: 0 !important;
}
  .min .vControl {
    border-radius: 8px 0px 0 0 !important;
}
.vMaster {
  display: none;
}
#main-nav > .collapsible > ul {
  margin-top: 45px; /* clear socials */
}
/* ===============================================
Small Tablet/Large Phone Stylings (Optional)
Supports 480px to 767px
------
Useful for making minor adjustments between
awkward sizes.
=============================================== */
@media only screen and (min-width: 480px) and (max-width: 767px) {

   .spot00 .mod {
    font-size: 2.5vw;
  }
  .spot01 h2 {
    font-size: 13vw;
  }
}


@media only screen and (min-width: 640px) {
  h1 {
  margin-bottom: 1.5em;
  }

  #subnav-outer {
  	padding: 3em 0;
  }
}

/* ===============================================
Tablet / Desktop Stylings
Supports 768px and up
=============================================== */
@media only screen and (min-width: 768px) {
  .vMaster {
    display: block;
  }
  body.sitemap #content .width1 {
    width: 50%;
    display: inline;
    float: left;
  }
  body[class^='meet-dr-'] #hide-stock,
  #hide-stock {
    display: block;
    margin: 0 0 1em 0;
  }
  /* blanket content sidebar hide and slimmer-centered-content-area */
  /* in order to accommodate for better legibility */
  .layout-full-width {
    /* count out 90 characters per line to declare width */
  }
  .layout-full-width #bd .container {
    width: 80%!important ;
    /*max-width:640px;*/
    /*800px*/
  }
  .layout-full-width .content-text {
    width: 100%;
    max-width: none;
  }
  .layout-full-width .sidebar {
    display: none;
  }
  /* blanket content width 100% and sidebar hide */
  .layout-full-width[class^='before-'] #bd .container,
  .layout-full-width.patient-photos #bd .container,
  .layout-full-width.smile-gallery #bd .container,
  .layout-full-width[class='office-tour'] #bd .container,
  .layout-full-width.around-our-office #bd .container,
  .layout-full-width.tour-our-office #bd .container,
  .layout-full-width.sitemap #bd .container,
  .layout-full-width.brace-painter #bd .container {
    width: 96%!important;
    /*max-width:50em;*/
  }
  .layout-full-width[class^='before-'] .content-text,
  .layout-full-width.patient-photos .content-text,
  .layout-full-width.smile-gallery .content-text,
  .layout-full-width[class='office-tour'] .content-text,
  .layout-full-width.around-our-office .content-text,
  .layout-full-width.tour-our-office .content-text,
  .layout-full-width.sitemap .content-text,
  .layout-full-width.brace-painter .content-text {
    width: 100%;
    max-width: none;
    /*default mw::none*/
  }
  .layout-full-width[class^='before-'] .sidebar,
  .layout-full-width.patient-photos .sidebar,
  .layout-full-width.smile-gallery .sidebar,
  .layout-full-width[class='office-tour'] .sidebar,
  .layout-full-width.around-our-office .sidebar,
  .layout-full-width.tour-our-office .sidebar,
  .layout-full-width.sitemap .sidebar,
  .layout-full-width.brace-painter .sidebar {
    display: none;
  }
  .sitemap #bd .container {
    width: 96%!important;
    max-width: 50em;
  }
  .sitemap #content {
    width: 100%;
    max-width: none;
    /*default mw::none*/
  }
  .sitemap #sidebar {
    display: none;
  }
  .sitemap .content-text {
    width: 100%;
  }
  .content-text {
    /*width: 60.5%;*/
    /*display: inline-block;*/
    vertical-align: top;
    /*float: left;*/
  }
  .content-text p {
    text-align: justify;
  }
  .home .content-text {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    float: none;
    max-width: 600px;
    padding: 40px;
    margin-top: -100px;
  }
  .home .content-text p {
    text-align: left;
  }
  h1 {
 	 margin-bottom: 1.5em;
  }
  body.meet-our-team .content-text .img-right {
    display: block;
  }
  .video-sleeve {
    width: 100%;
  }
  .video-sleeve-60 {
    width: 100%;
    max-width: 60%;
  }
  #video-opalescence {
    float: right;
    margin: 0 0 1em 1em;
  }
  /*keeps videos from getting too hooj*/
  .embed-container {
    width: 100%;
  }
  .embed-container.ratio16x9,
  .embed-container.docvid {
    padding-bottom: 46%;
  }
  /* Custom content */
  .before-and-after .slideshow-nav-paginated ol {
    display: block;
    padding: 0 3.5em;
  }
  .staff {
    float: right;
    width: 100%;
    margin: 0 0 1em 1em;
  }
  
  .success {
		width:calc(66% - 12px);
		margin-top:10px;
	}
	table.office-hours { max-width:50%; }
	
  /*------------ Style Edit Region ------------*/
  .sidebar {
    width: 30%;
    float: right;
    clear: right;
    display: inline;
    text-align: right;
    margin: 10px 0 1em 1em;
  }
  .team-photo {
    float: left;
    margin: 0 20px 20px 0;
  }
  #sticky {
    min-height: 130px;
  }
  #sticky .social-media {
    margin: 0;
  }
  #hd .info {
    width: auto;
    display: inline-block; 
    margin-right: 20px;
  }
  #hd .info a {
    line-height: 76px;
    margin: 0 0.7em;
  }
  #hd .info .ico03::before {
    top: 70%;
  }
  #hd .logo {
    margin: 0 0 0 -2.25em;
    position: absolute;
    top: 8px;
    left: 50%;
    margin-left: -2.7em;
  }
  #slideshow {
    font-size: 1.5vw;
    margin-top: 156px;
  }
   .spot00 .decor {
    display: inline-block;
    vertical-align: middle;
    margin: 0;
  }
   .spot00 .mod {
    font-size: inherit;
    margin: 0;
    background-size: auto;
  }
   .spot00 .mod .detail {
    display: block;
    max-width: 560px;
    margin-bottom: 2.85em;
  }
   .spot00 .info {
    transition-duration: 1s;
    display: inline-block;
    vertical-align: middle;
    max-width: 560px;
  }
  .spot01 h2 {
    font-size: 5em;
  }
  .spot01 h3 {
    padding-left: 7.1em;
  }
  .spot02 h2 {
    font-size: 10vw;
  }
  .spot02 a {
    width: 17%;
    max-width: none;
  }
  .spot02 a .decor img {
    width: 100%;
  }
  #links {
    font-size: inherit;
  }
  #subnav-outer {
    margin-top: 156px;
  }

  .dr-wrapper h2 {
    font-size: 34px;
    text-align: center;
    margin-bottom: 20px;
  }
  .dr-wrapper .align-fix {
    text-align: center;
    margin-top: 65px;
  }
  .dr-wrapper .attribute {
    font-size: 24px;
    font-style: italic;
  }
  .dr-wrapper .quote-mark {
    top: 20px;
    left: -20px;
    opacity: .1;
    font-size: 160px;
  }

  #main-nav > .collapsible > ul {
    margin-top: 76px; /* clear socials */
  }

}
/* ===============================================
Desktop Only Stylings
Supports 1024px and up
=============================================== */
@media only screen and (min-width: 1024px) {
  #fc-calculator .form-row .fc-col3 {
    max-width: 80px;
  }
  body {
    font-size: 16px;
    line-height: 40px;
    background: #f5f5f5;
  }
  #sticky .social-media {
    border-radius: 11px 0 0 11px;
    width: 51px;
    position: absolute;
    top: 125px;
    right: 0;
    margin: 0;
    padding: 9px 0;
  }
  #sticky .social-media a {
    display: block;
    float: none;
    line-height: 30px;
    margin: 0;
  }
  h1 {
    font-size: 4.500em;
  }
  .home h1 {
    text-align: left;
    margin-bottom: 0.4em;
  }
  /* ==================================================================
	main-nav
=================================================================== */
  /*deskBurger*/
  #main-nav .collapsible .trigger {
    display: block;
    box-shadow: none;
  }
  nav.horizontal ul li {
    width: 100%;
    float: none;
  }
  nav .collapsible ul {
    display: none;
  }
  nav .open > ul {
    display: block;
  }
  #subnav-outer .divider {
    display: inline-block;
    vertical-align: top;
  }
  #subnav-outer a {
    margin: 0;
  }
  /* Slider */
  #slideshow {
    font-size: 1vw;
    width: 100%;
    margin-top: 0;
    top: 0;
  }
  .torso {
    position: relative;
    z-index: 402;
    background: #f5f5f5;
  }
  #bd .container {
    max-width: 1200px;
  }
  #bd #content {
    max-width: 1200px;
    padding: 104px 100px;
    position: relative;
  }
  body.home #bd #content {
    padding: 0;
  }
  #bd h1 {
    font-size: 80px!important;
  }
  #bd h2 {
    font-size: 30px!important;
  }
  #bd h3 {
    font-size: 22px!important;
    font-weight: 600;
  }
  #bd h4 {
    font-size: 18px!important;
  }
  #bd h5,
  #bd h6 {
    font-size: 18px!important;
  }
  #bd .dr-wrapper h2 {
    font-size: 38px!important;
  }
  #bd .dr-wrapper .align-fix {
    max-width: 470px;
    margin: 18.5% auto 0;
    position: relative;
  }
  .home #bd .container {
    max-width: 800px;
    background: none;
  }
  .home #bd #content {
    margin-top: 0;
  }
  .home #bd #content .content-text {
    font-size: 16px;
    line-height: 40px;
    padding: 104px 100px;
    margin-top: -60px;
    max-width: 100%;
  }

   .spot00 .mod .btn,
  #content .vc-btn {
    font-size: 0.613em;
  }

  .dr-fix {
    width: 100vw;
    left: calc(-1 * (100vw - 100%) / 2);
    position: relative;
    padding: 40px 20px 0;
  }
  .dr-fix .span4 {
    text-align: right;
  }
  .dr-fix .dr-container {
    margin: 0 auto;
    max-width: 1000px;
    width: 82%;
  }
  body.meet-dr-kathy-elias #bd #content {
    padding: 0 100px 104px ;
  }
   .spot00 .mod {
    padding: 3em 0;
    position: relative;
  }
   .spot00 .mod .decor {
    display: inline-block;
    width: 40.7%;
  }
   .spot00 .mod h2 {
    text-align: left;
  }
   .spot00 .mod .info {
    text-align: left;
    width: 46.7%;
    margin-left: 5%;
  }
   .spot00 .mod .btn {
    margin: 0 10px 10px 0;
  }
   .spot00 .mod01 {
    padding: 3em 0;
  }
   .spot00 .mod02 {
    direction: rtl;
  }
   .spot00 .mod02 .info {
    direction: ltr;
  }
  .spot02 {
    font-size: 1vw;
  }
  .spot02 h2 {
    font-size: 80px;
    margin-bottom: 14px;
  }
  .spot02 a {
    /*width: 18.6em;*/
    vertical-align: top;
    width: 18%;
}
  .spot02 a .decor {
    display: block;
  }
  .spot02 a h3 {
    min-height: 30px;
    margin: 0;
  }
  .spot02 a .topic {
    line-height: 1;
    font-size: 14px;
  }
  .spot02 a .btn {
    margin-top: 1.8em;
  }
   .spot03 {
    height: 761px;
    padding: 76px 0 70px;
    font-size: 20px;
  }
   .spot03 .patient {
    margin: 2.2em auto 1.2em;
  }
   .spot03 .controls a {
    position: absolute;
    top: 57%;
  }
   .spot03 .controls a#prev {
    left: 0;
  }
   .spot03 .controls a#next {
    right: 0;
  }
  
   .spot04 {
    padding: 8.9em 0 9em;
  }
   .spot04 .info {
    width: 1000px;
    text-align: left;
  }
  #links .logo {
    margin-bottom: 0.6em;
  }
}
/* ===============================================
Desktop Only Excluding large tablets
Supports 1300px and up
=============================================== */
@media only screen and (min-width: 1300px) {

  #bd .content-text {
    font-size: 16px;
    line-height: 40px;
  }
  .home #bd {
    padding-bottom: 4em;
  }
  .home #bd #content {
    display: block;
  }
  .home #bd #content .content-text {
    font-size: 18px;
    line-height: 40px;
    padding: 89px 100px 40px;
  }
   .spot00 .mod h2 {
    padding-left: 20px;
  }
   .spot00 .mod01 {
    padding: 3em 0;
    height: 693px;
    background: url(../images/bg-callout01.jpg) no-repeat center bottom;
  }
   .spot00 .mod01 .decor {
    border-radius: 0;
    width: auto;
    margin: 0;
    position: absolute;
    top: 77px;
    left: 50%;
    margin-left: -694px;
  }
   .spot00 .mod01 .info {
    position: absolute;
    top: 163px;
    left: 50%;
    margin-left: 40px;
  }
   .spot00 .mod02 {
    padding: 0;
  }
   .spot00 .mod02 .decor {
    margin-top: 93px;
    margin-bottom: -75px;
    position: relative;
    z-index: 401;
  }
   .spot00 .mod02 .info {
    margin: 43px 51px 0 85px;
  }
   .spot00 .mod03 {
    padding: 0;
    height: 641px;
    z-index: 400;
  }
   .spot00 .mod03 h2 {
    padding: 0;
  }
   .spot00 .mod03 .decor {
    margin: 93px 48px -75px -89px;
  }
   .spot00 .mod03 .info {
    margin: 83px 0 0 0;
  }
   .spot00 .mod .btn,
  #content .vc-btn {
    font-size: 0.813em;
  }
  .spot01 {
    height: 628px;
    background-size: auto;
    background-position: center bottom;
    padding: 0;
  }
  .spot01 .container,
  .spot01 .info {
    height: 100%;
  }
  .spot01 .topic {
    display: inline-block;
    margin: 103px 0 0;
  }
  .spot01 .links01 {
    position: absolute;
    top: 369px;
    left: 50%;
    margin-left: -181px;
  }
  .spot01 .links01 a {
    margin: 0;
    width: auto;
    display: inline-block;
    line-height: 48px;
    height: 48px;
  }
  .spot01 .links01 a:nth-child(1) {
    margin-left: 0;
    margin-right: 142px;
  }
  .spot01 .links01 a:nth-child(2) {
    font-size: 38px;
    line-height: 58px;
    margin-right: 133px;
    vertical-align: 2px;
  }
  .spot01 .links01 a:nth-child(3) {
    font-size: 40px;
    line-height: 66px;
    margin-right: 9px;
    vertical-align: 4px;
  }
   /* .spot04 .cycle-slideshow {
    width: 200%;
    margin: 0;
  } */
  #ft {
    height: 854px;
    background-size: auto;
  }
  #ft h2 {
    height: 2.595em;
    line-height: 2.595;
    padding: 0;
  }
  #ft .mod01 {
    margin-top: 2em;
    width: 875px;
    margin-right: 3em;
    background: none;
    /* vertical-align: top; */
    position: relative;
  }
  #ft .mod01 .info {
    text-align: left;
    width: 235px;
    position: absolute;
    top: 227px;
    left: 127px; 
  }
  #ft .mod01 h3,
  #ft .mod01 h4 {
    text-align: left;
  }
  #ft .mod01 .addy:before {
    content: '';
    width: 50px;
    height: 50px;
    position: absolute;
  }
  #ft .mod01 .addy.dear:before {
    top: 22em;
    left: 21.4em;
  }
  #ft .mod01 .addy.shel:before {
    top: -7.2em;
    left: 36.7em;
  }
  #ft .mod01 .addy.grpo:before {
    top: 12.4em;
    left: 41.5em;
  }
  #ft .map {
    display: block;
  }
  #ft .mod02 {
    /* margin: 143px 0 0; */ 
    margin:0;
    max-width: 300px;
    display: inline-block;
    /* vertical-align: top; */
  }
  #ft .mod02 h2 {
    font-size: 50px;
    height: 100px;
    line-height: 110px;
  }
  .vMaster{
    /* top: 260px !important; */
    margin-bottom:-4.08em!important;
    bottom:40%!important; 
  }


  #sticky {
    width: 100%;
    height: 80px;
    min-height: 0;
    padding: 0;
    position: fixed;
    top: 0;
    left: 0;
  }
  body:not(.home) h1 {
    margin-bottom: 2.5em;
  }
  #hd {
    display: block;
    padding: 0;
    z-index: 3000;
  }
  #hd .logo {
    z-index: 99999;
  }
  #hd .info {
    width: auto;
    display: flex;
    gap:1.4em;
    position: absolute;
    top: 0;
    right: 40px;
    margin: 0;
  }
  #hd .info a {
    margin: 0;
    font-size: 29px;
  }
  #hd .info .icon{
    display: none;
  }
  #sticky .social-media{
    display: block;
  }
  /*un-deskburger*/
  #main-nav .collapsible .trigger {
    display: none;
  }
  #main-nav > .collapsible > ul {
    margin-top: 0; /* clear previous margin */
  }
  nav.horizontal ul li {
    width: auto;
    float: none;
  }
  nav .collapsible ul {
    display: inline-block;
  }
  #main-nav {
    height: 80px;
    width: 100%;
    margin: 0;
    position: relative;
    top: auto;
    z-index: 2900;
    box-shadow: none;
  }
  #main-nav .container {
    background: none;
    padding: 0;
    /*max-width:none;*/
  }
  #main-nav div.collapsible {
    margin: 0 auto;
  }
  #main-nav ul {
    width: 1000px;
    height: 80px;
    width: auto;
    /*<def-nofloat*/
    padding: 0;
    margin: 0 0 0 -15px;
    border: none;
    background: none;
    position: static;
  }
  #main-nav ul:before {
    display: none;
  }
  #main-nav ul li {
    height: 100%;
    float: none;
    clear: none;
    margin: 0 33px 0 0;
    /*adjust margin for spacing*/
    background: none;
    position: relative;
    vertical-align: top;
  }
  #main-nav ul li.contact,
  #main-nav ul li.contact-us {
    margin-right: 0;
    padding-right: 0;
  }
  #main-nav ul li.home {
    display: none;
  }
  #main-nav ul li.about-orthodontics {
    margin-right: 175px;
  }
  #main-nav ul li a[id] {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.11em;
    line-height: 78px;
    text-align: center;
    color: #18191a;
    text-decoration: none;
    height: 100%;
    width: auto;
    padding: 0;
    margin: 0;
    position: relative;
    z-index: 3000;
    transition-duration: 0.3s;
  }
  #main-nav ul li.active > a[id],
  #main-nav ul li:hover > a[id] {
    color: #0fa7d5;
    text-decoration: none;
  }
  #main-nav ul ul {
    width: auto;
    height: auto;
    padding: 25px 0;
    margin: 0;
    z-index: 2800;
    position: absolute;
    display: none;
  }
  #main-nav ul ul li {
    float: left;
    margin: 0;
    padding: 0 30px;
    width: 100%;
    height: 25px;
    /*default 25*/
    background: none;
    opacity: 1;
  }
  #main-nav ul ul li a {
    font-weight: 500;
    line-height: 21px;
    text-align: left;
    white-space: nowrap;
    height: 21px;
    width: auto;
    padding: 0;
    margin: 0;
    float: left;
    box-shadow: none;
    border-right: none;
    position: relative;
    transition-duration: 0;
  }
  /*reverses text-align for flyout on last nav item*/
  #main-nav ul li.contact-us ul li a,
  #main-nav ul li.contact ul li a {
    text-align: right;
    float: right;
  }
  /* ===============================================
				special drop locations 
	=============================================== */
  #main-nav ul li:hover ul {
    left: 0;
    /*top:37px;*/
    display: block;
  }
  #main-nav ul li.contact-us:hover ul,
  #main-nav ul li.contact:hover ul {
    left: auto;
    right: 0;
    margin: 0;
  }
  #slideshow {
    padding-bottom: 56vw;
  }
  #slideshow .welcomeVid {
    position: fixed;
    top: 0;
    left: 0;
  }
  #subnav-outer {
    text-align: left;
    min-height: 377px;
    padding: 200px 0 20px;
    background-size: auto;
    margin-top: 80px;
  }
  #subnav-outer p {
    line-height: 15px;
    width: 80%;
    margin: 0;
  }
  #subnav-outer h1 {
    text-align: left;
    margin-bottom: 0.5em;
  }
  /* END */
}

@media only screen and (min-width: 1440px) {

  #hd .info {
    right: 70px;
  }
  #hd .info a {
    margin: 0;
  }


}
/* ===============================================
Desktop Only Large screen only
Supports 2000px and up
=============================================== */
@media only screen and (min-width: 2000px) {
  
  .spot02 a h3 {
    min-height: auto;
  }
  
  #subnav-outer,
   .spot00 .mod02,
   .spot03,
  #ft,
  #links {
    background-size: 100% auto;
  }
}

/* ===============================================
  .screenreader 
  a11y support for descriptive text on vaguely worded buttons
  https://gomakethings.com/hidden-content-for-better-a11y/#hidden-labels
=============================================== */
.screenreader {
  white-space:nowrap;
  width:1px;
  height:1px;
  margin:-1px;
  padding:0;
  border:0;
  position:absolute;
  overflow:hidden;
  clip:rect(0 0 0 0);
}

/*custom animations*/
/* 
flyinmobilenav
*/

@keyframes flyinmobilenav {
  from {
    transform:translate(100%,0);
    opacity: 0;
    pointer-events: none;
  }
  to {
    transform:translate(0,0);
    opacity: 1;
    pointer-events: auto;
  }
}
