/** Shopify CDN: Minification failed

Line 412:1 Unexpected "{"

**/
/* Designed + Developed by Bungalow Creative https://www.bungalowcreative.co/*/

/* Fonts */


@font-face {
  font-family: "Didot-Regular";
  src: url("/cdn/shop/files/DidotLT-Headline.eot?v=1743927012");
  src: url("/cdn/shop/files/DidotLT-Headline.eot?v=1743927012?#iefix")
      format("embedded-opentype"),
    url("/cdn/shop/files/DidotLT-Headline.woff2?v=1743927012")
      format("woff2"),
    url("/cdn/shop/files/DidotLT-Headline.woff?v=1743927012")
      format("woff"),
    url("/cdn/shop/files/DidotLT-Headline.ttf?v=1743927012")
      format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "BrandonGrotesque-RegularItalic";
  src: url("/cdn/shop/files/BrandonGrotesque-RegularItalic.eot?v=1743927012");
  src: url("/cdn/shop/files/BrandonGrotesque-RegularItalic.eot?v=1743927012?#iefix")
      format("embedded-opentype"),
    url("/cdn/shop/files/BrandonGrotesque-RegularItalic.woff2?v=1743927012")
      format("woff2"),
    url("/cdn/shop/files/BrandonGrotesque-RegularItalic.woff?v=1743927012")
      format("woff"),
    url("/cdn/shop/files/BrandonGrotesque-RegularItalic.ttf?v=1743927012")
      format("truetype");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "BrandonGrotesque-Regular";
  src: url("/cdn/shop/files/BrandonGrotesque-Regular.eot?v=1743927012");
  src: url("/cdn/shop/files/BrandonGrotesque-Regular.eot?v=1743927012?#iefix")
      format("embedded-opentype"),
    url("/cdn/shop/files/BrandonGrotesque-Regular.woff2?v=1743927012")
      format("woff2"),
    url("/cdn/shop/files/BrandonGrotesque-Regular.woff?v=1743927012")
      format("woff"),
    url("/cdn/shop/files/BrandonGrotesque-Regular.ttf?v=1743927012")
      format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "BrandonGrotesque-Regular";
  src: url("/cdn/shop/files/BrandonGrotesque-Regular.eot?v=1743927012");
  src: url("/cdn/shop/files/BrandonGrotesque-Regular.eot?v=1743927012?#iefix")
      format("embedded-opentype"),
    url("/cdn/shop/files/BrandonGrotesque-Regular.woff2?v=1743927012")
      format("woff2"),
    url("/cdn/shop/files/BrandonGrotesque-Regular.woff?v=1743927012")
      format("woff"),
    url("/cdn/shop/files/BrandonGrotesque-Regular.ttf?v=1743927012")
      format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Avenir-Light";
  src: url("/cdn/shop/files/Avenir-Light.eot?v=1783439620");
  src: url("/cdn/shop/files/Avenir-Light.eot?v=1783439620?#iefix")
      format("embedded-opentype"),
    url("/cdn/shop/files/Avenir-Light.woff2?v=1783439620")
      format("woff2"),
    url("/cdn/shop/files/Avenir-Light.woff?v=1783439620")
      format("woff"),
    url("/cdn/shop/files/Avenir-Light.ttf?v=1783439622")
      format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Avenir-LightOblique";
  src: url("/cdn/shop/files/Avenir-LightOblique.eot?v=1783439620");
  src: url("/cdn/shop/files/Avenir-LightOblique.eot?v=1783439620?#iefix")
      format("embedded-opentype"),
    url("/cdn/shop/files/Avenir-LightOblique.woff2?v=1783439620")
      format("woff2"),
    url("/cdn/shop/files/Avenir-LightOblique.woff?v=1783439620")
      format("woff"),
    url("/cdn/shop/files/Avenir-LightOblique.ttf?v=1783439620")
      format("truetype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

/* Variables */
:root {
  /* Colors */
  --white: #ffffff;
  --black: #000000;
  --gray5: #eeeeee;
  --gray1: #dddddd;
  --gray2: #bbbbbb;
  --gray3: #525252;
  --tan5: #edeae8;
  --tan1: #ddd5cf;
  --tan2: #ad9e94;
  --tan3: #877b73;
  --purple: #917d86;

  /* Typography */
  --letterspacing1: ;
  --bodyfont: "Avenir-Light";
  --subheadingfont: "Avenir-Light";
  --headingfont: "Didot-Regular";
}

html {
  scroll-behavior: smooth;
}

html,
body {
  max-width: 100%;
}

body,
.color-scheme-1,
.color-scheme-2,
.color-scheme-3,
.color-scheme-4,
.color-scheme-5 {
  color: black;
}

h1,
.h1,
.h2,
h2,
.h3,
h3 {
  letter-spacing: 0px;
}

h1 sup{
  font-size: 0.25em;
  top: -0.85em;
  position: relative;
}
h3 sup,.h5 sup{
  top: 1px;
  position: relative;
  font-size: .65em;
}
p sup{
  font-size: 0.5em;
  top: -0.02em;
  position: relative;
}

/* Font Size - XXS */

.price {
  font-size: 0.8rem !important;
}

a.full-unstyled-link,
.text-line-modal-caption,
.footer-copyright,
.bc-before-after-section-caption {
  font-size: 0.9rem !important;
}

/* Font Size - XS */

.header__menu-item,
.announcement-bar__message,
.button,
a.link.link--text.list-menu__item.list-menu__item--link,
.bc-marquee-text,
.testimonial-author,
a.dropdown-column-link,
.field__input::placeholder,
#infiniteoptions-container div > label,
#infiniteoptions-container .spb-label-tooltip,
label.quantity__label.form__label,
.dropdown-column-link,
.bc-testimonial-slider-name,
h2.form-status.caption-large.text-body,
h2.form-status.form-status-list.form__message,
.bc-logo-list-heading,
button.share-button__button,
.full-unstyled-link,
.split-video-div-right-caption,
h2.h3,
.footer-menu-column h3,
.footer-about-column h3,
.mega-menu__link--level-2,
.mega-menu__featured-text,
select#SortBy,
span.facets__summary-label,
.facets__summary,
span#ProductCountDesktop,
legend.form__label,
h3.inline-richtext,
button.link.button-label,
a.underlined-link,
h2.totals__total,
.shoppe-welcome-button,
.bc-social-proof-cta-caption,
h3.testimonial-heading,
.review-link,
.bc-iphone-steps-subheading {
  font-size: 1rem !important;
}

h2.h4.accordion__title.inline-richtext {
  font-size: 1.2rem !important;
}

.split-video-div-right-text,
.rte,
.bc-iphone-steps-section-subheader {
  font-size: 1.5rem !important;
}

/* Heading Styling */
h2.video-heading.h1,
h2,
.h2,
h2.inline-richtext,
h1,
.h1,
.text-line-modal-heading,
.testimonial-text,
h2._textHeading_2aowh_35,
.bc-step-number,
.bc-text-collections-text,
summary#HeaderDrawer-shop,
a#HeaderDrawer-treatments,
a#HeaderDrawer-about,
a#HeaderDrawer-contact,
.menu-drawer__menu-item .link .link--text list-menu__item .focus-inset,
.footer-tagline-text,
.service-item,
.bc-split-testimonials-quote,
.bc-iphone-steps-section-number {
  font-weight: 400;
  letter-spacing: -0.02em !important;
  font-family: var(--font-heading-family) !important;
  text-transform: none !important;
  line-height: 1.2;
}

/* Subheading Styling*/
.header__menu-item,
.announcement-bar__message,
.button,
a.link.link--text.list-menu__item.list-menu__item--link,
.footer__copyright.caption,
.bc-marquee-text,
.studio-caption,
.testimonial-author,
a.dropdown-column-link,
span.blog-post-read-more,
.field__input,
.select__select,
.customer .field input,
.customer select,
span.circle-divider.caption-with-letter-spacing,
a.article-template__link.link.animate-arrow,
span.price-item.price-item--regular,
label.quantity__label.form__label,
.spb-label-tooltip,
th.caption-with-letter-spacing,
th.cart-items__heading--wide.cart-items__heading--quantity.small-hide.caption-with-letter-spacing,
th.small-hide.right.caption-with-letter-spacing,
#infiniteoptions-container div > label,
#infiniteoptions-container .spb-label-tooltip,
.dropdown-column-link,
.bc-testimonial-slider-name,
h2.form-status.caption-large.text-body,
h2.form-status.form-status-list.form__message,
.bc-logo-list-heading,
.menu-drawer__menu-item,
button.menu-drawer__close-button.link.link--text.focus-inset,
button.share-button__button,
p.announcement-bar__message.h5,
.full-unstyled-link,
.split-video-div-right-caption,
.value-text,
h2.h3,
.text-line-modal-caption,
.footer-menu-column h3,
.footer-copyright,
.mega-menu__link--level-2,
.mega-menu__featured-text,
span.facets__summary-label,
.facets__summary,
span#ProductCountDesktop,
legend.form__label,
h2.h4.accordion__title.inline-richtext,
h3.inline-richtext,
button.link.button-label,
a.underlined-link,
h2.totals__total,
.shoppe-welcome-button,
.bc-social-proof-cta-caption,
.bc-before-after-section-caption,
a.menu-drawer__account.link.focus-inset.h5.medium-hide.large-up-hide,
span.mobile-facets__open-label.button-label.medium-hide.large-up-hide,
h2#predictive-search-queries,
h2#predictive-search-products,
button.predictive-search__item.predictive-search__item--term.link.link--text.h5.animate-arrow,
a.bc-animated-promo-bar-text,
.bc-collection-grid-text,
h3.testimonial-heading,
.bc-full-width-image-text-caption,
a.review-link,
.bc-split-testimonials-author,
.bc-iphone-steps-section-subheader,
.testimonial-carousel__author,
.bc-iphone-steps-subheading,
h2.rich-text__heading.rte.inline-richtext.h1.scroll-trigger.animate--slide-in,
.header__menu-item,
.announcement-bar__message,
.button,
a.link.link--text.list-menu__item.list-menu__item--link,
.footer__copyright.caption,
.bc-marquee-text,
.studio-caption,
.testimonial-author,
a.dropdown-column-link,
span.blog-post-read-more,
.field__input,
.select__select,
.customer .field input,
.customer select,
span.circle-divider.caption-with-letter-spacing,
a.article-template__link.link.animate-arrow,
span.price-item.price-item--regular,
.max_quantity,
label.quantity__label.form__label,
.spb-label-tooltip,
th.caption-with-letter-spacing,
th.cart-items__heading--wide.cart-items__heading--quantity.small-hide.caption-with-letter-spacing,
th.small-hide.right.caption-with-letter-spacing,
#infiniteoptions-container div > label,
#infiniteoptions-container .spb-label-tooltip,
.dropdown-column-link,
.bc-testimonial-slider-name,
h2.form-status.caption-large.text-body,
h2.form-status.form-status-list.form__message,
.bc-logo-list-heading,
.menu-drawer__menu-item,
button.menu-drawer__close-button.link.link--text.focus-inset,
button.share-button__button,
p.announcement-bar__message.h5,
.full-unstyled-link,
.split-video-div-right-caption,
.value-text,
h2.h3,
.text-line-modal-caption,
.footer-menu-column h3,
.footer-copyright,
.mega-menu__link--level-2,
.mega-menu__featured-text,
span.facets__summary-label,
.facets__summary,
span#ProductCountDesktop,
legend.form__label,
h2.h4.accordion__title.inline-richtext,
h3.inline-richtext,
button.link.button-label,
a.underlined-link,
h2.totals__total,
.shoppe-welcome-button,
.bc-social-proof-cta-caption,
.bc-before-after-section-caption,
a.menu-drawer__account.link.focus-inset.h5.medium-hide.large-up-hide,
span.mobile-facets__open-label.button-label.medium-hide.large-up-hide,
h2#predictive-search-queries,
h2#predictive-search-products,
button.predictive-search__item.predictive-search__item--term.link.link--text.h5.animate-arrow,
a.bc-animated-promo-bar-text,
.bc-collection-grid-text,
h3.testimonial-heading,
.bc-full-width-image-text-caption,
a.review-link,
.bc-split-testimonials-author,
.bc-iphone-steps-section-subheader,
.testimonial-carousel__author,
.bc-iphone-steps-subheading,
h2.rich-text__heading.rte.inline-richtext.h1.scroll-trigger.animate--slide-in {
  font-family: var(--subheadingfont) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.2em !important;
  font-weight: 400;
  line-height: 1.5;
}
 {
  font-family: var(--subheadingfont) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.2em !important;
  font-weight: 400;
}

/* Body Styling */

body,
section[data-testid="form-container"],
.text-body,
.quantity__input {
  font-family: var(--bodyfont);
  letter-spacing: 0px;
}

.section-header.shopify-section-group-header-group {
  z-index: 6;
  margin-bottom: 0px;
}

.header {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
  z-index: 11;
}

.utility-bar--bottom-border {
  border-bottom: none;
}

.announcement-bar__message {
  min-height: unset;
}

.footer-section {
  z-index: 2;
  position: relative;
}

a.button.header-button {
  display: flex;
  margin: auto;
  padding: 10px 40px;
  align-items: center;
}

a.button.header-button {
  margin: auto;
  margin-left: 30px;
  background: var(--purple);
  color: white;
}

a.button.header-button {
  transition: ease 0.4s;
}

.header-button {
  display: flex;
  align-items: center;
}

a.button.header-button:hover {
  background: var(--tan2) !important;
  border: 1px solid var(--tan2) !important;
  font-family: "BrandonGrotesque-RegularItalic";
}

header.header.page-width {
  max-width: 100%;
}

.collection-list-title,
h2.title.inline-richtext {
  margin: auto;
  text-align: center;
}

slider-component.slider-mobile-gutter.page-width-desktop.scroll-trigger.animate--slide-in {
  max-width: unset;
  padding: 0rem;
}

.split-video-div-right-text {
  max-width: 46ch;
}

h1.split-video-heading,
h1.split-image-heading {
  font-size: 5vw;
  line-height: 1;
}

h2.h3 {
  margin-bottom: 50px;
}

.button {
  transition: 0.3s ease !important;
  border: 1px solid var(--tan2);
  min-height: unset;
  padding: 1.2rem 3rem;
}

.button:hover {
  background: var(--tan3) !important;
  color: white !important;
  border: 1px solid var(--tan3) !important;
}

a.button.header-button:hover {
  background: var(--tan2);
  border: 1px solid var(--tan2);
}

h3 .icon-arrow,
.h3 .icon-arrow {
  width: calc(var(--font-heading-scale) * 1.2rem);
}

a {
  color: black;
  text-underline-offset: 3px;
}

.header {
  border-bottom: 1px solid var(--gray1);
}

/* Fade In and Up Animation on Scroll */

/* Define the custom-fade-in-up class that will be used instead of the theme's built-in classes */
.custom-fade-in-up {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

/* Class that gets added when the element is visible */
.custom-fade-in-up.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Add different delay times for staggered animations */
.custom-fade-delay-1 {
  transition-delay: 0.1s;
}

.custom-fade-delay-2 {
  transition-delay: 0.2s;
}

.custom-fade-delay-3 {
  transition-delay: 0.3s;
}

.custom-fade-delay-4 {
  transition-delay: 0.4s;
}

/* Optional: Add different animation speeds */
.custom-fade-speed-slow {
  transition-duration: 0.8s;
}

.custom-fade-speed-fast {
  transition-duration: 0.4s;
}

/* Make sure these animations don't interfere with the theme's built-in animations */
html .animate--slide-in .custom-fade-in-up {
  /* Override any conflicting theme animations */
  transform: translateY(30px);
  opacity: 0;
}

html .animate--slide-in .custom-fade-in-up.is-visible {
  transform: translateY(0);
  opacity: 1;
}

.field__input:focus,
.select__select:focus,
.customer .field input:focus,
.customer select:focus,
.localization-form__select:focus.localization-form__select:after {
  box-shadow: none;
}

h1 {
  line-height: 1em;
}

p.product__text.inline-richtext.caption-with-letter-spacing {
  margin-bottom: 30px;
  margin-top: 30px;
}

span.price-item.price-item--regular {
  font-size: 1rem;
  letter-spacing: 0.2rem !important;
  margin-bottom: 30px;
  margin-top: 10px;
}
.max_quantity {
  font-size: 1rem;
  letter-spacing: 0.1em !important;
}

p.product__text.inline-richtext.caption-with-letter-spacing {
  letter-spacing: 0.2rem !important;
}

.product-form__input--pill input[type="radio"]:checked + label {
  color: #000;
  border: 1px solid black;
  background: none;
  letter-spacing: 0px;
}

p.caption-large,
p.caption,
button#ShowPickupAvailabilityDrawer {
  letter-spacing: 0px;
}

.accordion__title {
  display: flex;
  align-items: center;
}

h2.related-products__heading.inline-richtext.h0 {
  text-align: center;
}

.rte {
  line-height: 1.3;
}

.ingredient-name {
  margin-top: -4px;
  line-height: 1.4em;
}

product-info {
  padding-bottom: 100px !important;
}

h3.cart-notification-product__name.h4 {
  letter-spacing: 0px;
}

.cart-item__name {
  letter-spacing: 0px;
  font-size: 2rem;
}

cart-items .title-wrapper-with-link {
  margin-top: 100px;
}

.cart__footer-wrapper:last-child .cart__footer {
  padding-bottom: 100px;
}

.totals__total-value {
  font-size: 1.4rem;
}

span.price.price--end {
  font-size: 1.4rem !important;
  letter-spacing: 0;
}

p.predictive-search__item-heading.predictive-search__item-query-result.h5,
p.predictive-search__item-heading.h5 {
  letter-spacing: 0px;
}

.accordion__content {
  overflow-y: clip;
  padding-bottom: 10px;
}

/* Position the image container */
.media.media--transparent.media--hover-effect {
  position: relative;
  overflow: hidden;
  /* Ensure the container has height */
  height: 100%;
  width: 100%;
}

/* Base styles for both images */
.tvg_product_card_rTJCUa_Product-card-wrapper
  .tvg_product_card_rTJCUa_Product-card-wrapper-image__alternative,
.tvg_product_card_rTJCUa_Product-card-wrapper
  .tvg_product_card_rTJCUa_Product-card-wrapper-image__featured {
  display: block;
  /* Add this */
  width: 100%;
  height: auto;
  /* Change from 100% to auto */
  transition: all 1.5s;
  position: absolute;
  top: 0;
  left: 0;
}

/* Featured image initial state - make sure it's visible */
.tvg_product_card_rTJCUa_Product-card-wrapper
  .tvg_product_card_rTJCUa_Product-card-wrapper-image__featured {
  transform: translate(0) scale(1);
  /* Ensure it's in normal position */
  position: relative;
  /* Change from absolute to relative */
}

/* Alternative image initial state (off-screen) */
.tvg_product_card_rTJCUa_Product-card-wrapper
  .tvg_product_card_rTJCUa_Product-card-wrapper-image__alternative {
  transform: translate(120%) scale(1.2);
  z-index: 1;
  /* Ensure it appears on top during animation */
}

/* Hover effect for featured image */
.tvg_product_card_rTJCUa_Product-card-wrapper:hover
  .tvg_product_card_rTJCUa_Product-card-wrapper-image__featured {
  transform: translate(-80%) scale(1.2);
}

/* Hover effect for alternative image */
.tvg_product_card_rTJCUa_Product-card-wrapper:hover
  .tvg_product_card_rTJCUa_Product-card-wrapper-image__alternative {
  transform: matrix(1, 0, 0, 1, 0, 0);
}

.button:not([disabled]):hover:after,
.shopify-challenge__button:hover:after,
.customer button:hover:after,
.shopify-payment-button__button--unbranded:hover:after {
  box-shadow: none;
}

.bc-text-collections-section {
  padding-bottom: 0px !important;
}

@media screen and (max-width: 749px) {
  .field__input,
  .text-area,
  .contact input,
  .contact textarea {
    padding: 12px !important;
  }

  .field__input:focus,
  .text-area:focus,
  .contact input:focus,
  .contact textarea:focus {
    padding: 12px !important;
  }

  .contact__button .button {
    width: 100% !important;
  }
}

/* Remove the field borders and outline */
.field:after,
.select:after,
.customer .field:after,
.customer select:after,
.localization-form__select:after {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Remove hover effect that makes borders bolder */
.field:hover:after,
.select:hover:after,
.customer .field:hover:after,
.customer select:hover:after,
.localization-form__select:hover:after {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Target the specific input borders */
.field__input,
.select__select,
.customer .field input,
.customer select,
.text-area {
  border: 1px solid rgba(0, 0, 0, 0.15) !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Target the focus state to remove any automatic border effects */
.field__input:focus,
.select__select:focus,
.customer .field input:focus,
.customer select:focus,
.text-area:focus {
  border: 1px solid var(--gold) !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Ensure field border reset is consistent with contact form fixes */
.contact .field:after,
.contact .field:hover:after,
.contact .field:focus-within:after {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Override any animation or transition on the field borders */
.field:after,
.field:hover:after,
.field:focus-within:after {
  transition: none !important;
  animation: none !important;
}

/* Prevent labels from changing size or position when field is focused */
.field__label,
.form__label {
  font-size: 1.1rem !important;
  transform: none !important;
  transition: none !important;
  position: static !important;
  top: auto !important;
  left: auto !important;
  order: -1 !important;
  opacity: 1 !important;
  display: block !important;
  margin-bottom: 8px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
}

/* Ensure label doesn't change on field focus */
.field__input:focus ~ .field__label,
.field__input:not(:placeholder-shown) ~ .field__label,
.text-area:focus ~ .form__label,
.text-area:not(:placeholder-shown) ~ .form__label {
  transform: none !important;
  font-size: 1.1rem !important;
  top: auto !important;
  opacity: 1 !important;
}

/* Adjust field input to work with static labels */
.field__input,
.text-area {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

/* Ensure the header has proper structure for absolute positioning */
header.header {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* Ensure the header maintains its layout with the menu centered */
.header__heading,
.header__icons {
  z-index: 5;
  width: 30%;
}

/* Style the menu items for better spacing */
.list-menu--inline {
  display: flex;
  justify-content: center;
  flex-wrap: nowrap !important;
}

/* Make sure the dropdown menus position correctly */
.header-dropdown {
  left: 50%;
  transform: translateX(-50%);
  top: 100%;
}

/* Adjust for mobile */
@media screen and (max-width: 989px) {
  nav.header__inline-menu {
    display: none;
  }
}

.header__icons {
  justify-content: end;
}

h3.accordion__title.inline-richtext.h4 {
  text-transform: none;
  font-size: 1.5rem !important;
  line-height: 1.8 !important;
}

a.header__heading-link.link.link--text.focus-inset {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

a.header__heading-link.link.link--text.focus-inset {
  padding: 0;
}

.collection-hero__description.rte {
  font-size: 1.4rem !important;
  line-height: 1.4;
  max-width: 66ch;
}

.collection-hero__inner.page-width.scroll-trigger.animate--fade-in {
  padding-top: 20px;
  padding-bottom: 20px;
}

.value-text {
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-size: 14px !important;
}

.button.text-line-modal-button {
  letter-spacing: 0.07em !important;
}

.text-line-modal-caption {
  margin-bottom: 0px;
}

img.header__heading-logo {
  width: 350px !important;
}

.footer-tagline-text {
  font-size: 1.6rem;
  max-width: 29ch;
  line-height: 1.4;
}

.footer-tagline-column {
  margin-right: 50px;
}

.shopify-policy__container {
  padding-bottom: 80px;
}

.caption-with-letter-spacing.light {
  font-size: 0.85rem;
}

.bc-before-after-section-caption {
  margin-top: 10px;
}

pickup-availability-drawer.gradient.color-scheme-1 {
  z-index: 5;
  background: var(--gray5);
}

.bc-iphone-steps-section-subheader {
  letter-spacing: 0.1em !important;
  line-height: 1.4;
  font-size: 0.8em !important;
}

.bc-iphone-steps-section-text {
  font-size: 1.4rem;
  line-height: 1.4;
}

.quantity {
  min-height: 40px;
}

a.caption-large.light {
  opacity: 0.6;
  text-decoration: none;
  font-size: 0.75em;
  line-height: 1.3 !important;
  letter-spacing: 0.02em;
}

a.full-unstyled-link {
  font-size: 1.2rem !important;
  letter-spacing: 0.1em !important;
  margin-top: 20px;
}

.card__one-liner {
  line-height: 1;
  margin-top: 10px;
}
.card__one-liner sup{
  font-size: .6em;
}

.collapsible-content summary:hover .accordion__title {
  text-decoration: none;
}

h3.accordion__title.inline-richtext.h4 {
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  font-size: 18px !important;
}

.contact-text {
  font-size: 1.3rem;
  line-height: 1.5;
  border-bottom: 1px solid var(--tan2);
  padding-bottom: 15px;
}

.contact-text-feature {
  border-bottom: 1px solid var(--tan2);
  padding-bottom: 0px;
  font-size: 1.3rem !important;
  width: 100%;
}

.contact {
  max-width: 520px;
}

.contact-text a,
.contact-text-feature a {
  color: var(--tan3);
  text-decoration: underline;
  transition: color 0.2s ease;
}

.contact-right-wrapper {
  padding: 50px 80px 50px 80px;
}

h3.bc-full-width-image-abs-text.custom-fade-in-up.is-visible {
  text-transform: uppercase;
  font-size: 3.5rem;
  margin-bottom: 0;
}

.contact-text-feature.custom-fade-in-up.is-visible {
  font-size: 1.4rem;
  line-height: 1.4;
}

h2.bc-iphone-steps-section-heading.custom-fade-in-up.is-visible {
  margin-bottom: -20px;
  font-size: 48px;
  margin-top: 0px;
}

pickup-availability-preview.pickup-availability-preview {
  padding-top: 0px;
}

.slider--desktop .slider__slide:first-child {
  margin-left: 0;
}

.facet-checkbox .svg-wrapper {
  left: 0.15rem !important;
}

/* SHIPPING MODAL */
.shipping-modal {
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.5);
}
.shipping-header {
  padding-left: 21px;
  padding-top: 14px;
  padding-right: 21px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.shipping-header svg {
  width: 20px;
}
.shipping-header svg path {
  stroke: rgba(0, 0, 0, 0.56);
}
.shipping-header h2 {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica,
    Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
  font-size: 21px;
  font-weight: 500;
  letter-spacing: normal !important;
}
.shipping-body {
  padding: 14px 21px;
}
.shipping-modal-content {
  background-color: #fff;
  margin: 10% auto;
  padding: 0;
  border: 1px solid #888;
  width: 90%;
  max-width: 640px;
  border-radius: 8px;
}
.shipping-modal-close {
  float: right;
  font-size: 1.5rem;
  cursor: pointer;
}

div#menu-drawer {
  margin-top: 60px;
  max-height: calc(100vh - 60px);
}

.shopify-section-group-footer-group .page-width {
  max-width: unset;
  padding: 0rem;
}


/* MOBILE OPS */

@media screen and (max-width: 1200px) {
  .header:not(.drawer-menu).page-width {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  a.button.header-button {
    padding: 10px;
  }

  .header__icon--cart {
    position: relative;
    margin-right: -3rem;
  }
}

@media screen and (max-width: 989px) {
  summary#HeaderDrawer-shop,
  a#HeaderDrawer-treatments,
  a#HeaderDrawer-about,
  a#HeaderDrawer-contact,
  .menu-drawer__menu-item .link .link--text list-menu__item .focus-inset {
    font-size: 2.8rem;
  }

  h1.split-video-heading,
  h1.split-image-heading {
    font-size: 4.5rem;
  }

  a.button.header-button {
    display: none;
  }

  .header__heading,
  .header__icons {
    width: auto;
  }

  .page-width {
    max-width: 100%;
  }

  .header {
    padding-left: 15px !important;
    padding-right: 2px !important;
  }

  ul.list-unstyled.list-social {
    position: static;
  }

  .menu-drawer__menu-item {
    padding: 2rem 3rem;
  }
}

@media screen and (max-width: 767px) {
  h3.heading {
    font-size: 4rem;
  }

  span.mobile-facets__open-label.button-label.medium-hide.large-up-hide {
    font-size: 1.2rem;
  }

  select#SortBy-mobile {
    letter-spacing: 1px !important;
    padding-left: 20px;
    border: none !important;
  }

  .prose h2 {
    font-size: 3rem;
  }

  .accent-text.custom-fade-in-up.is-visible {
    font-size: 1.4rem;
  }

  span.price-item.price-item--regular,
  .max_quantity {
    font-size: 0.9rem;
  }

  .footer-menu-column ul {
    font-size: 16px;
  }

  .footer-menu-column h3 {
    font-size: 16px !important;
  }

  .card__information {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  .banner__box.content-container.content-container--full-width-mobile.color-scheme-1.gradient {
    background: var(--smoke);
  }

  .banner__content.banner__content--middle-center.page-width.scroll-trigger.animate--slide-in {
    background: var(--smoke);
    min-height: 200px;
  }

  .banner__box.content-container.content-container--full-width-mobile.color-scheme-1.gradient {
    padding: 4rem 3rem 7rem 3rem;
  }

  .banner__buttons.banner__buttons--multiple {
    flex-direction: column;
  }

  h2.footer-block__heading.inline-richtext {
    padding-top: 0px;
  }

  p.image-with-text__text.image-with-text__text--caption.caption-with-letter-spacing.caption-with-letter-spacing--medium.caption-with-letter-spacing {
    margin-top: 80px;
  }

  .multicolumn-card.content-container {
    min-width: 100%;
  }

  h2.title.title-wrapper--no-top-margin.inline-richtext.h1.scroll-trigger.animate--slide-in {
    font-size: 4rem;
  }

  h2.title.inline-richtext.h1 {
    text-align: center;
    font-size: 5rem;
  }

  form#contact_form {
    display: flex;
  }

  p {
    font-size: 16px;
  }

  h1.title.title--primary {
    font-size: 4rem;
  }

  a.cart-item__name.h4.break {
    font-size: 2rem;
  }

  h1,
  .h1 {
    font-size: 3.5rem;
  }

  img.header__heading-logo {
    width: 260px !important;
  }
}

/* Add these styles to your CSS */
@media screen and (max-width: 989px) {
  /* Constrain the icons container */
  .header__icons.header__icons--localization.header-localization {
    width: auto;
    max-width: 100%;
    overflow: visible;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-right: 0;
    padding-right: 0;
  }

  /* Fix positioning of items inside the icons container */
  .header__icons.header__icons--localization.header-localization > * {
    margin-right: 0;
    margin-left: 0;
    flex-shrink: 1;
  }

  /* Ensure the cart icon doesn't cause overflow */
  .header__icon--cart {
    margin-right: 0 !important;
  }

  /* Make sure all icons can shrink if needed */
  .header__icon {
    flex-shrink: 1;
    transform: none;
  }

  /* Adjust desktop localization wrapper if present */
  .desktop-localization-wrapper {
    flex-shrink: 1;
    width: auto;
  }
  .header__icon,
  .header__icon--cart .icon {
    width: 3.8rem;
  }
}

@media screen and (max-width: 479px) {
  a.full-unstyled-link {
    text-transform: none !important;
    letter-spacing: 0px !important;
    line-height: 1.2;
  }

  .bc-collection-grid-text {
    letter-spacing: 0px !important;
    text-transform: none !important;
    font-size: 1.25rem;
  }
  .caption-with-letter-spacing.light {
    display: none;
  }
  .product-form__input--pill input[type="radio"] + label {
    font-size: 1.2rem;
    padding: 1rem;
  }

  product-info {
    padding-bottom: 40px !important;
  }
  .benefits-section-div {
    padding: 80px 20px 0px 20px;
  }
  .split-section-right-inner-div {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .h0 {
    font-size: 4rem;
  }
}

/* Appstle Loyalty launcher (bottom-left): tighter padding, closer to the edge */
#appstle-loyalty-button {
  padding: 0 14px;
  height: 48px;
  bottom: 16px;
}
#appstle-loyalty-button.appstle-loyalty-left {
  left: 16px;
}
@media screen and (min-width: 801px) {
  #appstle_loyalty_iframe.appstle-loyalty-left {
    left: 16px;
    bottom: 76px;
  }
}
