/** Shopify CDN: Minification failed

Line 77:0 All "@import" rules must come first

**/


/* =========================
   HEADER + NAVIGATION
   ========================= */

/* 1. Tighten spacing in the top bar (logo/search/icons) */
.m-header__top .m-header__inner {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}
.m-header__top .m-logo__image {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

/* 2. Shrink nav bar links on desktop */
.m-header__main .m-menu {
  --main-link-px: 12px !important;
  --main-link-py: 20px !important;
}
.m-header__main .m-menu__link--main {
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.2px !important;
  padding-top: var(--main-link-py) !important;
  padding-bottom: var(--main-link-py) !important;
}

/* 3. Tighter nav bar links on tablet/mobile */
@media (max-width: 1023px) {
  .m-header__main .m-menu {
    --main-link-px: 10px !important;
    --main-link-py: 6px !important;
  }
  .m-header__main .m-menu__link--main {
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.1px !important;
  }
}

/* 4. Increase horizontal spacing between main menu links (desktop) */
.m-header__main .m-menu { --main-link-px: 50px !important; }

/* 5. Extra spacing for two-line header layouts */
.logo-center__2l .m-menu,
.logo-left__2l  .m-menu { --main-link-px: 65px !important; }

/* =========================
   COLLECTION GRID + PRODUCT CARDS
   ========================= */

/* Grid column responsiveness */
@media (min-width: 1024px) { .facest-filters-section .m-product-item { width: 25% !important; } }
@media (min-width: 768px) and (max-width: 1023.98px) { .facest-filters-section .m-product-item { width: 33.3333% !important; } }
@media (max-width: 767.98px) { .facest-filters-section .m-product-item { width: 50% !important; } }

/* Reduce spacing between products */
.m-collection .m-product-list,
.template-collection .m-product-list { gap: 8px !important; }
.m-collection .m-product-item,
.template-collection .m-product-item { margin: 0 !important; padding: 0 !important; }

/* Injected spacers in product cards */
.m-price-spacer-below { height: 30px; }
.m-price-spacer-above { height: 10px !important; }

/* =========================
   HERO SCRIPT FONT (custom font for hero headings)
   ========================= */
@import url('https://fonts.googleapis.com/css2?family=Pinyon+Script&display=swap');

.hero-script,
.hero-script * {
  font-family: 'Pinyon Script', cursive !important;
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-style: normal !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.h0 .hero-script,
.h1 .hero-script,
.m-hero__heading .hero-script {
  display: inline-block;
  line-height: 1.05;
  font-size: clamp(36px, 6vw, 88px);
}

/* =========================
   PRODUCT: Collapsible Tabs
   ========================= */
@media (min-width:1280px){
  .template-product .m-product-collapsible h3.m-collapsible--button,
  .template-product .m-accordion h3.m-collapsible--button,
  .template-product h3.m-collapsible--button.h3 {
    font-size: 18px !important;
    line-height: 1.25 !important;
    padding: 8px 0 !important;
  }
}
@media (min-width:768px) and (max-width:1279px){
  .template-product .m-product-collapsible h3.m-collapsible--button,
  .template-product .m-accordion h3.m-collapsible--button,
  .template-product h3.m-collapsible--button.h3 {
    font-size: 17px !important;
  }
}
@media (max-width:767px){
  .template-product .m-product-collapsible h3.m-collapsible--button,
  .template-product .m-accordion h3.m-collapsible--button,
  .template-product h3.m-collapsible--button.h3 {
    font-size: 16px !important;
  }
}
.template-product .m-product-collapsible .m-collapsible--content,
.template-product .m-product-collapsible .m-collapsible--content__inner,
.template-product .m-accordion .m-collapsible--content {
  font-size: 14px !important;
  line-height: 1.6 !important;
}
.template-product .m-product-collapsible .m-collapsible--icon svg,
.template-product .m-accordion .m-collapsible--icon svg {
  width: 12px !important;
  height: 12px !important;
}
.template-product .m-product-collapsible .m-collapsible { margin: 0 !important; }
.template-product { --font-h3-desktop: 20; --font-h3-tablet: 18; --font-h3-mobile: 16; }

/* =========================
   PRODUCT TITLES: Mobile sizing
   ========================= */
@media (max-width: 767px) {
  .m-collection .m-product-card__title,
  .template-collection .m-product-card__title,
  .m-product-item .m-product-card__title {
    font-size: 13px !important;
    line-height: 1.3 !important;
    letter-spacing: 0.2px !important;
  }
}

/* =========================
   NAVIGATION: Uppercase + Bold + Smaller
   ========================= */
.m-header__main .m-menu__link--main {
  text-transform: uppercase !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  letter-spacing: 0.5px !important;
}
.m-header__main .m-menu__link {
  text-transform: uppercase !important;
  font-weight: 700 !important;
  font-size: 15px !important;
}

/* =========================
   HEADER: Reduce gap between logo & navigation (desktop only)
   ========================= */
@media (min-width: 1024px) {
  .m-header__main .m-header__inner { justify-content: flex-start !important; align-items: center !important; }
  .m-header__main .m-logo { margin-right: 0px !important; flex: 0 0 auto !important; }
  .m-header__main .m-menu { margin-left: 0 !important; flex: 0 0 auto !important; }
}

/* =========================
   PRODUCT CARD 6: VISIBILITY + SLIDER BASICS
   ========================= */
.pc6-desktop-only { display: block; }
.pc6-mobile-only  { display: none; }

@media (max-width: 749.98px) {
  .pc6-desktop-only { display: none !important; }
  .pc6-mobile-only  { display: block !important; }
  .m-product-card--style-6 .m-product-card__hover-image { display: none !important; } /* no hover on mobile */
}

/* lightweight slider structure */
.pc6-swiper { position: relative; width: 100%; overflow: hidden; }
.pc6-swiper .swiper-wrapper { display: flex; will-change: transform; transform: translate3d(0,0,0); }
.pc6-swiper .swiper-slide { flex: 0 0 100%; }
.pc6-swiper .m-image img { width: 100%; height: 100%; object-fit: cover; }

/* Force 7/10 aspect ratio for Product Card 6 mobile swiper */
@media (max-width: 749.98px) {
  .m-product-card--style-6 .pc6-swiper .m-image { --aspect-ratio: 0.7 !important; } /* 7/10 */
}

/* =========================
   DOTS: COLLECTION (product-card-6)  — small, pink active, dark grey inactive
   ========================= */
@media (max-width: 749.98px) {
  .m-product-card--style-6 .product-card-carousel .swiper-pagination-bullets { bottom: 10px !important; }
  .m-product-card--style-6 .product-card-carousel .swiper-pagination-bullet {
    width: 6px !important;
    height: 6px !important;
    margin: 0 3px !important;
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    background: #2B2B2B !important; /* inactive dark grey */
    opacity: 0.6 !important;
  }
  .m-product-card--style-6 .product-card-carousel .swiper-pagination-bullet::after { content: none !important; }
  .m-product-card--style-6 .product-card-carousel .swiper-pagination-bullet-active {
    background: #F6DADF !important;     /* ACTIVE pink */
    opacity: 1 !important;
  }
}

/* =========================
   DOTS: PDP (product detail page) — match collection styling
   ========================= */
.template-product .swiper-pagination-bullets { bottom: 10px !important; }
.template-product .swiper-pagination-bullet {
  width: 6px !important;
  height: 6px !important;
  margin: 0 4px !important;
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  background: #2B2B2B !important;   /* inactive dark grey */
  opacity: 0.6 !important;
}
.template-product .swiper-pagination-bullet::after { content: none !important; }
.template-product .swiper-pagination-bullet-active {
  background: #F6DADF !important;   /* active pink */
  opacity: 1 !important;
}

/* =========================
   DISABLE CARD ENTRANCE ANIMATIONS (collection pages)
   ========================= */
.template-collection .m-product-card.m-scroll-trigger {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}
/* === Product Card 6 (collection, mobile): ensure pagination is visible === */
@media (max-width: 749.98px) {
  .m-product-card--style-6 .pc6-swiper,
  .m-product-card--style-6 .product-card-carousel { position: relative; }

  .m-product-card--style-6 .pc6-swiper .swiper-pagination,
  .m-product-card--style-6 .product-card-carousel .swiper-pagination {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 6px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    z-index: 5;
    opacity: 1 !important;         /* some themes hide until hover */
    visibility: visible !important; /* override hidden/none rules */
  }

  /* dots: small, dark grey inactive, pink active */
  .m-product-card--style-6 .pc6-swiper .swiper-pagination-bullet,
  .m-product-card--style-6 .product-card-carousel .swiper-pagination-bullet {
    width: 6px !important;
    height: 6px !important;
    margin: 0 3px !important;
    border: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    background: #2B2B2B !important;   /* inactive */
    opacity: 0.6 !important;
  }
  .m-product-card--style-6 .pc6-swiper .swiper-pagination-bullet::after,
  .m-product-card--style-6 .product-card-carousel .swiper-pagination-bullet::after {
    content: none !important;          /* remove rings */
  }
  .m-product-card--style-6 .pc6-swiper .swiper-pagination-bullet-active,
  .m-product-card--style-6 .product-card-carousel .swiper-pagination-bullet-active {
    background: #F6DADF !important;    /* active */
    opacity: 1 !important;
  }
}
/* === COLLECTION (DESKTOP): no zoom, no fade; instant swap; no white flash === */
@media (hover:hover) and (pointer:fine) {
  /* 1) Make sure the media container never flashes a background */
  .template-collection .m-product-card__media,
  .m-collection .m-product-card__media {
    background: transparent !important;
    isolation: isolate;          /* own compositing layer */
    contain: paint;              /* avoid repaints leaking */
  }

  /* 2) The two layers (main + hover image) share the exact same paint box */
  .template-collection .m-product-card__main-image,
  .template-collection .m-product-card__hover-image,
  .m-collection .m-product-card__main-image,
  .m-collection .m-product-card__hover-image {
    position: relative;
    inset: auto;
    transition: none !important; /* kill theme fades */
    background: transparent !important;
    backface-visibility: hidden;
    transform: translateZ(0);    /* promote to its own layer */
    will-change: opacity;        /* smooth toggling, avoids flash */
  }

  /* 3) Hover layer sits on top, hidden by default, with NO fade */
  .template-collection .m-product-card__hover-image,
  .m-collection .m-product-card__hover-image {
    position: absolute;
    inset: 0;
    z-index: 2;
    opacity: 0;
    pointer-events: none;
  }

  /* 4) Instantly reveal second image on hover (no opacity/zoom animation) */
  .template-collection .m-product-card__media:hover .m-product-card__hover-image,
  .m-collection .m-product-card__media:hover .m-product-card__hover-image {
    opacity: 1 !important;
  }

  /* 5) Absolutely NO zoom or transform on either image, in any state */
  .template-collection .m-product-card__media .m-image,
  .template-collection .m-product-card__media .m-image img,
  .template-collection .m-product-card__main-image .m-image,
  .template-collection .m-product-card__main-image img,
  .template-collection .m-product-card__hover-image .m-image,
  .template-collection .m-product-card__hover-image img,
  .m-collection .m-product-card__media .m-image,
  .m-collection .m-product-card__media .m-image img,
  .m-collection .m-product-card__main-image .m-image,
  .m-collection .m-product-card__main-image img,
  .m-collection .m-product-card__hover-image .m-image,
  .m-collection .m-product-card__hover-image img {
    transform: none !important;
    transition: none !important;
    filter: none !important;
    background: transparent !important;
  }

  /* 6) Belt & suspenders: even on hover, never apply zoom/fade */
  .template-collection .m-product-card__media:hover .m-image,
  .template-collection .m-product-card__media:hover img,
  .m-collection .m-product-card__media:hover .m-image,
  .m-collection .m-product-card__media:hover img {
    transform: none !important;
    transition: none !important;
    filter: none !important;
  }
}
/* === COLLECTION: make hover image match main image exactly (no zoom/crop) === */
@media (hover:hover) and (pointer:fine) {
  /* same box + no theme effects */
  .template-collection .m-product-card__main-image,
  .template-collection .m-product-card__hover-image,
  .m-collection .m-product-card__main-image,
  .m-collection .m-product-card__hover-image {
    background: transparent !important;
    transition: none !important;
  }

  /* identical sizing for both layers */
  .template-collection .m-product-card__main-image .m-image,
  .template-collection .m-product-card__hover-image .m-image,
  .m-collection .m-product-card__main-image .m-image,
  .m-collection .m-product-card__hover-image .m-image {
    width: 100% !important;
    height: 100% !important;
    background: transparent !important;
  }

  /* identical image rules (kill any built-in zoom) */
  .template-collection .m-product-card__main-image .m-image img,
  .template-collection .m-product-card__hover-image .m-image img,
  .m-collection .m-product-card__main-image .m-image img,
  .m-collection .m-product-card__hover-image .m-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;        /* use 'contain' for zero cropping on both */
    object-position: center center !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }
}
/* === PDP collapsible headings — extra small + normal weight === */
.template-product {
  /* If theme reads these vars for .h3, keep them small too (theme expects numbers) */
  --font-h3-desktop: 16 !important;
  --font-h3-tablet: 15 !important;
  --font-h3-mobile: 14 !important;
}

/* Hit all variants the theme might use for the heading button */
.template-product :is(
  h3.m-collapsible--button,
  .m-collapsible--button.h3,
  .m-product-collapsible .m-collapsible--button,
  .m-accordion .m-collapsible--button,
  collapsible-tab .m-collapsible--button
) {
  font-size: 14px !important;   /* smaller */
  line-height: 1.25 !important;
  font-weight: 400 !important;  /* NOT bold */
  letter-spacing: 0 !important;
  padding: 8px 0 !important;    /* tighter vertical spacing */
  text-transform: none !important;
}

/* Prevent nested <strong> or wrappers from re-bolding */
.template-product .m-collapsible--button strong,
.template-product .m-collapsible--button .m-collapsible__text {
  font-weight: 400 !important;
}

/* Small chevron */
.template-product .m-collapsible--icon svg {
  width: 11px !important;
  height: 11px !important;
}

/* (optional) slightly smaller body text inside panels */
.template-product :is(.m-collapsible--content, .m-collapsible--content__inner) {
  font-size: 13px !important;
  line-height: 1.6 !important;
}
/* --- Footer Newsletter Styling (ALIVE) --- */
.m-footer--block-newsletter {
  text-align: center;
  max-width: 600px;
  margin: 0 auto;
  padding: 10px 15px;
}

/* Title */
.m-footer--block-newsletter .m-footer--block-title {
  font-weight: 400;
  text-transform: none;
  margin: 0 auto 6px auto;
  display: block;
  width: 100%;
  text-align: center !important;
  line-height: 1.2;
  /* desktop/tablet default */
  font-size: clamp(22px, 5vw, 32px);
}

/* Description */
.m-footer--block-newsletter .m-footer--block-newsletter-desc {
  font-weight: 300;
  margin: 0 auto 6px auto;
  display: block;
  width: 100%;
  text-align: center !important;
  line-height: 1.3;
  font-size: clamp(16px, 4vw, 20px);
}

/* Fine print (e.g., *Exclusions Apply) */
.m-footer--block-newsletter small,
.m-footer--block-newsletter .m-footer--block-newsletter-desc em {
  display: block;
  margin-top: 4px;
  font-size: clamp(14px, 3.5vw, 16px);
  line-height: 1.2;
  text-align: center !important;
}

/* --- Mobile tweaks: bigger title, balanced spacing --- */
@media (max-width: 768px) {
  .m-footer--block-newsletter .m-footer--block-title {
    font-size: 20px !important;  /* ensure not tiny on phones */
    line-height: 1.22;
    margin-bottom: 8px;
  }
  .m-footer--block-newsletter .m-footer--block-newsletter-desc {
    font-size: 14px !important;
    line-height: 1.32;
    margin-bottom: 6px;
  }
}

/* --- Hide ONLY the newsletter chevron/arrow & keep it expanded --- */
/* Many themes draw the arrow via ::after, an inline .icon/svg, or a collapsible arrow class.
   We target only the newsletter block so Quick Links remain unchanged. */
.m-footer--block-newsletter .m-footer--block-title::after,
.m-footer--block-newsletter .m-footer--block-title .icon,
.m-footer--block-newsletter .m-footer--block-title svg,
.m-footer--block-newsletter .m-collapsible__arrow {
  display: none !important;
}

/* Prevent “collapsible” behavior just for newsletter (keeps it open) */
.m-footer--block-newsletter [data-collapsible-content],
.m-footer--block-newsletter .m-collapsible__content {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  opacity: 1 !important;
}
.m-footer--block-newsletter .m-footer--block-title {
  cursor: default !important; /* no “toggle” cursor on the title */
}
/* --- Add spacing below product promotion pagination --- */
.template-product .swiper-container-horizontal > .swiper-pagination-bullets,
.template-product .swiper-pagination {
  margin-bottom: 28px !important; /* adjust to your preference */
}

/* Optional: increase spacing even more on mobile */
@media (max-width: 768px) {
  .template-product .swiper-container-horizontal > .swiper-pagination-bullets,
  .template-product .swiper-pagination {
    margin-bottom: 36px !important;
  }
}
.m-card-video { width:100%; height:100%; object-fit:cover; display:block; }