/** Shopify CDN: Minification failed

Line 1892:7 Expected identifier but found whitespace
Line 1892:8 Unexpected "0"
Line 1892:13 Unexpected "{"
Line 1892:22 Expected ":"
Line 1892:69 Expected ":"

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:404 (INDEX:0) */
.fof-section {
    background: var(--fof-bg, transparent);
    padding: var(--fof-pad-top-m) var(--fof-pad-h-m) var(--fof-pad-bottom-m);
    text-align: var(--fof-align, center);
  }

  @media screen and (min-width: 1200px) {
    .fof-section {
      padding: var(--fof-pad-top-d) var(--fof-pad-h-d) var(--fof-pad-bottom-d);
    }
  }

  .fof-section__inner {
    max-width: var(--fof-max-width, 600px);
    margin: 0 auto;
  }

  .fof-section__eyebrow {
    font-family: var(--fof-eyebrow-font, inherit);
    font-weight: var(--fof-eyebrow-weight, inherit);
    color: var(--fof-eyebrow-color, inherit);
    font-size: var(--fof-eyebrow-size-m, 11px);
    text-transform: var(--fof-eyebrow-transform, uppercase);
    letter-spacing: var(--fof-eyebrow-spacing, 0.1em);
    margin: 0 0 var(--fof-eyebrow-mb, 16px);
  }

  @media screen and (min-width: 1200px) {
    .fof-section__eyebrow {
      font-size: var(--fof-eyebrow-size-d, 12px);
    }
  }

  .fof-section__title {
    font-family: var(--fof-title-font, inherit);
    font-weight: var(--fof-title-weight, inherit);
    color: var(--fof-title-color, inherit);
    font-size: var(--fof-title-size-m, 56px);
    text-transform: var(--fof-title-transform, none);
    letter-spacing: var(--fof-title-spacing, 0em);
    margin: 0 0 var(--fof-title-mb, 12px);
    line-height: 1.05;
  }

  @media screen and (min-width: 1200px) {
    .fof-section__title {
      font-size: var(--fof-title-size-d, 80px);
    }
  }

  .fof-section__body {
    font-family: var(--fof-body-font, inherit);
    font-weight: var(--fof-body-weight, inherit);
    color: var(--fof-body-color, inherit);
    font-size: var(--fof-body-size-m, 14px);
    text-transform: var(--fof-body-transform, none);
    letter-spacing: var(--fof-body-spacing, 0em);
    margin: 0 0 var(--fof-body-mb, 32px);
    line-height: 1.6;
  }

  @media screen and (min-width: 1200px) {
    .fof-section__body {
      font-size: var(--fof-body-size-d, 15px);
    }
  }

  .fof-section__btn {
    display: inline-block;
    font-family: var(--fof-btn-font, inherit);
    font-weight: var(--fof-btn-weight, inherit);
    color: var(--fof-btn-color, #fff);
    background: var(--fof-btn-bg, #111);
    border: var(--fof-btn-border-width, 1px) solid var(--fof-btn-border-color, #111);
    font-size: var(--fof-btn-size-m, 12px);
    text-transform: var(--fof-btn-transform, uppercase);
    letter-spacing: var(--fof-btn-spacing, 0.08em);
    padding: var(--fof-btn-pad-v, 14px) var(--fof-btn-pad-h, 32px);
    border-radius: var(--fof-btn-radius, 0px);
    text-decoration: none;
    transition: color 0.18s, background 0.18s, border-color 0.18s;
    cursor: pointer;
  }

  @media screen and (min-width: 1200px) {
    .fof-section__btn {
      font-size: var(--fof-btn-size-d, 13px);
    }
  }

  .fof-section__btn:hover {
    color: var(--fof-btn-hover-color, #111);
    background: var(--fof-btn-hover-bg, #fff);
    border-color: var(--fof-btn-hover-border, #111);
  }
/* END_SECTION:404 */

/* START_SECTION:announcement-bar (INDEX:1) */
.announcement-bar {
    background-color: var(--announcement-bg, #000);
    color: var(--announcement-color, #fff);
    height: var(--announcement-height-mobile, 36px);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
    font-family: var(--announcement-font-family);
    font-weight: var(--announcement-font-weight);
    font-size: var(--announcement-font-size-mobile, 12px);
    text-transform: var(--announcement-text-transform, none);
    letter-spacing: var(--announcement-letter-spacing, 0);
  }

  @media (min-width: 1200px) {
    .announcement-bar {
      height: var(--announcement-height-desktop, 40px);
      font-size: var(--announcement-font-size-desktop, 13px);
    }
  }

  /* ── Inner wrapper ── */
  .announcement-bar__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--announcement-gap, 80px);
    width: 100%;
    padding: 0 40px;
    box-sizing: border-box;
  }

  /* ── Single / rotating message ── */
  .announcement-bar__message {
    white-space: nowrap;
    line-height: 1;
  }

  /* ── Rotating: only active message visible ── */
  .announcement-bar__inner--rotate {
    position: relative;
  }
  .announcement-bar__inner--rotate .announcement-bar__message {
    position: absolute;
    left: 50%;
    transform: translateX(-50%) translateY(100%);
    opacity: 0;
    transition: transform 0.4s ease, opacity 0.4s ease;
    pointer-events: none;
  }
  .announcement-bar__inner--rotate .announcement-bar__message.is-active {
    position: relative;
    left: auto;
    transform: translateX(0) translateY(0);
    opacity: 1;
    pointer-events: auto;
    transition: transform 0.4s ease, opacity 0.4s ease;
  }
  .announcement-bar__inner--rotate .announcement-bar__message.is-leaving {
    position: absolute;
    left: 50%;
    transform: translateX(-50%) translateY(-100%);
    opacity: 0;
    pointer-events: none;
  }

  /* ── Marquee ── */
  .announcement-bar__track {
    overflow: hidden;
    width: 100%;
  }
  /* No CSS animation — JS rAF loop controls transform directly */
  .announcement-bar__inner--marquee {
    display: flex;
    width: max-content;
    align-items: center;
    will-change: transform;
  }
  .announcement-bar__set {
    display: inline-flex;
    align-items: center;
    gap: var(--announcement-gap, 80px);
    padding-right: var(--announcement-gap, 80px);
    flex-shrink: 0;
  }

  /* ── Separator ── */
  .announcement-bar__sep {
    opacity: 0.5;
    margin: 0 4px;
  }

  /* ── Link ── */
  .announcement-bar__link {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
  }
  .announcement-bar__link:hover {
    opacity: 0.8;
  }

  /* ── Close button ── */
  .announcement-bar__close {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
    color: inherit;
    padding: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.7;
    line-height: 0;
  }
  .announcement-bar__close:hover {
    opacity: 1;
  }
/* END_SECTION:announcement-bar */

/* START_SECTION:article (INDEX:3) */
.ar-section {
    background: var(--ar-bg, transparent);
    padding: var(--ar-pad-top-m, 48px) var(--ar-pad-h-m, 20px) var(--ar-pad-bottom-m, 60px);
  }

  @media screen and (min-width: 1200px) {
    .ar-section {
      padding: var(--ar-pad-top-d, 80px) var(--ar-pad-h-d, 40px) var(--ar-pad-bottom-d, 100px);
    }
  }

  .ar-section__inner {
    max-width: var(--ar-content-width, 720px);
    margin: 0 auto;
  }

  /* ── Back link ── */
  .ar-section__back {
    display: inline-block;
    font-family: var(--ar-back-font, inherit);
    font-weight: var(--ar-back-weight, inherit);
    font-size: var(--ar-back-size, 10px);
    color: var(--ar-back-color, #aaa);
    text-transform: var(--ar-back-transform, uppercase);
    letter-spacing: var(--ar-back-spacing, 0.1em);
    text-decoration: none;
    margin-bottom: var(--ar-back-mb, 32px);
    line-height: 1;
  }

  /* ── Meta ── */
  .ar-section__meta {
    font-family: var(--ar-meta-font, inherit);
    font-weight: var(--ar-meta-weight, inherit);
    font-size: var(--ar-meta-size-m, 10px);
    color: var(--ar-meta-color, #aaa);
    text-transform: var(--ar-meta-transform, uppercase);
    letter-spacing: var(--ar-meta-spacing, 0.1em);
    margin: 0 0 var(--ar-meta-mb, 16px);
    line-height: 1;
  }

  @media screen and (min-width: 1200px) {
    .ar-section__meta {
      font-size: var(--ar-meta-size-d, 10px);
    }
  }

  /* ── Title ── */
  .ar-section__title {
    font-family: var(--ar-title-font, inherit);
    font-weight: var(--ar-title-weight, inherit);
    font-size: var(--ar-title-size-m, 28px);
    color: var(--ar-title-color, #111);
    text-transform: var(--ar-title-transform, none);
    letter-spacing: var(--ar-title-spacing, 0em);
    line-height: var(--ar-title-lh, 1.2);
    margin: 0 0 var(--ar-title-mb, 40px);
  }

  @media screen and (min-width: 1200px) {
    .ar-section__title {
      font-size: var(--ar-title-size-d, 40px);
    }
  }

  /* ── Hero image ── */
  .ar-section__hero {
    position: relative;
    aspect-ratio: var(--ar-hero-ratio, 16/9);
    overflow: hidden;
    margin-bottom: var(--ar-hero-mb, 48px);
    font-size: 0;
    line-height: 0;
    color: transparent;
  }

  .ar-section__hero-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  /* ── Article body content ── */
  .ar-section__content {
    font-family: var(--ar-body-font, inherit);
    font-weight: var(--ar-body-weight, inherit);
    font-size: var(--ar-body-size-m, 15px);
    color: var(--ar-body-color, #333);
    line-height: var(--ar-body-lh, 1.8);
  }

  @media screen and (min-width: 1200px) {
    .ar-section__content {
      font-size: var(--ar-body-size-d, 17px);
    }
  }

  .ar-section__content p { margin: 0 0 1.4em; }
  .ar-section__content p:last-child { margin-bottom: 0; }
  .ar-section__content h2,
  .ar-section__content h3,
  .ar-section__content h4 {
    font-family: var(--ar-title-font, inherit);
    font-weight: var(--ar-title-weight, inherit);
    color: var(--ar-title-color, #111);
    margin: 1.8em 0 0.6em;
    line-height: 1.2;
  }
  .ar-section__content h2 { font-size: calc(var(--ar-body-size-d, 17px) * 1.5); }
  .ar-section__content h3 { font-size: calc(var(--ar-body-size-d, 17px) * 1.25); }
  .ar-section__content h4 { font-size: var(--ar-body-size-d, 17px); }
  .ar-section__content ul,
  .ar-section__content ol {
    padding-left: 1.4em;
    margin: 0 0 1.4em;
  }
  .ar-section__content li { margin-bottom: 0.4em; }
  .ar-section__content img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 1.6em 0;
  }
  .ar-section__content a {
    color: var(--ar-title-color, #111);
  }
  .ar-section__content blockquote {
    border-left: 2px solid var(--ar-divider-color, #e5e5e5);
    margin: 1.6em 0;
    padding: 0.4em 0 0.4em 1.4em;
    font-style: italic;
    color: var(--ar-meta-color, #aaa);
  }

  /* ── Tags ── */
  .ar-section__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 48px;
    padding-top: 32px;
    border-top: 1px solid var(--ar-divider-color, #e5e5e5);
  }

  .ar-section__tag {
    font-family: var(--ar-nav-font, inherit);
    font-weight: var(--ar-nav-weight, inherit);
    font-size: var(--ar-nav-size, 10px);
    color: var(--ar-nav-color, #111);
    text-transform: var(--ar-nav-transform, uppercase);
    letter-spacing: var(--ar-nav-spacing, 0.1em);
    text-decoration: none;
    border: 1px solid var(--ar-divider-color, #e5e5e5);
    padding: 6px 12px;
    line-height: 1;
  }

  /* ── Prev/Next nav ── */
  .ar-section__post-nav {
    margin-top: 48px;
    padding-top: 32px;
    border-top: 1px solid var(--ar-divider-color, #e5e5e5);
  }

  .ar-section__post-nav-inner {
    display: flex;
    justify-content: space-between;
    gap: 24px;
  }

  .ar-pnav__link {
    display: flex;
    flex-direction: column;
    gap: 6px;
    text-decoration: none;
    max-width: 45%;
  }

  .ar-pnav__link--next {
    text-align: right;
    margin-left: auto;
  }

  .ar-pnav__dir {
    font-family: var(--ar-nav-font, inherit);
    font-weight: var(--ar-nav-weight, inherit);
    font-size: var(--ar-nav-size, 10px);
    color: var(--ar-nav-color, #111);
    text-transform: var(--ar-nav-transform, uppercase);
    letter-spacing: var(--ar-nav-spacing, 0.1em);
    line-height: 1;
  }

  .ar-pnav__title {
    font-family: var(--ar-title-font, inherit);
    font-weight: var(--ar-title-weight, inherit);
    font-size: 13px;
    color: var(--ar-title-color, #111);
    line-height: 1.3;
  }
/* END_SECTION:article */

/* START_SECTION:blog (INDEX:5) */
.bl-section {
    background: var(--bl-bg, transparent);
    padding: var(--bl-pad-top-m, 48px) var(--bl-pad-h-m, 20px) var(--bl-pad-bottom-m, 48px);
  }

  @media screen and (min-width: 1200px) {
    .bl-section {
      padding: var(--bl-pad-top-d, 80px) var(--bl-pad-h-d, 40px) var(--bl-pad-bottom-d, 80px);
    }
  }

  /* ── Page heading ── */
  .bl-section__page-heading {
    font-family: var(--bl-heading-font, inherit);
    font-weight: var(--bl-heading-weight, inherit);
    font-size: var(--bl-heading-size-m, 24px);
    color: var(--bl-heading-color, #111);
    text-transform: var(--bl-heading-transform, none);
    letter-spacing: var(--bl-heading-spacing, 0em);
    margin: 0 0 var(--bl-heading-mb, 48px);
  }

  @media screen and (min-width: 1200px) {
    .bl-section__page-heading {
      font-size: var(--bl-heading-size-d, 32px);
    }
  }

  /* ── Grid ── */
  .bl-section__grid {
    display: grid;
    grid-template-columns: repeat(var(--bl-cols-m, 1), 1fr);
    gap: var(--bl-gap-m, 32px);
  }

  @media screen and (min-width: 1200px) {
    .bl-section__grid {
      grid-template-columns: repeat(var(--bl-cols-d, 3), 1fr);
      gap: var(--bl-gap-d, 40px);
    }
  }

  /* ── Card ── */
  .bl-card {
    background: var(--bl-card-bg, transparent);
    padding: var(--bl-card-pad, 0px);
  }

  /* ── Image ── */
  .bl-card__img-wrap {
    display: block;
    position: relative;
    aspect-ratio: var(--bl-img-ratio, 3/2);
    overflow: hidden;
    margin-bottom: var(--bl-img-mb, 20px);
    font-size: 0;
    line-height: 0;
    color: transparent;
    text-decoration: none;
  }

  .bl-card__img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  .bl-card__img-ph {
    position: absolute;
    inset: 0;
    background: #e8e8e8;
  }

  /* ── Meta ── */
  .bl-card__meta {
    font-family: var(--bl-meta-font, inherit);
    font-weight: var(--bl-meta-weight, inherit);
    font-size: var(--bl-meta-size-m, 10px);
    color: var(--bl-meta-color, #aaa);
    text-transform: var(--bl-meta-transform, uppercase);
    letter-spacing: var(--bl-meta-spacing, 0.1em);
    margin: 0 0 var(--bl-meta-mb, 14px);
    line-height: 1;
  }

  @media screen and (min-width: 1200px) {
    .bl-card__meta {
      font-size: var(--bl-meta-size-d, 10px);
    }
  }

  /* ── Title ── */
  .bl-card__title {
    font-family: var(--bl-title-font, inherit);
    font-weight: var(--bl-title-weight, inherit);
    font-size: var(--bl-title-size-m, 18px);
    color: var(--bl-title-color, #111);
    text-transform: var(--bl-title-transform, none);
    letter-spacing: var(--bl-title-spacing, 0em);
    line-height: var(--bl-title-lh, 1.3);
    margin: 0 0 var(--bl-title-mb, 10px);
  }

  @media screen and (min-width: 1200px) {
    .bl-card__title {
      font-size: var(--bl-title-size-d, 20px);
    }
  }

  .bl-card__title-link {
    color: inherit;
    text-decoration: none;
  }

  /* ── Excerpt ── */
  .bl-card__excerpt {
    font-family: var(--bl-excerpt-font, inherit);
    font-weight: var(--bl-excerpt-weight, inherit);
    font-size: var(--bl-excerpt-size-m, 13px);
    color: var(--bl-excerpt-color, #555);
    line-height: var(--bl-excerpt-lh, 1.6);
    margin: 0 0 var(--bl-excerpt-mb, 16px);
  }

  @media screen and (min-width: 1200px) {
    .bl-card__excerpt {
      font-size: var(--bl-excerpt-size-d, 14px);
    }
  }

  /* ── Read more link ── */
  .bl-card__link {
    display: inline-block;
    font-family: var(--bl-link-font, inherit);
    font-weight: var(--bl-link-weight, inherit);
    font-size: var(--bl-link-size-m, 10px);
    color: var(--bl-link-color, #111);
    text-transform: var(--bl-link-transform, uppercase);
    letter-spacing: var(--bl-link-spacing, 0.1em);
    text-decoration: none;
    border-bottom: 1px solid var(--bl-link-border, #111);
    line-height: 1;
    padding-bottom: 2px;
  }

  @media screen and (min-width: 1200px) {
    .bl-card__link {
      font-size: var(--bl-link-size-d, 10px);
    }
  }

  /* ── Empty state ── */
  .bl-section__empty {
    font-family: var(--bl-excerpt-font, inherit);
    font-size: var(--bl-excerpt-size-d, 14px);
    color: var(--bl-excerpt-color, #555);
  }

  /* ── Pagination ── */
  .bl-section__pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
    margin-top: 60px;
    padding-top: 32px;
    border-top: 1px solid var(--bl-pag-border, #e5e5e5);
  }

  .bl-pag__btn {
    font-family: var(--bl-pag-font, inherit);
    font-weight: var(--bl-pag-weight, inherit);
    font-size: var(--bl-pag-size, 11px);
    color: var(--bl-pag-color, #111);
    text-transform: var(--bl-pag-transform, uppercase);
    letter-spacing: var(--bl-pag-spacing, 0.1em);
    text-decoration: none;
    line-height: 1;
  }

  .bl-pag__btn--disabled {
    opacity: 0.3;
    cursor: default;
  }

  .bl-pag__info {
    font-family: var(--bl-pag-font, inherit);
    font-size: var(--bl-pag-size, 11px);
    color: var(--bl-pag-color, #111);
    letter-spacing: var(--bl-pag-spacing, 0.1em);
  }
/* END_SECTION:blog */

/* START_SECTION:cart (INDEX:6) */
.cart-page {
    width: 100%;
    padding: 32px 16px 80px;
    box-sizing: border-box;
  }
  @media screen and (min-width: 1200px) {
    .cart-page {
      padding: 40px 24px 80px;
    }
  }
  @media screen and (min-width: 1200px) {
    .cart-page {
      padding: 48px 40px 80px;
    }
  }

  .cart-page__empty {
    display: flex; flex-direction: column; align-items: center;
    gap: 20px; padding: 80px 20px; text-align: center;
  }
  .cart-page__empty svg { opacity: 0.2; }
  .cart-page__empty p {
    font-family: var(--cp-continue-font);
    font-weight: var(--cp-continue-weight);
    font-size: var(--cp-continue-size);
    color: var(--cp-continue-color);
    text-transform: var(--cp-continue-transform);
    letter-spacing: var(--cp-continue-spacing);
    margin: 0;
  }

  .cart-page__layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
  }
  @media screen and (min-width: 1200px) {
    .cart-page__layout {
      grid-template-columns: 1fr 1fr;
      gap: 64px;
      align-items: start;
    }
  }

  /* ── Item ── */
  .cart-page__item {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 12px;
    padding: 8px 0;
  }
  .cart-page__item-image-link { display: block; flex-shrink: 0; color: inherit; font-size: 0; line-height: 0; }
  .cart-page__item-img {
    width: 80px;
    height: 104px;
    object-fit: cover;
    display: block;
    background: #f5f5f5;
  }
  .cart-page__item-img--placeholder { background: #f3f3f3; }

  .cart-page__item-info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 4px;
    min-height: 104px;
    min-width: 0;
  }

  @media screen and (min-width: 1200px) {
    .cart-page__item {
      grid-template-columns: 110px 1fr;
      gap: 16px;
    }
    .cart-page__item-img {
      width: 110px;
      height: 140px;
    }
    .cart-page__item-info {
      min-height: 140px;
    }
  }

  @media screen and (min-width: 1200px) {
    .cart-page__item {
      grid-template-columns: 200px 1fr;
    }
    .cart-page__item-img {
      width: 200px;
      height: 260px;
    }
    .cart-page__item-info {
      min-height: 260px;
    }
  }

  /* title row */
  .cart-page__item-title-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 8px;
  }
  .cart-page__item-title {
    font-size: var(--cp-title-size, 13px);
    font-weight: var(--cp-title-weight, 500);
    font-family: var(--cp-title-font, inherit);
    letter-spacing: var(--cp-title-spacing, 0em);
    text-transform: var(--cp-title-transform, none);
    color: var(--cp-title-color, inherit);
    text-decoration: none;
    line-height: 1.3;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: calc(100% - 60px);
  }
  .cart-page__item-title:hover { text-decoration: underline; }

  .cart-page__item-price-top {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
  }
  .cart-page__item-price {
    display: block;
    font-size: var(--cp-price-size, 13px);
    font-family: var(--cp-price-font, inherit);
    font-weight: var(--cp-price-weight, 500);
    letter-spacing: var(--cp-price-spacing, 0em);
    text-transform: var(--cp-price-transform, none);
    color: var(--cp-price-color, inherit);
    white-space: nowrap;
  }
  .cart-page__item-price--sale { color: #c00; }
  .cart-page__item-price--compare { text-decoration: line-through; font-size: 11px; }

  /* variants */
  .cart-page__item-variant {
    display: block;
    font-size: var(--cp-variant-size, 12px);
    font-family: var(--cp-variant-font, inherit);
    font-weight: var(--cp-variant-weight, 400);
    letter-spacing: var(--cp-variant-spacing, 0em);
    text-transform: var(--cp-variant-transform, none);
    color: var(--cp-variant-color, inherit);
    line-height: 1.6;
  }

  /* actions row */
  .cart-page__item-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    gap: 12px;
  }
  .cart-page__item-actions__right {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  /* qty */
  .cart-page__qty {
    display: flex;
    align-items: center;
    font-size: var(--cp-variant-size, 12px);
    font-family: var(--cp-variant-font, inherit);
    color: var(--cp-variant-color, inherit);
  }
  .cart-page__qty-btn {
    width: calc(var(--cp-variant-size, 12px) * 1.8);
    height: calc(var(--cp-variant-size, 12px) * 1.8);
    display: flex; align-items: center; justify-content: center;
    background: none; border: none; cursor: pointer;
    font-size: var(--cp-variant-size, 12px);
    color: inherit; flex-shrink: 0;
  }
  .cart-page__qty-btn:hover { opacity: 0.6; }
  .cart-page__qty-input {
    width: calc(var(--cp-variant-size, 12px) * 2);
    height: calc(var(--cp-variant-size, 12px) * 1.8);
    border: none; text-align: center;
    font-size: var(--cp-variant-size, 12px);
    background: none; color: inherit;
    -moz-appearance: textfield;
  }
  .cart-page__qty-input::-webkit-outer-spin-button,
  .cart-page__qty-input::-webkit-inner-spin-button { -webkit-appearance: none; }

  /* remove X */
  .cart-page__remove {
    background: none; border: none; cursor: pointer; padding: 0;
    display: flex; align-items: center; justify-content: center;
    color: inherit;
  }
  .cart-page__remove svg { width: 14px; height: 14px; }

  /* Mobile-details block: shown inline on mobile, hidden on desktop */
  .cart-page__mobile-details {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 8px 0 12px;
    border-top: var(--cp-divider-thickness, 1px) solid var(--cp-divider-color, rgba(0,0,0,0.07));
    margin-top: 4px;
  }
  /* Desktop summary inner details: hidden on mobile, shown on desktop */
  .cart-page__summary-desktop-details {
    display: none;
  }
  @media screen and (min-width: 1200px) {
    .cart-page__mobile-details { display: none; }
    .cart-page__summary-desktop-details { display: flex; flex-direction: column; gap: 4px; }
  }

  /* summary */
  /* Mobile: fixed panel at bottom like drawer footer */
  .cart-page__summary {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--color-background, #fff);
    border-top: 1px solid rgba(0,0,0,0.1);
    padding: 16px 16px max(20px, env(safe-area-inset-bottom));
    display: flex;
    flex-direction: column;
    gap: 4px;
    z-index: 100;
    box-shadow: 0 -4px 24px rgba(0,0,0,0.06);
    box-sizing: border-box;
    width: 100%;
  }

  .cart-page__items {
    transition: opacity 0.15s ease;
  }
  @media screen and (max-width: 1199px) {
    .cart-page__summary .cart-page__summary-desktop-details,
    .cart-page__note,
    .cart-page__summary-row--discount {
      display: none;
    }
  }

  @media screen and (min-width: 1200px) {
    .cart-page__summary {
      position: sticky;
      top: 100px;
      bottom: auto;
      left: auto;
      right: auto;
      background: rgba(0,0,0,0.025);
      border-top: none;
      padding: 28px 24px;
      gap: 4px;
      box-shadow: none;
      z-index: auto;
    }
    .cart-page__items {
      padding-bottom: 0;
    }
    .cart-page__note,
    .cart-page__summary-row--discount {
      display: flex;
    }
  }
  .cart-page__summary-title {
    font-size: var(--cp-subtotal-label-size, 14px);
    font-weight: var(--cp-subtotal-label-weight, 500);
    font-family: var(--cp-subtotal-label-font, inherit);
    letter-spacing: var(--cp-subtotal-label-spacing, 0.02em);
    text-transform: var(--cp-subtotal-label-transform, none);
    color: var(--cp-subtotal-label-color, inherit);
    margin: 0 0 12px;
  }

  .cart-page__summary-detail-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: var(--cp-divider-thickness, 1px) solid var(--cp-divider-color, rgba(0,0,0,0.07));
    font-size: 13px;
  }
  .cart-page__summary-detail-label,
  .cart-page__summary-detail-value {
    font-size: var(--cp-detail-size, 12px);
    font-weight: var(--cp-detail-weight, 400);
    font-family: var(--cp-detail-font, inherit);
    letter-spacing: var(--cp-detail-spacing, 0em);
    text-transform: var(--cp-detail-transform, none);
    color: var(--cp-detail-color, inherit);
  }
  .cart-page__subtotal-label {
    font-size: var(--cp-subtotal-label-size, 13px);
    font-weight: var(--cp-subtotal-label-weight, 400);
    font-family: var(--cp-subtotal-label-font, inherit);
    letter-spacing: var(--cp-subtotal-label-spacing, 0em);
    text-transform: var(--cp-subtotal-label-transform, none);
    color: var(--cp-subtotal-label-color, inherit);
  }
  .cart-page__subtotal-price {
    font-size: var(--cp-subtotal-price-size, 13px);
    font-weight: var(--cp-subtotal-price-weight, 400);
    font-family: var(--cp-subtotal-price-font, inherit);
    letter-spacing: var(--cp-subtotal-price-spacing, 0em);
    text-transform: var(--cp-subtotal-price-transform, none);
    color: var(--cp-subtotal-price-color, inherit);
  }

  .cart-page__promo-input-row {
    display: flex;
    align-items: center;
    gap: 0;
    border: 1px solid rgba(0,0,0,0.15);
    border-radius: 2px;
    overflow: hidden;
    transition: border-color 0.2s;
  }
  .cart-page__promo-input-row:focus-within {
    border-color: rgba(0,0,0,0.4);
  }
  .cart-page__promo-input {
    border: none;
    outline: none;
    background: transparent;
    width: 140px;
    padding: 5px 8px;
    color: inherit;
  }
  .cart-page__promo-apply {
    background: none;
    border: none;
    border-left: 1px solid rgba(0,0,0,0.12);
    cursor: pointer;
    padding: 5px 8px;
    color: inherit;
    white-space: nowrap;
    transition: opacity 0.15s, background 0.15s;
    display: none;
  }
  .cart-page__promo-apply.is-visible {
    display: block;
  }
  .cart-page__promo-apply:hover {
    opacity: 1;
    background: rgba(0,0,0,0.04);
  }
  .cart-page__summary-total-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 16px 0 8px;
  }
  .cart-page__total-label {
    font-size: var(--cp-subtotal-label-size, 13px);
    font-weight: var(--cp-subtotal-label-weight, 600);
    font-family: var(--cp-subtotal-label-font, inherit);
    letter-spacing: var(--cp-subtotal-label-spacing, 0.08em);
    text-transform: uppercase;
    color: var(--cp-subtotal-label-color, inherit);
  }
  .cart-page__total-price {
    font-size: calc(var(--cp-subtotal-price-size, 13px) * 1.6);
    font-weight: var(--cp-subtotal-price-weight, 400);
    font-family: var(--cp-subtotal-price-font, inherit);
    letter-spacing: var(--cp-subtotal-price-spacing, 0em);
    color: var(--cp-subtotal-price-color, inherit);
  }
  .cart-page__summary-row--discount { color: #c00; }
  .cart-page__shipping-note {
    font-size: var(--cp-taxes-size, 11px);
    font-family: var(--cp-taxes-font, inherit);
    font-weight: var(--cp-taxes-weight, 400);
    letter-spacing: var(--cp-taxes-spacing, 0em);
    text-transform: var(--cp-taxes-transform, none);
    color: var(--cp-taxes-color, inherit);
    margin: 0;
    display: block;
    text-align: center;
  }
  @media screen and (min-width: 1200px) {
    .cart-page__shipping-note {
      text-align: left;
    }
  }
  .cart-page__note { display: none; flex-direction: column; gap: 6px; }
  @media screen and (min-width: 1200px) {
    .cart-page__note { margin-bottom: 12px; margin-top: 12px; }
  }
  @media screen and (min-width: 1200px) {
    .cart-page__note { display: flex; }
  }
  .cart-page__note-label { font-size: 12px; }
  .cart-page__toast {
    position: fixed;
    top: var(--cp-toast-top, 120px);
    left: 50%;
    transform: translateX(-50%) translateY(-12px);
    display: flex;
    align-items: center;
    gap: 18px;
    background: #fff;
    border: var(--cp-toast-border-width, 1px) solid var(--cp-toast-border-color, #d8d8d8);
    border-radius: var(--cp-toast-radius, 0px);
    padding: 13px 20px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    z-index: 99999;
    transition: opacity 0.22s, transform 0.22s;
  }
  .cart-page__toast.is-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
  }
  .cart-page__toast.is-error { border-color: #c00; color: #c00; }
    .cart-page__note-input {
    width: 100%; border: 1px solid rgba(0,0,0,0.15);
    padding: 10px 12px; font-size: 13px;
    background: var(--color-background, #fff); color: var(--color-foreground, #111);
    resize: vertical; font-family: inherit; box-sizing: border-box;
  }

  .cart-page__payment-icons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding-top: 8px;
  }
  .cart-page__payment-icon {
    height: 16px;
    width: auto;
    border-radius: 3px;
  }

  .cart-page__continue {
    display: block;
    text-align: left;
    text-decoration: underline;
    font-family: var(--cp-continue-font, inherit);
    font-weight: var(--cp-continue-weight, 400);
    font-size: var(--cp-continue-size, 12px);
    letter-spacing: var(--cp-continue-spacing, 0.03em);
    text-transform: var(--cp-continue-transform, none);
    color: var(--cp-continue-color, inherit);
  }

  /* ── Accordion ── */
  /* Mobile copy: normal flow under products */
  .cart-page__accordion--mobile {
    display: block;
    position: static !important;
    transform: none !important;
    bottom: auto !important;
    z-index: auto !important;
    box-shadow: none !important;
    background: none !important;
  }
  /* Desktop copy: hidden on mobile */
  .cart-page__accordion--desktop { display: none; }
  @media screen and (min-width: 1200px) {
    .cart-page__accordion--mobile { display: none; }
    .cart-page__accordion--desktop { display: block; }
  }
  .cart-page__accordion {
    border: var(--cp-divider-thickness, 1px) solid var(--cp-divider-color, rgba(0,0,0,0.08));
    margin-top: 8px;
  }
  .cart-page__accordion--mobile {
    margin-top: 8px;
  }
  @media screen and (min-width: 1200px) {
    .cart-page__accordion {
      margin-top: 8px;
    }
  }
  .cart-page__accordion-item {
    border-bottom: 1px solid var(--cp-divider-color, rgba(0,0,0,0.08));
  }
  .cart-page__accordion-item:last-child {
    border-bottom: none;
  }
  .cart-page__accordion-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 14px 20px;
    background: none;
    border: none;
    cursor: pointer;
    font-family: var(--cp-accordion-font, inherit);
    font-weight: var(--cp-accordion-weight, 400);
    font-size: var(--cp-accordion-size, 12px);
    letter-spacing: var(--cp-accordion-spacing, 0em);
    text-transform: var(--cp-accordion-transform, none);
    color: var(--cp-accordion-color, inherit);
    text-align: left;
  }
  .cart-page__accordion-chevron {
    flex-shrink: 0;
    transition: transform 0.2s ease;
  }
  .cart-page__accordion-trigger[aria-expanded="true"] .cart-page__accordion-chevron {
    transform: rotate(180deg);
  }
  .cart-page__accordion-content {
    display: none;
    padding: 0 20px 14px;
    line-height: 1.6;
  }
  .cart-page__accordion-trigger[aria-expanded="true"] + .cart-page__accordion-content {
    display: block;
  }
  .cart-page__accordion-body,
  .cart-page__accordion-body p,
  .cart-page__accordion-body h1,
  .cart-page__accordion-body h2,
  .cart-page__accordion-body h3,
  .cart-page__accordion-body h4,
  .cart-page__accordion-body li,
  .cart-page__accordion-body span {
    font-family: var(--cp-accordion-body-font, inherit) !important;
    font-weight: var(--cp-accordion-body-weight, 400) !important;
    font-size: var(--cp-accordion-body-size, 11px) !important;
    letter-spacing: var(--cp-accordion-body-spacing, 0em) !important;
    text-transform: var(--cp-accordion-body-transform, none) !important;
    color: var(--cp-accordion-body-color, inherit) !important;
    margin: 0;
    padding: 0;
  }
  .cart-page__accordion-link,
  .cart-page__accordion-body a {
    font-family: var(--cp-accordion-body-font, inherit) !important;
    font-weight: var(--cp-accordion-body-weight, 400) !important;
    font-size: var(--cp-accordion-body-size, 11px) !important;
    letter-spacing: var(--cp-accordion-body-spacing, 0em) !important;
    text-transform: var(--cp-accordion-body-transform, none) !important;
    color: var(--cp-accordion-body-color, inherit) !important;
    text-decoration: underline;
  }
/* END_SECTION:cart */

/* START_SECTION:collections (INDEX:8) */
.coll-list {
  display: grid;
  grid-template-columns: repeat(var(--coll-cols, 1), 1fr);
  gap: var(--coll-gap, 80px);
  padding: var(--coll-pad, 40px 0 80px);
  margin-top: var(--coll-offset, 0px);
}
.coll-list--transparent .coll-card__text {
  padding-top: calc(var(--coll-title-gap, 0px) + var(--coll-offset-pad, 0px));
}
@media (max-width: 1199px) {
  .coll-list {
    grid-template-columns: repeat(var(--coll-cols-m, 1), 1fr);
    gap: var(--coll-gap-m, 60px);
  }
}
.coll-wrapper {
  width: 100%;
}
.coll-bar {
  background: var(--coll-bar-bg, #fff);
  border-bottom: var(--coll-bar-border, 1px) solid var(--coll-bar-border-color, #e8e8e8);
}
.coll-bar--sticky { position: sticky; top: 0; z-index: 100; transition: top 0.35s cubic-bezier(0.4,0,0.2,1); }
.coll-bar__tabs {
  display: flex;
  align-items: center;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.coll-bar__tabs::-webkit-scrollbar { display: none; }
.coll-bar__dropdown {
  display: none;
  align-items: center;
  position: relative;
  width: 100%;
}
.coll-bar__select {
  display: flex;
  align-items: center;
  gap: 8px;
  appearance: none;
  -webkit-appearance: none;
  background: none;
  border: none;
  cursor: pointer;
  padding: var(--coll-bar-pad-v, 14px) 20px;
  font-family: var(--coll-bar-font, inherit);
  font-weight: var(--coll-bar-weight, inherit);
  font-size: var(--coll-bar-size, 12px);
  color: var(--coll-bar-color, #111);
  text-transform: var(--coll-bar-transform, uppercase);
  letter-spacing: var(--coll-bar-spacing, 0.08em);
  width: 100%;
  outline: none;
  text-align: left;
}
.coll-bar__chevron {
  flex-shrink: 0;
  pointer-events: none;
  color: var(--coll-bar-color, #111);
  opacity: 0.6;
}
.coll-bar__panel {
  position: absolute;
  top: 100%;
  left: 0;
  background: #fff;
  border: 1px solid #e0e0e0;
  min-width: 200px;
  z-index: 200;
  display: flex;
  flex-direction: column;
}
.coll-bar__panel[hidden] { display: none; }
.coll-bar__panel-opt {
  background: none;
  border: none;
  cursor: pointer;
  padding: var(--coll-bar-pad-v, 14px) 20px;
  text-align: left;
  font-family: var(--coll-bar-font, inherit);
  font-weight: var(--coll-bar-weight, inherit);
  font-size: var(--coll-bar-size, 12px);
  color: var(--coll-bar-color, #111);
  text-transform: var(--coll-bar-transform, uppercase);
  letter-spacing: var(--coll-bar-spacing, 0.08em);
  transition: background 0.15s;
  white-space: nowrap;
}
.coll-bar__panel-opt:hover { background: #f5f5f5; }
.coll-bar__panel-opt.is-active { font-weight: 600; }
.coll-bar--overflow .coll-bar__tabs { display: none; }
.coll-bar--overflow .coll-bar__dropdown { display: flex; }
.coll-bar__btn {
  flex-shrink: 0; background: none; border: none; cursor: pointer;
  padding: var(--coll-bar-pad-v, 14px) 20px;
  font-family: var(--coll-bar-font, inherit); font-weight: var(--coll-bar-weight, inherit);
  font-size: var(--coll-bar-size, 12px); color: var(--coll-bar-color, #111);
  text-transform: var(--coll-bar-transform, uppercase);
  letter-spacing: var(--coll-bar-spacing, 0.08em);
  opacity: 0.45; transition: opacity 0.2s; position: relative; white-space: nowrap;
}

.coll-bar__btn.is-active { opacity: 1; color: var(--coll-bar-active-color, #111); }
.coll-card {
  display: block;
  text-decoration: none;
  color: inherit;
}
.coll-card--paged { display: none; }
.coll-card--paged.is-active { display: block; }
.coll-nav-btns {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.coll-prev-btn,
.coll-next-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  background: none;
  border: none;
  cursor: pointer;
  padding: var(--coll-next-pad-v, 16px) var(--coll-next-pad-h, 0px);
  color: var(--coll-next-color, currentColor);
  font-family: var(--coll-next-font, inherit);
  font-weight: var(--coll-next-weight, inherit);
  font-size: var(--coll-next-size-m, 13px);
  text-transform: var(--coll-next-transform, none);
  letter-spacing: var(--coll-next-spacing, 0em);
}
.coll-prev-btn svg,
.coll-next-btn svg { flex-shrink: 0; }
.coll-prev-btn__name,
.coll-next-btn__name { font-weight: inherit; }
@media (min-width: 1200px) {
  .coll-prev-btn, .coll-next-btn { font-size: var(--coll-next-size, 14px); }
}
.coll-card__img-wrap {
  overflow: hidden;
  width: 100%;
  position: relative;
  border-radius: var(--coll-img-radius, 0px);
}
.coll-card__overlay-title {
  position: absolute;
  bottom: var(--coll-ot-bottom, 24px);
  left: 0;
  right: 0;
  text-align: var(--coll-ot-align, center);
  padding: 0 var(--coll-ot-pad-h, 20px);
  font-family: var(--coll-ot-font, inherit);
  font-weight: var(--coll-ot-weight, inherit);
  font-size: var(--coll-ot-size-m, 16px);
  color: var(--coll-ot-color, #ffffff);
  text-transform: var(--coll-ot-transform, none);
  letter-spacing: var(--coll-ot-spacing, 0em);
  line-height: var(--coll-ot-lh, 1.1);
  pointer-events: none;
}
@media (min-width: 1200px) {
  .coll-card__overlay-title {
    font-size: var(--coll-ot-size, 20px);
  }
}
.coll-card__overlay-title span {
  position: relative;
  display: inline-block;
}
.coll-card__overlay-title--underline span::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  right: 0;
  height: 1px;
  background: var(--coll-ot-decoration-color, currentColor);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.25s ease;
}
.coll-card:hover .coll-card__overlay-title--underline span::after { transform: scaleX(1); }
.coll-card__img {
  display: block;
  width: 100%;
  height: var(--coll-img-h-m, 60vw);
  object-fit: var(--coll-img-fit, cover);
  object-position: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.coll-card__img.coll-loaded {
  opacity: 1;
}
@media (min-width: 1200px) {
  .coll-card__img {
    height: var(--coll-img-h, 70vh);
  }
}
.coll-card__video-wrap {
  position: relative;
  width: 100%;
}
.coll-card__video {
  object-fit: cover;
  display: block;
  width: 100%;
}
.coll-card:hover .coll-card__video { transform: none; }
/* ── Custom video controls ── */
.coll-video-controls {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: 60%;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px 8px;
  background: transparent;
  color: #fff;
  opacity: 1;
}
.coll-video-controls__play,
.coll-video-controls__skip,
.coll-video-controls__fullscreen,
.coll-video-controls__mute {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: #fff;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  opacity: 0.85;
  transition: opacity 0.15s;
}
.coll-video-controls__play:hover,
.coll-video-controls__skip:hover,
.coll-video-controls__fullscreen:hover,
.coll-video-controls__mute:hover { opacity: 1; }
.coll-video-controls__progress {
  flex: 1;
  display: flex;
  align-items: center;
  cursor: pointer;
  padding: 5px 0;
}
.coll-video-controls__track {
  position: relative;
  width: 100%;
  height: 1px;
  background: rgba(255,255,255,0.35);
}
.coll-video-controls__fill {
  position: absolute;
  left: 0; top: 0; bottom: 0;
  background: #fff;
  width: 0%;
  pointer-events: none;
}
.coll-video-controls__thumb {
  position: absolute;
  top: 50%;
  left: 0%;
  width: 7px;
  height: 7px;
  background: #fff;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.15s;
}
.coll-video-controls__progress:hover .coll-video-controls__thumb { opacity: 1; }
.coll-video-controls__right {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.coll-card:hover .coll-card__video {
  transform: none;
}
.coll-card__text {
  padding-top: var(--coll-title-gap, 0px);
  padding-bottom: 20px;
  text-align: var(--coll-text-align, left);
}
@media (min-width: 1200px) {
  .coll-card__text {
    padding-top: var(--coll-title-gap, 0px);
    padding-bottom: 28px;
  }
}
.coll-card__title {
  margin: 0 0 4px;
  font-family: var(--coll-title-font, inherit);
  font-weight: var(--coll-title-weight, inherit);
  font-size: var(--coll-title-size-m, 28px);
  color: var(--coll-title-color, currentColor);
  line-height: var(--coll-title-lh, 1.05);
  text-transform: var(--coll-title-transform, none);
  letter-spacing: var(--coll-title-spacing, 0em);
  text-align: var(--coll-title-align, left);
}
@media (min-width: 1200px) {
  .coll-card__title {
    font-size: var(--coll-title-size, 40px);
  }
}
.coll-card__subtitle {
  margin: 0 0 4px;
  font-family: var(--coll-subtitle-font, inherit);
  font-weight: var(--coll-subtitle-weight, inherit);
  font-size: var(--coll-subtitle-size-m, 10px);
  color: var(--coll-subtitle-color, currentColor);
  line-height: var(--coll-subtitle-lh, 1.4);
  text-transform: var(--coll-subtitle-transform, uppercase);
  letter-spacing: var(--coll-subtitle-spacing, 0.08em);
  text-align: var(--coll-subtitle-align, left);
}
@media (min-width: 1200px) {
  .coll-card__subtitle {
    font-size: var(--coll-subtitle-size, 11px);
  }
}
.coll-card__desc {
  margin-top: var(--coll-desc-gap, 40px);
  margin-inline: var(--coll-desc-margin-inline, 0 auto);
  font-family: var(--coll-desc-font, inherit);
  font-weight: var(--coll-desc-weight, inherit);
  font-size: var(--coll-desc-size-m, 13px);
  color: var(--coll-desc-color, currentColor);
  line-height: var(--coll-desc-lh, 1.65);
  text-align: var(--coll-desc-text-align, justify);
  text-transform: var(--coll-desc-transform, none);
  letter-spacing: var(--coll-desc-spacing, 0em);
  max-width: var(--coll-desc-max-width, 100%);
}
.coll-card__desc p { margin: 0 0 1em; font-family: var(--coll-desc-font, inherit); font-weight: var(--coll-desc-weight, inherit); font-size: var(--coll-desc-size-m, 13px); color: var(--coll-desc-color, currentColor); text-transform: var(--coll-desc-transform, none); letter-spacing: var(--coll-desc-spacing, 0em); }
.coll-card__desc p:last-child { margin-bottom: 0; }
@media (min-width: 1200px) {
  .coll-card__desc {
    font-size: var(--coll-desc-size, 14px);
  }
  .coll-card__desc p {
    font-size: var(--coll-desc-size, 14px);
  }
}
/* END_SECTION:collections */

/* START_SECTION:custom-section (INDEX:12) */
.custom-section {
    position: relative;
    overflow: hidden;
    width: 100%;
  }
  .custom-section__background {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
  }
  .custom-section__background img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .custom-section__content {
    display: grid;
    grid-template-columns: var(--content-grid);
  }
  .custom-section__content > * {
    grid-column: 2;
  }
/* END_SECTION:custom-section */

/* START_SECTION:faq (INDEX:13) */
.faq-section {
    background: var(--faq-bg, transparent);
    padding: var(--faq-pad-top-m) var(--faq-pad-h-m) var(--faq-pad-bottom-m);
  }

  @media screen and (min-width: 1200px) {
    .faq-section {
      padding: var(--faq-pad-top-d) var(--faq-pad-h-d) var(--faq-pad-bottom-d);
    }
  }

  .faq-section__inner {
    max-width: var(--faq-max-width, 800px);
    margin: 0 auto;
  }

  .faq-section__heading {
    font-family: var(--faq-heading-font, inherit);
    font-weight: var(--faq-heading-weight, inherit);
    color: var(--faq-heading-color, inherit);
    font-size: var(--faq-heading-size-m, 24px);
    text-transform: var(--faq-heading-transform, none);
    letter-spacing: var(--faq-heading-spacing, 0em);
    text-align: var(--faq-heading-align, left);
    margin: 0 0 var(--faq-heading-mb, 32px);
  }

  @media screen and (min-width: 1200px) {
    .faq-section__heading {
      font-size: var(--faq-heading-size-d, 32px);
    }
  }

  .faq-section__list {
    border-top: var(--faq-divider-thickness, 1px) solid var(--faq-divider-color, #e8e8e8);
  }

  .faq-section__item {
    border-bottom: var(--faq-divider-thickness, 1px) solid var(--faq-divider-color, #e8e8e8);
  }

  .faq-section__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    padding: var(--faq-item-pad-v, 18px) 0;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    font-family: var(--faq-q-font, inherit);
    font-weight: var(--faq-q-weight, inherit);
    color: var(--faq-q-color, inherit);
    font-size: var(--faq-q-size-m, 14px);
    text-transform: var(--faq-q-transform, none);
    letter-spacing: var(--faq-q-spacing, 0em);
  }

  @media screen and (min-width: 1200px) {
    .faq-section__trigger {
      font-size: var(--faq-q-size-d, 15px);
    }
  }

  .faq-section__icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    color: var(--faq-icon-color, inherit);
    font-size: var(--faq-icon-size, 16px);
    transition: transform 0.25s ease;
  }

  /* Chevron rotates on open */
  .faq-section__trigger[aria-expanded="true"] .faq-section__icon {
    transform: rotate(180deg);
  }

  /* Plus/minus swap — reset rotation */
  .faq-section__trigger[aria-expanded="true"] .faq-section__icon:has(.faq-icon-plus) {
    transform: none;
  }

  .faq-icon-minus { display: none; }
  .faq-section__trigger[aria-expanded="true"] .faq-icon-plus { display: none; }
  .faq-section__trigger[aria-expanded="true"] .faq-icon-minus { display: block; }

  /* Arrow rotates on open */
  .faq-section__trigger[aria-expanded="true"] .faq-section__icon:has(polyline) {
    transform: rotate(180deg);
  }

  .faq-section__answer {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.28s ease;
  }

  .faq-section__trigger[aria-expanded="true"] + .faq-section__answer {
    grid-template-rows: 1fr;
  }

  .faq-section__answer-inner {
    overflow: hidden;
    font-family: var(--faq-a-font, inherit);
    font-weight: var(--faq-a-weight, inherit);
    color: var(--faq-a-color, inherit);
    font-size: var(--faq-a-size-m, 13px);
    text-transform: var(--faq-a-transform, none);
    letter-spacing: var(--faq-a-spacing, 0em);
    line-height: 1.65;
  }

  @media screen and (min-width: 1200px) {
    .faq-section__answer-inner {
      font-size: var(--faq-a-size-d, 14px);
    }
  }

  .faq-section__answer-inner > :first-child { margin-top: 0; }
  .faq-section__answer-inner > :last-child { margin-bottom: var(--faq-item-pad-v, 18px); }

  .faq-section__empty {
    color: #999;
    font-size: 14px;
  }
/* END_SECTION:faq */

/* START_SECTION:featured-collections (INDEX:14) */
.fc-section {
  background: var(--fc-bg);
  padding: var(--fc-pad-top-d) var(--fc-pad-x-d) var(--fc-pad-bottom-d);
}

/* ── Section Header ── */
.fc-section__header {
  margin-bottom: var(--fc-heading-mb);
  text-align: var(--fc-text-align);
}
.fc-section__label {
  font-family: var(--fc-label-font);
  font-weight: var(--fc-label-weight);
  font-size: var(--fc-label-size-d);
  color: var(--fc-label-color);
  text-transform: var(--fc-label-transform);
  letter-spacing: var(--fc-label-spacing);
  margin: 0 0 var(--fc-label-mb);
}
.fc-section__heading {
  font-family: var(--fc-heading-font);
  font-weight: var(--fc-heading-weight);
  font-size: var(--fc-heading-size-d);
  color: var(--fc-heading-color);
  text-transform: var(--fc-heading-transform);
  letter-spacing: var(--fc-heading-spacing);
  line-height: var(--fc-heading-lh);
  margin: 0;
}

/* ── Grid ── */
.fc-grid {
  display: grid;
  grid-template-columns: repeat(var(--fc-cols-d), 1fr);
  gap: var(--fc-gap-d);
}

/* ── Card ── */
.fc-card {
  display: block;
  text-decoration: none;
  color: inherit;
}
.fc-card__img-wrap {
  position: relative;
  overflow: hidden;
  border-radius: var(--fc-img-radius);
  aspect-ratio: var(--fc-img-ratio);
}
.fc-card__img {
  width: 100%;
  height: 100%;
  object-fit: var(--fc-img-fit);
  display: block;
  transition: transform 0.5s ease, opacity 0.3s ease;
  opacity: 0;
}
.fc-card__img.fc-loaded {
  opacity: 1;
}
.fc-card:hover .fc-card__img {
  transform: scale(var(--fc-hover-scale));
}
.fc-card__img--placeholder {
  background: #f5f5f5;
}
.fc-card__placeholder-svg {
  width: 100%;
  height: 100%;
  opacity: 0.2;
}
.fc-card__overlay {
  position: absolute;
  inset: 0;
  background: var(--fc-overlay-color);
  opacity: var(--fc-overlay-opacity);
  pointer-events: none;
}
.fc-card__text {
  padding-top: var(--fc-text-pad-top);
  text-align: var(--fc-text-align);
}
.fc-card__label {
  font-family: var(--fc-label-font);
  font-weight: var(--fc-label-weight);
  font-size: var(--fc-label-size-d);
  color: var(--fc-label-color);
  text-transform: var(--fc-label-transform);
  letter-spacing: var(--fc-label-spacing);
  margin: 0 0 4px;
}
.fc-card__title {
  font-family: var(--fc-title-font);
  font-weight: var(--fc-title-weight);
  font-size: var(--fc-title-size-d);
  color: var(--fc-title-color);
  text-transform: var(--fc-title-transform);
  letter-spacing: var(--fc-title-spacing);
  margin: 0;
}
.fc-card__count {
  font-family: var(--fc-count-font);
  font-weight: var(--fc-count-weight);
  font-size: var(--fc-count-size);
  color: var(--fc-count-color);
  text-transform: var(--fc-count-transform);
  letter-spacing: var(--fc-count-spacing);
  margin: 4px 0 0;
}

/* ── View All ── */
.fc-section__cta {
  margin-top: 40px;
  text-align: var(--fc-text-align);
}
.fc-section__cta-btn {
  display: inline-block;
  font-family: var(--fc-title-font);
  font-weight: var(--fc-title-weight);
  font-size: var(--fc-title-size-d);
  color: var(--fc-title-color);
  text-transform: var(--fc-title-transform);
  letter-spacing: var(--fc-title-spacing);
  text-decoration: underline;
}

/* ── Mobile ── */
@media screen and (max-width: 1199px) {
  .fc-section {
    padding: var(--fc-pad-top-m) var(--fc-pad-x-m) var(--fc-pad-bottom-m);
  }
  .fc-grid {
    grid-template-columns: repeat(var(--fc-cols-m), 1fr);
    gap: var(--fc-gap-m);
  }
  .fc-section__heading { font-size: var(--fc-heading-size-m); }
  .fc-section__label   { font-size: var(--fc-label-size-m); }
  .fc-card__title      { font-size: var(--fc-title-size-m); }
  .fc-card__label      { font-size: var(--fc-label-size-m); }
}
/* END_SECTION:featured-collections */

/* START_SECTION:footer (INDEX:15) */
.footer {
  background: var(--footer-bg, #fff);
  color: var(--footer-color, #111);
  border-top: var(--footer-border-thickness, 1px) solid var(--footer-border-color, #e5e5e5);
}
.footer__inner {
  max-width: var(--page-width, 1400px);
  margin: 0 auto;
  padding: var(--footer-pad-top, 60px) var(--footer-side-pad, 40px) var(--footer-pad-bottom, 40px);
}

/* ── Top row ── */
.footer__top {
  display: flex;
  gap: var(--footer-col-gap, 60px);
  align-items: flex-start;
  justify-content: space-between;
}

/* ── Newsletter column ── */
.footer__col--newsletter {
  flex: 0 0 260px;
  min-width: 0;
}
.footer__col--newsletter-klaviyo {
  flex: 0 0 {{ section.settings.klaviyo_col_width | default: 360 }}px;
}
.footer__newsletter-sub {
  margin: 6px 0 16px;
  font-family: var(--footer-body-font);
  font-weight: var(--footer-body-weight);
  font-size: var(--footer-body-size, 13px);
  color: var(--footer-body-color, #111);
  text-transform: var(--footer-body-transform, none);
  letter-spacing: var(--footer-body-spacing, 0);
  line-height: 1.4;
}

/* ── Email row ── */
.footer__email-row {
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--footer-email-row-border, #e5e5e5);
  padding-bottom: 6px;
  margin-bottom: 16px;
  gap: 8px;
}
.footer__email-input {
  flex: 1;
  border: none;
  outline: none;
  background: transparent;
  font-family: var(--footer-input-font);
  font-weight: var(--footer-input-weight);
  font-size: var(--footer-input-size, 13px);
  color: var(--footer-input-color, #111);
  text-transform: var(--footer-input-transform, none);
  letter-spacing: var(--footer-input-spacing, 0);
  padding: 4px 0;
}
.footer__email-input::placeholder {
  color: var(--footer-input-color, #111);
  opacity: 0.4;
}
.footer__email-btn {
  background: var(--footer-btn-bg, transparent);
  border: 1px solid var(--footer-btn-border, transparent);
  cursor: pointer;
  padding: 0;
  font-family: var(--footer-btn-font);
  font-weight: var(--footer-btn-weight);
  font-size: var(--footer-btn-size, 11px);
  color: var(--footer-btn-color, #111);
  text-transform: var(--footer-btn-transform, uppercase);
  letter-spacing: var(--footer-btn-spacing, 0.15em);
  white-space: nowrap;
}

/* ── Gender ── */
.footer__gender { margin-bottom: 12px; }
.footer__gender-label {
  font-family: var(--footer-body-font);
  font-weight: var(--footer-body-weight);
  font-size: var(--footer-body-size, 13px);
  color: var(--footer-body-color, #111);
  text-transform: var(--footer-body-transform, none);
  letter-spacing: var(--footer-body-spacing, 0);
  margin: 0 0 8px;
}
.footer__gender-options {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
.footer__radio-label {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--footer-body-font);
  font-weight: var(--footer-body-weight);
  font-size: var(--footer-body-size, 13px);
  color: var(--footer-body-color, #111);
  text-transform: var(--footer-body-transform, none);
  letter-spacing: var(--footer-body-spacing, 0);
  cursor: pointer;
}
.footer__radio-label input[type="radio"] {
  accent-color: var(--footer-body-color, #111);
}

/* ── Consent ── */
.footer__consent {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-family: var(--footer-body-font);
  font-weight: var(--footer-body-weight);
  font-size: var(--footer-body-size, 13px);
  color: var(--footer-body-color, #111);
  text-transform: var(--footer-body-transform, none);
  letter-spacing: var(--footer-body-spacing, 0);
  line-height: 1.4;
  cursor: pointer;
}
.footer__consent input[type="checkbox"] {
  margin-top: 2px;
  flex-shrink: 0;
  accent-color: var(--footer-body-color, #111);
}

/* ── Headings ── */
.footer__heading {
  margin: 0 0 16px;
  font-family: var(--footer-heading-font);
  font-weight: var(--footer-heading-weight);
  font-size: var(--footer-heading-size, 11px);
  color: var(--footer-heading-color, #111);
  text-transform: var(--footer-heading-transform, uppercase);
  letter-spacing: var(--footer-heading-spacing, 0.15em);
}
.footer__col--links .footer__heading,
.footer__col--links .footer__accordion-toggle {
  font-family: var(--footer-col-heading-font);
  font-weight: var(--footer-col-heading-weight);
  font-size: var(--footer-col-heading-size, 11px);
  color: var(--footer-col-heading-color, #111);
  text-transform: var(--footer-col-heading-transform, uppercase);
  letter-spacing: var(--footer-col-heading-spacing, 0.15em);
}

/* ── Link columns ── */
.footer__cols {
  display: flex;
  gap: var(--footer-col-gap, 60px);
  flex-shrink: 0;
}
.footer__col--links { min-width: 100px; }
.footer__link-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--footer-link-gap, 10px);
}
.footer__link {
  font-family: var(--footer-link-font);
  font-weight: var(--footer-link-weight);
  font-size: var(--footer-link-size, 13px);
  color: var(--footer-link-color, #111);
  text-transform: var(--footer-link-transform, none);
  letter-spacing: var(--footer-link-spacing, 0);
  text-decoration: none;
  display: block;
}

/* ── Bottom bar ── */
.footer__bottom {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  margin-top: 48px;
  padding-top: 20px;
  border-top: var(--footer-border-thickness, 1px) solid var(--footer-border-color, #e5e5e5);
  gap: 16px;
}
.footer__copyright {
  font-family: var(--footer-copyright-font);
  font-weight: var(--footer-copyright-weight);
  font-size: var(--footer-copyright-size, 13px);
  color: var(--footer-copyright-color, #111);
  text-transform: var(--footer-copyright-transform, none);
  letter-spacing: var(--footer-copyright-spacing, 0);
  margin: 0;
}
.footer__social-icons {
  display: flex;
  gap: 14px;
  align-items: center;
  justify-content: center;
}
.footer__social-link {
  color: var(--footer-social-color, #111);
  display: flex;
  align-items: center;
}
.footer__social-svg {
  width: var(--footer-social-size, 18px);
  height: var(--footer-social-size, 18px);
}


.footer__payment {
  display: flex;
  gap: 6px;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}
.footer__payment svg {
  height: var(--footer-payment-size, 24px) !important;
  width: auto !important;
  vertical-align: middle;
}

/* ── Accordion toggle (desktop: looks like normal heading) ── */
.footer__accordion-toggle {
  background: none;
  border: none;
  padding: 0;
  cursor: default;
  font-family: var(--footer-heading-font);
  font-weight: var(--footer-heading-weight);
  font-size: var(--footer-heading-size, 11px);
  color: var(--footer-heading-color, #111);
  text-transform: var(--footer-heading-transform, uppercase);
  letter-spacing: var(--footer-heading-spacing, 0.15em);
  margin: 0 0 16px;
  text-align: left;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer__accordion-icon { display: none; }

/* ── Mobile ── */
@media (max-width: 1199px) {
  .footer__top {
    flex-direction: column;
    gap: 0;
  }
  .footer__col--newsletter {
    flex: none;
    width: 100%;
    padding-bottom: 32px;
  }
  .footer__cols {
    flex-direction: column;
    gap: 0;
    width: 100%;
  }
  .footer__col--links {
    border-top: var(--footer-border-thickness, 1px) solid var(--footer-border-color, #e5e5e5);
  }
  .footer__accordion-toggle {
    cursor: pointer;
    padding: 16px 0;
    margin: 0;
  }
  .footer__accordion-icon {
    display: block;
    font-size: 20px;
    font-weight: 300;
    line-height: 1;
    flex-shrink: 0;
  }
  .footer__accordion-icon::before { content: '+'; }
  .footer__accordion-toggle[aria-expanded="true"] .footer__accordion-icon::before { content: '-'; }
  .footer__accordion-body {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.28s ease;
  }
  .footer__accordion-body > ul,
  .footer__accordion-body > .footer__locale-accordion-overflow {
    min-height: 0;
    overflow: hidden;
    padding-bottom: 0;
    transition: padding-bottom 0.28s ease;
  }
  .footer__accordion-toggle[aria-expanded="true"] + .footer__accordion-body {
    grid-template-rows: 1fr;
  }
  .footer__accordion-toggle[aria-expanded="true"] + .footer__accordion-body > ul,
  .footer__accordion-toggle[aria-expanded="true"] + .footer__accordion-body > .footer__locale-accordion-overflow {
    padding-bottom: 16px;
  }
  /* ── App blocks ── */
  .footer__app-block {
    padding: 24px 0;
    border-top: 1px solid var(--footer-divider-color, rgba(0,0,0,0.1));
  }
  .footer__app-block:empty {
    display: none;
  }

  .footer__bottom {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    margin-top: 24px;
  }
  .footer__social-icons {
    grid-column: 1 / -1;
    order: -1;
    justify-content: center;
  }
}

.footer__brand-image {
  width: 100%;
  overflow: hidden;
  line-height: 0;
}
.footer__brand-image img {
  width: 100%;
  height: auto;
  display: block;
}
/* END_SECTION:footer */

/* START_SECTION:header (INDEX:17) */
/* ── Base ── */
  .site-header {
    height: var(--header-height-mobile, 60px);
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 0 var(--header-padding-mobile, 16px);
    background-color: var(--header-bg, transparent);
    border-bottom: var(--header-border-thickness, 0px) solid var(--header-border-color, #E5E5E5);
    border-bottom-width: var(--header-border-thickness, 0px);
    box-shadow: var(--header-shadow, none);
    transition: background-color 0.3s ease, box-shadow 0.3s ease, transform 0.35s cubic-bezier(0.4,0,0.2,1), backdrop-filter 0.3s ease;
    position: relative;
    z-index: 50;
    width: 100%;
    box-sizing: border-box;
  }

  @media screen and (min-width: 1200px) {
    .site-header {
      height: var(--header-height-desktop, 80px);
      padding: 0 var(--header-padding-desktop, 24px);
    }
  }

  /* ── Sticky: applied to the Shopify section wrapper so it escapes the div ── */
  .shopify-section:has(.site-header--sticky),
  .shopify-section:has(.site-header--smart) {
    position: sticky;
    top: var(--sticky-bars-height, 0px);
    z-index: 200;
    overflow: hidden; /* prevents wrapper edge showing during smart hide animation */
  }

  /* ── Transparent: pull content up behind header with negative margin ── */
  /* handled via scoped <style> block above with actual pixel values */

  /* ── Smart: hide on scroll down, show on scroll up ── */
  .site-header--smart.is-hidden {
    transform: translateY(-110%);
  }

  /* ── Transparent on load ── */
  .site-header--transparent {
    background-color: transparent !important;
    box-shadow: none !important;
    border-bottom-color: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  .site-header--transparent.is-scrolled {
    background-color: var(--header-bg, #fff) !important;
    box-shadow: var(--header-shadow, none) !important;
    border-bottom-color: var(--header-border-color, transparent) !important;
  }
  .site-header--transparent.is-scrolled.site-header--glass {
    background-color: color-mix(in srgb, var(--header-bg, #fff) var(--header-glass-opacity, 80%), transparent) !important;
    backdrop-filter: blur(var(--header-glass-blur, 16px)) !important;
    -webkit-backdrop-filter: blur(var(--header-glass-blur, 16px)) !important;
  }

  /* ── Transparent icon/text color — see end of stylesheet for override ── */

  /* ── Glass effect (non-transparent mode) ── */
  .site-header--glass:not(.site-header--transparent) {
    background-color: color-mix(in srgb, var(--header-bg, #fff) var(--header-glass-opacity, 80%), transparent);
    backdrop-filter: blur(var(--header-glass-blur, 16px));
    -webkit-backdrop-filter: blur(var(--header-glass-blur, 16px));
  }

  /* ── Layout ── */
  .site-header .header__left {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 1rem;
  }
  .site-header .header__center {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .site-header .header__right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
  }

  /* ── Icons & buttons ── */
  .header__search,
  .header__account {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    text-decoration: none;
  }
  .header__search {
    color: var(--header-search-color, var(--color-foreground));
  }
  .header__account,
  .site-header a.header__account {
    color: var(--header-account-color, var(--color-foreground));
  }
  .header__search-icon,
  .header__account-icon {
    display: flex;
  }
  .header__cart,
  .site-header a.header__cart {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    gap: 2px;
    color: var(--header-cart-color, var(--color-foreground));
    text-decoration: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
  }
  .header__cart-icon {
    display: flex;
    position: relative;
  }
  .header__sidebar-toggle svg,
  .header__cart-icon svg,
  .header__search-icon svg,
  .header__account-icon svg {
    width: var(--header-icon-size, 18px);
    height: var(--header-icon-size, 18px);
  }
  .header__sidebar-toggle svg *,
  .header__cart-icon svg *,
  .header__search-icon svg *,
  .header__account-icon svg * {
    stroke-width: var(--header-icon-stroke, 1.5);
  }
  @media (min-width: 1200px) {
    .header__sidebar-toggle svg,
    .header__cart-icon svg,
    .header__search-icon svg,
    .header__account-icon svg {
      width: var(--header-icon-size-desktop, 20px);
      height: var(--header-icon-size-desktop, 20px);
    }
  }
  /* Cart count — inline style for text mode */
  .header__cart-count {
    font-family: var(--cart-text-count-font, inherit);
    font-weight: var(--cart-text-count-weight, 500);
    font-size: var(--cart-text-count-size-m, 11px);
    line-height: 1;
    color: var(--cart-text-count-color, inherit);
    white-space: nowrap;
    display: inline;
  }
  @media (min-width: 1200px) {
    .header__cart-count {
      font-size: var(--cart-text-count-size-d, 11px);
    }
  }
  /* Cart count — corner badge for icon mode */
  .header__cart-icon .header__cart-count {
    position: absolute;
    bottom: -4px;
    right: -6px;
    min-width: var(--cart-badge-size, 16px);
    height: var(--cart-badge-size, 16px);
    padding: 0 3px;
    border-radius: 50px;
    background: var(--cart-badge-bg, currentColor);
    font-size: var(--cart-badge-font-size, 9px);
    font-weight: 700;
    line-height: var(--cart-badge-size, 16px);
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--cart-badge-color, var(--header-bg, #ffffff));
    box-sizing: border-box;
  }
  /* In transparent mode before scroll — only apply auto-invert if no custom colors set */
  .site-header--transparent:not(.is-scrolled) .header__cart-icon .header__cart-count {
    background: var(--cart-badge-bg-transparent, var(--cart-badge-bg, var(--header-transparent-icon-color, #ffffff)));
    color: var(--cart-badge-color, var(--header-bg, #111111));
  }
  .site-header a {
    position: relative;
    text-decoration: none;
    color: var(--color-foreground);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .site-header a sup {
    position: absolute;
    left: 100%;
    overflow: hidden;
    max-width: var(--page-margin);
  }
  .header__text-link {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    text-decoration: none;
    color: var(--header-text-color, var(--color-foreground));
    font-family: var(--header-text-font-family, inherit);
    font-weight: var(--header-text-font-weight, inherit);
    font-size: var(--header-text-font-size-mobile, 13px);
    text-transform: var(--header-text-transform, none);
    letter-spacing: var(--header-text-letter-spacing, 0);
    display: flex;
    align-items: center;
    gap: 0.3em;
  }
  /* In text mode, cart and account share the same text color */
  .header__cart.header__text-link,
  .site-header a.header__cart.header__text-link,
  .header__account.header__text-link,
  .site-header a.header__account.header__text-link,
  .header__sidebar-toggle.header__text-link {
    color: var(--header-text-color, var(--color-foreground));
  }
  /* ── Transparent icon/text color override — must come AFTER per-icon color rules ── */
  .site-header--transparent:not(.is-scrolled) .header__search,
  .site-header--transparent:not(.is-scrolled) .site-header a.header__account,
  .site-header--transparent:not(.is-scrolled) .header__account,
  .site-header--transparent:not(.is-scrolled) .site-header a.header__cart,
  .site-header--transparent:not(.is-scrolled) .header__cart,
  .site-header--transparent:not(.is-scrolled) .header__sidebar-toggle,
  .site-header--transparent:not(.is-scrolled) .header__text-link {
    color: var(--header-transparent-icon-color, inherit) !important;
  }
  /* Cart count badge in transparent mode */
  .site-header--transparent:not(.is-scrolled) .header__cart-count {
    color: var(--header-transparent-icon-color, inherit) !important;
  }
  .site-header--transparent:not(.is-scrolled) .header__cart-icon .header__cart-count {
    background: var(--cart-badge-bg-transparent, var(--cart-badge-bg, var(--header-transparent-icon-color, #ffffff)));
    color: var(--cart-badge-color, var(--header-bg, #111111));
  }
  @media (min-width: 1200px) {
    .header__text-link {
      font-size: var(--header-text-font-size-desktop, 14px);
    }
  }
/* END_SECTION:header */

/* START_SECTION:hero-slideshow (INDEX:18) */
/* ── Slideshow wrapper ── */
.hs {
  position: relative;
  width: 100%;
  height: var(--hs-h-m, 60svh);
  overflow: hidden;
}
@media (min-width: 1200px) {
  .hs { height: var(--hs-h, 80svh); }
}

/* ── Track ── */
.hs__track {
  position: relative;
  width: 100%;
  height: 100%;
}

/* ── Slide ── */
.hs__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--hs-transition, 600ms) ease;
  display: flex;
  align-items: var(--hs-content-valign, center);
}
.hs__slide--active {
  opacity: 1;
  pointer-events: auto;
}

/* ── Background ── */
.hs__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.hs__bg--link {
  cursor: pointer;
  display: block;
  text-decoration: none;
}
.hs__picture {
  display: block;
  width: 100%;
  height: 100%;
}
.hs__img,
.hs__video,
.hs__img-placeholder {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: var(--hs-slide-img-fit-m, cover);
  object-position: var(--hs-slide-img-pos-m, center center);
}
@media (min-width: 1200px) {
  .hs__img,
  .hs__video {
    object-fit: var(--hs-slide-img-fit, cover);
    object-position: var(--hs-slide-img-pos, center center);
  }
}
.hs__video--mobile { display: block; }
.hs__video--desktop { display: none; }
.hs__picture--mobile-only { display: block; }
@media (min-width: 1200px) {
  .hs__video--mobile { display: none; }
  .hs__video--desktop { display: block; }
  .hs__picture--mobile-only { display: none; }
}
.hs__img-placeholder { background: #1a1a1a; }
.hs__overlay {
  position: absolute;
  inset: 0;
  background: var(--hs-slide-overlay, rgba(0,0,0,0));
  opacity: var(--hs-slide-overlay-opacity, 0);
  pointer-events: none;
}

/* ── Content layer ── */
.hs__content {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: var(--hs-content-valign, center);
  justify-content: var(--hs-content-align, center);
  padding: 0 var(--hs-pad-h, 24px);
}
.hs__inner {
  width: 100%;
  max-width: var(--hs-content-maxwidth, 700px);
  display: flex;
  flex-direction: column;
  align-items: var(--hs-content-align, center);
  text-align: var(--hs-content-align, center);
  padding-bottom: var(--hs-btn-gap, 28px);
}
.hs__inner > *:first-child { margin-top: 0 !important; }

/* ── Eyebrow ── */
.hs__eyebrow {
  margin: 0;
  font-family: var(--hs-eyebrow-font);
  font-weight: var(--hs-eyebrow-weight);
  font-size: var(--hs-eyebrow-size-m, 12px);
  color: var(--hs-eyebrow-color, #fff);
  text-transform: var(--hs-eyebrow-transform, uppercase);
  letter-spacing: var(--hs-eyebrow-spacing, 0.15em);
}
@media (min-width: 1200px) {
  .hs__eyebrow { font-size: var(--hs-eyebrow-size, 12px); }
}

/* ── Title ── */
.hs__title {
  margin: var(--hs-eyebrow-gap, 16px) 0 0;
  font-family: var(--hs-title-font);
  font-weight: var(--hs-title-weight);
  font-size: var(--hs-title-size-m, 40px);
  color: var(--hs-title-color, #fff);
  text-transform: var(--hs-title-transform, none);
  letter-spacing: var(--hs-title-spacing, 0);
  line-height: var(--hs-title-lh, 1.05);
}
@media (min-width: 1200px) {
  .hs__title { font-size: var(--hs-title-size, 64px); }
}

/* ── Subheading ── */
.hs__sub {
  margin: var(--hs-title-gap, 16px) 0 0;
  max-width: var(--hs-sub-maxwidth, 100%);
  font-family: var(--hs-sub-font);
  font-weight: var(--hs-sub-weight);
  font-size: var(--hs-sub-size-m, 14px);
  color: var(--hs-sub-color, #fff);
  text-transform: var(--hs-sub-transform, none);
  letter-spacing: var(--hs-sub-spacing, 0);
  line-height: var(--hs-sub-lh, 1.5);
}
.hs__sub p {
  font-family: var(--hs-sub-font);
  font-weight: var(--hs-sub-weight);
  font-size: var(--hs-sub-size-m, 14px);
  color: var(--hs-sub-color, #fff);
  text-transform: var(--hs-sub-transform, none);
  letter-spacing: var(--hs-sub-spacing, 0);
  line-height: var(--hs-sub-lh, 1.5);
  margin: 0;
}
@media (min-width: 1200px) {
  .hs__sub, .hs__sub p { font-size: var(--hs-sub-size, 16px); }
}

/* ── Buttons ── */
.hs__btns {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: var(--hs-content-align, center);
  margin-top: var(--hs-sub-gap, 24px);
}
.hs__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  cursor: pointer;
  transition: color 0.2s, background 0.2s, border-color 0.2s;
}
.hs__btn--1 {
  font-family: var(--hs-btn1-font);
  font-weight: var(--hs-btn1-weight);
  font-size: var(--hs-btn1-size, 12px);
  text-transform: var(--hs-btn1-transform, uppercase);
  letter-spacing: var(--hs-btn1-spacing, 0.1em);
  color: var(--hs-btn1-color, #fff);
  background: var(--hs-btn1-bg, transparent);
  border: var(--hs-btn1-border-w, 1px) solid var(--hs-btn1-border, #fff);
  border-radius: var(--hs-btn1-radius, 0px);
  padding: var(--hs-btn1-pad-v-m, 12px) var(--hs-btn1-pad-h-m, 24px);
}
.hs__btn--1:hover {
  color: var(--hs-btn1-color-hover, #111);
  background: var(--hs-btn1-bg-hover, #fff);
  border-color: var(--hs-btn1-border-hover, #fff);
}
.hs__btn--2 {
  font-family: var(--hs-btn2-font);
  font-weight: var(--hs-btn2-weight);
  font-size: var(--hs-btn2-size, 12px);
  text-transform: var(--hs-btn2-transform, uppercase);
  letter-spacing: var(--hs-btn2-spacing, 0.1em);
  color: var(--hs-btn2-color, #fff);
  background: var(--hs-btn2-bg, transparent);
  border: var(--hs-btn2-border-w, 1px) solid var(--hs-btn2-border, #fff);
  border-radius: var(--hs-btn2-radius, 0px);
  padding: var(--hs-btn2-pad-v-m, 12px) var(--hs-btn2-pad-h-m, 24px);
}
.hs__btn--2:hover {
  color: var(--hs-btn2-color-hover, #fff);
  background: var(--hs-btn2-bg-hover, transparent);
  border-color: var(--hs-btn2-border-hover, #aaa);
}

/* ── Button underline decoration ── */
.hs__btn--underline { position: relative; }
.hs__btn--underline::before {
  content: '';
  position: absolute;
  bottom: calc(var(--hs-btn1-pad-v-m, 12px) - 2px);
  left: var(--hs-btn1-pad-h-m, 24px);
  right: var(--hs-btn1-pad-h-m, 24px);
  height: 1px;
  background: var(--hs-btn1-decoration-color, #fff);
  transform: scaleX(1);
  transform-origin: center;
  transition: transform 0.25s ease;
}
.hs__btn--underline::after {
  content: '';
  position: absolute;
  bottom: calc(var(--hs-btn1-pad-v-m, 12px) - 2px);
  left: var(--hs-btn1-pad-h-m, 24px);
  right: var(--hs-btn1-pad-h-m, 24px);
  height: 1px;
  background: var(--hs-btn1-decoration-color, #fff);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.25s ease 0s;
}
.hs__btn--underline:hover::before { transform: scaleX(0); transition: transform 0.25s ease; }
.hs__btn--underline:hover::after  { transform: scaleX(1); transition: transform 0.25s ease 0.25s; }
.hs__btn--underline-2::before,
.hs__btn--underline-2::after {
  bottom: calc(var(--hs-btn2-pad-v-m, 12px) - 2px);
  left: var(--hs-btn2-pad-h-m, 24px);
  right: var(--hs-btn2-pad-h-m, 24px);
  background: var(--hs-btn2-decoration-color, #fff);
}
@media (min-width: 1200px) {
  .hs__btn--1 { padding: var(--hs-btn1-pad-v, 12px) var(--hs-btn1-pad-h, 24px); }
  .hs__btn--2 { padding: var(--hs-btn2-pad-v, 12px) var(--hs-btn2-pad-h, 24px); }
  .hs__btn--underline::before, .hs__btn--underline::after {
    bottom: calc(var(--hs-btn1-pad-v, 12px) - 2px);
    left: var(--hs-btn1-pad-h, 24px);
    right: var(--hs-btn1-pad-h, 24px);
  }
  .hs__btn--underline-2::before, .hs__btn--underline-2::after {
    bottom: calc(var(--hs-btn2-pad-v, 12px) - 2px);
    left: var(--hs-btn2-pad-h, 24px);
    right: var(--hs-btn2-pad-h, 24px);
  }
}

/* ── Sound button ── */
.hs__sound {
  position: absolute;
  z-index: 3;
  bottom: var(--hs-sound-pos-bottom, 24px);
  left: var(--hs-sound-pos-left, auto);
  right: var(--hs-sound-pos-right, 24px);
  width: fit-content;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--hs-sound-bg, transparent);
  color: var(--hs-sound-color, #fff);
  border: var(--hs-sound-border-w, 0px) solid var(--hs-sound-border, #fff);
  border-radius: var(--hs-sound-radius, 50px);
  padding: var(--hs-sound-pad, 8px);
  cursor: pointer;
  transition: opacity 0.2s;
}
.hs__sound:hover { opacity: 0.7; }
.hs__sound svg { display: block; }

/* ── Arrows ── */
.hs__arrow {
  position: absolute;
  z-index: 3;
  top: 50%;
  transform: translateY(-50%);
  width: var(--hs-arrow-size, 44px);
  height: var(--hs-arrow-size, 44px);
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--hs-arrow-bg, rgba(0,0,0,0.3));
  color: var(--hs-arrow-color, #fff);
  border: none;
  cursor: pointer;
  border-radius: 50%;
  transition: opacity 0.2s;
}
.hs__arrow:hover { opacity: 0.8; }
.hs__arrow--prev { left: 16px; }
.hs__arrow--next { right: 16px; }

/* ── Dots ── */
.hs__dots {
  position: absolute;
  z-index: 3;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  align-items: center;
}
.hs__dot {
  width: var(--hs-dot-size, 8px);
  height: var(--hs-dot-size, 8px);
  border-radius: 50%;
  background: var(--hs-dot-color, rgba(255,255,255,0.4));
  border: none;
  cursor: pointer;
  padding: 0;
  transition: background 0.2s, transform 0.2s;
}
.hs__dot--active {
  background: var(--hs-dot-color-active, #fff);
  transform: scale(1.3);
}
/* END_SECTION:hero-slideshow */

/* START_SECTION:hero (INDEX:19) */
/* ── Hero wrapper ── */
.hero {
  position: relative;
  width: 100%;
  height: var(--hero-h-m, 60svh);
  overflow: hidden;
  display: flex;
  align-items: var(--hero-content-valign-m, center);
}
@media (min-width: 1200px) {
  .hero {
    height: var(--hero-h, 80svh);
    align-items: var(--hero-content-valign, center);
  }
}

/* ── Background ── */
.hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.hero__bg--link {
  cursor: pointer;
  display: block;
  text-decoration: none;
}
.hero__picture {
  display: block;
  width: 100%;
  height: 100%;
}
.hero__img,
.hero__video,
.hero__img-placeholder {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: var(--hero-img-fit-m, cover);
  object-position: var(--hero-img-pos-m, center center);
}
@media (min-width: 1200px) {
  .hero__img,
  .hero__video {
    object-fit: var(--hero-img-fit, cover);
    object-position: var(--hero-img-pos, center center);
  }
}
.hero__video--mobile { display: block; }
.hero__video--desktop { display: none; }
.hero__picture--mobile-only { display: block; }
@media (min-width: 1200px) {
  .hero__video--mobile { display: none; }
  .hero__video--desktop { display: block; }
  .hero__picture--mobile-only { display: none; }
}
.hero__img-placeholder {
  background: #1a1a1a;
}
.hero__overlay {
  position: absolute;
  inset: 0;
  background: var(--hero-overlay, rgba(0,0,0,0));
  opacity: var(--hero-overlay-opacity, 0);
  pointer-events: none;
}

/* ── Content layer ── */
.hero__content {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: var(--hero-content-valign-m, center);
  justify-content: var(--hero-content-align-m, center);
  padding: 0 var(--hero-pad-h, 24px);
  /* Pass clicks through to the bg link when image is clickable */
  pointer-events: none;
}
/* Restore pointer events on all interactive children */
.hero__content a,
.hero__content button,
.hero__content [role="button"] {
  pointer-events: auto;
}
@media (min-width: 1200px) {
  .hero__content {
    align-items: var(--hero-content-valign, center);
    justify-content: var(--hero-content-align, center);
  }
}
.hero__inner {
  width: 100%;
  max-width: var(--hero-content-maxwidth, 700px);
  display: flex;
  flex-direction: column;
  align-items: var(--hero-content-align-m, center);
  text-align: var(--hero-text-align-m, center);
  padding-bottom: var(--hero-btn-gap, 28px);
}
@media (min-width: 1200px) {
  .hero__inner {
    align-items: var(--hero-content-align, center);
    text-align: var(--hero-text-align, center);
  }
}

/* ── Eyebrow ── */
.hero__eyebrow {
  margin: 0;
  font-family: var(--hero-eyebrow-font);
  font-weight: var(--hero-eyebrow-weight);
  font-size: var(--hero-eyebrow-size-m, 12px);
  color: var(--hero-eyebrow-color, #fff);
  text-transform: var(--hero-eyebrow-transform, uppercase);
  letter-spacing: var(--hero-eyebrow-spacing, 0.15em);
}
@media (min-width: 1200px) {
  .hero__eyebrow {
    font-size: var(--hero-eyebrow-size, 12px);
  }
}

/* ── Title ── */
.hero__title {
  margin: var(--hero-eyebrow-gap, 16px) 0 0;
  font-family: var(--hero-title-font);
  font-weight: var(--hero-title-weight);
  font-size: var(--hero-title-size-m, 40px);
  color: var(--hero-title-color, #fff);
  text-transform: var(--hero-title-transform, none);
  letter-spacing: var(--hero-title-spacing, 0);
  line-height: var(--hero-title-lh, 1.05);
}
@media (min-width: 1200px) {
  .hero__title {
    font-size: var(--hero-title-size, 64px);
  }
}

/* ── Subheading ── */
.hero__sub {
  margin: var(--hero-title-gap, 16px) 0 0;
  max-width: var(--hero-sub-maxwidth, 100%);
  font-family: var(--hero-sub-font);
  font-weight: var(--hero-sub-weight);
  font-size: var(--hero-sub-size-m, 14px);
  color: var(--hero-sub-color, #fff);
  text-transform: var(--hero-sub-transform, none);
  letter-spacing: var(--hero-sub-spacing, 0);
  line-height: var(--hero-sub-lh, 1.5);
}
.hero__sub p {
  font-family: var(--hero-sub-font);
  font-weight: var(--hero-sub-weight);
  font-size: var(--hero-sub-size-m, 14px);
  color: var(--hero-sub-color, #fff);
  text-transform: var(--hero-sub-transform, none);
  letter-spacing: var(--hero-sub-spacing, 0);
  line-height: var(--hero-sub-lh, 1.5);
  margin: 0;
}
@media (min-width: 1200px) {
  .hero__sub,
  .hero__sub p {
    font-size: var(--hero-sub-size, 16px);
  }
}

/* ── Buttons ── */
.hero__inner > *:first-child {
  margin-top: 0 !important;
}
.hero__btns {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: var(--hero-content-align-m, center);
  margin-top: var(--hero-sub-gap, 24px);
}
@media (min-width: 1200px) {
  .hero__btns {
    justify-content: var(--hero-content-align, center);
  }
}
.hero__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  cursor: pointer;
  transition: color 0.2s, background 0.2s, border-color 0.2s;
}
.hero__btn--1 {
  font-family: var(--hero-btn1-font);
  font-weight: var(--hero-btn1-weight);
  font-size: var(--hero-btn1-size, 12px);
  text-transform: var(--hero-btn1-transform, uppercase);
  letter-spacing: var(--hero-btn1-spacing, 0.1em);
  color: var(--hero-btn1-color, #fff);
  background: var(--hero-btn1-bg, transparent);
  border: var(--hero-btn1-border-w, 1px) solid var(--hero-btn1-border, #fff);
  border-radius: var(--hero-btn1-radius, 0px);
  padding: var(--hero-btn1-pad-v-m, 12px) var(--hero-btn1-pad-h-m, 24px);
}
.hero__btn--1:hover {
  color: var(--hero-btn1-color-hover, #111);
  background: var(--hero-btn1-bg-hover, #fff);
  border-color: var(--hero-btn1-border-hover, #fff);
}
.hero__btn--2 {
  font-family: var(--hero-btn2-font);
  font-weight: var(--hero-btn2-weight);
  font-size: var(--hero-btn2-size, 12px);
  text-transform: var(--hero-btn2-transform, uppercase);
  letter-spacing: var(--hero-btn2-spacing, 0.1em);
  color: var(--hero-btn2-color, #fff);
  background: var(--hero-btn2-bg, transparent);
  border: var(--hero-btn2-border-w, 1px) solid var(--hero-btn2-border, #fff);
  border-radius: var(--hero-btn2-radius, 0px);
  padding: var(--hero-btn2-pad-v-m, 12px) var(--hero-btn2-pad-h-m, 24px);
}
.hero__btn--2:hover {
  color: var(--hero-btn2-color-hover, #fff);
  background: var(--hero-btn2-bg-hover, transparent);
  border-color: var(--hero-btn2-border-hover, #aaa);
}

/* ── Button underline decoration ── */
.hero__btn--underline {
  position: relative;
}
/* Static underline — visible by default */
.hero__btn--underline::before {
  content: '';
  position: absolute;
  bottom: calc(var(--hero-btn1-pad-v-m, 12px) - 2px);
  left: var(--hero-btn1-pad-h-m, 24px);
  right: var(--hero-btn1-pad-h-m, 24px);
  height: 1px;
  background: var(--hero-btn1-decoration-color, #ffffff);
  transform: scaleX(1);
  transform-origin: center;
  transition: transform 0.25s ease;
}
/* Animated underline — expands from center on hover */
.hero__btn--underline::after {
  content: '';
  position: absolute;
  bottom: calc(var(--hero-btn1-pad-v-m, 12px) - 2px);
  left: var(--hero-btn1-pad-h-m, 24px);
  right: var(--hero-btn1-pad-h-m, 24px);
  height: 1px;
  background: var(--hero-btn1-decoration-color, #ffffff);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.25s ease 0s;
}
.hero__btn--underline:hover::before { transform: scaleX(0); transition: transform 0.25s ease; }
.hero__btn--underline:hover::after  { transform: scaleX(1); transition: transform 0.25s ease 0.25s; }

/* Button 2 overrides */
.hero__btn--underline-2::before,
.hero__btn--underline-2::after {
  bottom: calc(var(--hero-btn2-pad-v-m, 12px) - 2px);
  left: var(--hero-btn2-pad-h-m, 24px);
  right: var(--hero-btn2-pad-h-m, 24px);
  background: var(--hero-btn2-decoration-color, #ffffff);
}

@media (min-width: 1200px) {
  .hero__btn--1 {
    padding: var(--hero-btn1-pad-v, 12px) var(--hero-btn1-pad-h, 24px);
  }
  .hero__btn--2 {
    padding: var(--hero-btn2-pad-v, 12px) var(--hero-btn2-pad-h, 24px);
  }
  .hero__btn--underline::before,
  .hero__btn--underline::after {
    bottom: calc(var(--hero-btn1-pad-v, 12px) - 2px);
    left: var(--hero-btn1-pad-h, 24px);
    right: var(--hero-btn1-pad-h, 24px);
  }
  .hero__btn--underline-2::before,
  .hero__btn--underline-2::after {
    bottom: calc(var(--hero-btn2-pad-v, 12px) - 2px);
    left: var(--hero-btn2-pad-h, 24px);
    right: var(--hero-btn2-pad-h, 24px);
  }
}

/* ── Sound button ── */
.hero__sound {
  position: absolute;
  z-index: 2;
  bottom: var(--hero-sound-pos-bottom, 24px);
  left: var(--hero-sound-pos-left, auto);
  right: var(--hero-sound-pos-right, 24px);
  width: fit-content;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--hero-sound-bg, transparent);
  color: var(--hero-sound-color, #fff);
  border: var(--hero-sound-border-w, 0px) solid var(--hero-sound-border, #fff);
  border-radius: var(--hero-sound-radius, 50px);
  padding: var(--hero-sound-pad, 8px);
  cursor: pointer;
  transition: opacity 0.2s;
}
.hero__sound:hover { opacity: 0.7; }
.hero__sound svg { display: block; }
.hero__sound--desktop-only { display: none; }
@media (min-width: 1200px) {
  .hero__sound--desktop-only { display: flex; }
  .hero__sound--mobile-only { display: none; }
}
/* END_SECTION:hero */

/* START_SECTION:image-text (INDEX:20) */
/* ── Wrapper ── */
.it {
  display: flex;
  flex-direction: column;
  background: var(--it-bg, transparent);
  padding-top: var(--it-pad-top-m, 0px);
  padding-bottom: var(--it-pad-bottom-m, 0px);
  gap: var(--it-gap-m, 0px);
  overflow: hidden;
}

@media (min-width: 1200px) {
  .it {
    flex-direction: row;
    align-items: stretch;
    padding-top: var(--it-pad-top-d, 0px);
    padding-bottom: var(--it-pad-bottom-d, 0px);
    gap: var(--it-gap-d, 0px);
  }
  .it--img-right {
    flex-direction: row-reverse;
  }
}

/* ── Image side ── */
.it__img-wrap {
  position: relative;
  width: calc(100% - (var(--it-img-gap-m, 0px) * 2));
  overflow: hidden;
  flex-shrink: 0;
  font-size: 0;
  line-height: 0;
  color: transparent;
  border-radius: var(--it-img-radius, 0px);
  margin-left: var(--it-img-gap-m, 0px);
  margin-right: var(--it-img-gap-m, 0px);
}

.it__img-wrap--ratio-m {
  aspect-ratio: var(--it-img-ratio-m, 4/5);
}

@media (min-width: 1200px) {
  .it__img-wrap {
    width: var(--it-img-width-d, 50%);
    margin-left: var(--it-img-ml-d, 0px);
    margin-right: var(--it-img-mr-d, 0px);
  }
  .it__img-wrap--fixed-d {
    height: var(--it-img-height-d, 600px);
    aspect-ratio: unset;
  }
  .it__img-wrap--ratio-d {
    aspect-ratio: var(--it-img-ratio-d);
    height: unset;
  }
  .it__img-wrap--natural-d {
    height: unset;
    aspect-ratio: unset;
  }
}

.it__picture {
  display: block;
  width: 100%;
  height: 100%;
}

.it__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: var(--it-img-fit, cover);
  object-position: var(--it-img-pos, center center);
  display: block;
}

.it__img-wrap--natural-m .it__img,
.it__img-wrap--natural-d .it__img {
  position: relative;
  inset: unset;
  height: auto;
  object-fit: unset;
}

.it__img-ph {
  position: absolute;
  inset: 0;
  background: #e8e8e8;
}

.it__overlay {
  position: absolute;
  inset: 0;
  background: var(--it-overlay, rgba(0,0,0,0));
  opacity: var(--it-overlay-opacity, 0);
  pointer-events: none;
}

/* ── Text side ── */
.it__text-wrap {
  flex: 1 1 0;
  min-width: 0;
  background: var(--it-text-bg, transparent);
  display: flex;
  align-items: var(--it-text-valign, center);
  justify-content: var(--it-text-halign, flex-start);
  padding: var(--it-text-pad-m, 32px);
}

@media (min-width: 1200px) {
  .it__text-wrap {
    padding: var(--it-text-pad-d, 60px);
  }
}

.it__text-inner {
  width: 100%;
  max-width: var(--it-content-maxwidth, 600px);
  text-align: var(--it-text-align, left);
  display: flex;
  flex-direction: column;
  align-items: var(--it-text-halign, flex-start);
}

/* ── Eyebrow ── */
.it__eyebrow {
  margin: 0;
  font-family: var(--it-eyebrow-font);
  font-weight: var(--it-eyebrow-weight);
  font-size: var(--it-eyebrow-size-m, 12px);
  color: var(--it-eyebrow-color, #111);
  text-transform: var(--it-eyebrow-transform, uppercase);
  letter-spacing: var(--it-eyebrow-spacing, 0.15em);
  line-height: 1;
}

@media (min-width: 1200px) {
  .it__eyebrow {
    font-size: var(--it-eyebrow-size-d, 12px);
  }
}

/* ── Heading ── */
.it__heading {
  margin: var(--it-eyebrow-gap, 16px) 0 0;
  font-family: var(--it-heading-font);
  font-weight: var(--it-heading-weight);
  font-size: var(--it-heading-size-m, 32px);
  color: var(--it-heading-color, #111);
  text-transform: var(--it-heading-transform, none);
  letter-spacing: var(--it-heading-spacing, 0em);
  line-height: var(--it-heading-lh, 1.1);
}

@media (min-width: 1200px) {
  .it__heading {
    font-size: var(--it-heading-size-d, 48px);
  }
}

/* ── Subheading ── */
.it__sub {
  margin: var(--it-heading-gap, 20px) 0 0;
  font-family: var(--it-sub-font);
  font-weight: var(--it-sub-weight);
  font-size: var(--it-sub-size-m, 15px);
  color: var(--it-sub-color, #444);
  text-transform: var(--it-sub-transform, none);
  letter-spacing: var(--it-sub-spacing, 0em);
  line-height: var(--it-sub-lh, 1.6);
}
.it__sub p {
  font-family: var(--it-sub-font);
  font-weight: var(--it-sub-weight);
  font-size: var(--it-sub-size-m, 15px);
  color: var(--it-sub-color, #444);
  text-transform: var(--it-sub-transform, none);
  letter-spacing: var(--it-sub-spacing, 0em);
  line-height: var(--it-sub-lh, 1.6);
  margin: 0 0 1em;
}
.it__sub p:last-child { margin-bottom: 0; }

@media (min-width: 1200px) {
  .it__sub,
  .it__sub p {
    font-size: var(--it-sub-size-d, 16px);
  }
}

/* ── Buttons ── */
.it__text-inner > *:first-child {
  margin-top: 0 !important;
}
.it__btns {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: var(--it-text-halign, flex-start);
  margin-top: var(--it-sub-gap, 32px);
}

.it__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  cursor: pointer;
  transition: color 0.2s, background 0.2s, border-color 0.2s;
  line-height: 1;
}

/* Button 1 */
.it__btn--1 {
  font-family: var(--it-btn1-font);
  font-weight: var(--it-btn1-weight);
  font-size: var(--it-btn1-size, 12px);
  text-transform: var(--it-btn1-transform, uppercase);
  letter-spacing: var(--it-btn1-spacing, 0.1em);
  color: var(--it-btn1-color, #fff);
  background: var(--it-btn1-bg, #111);
  border: var(--it-btn1-border-w, 1px) solid var(--it-btn1-border, #111);
  border-radius: var(--it-btn1-radius, 0px);
  padding: var(--it-btn1-pad-v-m, 12px) var(--it-btn1-pad-h-m, 24px);
}
.it__btn--1:hover {
  color: var(--it-btn1-color-hover, #111);
  background: var(--it-btn1-bg-hover, #fff);
  border-color: var(--it-btn1-border-hover, #111);
}
@media (min-width: 1200px) {
  .it__btn--1 {
    padding: var(--it-btn1-pad-v, 14px) var(--it-btn1-pad-h, 32px);
  }
}

/* Button 2 */
.it__btn--2 {
  font-family: var(--it-btn2-font);
  font-weight: var(--it-btn2-weight);
  font-size: var(--it-btn2-size, 12px);
  text-transform: var(--it-btn2-transform, uppercase);
  letter-spacing: var(--it-btn2-spacing, 0.1em);
  color: var(--it-btn2-color, #111);
  background: var(--it-btn2-bg, transparent);
  border: var(--it-btn2-border-w, 1px) solid var(--it-btn2-border, #111);
  border-radius: var(--it-btn2-radius, 0px);
  padding: var(--it-btn2-pad-v-m, 12px) var(--it-btn2-pad-h-m, 24px);
}
.it__btn--2:hover {
  color: var(--it-btn2-color-hover, #111);
  background: var(--it-btn2-bg-hover, transparent);
  border-color: var(--it-btn2-border-hover, #aaa);
}
@media (min-width: 1200px) {
  .it__btn--2 {
    padding: var(--it-btn2-pad-v, 14px) var(--it-btn2-pad-h, 32px);
  }
}

/* ── Button underline decoration ── */
.it__btn--underline {
  position: relative;
}
.it__btn--underline::before {
  content: '';
  position: absolute;
  bottom: calc(var(--it-btn1-pad-v-m, 12px) - 2px);
  left: var(--it-btn1-pad-h-m, 24px);
  right: var(--it-btn1-pad-h-m, 24px);
  height: 1px;
  background: var(--it-btn1-decoration-color, #111);
  transform: scaleX(1);
  transform-origin: center;
  transition: transform 0.25s ease;
}
.it__btn--underline::after {
  content: '';
  position: absolute;
  bottom: calc(var(--it-btn1-pad-v-m, 12px) - 2px);
  left: var(--it-btn1-pad-h-m, 24px);
  right: var(--it-btn1-pad-h-m, 24px);
  height: 1px;
  background: var(--it-btn1-decoration-color, #111);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.25s ease 0s;
}
.it__btn--underline:hover::before { transform: scaleX(0); transition: transform 0.25s ease; }
.it__btn--underline:hover::after  { transform: scaleX(1); transition: transform 0.25s ease 0.25s; }

/* Button 2 underline overrides */
.it__btn--underline-2::before,
.it__btn--underline-2::after {
  bottom: calc(var(--it-btn2-pad-v-m, 12px) - 2px);
  left: var(--it-btn2-pad-h-m, 24px);
  right: var(--it-btn2-pad-h-m, 24px);
  background: var(--it-btn2-decoration-color, #111);
}

@media (min-width: 1200px) {
  .it__btn--underline::before,
  .it__btn--underline::after {
    bottom: calc(var(--it-btn1-pad-v, 14px) - 2px);
    left: var(--it-btn1-pad-h, 32px);
    right: var(--it-btn1-pad-h, 32px);
  }
  .it__btn--underline-2::before,
  .it__btn--underline-2::after {
    bottom: calc(var(--it-btn2-pad-v, 14px) - 2px);
    left: var(--it-btn2-pad-h, 32px);
    right: var(--it-btn2-pad-h, 32px);
  }
}
/* END_SECTION:image-text */

/* START_SECTION:landing-page (INDEX:21) */
/* ── Structure ── */
  .lp-section-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    overflow: hidden;
  }

  body:has(.lp-section-overlay:not(.lp-dismissed)) {
    overflow: hidden;
  }

  /* ── Media ── */
  .lp-section-overlay .lp-media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
  }

  /* Desktop media: always visible on desktop */
  .lp-section-overlay .lp-media-desktop { display: block; }
  /* Mobile media: hidden on desktop */
  .lp-section-overlay .lp-media-mobile  { display: none; }

  @media (max-width: 1199px) {
    /* If mobile media exists, hide desktop and show mobile */
    .lp-section-overlay.has-mobile-media .lp-media-desktop { display: none; }
    .lp-section-overlay.has-mobile-media .lp-media-mobile  { display: block; }
    /* If no mobile media: desktop media remains visible on mobile (no override needed) */
  }

  /* ── Clickable bg link ── */
  .lp-section-overlay .lp-media-link {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: block;
  }

  /* ── Overlay ── */
  .lp-section-overlay .lp-overlay {
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
  }

  /* ── Logo ── */
  .lp-logo-absolute {
    position: absolute;
    z-index: 11;
    pointer-events: none;
  }
  .lp-logo-absolute img { display: block; }
  .lp-logo-inline {
    display: flex;
    pointer-events: none;
    width: 100%;
  }
  .lp-logo-inline img { display: block; }

  /* ── Content ── */
  .lp-section-overlay .lp-content {
    position: absolute;
    z-index: 10;
    pointer-events: none;
  }

  .lp-section-overlay .lp-content a,
  .lp-section-overlay .lp-content button {
    pointer-events: auto;
  }

  /* ── Buttons ── */
  .lp-section-overlay .lp-buttons {
    display: flex;
    flex-wrap: wrap;
  }

  .lp-section-overlay .lp-button {
    display: inline-block;
    text-decoration: none;
    transition: all 0.3s ease;
  }

  /* ── Nav links ── */
  .lp-section-overlay .lp-nav {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
  }

  .lp-section-overlay .lp-nav__item {
    display: block;
  }

  .lp-section-overlay .lp-nav__link {
    display: block;
    text-decoration: none;
    transition: opacity 0.2s ease;
  }

  .lp-section-overlay .lp-nav__link:hover {
    opacity: 0.7;
  }

  /* ── Video controls ── */
  .lp-section-overlay .lp-video-controls {
    position: absolute;
    z-index: 20;
    display: flex;
    gap: 12px;
  }

  .lp-section-overlay .lp-video-btn {
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    padding: 0;
  }

  .lp-section-overlay .lp-video-btn:hover {
    transform: scale(1.1);
    opacity: 0.8;
  }

  /* ── Drag to reveal ── */
  .lp-section-overlay.drag-reveal-active {
    will-change: transform;
    touch-action: none;
  }
  /* Pill indicator */
  .lp-drag-indicator {
    position: absolute;
    z-index: 30;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: grab;
    user-select: none;
    touch-action: none;
    padding: 12px 20px;
    bottom: 16px;
  }
  .lp-drag-indicator:active { cursor: grabbing; }
  .lp-drag-indicator__pill {
    border-radius: 999px;
    opacity: 0.5;
  }
  /* Bar indicator */
  .lp-drag-bar {
    position: absolute;
    z-index: 30;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: grab;
    user-select: none;
    touch-action: none;
  }
  .lp-drag-bar:active { cursor: grabbing; }

  .lp-drag-bar__text {
    position: relative;
    z-index: 1;
    white-space: nowrap;
  }

  /* Pause animation while actively dragging */
  .drag-reveal-active .lp-drag-bar__text {
    animation-play-state: paused;
  }
/* END_SECTION:landing-page */

/* START_SECTION:lookbook (INDEX:24) */
.lb-section {
    background: var(--lb-bg, transparent);
    padding: var(--lb-pad-top-m) var(--lb-pad-h-m) var(--lb-pad-bottom-m);
  }

  @media screen and (min-width: 1200px) {
    .lb-section {
      padding: var(--lb-pad-top-d) var(--lb-pad-h-d) var(--lb-pad-bottom-d);
    }
  }

  .lb-section__inner {
    max-width: 100%;
  }

  /* ── Section heading ── */
  .lb-section__header {
    margin-bottom: 24px;
    text-align: var(--lb-heading-align, left);
  }

  .lb-section__heading {
    font-family: var(--lb-heading-font, inherit);
    font-weight: var(--lb-heading-weight, inherit);
    color: var(--lb-heading-color, inherit);
    font-size: var(--lb-heading-size-m, 26px);
    text-transform: var(--lb-heading-transform, none);
    letter-spacing: var(--lb-heading-spacing, 0em);
    margin: 0;
    line-height: 1.1;
  }

  @media screen and (min-width: 1200px) {
    .lb-section__heading {
      font-size: var(--lb-heading-size-d, 36px);
    }
  }

  /* ── Card ── */
  .lb-card {
    position: relative;
    overflow: hidden;
    display: block;
    text-decoration: none;
  }

  .lb-card__img-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: var(--lb-img-ratio-m, 4/5);
    overflow: hidden;
    color: inherit;
    font-size: 0;
    line-height: 0;
  }

  @media screen and (min-width: 1200px) {
    .lb-card__img-wrap {
      aspect-ratio: var(--lb-img-ratio-d, 3/4);
    }
  }

  .lb-card__img,
  .lb-card__placeholder {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }


  .lb-card__placeholder {
    background: #e8e8e8;
  }

  /* ── GRID layout ── */
  .lb-grid--uniform {
    display: grid;
    grid-template-columns: repeat(var(--lb-cols-m, 1), 1fr);
    gap: var(--lb-gap-m, 4px);
  }

  @media screen and (min-width: 1200px) {
    .lb-grid--uniform {
      grid-template-columns: repeat(var(--lb-cols-d, 3), 1fr);
      gap: var(--lb-gap-d, 4px);
    }
  }

  /* ── FEATURED layout ── */
  .lb-grid--featured {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--lb-gap-m, 4px);
  }

  @media screen and (min-width: 1200px) {
    .lb-grid--featured {
      grid-template-columns: 3fr 2fr;
      grid-template-rows: auto;
      gap: var(--lb-gap-d, 4px);
    }

    .lb-item--featured {
      grid-row: 1 / 3;
    }

    .lb-item--featured .lb-card__img-wrap {
      aspect-ratio: unset;
      height: 100%;
      min-height: 500px;
    }

    .lb-item--featured .lb-card__img-wrap {
      aspect-ratio: var(--lb-featured-ratio, 4/5);
    }
  }

  /* ── MOSAIC layout ── */
  .lb-grid--mosaic {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--lb-gap-m, 4px);
  }

  @media screen and (min-width: 1200px) {
    .lb-grid--mosaic {
      grid-template-columns: 1fr 1fr;
      gap: var(--lb-gap-d, 4px);
    }

    /* Positions 0 and 3 are tall, 1 and 2 are normal */
    .lb-item--mosaic-0,
    .lb-item--mosaic-3 {
      grid-column: span 1;
    }

    .lb-item--mosaic-0 .lb-card__img-wrap,
    .lb-item--mosaic-3 .lb-card__img-wrap {
      aspect-ratio: 3/4;
    }

    .lb-item--mosaic-1 .lb-card__img-wrap,
    .lb-item--mosaic-2 .lb-card__img-wrap {
      aspect-ratio: 4/3;
    }
  }

  .lb-section__empty {
    color: #999;
    font-size: 14px;
  }

  /* ── Lightbox ── */
  .lb-card--clickable {
    appearance: none;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    display: block;
    width: 100%;
    text-align: left;
  }

  .lb-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .lb-lightbox[hidden] {
    display: none;
  }

  .lb-lightbox__backdrop {
    position: absolute;
    inset: 0;
    background: #ffffff;
    cursor: zoom-out;
  }

  .lb-lightbox__close {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 1;
    background: none;
    border: none;
    color: #111;
    cursor: pointer;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.8;
    transition: opacity 0.2s;
  }

  .lb-lightbox__close:hover {
    opacity: 1;
  }

  .lb-lightbox__img-wrap {
    position: relative;
    z-index: 1;
    max-width: 90vw;
    max-height: 90vh;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .lb-lightbox__img {
    max-width: 90vw;
    max-height: 90vh;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
  }

  .lb-lightbox__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    background: none;
    border: none;
    color: #111;
    cursor: pointer;
    padding: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.5;
    transition: opacity 0.2s;
  }

  .lb-lightbox__nav:hover {
    opacity: 1;
  }

  .lb-lightbox__nav--prev {
    left: 12px;
  }

  .lb-lightbox__nav--next {
    right: 12px;
  }

  .lb-lightbox__nav[hidden] {
    display: none;
  }
/* END_SECTION:lookbook */

/* START_SECTION:newsletter (INDEX:27) */
.nl-section {
    background: var(--nl-bg, transparent);
    padding-top: var(--nl-pad-top-m, 60px);
    padding-bottom: var(--nl-pad-bottom-m, 60px);
    padding-left: 20px;
    padding-right: 20px;
  }

  @media screen and (min-width: 1200px) {
    .nl-section {
      padding-top: var(--nl-pad-top-d, 80px);
      padding-bottom: var(--nl-pad-bottom-d, 80px);
    }
  }

  .nl-section__inner {
    max-width: var(--nl-max-width, 480px);
    text-align: var(--nl-align, center);
    margin-left: auto;
    margin-right: auto;
  }

  /* Alignment helpers */
  .nl-section__inner[style*="left"] { margin-left: 0; }
  .nl-section__inner[style*="right"] { margin-right: 0; }

  /* ── Heading ── */
  .nl-section__heading {
    font-family: var(--nl-heading-font, inherit);
    font-weight: var(--nl-heading-weight, inherit);
    font-size: var(--nl-heading-size-m, 22px);
    color: var(--nl-heading-color, #111);
    text-transform: var(--nl-heading-transform, none);
    letter-spacing: var(--nl-heading-spacing, 0em);
    line-height: var(--nl-heading-lh, 1.2);
    margin: 0 0 var(--nl-heading-mb, 12px);
  }

  @media screen and (min-width: 1200px) {
    .nl-section__heading {
      font-size: var(--nl-heading-size-d, 28px);
    }
  }

  /* ── Subtext ── */
  .nl-section__body {
    font-family: var(--nl-body-font, inherit);
    font-weight: var(--nl-body-weight, inherit);
    font-size: var(--nl-body-size-m, 13px);
    color: var(--nl-body-color, #444);
    line-height: var(--nl-body-lh, 1.5);
    margin: 0 0 var(--nl-body-mb, 28px);
  }

  @media screen and (min-width: 1200px) {
    .nl-section__body {
      font-size: var(--nl-body-size-d, 14px);
    }
  }

  /* ── Form ── */
  .nl-section__form { width: 100%; }

  .nl-section__email-row {
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--nl-border-color, #e5e5e5);
    padding-bottom: 6px;
    margin-bottom: 16px;
    gap: 8px;
  }

  .nl-section__input {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    font-family: var(--nl-input-font, inherit);
    font-weight: var(--nl-input-weight, inherit);
    font-size: var(--nl-input-size-m, 13px);
    color: var(--nl-input-color, #111);
    text-transform: var(--nl-input-transform, none);
    letter-spacing: var(--nl-input-spacing, 0em);
    padding: 4px 0;
    text-align: left;
    min-width: 0;
  }

  @media screen and (min-width: 1200px) {
    .nl-section__input {
      font-size: var(--nl-input-size-d, 13px);
    }
  }

  .nl-section__input::placeholder {
    color: var(--nl-input-color, #111);
    opacity: 0.4;
  }

  .nl-section__btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    font-family: var(--nl-btn-font, inherit);
    font-weight: var(--nl-btn-weight, inherit);
    font-size: var(--nl-btn-size-m, 11px);
    color: var(--nl-btn-color, #111);
    text-transform: var(--nl-btn-transform, uppercase);
    letter-spacing: var(--nl-btn-spacing, 0.15em);
    white-space: nowrap;
    flex-shrink: 0;
  }

  @media screen and (min-width: 1200px) {
    .nl-section__btn {
      font-size: var(--nl-btn-size-d, 11px);
    }
  }

  /* ── Small text (gender label, consent) ── */
  .nl-section__small {
    font-family: var(--nl-small-font, inherit);
    font-weight: var(--nl-small-weight, inherit);
    font-size: var(--nl-small-size, 12px);
    color: var(--nl-small-color, #444);
    text-transform: var(--nl-small-transform, none);
    letter-spacing: var(--nl-small-spacing, 0em);
    margin: 0 0 8px;
  }

  /* ── Gender ── */
  .nl-section__gender { margin-bottom: 14px; }
  .nl-section__gender-options {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    justify-content: var(--nl-align, center);
  }

  .nl-section__radio-label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: var(--nl-small-font, inherit);
    font-weight: var(--nl-small-weight, inherit);
    font-size: var(--nl-small-size, 12px);
    color: var(--nl-small-color, #444);
    cursor: pointer;
  }

  .nl-section__radio-label input[type="radio"] {
    accent-color: var(--nl-input-color, #111);
  }

  /* ── Consent ── */
  .nl-section__consent {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-family: var(--nl-small-font, inherit);
    font-weight: var(--nl-small-weight, inherit);
    font-size: var(--nl-small-size, 12px);
    color: var(--nl-small-color, #444);
    letter-spacing: var(--nl-small-spacing, 0em);
    line-height: 1.4;
    cursor: pointer;
    text-align: left;
    justify-content: var(--nl-align, center);
  }

  .nl-section__consent input[type="checkbox"] {
    margin-top: 2px;
    flex-shrink: 0;
    accent-color: var(--nl-input-color, #111);
  }

  /* ── Success / Error ── */
  .nl-section__success {
    font-family: var(--nl-body-font, inherit);
    font-size: var(--nl-body-size-m, 13px);
    color: var(--nl-heading-color, #111);
  }

  .nl-section__error {
    font-family: var(--nl-body-font, inherit);
    font-size: var(--nl-small-size, 12px);
    color: #c00;
    margin-bottom: 10px;
  }
/* END_SECTION:newsletter */

/* START_SECTION:page (INDEX:28) */
.pg-section {
    background: var(--pg-bg, transparent);
    padding: var(--pg-pad-top-m, 48px) var(--pg-pad-h-m, 20px) var(--pg-pad-bottom-m, 60px);
  }

  @media screen and (min-width: 1200px) {
    .pg-section {
      padding: var(--pg-pad-top-d, 80px) var(--pg-pad-h-d, 40px) var(--pg-pad-bottom-d, 100px);
    }
  }

  .pg-section__inner {
    max-width: var(--pg-max-width, 720px);
    margin: 0 auto;
  }

  /* ── Title ── */
  .pg-section__title {
    font-family: var(--pg-title-font, inherit);
    font-weight: var(--pg-title-weight, inherit);
    font-size: var(--pg-title-size-m, 24px);
    color: var(--pg-title-color, #111);
    text-transform: var(--pg-title-transform, none);
    letter-spacing: var(--pg-title-spacing, 0em);
    line-height: var(--pg-title-lh, 1.2);
    margin: 0 0 var(--pg-title-mb, 40px);
  }

  @media screen and (min-width: 1200px) {
    .pg-section__title {
      font-size: var(--pg-title-size-d, 32px);
    }
  }

  /* ── Content ── */
  .pg-section__content {
    font-family: var(--pg-body-font, inherit);
    font-weight: var(--pg-body-weight, inherit);
    font-size: var(--pg-body-size-m, 15px);
    color: var(--pg-body-color, #333);
    line-height: var(--pg-body-lh, 1.7);
  }

  @media screen and (min-width: 1200px) {
    .pg-section__content {
      font-size: var(--pg-body-size-d, 16px);
    }
  }

  .pg-section__content p { margin: 0 0 1.4em; }
  .pg-section__content p:last-child { margin-bottom: 0; }
  .pg-section__content h2,
  .pg-section__content h3,
  .pg-section__content h4 {
    font-family: var(--pg-title-font, inherit);
    font-weight: var(--pg-title-weight, inherit);
    color: var(--pg-title-color, #111);
    margin: 1.8em 0 0.6em;
    line-height: 1.2;
  }
  .pg-section__content h2 { font-size: calc(var(--pg-body-size-d, 16px) * 1.5); }
  .pg-section__content h3 { font-size: calc(var(--pg-body-size-d, 16px) * 1.25); }
  .pg-section__content h4 { font-size: var(--pg-body-size-d, 16px); font-weight: 600; }
  .pg-section__content ul,
  .pg-section__content ol {
    padding-left: 1.4em;
    margin: 0 0 1.4em;
  }
  .pg-section__content li { margin-bottom: 0.4em; }
  .pg-section__content a { color: var(--pg-title-color, #111); }
  .pg-section__content hr {
    border: none;
    border-top: 1px solid var(--pg-divider-color, #e5e5e5);
    margin: 2em 0;
  }
  .pg-section__content blockquote {
    border-left: 2px solid var(--pg-divider-color, #e5e5e5);
    margin: 1.6em 0;
    padding: 0.4em 0 0.4em 1.4em;
    font-style: italic;
    color: #888;
  }
  .pg-section__content img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 1.6em 0;
  }
/* END_SECTION:page */

/* START_SECTION:product-grid (INDEX:31) */
.product-grid-section {
    width: 100%;
  }

  .product-card {
    position: relative;
    min-width: 0;
    align-self: start;
  }

  .product-card__image-link {
    display: block;
    text-decoration: none;
    color: inherit;
    font-size: 0;
    line-height: 0;
    width: 100%;
    height: 100%;
  }

  .product-card__image-wrapper {
    width: 100%;
    transform: translateZ(0); /* forces GPU layer so overflow:hidden clips composited track children */
  }

  .product-card__track {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;
    will-change: transform;
    transition: transform 0.35s ease;
  }

  .product-card__track .product-card__img {
    flex: 0 0 100%;
    min-width: 100%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  .product-card__placeholder {
    width: 100%;
    height: 100%;
    display: block;
    background: #f0f0f0;
  }

  /* ── Custom image placeholder ── */
  .product-card__img-ph {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    z-index: 0;
  }
  .product-card__img-ph-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .product-card__img-ph-text {
    white-space: nowrap;
  }
  .product-card__img-ph-icon {
    flex-shrink: 0;
  }
  .product-card__track .product-card__img {
    position: relative;
    z-index: 1;
  }
  .product-card__meta {
    padding: 8px 0 0;
  }

  .product-card__meta-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
  }

  .product-card__price-wrap {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
  }

  /* Icon hidden by default — shown only via Liquid CSS when qa_icon_trigger is on */
  .product-card__qa-icon-btn {
    display: none;
  }

  /* ── Quick add bar ── */
  .product-card__qa-bar {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    gap: 6px;
    padding: 10px 10px;
    background: var(--pg-qa-bar-bg, rgba(255,255,255,0.92));
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    transform: translateY(100%);
    transition: transform 0.22s cubic-bezier(0.4,0,0.2,1);
    z-index: 4;
    pointer-events: none;
  }
  .product-card__qa-bar::-webkit-scrollbar { display: none; }

  /* Desktop: show a thin scrollbar on hover so users know pills are scrollable */
  @media (hover: hover) and (pointer: fine) {
    .product-card__qa-bar:hover::-webkit-scrollbar {
      display: block;
      height: 3px;
    }
    .product-card__qa-bar:hover::-webkit-scrollbar-track {
      background: transparent;
    }
    .product-card__qa-bar:hover::-webkit-scrollbar-thumb {
      background: rgba(0,0,0,0.2);
      border-radius: 2px;
    }
    .product-card__qa-bar:hover {
      scrollbar-width: thin;
      scrollbar-color: rgba(0,0,0,0.2) transparent;
    }
  }

  /* ── QA multi-step ── */
  .pg-qa-step {
    display: none;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 6px;
    width: 100%;
    align-items: center;
  }
  .pg-qa-step--active { display: flex; }

  .pg-qa-back {
    flex-shrink: 0;
    background: none;
    border: none;
    padding: 4px 6px 4px 0;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
    color: inherit;
    opacity: 0.5;
    transition: opacity 0.15s;
  }
  .pg-qa-back:hover { opacity: 1; }

  .product-card__qa-pill {
    flex-shrink: 0;
    padding: 8px 12px;
    background: #fff;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.12s, border-color 0.12s, color 0.12s, opacity 0.12s;
    line-height: 1;
    min-width: 36px;
    text-align: center;
  }
  .product-card__qa-pill:hover {
    background: var(--pg-qa-pill-hover-bg, #111111);
    color: var(--pg-qa-pill-hover-color, #ffffff);
    border-color: var(--pg-qa-pill-hover-bg, #111111);
  }
  .product-card__qa-pill.is-soldout {
    opacity: 0.35;
    text-decoration: line-through;
    cursor: not-allowed;
  }
  .product-card__qa-pill--single {
    flex: 1;
  }
  .product-card__qa-pill.is-adding {
    opacity: 0.5;
    pointer-events: none;
  }

  /* ── Toast ── */
  /* ── App blocks ── */
  .pg-app-block {
    width: 100%;
    padding: 24px 0;
  }
  .pg-app-block:empty {
    display: none;
  }

  .pg-qa-toast {
    position: fixed;
    top: var(--pg-qa-toast-top, 120px);
    left: 50%;
    transform: translateX(-50%) translateY(-12px);
    display: flex;
    align-items: center;
    gap: 18px;
    background: #fff;
    border: var(--pg-qa-toast-border-width, 1px) solid var(--pg-qa-toast-border-color, #d8d8d8);
    border-radius: var(--pg-qa-toast-radius, 0px);
    padding: 13px 20px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    z-index: 99999;
    transition: opacity 0.22s, transform 0.22s;
  }
  .pg-qa-toast.is-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
  }
  .pg-qa-toast.is-error { border-color: #c00; color: #c00; }
  .pg-qa-toast__view { text-decoration: underline; text-underline-offset: 2px; }

  /* ── Image navigation arrows ── */
  .pg-nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 6;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    line-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-tap-highlight-color: transparent;
  }
  .pg-nav-btn--prev { left: 8px; }
  .pg-nav-btn--next { right: 8px; }
  .pg-nav-btn:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

  /* ── Badges shared base ── */
  .product-card__badge-new,
  .product-card__badge-sale,
  .product-card__badge-sold {
    pointer-events: none;
    user-select: none;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: .04em;
    white-space: nowrap;
    display: inline-block;
  }

  /* New badge is absolute (top-left, standalone) */
  .product-card__badge-new {
    position: absolute;
    z-index: 5;
  }

  /* Sale + sold out sit inside a flex column container — no absolute needed */
  .product-card__badge-sale,
  .product-card__badge-sold {
    position: static;
  }

/* ── Pagination (layout — vars set in {% style %} block) ── */
.pg-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--pag-gap, 4px);
  margin-top: var(--pag-margin-top, 48px);
  padding-bottom: var(--pag-margin-bottom, 24px);
  flex-wrap: wrap;
}
.pg-pagination__pages {
  display: flex;
  align-items: center;
  gap: var(--pag-gap, 4px);
  flex-wrap: wrap;
}
.pg-pagination__page,
.pg-pagination__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: var(--pag-size, 36px);
  height: var(--pag-size, 36px);
  padding: 0 var(--pag-pad, 8px);
  border-radius: var(--pag-radius, 0px);
  border: var(--pag-border-w, 1px) solid var(--pag-border-color, #e5e5e5);
  background: var(--pag-bg, transparent);
  color: var(--pag-color, #111111);
  font-family: var(--pag-font-family, inherit);
  font-weight: var(--pag-font-weight, inherit);
  font-size: var(--pag-font-size, 13px);
  text-transform: var(--pag-transform, none);
  letter-spacing: var(--pag-spacing, 0em);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.18s, color 0.18s, border-color 0.18s;
  line-height: 1;
}
.pg-pagination__page:hover,
.pg-pagination__btn:hover {
  background: var(--pag-hover-bg, #111111);
  color: var(--pag-hover-color, #ffffff);
  border-color: var(--pag-hover-border, #111111);
}
.pg-pagination__page--active {
  background: var(--pag-active-bg, #111111);
  color: var(--pag-active-color, #ffffff);
  border-color: var(--pag-active-bg, #111111);
  pointer-events: none;
}
.pg-pagination__ellipsis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--pag-size, 36px);
  height: var(--pag-size, 36px);
  color: var(--pag-color, #111111);
  font-family: var(--pag-font-family, inherit);
  font-size: var(--pag-font-size, 13px);
  opacity: 0.4;
}
.pg-pagination--load-more {
  flex-direction: column;
}
.pg-pagination__load-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--pag-load-min-width, 200px);
  padding: var(--pag-load-pad-v, 14px) var(--pag-load-pad-h, 48px);
  border-radius: var(--pag-radius, 0px);
  border: var(--pag-border-w, 1px) solid var(--pag-border-color, #111111);
  background: var(--pag-bg, transparent);
  color: var(--pag-color, #111111);
  font-family: var(--pag-font-family, inherit);
  font-weight: var(--pag-font-weight, inherit);
  font-size: var(--pag-font-size, 13px);
  text-transform: var(--pag-transform, none);
  letter-spacing: var(--pag-spacing, 0em);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.22s, color 0.22s, border-color 0.22s;
  line-height: 1;
  position: relative;
  overflow: hidden;
  z-index: 0;
}
.pg-pagination__load-btn::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--pag-hover-bg, #111111);
  transform: translateX(-101%);
  transition: transform 0.4s cubic-bezier(0.4,0,0.2,1);
  z-index: -1;
}
.pg-pagination__load-btn:hover::before {
  transform: translateX(0);
}
.pg-pagination__load-btn:hover {
  color: var(--pag-hover-color, #ffffff);
  border-color: var(--pag-hover-border, #111111);
}
.pg-pagination__load-btn.is-loading {
  opacity: 0.6;
  pointer-events: none;
}
/* END_SECTION:product-grid */

/* START_SECTION:product-lookbook (INDEX:32) */
.plb-section {
    background: var(--plb-bg, transparent);
    padding: var(--plb-pad-top-m) var(--plb-pad-h-m) var(--plb-pad-bottom-m);
  }

  @media screen and (min-width: 1200px) {
    .plb-section {
      padding: var(--plb-pad-top-d) var(--plb-pad-h-d) var(--plb-pad-bottom-d);
    }
  }

  .plb-section__inner {
    max-width: 100%;
  }

  /* ── Section heading ── */
  .plb-section__header {
    margin-bottom: 24px;
    text-align: var(--plb-heading-align, left);
  }

  .plb-section__heading {
    font-family: var(--plb-heading-font, inherit);
    font-weight: var(--plb-heading-weight, inherit);
    color: var(--plb-heading-color, inherit);
    font-size: var(--plb-heading-size-m, 26px);
    text-transform: var(--plb-heading-transform, none);
    letter-spacing: var(--plb-heading-spacing, 0em);
    margin: 0;
    line-height: 1.1;
  }

  @media screen and (min-width: 1200px) {
    .plb-section__heading {
      font-size: var(--plb-heading-size-d, 36px);
    }
  }

  /* ── Card ── */
  .plb-card {
    position: relative;
    overflow: hidden;
    display: block;
    text-decoration: none;
  }

  .plb-card__img-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: var(--plb-img-ratio-m, 4/5);
    overflow: hidden;
    color: inherit;
    font-size: 0;
    line-height: 0;
  }

  @media screen and (min-width: 1200px) {
    .plb-card__img-wrap {
      aspect-ratio: var(--plb-img-ratio-d, 3/4);
    }
  }

  .plb-card__img,
  .plb-card__placeholder {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }


  .plb-card__placeholder {
    background: #e8e8e8;
  }

  /* ── GRID layout ── */
  .plb-grid--uniform {
    display: grid;
    grid-template-columns: repeat(var(--plb-cols-m, 1), 1fr);
    gap: var(--plb-gap-m, 4px);
  }

  @media screen and (min-width: 1200px) {
    .plb-grid--uniform {
      grid-template-columns: repeat(var(--plb-cols-d, 3), 1fr);
      gap: var(--plb-gap-d, 4px);
    }
  }

  /* ── FEATURED layout ── */
  .plb-grid--featured {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--plb-gap-m, 4px);
  }

  @media screen and (min-width: 1200px) {
    .plb-grid--featured {
      grid-template-columns: 3fr 2fr;
      grid-template-rows: auto;
      gap: var(--plb-gap-d, 4px);
    }

    .plb-item--featured {
      grid-row: 1 / 3;
    }

    .plb-item--featured .plb-card__img-wrap {
      aspect-ratio: unset;
      height: 100%;
      min-height: 500px;
    }

    .plb-item--featured .plb-card__img-wrap {
      aspect-ratio: var(--plb-featured-ratio, 4/5);
    }
  }

  /* ── MOSAIC layout ── */
  .plb-grid--mosaic {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--plb-gap-m, 4px);
  }

  @media screen and (min-width: 1200px) {
    .plb-grid--mosaic {
      grid-template-columns: 1fr 1fr;
      gap: var(--plb-gap-d, 4px);
    }

    /* Positions 0 and 3 are tall, 1 and 2 are normal */
    .plb-item--mosaic-0,
    .plb-item--mosaic-3 {
      grid-column: span 1;
    }

    .plb-item--mosaic-0 .plb-card__img-wrap,
    .plb-item--mosaic-3 .plb-card__img-wrap {
      aspect-ratio: 3/4;
    }

    .plb-item--mosaic-1 .plb-card__img-wrap,
    .plb-item--mosaic-2 .plb-card__img-wrap {
      aspect-ratio: 4/3;
    }
  }

  .plb-section__empty {
    color: #999;
    font-size: 14px;
  }

  /* ── Lightbox ── */
  .plb-card--clickable {
    appearance: none;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    display: block;
    width: 100%;
    text-align: left;
  }

  .plb-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .plb-lightbox[hidden] {
    display: none;
  }

  .plb-lightbox__backdrop {
    position: absolute;
    inset: 0;
    background: var(--plb-lb-bg, #ffffff);
    cursor: zoom-out;
  }

  .plb-lightbox__close {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 10003;
    background: none;
    border: none;
    color: #111;
    cursor: pointer;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
  }




  .plb-lightbox__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    background: none;
    border: none;
    color: #111;
    cursor: pointer;
    padding: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
  }


  .plb-lightbox__nav--prev {
    left: 12px;
  }

  .plb-lightbox__nav--next {
    right: 12px;
  }

  .plb-lightbox__nav[hidden] {
    display: none;
  }

  /* ── Lightbox split layout ── */
  .plb-lightbox__body {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    width: 92vw;
    max-width: 1300px;
    max-height: 90vh;
    gap: var(--plb-lb-gap, 48px);
  }

  .plb-lightbox__img-wrap {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }

  .plb-lightbox__img {
    width: 100%;
    height: 100%;
    max-height: 90vh;
    object-fit: contain;
    display: block;
  }

  .plb-lightbox__panel {
    width: var(--plb-panel-width, 300px);
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    justify-content: center;
  }

  .plb-lightbox__panel[hidden] {
    display: none;
  }

  .plb-lightbox__products {
    display: flex;
    flex-direction: column;
    overflow-y: auto;
  }

  .plb-lightbox__product-item {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid var(--plb-divider-color, #e8e8e8);
  }

  .plb-lightbox__product-item:last-child {
    border-bottom: none;
  }

  .plb-lightbox__product-img-wrap {
    width: 100%;
    aspect-ratio: 1/1;
    overflow: hidden;
    flex-shrink: 0;
    font-size: 0;
    line-height: 0;
    color: transparent;
  }

  .plb-lightbox__product-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .plb-lightbox__info {
    padding: 16px 20px 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  @media screen and (min-width: 1200px) {
    .plb-lightbox__product-item {
      flex-direction: row;
      align-items: center;
      gap: 16px;
      padding: 16px 4px;
    }

    .plb-lightbox__product-img-wrap {
      width: var(--plb-panel-img-size, 90px);
      height: var(--plb-panel-img-size, 90px);
      aspect-ratio: unset;
    }

    .plb-lightbox__info {
      flex: 1;
      min-width: 0;
      padding: 0;
      gap: 6px;
    }
  }

  .plb-lightbox__title {
    margin: 0;
    font-family: var(--plb-title-font, inherit);
    font-weight: var(--plb-title-weight, 500);
    font-size: var(--plb-title-size, 14px);
    color: var(--plb-title-color, #111);
    text-transform: var(--plb-title-transform, none);
    letter-spacing: var(--plb-title-spacing, 0.01em);
    line-height: 1.3;
  }

  .plb-lightbox__price-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .plb-lightbox__price {
    font-family: var(--plb-price-font, inherit);
    font-weight: var(--plb-price-weight, inherit);
    font-size: var(--plb-price-size, 13px);
    color: var(--plb-price-color, #111);
  }

  .plb-lightbox__compare {
    font-size: var(--plb-price-size, 13px);
    color: var(--plb-compare-color, #aaa);
    text-decoration: line-through;
  }

  .plb-lightbox__shop-btn {
    display: inline-block;
    margin-top: 2px;
    font-family: var(--plb-shop-font, inherit);
    font-weight: var(--plb-shop-weight, inherit);
    font-size: var(--plb-shop-size, 10px);
    letter-spacing: var(--plb-shop-spacing, 0.1em);
    text-transform: var(--plb-shop-transform, uppercase);
    color: var(--plb-shop-color, #111);
    text-decoration: none;
    border-bottom: 1px solid var(--plb-shop-border, #111);
    padding-bottom: 2px;
    align-self: flex-start;
  }


  @media screen and (max-width: 1199px) {
    .plb-lightbox__body {
      flex-direction: column;
      width: 95vw;
      max-height: 92vh;
      overflow-y: auto;
    }

    .plb-lightbox__panel {
      width: 100%;
      border-left: none;
      border-top: 1px solid #e8e8e8;
    }

    .plb-lightbox__product-img-wrap {
      aspect-ratio: 4/3;
    }
  }

  /* ── Mobile drawer ── */
  .plb-lightbox__drawer-trigger {
    display: none;
  }

  @media screen and (max-width: 1199px) {
    .plb-lightbox__body {
      flex-direction: column;
      width: 100vw;
      height: 100dvh;
      max-height: none;
      overflow: hidden;
      position: relative;
    }

    .plb-lightbox__img-wrap {
      flex: 1 1 0;
      width: 100%;
      min-height: 0;
    }

    .plb-lightbox__img {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }

    .plb-lightbox__panel {
      display: none !important;
    }

    .plb-lightbox__drawer-trigger {
      display: block;
      position: fixed;
      bottom: 24px;
      left: 50%;
      transform: translateX(-50%);
      z-index: 10001;
      background: var(--plb-mobile-btn-bg, #111);
      color: var(--plb-mobile-btn-color, #fff);
      border: none;
      padding: 13px 28px;
      cursor: pointer;
      white-space: nowrap;
    }

    .plb-lightbox__drawer-trigger[hidden] {
      display: none !important;
    }

    .plb-lightbox__drawer-backdrop {
      display: none;
      position: fixed;
      inset: 0;
      z-index: 10001;
      background: rgba(0,0,0,0.3);
    }

    .plb-lightbox__drawer-backdrop.is-open {
      display: block;
    }

    .plb-lightbox__drawer {
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 10002;
      background: var(--plb-lb-bg, #fff);
      max-height: 75dvh;
      overflow-y: auto;
      transform: translateY(100%);
      transition: transform 0.35s cubic-bezier(0.32, 0.72, 0, 1);
      border-radius: 16px 16px 0 0;
    }

    .plb-lightbox__drawer[hidden] {
      display: block;
    }

    .plb-lightbox__drawer.is-open {
      transform: translateY(0);
    }

    .plb-lightbox__drawer-handle {
      width: 36px;
      height: 4px;
      background: #ddd;
      border-radius: 2px;
      margin: 14px auto 10px;
      flex-shrink: 0;
    }

    .plb-lightbox__drawer-products {
      padding: 0 0 32px;
    }

    .plb-lightbox__drawer-products .plb-lightbox__product-item {
      flex-direction: row;
      align-items: center;
      gap: 0;
      padding: 16px 20px;
      border-bottom: 1px solid var(--plb-divider-color, #f0f0f0);
    }

    .plb-lightbox__drawer-products .plb-lightbox__product-item:last-child {
      border-bottom: none;
    }

    .plb-lightbox__drawer-products .plb-lightbox__product-img-wrap {
      width: 72px;
      height: 72px;
      aspect-ratio: unset;
      flex-shrink: 0;
    }

    .plb-lightbox__drawer-products .plb-lightbox__info {
      padding: 0 0 0 16px;
      gap: 4px;
    }

    .plb-lightbox__drawer-products .plb-lightbox__title {
      font-size: 13px;
    }

    .plb-lightbox__drawer-products .plb-lightbox__price {
      font-size: 12px;
    }
  }

  .plb-lightbox__products {
    overflow: hidden;
    scrollbar-width: none;
  }

  .plb-lightbox__products::-webkit-scrollbar {
    display: none;
  }

  .plb-panel__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 10px 0;
    background: none;
    border: none;
    cursor: pointer;
    color: #111;
    flex-shrink: 0;
  }


  .plb-panel__nav[hidden] {
    display: none;
  }

  @media screen and (max-width: 1199px) {
    .plb-panel__nav {
      display: none;
    }
  }
/* END_SECTION:product-lookbook */

/* START_SECTION:rich-text (INDEX:34) */
.rte-section {
    background: var(--rte-bg, transparent);
    padding: var(--rte-pad-top-m) var(--rte-pad-h-m) var(--rte-pad-bottom-m);
    text-align: var(--rte-align, left);
  }

  @media screen and (min-width: 1200px) {
    .rte-section {
      padding: var(--rte-pad-top-d) var(--rte-pad-h-d) var(--rte-pad-bottom-d);
    }
  }

  .rte-section__inner {
    margin: 0 auto;
  }

  .rte-section__eyebrow {
    font-family: var(--rte-eyebrow-font, inherit);
    font-weight: var(--rte-eyebrow-weight, inherit);
    color: var(--rte-eyebrow-color, inherit);
    font-size: var(--rte-eyebrow-size-m, 10px);
    text-transform: var(--rte-eyebrow-transform, uppercase);
    letter-spacing: var(--rte-eyebrow-spacing, 0.1em);
    margin: 0 0 var(--rte-eyebrow-mb, 12px);
    line-height: 1.3;
  }

  @media screen and (min-width: 1200px) {
    .rte-section__eyebrow {
      font-size: var(--rte-eyebrow-size-d, 11px);
    }
  }

  .rte-section__heading {
    font-family: var(--rte-heading-font, inherit);
    font-weight: var(--rte-heading-weight, inherit);
    color: var(--rte-heading-color, inherit);
    font-size: var(--rte-heading-size-m, 24px);
    text-transform: var(--rte-heading-transform, none);
    letter-spacing: var(--rte-heading-spacing, 0em);
    margin: 0 0 var(--rte-heading-mb, 20px);
    line-height: 1.1;
  }

  @media screen and (min-width: 1200px) {
    .rte-section__eyebrow {
    font-family: var(--rte-eyebrow-font, inherit);
    font-weight: var(--rte-eyebrow-weight, inherit);
    color: var(--rte-eyebrow-color, inherit);
    font-size: var(--rte-eyebrow-size-m, 10px);
    text-transform: var(--rte-eyebrow-transform, uppercase);
    letter-spacing: var(--rte-eyebrow-spacing, 0.1em);
    margin: 0 0 var(--rte-eyebrow-mb, 12px);
    line-height: 1.3;
  }

  @media screen and (min-width: 1200px) {
    .rte-section__eyebrow {
      font-size: var(--rte-eyebrow-size-d, 11px);
    }
  }

  .rte-section__heading {
      font-size: var(--rte-heading-size-d, 32px);
    }
  }

  .rte-section__body {
    font-family: var(--rte-body-font, inherit);
    font-weight: var(--rte-body-weight, inherit);
    color: var(--rte-body-color, inherit);
    font-size: var(--rte-body-size-m, 14px);
    text-transform: var(--rte-body-transform, none);
    letter-spacing: var(--rte-body-spacing, 0em);
    line-height: var(--rte-body-line-height, 1.65);
  }

  @media screen and (min-width: 1200px) {
    .rte-section__body {
      font-size: var(--rte-body-size-d, 15px);
    }
  }

  .rte-section__body > * { margin-top: 0; }
  .rte-section__body > * + * { margin-top: 1em; }
  .rte-section__body > :last-child { margin-bottom: 0; }

  .rte-section__body a { color: inherit; }
  .rte-section__body a:hover { opacity: 0.7; }
/* END_SECTION:rich-text */

/* START_SECTION:search-drawer (INDEX:35) */
.search-drawer {
    position: fixed;
    inset: 0;
    z-index: 999;
    visibility: hidden;
    pointer-events: none;
    transition: visibility 0s var(--sd-speed, 350ms);
  }
  .search-drawer.is-open {
    visibility: visible;
    pointer-events: auto;
    transition: visibility 0s 0s;
  }
  .search-drawer__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,var(--sd-overlay-opacity, 0.4));
    opacity: 0;
    transition: opacity var(--sd-speed, 350ms) ease;
    cursor: pointer;
  }
  .search-drawer.is-open .search-drawer__overlay {
    opacity: 1;
  }
  .search-drawer__panel {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--sd-bg, #ffffff);
    transform: translateX(100%);
    transition: transform var(--sd-speed, 350ms) cubic-bezier(0.4,0,0.2,1);
    display: flex;
    flex-direction: column;
    padding: var(--sd-padding, 24px);
    box-sizing: border-box;
    overflow-y: auto;
  }
  @media screen and (min-width: 1200px) {
    .search-drawer__panel {
      width: var(--sd-panel-width, 480px);
    }
  }
  .search-drawer.is-open .search-drawer__panel {
    transform: translateX(0);
  }
  .search-drawer__form { width: 100%; flex-shrink: 0; }
  .search-drawer__input-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    border-bottom: 1px solid var(--sd-input-border, #111);
    padding-bottom: 10px;
  }
  .search-drawer__input-icon {
    flex-shrink: 0;
    color: var(--sd-input-color, #111);
    opacity: 0.4;
  }
  .search-drawer__input {
    flex: 1;
    border: none;
    outline: none;
    font-size: var(--sd-input-size, 18px);
    font-family: var(--sd-input-family);
    font-weight: var(--sd-input-weight);
    color: var(--sd-input-color, #111);
    background: transparent;
    padding: 0;
    min-width: 0;
  }
  .search-drawer__input::placeholder {
    color: var(--sd-input-color, #111);
    opacity: 0.35;
  }
  /* Hide browser native clear button */
  .search-drawer__input::-webkit-search-cancel-button { display: none; }
  .search-drawer__clear {
    background: none;
    border: none;
    padding: 2px;
    cursor: pointer;
    color: var(--sd-input-color, #111);
    opacity: 0.4;
    line-height: 0;
    flex-shrink: 0;
  }
  .search-drawer__clear:hover { opacity: 1; }

  /* Quick links */
  .search-drawer__links {
    display: flex;
    flex-direction: column;
    margin-top: 28px;
    gap: 0;
    flex-shrink: 0;
  }
  .search-drawer__links.is-hidden { display: none; }
  .search-drawer__link {
    display: block;
    color: var(--sd-link-color, #111);
    text-decoration: none;
    padding: var(--sd-link-padding, 10px) 0;
    font-size: var(--sd-link-size-mobile, 13px);
    font-family: var(--sd-link-family);
    font-weight: var(--sd-link-weight);
    text-transform: var(--sd-link-transform, none);
    letter-spacing: var(--sd-link-ls, 0);
    opacity: var(--sd-link-opacity, 0.7);
    border-bottom: 1px solid rgba(0,0,0,0.07);
  }
  @media screen and (min-width: 1200px) {
    .search-drawer__link {
      font-size: var(--sd-link-size-desktop, 14px);
    }
  }
  .search-drawer__link:hover { opacity: 1; }

  /* Results */
  .search-drawer__results {
    margin-top: 20px;
    flex: 1;
  }
  .search-drawer__results-label {
    font-size: var(--sd-label-size, 11px);
    font-family: var(--sd-label-family);
    font-weight: var(--sd-label-weight);
    letter-spacing: var(--sd-label-ls, 0.08em);
    text-transform: var(--sd-label-transform, uppercase);
    opacity: var(--sd-label-opacity, 0.4);
    color: var(--sd-label-color, #111);
    margin-bottom: 12px;
  }
  .search-drawer__result-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(0,0,0,0.06);
    text-decoration: none;
    color: var(--sd-input-color, #111);
  }
  .search-drawer__result-img {
    width: var(--sd-img-size, 64px);
    height: var(--sd-img-size, 64px);
    object-fit: cover;
    flex-shrink: 0;
    background: rgba(0,0,0,0.04);
  }
  .search-drawer__result-img-placeholder {
    width: var(--sd-img-size, 64px);
    height: var(--sd-img-size, 64px);
    flex-shrink: 0;
    background: rgba(0,0,0,0.06);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .search-drawer__result-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    min-width: 0;
    flex: 1;
  }
  .search-drawer__result-title-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
  }
  .search-drawer__result-title {
    font-size: var(--sd-title-size-mobile, 13px);
    font-family: var(--sd-title-family);
    font-weight: var(--sd-title-weight);
    color: var(--sd-title-color, #111);
    text-transform: var(--sd-title-transform, none);
    letter-spacing: var(--sd-title-ls, 0);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
  }
  @media screen and (min-width: 1200px) {
    .search-drawer__result-title {
      font-size: var(--sd-title-size-desktop, 14px);
    }
  }
  .search-drawer__result-price {
    font-size: var(--sd-price-size-mobile, 12px);
    font-family: var(--sd-price-family);
    font-weight: var(--sd-price-weight);
    color: var(--sd-price-color, #111);
    text-transform: var(--sd-price-transform, none);
    letter-spacing: var(--sd-price-ls, 0);
    white-space: nowrap;
    flex-shrink: 0;
  }
  @media screen and (min-width: 1200px) {
    .search-drawer__result-price {
      font-size: var(--sd-price-size-desktop, 13px);
    }
  }
  /* Color swatches */
  .search-drawer__result-swatches {
    display: flex;
    flex-wrap: wrap;
    gap: var(--sd-swatch-gap, 4px);
    align-items: center;
  }
  .search-drawer__swatch {
    display: inline-block;
    width: var(--sd-swatch-size, 11px);
    height: var(--sd-swatch-size, 11px);
    border-radius: var(--sd-swatch-radius, 50%);
    border: 1px solid rgba(0,0,0,0.15);
    flex-shrink: 0;
  }
  .search-drawer__swatch--light {
    border-color: rgba(0,0,0,0.25);
  }
  .search-drawer__swatch-more {
    font-size: var(--sd-swatch-more-size, 10px);
    font-family: var(--sd-swatch-more-family);
    font-weight: var(--sd-swatch-more-weight);
    color: var(--sd-swatch-more-color, #111);
    opacity: 0.5;
    line-height: 1;
  }
  .search-drawer__no-results {
    font-size: var(--sd-noresults-size, 14px);
    opacity: 0.5;
    color: var(--sd-noresults-color, #111);
    padding-top: 8px;
  }
  .search-drawer__results-footer {
    margin-top: 16px;
    text-align: center;
  }
  .search-drawer__results-footer a {
    font-size: var(--sd-viewall-size, 13px);
    font-family: var(--sd-viewall-family);
    font-weight: var(--sd-viewall-weight);
    color: var(--sd-viewall-color, #111);
    text-transform: var(--sd-viewall-transform, none);
    letter-spacing: var(--sd-viewall-ls, 0);
    opacity: 0.6;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .search-drawer__results-footer a:hover { opacity: 1; }
  .search-drawer__spinner {
    display: flex;
    justify-content: center;
    padding: 20px 0;
  }
  .search-drawer__spinner::after {
    content: '';
    width: 20px;
    height: 20px;
    border: 2px solid rgba(0,0,0,0.1);
    border-top-color: var(--sd-input-color, #111);
    border-radius: 50%;
    animation: sd-spin 0.6s linear infinite;
  }
  @keyframes sd-spin { to { transform: rotate(360deg); } }
  .search-drawer__highlight {
    background: none;
    font-weight: 700;
    color: inherit;
  }
/* END_SECTION:search-drawer */

/* START_SECTION:search (INDEX:36) */
.product-grid-section {
    width: 100%;
  }

  .product-card {
    position: relative;
    min-width: 0;
    align-self: start;
  }

  .product-card__image-link {
    display: block;
    text-decoration: none;
    color: inherit;
    font-size: 0;
    line-height: 0;
    width: 100%;
    height: 100%;
  }

  .product-card__image-wrapper {
    width: 100%;
    transform: translateZ(0); /* forces GPU layer so overflow:hidden clips composited track children */
  }

  .product-card__track {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;
    will-change: transform;
    transition: transform 0.35s ease;
  }

  .product-card__track .product-card__img {
    flex: 0 0 100%;
    min-width: 100%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  .product-card__placeholder {
    width: 100%;
    height: 100%;
    display: block;
    background: #f0f0f0;
  }

  /* ── Image placeholder ── */
  .product-card__img-ph {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    z-index: 0;
  }
  .product-card__img-ph-img { position: absolute; inset: 0; width: 100%; height: 100%; }
  .product-card__img-ph-text { white-space: nowrap; }
  .product-card__img-ph-icon { flex-shrink: 0; }
  .product-card__meta {
    padding: 8px 0 0;
  }

  .product-card__meta-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
  }

  .product-card__price-wrap {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
  }

  /* Icon hidden by default — shown only via Liquid CSS when qa_icon_trigger is on */
  .product-card__qa-icon-btn {
    display: none;
  }

  /* ── Quick add bar ── */
  .product-card__qa-bar {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    gap: 6px;
    padding: 10px 10px;
    background: var(--pg-qa-bar-bg, rgba(255,255,255,0.92));
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    transform: translateY(100%);
    transition: transform 0.22s cubic-bezier(0.4,0,0.2,1);
    z-index: 4;
    pointer-events: none;
  }
  .product-card__qa-bar::-webkit-scrollbar { display: none; }

  /* ── QA multi-step ── */
  .pg-qa-step {
    display: none;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 6px;
    width: 100%;
    align-items: center;
  }
  .pg-qa-step--active { display: flex; }

  .pg-qa-back {
    flex-shrink: 0;
    background: none;
    border: none;
    padding: 4px 6px 4px 0;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
    color: inherit;
    opacity: 0.5;
    transition: opacity 0.15s;
  }
  .pg-qa-back:hover { opacity: 1; }

  .product-card__qa-pill {
    flex-shrink: 0;
    padding: 8px 12px;
    background: #fff;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.12s, border-color 0.12s, color 0.12s, opacity 0.12s;
    line-height: 1;
    min-width: 36px;
    text-align: center;
  }
  .product-card__qa-pill:hover {
    background: var(--pg-qa-pill-hover-bg, #111111);
    color: var(--pg-qa-pill-hover-color, #ffffff);
    border-color: var(--pg-qa-pill-hover-bg, #111111);
  }
  .product-card__qa-pill.is-soldout {
    opacity: 0.35;
    text-decoration: line-through;
    cursor: not-allowed;
  }
  .product-card__qa-pill--single {
    flex: 1;
  }
  .product-card__qa-pill.is-adding {
    opacity: 0.5;
    pointer-events: none;
  }

  /* ── Toast ── */
  .pg-qa-toast {
    position: fixed;
    top: var(--pg-qa-toast-top, 120px);
    left: 50%;
    transform: translateX(-50%) translateY(-12px);
    display: flex;
    align-items: center;
    gap: 18px;
    background: #fff;
    border: var(--pg-qa-toast-border-width, 1px) solid var(--pg-qa-toast-border-color, #d8d8d8);
    border-radius: var(--pg-qa-toast-radius, 0px);
    padding: 13px 20px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    z-index: 99999;
    transition: opacity 0.22s, transform 0.22s;
  }
  .pg-qa-toast.is-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
  }
  .pg-qa-toast.is-error { border-color: #c00; color: #c00; }
  .pg-qa-toast__view { text-decoration: underline; text-underline-offset: 2px; }

  /* ── Image navigation arrows ── */
  .pg-nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 6;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    line-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-tap-highlight-color: transparent;
  }
  .pg-nav-btn--prev { left: 8px; }
  .pg-nav-btn--next { right: 8px; }
  .pg-nav-btn:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

  /* ── Badges shared base ── */
  .product-card__badge-new,
  .product-card__badge-sale,
  .product-card__badge-sold {
    pointer-events: none;
    user-select: none;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: .04em;
    white-space: nowrap;
    display: inline-block;
  }

  /* New badge is absolute (top-left, standalone) */
  .product-card__badge-new {
    position: absolute;
    z-index: 5;
  }

  /* Sale + sold out sit inside a flex column container — no absolute needed */
  .product-card__badge-sale,
  .product-card__badge-sold {
    position: static;
  }

  /* ── Search form (landing + no-results) ── */
  .sr-landing {
    display: flex;
    justify-content: center;
    padding: var(--sr-landing-pad, 60px) 20px;
  }
  .sr-form {
    width: 100%;
    max-width: var(--sr-form-maxwidth, 540px);
  }
  .sr-form__inner {
    display: flex;
    align-items: center;
    border-bottom: var(--sr-input-border-thickness, 1px) solid var(--sr-input-border-color, currentColor);
    gap: 8px;
  }
  .sr-form__input {
    flex: 1;
    background: none;
    border: none;
    outline: none;
    font-size: var(--sr-input-size, 16px);
    font-family: var(--sr-input-family, inherit);
    font-weight: var(--sr-input-weight, inherit);
    padding: 10px 0;
    color: var(--sr-input-color, inherit);
  }
  .sr-form__input::placeholder {
    opacity: 0.4;
  }
  .sr-form__btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    color: var(--sr-input-color, inherit);
    display: flex;
    align-items: center;
    opacity: 0.6;
  }
  .sr-form__btn:hover { opacity: 1; }

  /* ── No-results state ── */
  .sr-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    padding: var(--sr-landing-pad, 60px) 20px;
    text-align: center;
  }
  .sr-empty__msg {
    font-family: var(--sr-noresults-family, inherit);
    font-weight: var(--sr-noresults-weight, inherit);
    font-size: var(--sr-noresults-size, 15px);
    color: var(--sr-noresults-color, currentColor);
    opacity: var(--sr-noresults-opacity, 0.5);
    margin: 0;
  }
  .sr-empty .sr-form {
    width: 100%;
    max-width: 400px;
  }

/* ── Pagination ── */
.pg-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--pag-gap, 4px);
  margin-top: var(--pag-margin-top, 48px);
  padding-bottom: var(--pag-margin-bottom, 24px);
  flex-wrap: wrap;
}
.pg-pagination__pages {
  display: flex;
  align-items: center;
  gap: var(--pag-gap, 4px);
  flex-wrap: wrap;
}
.pg-pagination__page,
.pg-pagination__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-width: var(--pag-size, 36px);
  height: var(--pag-size, 36px);
  padding: 0 var(--pag-pad, 8px);
  border-radius: var(--pag-radius, 0px);
  border: var(--pag-border-w, 1px) solid var(--pag-border-color, #e5e5e5);
  background: var(--pag-bg, transparent);
  color: var(--pag-color, #111111);
  font-family: var(--pag-font-family, inherit);
  font-weight: var(--pag-font-weight, inherit);
  font-size: var(--pag-font-size, 13px);
  text-transform: var(--pag-transform, none);
  letter-spacing: var(--pag-spacing, 0em);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.18s, color 0.18s, border-color 0.18s;
  line-height: 1;
}
.pg-pagination__page:hover,
.pg-pagination__btn:hover {
  background: var(--pag-hover-bg, #111111);
  color: var(--pag-hover-color, #ffffff);
  border-color: var(--pag-hover-border, #111111);
}
.pg-pagination__page--active {
  background: var(--pag-active-bg, #111111);
  color: var(--pag-active-color, #ffffff);
  border-color: var(--pag-active-bg, #111111);
  pointer-events: none;
}
.pg-pagination__ellipsis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--pag-size, 36px);
  height: var(--pag-size, 36px);
  color: var(--pag-color, #111111);
  font-family: var(--pag-font-family, inherit);
  font-size: var(--pag-font-size, 13px);
  opacity: 0.4;
}
.pg-pagination--load-more {
  flex-direction: column;
}
.pg-pagination__load-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--pag-load-min-width, 200px);
  padding: var(--pag-load-pad-v, 14px) var(--pag-load-pad-h, 48px);
  border-radius: var(--pag-radius, 0px);
  border: var(--pag-border-w, 1px) solid var(--pag-border-color, #111111);
  background: var(--pag-bg, transparent);
  color: var(--pag-color, #111111);
  font-family: var(--pag-font-family, inherit);
  font-weight: var(--pag-font-weight, inherit);
  font-size: var(--pag-font-size, 13px);
  text-transform: var(--pag-transform, none);
  letter-spacing: var(--pag-spacing, 0em);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.22s, color 0.22s, border-color 0.22s;
  line-height: 1;
  position: relative;
  overflow: hidden;
  z-index: 0;
}
.pg-pagination__load-btn::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--pag-hover-bg, #111111);
  transform: translateX(-101%);
  transition: transform 0.4s cubic-bezier(0.4,0,0.2,1);
  z-index: -1;
}
.pg-pagination__load-btn:hover::before { transform: translateX(0); }
.pg-pagination__load-btn:hover {
  color: var(--pag-hover-color, #ffffff);
  border-color: var(--pag-hover-border, #111111);
}
.pg-pagination__load-btn.is-loading {
  opacity: 0.6;
  pointer-events: none;
}
/* END_SECTION:search */

/* START_SECTION:split-hero (INDEX:37) */
.sh-section {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--sh-gap-m, 0px);
    overflow: hidden;
    padding: var(--sh-section-pad-top-m, 0px) var(--sh-section-pad-h-m, 0px) var(--sh-section-pad-bottom-m, 0px);
  }

  @media screen and (min-width: 1200px) {
    .sh-section {
      grid-template-columns: 1fr 1fr;
      gap: var(--sh-gap-d, 0px);
      padding: var(--sh-section-pad-top-d, 0px) var(--sh-section-pad-h-d, 0px) var(--sh-section-pad-bottom-d, 0px);
    }
  }

  /* ── Mobile side-by-side ── */
  .sh-section--mobile-split {
    grid-template-columns: 1fr 1fr;
  }

  .sh-panel {
    position: relative;
    height: var(--sh-height-m, 50svh);
    overflow: hidden;
  }

  @media screen and (min-width: 1200px) {
    .sh-panel {
      height: var(--sh-height-d, 80svh);
    }
  }

  .sh-panel__img-wrap {
    position: absolute;
    inset: 0;
  }

  .sh-panel__img-wrap--placeholder {
    background: #e8e8e8;
  }

  .sh-panel__img,
  .sh-panel__placeholder-svg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .sh-panel__overlay {
    position: absolute;
    inset: 0;
    pointer-events: none;
  }

  .sh-panel--left .sh-panel__overlay {
    background: var(--sh-left-overlay, rgba(0,0,0,0));
    opacity: var(--sh-left-overlay-opacity, 0);
  }

  .sh-panel--right .sh-panel__overlay {
    background: var(--sh-right-overlay, rgba(0,0,0,0));
    opacity: var(--sh-right-overlay-opacity, 0);
  }

  .sh-panel__content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: var(--sh-content-halign, center);
    justify-content: var(--sh-content-valign, flex-end);
    padding: var(--sh-content-pad-m, 20px);
    z-index: 1;
  }

  @media screen and (min-width: 1200px) {
    .sh-panel__content {
      padding: var(--sh-content-pad-d, 32px);
    }
  }

  /* ── Left label ── */
  .sh-panel__label--left {
    font-family: var(--sh-label-l-font, inherit);
    font-weight: var(--sh-label-l-weight, inherit);
    color: var(--sh-label-l-color, #fff);
    font-size: var(--sh-label-l-size-m, 24px);
    text-transform: var(--sh-label-l-transform, none);
    letter-spacing: var(--sh-label-l-spacing, 0em);
    margin: 0 0 var(--sh-label-l-mb, 16px);
    line-height: 1.1;
  }

  @media screen and (min-width: 1200px) {
    .sh-panel__label--left {
      font-size: var(--sh-label-l-size-d, 32px);
    }
  }

  /* ── Right label ── */
  .sh-panel__label--right {
    font-family: var(--sh-label-r-font, inherit);
    font-weight: var(--sh-label-r-weight, inherit);
    color: var(--sh-label-r-color, #fff);
    font-size: var(--sh-label-r-size-m, 24px);
    text-transform: var(--sh-label-r-transform, none);
    letter-spacing: var(--sh-label-r-spacing, 0em);
    margin: 0 0 var(--sh-label-r-mb, 16px);
    line-height: 1.1;
  }

  @media screen and (min-width: 1200px) {
    .sh-panel__label--right {
      font-size: var(--sh-label-r-size-d, 32px);
    }
  }

  /* ── Shared button base ── */
  .sh-panel__btn {
    display: inline-block;
    text-decoration: none;
    cursor: pointer;
    position: relative;
    transition: color 0.2s, background 0.2s, border-color 0.2s;
    flex-shrink: 0;
  }

  /* ── Left button ── */
  .sh-panel__btn--left {
    font-family: var(--sh-btn-l-font, inherit);
    font-weight: var(--sh-btn-l-weight, inherit);
    font-size: var(--sh-btn-l-size-m, 12px);
    text-transform: var(--sh-btn-l-transform, uppercase);
    letter-spacing: var(--sh-btn-l-spacing, 0.1em);
    color: var(--sh-btn-l-color, #fff);
    background: var(--sh-btn-l-bg, transparent);
    border: var(--sh-btn-l-border-w, 1px) solid var(--sh-btn-l-border, #fff);
    border-radius: var(--sh-btn-l-radius, 0px);
    padding: var(--sh-btn-l-pad-v-m, 12px) var(--sh-btn-l-pad-h-m, 24px);
  }

  @media screen and (min-width: 1200px) {
    .sh-panel__btn--left {
      font-size: var(--sh-btn-l-size-d, 12px);
      padding: var(--sh-btn-l-pad-v, 12px) var(--sh-btn-l-pad-h, 24px);
    }
  }

  .sh-panel__btn--left:hover {
    color: var(--sh-btn-l-color-hover, #111);
    background: var(--sh-btn-l-bg-hover, #fff);
    border-color: var(--sh-btn-l-border-hover, #fff);
  }

  /* ── Right button ── */
  .sh-panel__btn--right {
    font-family: var(--sh-btn-r-font, inherit);
    font-weight: var(--sh-btn-r-weight, inherit);
    font-size: var(--sh-btn-r-size-m, 12px);
    text-transform: var(--sh-btn-r-transform, uppercase);
    letter-spacing: var(--sh-btn-r-spacing, 0.1em);
    color: var(--sh-btn-r-color, #fff);
    background: var(--sh-btn-r-bg, transparent);
    border: var(--sh-btn-r-border-w, 1px) solid var(--sh-btn-r-border, #fff);
    border-radius: var(--sh-btn-r-radius, 0px);
    padding: var(--sh-btn-r-pad-v-m, 12px) var(--sh-btn-r-pad-h-m, 24px);
  }

  @media screen and (min-width: 1200px) {
    .sh-panel__btn--right {
      font-size: var(--sh-btn-r-size-d, 12px);
      padding: var(--sh-btn-r-pad-v, 12px) var(--sh-btn-r-pad-h, 24px);
    }
  }

  .sh-panel__btn--right:hover {
    color: var(--sh-btn-r-color-hover, #111);
    background: var(--sh-btn-r-bg-hover, #fff);
    border-color: var(--sh-btn-r-border-hover, #fff);
  }

  /* ── Underline decoration — matches _header-sidebar.liquid pattern ── */
  .sh-panel__btn--underline span {
    position: relative;
    display: inline-block;
  }

  /* Static underline — collapses on hover */
  .sh-panel__btn--left.sh-panel__btn--underline span::before {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--sh-btn-l-deco-color, #fff);
    transform: scaleX(1);
    transform-origin: center;
    transition: transform 0.25s ease;
  }
  .sh-panel__btn--right.sh-panel__btn--underline span::before {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--sh-btn-r-deco-color, #fff);
    transform: scaleX(1);
    transform-origin: center;
    transition: transform 0.25s ease;
  }

  /* Animated underline — expands from center on hover */
  .sh-panel__btn--left.sh-panel__btn--underline span::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--sh-btn-l-deco-color, #fff);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.25s ease 0s;
  }
  .sh-panel__btn--right.sh-panel__btn--underline span::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--sh-btn-r-deco-color, #fff);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.25s ease 0s;
  }

  .sh-panel__btn--underline:hover span::before {
    transform: scaleX(0);
    transition: transform 0.25s ease;
  }
  .sh-panel__btn--underline:hover span::after {
    transform: scaleX(1);
    transition: transform 0.25s ease 0.25s;
  }
/* END_SECTION:split-hero */

/* START_SECTION:text-marquee (INDEX:38) */
.mqee-section {
    background: var(--mqee-bg, transparent);
    padding: var(--mqee-pad-top-m) 0 var(--mqee-pad-bottom-m);
  }

  @media screen and (min-width: 1200px) {
    .mqee-section {
      padding: var(--mqee-pad-top-d) 0 var(--mqee-pad-bottom-d);
    }
  }

  .mqee-section__outer {
    background: var(--mqee-strip-bg, transparent);
    border-top: var(--mqee-border-top-width, 0px) solid var(--mqee-border-top-color, transparent);
    border-bottom: var(--mqee-border-bottom-width, 0px) solid var(--mqee-border-bottom-color, transparent);
    padding: var(--mqee-strip-pad-v, 14px) 0;
    overflow: hidden;
    white-space: nowrap;
  }

  .mqee-section__track {
    display: inline-flex;
    animation: mqee-scroll var(--mqee-speed, 30s) linear infinite;
  }

  .mqee-section__set {
    display: inline-flex;
    align-items: center;
    gap: var(--mqee-gap, 40px);
    padding-right: var(--mqee-gap, 40px);
  }

  .mqee-section__item {
    font-family: var(--mqee-font, inherit);
    font-weight: var(--mqee-weight, inherit);
    color: var(--mqee-color, inherit);
    font-size: var(--mqee-size-m, 13px);
    text-transform: var(--mqee-transform, none);
    letter-spacing: var(--mqee-spacing, 0em);
    flex-shrink: 0;
  }

  @media screen and (min-width: 1200px) {
    .mqee-section__item {
      font-size: var(--mqee-size-d, 14px);
    }
  }

  .mqee-section__sep {
    color: var(--mqee-sep-color, inherit);
    font-size: var(--mqee-sep-size, 14px);
    flex-shrink: 0;
    line-height: 1;
  }

  @keyframes mqee-scroll {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
  }
/* END_SECTION:text-marquee */

/* CSS from block stylesheet tags */
/* START_BLOCK:_header-sidebar (INDEX:40) */
.header__sidebar-toggle {
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    cursor: pointer;
    color: var(--sidebar-icon-color, var(--color-foreground));
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .sidebar-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: var(--sidebar-overlay-color, #000);
    opacity: 0;
    z-index: 299;
    transition: opacity 0.3s ease;
  }
  .sidebar-overlay.is-visible {
    display: block;
    opacity: var(--sidebar-overlay-opacity, 0.4);
  }

  .sidebar-drawer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    min-height: 100%;
    background: var(--sidebar-bg, #fff);
    color: var(--sidebar-color, #000);
    z-index: 300;
    transform: translateX(-100%);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    padding: var(--sidebar-top-padding, 0px) 0 0;
    display: flex;
    flex-direction: column;
  }
  @media screen and (min-width: 1200px) {
    .sidebar-drawer {
      width: min(var(--sidebar-width, 500px), 80vw);
      transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), width 0.35s cubic-bezier(0.4, 0, 0.2, 1) 0.1s;
    }
    .sidebar-drawer.has-image-panel {
      width: min(95vw, 1600px);
    }
  }
  .sidebar-drawer.glass-active {
    background: transparent;
  }
  .sidebar-drawer.glass-active::before {
    content: '';
    position: absolute;
    inset: 0;
    background: color-mix(in srgb, var(--sidebar-bg, #fff) var(--sidebar-bg-percent, 70%), transparent);
    backdrop-filter: var(--sidebar-glass, none);
    -webkit-backdrop-filter: var(--sidebar-glass, none);
    z-index: -1;
  }
  .sidebar-drawer.text-shadow-active .sidebar-drawer__link,
  .sidebar-drawer.text-shadow-active .sidebar-drawer__link--parent,
  .sidebar-drawer.text-shadow-active .sidebar-drawer__link--parent span,
  .sidebar-drawer.text-shadow-active .sidebar-drawer__back,
  .sidebar-drawer.text-shadow-active .sidebar-drawer__footer-link,
  .sidebar-drawer.text-shadow-active .sidebar-drawer__close,
  .sidebar-drawer.text-shadow-active .sidebar-drawer__email-signup {
    text-shadow: var(--sidebar-text-shadow, none);
  }
  .sidebar-drawer.is-open {
    transform: translateX(0);
  }

  .sidebar-drawer__close {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    color: var(--sidebar-close-color, inherit);
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
    margin-top: 1.5rem;
    margin-left: auto;
    padding-right: var(--sidebar-h-padding, 24px);
  }

  .sidebar-drawer__viewport {
    flex: 1;
    overflow: hidden;
    position: relative;
    min-height: 0;
    width: 100%;
  }

  .sidebar-drawer__panel {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0 var(--sidebar-h-padding, 24px) 2rem;
    background: transparent;
    box-sizing: border-box;
  }
  .sidebar-drawer__panel--main {
    transform: translateX(0);
    display: flex;
    flex-direction: column;
  }
  .sidebar-drawer__email-signup {
    flex-shrink: 0;
    color: var(--email-text-color, inherit);
  }
  .sidebar-drawer__email-row {
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--email-line-color, currentColor);
    padding-bottom: 6px;
    gap: 8px;
  }
  .sidebar-drawer__email-input {
    flex: 1;
    background: none;
    border: none;
    outline: none;
    color: inherit;
    font-family: var(--email-input-font-family, var(--sidebar-font-family));
    font-weight: var(--email-input-font-weight, var(--sidebar-font-weight));
    font-size: var(--email-input-font-size, 14px);
    text-transform: var(--email-input-text-transform, none);
    letter-spacing: var(--email-input-letter-spacing, 0);
    padding: 0;
    min-width: 0;
  }
  .sidebar-drawer__email-input::placeholder {
    color: inherit;
  }
  .sidebar-drawer__email-btn {
    background: none;
    border: none;
    cursor: pointer;
    color: inherit;
    font-family: var(--email-btn-font-family, var(--sidebar-font-family));
    font-weight: var(--email-btn-font-weight, 700);
    font-size: var(--email-btn-font-size, 13px);
    text-transform: var(--email-btn-text-transform, uppercase);
    letter-spacing: var(--email-btn-letter-spacing, 0.05em);
    padding: 0;
    white-space: nowrap;
    flex-shrink: 0;
  }
  .sidebar-drawer__email-btn:hover {
  }
  .sidebar-drawer__email-success {
    font-family: var(--email-input-font-family, var(--sidebar-font-family));
    font-weight: var(--email-input-font-weight);
    font-size: var(--email-input-font-size, 13px);
    color: var(--email-text-color, inherit);
    padding: 8px 0 4px;
  }
  .sidebar-drawer__email-gender {
    margin-top: 12px;
  }
  .sidebar-drawer__email-gender-label {
    font-family: var(--email-input-font-family, var(--sidebar-font-family));
    font-weight: var(--email-input-font-weight);
    font-size: var(--email-input-font-size, 13px);
    color: var(--email-text-color, inherit);
    margin: 0 0 8px;
  }
  .sidebar-drawer__email-gender-options {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
  }
  .sidebar-drawer__email-radio-label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: var(--email-input-font-family, var(--sidebar-font-family));
    font-weight: var(--email-input-font-weight);
    font-size: var(--email-input-font-size, 13px);
    color: var(--email-text-color, inherit);
    cursor: pointer;
  }
  .sidebar-drawer__email-radio-label input[type="radio"] {
    accent-color: currentColor;
  }
  .sidebar-drawer__email-consent {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-top: 12px;
    font-family: var(--email-input-font-family, var(--sidebar-font-family));
    font-weight: var(--email-input-font-weight);
    font-size: var(--email-input-font-size, 13px);
    color: var(--email-text-color, inherit);
    line-height: 1.4;
    cursor: pointer;
  }
  .sidebar-drawer__email-consent input[type="checkbox"] {
    margin-top: 2px;
    flex-shrink: 0;
    accent-color: currentColor;
  }
  .sidebar-drawer__nav {
    flex-shrink: 0;
  }
  .sidebar-drawer__mobile-images {
    flex-shrink: 0;
  }
  .sidebar-drawer__panel--main.is-hidden {
    transform: translateX(-100%);
  }
  .sidebar-drawer__panel--sub {
    transform: translateX(100%);
  }
  .sidebar-drawer__panel--sub.is-active {
    transform: translateX(0);
  }
  .sidebar-drawer__panel--sub.is-hidden {
    transform: translateX(-100%);
  }

  .sidebar-drawer__link--parent {
    background: none;
    border: none;
    cursor: pointer;
    color: inherit;
    width: 100%;
    display: flex;
    align-items: center;
    padding: var(--sidebar-link-spacing, 12px) 0;
    border-bottom: var(--sidebar-divider-thickness, 1px) solid var(--sidebar-divider-color, currentColor);
    font-family: var(--sidebar-font-family);
    font-weight: var(--sidebar-font-weight);
    font-size: var(--sidebar-font-size, 16px);
    text-transform: var(--sidebar-text-transform, none);
    letter-spacing: var(--sidebar-letter-spacing, 0);
    text-align: var(--sidebar-text-align, left);
    opacity: 0.85;
  }
  .sidebar-drawer__link--parent span {
    flex: 1;
    text-align: var(--sidebar-text-align, left);
  }
  .sidebar-drawer__link--parent svg {
    flex-shrink: 0;
    margin-left: auto;
    color: var(--sidebar-chevron-color, inherit);
  }

  .sidebar-drawer__back {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: none;
    border: none;
    cursor: pointer;
    color: var(--sidebar-back-color, inherit);
    padding: var(--sidebar-link-spacing, 12px) 0;
    font-family: var(--sidebar-back-font-family, var(--sidebar-font-family));
    font-weight: var(--sidebar-back-font-weight, var(--sidebar-font-weight));
    font-size: var(--sidebar-back-font-size-mobile, 13px);
    text-transform: var(--sidebar-back-text-transform, none);
    letter-spacing: var(--sidebar-back-letter-spacing, 0);
    width: 100%;
    text-align: left;
  }

  @media (min-width: 1200px) {
    .sidebar-drawer__back {
      font-size: var(--sidebar-back-font-size-desktop, 14px);
    }
  }

  .sidebar-drawer__divider {
    height: var(--sidebar-divider-thickness, 1px);
    background: var(--sidebar-divider-color, #E5E5E5);
    margin-bottom: 0.25rem;
  }
  .sidebar-drawer[style*="--sidebar-divider-thickness: 0"] .sidebar-drawer__divider {
    display: none;
  }
  /* Panel title divider (below L2/L3 back button) always shows — minimum 1px */
  .sidebar-drawer[style*="--sidebar-divider-thickness: 0"] .sidebar-drawer__divider--panel-title {
    display: block;
    height: 1px;
  }

  /* Two-column image panel (desktop only) */
  .sidebar-drawer__panel-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .sidebar-drawer__panel-nav {
    flex: 1;
    overflow-y: auto;
  }
  .sidebar-drawer__panel-images {
    display: none;
  }

  /* Mobile image strip */
  .sidebar-drawer__mobile-images {
    display: flex;
    flex-direction: row;
    gap: 4px;
    overflow-x: auto;
    overflow-y: visible;
    padding: 12px var(--sidebar-h-padding, 24px) 12px;
    margin-left: calc(-1 * var(--sidebar-h-padding, 24px));
    margin-right: calc(-1 * var(--sidebar-h-padding, 24px));
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .sidebar-drawer__mobile-images::-webkit-scrollbar {
    display: none;
  }
  /* Grid layout */
  .sidebar-drawer__mobile-images--grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    overflow-x: visible;
    overflow-y: visible;
    padding: 12px 0;
    margin-left: 0;
    margin-right: 0;
  }
  .sidebar-drawer__mobile-image-card {
    flex-shrink: 0;
    width: 200px;
    text-decoration: none;
    color: inherit;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
  }
  .sidebar-drawer__mobile-images--grid .sidebar-drawer__mobile-image-card {
    width: 100%;
  }
  .sidebar-drawer__mobile-image-img {
    width: 200px;
    height: 260px;
    overflow: hidden;
  }
  .sidebar-drawer__mobile-images--grid .sidebar-drawer__mobile-image-img {
    width: 100%;
    height: 220px;
  }
  .sidebar-drawer__mobile-image-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }
  .sidebar-drawer__mobile-image-card .sidebar-drawer__grid-label {
    padding: 20px 8px 6px;
    font-size: var(--image-label-font-size, 13px);
  }

  @media (min-width: 1200px) {
    .sidebar-drawer__mobile-images {
      display: none;
    }
    .sidebar-drawer__mobile-images--grid {
      display: none;
    }
  }

  @media (min-width: 1200px) {
    .sidebar-drawer__panel--with-images {
      width: min(95vw, 1600px);
    }
    .sidebar-drawer__panel--with-images .sidebar-drawer__panel-inner {
      flex-direction: row;
      gap: 0;
      height: 100%;
    }
    .sidebar-drawer__panel--with-images .sidebar-drawer__panel-nav {
      width: auto;
      min-width: 200px;
      max-width: 320px;
      flex-shrink: 0;
      overflow-y: auto;
    }
    .sidebar-drawer__panel--with-images .sidebar-drawer__panel-images {
      display: flex;
      flex-direction: column;
      flex: 1;
      min-width: 400px;
      position: relative;
      overflow: hidden;
      background: var(--sidebar-bg, #fff);
      max-width: 0;
      transition: max-width 0.35s cubic-bezier(0.4, 0, 0.2, 1) 0.15s;
    }
    .sidebar-drawer.glass-active .sidebar-drawer__panel--with-images .sidebar-drawer__panel-images {
      background: transparent;
    }
    .sidebar-drawer.glass-active .sidebar-drawer__panel--with-images .sidebar-drawer__panel-images::before {
      content: '';
      position: absolute;
      inset: 0;
      background: color-mix(in srgb, var(--sidebar-bg, #fff) var(--sidebar-bg-percent, 70%), transparent);
      backdrop-filter: var(--sidebar-glass, none);
      -webkit-backdrop-filter: var(--sidebar-glass, none);
      z-index: -1;
    }
    .sidebar-drawer__panel--with-images.is-active .sidebar-drawer__panel-images {
      max-width: 2000px;
    }
  }

  /* 2×2 image grid */
  .sidebar-drawer__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 4px;
    height: 100%;
    padding: 4px;
    box-sizing: border-box;
  }
  .sidebar-drawer__grid-card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    overflow: hidden;
    position: relative;
  }
  .sidebar-drawer__grid-card:hover .sidebar-drawer__grid-label {
    opacity: 1;
  }
  .sidebar-drawer__grid-img {
    flex: 1;
    overflow: hidden;
  }
  .sidebar-drawer__grid-img img,
  .sidebar-drawer__grid-img video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    color: transparent; /* hides alt text flash during load */
  }
  .sidebar-drawer__grid-label {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 24px 12px 10px;
    background: linear-gradient(to top, rgba(0,0,0,0.45), transparent);
    color: #fff;
    font-family: var(--image-label-font-family, var(--sidebar-font-family));
    font-size: var(--image-label-font-size, 13px);
    font-weight: var(--image-label-font-weight, var(--sidebar-font-weight));
    letter-spacing: var(--image-label-letter-spacing, 0);
    text-transform: var(--image-label-text-transform, none);
    text-align: var(--image-label-text-align, left);
    text-decoration: none;
    opacity: 0.85;
    transition: opacity 0.2s ease;
  }
  .sidebar-drawer__grid-label span {
    position: relative;
    display: inline-block;
  }
  /* Static underline (when decoration = underline) */
  .sidebar-drawer__grid-label--underline span::before {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--image-label-decoration-color, currentColor);
    transform: scaleX(1);
    transform-origin: center;
    transition: transform 0.25s ease;
  }
  /* Animated underline expanding from center on hover */
  .sidebar-drawer__grid-label--underline span::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 1px;
    background: var(--image-label-decoration-color, currentColor);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.25s ease 0s;
  }
  .sidebar-drawer__grid-card:hover .sidebar-drawer__grid-label--underline span::before {
    transform: scaleX(0);
    transition: transform 0.25s ease;
  }
  .sidebar-drawer__grid-card:hover .sidebar-drawer__grid-label--underline span::after {
    transform: scaleX(1);
    transition: transform 0.25s ease 0.25s;
  }

  .sidebar-drawer__nav {
    display: flex;
    flex-direction: column;
    flex: 1;
    text-align: var(--sidebar-text-align, left);
    align-items: stretch;
  }

  .sidebar-drawer__link {
    text-decoration: none;
    color: inherit;
    padding: var(--sidebar-link-spacing, 12px) 0;
    border-bottom: var(--sidebar-divider-thickness, 1px) solid var(--sidebar-divider-color, currentColor);
    font-family: var(--sidebar-font-family);
    font-weight: var(--sidebar-font-weight);
    font-size: var(--sidebar-font-size, 16px);
    text-transform: var(--sidebar-text-transform, none);
    letter-spacing: var(--sidebar-letter-spacing, 0);
    text-align: var(--sidebar-text-align, left);
    opacity: 0.85;
    width: 100%;
    display: block;
  }
  .sidebar-drawer__link:last-child,
  .sidebar-drawer[style*="--sidebar-divider-thickness: 0"] .sidebar-drawer__link {
    border-bottom: none;
  }
  .sidebar-drawer[style*="--sidebar-divider-thickness: 0"] .sidebar-drawer__link--parent {
    border-bottom: none;
  }
  .sidebar-drawer__link.is-active,
  .sidebar-drawer__link:hover {
    opacity: 1;
  }

  .sidebar-drawer__link--parent:hover {
    opacity: 1;
  }

  .sidebar-drawer__footer-links {
    display: flex;
    flex-direction: column;
    text-align: var(--sidebar-footer-text-align, left);
  }
  .sidebar-drawer__footer-link {
    text-decoration: none;
    color: inherit;
    padding: var(--sidebar-footer-link-spacing, 8px) 0;
    border-bottom: var(--sidebar-footer-divider-thickness, 1px) solid var(--sidebar-footer-divider-color, #E5E5E5);
    font-family: var(--sidebar-footer-font-family);
    font-weight: var(--sidebar-footer-font-weight);
    font-size: var(--sidebar-footer-font-size, 14px);
    text-transform: var(--sidebar-footer-text-transform, none);
    letter-spacing: var(--sidebar-footer-letter-spacing, 0);
    display: block;
    width: 100%;
    opacity: 0.85;
  }
  .sidebar-drawer__footer-link:last-child,
  .no-footer-dividers .sidebar-drawer__footer-link {
    border-bottom: none;
  }
  .sidebar-drawer__footer-link:hover,
  .sidebar-drawer__footer-link.is-active {
    opacity: 1;
  }

  .sidebar-drawer {
    --sidebar-font-size: var(--sidebar-font-size-mobile, 14px);
  }
  .sidebar-drawer__footer-nav {
    --sidebar-footer-font-size: var(--sidebar-footer-font-size-mobile, 14px);
  }
  @media (min-width: 1200px) {
    .sidebar-drawer {
      --sidebar-font-size: var(--sidebar-font-size-desktop, 16px);
    }
    .sidebar-drawer__footer-nav {
      --sidebar-footer-font-size: var(--sidebar-footer-font-size-desktop, 14px);
    }
  }
/* END_BLOCK:_header-sidebar */

/* START_BLOCK:group (INDEX:41) */
.group {
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    width: 100%;
  }

  .group--horizontal {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0 var(--padding);
  }

  .group--vertical {
    flex-direction: column;
    align-items: var(--alignment);
    padding: var(--padding) 0;
  }
/* END_BLOCK:group */

/* START_BLOCK:text (INDEX:43) */
.text {
    text-align: var(--text-align);
  }
  .text--title {
    font-size: 2rem;
    font-weight: 700;
  }
  .text--subtitle {
    font-size: 1.5rem;
  }
/* END_BLOCK:text */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:image (INDEX:52) */
.image {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: auto;
  }

  .image > img {
    width: 100%;
    height: auto;
  }
/* END_SNIPPET:image */