.nav-trigger { display: none; }

body { padding: 0; background: #f9f9f9!important; overflow-x: hidden!important; }
body .main-section p, h3, hr { max-width: 800px; }
body .main-section p,
body .main-section .row div { font-size: 17px; line-height: 1.7em; }
body .main-section a { font-size: 17px; line-height: 1.7em; text-decoration: underline; }
body .main-section h1 a, body .main-section h2 a, body .main-section h3 a, body .main-section h4 a, body .main-section h5 a, body .main-section h6 a { font-size: unset; line-height: unset; }

.hide.in { display: block!important; width: 75%!important; margin-left: inherit!important; bottom: inherit!important; left: 50%; transform: translateX(-50%); }

.alert {
  z-index: 1000;
  position: relative;
}

.alert .close {
  right: 0px;
}

/*.collapse { display: block; }*/
.container { background-color: transparent ; padding: 0 3em!important; }
.container-fluid { padding: 0!important; margin: 0!important; }

.above-services-container { padding-top: 80px; padding-bottom: 80px; background-color: #ffffff; }

.blockWidth75 { display: inline-block; vertical-align: top; width: 75%; }
.blockWidth50 { display: inline-block; vertical-align: top; width: 50%; }
.blockWidth33 { display: inline-block; vertical-align: top; width: 33.333%; }
.blockWidth25 { display: inline-block; vertical-align: top; width: 25%; }

.editable-image {
  width: 100%;
  max-width: 100%;
}

.nav-fixed { height: auto; overflow: visible; }
nav .nav-fixed .enabled { float: right!important; }

.navbar { min-height: 80px; margin-bottom: 0px; }
nav .hamburger-menu { display: block; }
nav .hamburger-menu .logo { max-width: 20%; float: left; z-index: 200; margin-left: 1.35em; }
nav .hamburger-menu .logo img { max-height: 70px; max-width: initial; }
/*nav .hamburger-menu .logo img { position: absolute }*/
/*nav .hamburger-menu .logo img { max-height: 48px; }*/
/*nav .nav-collapse .enabled { float: right!important; }*/
/*nav .nav-collapse .collapsing { height: 0px !important; }*/

#sitePreview nav .hamburger-menu .logo { cursor: pointer; }

nav .nav-collapse.collapse { overflow: auto !important; max-height: 70vh; }
nav .nav-collapse .nav { top: 2px; }
nav { position: sticky!important; top: 0; width: 100%; padding: 15px 1em; box-sizing: border-box; z-index: 2000; box-shadow: 0px 2px 8px rgba(0,0,0,.15); }
nav a { text-transform: inherit!important; }
nav ul li ul { width: 200px!important; }
nav ul li ul li { width: 100%!important; text-align: left; padding: 0!important; }
nav ul li ul li a { padding: .75em 1em!important; }
nav .utility-nav { width: 120%; max-height: 28px; min-height: 21px; text-align: right; position: relative; top: -23px; right: -2em; background: #f9f7f5; padding: 0 2em 0 0; }
nav .utility-nav ul { float: right!important; }
nav .utility-nav ul li a { font-size: .8em; line-height: 8px; padding: 8px 15px 10px!important; }
nav .utility-nav ul li.utility-call { display: flex; font-size: 12px!important; line-height: 25px; text-transform: uppercase; }
nav .utility-nav ul li.utility-call:hover { background: transparent!important; }
nav .utility-nav ul li.utility-call a { font-size: 12px!important; line-height: 8px; font-weight: 400; text-transform: capitalize!important; padding: 8px 9px 10px 15px!important; }
nav .utility-nav ul li.utility-call a:hover { text-decoration: underline; }
nav .utility-nav ul li.utility-call a.address { padding: 8px 15px 10px 8px!important; }
nav .utility-nav ul li.utility-call a.address br { content: " "; margin-right: 5px; }
nav .utility-nav ul li.utility-call span { position: relative; opacity: .5; left: 7px; top: -3px; border: 1px solid #000; border-radius: 30px; width: 28px; height: 28px; padding: 2px 0 0 4px; transform: scale(.7); margin: 0 -5px 0 -3px; }
.nav a { font-weight: 500; }
nav h2 {margin: 10px 0 15px;}

.utility-nav-gray, #sitePreview .utility-nav-gray {
  height: 35px;
  background-color: #c6c4c4!important;
  color: #636262;
  text-align: right;
  padding-top: 7px;
}

.utility-nav-gray a {
  color: #636262!important;
}

#sitePreview .utility-nav-gray {
  cursor: pointer;
}

#sitePreview .utility-nav-gray a {
  color: #636262!important;
}

span.utility-nav-text {
  padding-left: 20px;
  padding-right: 10px;
}

div.utility-nav-block {
  display: inline-block;
}

#sitePreview .editable-image {
  cursor: pointer;
}

#modal-logo #logo-content {
  text-align: center;
}

#modal-logo #logo-content a {
  text-decoration: none;
  color: #333333;
}

#modal-add-button #button-content {
  text-align: center;
}

.tox-dialog__body-content {
  padding: 30px 50px 30px 50px !important;
}

header { position: relative; background-position: 70% 80%!important; background-size: 115%!important; min-height: 50vh!important; opacity: 0!important; }
.home header { min-height: 87vh!important; }
header.show { min-height: 50vh!important; }
header.kburns, header.show { background-size: cover!important; background-position: center!important; opacity: 1!important; }
header.kburns {
  -webkit-transition: background-position 3.5s ease-in-out, background-size 4.5s ease-in-out, opacity 1.8s ease-in-out;
  -moz-transition: background-position 3.5s ease-in-out, background-size 4.5s ease-in-out, opacity 1.8s ease-in-out;
  -o-transition: background-position 3.5s ease-in-out, background-size 4.5s ease-in-out, opacity 1.8s ease-in-out;
  transition: background-position 3.5s ease-in-out, background-size 4.5s ease-in-out, opacity 1.8s ease-in-out;
}
header.show { opacity: 1!important;  }
header div.title { padding: 0 0 0 1em!important; }
header .title-wrapper { transform: translateY(-50%); position: absolute!important; top: 50%; left: 5%; z-index: 50; color: inherit; }
header .title-wrapper h1 { font-size: 40px; line-height: 1.5em; padding-top: 1em; }
header .title-wrapper h2 { font-size: 30px; line-height: 1.5em; padding-top: 1em; }
header .title-wrapper h3 { font-size: 22px; line-height: 1.5em; padding-top: 1em; }
header .title-wrapper .small-caps { font-size: 15px; line-height: 1.5em; text-transform: uppercase; }
header .title-wrapper .leaderboard-title { margin: 0; padding: 1.2em 0 .4em; font-weight: 600; }
.front-end header .title-wrapper .leaderboard-text * { margin: 0; padding: 0 0 2em; }
.front-end header .title-wrapper .leaderboard-text h2 { padding-bottom: 0.6em; }
header .gradient { display: none; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 40; opacity: .85;
  background: linear-gradient(90deg,#f9f7f5 32%,
  hsla(30,25%,97%,.52) 52%,
  hsla(30,25%,97%,.5) 53%,
  hsla(30,25%,97%,.18) 66%,
  hsla(30,25%,97%,.15) 67%,
  hsla(30,25%,97%,0) 79%,
  hsla(30,25%,97%,0));
}
.home header .gradient { display: block; }
header.show { display: block!important; }
.home header { display: block!important; }
.home header a { color: unset !important; color: #333333;}

/*#sitePreview header { display: none!important; }*/
#sitePreview .home header { display: block!important; margin-top: 0px; }
#sitePreview header.show { display: block!important; }
#sitePreview .home header a { color: unset !important; color: #333333; }

.secondary-header-container {}

#content { float: left; width: 100%; }
.main-section { padding: 6em 2em 8em 2em!important; background: #edeff1; }
.secondary-section { padding: 1em 12em 1em 7em!important; background: #edeff1!important; }

.front-end nav #social-links { display: none!important; }
.front-end .utility-footer #social-links { float: none; margin-top: 1.2em; }
.front-end .utility-footer #social-links a { margin: 0 .45em; }
.front-end .modal.fade.in { display: block!important; z-index: 999999; width: 350px; left: 35%; top: 15%; height: 600px; overflow-y: scroll; padding: 20px !important; font-size: initial !important; line-height: initial !important; position: sticky !important;}
.front-end .modal-header { padding: 15px !important; }
.front-end .modal-header h3 { padding: initial !important; }
.front-end .modal-body { padding: 15px !important; }
.front-end .modal-body .complaint_form_field label { min-width: 100%; }

.modal-backdrop { display: none; }
#lightboxOverlay { display:none!important; }
#lightboxOverlay.show { display: block!important; width: 100vw; height: 100vh; position: fixed!important; opacity: 0; }

footer { background: #edeff1; }
footer * { font-size: .97em; line-height: 2em; }
footer h3 { font-size: 30px!important; font-weight: 200; padding: 2em 0 0; }
footer a { font-size: 17px!important; text-transform: capitalize!important; }
footer a:hover { background-color: transparent!important; text-decoration: underline!important; }
footer .small-caps * { font-size: 17px!important; text-transform: capitalize; }
/*footer ul li li { display: none; }*/
footer .footer-quick-links a { padding: 0; }
footer .footer-quick-links #social-links { display: none; }
footer .footer-office-hours h3,
footer .footer-office-hours hr,
footer .footer-office-hours h3,
footer .footer-office-hours hr,
footer .footer-office-hours .small-caps br { display: none; }
footer .small-caps ul { list-style: none; margin-left: 0; }
footer .footer-office-hours strong { float: left; width: 100%; }
footer .copyright a { text-align: center; padding: 3em 0 2em; margin-left: -3.8em; font-size: 12px!important;}
footer .utility-footer { background: inherit; padding: 5em 0 2.8em!important; }
footer .utility-footer * { text-align: center; }
footer .utility-footer .make_appointment a { background: #DDD; color: #FFF; }
footer .map-footer { display: inline-block; margin-bottom: -6px!important; width: 100%; background: inherit; }
footer .map-footer div { padding: 0; margin: 0; }
footer .map-footer .row { float: left; display: inline-block; border-top: 1em solid #fff; }
footer .map-footer .row.first { border: none; }
footer .map-footer .row.reverse { display: flex; flex-direction: row-reverse; }
footer .map-footer .row.reverse * { text-align: right; }
footer .map-footer .map-wrapper { width: 100%; height: 350px; margin-bottom:5px; }
footer .map-footer .location-info { width: 100%; height: 350px; border-left: 1px solid #ccc; color: #fff; padding: 1em 2em; margin-bottom:5px; }
footer .map-footer .location-info p { font-size: 17px!important; color: #333333 !important; }
footer .map-footer .location-info h2 { font-size: 2em!important; line-height: 1.1em; color: #333333 !important; }
footer .map-footer hr { height: 3px; width: 100%; max-width: 100%; background: black; border: 0; margin: 0; padding: 0; }

.map-container {
  position: relative;
}

.map-address-container {
  position: absolute;
  right: 60px;
  width: 250px;
  height: 350px;
  background-color: white;
  z-index: 100;
  opacity: 0.6;
  padding: 10px!important;
}

.map-address-container h2 {
  font-size: 20px;
}

.map-address-container p {
  font-size: 16px;
}

.form_button {
  display: inline-block;
  text-align: center;
  font-size: 15px !important;
  font-weight: 400 !important;
  padding: 12px 25px !important;
  text-decoration: none !important;
  line-height: 1.5em;
  font-family: Helvetica Neue,Helvetica,Arial,sans-serif !important;
  background: #DDDDDD;
  color: #333333!important;
  text-indent: 0px;
  margin-bottom: 10px;
}

/* Site Preview resets */
body.template-page { margin-top: 0; }
#sitePreview { background: #fff!important; }
#sitePreview .container { background-color: inherit; }
#sitePreview .navbar { min-height: 80px; }
#sitePreview nav { background-color: #fff!important; position: relative!important; z-index: 1000!important }
#sitePreview header, #modal-image header, #modal-edit-image header { background-size: cover!important; background-position: center!important; opacity: 1!important; }
#sitePreview .secondary-header, #modal-image .secondary-header, #modal-edit-image .secondary-header { top: 0; cursor: pointer; }
#sitePreview .secondary-header-container {  margin-top: 0px; padding-bottom: 60px; }
#sitePreview .logo { top: 26px; }
/*#sitePreview .logo a { pointer-events: none; }*/
#sitePreview .outer-nav { border: 1px solid transparent; min-height: 30px; }
#sitePreview .outer-nav:hover { border: 1px solid #999999; }
#sitePreview .outer-nav-wrapper { width: 75%; float: right; }
#sitePreview .footer-quick-links .outer-nav-wrapper { float: unset !important; }
#sitePreview .main-section { padding: 0em 12em 8em 7em!important; margin-top: -2em; }
#sitePreview .title-wrapper .leaderboard-title { margin: 0; padding: .3em; font-weight: 600; font-size: 28px; }
#sitePreview .title-wrapper .leaderboard-text .innerblock { min-height: 100px; border-color: #aaa!important; }
#sitePreview .title-wrapper .leaderboard-text .innerblock .social-links-wrapper { min-height: 100px; }
#sitePreview .title-wrapper .leaderboard-text .innerblock { margin: 0; padding: .3em; }
#sitePreview .title-wrapper .leaderboard-text .innerblock h1 { padding-bottom: 0.6em;  }
#sitePreview .title-wrapper .leaderboard-text .innerblock h2 { padding-bottom: 0.6em;  }
#sitePreview .title-wrapper .leaderboard-text .innerblock h3 { padding-bottom: 0.6em;  }
#sitePreview .title-wrapper .leaderboard-text .innerblock .small-caps { font-size: 15px; padding-bottom: 0.6em; text-transform: uppercase;  }
#sitePreview #content { margin-top: 0; }
#sitePreview .home #content { margin-top: 0; }
#sitePreview nav #social-box { display: none; }
#sitePreview #social-box .help-video-link { display: none; }
#sitePreview footer ul.nav li,
#sitePreview footer ul.nav li .navInnerblock a { border: none!important; }
#sitePreview footer #social-box,
#sitePreview footer #social-links { float: none; }
#sitePreview footer #social-box a { margin: 0 .5em; }
#sitePreview #content .container { background-color: #fff; }
#sitePreview .main-section .blockdata { margin-top: 4em; }
#sitePreview footer { background: #edeff1; display: inline; position: initial; }
#sitePreview .make_appointment a { background: #DDD; color: #FFF; }
#sitePreview .make_appointment_bottom a { background: #4c7073 !important; color: #FFFFFF !important; }
#modal-body-edit .outer-nav-wrapper .nav li:hover > .buttons { display: block!important; }
#sitePreview .outer-nav-wrapper .nav li ul { display: none; }
#sitePreview .outer-nav-wrapper .nav li:hover ul { display: block; padding: 1em; width: auto; }
#sitePreview .outer-nav-wrapper .nav li:hover ul li { margin-right: 0px; margin-bottom: .6em; }
/*#sitePreview .social-links-wrapper { min-height: 40px; cursor: pointer; text-align: center!important; }*/
#sitePreview .blockdata { background: inherit; }

/*#sitePreview .above-services-container { margin-bottom: 50px; }*/

.social-links-wrapper { min-height: 40px; cursor: pointer; text-align: center!important; }

.open>.dropdown-menu { z-index: 9999; }

#services-espots { width: 100%; padding-left: 2em; display: block; margin-top: 0px; padding-top: 15px; }
#sitePreview #services-espots { display: none; }
#sitePreview .home #services-espots { display:block; }
#services-espots .service-box { min-width: 210px; }
#services-espots .container { background: none!important; }
#services-espots .container h2 { text-align: center; padding-bottom: 1em; font-family: "pragmatica-web",sans-serif; font-weight: 200; }
#services-espots .container .services-espot { display: flex; flex-wrap: wrap; flex-direction: column; }
#services-espots .container .services-espot { padding: 3em; height: 200px; min-width: 200px; border-radius: 6px; background-color: #4b7073; margin-bottom: 1.5em; text-align: left; -webkit-transition: all .35s ease-in-out; transition: all .35s ease-in-out; font-size: 11px;}
#services-espots .container .services-espot:hover { transform: scale(1.025); }
#services-espots .container .services-espot p { word-break: break-word; color: #fff; line-height: 1.1em; text-shadow: 0px 0px 2px rgba(0,0,100,.75); font-size: 1.9em!important; font-weight: 500; position: relative; pointer-events: none; }
#sitePreview .container .services-espot { cursor: grab; }
.services-espot { cursor: pointer; }

#services-espots .container a:hover {
  text-decoration: none;
}

#services-espots .remove-service-btn {
  position: relative;
  align-self: flex-end;
  top: -30px;
  left: 30px;
  cursor: pointer;
}

a#jump-to { display: none; position: absolute; left: 50%; bottom: 20px; margin-left: -30px; width: 60px; height: 80px; z-index: 50; }
a#jump-to .arrow { bottom: 0; left: 50%; position: absolute; margin-left: -20px; }
a#jump-to .arrow img { transform: scale(.7); }
.home a#jump-to { display: block; }

a#jump-to .bounce {
  -webkit-animation-name: bounce;
  -moz-animation-name: bounce;
  -o-animation-name: bounce;
  animation-name: bounce;
}
a#jump-to .animated {
  -webkit-animation-fill-mode:both;
  -moz-animation-fill-mode:both;
  -ms-animation-fill-mode:both;
  -o-animation-fill-mode:both;

  animation-iteration-count: infinite;
  -moz-animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;

  animation-fill-mode:both;
  -webkit-animation-duration:2s;
  -moz-animation-duration:2s;
  -ms-animation-duration:2s;
  -o-animation-duration:2s;
  animation-duration:2s;
}

@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {-webkit-transform: translateY(0);}	40% {-webkit-transform: translateY(-30px);}
  60% {-webkit-transform: translateY(-15px);}
}

@-moz-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {-moz-transform: translateY(0);}
  40% {-moz-transform: translateY(-30px);}
  60% {-moz-transform: translateY(-15px);}
}

@-o-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {-o-transform: translateY(0);}
  40% {-o-transform: translateY(-30px);}
  60% {-o-transform: translateY(-15px);}
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {transform: translateY(0);}
  40% {transform: translateY(-30px);}
  60% {transform: translateY(-15px);}
}

hr {
  border-top: 2px solid #000000;
}

.navbar .btn-navbar {
  background-image: none;
  background-color: transparent !important;
  border-color: transparent;
  box-shadow: none;
  text-shadow: none;
}

.navbar .btn-navbar .btn {
  background-color: transparent;
  box-shadow: none;
}

.navbar .btn-navbar .icon-bar {
  background-color: transparent;
  box-shadow: 0 10px 0 rgba(0, 0, 0, 1) !important;
}

  .nav-trigger span { content: ''; position: relative; display: block; width: 26px; height: 2px; margin-bottom: 6px; background: #3e3c3a; transition: .3s ease; }

  /*  Nav Trigger Open  */

  .nav-trigger.open span:nth-of-type(2) { width: 0; opacity: 0; }
  .nav-trigger.open span:nth-of-type(1) { transform: rotate(-45deg); top: 9px; }
  .nav-trigger.open span:nth-of-type(3) { transform: rotate(45deg); top: -7px; }







.faq {
  max-width: 900px;
  margin: 50px auto 50px auto;
  -webkit-box-shadow: 0px 0px 20px 2px rgba(0,0,0,0.1);
  -moz-box-shadow: 0px 0px 20px 2px rgba(0,0,0,0.1);
  box-shadow: 0px 0px 20px 2px rgba(0,0,0,0.1);
  padding: 0 40px;
  background-color: white;
}

.faq-module {
  border-bottom: 1px solid rgba(0,0,0,0.2);

  &:last-child {
     border: none;
   }
}

.faq-header {
  position: relative;
  height: 100px;
  cursor: pointer;


}

.faq-header h4 {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  max-width: 80%;
  margin: 0;
  color: #6A6867;
}

.faq-content-inner {
  padding: 15px 0;
}

.faq-button {
  position: absolute;
  top: 50%;
  right: 0;
  width: 15px;
  height: 15px;
  transform: translateY(-50%);
  transition: all 0.5s;
}

.active-faq-button {
  transform: translateY(-50%) rotate(45deg);
}

.bar {
  position: absolute;
  top: 50%;
  width: 100%;
  height: 3px;
  background-color: #6A6867;
}

.vert {
  transform: rotate(90deg);
}




@media all and (max-width: 690px) {
  .utility-nav-gray, #sitePreview .utility-nav-gray {
    min-height: 80px;
    height: auto;
    padding: 5px;
  }

  .blockWidth75, .blockWidth50, .blockWidth33, .blockWidth25 {
    display: block;
    width: unset;
  }

  span.utility-nav-text {
    padding-left: unset;
    padding-right: 5px;
  }

  nav .hamburger-menu .logo {
    max-width: 75%!important;
  }

  nav .hamburger-menu .logo img {
    max-width: 100%;
  }

  .navbar {
    top: 80px !important;
  }

  .nav a { font-weight: normal; }

  nav ul li ul {
    position: relative;
    width: 100%!important;
  }

  nav ul li ul li {
    width: 100%!important;
    text-align: center;
    padding: 0!important;
  }

  header.kburns {
    background-position: 70% 80%!important;
  }

  header .gradient {
    opacity: .8;
    background: #ffffff;
  }

  .front-end .modal.fade.in {
    width: 100%;
    top: auto;
    bottom: 0;
  }

  #services-espots {
    padding-left: unset;
  }

  #services-espots .container .services-espot {
    font-size: 9px;
  }

  .above-services-container .row {
    width: unset!important;
  }

  .faq-module {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

@media all and (max-width: 768px) {
  header .title-wrapper {
    max-width: 90%!important;
    position: relative!important;
    transform: none;
    padding-top: 25%;
  }
}
