/** Shopify CDN: Minification failed

Line 65:0 Unexpected "}"
Line 3293:36 Expected ":"

**/
body{
  font-family:'Spartan', sans-serif;
}

p, ul, li{
  font-family:'Spartan', sans-serif;
}

/* Faux Google Reviews Slider */
.review h5{
  padding-top:1rem;
}
.faux-reviews-container {
  overflow-x: auto; 
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory; 
  display: flex;
  gap: 1rem;
  padding: 2rem 0 4rem 2rem;
  margin-left: 1rem;
}

.faux-reviews-slider {
  display: flex;
  gap: 1rem;
}

.review-individual-container {
  flex: 0 0 calc(100% / 3.5); 
  background: #fff;
  border-radius: 8px;
  padding: 2rem;
  scroll-snap-align: start; 
}

.review-stars {
  margin-bottom: 0.5rem;
}
#shopify-section-template--16523238572095__select_collection_carousel_neat_W8ezfU h2 { font-size: 30px; text-transform: none; }

.review-stars .star {
  font-size: 1rem;
  color: #fbbc04; 
}

.review-stars .star.outline {
  color: #ddd;
}

@media (max-width: 768px) {
  .review-individual-container {
    flex: 0 0 60%; 
  }
}

@media (max-width: 1030px) {
    font-size:1rem !important;
  }
}

h1.main-page-title{
  font-size: 2.5rem !important;
    margin: 0 !important;
    line-height: 1;
    font-family: Spartan, sans-serif !important;
    font-weight: 400 !important;
    font-style: normal !important;
    text-transform: uppercase !important;
}


/* Variant Dropdown */
.variant-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-column-gap: 1rem;
}

#ProductSelect-sessions{
  font-size: 1.75rem;
    color: #1a3457;
    padding: 1rem 2rem;
    border-radius: 0px;
}

.variant-dropdown{
  line-height: 1;
    font-family: Spartan, sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 1.5rem;
    color: #1a3457;
}

.instafeed-new-layout-item {
    width: 100%;           
    aspect-ratio: 4 / 5;  
    overflow: hidden;
    clip-path: inset(0);   
    height:unset !important;
}

/* Full Width Gallery */

.slider-wrapper-2025-gallery {
  position: relative;       
  width: 100%;
  height: 650px;       
  overflow: hidden;        
}

.slider-arrow {
  position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #0006;
    color: #fff;
    border: none;
    padding: 1rem;
    cursor: pointer;
    z-index: 20;
    font-size: 2rem;
}

.slider-arrow-prev {
  left: 1rem;
}

.slider-arrow-next {
  right: 1rem;
}


.slider-track-2025-gallery {
  position: relative;       
  width: 100%;
  height: 100%;
}

.slider-card-2025-gallery {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.5s ease;
  z-index: 1;
}

.slider-card-2025-gallery:first-child {
  opacity: 1;
  z-index: 5;
}

.slider-card-2025-gallery .image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover; 
  object-position: center center;
  display: block;
}

.slider-card-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); 
  text-align: center;
  color: #fff; 
  z-index: 10;
  padding: 0 1rem; 
}

/* Sub-headline / mono font */
.slider-card-content .mono-font {
  margin-bottom: 0.5rem;
}

/* Link button overlay */
.link-to-index-slider a {
  display: inline-block;
  margin-top: 1rem;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
}

.slider-card-content h1{
  color:#fff !important;
}

.slider-card-content a{
  text-decoration:underline !important;
}

.link-to-index-slider{
  padding-top:50px;
}

.chat-icon.default-theme-1, .notification-card.default-theme-1{
background:black !important;
}

/* Mobile adjustments */
@media (max-width: 768px) {

  .slider-card-content {
    width: 300px;
}

  .slider-wrapper-2025-gallery {
    height: 500px;
  }
  .variant-grid {
    grid-template-columns: 1fr;
    grid-row-gap: 2rem;
}
}

.slider-gallery-full-width-2025.border-on {
  padding: 2rem;
}


input#email_01JZ0QR6KRA7VTYP3NMMWPS47R{
  text-align:center !important;
}

/* Slider Banner */
.video-banner-slider-wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 90vh;
}

.video-banner-slider__track {
  position: relative; /* for absolute slides */
  width: 100%;
  height: 100%;
}

.video-banner-slider__slide {
  position: absolute; /* stack slides for fade */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1s ease-in-out;

  /* FIX 1 — make images/videos scale identically */
  overflow: hidden;
}

.video-banner-slider__slide.active {
  opacity: 1;
  z-index: 1;
}

.video-banner-slider__media {
  width: 100%;

  /* FIX 2 — force <img> to behave like <video> */
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;

  display: block;
}

.video-banner-slider__inner {
  max-width: 800px;
  padding: 1rem;
  text-align: left;
}

h1.video-banner-slider__title {
  color: white !important;
  text-align: left;
}

.video-banner-slider__text p {
  color: white !important;
  text-align: left;
  padding-bottom: 2rem;
  padding-top: 2rem;
}

.video-banner-slider__content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  pointer-events: none;
  color: #fff;
}

.video-banner-slider__content a.number_one__button {
  pointer-events: auto;
}

.video-banner-slider__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.4);
  color: #fff;
  border: none;
  padding: 1rem;
  cursor: pointer;
  z-index: 20;
  font-size: 2rem;
}

.video-banner-slider__arrow.prev { left: 10px; }
.video-banner-slider__arrow.next { right: 10px; }


/* Booking Journey */

#trigger-booking-app {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}

#trigger-booking-app.active {
  display: block;
}

.drawer__close__booking {
    font-size: 2rem;
    margin-left: auto;
    background: none;
    border: none;
    cursor: pointer;
    width: 100%;
    text-align: left;
    padding: .5rem 1rem 1rem;
    border-bottom: .5px solid #1A3E7C;
    border-top: .5px solid #1A3E7C;
    font-family: Spartan, sans-serif;
    font-weight: 400;
    font-style: normal;
    text-transform: uppercase;
    color: #1a3e7c;
    font-size: 1.25rem;
    text-decoration: none;
    background: #ecf3fe;
}

.spa-booking-widget label{
  font-family: Spartan, sans-serif;
    font-weight: 600;
    font-style: normal;
    text-transform: uppercase;
    color: #1a3e7c;
    font-size: 1.25rem;
    text-decoration: none;
    padding: 1.25rem 3rem 1rem;
    border-bottom: .5px solid #1A3E7C;
    width: 100%;
    display: block;
    background-color: #839ebd;
    transition: all .3s linear;
}

.spa-booking-widget input[type=text]{
  font-family: Spartan, sans-serif;
}

.therepist-geneder-options{
  padding-bottom:2rem;
  font-family: Spartan, sans-serif;
}

.therepist-geneder-options h2{
  font-size: 1.5rem;
    font-weight: 600;
    padding-bottom: 0.75rem;
    font-family: Spartan, sans-serif;
    
}

.skin-concerns-booking-journey legend{
  color: #1a3457;
  font-family: Spartan, sans-serif;
  text-transform: uppercase;
    font-weight: 600;
    font-size: 1.5rem;
}

.skin-concerns-booking-journey label{
  color: #1a3e7c;
  font-family: Spartan, sans-serif;
}

.drawer__close__booking:hover{
  background: #839EBD;
}

.drawer__close:hover{
  background: #839EBD;
}

.drawer__close__booking .svg-wrapper {
    transform: rotate(180deg);
    margin-right: 1rem;
    width: 15px;
}

.booking-app-nav-container{
  width: 100vw;
  height: 100vh;
  background-color: #1a345799;
}

.book-appointment-btn{
  border-radious:0px !important;
  border-color:  #1A3E7C !important;
  font-family: 'Spartan', sans-serif;
  font-weight: 600;
  font-style: normal;
  text-transform:uppercase;
}




#trigger-booking-app .tier-1{
  width: 400px;
    background: #ecf3fe;
    height: 100%;
    border-right: .5px solid #1A3E7C;
    z-index: 999;
  position:relative;
      padding: 0;
      margin:0;
}

#trigger-booking-app ul.tier-1 li a{
  font-family: 'Spartan', sans-serif;
  font-weight: 600;
  font-style: normal;
  text-transform:uppercase;
    color:#1A3E7C;
    font-size:1.25rem !important;
    text-decoration:none;
    padding:1.25rem 3rem 1rem;
    border-bottom: 0.5px solid #1A3E7C;
    width: 100%;
    display: block;
    background-color:#ecf3fe;
    transition: all 0.3s linear;
}

#trigger-booking-app ul.tier-2 li a {
    background-color: #839EBD;
}

#trigger-booking-app ul.tier-1 li a:hover {
  color: #ecf3fe;
  background-color:#1A3E7C;
    }

/* target anchors inside the actual tier-2 and tier-3 ULs */
#trigger-booking-app ul.tier-2 li a,
#trigger-booking-app ul.tier-3 li a{
  font-family: 'Spartan', sans-serif;
  font-weight: 600;
  font-style: normal;
  text-transform: uppercase;
  color: #1A3E7C;
  font-size: 1.25rem !important;
  text-decoration: none;
  padding: 1.25rem 3rem 1rem;
  border-bottom: 0.5px solid #1A3E7C;
  width: 100%;
  display: block;
  background-color: #ecf3fe;
  transition: all 0.3s linear;
}

#trigger-booking-app ul.tier-2 li a:hover,
#trigger-booking-app ul.tier-3 li a:hover{
  color: #ecf3fe;
  background-color: #1A3E7C;
}


#trigger-booking-app .tier-2-drawer {
  position: absolute;
  top: 0;
  left: 400px;        
  width: 400px;       
  height: 100%;
  overflow-y: auto;
  background: #ecf3fe; 
  border-right: 0.5px solid #1A3E7C;
  z-index: 998;       
}

/* default hidden; toggle to .is-open via your click JS */
#trigger-booking-app .tier-2-drawer.is-closed { display: none; }
#trigger-booking-app .tier-2-drawer.is-open   { display: block; }

.booking-app-nav-container ul{
  padding-left:0;
}






.flatpickr-day.selected{
  background:#1a3e7c !important;
  border-color: #1a3e7c !important;
}

.flatpickr-current-month .numInputWrapper{
  font-size:1.5rem;
}



/* Navigation 2025 */

.no-scroll {
  overflow: hidden;
  height: 100vh;
}

header-drawer {
    margin-left: 0 !important;
}

  .desktop-nav {
    display: flex;
    gap: 0.5rem;
    justify-content: center;
  }

.desktop-nav ul{
  padding-inline-start: 1rem !important;
}

.desktop-nav li{
  padding:0 1rem;
  display:inline-block !important;
}

  .drawer-2025 {
    position: fixed;
    top: -2px;
    left: 0;
    width: 100%;
    height: 100%;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    z-index: 99;
    display: none;
    flex-direction: column;
  }

  .drawer-2025.active {
    transform: translateX(0);
    display: flex;
  }

  .drawer__content{
    display: block;
    position: relative;
    height: 100%;
    background-color: #1a345799;
  }

  .tier-2-container{
  width: 400px;
    background: #ecf3fe;
    height: 100%;
    border-right: .5px solid #1A3E7C;
    z-index: 999;
}
  .tier-3-container{
    width: 400px;
        background: #ecf3fe;
        height: 100%;
        border-right: .5px solid #1A3E7C;
        z-index: 9999;
        position: absolute;
        left: 400px;
        top: calc(4rem - 0.5px);
}

  .tier-2-image-container img {
  position: absolute;
  top: calc(4rem - 0.5px);
  right: -400px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  z-index: 9; 
  margin: 0;
}

.desktop-nav-image {
  position:relative;
  width:100%;
}

  .drawer__close {
    font-size: 2rem;
    margin-left: auto;
    background: none;
    border: none;
    cursor:pointer;
    width: 100%;
    text-align: left;
    padding: 0.5rem 1rem 1rem;
    border-bottom: 0.5px solid #1A3E7C;
    border-top: 0.5px solid #1A3E7C;
    font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform:uppercase;
    color:#1A3E7C;
    font-size:1.25rem;
    text-decoration:none;
    background: #ecf3fe;
  }

  .tier-2-container ul,
  .tier-3-container ul {
    list-style: none;
    padding-left: 0;
            margin: 0;
  }

  ul.tier-1-top li a{
    font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform:uppercase;
    color:#1A3E7C;
    font-size:1.25rem;
    text-decoration:none ;
  }

  ul.tier-1-top{
    margin:0;
  }

  .tier-2-container ul li a, .tier-3-container ul li a{
    font-family: 'Spartan', sans-serif;
  font-weight: 600;
  font-style: normal;
  text-transform:uppercase;
    color:#1A3E7C;
    font-size:1.25rem;
    text-decoration:none;
    padding:1.25rem 3rem 1rem;
    border-bottom: 0.5px solid #1A3E7C;
    width: 100%;
    display: block;
    background-color:#ecf3fe;
    transition: all 0.3s linear;
  }

  .drawer__close .svg-wrapper {
    transform: rotate(180deg);
    margin-right: 1rem;
    width: 15px;
}

.tier-2-container ul{
    margin-top:0;
  }

.tier-2-container ul li a:hover, .tier-3-container ul li a:hover {
  color: #ecf3fe;
  background-color:#1A3E7C;
    }

    h2.cart__login-title{
      padding-top:4rem;
    }

/* Grid Global Updates */

 @media (max-width: 768px) {
  #trigger-booking-app .tier-2-drawer {
    left:0px;
  }
  .grid {
    display:block;
}
.grid--2-col-tablet-down .grid__item{
  width:100%;
}
.grid__item {
  max-width:100%;
}
.datetime-panel{
  left:0 !important;
}
 }

 span.btn-text{
  padding-top:0.5rem;
 }



/* Home Page 2025 */

h1{
font-family: "ivypresto-display", serif;
font-weight: 100;
font-style: normal;
  font-size: 6rem;
  margin:0 !important;
  line-height: 1;
}

h2{
  font-size: 2.5rem;
  margin:0 !important;
  line-height: 1;
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform:uppercase;
}

h3{
  font-size: 2rem;
  margin:0 !important;
  line-height: 1;
  font-family: 'Spartan', sans-serif;
  font-weight: 100;
  font-style: normal;
  text-transform:uppercase;
}

h4{
  font-size: 1.5rem;
  margin:0 !important;
  line-height: 1.25;
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform:uppercase;
}

h5{
  font-size: 1.25rem;
  margin:0 !important;
  line-height: 1.25;
  font-family: 'Spartan', sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform:uppercase;
}

h6{
  font-family: "ivypresto-display", serif;
font-weight: 100;
font-style: normal;
  font-size: 1.95rem;
  margin:0 !important;
  color:#1A3457;
  line-height:1.5;
}

strong{
  font-family: 'Spartan', sans-serif;
}

.custom-html-content{
  padding-top:2rem;
}

p{
  font-family: 'Spartan', sans-serif;
  font-weight: 600;
  font-style: normal;
  line-height:1.6;
  color:#1A3457;
}
hr{
  padding:0;
  margin:1rem 0;
}
.video-banner-wrapper {
    position: relative;
    width: 100%;
    height: 75vh;
    overflow: hidden;
  }

  .video-banner__media {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-position: center center;
}

h1.video-banner__title{
  color:#fff;
}

.video-banner__text p{
  color:#fff;
}

  .desktop-only { display: none; }
  .mobile-only { display: none; }

  @media (min-width: 769px) {
    .desktop-only { display: block; }
  }

  @media (max-width: 768px) {
    .mobile-only { display: block; }
    .blog-card-inner {
    padding: 1rem !important;
    }
    .blog-card-inner p {
    font-size: 1rem !important;
}
    h1.blog-feature-article__title {
    font-size: 2.5rem !important;
}
    h2.blog-feature-article__title {
    font-size: 1.5rem !important;
    padding-top: 1.25rem !important;
    }
    .cta-card {
    max-height: unset !important;
    }
    .three-cta-cards {
    padding: 0 2rem 6rem !important;
    }
    .mobile-only a.blog-feature-slider__button{
      border-bottom: 0.5px solid white;
    }
    .video-banner__inner {
        max-width: 90vw !important;
      color:#fff !important;
    }
    .video-banner__content{
      left:2.5rem !important;
    }
    .video-banner__content h1{
      font-size: 3.5rem !important;
    }
    .number_one__button{
      width:88vw;
    }
    .footer-block__heading{
      padding:0 !important;
    }
    h2 {
    font-size: 2rem !important;
    line-height: 1.5 !important;
    }
    .footer-card-grid__grid{
      max-width: 100% !important;
      grid-template-columns: repeat(2, 1fr) !important;
    }
    .footer-card-grid__grid > :nth-child(7) {
        grid-column: 1 / -1; /* Span all columns */
    }
    .number_one__button {
    font-size: 1.1rem;
}
    
  }

.video-banner__content {
  position: absolute;
  top: 50%;
  left: 10rem;
  transform: translateY(-50%);
  z-index: 2;
  width: 100%;
}

.video-banner__inner {
  max-width: 45vw;
  color:#1A3457;
}

.announcement-bar__message {
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform:uppercase;
  font-size:1rem;
  padding: 1.5rem 0 1rem !important;
}

.footer-block__heading{
  font-size: 1.5rem !important;
  padding: 6rem 0 0;
}

.footer-block__details-content .list-menu__item--link {
        font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform:uppercase;
  font-size:1.25rem !important;
    }

.video-banner__text{
  padding:2rem 0;
}

.video-banner__text p{
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
}

.product__description{
  font-size:1.2rem;
}

.product__description ul{
  padding-left:0;
  list-style-type:disc !important;
}

.product__description li{
  font-weight:bold;
}

.product__description li::marker{
  display:none !important;
  content: none !important;
}

  a.number_one__button {
    display: inline-block;
    padding: 8px 35px 8px;
    border-radius: 6px;
    background: #efb851;
    color: #1a3457;
    text-decoration: none;
    transition: background .3s ease;
    text-transform: uppercase;
    font-family: 'Spartan', sans-serif;
    font-weight: 600;
    text-align:center;
    font-size:1.25rem;
    border:0.5px solid #efb851;
  }
a.number_one__button:hover {
    background: #1A3E7C;
    color: #fff !important;
    text-decoration: none;
    transition: background .3s ease;
    text-transform: uppercase;
    font-family: 'Spartan', sans-serif;
    font-weight: 600;
    text-align:center;
    font-size:1.25rem;
  border:0.5px solid #ECF3FE;
  }

a.number_two__button {
    display: inline-block;
    padding: 8px 35px 8px;
    background: #1a3457;
  color:#fff;
    text-decoration: none;
    transition: background .3s ease;
    text-transform: uppercase;
    font-family: 'Spartan', sans-serif;
    font-weight: 600;
    text-align:center;
    font-size:1.25rem;
  }
a.number_two__button:hover {
    background: #222;
  }

.skin-concerns-cards__card h4 {
    color:white;
    transition: all 0.3s ease;
}
.skin-concerns-cards__card:hover h4 {
    color:#1a3457;
}
.treatments-individual__text a.number_one__button:hover {
  border:0.5px solid #1A3E7C;
  }
.cta-card__body a.number_one__button:hover {
  border:0.5px solid #1A3E7C;
  }
  .video-banner__button:hover {
    background: #ECF3FE;
  }
.footer-block-image {
    display: block !important;
}
.footer-block__details-content{
  padding-top:2rem;
}
.footer-card-grid__container {
  display: block;
  max-width: 100%;
  padding: 6rem 1rem 4rem;
  border-bottom:0.5px solid #fff;
}

.footer-card-grid__grid{
  display: grid;
  gap: 2rem;
  justify-content: center;
  grid-template-columns: repeat(7, 1fr);
  max-width: 75%;
  padding: 2rem 1rem;
  margin:0 auto;
}

.shopify-policy__container{
  max-width:800px !important;
}

.shopify-policy__body {
  padding-top:2rem;
}

.shopify-policy__container{
  padding-top:2rem !important;
  padding-bottom:2rem !important;
}

.footer-card-grid__card {
  width: 110px;
  text-align: center;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100%;
  min-height: 150px; 
}

.footer-card-grid__card a h4{
  text-decoration:none !important;
}

.footer-card-grid__card a:visited h4{
  text-decoration:none;
}

.footer-card-grid__grid a{
  text-decoration:none !important;
}

.footer-card-grid__grid a:visited{
  text-decoration:none !important;
}

.footer-icons {
  height: 80px;
  display: flex;
  align-items: center;   
  justify-content: center; 
}

.footer-card-grid__card img {
  max-width: 60px;
  height: auto;
  display: block; 
  max-height: 70px;
}

.footer-card-grid__card h4 {
  font-size: 13px;
  margin-top: 1rem;
  margin-bottom: 0;
  line-height: 1.4;
  min-height: 3.2em; 
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer-card-grid__container h2{
  text-align:center;
  padding-top:1rem;
}

.footer{
  padding-top:6rem;
}

.main-cta__container {
  display: grid;
  grid-template-columns: 1fr 2.5fr;
  height: 60vh;
}

.main-cta__media {
  height: 100%;
  width: auto;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.main-cta__image,
.main-cta__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.main-cta__content {
  display: flex;
  align-items: center;
  justify-content: left;
  padding: 2rem;
  text-align: left;
  position: relative !important;
    height: unset !important;
}

.main-cta__inner {
  max-width: 750px;
  margin: 0 auto;
}

.main-cta__inner h1 {
  font-size: 5rem;
  line-height: 1.15 !important;
}

.main-cta__inner p {
  font-size: 1.5rem;
  margin-bottom: 1.5rem;
  padding:1.5rem 0;
  font-weight:400;
  color: #fff;
}

h1.two-col-reveal__headline{
  font-size: 4rem !important;
  line-height: 1.25;
}

.section-nav-left-inner h1{
  color:#fff;
  padding-bottom:1rem;
}

@media (max-width: 768px) {
  .main-cta__container {
    grid-template-columns: 1fr;
    height: 80vh;
    position: relative;
    z-index:1;
  }
  .main-cta__content {
        position: absolute !important;
        z-index: 9;
        height: 100% !important;
    }
  .main-cta__media {
    aspect-ratio: auto;
  }
  .main-cta__media:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(26, 52, 87, 0.8);
    z-index: 1;
    pointer-events: none;
}
}

.skin-concerns-cards__container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 0 auto;
  gap: 0; /* ensures no grid gap */
}

@media (min-width: 768px) {
  .skin-concerns-cards__container {
    grid-template-columns: repeat(6, 1fr);
  }
}

.skin-concerns-cards__card {
  position: relative;
  aspect-ratio: 3 / 4;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  text-align: center;
  padding: 1rem;
  overflow: hidden;
  text-decoration: none;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.skin-concerns-cards__card h4 {
  font-size: 13pt;
  font-weight: bold;
  padding: 0.5rem 1rem;
  color: white;
}

.section-two-columns-uneven__container {
  display: grid;
  grid-template-columns: 2fr 1fr;
  height: 60vh;
  overflow: hidden;
}

.section-two-columns-uneven__container-html {
  display: grid;
  grid-template-columns: 1fr 2fr;
  height: 60vh;
  overflow: hidden;
}

.section-two-columns-uneven__media picture,
.section-two-columns-uneven__media video,
.section-two-columns-uneven__image {
  height: 100%;
  width: auto;
  object-fit: cover;
  display: block;
}


@media (max-width: 600px) {
  .section-two-columns-uneven__container-html {
    display: flex;
    flex-direction: column-reverse;
    height: 150vh;
        overflow: visible;
  }
  .three-cta-cards__title {
    font-size: 4rem !important;
}
#trigger-booking-app ul.tier-2 li a, #trigger-booking-app ul.tier-3 li a{
  font-size:0.75rem !important;
}
}


.section-two-columns-uneven__media {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.section-two-columns-uneven__image,
.section-two-columns-uneven__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.section-two-columns-uneven__content {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 2rem 4rem;
  text-align: left;
}

.section-two-columns-uneven__inner {
  max-width: 500px;
}

.section-two-columns-uneven__inner h2 {
  line-height:1.2;
  margin-bottom: 1rem;
  font-size: 3.5rem;
}

.section-two-columns-uneven__inner p {
  font-weight: 400;
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    padding: 1rem 0 2rem;
}

.section-two-columns-uneven__link {
  font-weight: bold;
  text-decoration: underline;
  color: inherit;
}

.before-after-slider-heading {
  font-size: 1.25rem;
padding:2rem 2rem 1.5rem;
  text-transform: uppercase;
  color: #1A3E7C;
  border-bottom:0.5px solid #1A3E7C;
}

.before-after-slider {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  border-bottom: 0.5px solid #1A3E7C;
}

.slider-card {
  flex: 0 0 calc(100% / 3.5);
  scroll-snap-align: start;
  overflow: hidden;
  border-right: 0.5px solid #1A3E7C;
}

.slider-card img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.slider-caption {
  font-size: 1.25rem;
  font-family: 'Spartan', sans-serif;
  color: #1A3457;
  padding: 2rem;
}


@media (max-width: 768px) {
  .section-two-columns-uneven__container {
    grid-template-columns: 1fr;
    height: unset;
    overflow: visible;
  }
  .treatment-cards__grid--seven {
    grid-template-columns: repeat(3, 1fr) !important;
}
.treatment-cards__grid--seven > :nth-child(1) {
        grid-column: 1 / -1; /* Span all columns */
    }
  .section-two-columns-uneven__content {
    text-align:left;
    padding: 2rem;
    margin: 0 auto;
  }
  .treatments-individual__heading {
    padding: 4rem 1rem 2rem !important;
    font-size: 3.5rem !important;
    line-height: 1.25 !important;
}
  .treatment-cards__title {
    padding: 4rem 1rem 2rem !important;
}
  .three-cta-cards__title {
    text-align: left !important;
}
}

.section-two-columns-uneven__subheadline{
  display: inline-block;
    font-size: 13.3333px !important;
    font-weight: 600;
    padding: 4px 16px;
    text-transform: uppercase;
    font-family: 'Spartan', sans-serif;
    letter-spacing: 0.266667px;
    background-color: rgb(214, 224, 236);
    color: rgb(12, 35, 56);
    border-radius: 8px;
    margin: 0 0 14px 0 !important;
}

.section-two-columns-uneven__headline-html{
  font-size: 30px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    line-height: 1.05;
    font-family: 'Spartan', sans-serif;
    margin: 0 !important;
}

.section-two-columns-uneven__inner .custom-html-content{
  padding-top: 0 !important;
}
.section-two-columns-uneven__inner .custom-html-content > p:first-child{
  margin-top: 12px !important;
  text-wrap: balance;
}

.klaviyo-form-wrapper input[type="email"]{
  padding-left: 3px !important;
}

.treatment-cards__title {
  text-align: center;
  font-size: 2.5rem;
  font-weight: 600;
  margin-bottom: 2rem;
  padding: 3rem 0;
}

.treatment-cards__grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr); /* Force 6 columns */
  gap: 0;
}

.treatment-cards__grid--seven {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

@media (max-width: 767px) {
  .treatment-cards__grid {
    grid-template-columns: repeat(3, 1fr); /* Switch to 3 columns on mobile */
  }
  .blog-feature-slider__header {
    display: block !important;
    padding:1rem 1rem 0 !important;
  }
  .blog-feature-slider__header h2 {
    padding-bottom: 1rem;
}
  .blog-feature-slider__button {
    width: 100%;
    display: block;
    text-align: center;
}
}

.treatment-cards__card {
  position: relative;
  aspect-ratio: 3 / 4;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: white;
  text-decoration: none;
  overflow: hidden;
  transition: all 0.3s ease; 
}

.treatment-cards__card::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(26, 52, 87, 0.6);
  z-index: 1;
  pointer-events: none;
  transition: opacity 0.3s ease; 
}

.treatment-cards__card-title {
  position: relative;
  z-index: 2;
  font-size: 13pt;
  font-weight: bold;
  padding: 1rem;
  color: white;
  transition: opacity 0.3s ease;
}

.treatment-cards__card:hover::after {
  opacity: 0; 
}

.treatment-cards__card:hover .treatment-cards__card-title {
  opacity: 0; 
}

.treatments-individual__slider {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  gap: 12px;
  padding: 12px;
  scroll-padding-left: 12px;
}

.treatments-individual__card {
  flex: 0 0 calc(25% + 4rem); 
  scroll-snap-align: start;
  background: white;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-width: 260px;
  max-width: 300px;
  border: 0.5px solid #1A3457;
}

.treatments-individual__image-wrapper {
  aspect-ratio: 3 / 4;
  width: 100%;
  overflow: hidden;
}

.treatments-individual__image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.treatments-individual__text {
  padding: 1rem 0 0;
  text-align: center;
}

.treatments-individual__text h3 {
  font-size: 2rem;
  margin: 0.5rem 0;
  padding:1rem 0;
  font-weight: 600;
  line-height:1.2
}

.treatments-individual__text h4 {
  font-size: 15px;
  font-weight: 400;
  padding-bottom: 0.25rem;
}

.treatments-individual__text p {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.4;
  margin: 0;
  text-align:left !important;
}

.treatments-individual__heading{
  padding: 4rem 0 2rem;
    text-align: center;
    font-size: 3rem;
    font-weight: 600;
}
.treatment-cards-text-inner{
  padding: 2rem 2rem 0 !important;
  min-height: 158px !important;
}

.treatments-individual__card .number_one__button{
  width:100%;
}

.treatments-individual__container{
  padding-bottom:2rem;
}

.four-column-slider__title {
  text-align: center;
  margin-bottom: 2rem;
padding: 4rem 4rem 2rem;
  font-weight: 600;
}

.four-column-slider__wrapper {
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 4rem;
  margin-left: 2rem;
}

.four-column-slider__grid {
  display: flex;
  gap: 2rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

.four-column-slider__slide {
  scroll-snap-align: start;
  flex-shrink: 0;
}

/* Desktop: 4 columns, last one 1/4 off */
@media (min-width: 700px) {
  .four-column-slider__slide {
    width: calc((100vw - 6rem) / 3.75); 
  }
}

/* Mobile: 2 columns, last one 1/2 off */
@media (max-width: 701px) and (min-width: 501px) {
  .four-column-slider__slide {
    width: calc((100vw - 5rem) / 2.5); 
  }
}

@media (max-width: 500px) {
  .four-column-slider__slide {
    width: calc((100vw - 6rem) / 1); 
  }
}


.slider-item {
  background: #fff;
  border-radius: 1rem;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  border:0.5px #222 solid;
}

.slider-item__image img {
  display: block;
  width: 100%;
  height: auto;
  border-bottom: 1px solid #222;
  padding: 2rem;
}

.slider-item__text {
  padding: 2rem;
    font-size: 1.5rem;
    color: #222;
    line-height: 1.5;
    min-height: 200px;
    position: relative;
    display: flex;
    align-items: center;
}

ul {
    list-style-type: none !important;
  margin-bottom:0;
}

.four-column-slider {
  background-color:#F3F4ED;
}

.three-cta-cards {
  padding: 2rem 2rem 8rem;
  max-width: 1100px;
  margin: 0 auto;
}

.three-cta-cards__title {
  padding:4rem 0;
  text-align: center;
  line-height: 1.2;
  color:#1A3457;
}

.three-cta-cards__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
  max-width: 1200px;
  margin: 0 auto;
}

.cta-card {
  background: #fff;
  text-align: center;
  max-height: 320px;
  display: flex;
  flex-direction: column;
  justify-content: space-between; 
  border: 0.5px solid #1A3E7C;
}

.cta-card__body {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.cta-card__image {
  max-width: 100%;
  height: auto;
}

.cta-card__headline {
  padding: 1.75rem 0 2.25rem;
  line-height:1.2;
  font-size:2rem;
}

.cta-card .number_one__button{
  width:100%;
}

.cta-card__button {
  display: inline-block;
  padding: 1.5rem 2rem 1rem;
  background-color: #1A3E7C;
  color: #fff;
  text-decoration: none;
  transition: background-color 0.3s ease;
  width:100%;
  text-transform: uppercase;
    font-family: 'Spartan', sans-serif;
    font-weight: 400;
    text-align:center;
    font-size:1.25rem;
}

.cta-card__button:hover {
  background-color: #222;
}

.cta-card__html {
  font-size: 1rem;
    color: #1a3457;
    padding: 1rem 4rem;
    text-align: left;
}

.cta-card__html a{
  font-size: 0.95rem;
  color: #1A3457;
}

img.unique-card-three{
  height:100% !important;
  width:auto !important;
}

.cta-card__html p{
  font-size:1.1rem;
}

.blog-feature-slider {
  overflow: hidden;
  border-top: 0.5px solid #1A3457;
  border-bottom: 1px solid #1A3457;
}

.blog-feature-slider__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  border-bottom: 1px solid #1A3457;
  padding-left: 2rem;
}

.blog-feature-slider__header h2{
  line-height:2;
  font-weight:600;
}

h1.collection-slider-heading-two{
  text-align:center;
}

.collection-slider-wrapper .collection-slider .recommended-card__description {
    min-height: 75px;
}

.collection-slider-wrapper-two {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
}

.recommended-card__title_wrapper-two {
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.recommended-card__title_wrapper-two a{
  text-decoration:none;
}

.collection-slider-section-two {
    padding-left: 2rem;
    padding-bottom: 6rem;
}

.blog-feature-slider__button {
  padding: 2rem 4rem;
  background-color: #1A3E7C;
  color: #fff;
  text-decoration: none;
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform:uppercase;
  font-size: 1.25rem;
  transition: all 0.3 ease;
}

.blog-feature-slider__button:hover {
  background-color: #000;
}

.blog-feature-slider__wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.blog-feature-slider__grid {
  display: flex;
  gap:0;
  padding: 0;
  margin-top: 0;
}

.blog-feature-slider__slide {
  scroll-snap-align: start;
  flex-shrink: 0;
  border-left: 1px solid #1A3457;
}

.pagination-2025{
  padding:2rem;
  border-top:1px solid #1A3457;
}

.pagination-2025 a{
  text-decoration: none;
  color: #1A3457 !important;
}

@media (min-width: 1000px) {
  .blog-feature-slider__slide {
    width: calc((100vw - 6rem) / 2.25); /* shows 2 full + 3/4 of 3rd */
  }
}

@media (max-width: 1399px) {
  .blog-feature-slider__slide {
    width: calc((100vw - 5rem) / 1.5);
  }
}

@media (max-width: 450px) {
  .blog-feature-slider__slide {
    width: calc((100vw - 5rem) / 1.25);
  }
}

.tawk-icon-right{
  display:none !important;
}

.blog-feature-article:hover {
    background-color: white; 
  height:100%;
}

.blog-feature-article {
    transition: background-color 0.3s ease;
  height:100%;
}

.blog-feature-article {
  display: block;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
}

.blog-feature-article__image {
    height: 400px;              
    overflow: hidden;           
    border-bottom: 1px solid #1A3457;
}

.blog-feature-article__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;          
    object-position: center;  
    display: block;
}

.blog-feature-article__category {
  font-size: 0.75rem;
  font-weight: 400;
  color: #1a3e7c;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.blog-feature-article__title {
  line-height: 1.3;
  margin-bottom: 0.75rem;
}
h1.blog-feature-article__title{
  font-size:4.5rem;
  padding-top:1rem;
}
h2.blog-feature-article__title{
  font-size:30px;
  padding-top:0;
  font-weight:600;
}
.blog-feature-article__excerpt {
  font-size: 1.25rem;
  color: #1A3457;
  font-weight: 400;
  margin-top: 15px;
}

.blog-card-inner{
  padding:2rem 4rem 4rem;
}

.blog-card-inner p{
  font-size:1.25rem;
}

.two-col-reveal__container {
  display: grid;
  grid-template-columns: 2fr 1fr;
  height: 60vh;
}

.two-col-reveal__media {
  position: relative;
  overflow: hidden;
}

.two-col-reveal__media video,
.two-col-reveal__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.two-col-reveal__content {
  position: relative;
  background-color:#ECF3FE;
  z-index: 2;
}

.headline-reveal{
  padding:2rem;
}

.accordion-card {
  position: relative;
}

.accordion-card__trigger {
  background: none;
  border-top: 1px solid #1A3E7C;
  border-bottom: 0;
    border-left: 0;
    border-right: 0;
  font-size: 1rem;
  font-weight: 600;
  padding: 2rem 0;
  cursor: pointer;
  text-align: center;
  width: 100%;
  font-family: 'Spartan', sans-serif;
  font-style: normal;
  text-transform:uppercase;
  font-size:1.5rem;
}

.accordion-card__content {
  display: block;
}

.accordion-card__body {
  padding: 0 2rem 2rem;
}

@media (max-width: 768px) {
  .two-col-reveal__container {
    grid-template-columns: 1fr;
  }

  .two-col-reveal__media {
    display: none;
  }

  .accordion-card__content {
    display: block;
  }
}

h1.two-col-reveal__subheadline{
  text-transform:uppercase;
  font-size:25px !important;
  margin-bottom:12px !important;
  font-weight:600;
  font-family:'Spartan',sans-serif;
  letter-spacing:normal;
}

h2.two-col-reveal__headline{
  font-size:20px !important;
  line-height:1.5;
}

.hover-card__content{
  display: block;
}

.accordion-card__hover-body {
  position: absolute;
  top: 50%;
  left: 8rem;
  transform: translateY(-50%);
  width: 300px;
  background: #F3F4ED;
  z-index: 2;
  border:0.5px solid #1A3457;
  line-height:1.5;
  font-size:1.5rem;
  padding:1.5rem 0;
}

button.accordion-card__trigger_left_side {
  background: none;
  border-top: 1px solid #1A3E7C;
  border-bottom: 0;
  border-left: 0;
  border-right: 0;
  font-size: 1rem;
  font-weight: 600;
  padding: 2rem 0;
  cursor: pointer;
  text-align: center;
  width: 100%;
  font-family: Spartan, sans-serif;
  font-style: normal;
  text-transform: uppercase;
  transition: background-color 0.2s ease, color 0.2s ease; 
  font-size: 1.5rem;
}

button.accordion-card__trigger_left_side:hover {
  background-color: #1A3E7C;
  color: #fff;
}

.accordion-card:last-of-type .accordion-card__trigger_left_side {
  border-bottom: 1px solid #1A3E7C;
}

@media (max-width: 769px) {
  .two-col-reveal__container {
    min-height: unset !important;
}
  a.number_one__button {
    font-size: 1.5rem;
    width: 100%;
}
  .accordion-card__content h4{
    display:none;
  }
  .accordion-card__content hr{
    display:none
  }
  .two-col-reveal__content{
    border-bottom: 0.5px solid #1A3E7C;
  }
  .treatment-cards__card-title {
    font-size: 1rem !important;
  }
  .product-custom__main-info .product-description-col-1 {
        padding: 0 !important;
        border-bottom: 0 !important;
        min-height: unset !important;
    }
  .recommended-card__title_wrapper{
    padding:1rem 0;
  }
  .recommended-card__description{
    padding-bottom:1rem !important;
  }
}


/* HEADER NAVIGATION */ 

@media screen and (min-width: 768px) and (max-width: 1176px) {
    .header {
        grid-template-columns: 2fr auto 1fr;
    }
    ul.tier-1 li a {
    font-size: 1rem;
}
}


.header {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    }
.header__icons {
    padding-right: 0 !important;
}

.header.page-width {
  padding-right: 0;
  padding-left: 0;
    }

.header__icon--cart {
    margin-right: 0 !important;
}

a.book_now__button:hover {
    background: #1A3E7C;
    color: #fff;
    text-decoration: none;
    transition: background .3s ease;
    text-transform: uppercase;
    font-family: 'Spartan', sans-serif;
    font-weight: 600;
    text-align:center;
    font-size:1.25rem;
  border:0.5px solid #ECF3FE;
  }
a.book_now__button {
    display: inline-block;
    padding: 1.5rem 2rem 1rem;
    background: #efb851;
    color: #1a3457;
    text-decoration: none;
    transition: background .3s ease;
    text-transform: uppercase;
    font-family: 'Spartan', sans-serif;
    font-weight: 600;
    text-align: center;
    font-size: 1.25rem;
    border: .5px solid #efb851;
  width:100%;
}

.footer-block--menu{
  max-width:200px !important;
}

.footer-block__details-content p{
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size:1.25rem;
}

.footer-block-image{
  max-width:400px;
}

.footer__list-social.list-social:only-child {
    justify-content: left !important;
}

.footer-block__image-wrapper {
    margin-bottom: 4rem !important;
}


/* Treatments */

.product-faq__content{
  color:#1A3457;
}

.product-faq__container {
  display: grid;
  grid-template-columns: 1fr 2fr;
  min-height: 50vh;
}

.product-faq__media {
  height: 100%;
  overflow: hidden;
}

.product-faq__media img,
.product-faq__media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-title-faq {
    font-size: 4rem;
    line-height: 1;
    padding: 2rem 2rem 2.5rem;
  color: #1A3457 !important;
    margin-bottom: 1.5rem;
}

.faq-heading {
  color: #1A3457 !important;
  font-family: 'Spartan', sans-serif;
  margin-bottom: 1.5rem;
}

.tt-post__container {
  display: grid;
  grid-template-columns: 2fr 1fr;
  min-height: 50vh;
  align-items: stretch;
}

.tt-post__media {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.tt-post__image,
.tt-post__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tt-post__tabs {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  background-color: #f8f8f8;
  padding: 2rem;
}

.tt-post__tab-buttons {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.tt-post__tab-button {
  background: none;
  border: none;
  padding: 2rem;
  text-align: left;
  cursor: pointer;
  border-bottom: 1px solid ##ECF3FE;
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size:2rem;
}

.tt-post__tab-button.active {
  color: #1A3457;
}

.tt-post__tab-panel {
  display: none;
  margin-top: 1rem;
  line-height: 1.6;
  font-size: 1rem;
}

.tt-post__tab-panel.active {
  display: block;
}

.accordion-tabs {
  border-top: 0.5px solid #ECF3FE;
  background-color: #1A3E7C;
}

.accordion-item {
  border-bottom: 0.5px solid #ECF3FE;
}

.accordion-trigger {
  width: 100%;
  text-align: left;
  padding: 2rem;
  font-size: 1.75rem;
  background: none;
  border: none;
  outline: none;
  cursor: pointer;
  align-items: center;
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #ECF3FE;
  text-transform: uppercase;
}

.accordion-trigger-faq {
  width: 100%;
  text-align: left;
  padding: 2rem;
  font-size: 1.5rem;
  background: none;
  border: none;
  outline: none;
  cursor: pointer;
  align-items: center;
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform: uppercase;
  line-height: 1.5;
  color:#1A3457;
}

.accordion-content {
  display: none;
  padding: 0 2rem 3rem;
  font-size: 1.5rem;
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #ECF3FE;
  line-height:1.5;
}

.accordion-item-faq{
  border-bottom:0.5px solid #1A3457;
}

.accordion-content-faq {
    display: none;
    padding: 0 2rem 2rem;
    font-size: 1.5rem;
    font-family: Spartan, sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #1A3457;
    line-height: 1.5;
}

.accordion-trigger.active + .accordion-content {
  display: block;
}

.accordion-trigger .icon {
  font-size: 2rem;
  line-height: 1;
  transition: transform 0.2s ease;
}


.accordion-trigger-faq.active + .accordion-content {
  display: block;
}

.accordion-trigger-faq .icon {
  font-size: 2rem;
  line-height: 1;
  transition: transform 0.2s ease;
}




.product-custom-container {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  min-height: 80vh;
}

.product-custom__media {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 90vh; 
  min-height: 500px;
  width: 100%;
  overflow: hidden;
}

.product-custom__media media-gallery,
.product-custom__media slider-component,
.product-custom__media ul.product__media-list,
.product-custom__media li.product__media-item,
.product-custom__media .product-media-container,
.product-custom__media .product__media {
  height: 100%;
  width: 50vw;

}

.product-custom__media .product__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.product-custom__info {
  display: grid;
  grid-template-columns: 4fr 1.5fr;
  gap: 0;
  max-width:840px;
  margin:0 auto;
}

.product-breadcrumbs {
  font-size: 1rem;
    padding: 1.5rem 2rem 1rem;
  text-transform: uppercase;
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  border-bottom:0.5px solid #1A3E7C;
}

.product-subheadline {
  font-size: 1.25rem;
  margin-bottom: 0.5rem;
  line-height: 1;
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform:uppercase;
}

.product-title {
  font-size: 5.5rem;
  line-height: 1;
}

.product-description {
  margin-bottom: 1.25rem;
  line-height: 1.5;
    padding-top: 2rem;
}

.treatment-details {
  line-height: 1;
  font-family: 'Spartan', sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size:1.5rem;
  padding:2rem 0;
  color:#1a3457;
}

.product-price {
  font-size: 2.5rem;
  margin-bottom: 2rem;
  color:#1a3457;
}

.right-column-headline {
  font-size: 1rem;
  margin-bottom: 1rem;
  line-height: 1;
  font-family: 'Spartan', sans-serif;
  font-weight: 600;
  font-style: normal;
  text-transform:uppercase;
  text-align:center;
  padding: 2rem 2rem 0 0;
}

.product-custom__main-info{
  padding:4rem 3rem 4rem 3rem;
}

.right-column-cards {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding-right: 2rem;
  padding-top: 2rem;
}

.right-panel-card img {
  max-width: 100%;
  height: auto;
}

.product-breadcrumbs a{
  color:#1A3457;
  text-decoration: none;
}

.product-breadcrumbs a:visited{
  color:#1A3457;
}

.right-panel-subtext {
  margin-bottom: 0.5rem;
  font-family: 'Spartan', sans-serif;
  font-weight: 600;
  font-style: normal;
  text-transform:uppercase;
}

.right-panel-body {
  font-size: 1rem;
  line-height: 1.5;
  font-family: 'Spartan', sans-serif;
  font-weight: 400;
  font-style: normal;
  text-align: center;
  color:#1a3457;
}

.product__media-icon{
  display:none;
}

.right-column-repeater {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.right-panel-card img {
  width: 100%;
  height: auto;
  border-radius: 0.25rem;
  max-width: 70px;
    padding: 1.5rem 1rem 0;
}

.right-panel-card{
  text-align:center;
}

.right-panel-subtext {
  font-size: 1rem;
  text-align: center;
  margin-top: 0.5rem;
}

@media (max-width: 768px) {
  .slider-gallery-full-width-2025.border-on {
    padding: 2rem 0 !important;
}

.center-options {
    height: 40px;
}
#shopify-section-template--16418658091071__two_columns_uneven_html_etEFRK .section-two-columns-uneven__image{
  height: unset !important;
  padding-top: 15rem ;
}

.slider-card-content h1 {
    font-size: 5rem !important;
}


  .slider-card-holder-gallery {
    position: relative;
    width: 100%;
    height: 100%;       /* ensures wrapper inherits slide height */
    overflow: hidden;
  }

  .image-wrapper.mobile-only {
    position: absolute; /* let it fill the whole slide */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;       /* actual box for overlay and image */
    z-index: 1;         /* under text (10), above background */
  }

  .image-wrapper.mobile-only img {
    display: block;
    width: 100%;
    height: 100%;       /* stretch to full slide height */
    object-fit: cover;
    object-position: center center;
  }

  .image-wrapper.mobile-only .mobile-overlay {
    position: absolute;
    inset: 0;
    background-color: rgba(26, 52, 87, 0.6);
    pointer-events: none;
    z-index: 2;         /* above image, below text */
    opacity: 1;
    transition: opacity 0.3s ease;
  }

  /* keep text visible */
  .slider-card-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    text-align: center;
    color: #fff;
  }



.datetime-panel #available-times-container {
    max-height: 220px !important;
    margin-top:0 !important;
}
select.option-select {
height:40px;
}
  .slider-card {
    flex: 0 0 calc(100% / 1.5);
}
  .tt-post__media{
    display:none;
  }
  .tt-post__container {
    display: block;
    min-height: unset;
  }
  .product-custom-container {
    grid-template-columns: 1fr;
  }

  .product-custom__info {
    grid-template-columns: 1fr;
  }
  .product-custom__media media-gallery, .product-custom__media slider-component, .product-custom__media ul.product__media-list, .product-custom__media li.product__media-item, .product-custom__media .product-media-container, .product-custom__media .product__media {
    width: 100vw;
}
  .grid--peek.slider .grid__item:first-of-type {
        margin-left: 0 !important;
    }
  .product-custom__media {
    display: block !important;
    height:100%;
    min-height: unset;
  }
  .hero-image-container{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 50vh;
    overflow:hidden;
  }
  .product-custom__main-info {
    padding: 3rem 2rem;
}
  .right-column-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    padding: 1rem 4rem 4rem;
}
  .right-panel-card img {
    max-width: 100px;
}
  .right-column-headline {
    padding: 3rem 0 0;
    font-size: 1.5rem;
}
  .product-faq__container {
    display: block;
}
  .product-faq__media {
    overflow: hidden;
    height: 30vh;
}
  .mobile-title-faq{
    position:absolute;
    top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  }
  .product-title-faq-mobile{
    color:#fff;
    font-family: "ivypresto-display", serif;
font-weight: 100;
font-style: normal;
  font-size: 3rem;
  margin:0 !important;
  line-height: 1;
    width: 100%;
    text-align: center;
    z-index: 9;
  }
  .faq-overlay-wrapper {
  position: relative;
}

.faq-overlay-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(26, 52, 87, 0.8);
  z-index: 1;
}

}


/* Locations */

.location-cards__container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  padding: 4rem 2rem 6rem;
}

.location-cards__card {
  background: #F7F6FB;
  text-align: center;
  overflow: hidden;
  border: 0.5px solid #1A3457;
}

.location-cards__media {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  margin-bottom: 1rem;
}

.location-cards__html {
  padding:0 2rem;
  font-size: 1rem;
  min-height:120px;
  align-items: center;
  justify-content: center;
}

.location-cards__button {
  display: inline-block;
  background: #1a3e7c;
  color: white;
  padding: 1rem 2rem;
  text-decoration: none;
  width:100%;
    font-family: 'Spartan', sans-serif;
    font-weight: 600;
    text-align:center;
  font-size: 1.25rem;
  text-transform: uppercase;
}

.location-cards__button:hover {
  background-color: #222;
}

.two-col-info__content a{
  color:#1a3457 !important;
}

@media (max-width: 768px) {
  .location-cards__container {
    grid-template-columns: 1fr;
  }
}

.location-cards__html p{
  font-size:1.25rem;
}

.two-col-info__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 70vh;
}

.two-col-info__media {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.two-col-info__image,
.two-col-info__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.two-col-info__content {
  padding: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 600px;
    margin: 0 auto;
}

.two-col-info__headline {
  font-size: 5.5rem;
  margin-bottom: 1.5rem;
}

.two-col-info__body {
  margin-bottom: 2rem;
  padding-top: 2rem;
}

.two-col-info__columns {
  display: flex;
  gap: 4rem;
  margin-bottom: 2rem;
}

.two-col-info__col {
  flex: 1;
}

@media (max-width: 768px) {
  .two-col-info__container {
    display:block;
  }

  .two-col-info__media {
    aspect-ratio: auto;
  }
}

.two-col-info__content p{
  font-size:1.25rem !important;
}

.two-col-info__content h5{
  padding-top:1rem;
}

.image-layout-content__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  height: 80vh;
  align-items: stretch; /* Ensure columns stretch to full height */
}

.image-layout-content__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  height: 100%;
}

.tall-image {
  grid-row: 1 / span 2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block; /* Avoid inline image whitespace */
}

.stacked-images {
  display: flex;
  flex-direction: column;
  height: 80vh;
}

.stacked-images img {
  flex: 1 1 0;
  width: 100%;
  object-fit: cover;
  display: block;
  height:40vh;
}


/* ---------- Responsive (Mobile) ---------- */
@media (max-width: 767px) {
  .image-layout-content__grid {
    display: grid;
    grid-template-columns: 1fr; 
    grid-template-rows: auto; 
  }

  .tall-image {
    grid-row: auto;
    height: auto;
  }

  .stacked-images {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto; 
    height: auto;
  }

  .stacked-images img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
  }
  .image-layout-content__container {
  height: unset !important;
  display: flex;
        flex-direction: column;
}
.image-layout-content__images {
    height: unset !important;
    order: 1;
}
.image-layout-content__text {
        order: 2; 
    }

.header {
    grid-template-columns: 1fr 1fr 1fr 1fr;
}


}


.image-layout-content__text {
  padding: 4rem;
  max-width: 600px;
    margin: 0 auto;
  display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    height:80vh;
}

.image-layout-content__images{
  height:80vh;
}

.image-layout-content__headline {

  margin-bottom: 1rem;
  padding-bottom:1.25rem;
}

.image-layout-content__subheadline {
  font-size: 1.75rem;
  margin-bottom: 1rem;
}

.image-layout-content__body {
  margin-bottom: 1.5rem;
  padding:2rem 0;
}

.image-layout-content__body p{
  font-size:1.25rem;
}

.stacked-section__media {
  width: 100%;
  height: 70vh;
  overflow: hidden;
}

.stacked-section__media img,
.stacked-section__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.stacked-section__content {
  padding: 4rem 2rem;
  max-width: 1000px;
  margin: 0 auto;
}

.stacked-section__headline {
  text-align: left;
  margin-bottom: 2rem;
  padding-left:2rem;
}

.stacked-section__columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  padding:4rem 2rem 4rem;
}

.footer-block__details-content p{
  color:#fff;
}

.stacked-section__column {
  font-size: 1.25rem;
  line-height: 1.6;
}

@media (max-width: 768px) {
  .stacked-section__columns {
    grid-template-columns: 1fr;
  }
}

.hero-two-col__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 70vh;
  align-items: center;
}

.hero-two-col__text {
  padding: 2rem 4rem;
  max-width:600px;
  margin:0 auto;
}

.hero-two-col__text h1 {
  font-size: 5.5rem;
  margin-bottom: 1rem;
  padding-bottom:1rem;
}

.hero-two-col__body {
  padding-top: 2rem;
  line-height: 1.6;
}

.hero-two-col__media {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.hero-two-col__image,
.hero-two-col__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 767px) {
  .hero-two-col__container {
    grid-template-columns: 1fr;
  }

  .hero-two-col__media {
    order: -1;
  }
}

.centered-text__container {
  max-width: 600px;
  margin: 0 auto;
  padding: 6rem 1rem 4rem;
}

.centered-text__headline {
  font-size: 5.5rem;
  padding-bottom: 1.5rem;
  text-align: center;
}

.centered-text__body {
  padding-top: 2rem;
  line-height: 1.6;
}

.three-col-repeater__container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 4rem 1rem;
}

.three-col-repeater__headline {
  font-size: 2.5rem;
  padding-bottom: 3rem;
  text-align: center;
}

.three-col-repeater__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 2rem;
}

.three-col-repeater__card {
  border: 1px solid #1A3457;
  background-color: #F3F4ED;
}

.three-col-repeater__card-headline {
  font-size: 1.5rem;
  margin-bottom: 1rem;
  padding:2.5rem 2rem 2rem;
  border-bottom: 1px solid #1A3457;
  text-align: center;
}

.three-col-repeater__card-body {
  font-size: 1.25rem;
  line-height: 1.6;
  padding:1.5rem 4rem;
}

.three-col-repeater__card h5{
  line-height:1 !important;
}

.scroll-text__container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 70vh;
  align-items: stretch;
}

.scroll-text__media {
  position: relative;
  overflow: hidden;
  height: 80vh;
}

.scroll-text__image,
.scroll-text__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.scroll-text__content {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 6rem 4rem 4rem;
  overflow-y: auto;
  height: 80vh;
  max-width: 800px;
  margin: 0 auto;
  box-sizing: border-box;
}

.scroll-text__headline {
  font-size: 5.5rem;
  padding-bottom: 2rem;
}

.scroll-text__body {
  font-size: 1.25rem;
  line-height: 1.6;
  overflow-wrap: break-word;
}

.scroll-text__content::-webkit-scrollbar {
  width: 6px;
}

.scroll-text__content::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 3px;
}

@media (max-width: 768px) {
  .scroll-text__container {
    grid-template-columns: 1fr;
  }

  .scroll-text__content {
    max-height: none;
    min-height: auto;
    padding: 4rem 2rem;
  }
  .hero-two-col__text {
    margin: 0 auto;
    padding: 4rem 2rem 2rem;
}
  .centered-text__container {
    padding: 2rem;
}
  .three-col-repeater__container {
    padding: 2rem;
}

}

.scroll-text__body h3, .scroll-text__body h4, .scroll-text__body h5{
  padding:1rem 0;
}

.section-nav-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 85vh;
  max-height: 85vh;
}

.section-nav-grid ul{
  list-style-type: disc !important;
}

.section-nav-left {
  position: relative;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 85vh;
  max-height: 85vh;
  padding: 2rem 4rem;
  color: white;
   font-family: 'Spartan';
}

.section-nav-left::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(26, 52, 87, 0.8);
  z-index: 1;
  pointer-events: none;
}

.section-nav-left-inner {
  position: relative;
  z-index: 2;
  max-width: 600px;
  margin: 0 auto;
  width: 100%;
  text-align: left;
}

.section-nav-left-inner h2,
.section-nav-left-inner h5,
.section-nav-left-inner a,
.section-nav-left-inner div {
  color: white;
}

.section-nav-link {
  font-weight: bold;
  text-decoration: underline;
  display: block;
  margin: 1rem 0;
  color: white;
}

.section-nav-right {
  overflow-y: auto;
  padding:4rem 2rem;
  min-height: 85vh;
  max-height: 85vh;
  background: #ECF3FE;
  color: #1A3457;
  max-width:800px;
  margin:0 auto;
}

.section-nav-block {
  margin-bottom: 2rem;
}

.section-nav-block li{
  font-family: 'Spartan'; sans-serif;
  font-size: 1.5rem;
}

.section-nav-block h1{
  font-size:30px !important;
}

.section-nav-left-inner h2{
  font-size:3.5rem;
  padding-bottom:4rem;
  font-family: Spartan, sans-serif;
    font-weight: 400;
    font-style: normal;
}

.section-nav-left-inner h5{
  font-family: Spartan, sans-serif;
    font-weight: 700;
    font-style: normal;
}

.section-nav-left-inner p{
  font-size:1.25rem;
  color: #fff;
}

.section-nav-block p{
  font-size:1.5rem;
  font-weight: 400;
}

.section-nav-html{
padding-bottom:3rem;
  color: #fff;
}

.section-nav-html h6{
  color:#fff;
}

.section-nav-left-inner a{
  font-size:1.25rem;
  color:#fff;
}

.section-nav-left-inner a:hover{
  color:#1A3457;
}

.accordion-tabs-faq {
    border-top: .5px solid #1A3457;
  color:#1A3457;
}

#accordion .accordion-trigger{
  color: #1a3457;
}

#accordion .accordion-content{
  color: #1a3457;
}

@media (max-width: 768px) {
  .section-nav-grid {
    grid-template-columns: 1fr !important;
    min-height: unset;
    max-height: unset;
}
  .section-nav-right {
    min-height: unset;
    max-height: unset;
    padding: 0;
}
  .section-nav-left {
    min-height: unset;
    max-height: unset;
    padding: 4rem;
  }
  .section-nav-html {
    padding-bottom: 0;
}
  .accordion-trigger {
  display: flex;
        align-items: center;
        cursor: pointer;
        font-size: 1.75rem;
        padding: 2.5rem 2rem 2rem;
        border-top: 0.5px solid #1A3457;
        font-weight: 400;
        font-family:'Spartan', sans-serif;
}
  .accordion-trigger-faq .icon {
    padding-right: 1rem;
}
  .accordion-trigger-faq {
  display: flex;
  align-items: center;
  cursor: pointer;
  font-size: 1.25rem;
  padding: 2rem 1rem;
  border-top: 1px solid #1A3457;
}

.accordion-icon {
  font-size: 1.25rem;
  transition: transform 0.3s ease;
  padding-right: 1rem;
}

#accordion .accordion-content {
  display: none;
  padding: 0 2rem 2rem;
}

#accordion .accordion-content.active {
  display: block;
}
  .section-nav-block {
  margin-bottom: 0;
}
.product-custom__main-info a.number_one__button{
  width:100%;
}
h3.recommended-card__title {
    line-height:1.05 !important;
    font-size: 2.25rem !important;
}
}

/* Related Products */

.related-products-2025{
  padding:2rem;
}

.related-products__heading {
  text-align:center;
  padding:2rem 0;
  font-family: 'Spartan';
  font-weight: 400;
  font-style: normal;
  font-size:3.5rem;
}

h3.recommended-card__title{
  text-align:center;
  font-weight: 600;
  font-size:2.25rem;
  text-transform:uppercase;
  color:#1A3457;
  line-height: 1.25;
  letter-spacing:-1px;
}

p.recommended-card__type{
  text-align:center;
  font-weight: 400;
  font-size:1rem;
  text-transform:uppercase;
  margin-bottom:0 !important;
}

.recommended-card__description{
  padding:0;
  font-weight: 400;
  font-size:1.25rem;
  font-family: 'Spartan', sans-serif;
  line-height: 1.5;
  min-height:100px;
}

.collection-slider .recommended-card__description{
  min-height:85px;
}

.recommended-card{
  background-color:#fff;
      margin-bottom: 3rem;
}


.recommended-card__content{
  color:#1A3457;
  padding:1rem 2rem 0;
}

.product-grid-2025{
  padding:0 2rem;
}

.grid-2025{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 2rem;
    padding: 0;
    list-style: none;
  column-gap: 2rem;
}

.recommended-card__title_wrapper{
  height:60px;
  display:flex;
  align-items:center;
  justify-content: center;
}



/* Blog */

.featured-article {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 70vh;
  align-items: center;
  overflow: hidden;
}

.featured-article__media {
  width: 100%;
  height: 100%;
  position: relative;
}

.featured-article__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.featured-article__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start; 
  height: 100%;
  padding: 4rem;
  max-width:650px;
  margin:0 auto;
}

.featured-article__tag {
  font-size: 0.875rem;
  text-transform: uppercase;
  color: #1A3457;
  margin-bottom: 0.5rem;
}

.featured-article__excerpt {
  margin-top: 1rem;
  font-size: 1rem;
  color: #1A3457;
  font-size:1.5rem;
}

.blog-feed{
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

.blog-landing .blog-feature-slider__header {
    padding-top: 0.75rem;
}

.blog-card a{
  text-decoration:none;
  color:#1A3457;
}

.blog-card{
  border-top: 0.5px solid #1A3457;
  border-right: 0.5px solid #1A3457;
  width: 33.3vw;
}

.blog-landing {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}

.blog-card__image {
  width: 100%;
  height: 400px;
  overflow: hidden;
}

.blog-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.blog-card__content{
  padding:2rem;
  border-top: 0.5px solid #1A3457;
}

h2.blog-card__title{
  line-height:1.5 !important;
}

p.blog-card__excerpt{
  font-weight:400 !important;
  font-size: 1.5rem;
}

.blog__category {
    font-size: 1rem;
    color: #1A3457;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.featured-article__content a{
  text-decoration: none;
  color:#1A3457;
}

.featured-article__content h2{
  line-height:1.5;
}

.featured-article__content h3{
  font-size: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}


/* Blog Article */

.article-header-image {
  width: 100%;
  height: 70vh;
  overflow: hidden;
}

.article-header-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.article-content {
  max-width: 800px;
  margin: 0 auto;
  padding: 4rem 1rem 8rem;
}

.article-tags, .article-title, .article-date{
  text-align:center;
  padding: 1rem 0;
}

.article-title h1 {
  font-size: 4.5rem;
  margin-top: 4rem;
  color: #1A3457;
  
}

.article-tags h3 {
  font-size: 1.5rem;
  color: #1A3457;
  margin: 1rem 0;
}

.article-date p {
  font-size: 1.25rem;
  color: #1A3457;
}

.article-body a{
  text-decoration:none;
  color: #1A3457;
}

.article-body{
  margin-top: 2rem;
  line-height: 1.7;
  text-transform: none !important;
  font-size: 1.25rem;
  color: #1A3457;
}

.article-body h4{
  text-transform: none !important;
  font-size: 1.5rem;
  line-height: 1.5;
}

.article-share {
  margin-top: 2rem;
}

.article-body img{
  display:none;
  width: 100%;
    padding-bottom: 3rem;
}

#shopify-section-template--16523238572095__select_collection_carousel_neat_W8ezfU .collection-slider-section-neat{
  padding-right: 2rem;
}

#shopify-section-template--16523238572095__select_collection_carousel_neat_W8ezfU .recommended-card-neat__image-wrapper{
  height:300px;
}

/* Choose Your Related Products */

.choose-related-products-container{
  background-color:#1A3457;
}

.choose-related-products-container h2{
  color:#fff;
  padding-top:4rem;
}

.card__inner{
  height:350px;
}

.grid-choose-related-products{
  padding:2rem 0 8rem;
  display:grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-column-gap:2rem;
}

.collection-slider-section .recommended-card__image {
  height: auto;
  aspect-ratio: 4 / 5;
  object-position: 50% 30%;
}

.recommended-card__image {
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  object-position: 50% 30%;
  display: block;
}

.realted-card-columns-specific{
  font-size: 1.25rem;
  line-height: 1.5;
}

/* Slider Stuff */

.after-1024-only{
  display:block;
}

.up-to-1024-only{
  display:none;
}

.choose-related-products-slider-wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  padding: 2rem 0;
}

.choose-related-products-slider {
  display: flex;
  gap: 2rem;
  scroll-snap-type: x mandatory;
  width: max-content;
  padding-left:2rem;
}

.recommended-card {
  flex: 0 0 calc(100% / 3.5);
  scroll-snap-align: start;
  box-sizing: border-box;
  max-width: 100%;
}

@media (max-width: 1024px) {
  .recommended-card {
    flex: 0 0 28.5vw; /* 100 / 3.5 = 28.57 */
    max-width: 28.5vw;
  }
  .after-1024-only{
    display:none;
  }
  
  .up-to-1024-only{
    display:block;
  }
  
}

@media (max-width: 768px) {
  a.book_now__button {
    padding: 1.5rem 0 1rem;
  }
  .recommended-card {
    flex: 0 0 40vw; /* 100 / 2.5 = 40 */
    max-width: 40vw;
  }

  #shopify-section-template--16523238572095__select_collection_carousel_neat_W8ezfU .recommended-card-neat__image-wrapper {
    height: 200px;
}
.grid-choose-related-products{
  display:block;
}
}

@media (max-width: 600px) {
  .recommended-card {
    flex: 0 0 66.66vw;
    max-width: 66.66vw;
  }
}


/* All Treatments Page */
.at-banner-container {
  height: 50vh;
  width: 100%;
  overflow: hidden;
  position: relative;
}

.at-banner-inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: 100%;
  position: relative;
}

.at-media {
  position: relative;
  max-height: 50vh;
  overflow: hidden;
}

.at-media {
  position: relative;
  max-height: 50vh;
  height: 50vh;
  width: 100%;
  overflow: hidden;
}

.at-media video,
.at-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.at-media.overlay-enabled::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(26, 52, 87, 0.8);
  z-index: 1;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.at-banner-navigation {
  position: absolute;
  top: 10rem;
  left: 8rem;
  transform: translateY(-50%);
  z-index: 2;
  color: white;
}

.at-banner-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.at-banner-menu li a {
  color: white;
  text-decoration: none;
  font-weight: 600;
}

.treatment-dropdown-nav {
  position: relative;
  display: inline-block;
}

.dropdown-toggle {
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 3rem;
    padding: 1.5rem 2rem 1rem;
    background-color: #ECF3FE;
    color:#1A3457 ;
}

.dropdown-toggle h4 {
  margin: 0;
  font-size: 1.25rem;
}

.dropdown-arrow {
  font-size: 1.25rem;
  transition: transform 0.3s ease;
}

.dropdown-menu {
  display: none;
  position: absolute;
    top: 100%;
    left: 0;
    border: 0.5px solid #1A3457;
    z-index: 9999 !important;
    padding: 0;
    min-width: 280px;
    margin: 0;
    background-color: #F3F4ED;
    box-shadow: none;
    text-transform: uppercase;
    color: #1A3457;
}

.dropdown-item {
  border-bottom: 0.5px solid #1A3457;
  padding: 0;
  margin: 0;
}

.dropdown-item a {
  display: block;
  width: 100%;
  padding: 0.5rem 2rem;
  color: #1A3457;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.dropdown-item:hover {
  background-color: #1A3457; 
}

.dropdown-item a:hover {
  background-color: #1A3457;
  color: #ECF3FE;
}

@media (max-width: 600px) {
  .at-banner-navigation {
    top: 8rem;
    left: 4rem;
  }
}


/* Collection Slider */

.collection-slider-section{
  background-color:#1A3457;
  padding-left:2rem;
  padding-bottom:6rem;
}

.collection-slider-wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
}

.collection-slider {
  display: flex;
  gap: 2rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.recommended-card {
  scroll-snap-align: start;
  box-sizing: border-box;
}

@media (max-width: 1024px) {
  .recommended-card {
    flex: 0 0 28.57%; 
    max-width: 28.57%;
  }
}

@media (max-width: 768px) {
  .recommended-card {
    flex: 0 0 90%; 
    max-width: 100%;
    height:100%;
  }
}

@media (max-width: 550px) {
  
  .collection-grid-wrapper {
    padding: 2rem 2rem 8rem !important;
}
.treatments-collection-grid .recommended-card__description{
  min-height:unset !important;
}
.related-products-2025 .recommended-card__description{
  min-height:unset !important;
}
.related-products-2025 .recommended-card__title_wrapper {
    height: unset !important;
}
.treatments-collection-grid .recommended-card__title_wrapper {
  height:unset !important;
}
}


h2.collection-slider-heading{
  color:#fff !important;
}

.collection-slider-header-wrapper-2025{
  padding: 2.5rem 2rem 2rem;
}

/* Collection Treatments */

.treatments-collection-grid .custom-collection-grid-section{
  background-color:#1A3457;
  color:#fff;
}
.treatments-collection-grid .recommended-card__type{
  display:none;
}

.collection-hero__text-wrapper{
  padding: 4rem 0 20px;
  text-align:center;
}
.collection-hero__title {
  font-size: 55px;
}

.collection-grid-wrapper{
  padding:2rem 4rem 8rem;
}



/* PopUp Feature */
.popup-up {
  position: fixed;
  bottom: 10rem;
  left: 10rem;
  background-color: #007bff;
  color: white;
  font-size: 18px;
  padding: 10px 20px;
  cursor: pointer;
  border-radius: 5px;
  z-index: 9999; /* Ensure it's clickable above everything */
}

.popup-feature {
  display: block;
  position: fixed;
  bottom: 6rem;
  left: 6rem;
  width: 135px;
  height: 200px;
  z-index: 999;
  background-color: transparent;
}

.popup-content {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  overflow: hidden; 
  border: 1px solid #1A3E7C;
  border-radius: 1rem;
}

.popup-content video,
.popup-content img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; 
  z-index: 1; 
}

.popup-html,
.popup-cta-button {
  z-index: 9; 
  text-align: center;
  display: block;
  position: relative;
}

.popup-html p{
  color:#fff !important;
}

.popup-content::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(26, 52, 87, 0.8); 
  z-index: 2; 
}

.popup-close {
  position: fixed;
  bottom: 3rem;
  left: 3rem;
  font-size: 10px;
  background: #1A3E7C;
  border: none;
  cursor: pointer;
  z-index: 3;
  color: #fff;
  padding: 1rem 1.25rem;
  border-radius: 5rem;
  border: 1px solid #1A3457;
}

.hidden {
  display: none;
}

.popup-html p {
  text-align: left;
  font-size: 1.25rem;
  font-weight: 200;
}

.popup-inner {
  display: block;
  position: relative;
  padding: 1rem;
}

.popup-inner a {
  background-color: white;
  border: 1px solid #1A3E7C;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.25rem;
  padding: 0.5rem 0;
  color: #1A3E7C;
}

.popup-inner a:hover {
  background-color: #1A3E7C;
  border: 1px solid #222;
  color: #fff;
}

.popup-up {
    position: fixed;
    bottom: 2rem;
    left: 2rem;
    background-color: transparent;
    color: #fff;
    font-size: 18px;
    padding: 1rem;
    cursor: pointer;
    border-radius: 5px;
    z-index: 999;
    width: 96px;
    height: 135px;
}

.popup-content-up {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    overflow: hidden;
    border: 1px solid #1A3E7C;
    border-radius: 1rem;
}

.popup-content-up:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #1a345799;
    z-index: 2;
}

.popup-content-up video, .popup-content-up img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.popup-html-up {
    z-index: 9;
    display: block;
    position: relative;
    line-height: 1.5;
    font-size: 1rem;
    text-transform: uppercase;
    text-align: left;
}



/* CTA Banner */

.unique-video-banner-wrapper {
  position: relative;
  width: 100vw;
  height: 70vh;
}

.unique-video-banner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
}

.unique-video-banner__media {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;  /* Center the image/video */
  transform: translate(-50%, -50%);  /* Center the media within the container */
  z-index: 1;
}

.unique-video-banner__media.has-unique-overlay::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #1a345799;
  z-index: 2;
}

.unique-video-banner__content {
  position: absolute;
  top: 0;
  left: 6rem;
  width: 100%;
  height: 100%;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  text-align: center;
  text-align: left;
    max-width: 600px;
}

.unique-video-banner__title {
    margin: 0 !important;
    line-height: 1;
    font-style: normal;
  margin-bottom: 1rem;
  color:#fff !important;
}

.unique-video-banner__text {
  font-size: 1.5rem;
  margin-bottom: 1rem;
}

.unique-video-banner__inner {
  display: inline-block;
  position: relative;
}

.stacked-section__column h4{
  font-size: 2rem;
}

.unique-number_one__button {
  background-color: #007bff;
  color: white;
  padding: 10px 20px;
  text-decoration: none;
  border-radius: 5px;
}

.unique-number_one__button:hover {
  background-color: #0056b3;
}

a.number_three__button {
    display: inline-block;
    padding: 1.5rem 4rem 1rem;
    background: #fff;
    color: #1a3457;
    text-decoration: none;
    transition: background .3s ease;
    text-transform: uppercase;
    font-family: 'Spartan', sans-serif;
    font-weight: 600;
    text-align: center;
    font-size: 1.25rem;
}
a.number_three__button:hover {
    background: #1A3E7C;
    color: #fff;
    text-decoration: none;
    transition: background .3s ease;
    text-transform: uppercase;
    font-family: 'Spartan';
    font-weight: 600;
    text-align:center;
    font-size:1.25rem;
  border:0.5px solid transparent;
  }

.unique-video-banner__text p{
  font-weight:400 !important;
  margin: 3rem 0;
  color:#fff;
}

@media (max-width: 768px) {
    .unique-video-banner__content {
      left: 2rem;
      right:2rem;
      max-width: calc(100% - 4rem);
  }
  .featured-article{
    display:block;
    min-height: unset;
    overflow: visible;
    height: unset;
  }
  .featured-article__media{
    height:300px;
    border-bottom:0.5px solid #1a3457;
  }
  .blog-feed{
    display:block;
  }
  .blog-card{
    width:100%;
  }
  .product-description-grid{
    display:block !important;
    padding:0 !important;
  }
  .product-description-col-1{
    padding:1rem;
    border-bottom:0.5px solid #1a3457;
    min-height:155px;
  }
  .realted-card-columns-specific-right{
    border-left:0 !important;
    padding:1rem !important;
  }
  .treatment-cards-text-inner{
    padding: 2rem;
    min-height: 178px;
}
}

@media (max-width: 600px){
  .header-image-button-grid {
    grid-template-columns: 1fr !important;
    gap:0 !important;
  }
  .header-image-button-card{
    margin:2rem;
  }
}


/* Header Image Button repeater */
.header-image-button-wrapper {
  width: 100%;
  padding: 8rem 0;
}

.header-image-button-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 4rem;
  max-width:1100px;
  margin:0 auto;
}

.header-image-button-card {
  background: #F3F4ED;
  text-align: center;
  border:0.5px solid #1A3E7C;
}

.header-image-button-card__content {
  padding: 0;
  margin: 0;
}

.header-image-button-card__media-wrapper {
  width: 100%;
  height: 300px; 
  overflow: hidden;
  position: relative;
}

.header-image-button-card__media {
  width: 100%;
  height: 100%;
  object-fit: cover; 
}

.header-image-button-card h4{
  padding:2rem;
  border-bottom:0.5px solid #1A3E7C;
}

.header-image-button-card a.number_two__button {
width:100%;
}



/* Full Width headline */

.full-width-headline{
  padding:4rem 6rem;
  text-align:center;
  font-size:3rem;
}

/* Collection Slider Neat */
.recommended-card-neat {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  border: 0.5px solid #1A3457;
  background: #fff;
  overflow: hidden;
  cursor: pointer;
  margin-bottom: 2rem;
}

.recommended-card-neat__link {
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
}

.recommended-card-neat__image-wrapper {
  position: relative;
  overflow: hidden;
}

.recommended-card-neat__image {
  width: 100%;
  height: auto;
    display: block;
  transition: transform 0.3s ease;
}

.recommended-card-neat__content {
  position: relative;
  padding: 1rem 2rem;
  z-index: 2;
  border-top: 0.5px solid #1A3457;
}

.recommended-card-neat__type {
  font-size: 1rem;
  color: #1A3457;
  text-transform:uppercase;
}

.recommended-card-neat__title_wrapper {
  margin-top: 0.5rem;
}

.recommended-card-neat__title {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height:1.5;
}

/* Shop page cards: Add to Bag layout (matches collection product cards) */
.collection-slider-neat .recommended-card-neat { border: none; background: transparent; }
.collection-slider-neat .recommended-card-neat__content { border-top: none; padding: 1.2rem 0 0; background: transparent; }
.collection-slider-neat .recommended-card-neat__title_wrapper { margin: 0 0 1.2rem; }
.collection-slider-neat .recommended-card-neat__title { color: #1A3457; }
.recommended-card-neat__form { margin: 0; }
.recommended-card-neat__bag { display: flex; justify-content: space-between; align-items: center; width: 100%; min-height: 47px; padding: 10px 15px; border: 0; border-radius: 0; background: #1A3457; color: #FFFFFF; font-family: 'Spartan', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; text-decoration: none; cursor: pointer; }
.recommended-card-neat__bag-price { font-weight: 700; }
.collection-slider-neat .recommended-card-neat__image-wrapper { background: #1B3D7C; }
/* All Treatments page: light background like About page */
[id^="shopify-section-template--16510497161279__"] .collection-slider-section { background: #ECF3FE; }
[id^="shopify-section-template--16510497161279__"] .collection-slider-section .collection-slider-heading { color: #1A3457 !important; }
[id^="shopify-section-template--16510497161279__"] a.number_one__button { background: #1A3457; color: #FFFFFF; }
[id^="shopify-section-template--16510497161279__"] a.number_one__button:hover { background: #222222; }
/* Treatment collection pages: light background like All Treatments page */
[id^="shopify-section-template--16517339545663__"] .collection-hero { background: #ECF3FE; }
[id^="shopify-section-template--16517339545663__"] .collection-hero__title { color: #1A3457; }
[id^="shopify-section-template--16517339545663__"] .custom-collection-grid-section { background: #ECF3FE; }
/* /collections/products only: light background like About page */
:is(html:has(link[rel="canonical"][href$="/collections/products"]), html:has(link[rel="canonical"][href*="/collections/products?"])) main :is(.collection-hero, .gradient) { background: #ECF3FE; }
:is(html:has(link[rel="canonical"][href$="/collections/products"]), html:has(link[rel="canonical"][href*="/collections/products?"])) main :is(.collection-hero__title, .card__heading a, .pagination__item) { color: #1A3457; }
:is(html:has(link[rel="canonical"][href$="/collections/products"]), html:has(link[rel="canonical"][href*="/collections/products?"])) main :is(.quick-add__submit--with-price, .quick-add__submit--with-price:hover) { background-color: #1A3457 !important; color: #FFFFFF !important; }
:is(html:has(link[rel="canonical"][href$="/collections/products"]), html:has(link[rel="canonical"][href*="/collections/products?"])) main .card__inner.gradient { background: #1A3E7C; }
:is(html:has(link[rel="canonical"][href$="/collections/products"]), html:has(link[rel="canonical"][href*="/collections/products?"])) main .card__heading { font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:is(html:has(link[rel="canonical"][href$="/collections/products"]), html:has(link[rel="canonical"][href*="/collections/products?"])) main :is(.card__heading, .card__heading a) { font-weight: 600; letter-spacing: 0.3px; }

/* Grid layout for slider */
.collection-slider-wrapper-neat {
  width: 100%;
}

.collection-slider-neat {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); 
  gap: 1.5rem;
  justify-items: center;
}

/* Desktop: 4.5 products per row */
@media (min-width: 990px) {
  .collection-slider-neat {
    grid-template-columns: repeat(4, 1fr); 
  }
}

/* Tablet/iPad: 3.5 products per row */
@media (max-width: 990px) {
  .collection-slider-neat {
    grid-template-columns: repeat(3, 1fr); 
  }
}

/* Mobile: 1.5 products per row */
@media (max-width: 600px) {
  .collection-slider-neat {
    grid-template-columns: repeat(2, 1fr); 
  }
}

.collection-slider-section-neat {
  padding-left: 2rem;
  padding-bottom: 6rem;
}

.collection-hero__description{
  margin: 0 auto;
  padding-top: 4rem;
}

/* Headline */
.headline-h1-h2-container {
  text-align: center;
  margin: 0;
  padding:2rem 4rem 0;
}

.headline-h1-h2 h1{
  font-size: 5.5rem;
}

.headline-h1-h2 h2 {
  font-size: 2.5rem;
  font-weight: 600;
}

.with-borders-related{
  border-top: 0.5px solid #1a3457;
  padding: 0 1rem;
}

.realted-card-columns-specific-right{
  padding-left:1rem;
  border-left:0.5px solid #1a3457;
  min-height:125px;
  height: 100%;
}

.product-description-grid with-borders-related li{
  letter-spacing:-0.5px;
}

.realted-card-columns-specific-left{
  padding-right:1rem;
}

.product-description-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  font-family: Spartan, sans-serif;
  min-height:135px;
}

.recommended-card__title_wrapper a{
  text-decoration:none !important;
}

.recommended-card__title_wrapper a:hover{
  text-decoration:underline !important;
  color: #1a3457;
}

.metafield-rich_text_field {
  color:#1a3457;
  padding:1rem 0;
}

.metafield-rich_text_field ul{
  list-style-type: disc !important;
  margin-top: 0 !important;
  padding-inline-start: 20px !important;
  letter-spacing: -0.5px;
}

.metafield-rich_text_field p{
  margin:0 !important;
}

.accordion-tabs ul{
  list-style-type: disc !important;
  margin-top: 0 !important;
}

@media (max-width: 600px){
  .realted-card-columns-specific {
    font-size: 1.5rem;
    height: 100%;
}
}

#insta-feed h2{
  padding:2.5rem 0 2rem;
}

.klaviyo-form-wrapper button{
  font-family: 'Spartan', sans-serif !important;
  font-weight: 600 !important;
  font-style: normal !important;
  text-transform:uppercase !important;
  padding:0 1rem !important;
  font-size:1.5rem !important;
}

.kl-private-reset-css-Xuajs1{
  padding:0 !important;
}

.kl-private-reset-css-Xuajs1{
  border-radius:0px !important;
  font-family: 'Spartan', sans-serif !important;
  font-weight: 200 !important;
}

input#email_01JZ0QR6KRA7VTYP3NMMWPS47R{
  font-family: 'Spartan', sans-serif !important;
}












/* Product page pill badge shape override */
.product__best-for li,
.product__description li[style*="border-radius: 999px"],
.product__description li[style*="border-radius:999px"] {
  border-radius: 8px !important;
  }

  .product__text.caption-with-letter-spacing {
    border-radius: 8px !important;
    }
    

.slider-card-content h2 {
  color: #ffffff;
  margin-top: 5px !important;
  font-size: 40px;
}

.slider-card-content > .uppercase {
  font-family: 'Spartan', sans-serif;
  font-size: 20pt;
}

/* treatment card button square */
.treatments-individual__text a.number_one__button {
  border-radius: 0 !important;
}

/* header logo size */
.header__heading-logo-wrapper {
  width: 84px !important;
}
.header__heading-logo {
  width: 84px !important;
  height: auto !important;
}

/* skin concerns card gap */
.skin-concerns-cards__container {
  gap: 12px;
  padding-left: 12px;
  padding-right: 12px;
  box-sizing: border-box;
}
.skin-concerns-cards-section {
  margin-top: 12px;
}

/* two-col-uneven main headline bold */
.section-two-columns-uneven__inner h2:not([class]) {
  font-weight: 600;
}

/* treatment cards grid gap */
.treatment-cards__grid {
  gap: 12px;
  padding-left: 12px;
  padding-right: 12px;
  padding-bottom: 12px;
  box-sizing: border-box;
}

/* accordion divider inset */
.accordion-card__trigger,
button.accordion-card__trigger_left_side {
  display: block;
  width: calc(100% - 40px);
  margin-left: auto;
  margin-right: auto;
}

/* about page hero headline - match product title */
#shopify-section-template--16445513465919__2_col_image_right_3TmBVr h1 {
  font-family: ivypresto-display, serif;
  font-weight: 400;
  font-size: 35pt;
  letter-spacing: 0.9px;
  line-height: 1.1;
}

/* about page - why remedy heading */
#shopify-section-template--16445513465919__choose_cards_U4czG7 .three-col-repeater__headline {
  font-weight: 700;
}

/* about page - meet our founder heading */
#shopify-section-template--16445513465919__2_col_image_left_jQga6q .scroll-text__headline {
  font-weight: 400;
  font-size: 46.67px;
}

/* about page - why remedy card body */
#shopify-section-template--16445513465919__choose_cards_U4czG7 .three-col-repeater__card-body p {
  font-weight: 400;
}

/* about page hero body */
#shopify-section-template--16445513465919__2_col_image_right_3TmBVr .hero-two-col__body h6 {
  font-family: Spartan, sans-serif;
  font-weight: 400;
  font-size: 16px;
}

/* about page - founder body */
#shopify-section-template--16445513465919__2_col_image_left_jQga6q .scroll-text__body p {
  font-weight: 400;
  font-size: 16px;
}

/* about page hero - wider text column */
#shopify-section-template--16445513465919__2_col_image_right_3TmBVr .hero-two-col__container {
  grid-template-columns:minmax(0, 845px) 1fr;
}
#shopify-section-template--16445513465919__2_col_image_right_3TmBVr .hero-two-col__text {
  max-width: 845px;
}
#shopify-section-template--16445513465919__2_col_image_right_3TmBVr .hero-two-col__body {
    max-width: 765px;
  }

/* about page hero - headline to body gap */
#shopify-section-template--16445513465919__2_col_image_right_3TmBVr h1 {
  padding-bottom: 0;
}
#shopify-section-template--16445513465919__2_col_image_right_3TmBVr .hero-two-col__body {
    padding-top: 25px;
}

/* about page journey - headline to body gap */
#shopify-section-template--16445513465919__full_width_text_zCijKc .centered-text__headline {
  padding-bottom: 0;
}
#shopify-section-template--16445513465919__full_width_text_zCijKc .centered-text__body {
  padding-top: 25px;
}

/* about page journey - balanced section padding */
#shopify-section-template--16445513465919__full_width_text_zCijKc .centered-text__container {
        padding-top: 68.5px;
        padding-bottom: 4.5px;
}

/* about page founder - headline to body gap */
#shopify-section-template--16445513465919__2_col_image_left_jQga6q .scroll-text__headline {
  padding-bottom: 0;
}
#shopify-section-template--16445513465919__2_col_image_left_jQga6q .scroll-text__body > *:first-child {
    margin-top: 25px;
}
#shopify-section-template--16445513465919__full_width_text_zCijKc .centered-text__body > *:first-child {
  margin-top: 0;
}

/* all treatments page - hide redundant card category label */
[id^="shopify-section-template--16510497161279__"] .recommended-card__type {
  display: none;
}

/* skin concern pages - section headings semi-bold */     
[id*="__skin_concerns_template"] .section-nav-block h1 { font-weight: 400; font-size: 30pt; }
[id*="__skin_concerns_template"] .section-nav-block > div { padding-top: 12px !important; }
[id*="__skin_concerns_template"] .section-nav-block > div > *:first-child { margin-top: 0; }      

/* Spartan webfont - corrected faces (the blocks at the top of this file never load: the font-family descriptor is invalid and Liquid asset_url does not render in a plain .css asset) */
@font-face { font-family: 'Spartan'; src: url('Spartan-Regular.ttf') format('truetype'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Spartan'; src: url('Spartan-SemiBold.ttf') format('truetype'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Spartan'; src: url('Spartan-Bold.ttf') format('truetype'); font-weight: 700; font-style: normal; font-display: swap; }
/* Treatment page description - 10pt */
.product-custom-section .product-description,
.product-description-grid,
.product-custom-section .treatment-details {
  font-size: 10pt;
}

/* PDP: fee line spacing */
.treatment-fee { margin-top: 12px; }

/* all treatments page - align BOOK NOW buttons across cards */
.collection-slider .recommended-card { display: flex; flex-direction: column; }
.collection-slider .recommended-card .product-description-grid { margin-top: auto; }

/* Concern + treatment card labels — consistent 12pt */
.skin-concerns-cards__card h4.skin-concerns-cards__title,
.treatment-cards__card h4.treatment-cards__card-title {
  font-size: 11pt;
  letter-spacing: 0;
  white-space: normal;
  padding-inline: 0.25rem;
  line-height: 1.2;
  overflow-wrap: break-word;
}

/* Consultation page: treatment cards show Book A Consultation instead of price */ .bk-card .bk-card-price { font-size: 0 !important; background: #EFB851 !important; color: #1A3457 !important; text-align: center !important; padding: 8px 35px !important; line-height: 22.5px !important; } .bk-card .bk-card-price::after { content: "Book A Consultation"; font-family: Spartan, sans-serif; font-size: 12.5px; font-weight: 600; letter-spacing: 0.6px; text-transform: uppercase; }