/* Generated by tools/extract-layout.js + tools/convert.js */

/* BEGIN:internal-base */
main.content-wrap.on-canvas,
  body:not(.home) main.content-wrap.on-canvas,
  body:not(.home) .inner-page-wide,
  body:not(.home) .inner-page-wide > .inner-pages-container {
    background: #fff !important;
  }

  body:not(.home) .inner-page-wide .full-vw,
  body:not(.home) .inner-page-wide .full-vw .inner-pages-container {
    background-color: transparent !important;
  }

  body:not(.home) .inner-page-wide .inner-pages-container {
    color: #111 !important;
  }

  body:not(.home) .inner-page-wide .inner-pages-container p,
  body:not(.home) .inner-page-wide .inner-pages-container li,
  body:not(.home) .inner-page-wide .inner-pages-container h1,
  body:not(.home) .inner-page-wide .inner-pages-container h2,
  body:not(.home) .inner-page-wide .inner-pages-container h3,
  body:not(.home) .inner-page-wide .inner-pages-container h4,
  body:not(.home) .inner-page-wide .inner-pages-container span,
  body:not(.home) .inner-page-wide .inner-pages-container strong {
    color: inherit !important;
  }

  body:not(.home) .inner-page-wide .inner-pages-container a:not(.button):not(.inverse-btn) {
    color: #222 !important;
    text-decoration: underline;
    text-underline-offset: 0.12em;
  }

  body:not(.home) .inner-page-wide .inner-pages-container a:not(.button):not(.inverse-btn):hover {
    color: #000 !important;
  }

  body:not(.home) .inner-page-wide .inner-pages-container .black-box,
  body:not(.home) .inner-page-wide .inner-pages-container .who-need-black-bg,
  body:not(.home) .inner-page-wide .inner-pages-container .inner-page-bg {
    color: #fff !important;
  }

  body:not(.home) .inner-page-wide .inner-pages-container .black-box p,
  body:not(.home) .inner-page-wide .inner-pages-container .black-box li,
  body:not(.home) .inner-page-wide .inner-pages-container .black-box h1,
  body:not(.home) .inner-page-wide .inner-pages-container .black-box h2,
  body:not(.home) .inner-page-wide .inner-pages-container .black-box h3,
  body:not(.home) .inner-page-wide .inner-pages-container .black-box h4,
  body:not(.home) .inner-page-wide .inner-pages-container .black-box span,
  body:not(.home) .inner-page-wide .inner-pages-container .black-box strong,
  body:not(.home) .inner-page-wide .inner-pages-container .who-need-black-bg p,
  body:not(.home) .inner-page-wide .inner-pages-container .who-need-black-bg li,
  body:not(.home) .inner-page-wide .inner-pages-container .who-need-black-bg h1,
  body:not(.home) .inner-page-wide .inner-pages-container .who-need-black-bg h2,
  body:not(.home) .inner-page-wide .inner-pages-container .who-need-black-bg h3,
  body:not(.home) .inner-page-wide .inner-pages-container .who-need-black-bg h4,
  body:not(.home) .inner-page-wide .inner-pages-container .who-need-black-bg span,
  body:not(.home) .inner-page-wide .inner-pages-container .who-need-black-bg strong,
  body:not(.home) .inner-page-wide .inner-pages-container .inner-page-bg p,
  body:not(.home) .inner-page-wide .inner-pages-container .inner-page-bg li,
  body:not(.home) .inner-page-wide .inner-pages-container .inner-page-bg h1,
  body:not(.home) .inner-page-wide .inner-pages-container .inner-page-bg h2,
  body:not(.home) .inner-page-wide .inner-pages-container .inner-page-bg h3,
  body:not(.home) .inner-page-wide .inner-pages-container .inner-page-bg h4,
  body:not(.home) .inner-page-wide .inner-pages-container .inner-page-bg span,
  body:not(.home) .inner-page-wide .inner-pages-container .inner-page-bg strong {
    color: #fff !important;
  }

  body:not(.home) .inner-page-wide .inner-pages-container .black-box a:not(.button):not(.inverse-btn),
  body:not(.home) .inner-page-wide .inner-pages-container .who-need-black-bg a:not(.button):not(.inverse-btn),
  body:not(.home) .inner-page-wide .inner-pages-container .inner-page-bg a:not(.button):not(.inverse-btn) {
    color: #fff !important;
  }

  .fixed-nav {
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    min-height: 100vh !important;
    min-width: 100vw !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .fixed-nav.astro-open {
    display: block !important;
  }

  .fixed-nav .nav-wrapper {
    position: relative !important;
    height: 100vh !important;
    min-height: 100vh !important;
    left: 0 !important;
    right: auto !important;
    width: 100vw !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
  }

  .fixed-nav .nav-wrapper .main-links {
    height: 100vh !important;
    min-height: 100vh !important;
    overflow-y: auto !important;
    left: 0 !important;
  }

  .fixed-nav .nav-wrapper .sub-links {
    height: 100vh !important;
    min-height: 100vh !important;
    overflow-y: auto !important;
  }

  body:not(.home) .inner-page-wide .full-vw {
    background: center top no-repeat url("/go/images/smile-g.webp") !important;
    background-size: cover !important;
    width: 100vw !important;
    left: auto !important;
    right: auto !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
  }

  body:not(.home) .inner-page-wide .book-btn:hover {
    background: #000 !important;
    border-color: #fff !important;
    color: #fff !important;
  }

  .bg-section-mobile {
    background-image: url('/go/images/bg-section.webp') !important;
    background-repeat: no-repeat !important;
    background-attachment: scroll !important;
    background-position: right center !important;
    background-size: auto 100% !important;
  }

  .bg-section-mobile.bg-section-fixed {
    position: relative;
  }

  .bg-section-mobile.bg-section-fixed::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(30, 41, 59, 0.75);
    pointer-events: none;
  }

  .bg-section-mobile.bg-section-fixed + * {
    position: relative;
    z-index: 1;
  }

  @media (min-width: 768px) {
    .bg-section-fixed {
      background-position: center !important;
      background-size: cover !important;
      background-attachment: scroll !important;
    }
  }

  @media (min-width: 1024px) {
    .bg-section-fixed {
      background-position: center !important;
      background-size: cover !important;
      background-attachment: fixed !important;
    }
  }

  @supports (-webkit-touch-callout: none) {
    .bg-section-fixed {
      background-attachment: scroll !important;
    }
  }

  #main-header {
    transition: padding 280ms ease, background-color 280ms ease, box-shadow 280ms ease;
  }

  #header-logo {
    transition: height 280ms ease, max-height 280ms ease, transform 280ms ease;
  }

  #main-header.header--scrolled {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  #main-header.header--scrolled #btn-location {
    color: #d4af37 !important;
    border-color: transparent !important;
    box-shadow: none !important;
    outline: none !important;
  }

  #main-header .logo .logo--scrolled,
  #header-logo.logo--scrolled {
    height: 2.75rem !important;
  }

  @media (min-width: 768px) {
    #main-header .logo .logo--scrolled,
    #header-logo.logo--scrolled {
      height: 3.25rem !important;
    }
  }

  @media (min-width: 1024px) {
    #main-header .logo .logo--scrolled,
    #header-logo.logo--scrolled {
      height: 3.5rem !important;
    }
  }

  .footer-logo-link {
    display: inline-flex !important;
    align-items: center;
    justify-content: flex-start;
    flex: 0 0 auto;
    flex-shrink: 0;
    width: clamp(180px, 16vw, 260px);
    max-width: 100%;
  }

  .footer-logo-img {
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 553 / 102;
    max-width: 100%;
    object-fit: contain;
    padding: 14px 20px;
    box-sizing: border-box;
  }

  .div-block-145 {
    flex: 0 0 auto;
    justify-content: flex-start;
    min-width: clamp(200px, 18vw, 280px);
  }

  @media (max-width: 767px) {
    .hero_container_main {
      display: block !important;
      padding: 0 !important;
      min-height: auto !important;
    }

    .div-block-145 {
      width: 100%;
      justify-content: center;
      min-width: 0;
    }

    .div-block-145 img.footer-logo-img {
      width: min(220px, calc(100vw - 48px)) !important;
      max-width: 100%;
      padding: 16px;
    }

    .footer-logo-link {
      width: min(220px, calc(100vw - 48px));
      justify-content: center;
    }

    .hero_container_section {
      min-height: auto;
    }

    .hero_container_text,
    .hero_container_slider {
      width: 100% !important;
      max-width: 100% !important;
      flex: none !important;
      display: block !important;
    }

    .hero_container_text {
      min-height: auto;
      padding: 6.25rem 1.25rem 1.5rem !important;
    }

    .hero_container_text_space {
      position: static !important;
      top: auto !important;
      left: auto !important;
      right: auto !important;
      width: auto !important;
      transform: none !important;
      padding: 0 !important;
    }

    .hero_container_text_space h2 {
      min-height: 0;
      margin-bottom: 1rem;
    }

    .hero_container_text .animation--from-bottom-fade {
      min-height: 0;
    }

    .hero_container_slider {
      position: relative;
      padding-left: 0 !important;
      padding-right: 0 !important;
    }

    .hero_container_slider_main {
      height: auto !important;
      min-height: 18rem !important;
    }

    .hero_container_slider_main .animation--hidden-bar {
      padding-right: 0 !important;
      margin-right: 0 !important;
    }

    .home_slider_img,
    .partner-portfolio {
      width: 100% !important;
      min-height: 18rem !important;
      height: 18rem !important;
    }

    .partner-portfolio {
      overflow: hidden;
    }

    .marquee-portfolios {
      transform: rotate(-28deg) scale(0.92);
      transform-origin: center;
      margin-top: -14rem !important;
    }

    .marquee-portfolio-container {
      height: 11rem !important;
    }

    .marquee-portfolio {
      width: 22rem !important;
      margin: 0 -0.85rem !important;
    }

    .hero-left-button {
      display: none !important;
    }

    .home-view-case-btn {
      right: 1rem !important;
      bottom: 0.75rem !important;
      z-index: 6;
    }

    .home-view-case-btn .view-all-cases {
      font-size: 0.85rem;
    }

    .hero-bg-fill {
      display: none !important;
    }
  }

  @media only screen and (min-width: 1161px) {
    .hero_container_main {
      min-height: calc((var(--vh, 1vh) * 100) - 0rem);
      height: 100%;
      width: 100%;
      padding: 0 70px;
      display: flex;
      display: -ms-flexbox;
      align-items: center;
      justify-content: space-between;
    }
  }

  .marquee-portfolio img {
    display: block;
    aspect-ratio: 932 / 561;
    object-fit: cover;
  }
/* END:internal-base */

/* BEGIN:tints */

/* END:tints */

/* BEGIN:page-head-scoped */

/* END:page-head-scoped */

/* BEGIN:contrast */
.dws-force-light-text{
  --site-text-color:#fff !important;
  --main-text-color:#fff !important;
  --white-text-color:#fff !important;
  --call-action-text-color:#fff !important;
  --subheading-text-color:#fff !important;
}
.dws-force-dark-text{
  --site-text-color:#111 !important;
  --main-text-color:#111 !important;
  --white-text-color:#111 !important;
  --call-action-text-color:#111 !important;
  --subheading-text-color:#111 !important;
}
.dws-force-light-text,.dws-force-light-text p,.dws-force-light-text li,.dws-force-light-text h1,.dws-force-light-text h2,.dws-force-light-text h3,.dws-force-light-text h4,.dws-force-light-text h5,.dws-force-light-text h6,.dws-force-light-text span,.dws-force-light-text strong,.dws-force-light-text em,.dws-force-light-text a,.dws-force-light-text i{color:#fff !important;-webkit-text-fill-color:#fff !important;}
.dws-force-light-text li::marker{color:#000 !important;-webkit-text-fill-color:#000 !important;}
.dws-force-dark-text,.dws-force-dark-text p,.dws-force-dark-text li,.dws-force-dark-text h1,.dws-force-dark-text h2,.dws-force-dark-text h3,.dws-force-dark-text h4,.dws-force-dark-text h5,.dws-force-dark-text h6,.dws-force-dark-text span,.dws-force-dark-text strong,.dws-force-dark-text em,.dws-force-dark-text a,.dws-force-dark-text i{color:#111 !important;-webkit-text-fill-color:#111 !important;}
.dws-force-dark-text li::marker{color:#000 !important;-webkit-text-fill-color:#000 !important;}
.dws-force-light-text .dws-force-dark-text,.dws-force-light-text .dws-force-dark-text p,.dws-force-light-text .dws-force-dark-text li,.dws-force-light-text .dws-force-dark-text h1,.dws-force-light-text .dws-force-dark-text h2,.dws-force-light-text .dws-force-dark-text h3,.dws-force-light-text .dws-force-dark-text h4,.dws-force-light-text .dws-force-dark-text h5,.dws-force-light-text .dws-force-dark-text h6,.dws-force-light-text .dws-force-dark-text span,.dws-force-light-text .dws-force-dark-text strong,.dws-force-light-text .dws-force-dark-text em,.dws-force-light-text .dws-force-dark-text a,.dws-force-light-text .dws-force-dark-text i{color:#111 !important;-webkit-text-fill-color:#111 !important;}
.call-action-box.dws-force-light-text,
.call-action-box.dws-force-light-text ul li,
.call-action-box.dws-force-light-text ul li p,
.call-action-box.dws-force-light-text ul li a,
.call-action-box.dws-force-light-text h1,
.call-action-box.dws-force-light-text h2,
.call-action-box.dws-force-light-text h3,
.call-action-box.dws-force-light-text h4,
.call-action-box.dws-force-light-text span,
.call-action-box.dws-force-light-text strong,
.call-action-box.dws-force-light-text em,
.grey-text-box-3.dws-force-light-text,
.grey-text-box-3.dws-force-light-text p,
.grey-text-box-3.dws-force-light-text li,
.grey-text-box-3.dws-force-light-text a,
.grey-text-box-3.dws-force-light-text span,
.grey-text-box-3.dws-force-light-text strong,
.sports-treatment-box.dws-force-light-text,
.sports-treatment-box.dws-force-light-text p,
.sports-treatment-box.dws-force-light-text li,
.sports-treatment-box.dws-force-light-text h3,
.sports-treatment-box.dws-force-light-text a{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.dws-force-light-text a:hover,
.dws-force-light-text a:focus,
.dws-force-light-text a:active{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.dws-force-light-text .white-btn,
.dws-force-light-text .white-btn:link,
.dws-force-light-text .white-btn:visited,
.dws-force-light-text .btn-white,
.dws-force-light-text .btn-white:link,
.dws-force-light-text .btn-white:visited,
.dws-force-light-text .btn-light,
.dws-force-light-text .btn-light:link,
.dws-force-light-text .btn-light:visited,
.dws-force-light-text a[style*="background:#fff"],
.dws-force-light-text a[style*="background: #fff"],
.dws-force-light-text a[style*="background-color:#fff"],
.dws-force-light-text a[style*="background-color: #fff"]{
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  background:#fff !important;
  border-color:#fff !important;
}
.dws-force-light-text .white-btn:hover,
.dws-force-light-text .white-btn:focus,
.dws-force-light-text .white-btn:active,
.dws-force-light-text .btn-white:hover,
.dws-force-light-text .btn-white:focus,
.dws-force-light-text .btn-white:active,
.dws-force-light-text .btn-light:hover,
.dws-force-light-text .btn-light:focus,
.dws-force-light-text .btn-light:active,
.dws-force-light-text a[style*="background:#fff"]:hover,
.dws-force-light-text a[style*="background:#fff"]:focus,
.dws-force-light-text a[style*="background:#fff"]:active,
.dws-force-light-text a[style*="background: #fff"]:hover,
.dws-force-light-text a[style*="background: #fff"]:focus,
.dws-force-light-text a[style*="background: #fff"]:active,
.dws-force-light-text a[style*="background-color:#fff"]:hover,
.dws-force-light-text a[style*="background-color:#fff"]:focus,
.dws-force-light-text a[style*="background-color:#fff"]:active,
.dws-force-light-text a[style*="background-color: #fff"]:hover,
.dws-force-light-text a[style*="background-color: #fff"]:focus,
.dws-force-light-text a[style*="background-color: #fff"]:active{
  color:#111 !important;
  -webkit-text-fill-color:#111 !important;
  background:#f2f2f2 !important;
  border-color:#f2f2f2 !important;
}
/* Force consistent CTA hover contrast when legacy vars are inconsistent */
body:not(.home) .inner-page-wide .book-ul .book-btn:hover,
body:not(.home) .inner-page-wide .book-btn:hover,
body:not(.home) .inner-page-wide .white-btn:hover,
body:not(.home) .inner-page-wide .white-btn:focus,
body:not(.home) .inner-page-wide .button.inverse-btn:hover,
body:not(.home) .inner-page-wide a.button.inverse-btn:hover{
  background:#000 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:#fff !important;
  opacity:1 !important;
}
/* END:contrast */

/* BEGIN:owl-guard */
.owl-carousel { position: relative; overflow: hidden; }
.owl-carousel .owl-item { position: relative; overflow: hidden; }
.astro-owl-slide { position: relative; overflow: hidden; }
.owl-carousel:not(.owl-loaded) > * { display: block; }
.owl-carousel:not(.owl-loaded) > *:not(:first-child) { display: none !important; }
.astro-owl-slide > .sl-image,
.owl-carousel .owl-item > .sl-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* END:owl-guard */

/* BEGIN:layout-compat */
body:not(.home) .inner-pages-container .h1-title {
  display: block !important;
}

@media only screen and (min-width: 1025px) {
  header .nav-links,
  header .hide-tablet-down {
    display: block !important;
  }

  header .menu-address2 {
    display: block !important;
  }

  header .menu-holder,
  header .icon-holder {
    display: block !important;
  }
}
/* END:layout-compat */
