/** Shopify CDN: Minification failed

Line 6057:0 Expected "}" to go with "{"

**/
@font-face { font-family: 'Futura PT'; font-style: normal; font-weight: 400; font-display: swap; src: url('FuturaPT-Book.woff2') format('woff2'); }
@font-face { font-family: 'Futura PT'; font-style: normal; font-weight: 500; font-display: swap; src: url('FuturaPT-Medium.woff2') format('woff2'); }
@font-face { font-family: 'Futura PT'; font-style: normal; font-weight: 600; font-display: swap; src: url('FuturaPT-Demi.woff2') format('woff2'); }
@font-face { font-family: 'Parslay'; font-style: normal; font-weight: 400; font-display: swap; src: url('parslay-regular.woff2') format('woff2'); }

:root {
  --font-body-family: 'Futura PT', Arial, sans-serif;
  --font-heading-family: 'Futura PT', Arial, sans-serif;
  --font-body-style: normal;
  --font-heading-style: normal;
  --font-body-weight: 400;
  --font-heading-weight: 500;
  --momo-ink: 30, 28, 26;
  --momo-paper: 255, 255, 255;
  --momo-soft: 242, 242, 242;
  --momo-line: 222, 222, 222;
  --momo-muted: 107, 111, 110;
  --momo-header: 6.2rem;
  --momo-announcement: 3.2rem;
  --momo-gutter: 3.2rem;
}

/* Final cascade for the announcement/header relationship and footer type. */
body.template-index .section-header { top: 32px !important; transition: top .2s ease-in-out; }
body.template-index.momo-announcement-hidden .section-header { top: 0 !important; }
body.template-index .momo-footer__menu summary { font-size: 1.8rem !important; }
body.template-index .momo-footer__menu a { font-size: 1.7rem !important; }
body.template-index .momo-footer__brand-tagline { font-size: 1.1rem !important; }
body.template-index .momo-footer__bottom { display: none !important; }
body.template-index .momo-announcement__message { gap: 12px; }
body.template-index .momo-announcement__rule { display: inline-block; width: 1px; height: 10px; background: currentColor; }
body.template-index .announcement-bar__link { text-decoration: underline; text-underline-offset: 3px; }
body.template-index .momo-footer__menu summary { font-size: 1.8rem !important; }
body.template-index .momo-footer__menu a { font-size: 1.7rem !important; }
body.template-index .momo-footer__brand { height: auto !important; min-height: 0 !important; padding-block: 3.2rem 4rem !important; }
body.template-index .momo-footer__brand-stack > span { font-size: 9rem !important; }
body.template-index .momo-footer__brand-stack .momo-footer__payment { margin-top: 2.8rem !important; }
body.template-index .momo-footer { height: auto !important; min-height: 0 !important; }

/* The modal has its own close control. The summary also contains Dawn's
   alternate close icon, which becomes visible when details[open] and creates
   the duplicate X shown beside the Search label. */
.header__search details[open] > summary .header__icon-close { display: none !important; }


.template-index .momo-editorial__content h3 {
  font-family: 'Parslay', 'Futura PT', sans-serif;
  font-weight: 400;
}

shopify-account.header__icon {
  --shopify-account-font-body: 'Futura PT', Arial, sans-serif !important;
  --shopify-account-font-heading: 'Futura PT', Arial, sans-serif !important;
}

/* Final cascade lock: later Dawn rules must not expand the chooser again. */
.quick-add-modal__content {
  width: min(90vw, 44.25rem) !important;
  height: min(70vh, 35rem) !important;
  max-height: calc(100vh - 2rem) !important;
  overflow: hidden !important;
}
.quick-add-modal__content-info {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  overflow: hidden !important;
}
.quick-add-modal__content-info .product-page {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}
.quick-add-modal__content-info .product-main-column {
  height: 100% !important;
  max-height: none !important;
  overflow-y: auto !important;
}
.quick-add-modal__content-info .product-info {
  height: 100% !important;
  max-height: none !important;
  overflow-y: auto !important;
}
@media screen and (max-width: 749px) {
  .quick-add-modal__content {
    width: 100% !important;
    height: min(92vh, 48rem) !important;
    max-height: 92vh !important;
  }
  .quick-add-modal__content-info .product-page {
    display: block !important;
    height: auto !important;
  }
  .quick-add-modal__content-info .product-main-column,
  .quick-add-modal__content-info .product-info {
    height: auto !important;
    overflow: visible !important;
  }
}

/* Account remains a native Shopify-account control so its click handler is
   preserved. The visible label is a slotted light-DOM node inside that
   control, keeping text and hit area aligned as one element. */
@media screen and (min-width: 990px) {
  html body .header__icons > shopify-account.header__icon--account { display: inline-flex !important; order: 2 !important; width: auto !important; min-width: 0 !important; height: 44px !important; align-items: center !important; justify-content: center !important; padding: 0 !important; }
  html body .header__icons > shopify-account.header__icon--account::after { content: none !important; }
  html body .header__icons > shopify-account.header__icon--account .momo-account-slot-label { display: inline !important; color: currentColor !important; font-family: 'Futura PT', Arial, sans-serif !important; font-size: 16px !important; font-weight: 500 !important; line-height: 1.2 !important; letter-spacing: 0 !important; }
  html body .header__icons > .wishlist-hero-header-link .momo-header-label,
  html body .header__icons > .header__icon--cart .momo-header-label { position: relative !important; top: 12px !important; }
  html body.template-product .header__icons > .wishlist-hero-header-link .momo-header-label,
  html body.template-product .header__icons > .header__icon--cart .momo-header-label { display: inline-flex !important; align-items: center !important; justify-content: center !important; position: static !important; top: auto !important; margin: 0 !important; }
  html body .header__icons > .wishlist-hero-header-link { order: 3 !important; }
  html body .header__icons > .header__icon--cart { order: 4 !important; }
  html body .header__icons > .desktop-localization-wrapper { order: 1 !important; }
}
@media screen and (max-width: 989px) {
  html body .header__icons > shopify-account.header__icon--account .momo-account-slot-label { display: none !important; }
}

/* Root fix for the right-side utility labels. These controls are rendered by
   a custom account element and pseudo-labels, whose inherited shorthand was
   forcing 13px/14px after earlier size declarations. */
@media screen and (min-width: 990px) {
  body .header__icons .header__icon--account,
  body .header__icons .wishlist-hero-header-link,
  body .header__icons .header__icon--cart { font-family: 'Futura PT', Arial, sans-serif !important; font-size: 16px !important; font-weight: 500 !important; line-height: 1.2 !important; }
  body .header__icons .header__icon--account::after,
  body .header__icons .wishlist-hero-header-link::after,
  body .header__icons .header__icon--cart::after { display: inline !important; margin: 0 !important; font-family: 'Futura PT', Arial, sans-serif !important; font-size: 16px !important; font-weight: 500 !important; line-height: 1.2 !important; letter-spacing: 0 !important; }
}

/* Explicit utility labels avoid relying on Shopify-account shadow/host
   inheritance. The old pseudo labels are disabled once these nodes exist. */
@media screen and (min-width: 990px) {
  body .header__icons .header__icon--account::after,
  body .header__icons .wishlist-hero-header-link::after,
  body .header__icons .header__icon--cart::after { content: none !important; }
  body .header__icons .momo-header-label { display: inline !important; margin: 0 !important; color: currentColor !important; font-family: 'Futura PT', Arial, sans-serif !important; font-size: 16px !important; font-weight: 500 !important; line-height: 1.2 !important; letter-spacing: 0 !important; }
}
@media screen and (max-width: 989px) {
  body .header__icons .momo-header-label { display: none !important; }
}

/* Keep the circled right-side header labels and footer density consistent on
   templates that do not load the non-product stylesheet. */
@media screen and (min-width: 990px) {
  body .header__icons .header__icon--account::after,
  body .header__icons .wishlist-hero-header-link::after,
  body .header__icons .header__icon--cart::after { font-size: 16px !important; font-weight: 500 !important; letter-spacing: 0 !important; }
}
.momo-footer { height: auto !important; min-height: 0 !important; }
.momo-footer__top { height: auto !important; min-height: 34rem !important; padding-top: 8rem !important; padding-bottom: 7.2rem !important; }
.momo-footer__lead h2 { font-size: 4.2rem !important; line-height: 1.08 !important; }
.momo-footer__brand { min-height: 15rem !important; padding-top: 4.8rem !important; padding-bottom: 3.2rem !important; }
.momo-footer__brand-stack > span { font-size: 6.4rem !important; line-height: .85 !important; }
.momo-footer__bottom { display: none !important; }
@media screen and (max-width: 749px) {
  .momo-footer__top { min-height: 0 !important; padding-top: 5.6rem !important; padding-bottom: 4.8rem !important; }
  .momo-footer__brand { min-height: 0 !important; padding-top: 3.6rem !important; padding-bottom: 2.8rem !important; }
  .momo-footer__brand-stack > span { font-size: 4.8rem !important; }
}

/* Final split-hero balance: both desktop panels share the viewport-derived
   height, while each content stack keeps a deliberate heading/button/support
   rhythm. The Liquid fallback restores the editable right-side copy when a
   saved section instance has an empty heading or supporting-text setting. */
@media screen and (min-width: 750px) {
  .template-index .momo-split-hero {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    height: calc(100svh - var(--momo-header)) !important;
    min-height: 0 !important;
  }
  .template-index .momo-split-hero__copy,
  .template-index .momo-split-hero__media {
    height: 100% !important;
    min-height: 0 !important;
  }
  .template-index .momo-split-hero__copy-inner { display: flex; align-items: center; flex-direction: column; justify-content: center; transform: translateY(-42px); }
  .template-index .momo-split-hero__copy-inner h1 { margin: 0; }
  .template-index .momo-split-hero__copy-inner > p:not(.momo-split-hero__eyebrow) { margin: 2.4rem auto 0; }
  .template-index .momo-split-hero__copy-inner .momo-split-hero__button { margin-top: 3.2rem; }
  .template-index .momo-split-hero__overlay { display: flex; align-items: center; flex-direction: column; justify-content: center; }
  .template-index .momo-split-hero__overlay h2 { margin: 0; }
  .template-index .momo-split-hero__overlay .momo-split-hero__button { margin-top: 3.2rem; }
  .template-index .momo-split-hero__overlay p { margin: 2.4rem 0 0; }
}

/* Hero action alignment and editorial display type. The existing Parslay
   asset supplies the script-like heading treatment without adding a font. */
@media screen and (min-width: 750px) {
  .template-index .momo-split-hero__copy { position: relative; }
  .template-index .momo-split-hero__copy-inner { position: static; }
  .template-index .momo-split-hero__overlay { position: absolute; inset: 0; }
  .template-index .momo-split-hero__copy-inner .momo-split-hero__button,
  .template-index .momo-split-hero__overlay .momo-split-hero__button {
    position: absolute;
    top: calc(50% + 50px);
    margin-top: 0;
    transform: none;
  }
  .template-index .momo-split-hero__copy-inner .momo-split-hero__button { top: calc(50% + 92px); }
  .template-index .momo-split-hero__overlay h2 {
    font-family: 'Parslay', var(--font-heading-family), sans-serif !important;
    font-style: normal;
    font-weight: 400;
    line-height: .9;
    transform: translateY(-20px) rotate(-8deg) !important;
  }
}
@media screen and (max-width: 749px) {
  .template-index .momo-split-hero__copy-inner .momo-split-hero__button,
  .template-index .momo-split-hero__overlay .momo-split-hero__button { position: static; transform: none; }
}

/* Storefront wishlist sheet shared by the header and product-card actions. */
.momo-wishlist-count { position: absolute; top: .2rem; right: .2rem; display: grid; min-width: 1.5rem; height: 1.5rem; padding: 0 .2rem; place-items: center; border-radius: 50%; background: rgb(var(--momo-ink)); color: rgb(var(--momo-paper)); font-size: .9rem; line-height: 1; }
.momo-wishlist { position: fixed; z-index: 100; top: 0; right: 0; bottom: 0; left: auto; width: min(100vw, 46rem); max-width: none; height: 100dvh; margin: 0 0 0 auto; padding: 2.4rem; border: 0; background: rgb(var(--momo-paper)); color: rgb(var(--momo-ink)); box-shadow: -1.8rem 0 4rem rgba(0, 0, 0, .12); }
.momo-wishlist::backdrop { background: rgba(var(--momo-ink), .42); }
.momo-wishlist__header { display: flex; align-items: center; justify-content: space-between; padding-bottom: 1.8rem; border-bottom: .1rem solid rgb(var(--momo-line)); }
.momo-wishlist__header h2 { margin: 0; font-size: 2.4rem; }
.momo-wishlist__body { min-height: 24rem; padding-block: 2rem; }
.momo-wishlist__body > p { color: rgb(var(--momo-muted)); }
.momo-wishlist__body ul { display: grid; gap: 1.2rem; margin: 0; padding: 0; }
.momo-wishlist__item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem; align-items: center; list-style: none; border-bottom: .1rem solid rgb(var(--momo-line)); padding-bottom: 1.2rem; }
.momo-wishlist__item a { display: flex; align-items: center; gap: 1.2rem; color: inherit; font-size: 1.4rem; text-decoration: none; }
.momo-wishlist__item img { width: 6.4rem; height: 6.4rem; object-fit: cover; background: rgb(var(--momo-soft)); }
.momo-wishlist__item button { border: 0; background: transparent; color: rgb(var(--momo-muted)); font-size: 1.2rem; text-decoration: underline; cursor: pointer; }
.momo-wishlist > .button { width: 100%; }
@media screen and (max-width: 749px) {
  .momo-wishlist { width: 100vw; padding: 1.6rem; }
}

/* Quick-add desktop geometry and readable delivery copy. */
@media screen and (min-width: 750px) {
  .quick-add-modal__content {
    width: 860px !important;
    min-width: 860px !important;
    max-width: calc(100vw - 48px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100vh - 48px) !important;
  }
  .quick-add-modal__content-info .product-page {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .quick-add-modal__content-info .product-main-column,
  .quick-add-modal__content-info .product-gallery {
    min-height: 100% !important;
  }
  .quick-add-modal__content-info .product-info {
    min-width: 0 !important;
    max-height: calc(100vh - 48px) !important;
    overflow-y: auto !important;
  }
  .quick-add-modal__content-info .delivery-card__summary > p {
    display: block !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
}

/* Final quick-add override: keep the requested wider canvas after all legacy
   modal rules, while allowing the delivery sentence to wrap naturally. */
@media screen and (min-width: 750px) {
  .quick-add-modal__content {
    width: 860px !important;
    min-width: 860px !important;
    max-width: calc(100vw - 48px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100vh - 48px) !important;
  }
  .quick-add-modal__content-info .product-page {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .quick-add-modal__content-info .product-info {
    min-width: 0 !important;
    max-height: calc(100vh - 48px) !important;
    overflow-y: auto !important;
  }
  .quick-add-modal__content-info .delivery-card__summary > p {
    display: block !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
}

/* The account label is rendered by the host element while Shopify's
   signed-out button lives in its shadow tree. Make the public part span the
   complete label area so the icon and both sides of the text share one hitbox. */
shopify-account.header__icon {
  position: relative;
  display: inline-flex !important;
  align-items: center;
}
shopify-account.header__icon::part(signed-out-avatar) {
  width: 100% !important;
  min-width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  cursor: pointer !important;
}
@media screen and (min-width: 990px) {
  .header__icons .header__icon--account {
    width: 6.4rem !important;
    flex: 0 0 6.4rem !important;
  }
}

/* Typography-only pass for the circled header labels. Spacing and geometry
   remain unchanged; only the rendered text size is increased to 16px. */
@media screen and (min-width: 990px) {
  body .header__inline-menu .header__menu-item,
  body .header__inline-menu .header__menu-item span,
  body .header__icons .header__icon--search::after,
  body .header__icons .header__icon--account::after,
  body .header__icons .wishlist-hero-header-link::after,
  body .header__icons .header__icon--cart::after { font-size: 16px !important; }
}

/* Single source of truth for Quick Add geometry. Earlier historical blocks
   remain for compatibility, but these final constraints prevent fixed-width
   overflow and keep both columns independently scrollable. */
@media screen and (min-width: 750px) {
  .quick-add-modal__content {
    width: min(860px, calc(100vw - 48px)) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 48px) !important;
    height: min(660px, calc(100vh - 96px)) !important;
    min-height: 0 !important;
    max-height: calc(100vh - 96px) !important;
  }
  .quick-add-modal__content-info .product-page {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
  }
  .quick-add-modal__content-info .product-main-column,
  .quick-add-modal__content-info .product-info {
    min-width: 0 !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
  }
}
@media screen and (max-width: 749px) {
  .quick-add-modal__content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: min(92vh, 48rem) !important;
    max-height: 92vh !important;
  }
  .quick-add-modal__content-info .product-page { display: block !important; height: auto !important; }
  .quick-add-modal__content-info .product-main-column,
  .quick-add-modal__content-info .product-info { height: auto !important; overflow: visible !important; }
}

/* 44px touch target with a compact visual icon. */
.template-collection #product-grid .quick-add,
.template-collection #product-grid .quick-add__submit {
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
}

/* Keep the count as a compact circular badge anchored to the heart icon. */
.wishlist-hero-header-link { position: relative; }
.wishlist-hero-header-link .momo-wishlist-count {
  top: .2rem;
  right: auto;
  left: 2.4rem;
  width: 1.65rem;
  min-width: 1.65rem;
  height: 1.65rem;
  padding: 0;
  border-radius: 50%;
  aspect-ratio: 1;
  font-size: .9rem;
  line-height: 1;
  text-align: center;
}

/* Header parity: the reference uses a text count (Cart (2)), not a floating
   badge. Keep the existing cart DOM and expose its live Shopify count inline. */
.header__icon--cart .cart-count-bubble,
.header__icon--cart .momo-cart-label {
  position: static !important;
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
}
.header__icon--cart .cart-count-bubble::before { content: 'Cart ('; }
.header__icon--cart .cart-count-bubble::after { content: ')'; }
.header__icon--cart { gap: 0 !important; }
.header__icon--cart:has(.cart-count-bubble)::after { content: none !important; }

/* noo.ma keeps a narrow desktop scrollbar, which changes the usable 1440px canvas. */
html { scrollbar-width: thin; }

html, body { overflow-x: clip; }

/* noo.ma hides the announcement bar on every non-home route. */
body:not(.template-index) .announcement-bar-section { display: none !important; }

@media screen and (min-width: 750px) {
  .template-cart cart-items.is-empty {
    min-height: 46.65rem !important;
  }
  .template-cart cart-items.is-empty > .page-width .cart__warnings {
    min-height: 46.65rem !important;
    padding-top: 18.6rem !important;
    text-align: center;
  }
  .template-cart cart-items.is-empty > .page-width .cart__empty-text {
    display: inline-block;
    width: auto;
  }
  .template-cart cart-items.is-empty > .page-width .cart__login-title { margin-top: 4.06rem !important; }
  .template-cart cart-items.is-empty > .page-width .cart__login-paragraph { margin-top: -.64rem !important; }
  .template-collection .collection-hero {
    height: 13.998rem !important;
    min-height: 13.998rem !important;
  }
  .template-collection .collection-hero__inner {
    height: 5.59896rem !important;
    min-height: 5.59896rem !important;
  }
  .template-collection .collection-hero__description { display: block !important; }
}

html { scroll-padding-top: calc(var(--momo-header) + var(--momo-announcement)); }
html *, html *::before, html *::after { letter-spacing: 0px !important; }
body { color: rgb(var(--momo-ink)); font-size: 1.6rem; line-height: 1.6; letter-spacing: 0; }
body,
.gradient { background: rgb(var(--momo-paper)); }
*:focus-visible { outline: .2rem solid rgb(var(--momo-ink)); outline-offset: .3rem; box-shadow: none; }
.page-width { max-width: 166.4rem; padding-inline: var(--momo-gutter); }
.button,
.shopify-payment-button__button,
.field__input,
.select__select { border-radius: 0; letter-spacing: 0; }
.button { min-height: 5.2rem; font-size: 1.3rem; font-weight: 500; text-transform: uppercase; }
.button::before,
.button::after { border-radius: 0; box-shadow: none; }
.button:hover::after { box-shadow: 0 0 0 .1rem rgba(var(--momo-ink), 1); }
h1,
h2,
h3,
.h0,
.h1,
.h2,
.h3 { letter-spacing: 0; font-weight: 500; }

.utility-bar {
  height: var(--momo-announcement);
  min-height: var(--momo-announcement);
  background: rgb(var(--color-background));
  background-image: var(--gradient-background);
  color: rgb(var(--color-foreground));
  border-bottom: .1rem solid rgba(var(--color-foreground), .2);
}
.utility-bar__grid, .announcement-bar-slider, .announcement-bar-slider .slider { height: 100%; }
.announcement-bar { height: var(--momo-announcement); min-height: var(--momo-announcement); padding: 0 1.6rem; }
.announcement-bar .slider-button { height: var(--momo-announcement); }
.announcement-bar__message { min-height: 0; padding: 0; font-size: 1.2rem; line-height: 2.2rem; letter-spacing: 0; }
.announcement-bar__message > span { display: inline-flex; align-items: center; }
.section-header.shopify-section-group-header-group { z-index: 50; }
.header-wrapper { border-bottom: .1rem solid rgb(var(--momo-line)); }
.header { min-height: var(--momo-header); padding-top: 0; padding-bottom: 0; }
/* Dawn's .page-width padding is useful for content, but would make the compact header taller. */
.header.page-width { padding-block: 0; padding-inline: var(--momo-gutter); }
.header__heading-logo-wrapper img { max-height: 2.8rem; width: auto; }
.header__heading-link { padding: 0; }
.header__heading-link .h2 { font-size: 2.5rem; font-weight: 700; text-transform: none; white-space: nowrap; }
.header__inline-menu { margin-left: 2.4rem; }
.header__menu-item { padding: 2rem 1.2rem; font-size: 1.4rem; letter-spacing: 0; }
.header__menu-item span { text-decoration-thickness: .1rem; text-underline-offset: .5rem; }
.header__icons { gap: .6rem; }
.header__icon { width: 4.2rem; height: 4.2rem; }
.header__icon .svg-wrapper { width: 1.9rem; height: 1.9rem; }
.header__icon--search::after,
.header__icon--account::after,
.wishlist-hero-header-link::after,
.header__icon--cart::after { margin-left: .7rem; font-size: 1.3rem; line-height: 1; white-space: nowrap; }
.header__icon--search::after { content: 'Search'; }
.header__icon--account::after { content: 'Account'; }
.wishlist-hero-header-link::after { content: 'Wishlist'; }
.header__icon--cart::after { content: 'Cart'; }
.header__icon--search,
.header__icon--account,
.wishlist-hero-header-link,
.header__icon--cart { width: auto; min-width: 4.2rem; padding-inline: .8rem; }
.wishlist-hero-header-link {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgb(var(--momo-ink)) !important;
  text-decoration: none !important;
}
.header__icon--search { display: inline-flex; align-items: center; }
.header summary,
.header a,
.header button { text-decoration: none !important; }
.header__icon--search,
.header__icon--search::after { color: rgba(var(--momo-ink), .81); }

@media screen and (min-width: 990px) {
  .header.page-width {
    position: relative;
    display: flex;
    width: 100%;
    max-width: none;
    height: var(--momo-header);
    min-height: var(--momo-header);
    align-items: center;
    padding-inline: 3.2rem;
  }

  .header > header-drawer {
    display: block;
    width: 1.6rem;
    height: 1.6rem;
    flex: 0 0 1.6rem;
    margin: 0 !important;
  }

  .header > header-drawer .header__icon--menu,
  .header > header-drawer .header__icon--summary {
    width: 1.6rem;
    height: 1.6rem;
    min-width: 1.6rem;
    padding: 0;
  }

  .header > .header__heading,
  .header > .header__heading-link {
    width: 9.5rem;
    flex: 0 0 9.5rem;
    margin-left: 1.6rem;
    overflow: hidden;
  }

  .header > .header__heading .header__heading-link { width: 9.5rem; }
  .header__heading-link .h2 { font-size: 1.5rem; line-height: 1.6rem; }
  .header__heading-logo-wrapper img { width: 9.5rem; max-width: 9.5rem; height: 1.6rem; object-fit: contain; object-position: left center; }

  .header__inline-menu {
    height: var(--momo-header);
    margin: 0 0 0 3.2rem;
  }

  .header__inline-menu .list-menu--inline { height: 100%; gap: 1.6rem; align-items: center; }
  .header__inline-menu .header__menu-item { height: 100%; padding: 0; font-size: 1.2rem; }

  .header__icons {
    height: var(--momo-header);
    gap: 1.72rem;
    margin-left: auto;
    padding: 0;
  }

  .header__icons > .header__search {
    position: absolute;
    top: .9rem;
    left: 35.475rem;
    width: 38rem;
    height: 4.4rem;
  }

  .header__icons > .header__search .header__icon--search { width: 38rem; height: 4.4rem; padding: 0 1.2rem; }
  .header__icons .desktop-localization-wrapper { width: 8.22rem; height: 1.92rem; }
  .header__icons .desktop-localization-wrapper localization-form { width: 8.22rem; }
  .header__icons .desktop-localization-wrapper localization-form + localization-form { display: none; }
  .header__icons .desktop-localization-wrapper .localization-form__select { width: 8.22rem; min-width: 8.22rem; height: 1.92rem; padding: 0 1.6rem 0 0; }

  .header__icons .header__icon--account,
  .header__icons .wishlist-hero-header-link,
  .header__icons .header__icon--cart {
    height: 1.92rem;
    min-width: 0;
    padding: 0;
  }

  .header__icons .header__icon--account { width: 4.75rem; flex: 0 0 4.75rem; }
  .header__icons .wishlist-hero-header-link { width: 4.75rem; flex: 0 0 4.75rem; }
  .header__icons .header__icon--cart { width: 2.72rem; flex: 0 0 2.72rem; }
  .header__icons .header__icon--account .svg-wrapper,
  .header__icons .wishlist-hero-header-link .svg-wrapper,
  .header__icons .header__icon--cart .svg-wrapper { display: none; }
}

/* Final category rail lock after all breakpoint cascades. */
.template-index .momo-category-carousel__track {
  touch-action: pan-x !important;
  overscroll-behavior-x: contain;
  overscroll-behavior-y: none;
  scroll-behavior: auto !important;
  overflow-anchor: none !important;
}

.template-index .momo-category-carousel,
.template-index .momo-category-carousel__controls,
.template-index .momo-category-carousel__controls button {
  overflow-anchor: none !important;
}

.template-index .momo-category-carousel__controls button {
  transition: color .18s ease, border-color .18s ease, opacity .18s ease, transform .12s ease;
}

.template-index .momo-category-carousel__controls button:active:not(:disabled) {
  transform: scale(.94);
}
.template-index .momo-category-carousel__controls button:first-child svg { transform: rotate(90deg) !important; }
.template-index .momo-category-carousel__controls button:last-child svg { transform: rotate(-90deg) !important; }

/* System UI pass: shared tokens and stable component boundaries. These rules
   stay in the theme's existing stylesheet so rollback is a single asset
   replacement and no template markup or Shopify data changes are required. */
:root {
  --momo-space-1: .4rem;
  --momo-space-2: .8rem;
  --momo-space-3: 1.2rem;
  --momo-space-4: 1.6rem;
  --momo-space-5: 2.4rem;
  --momo-space-6: 3.2rem;
  --momo-space-7: 4.8rem;
  --momo-space-8: 6.4rem;
  --momo-radius: 0;
  --momo-shadow-soft: 0 1.2rem 3.2rem rgba(30, 28, 26, .08);
}

/* Header: let the search field participate in normal flex sizing. The old
   absolute left offset detached it from the logo/menu widths at intermediate
   desktop sizes and caused avoidable compression. */
@media screen and (min-width: 990px) {
  .header__icons { display: flex; min-width: 0; align-items: center; }
  .header__icons > .header__search {
    position: static;
    flex: 1 1 clamp(16rem, 24vw, 32rem);
    width: auto;
    min-width: 16rem;
    max-width: 32rem;
    height: 4.4rem;
    margin-inline: 0 var(--momo-space-4);
  }
  .header__icons > .header__search .header__icon--search {
    width: 100%;
    height: 4.4rem;
  }
  .header__icons .header__icon--account,
  .header__icons .wishlist-hero-header-link,
  .header__icons .header__icon--cart { flex: 0 0 auto; }
}

@media screen and (max-width: 989px) {
  .header.page-width { padding-inline: var(--momo-space-4); }
  .header__heading-link .h2 { font-size: 1.6rem; line-height: 1.6; }
  .header__icons { gap: var(--momo-space-1); }
}

/* Collection cards: reserve image space before the network response so the
   grid does not jump, while preserving the existing product-card markup. */
#product-grid .card__inner,
.template-index .product-card-wrapper .card__inner {
  aspect-ratio: 4 / 5;
  overflow: hidden;
}
#product-grid .card__inner .media,
.template-index .product-card-wrapper .card__inner .media { height: 100%; }
#product-grid .card__heading { min-height: 4.05rem; }
#product-grid .price { min-height: 2.4rem; }

/* Product purchase area: preserve the real variant form while keeping the
   action group visually adjacent at narrow widths. */
.template-product .product-info { min-width: 0; }
.template-product .product-form__buttons .button,
.template-product .product-form__submit { min-height: 5.2rem; }
.template-product .product-info h1 { font-size: 2.3rem; line-height: 1.1; letter-spacing: 0; }
@media screen and (max-width: 749px) {
  .template-product .product-info { padding-inline: var(--momo-space-4); }
  .template-product .product-form__buttons { position: relative; z-index: 1; }
  .template-product .product-form__submit { width: 100%; }
}

/* Cart drawer: keep the item list as the only scrolling region and keep the
   checkout summary visible, without changing Cart API behavior. */
.cart-drawer .drawer__inner { display: flex; flex-direction: column; }
.cart-drawer .drawer__contents { min-height: 0; overflow-y: auto; }
.cart-drawer .drawer__footer { flex: 0 0 auto; }

@media (prefers-reduced-motion: reduce) {
  .header *,
  .card-wrapper *,
  .cart-drawer *,
  .quick-add-modal * { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

.header__icon--cart .cart-count-bubble {
  top: .2rem;
  bottom: auto;
  left: 2.4rem;
  width: 1.7rem;
  min-width: 1.7rem;
  height: 1.7rem;
  min-height: 1.7rem;
  margin: 0;
  padding: 0;
  border-radius: 50%;
  background: rgb(var(--momo-ink));
  color: rgb(var(--momo-paper));
}
.mega-menu__content,
.header__submenu { border-color: rgb(var(--momo-line)); background: rgb(var(--momo-paper)); box-shadow: 0 1.8rem 3.5rem rgba(0, 0, 0, .08); }
.menu-drawer { width: min(calc(100vw - 7.5rem), 37.8rem); border: 0; background: rgb(var(--momo-paper)); transition: transform .2s, visibility .2s, opacity .2s; }
.menu-drawer__navigation { padding: 2.4rem 3.2rem 0; }
.menu-drawer__menu-item { min-height: 3.88rem; padding: .8rem 0; border: 0; font-size: 1.9rem; line-height: 2.28rem; }
.menu-drawer__menu-item > .svg-wrapper:last-child { display: none; }
.menu-drawer__utility-links { padding: 2.4rem 3.2rem; background: rgb(var(--momo-paper)); }
.menu-drawer__location { display: flex; width: 100%; min-height: 4.8rem; align-items: center; justify-content: space-between; padding: 0; border: 0; border-top: .1rem solid rgb(var(--momo-line)); border-bottom: .1rem solid rgb(var(--momo-line)); background: transparent; color: rgb(var(--momo-ink)); font: inherit; }

.predictive-search { border: 0; background: rgb(var(--momo-paper)); }
.predictive-search__heading { border-color: rgb(var(--momo-line)); color: rgb(var(--momo-muted)); letter-spacing: 0; }
.predictive-search__item { gap: 1.6rem; padding: 1rem; border-bottom: .1rem solid rgb(var(--momo-line)); }
.predictive-search__image { width: 7.2rem; height: 7.2rem; object-fit: cover; background: rgb(var(--momo-soft)); }

.template-index .banner { min-height: min(82rem, calc(100svh - var(--momo-header) - var(--momo-announcement))); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); background: rgb(var(--momo-soft)); }
.template-index .banner::after { display: none; }
.template-index .banner__media { position: relative; grid-column: 2; grid-row: 1; width: 100%; height: 100%; min-height: 56rem; }
.template-index .banner__content { grid-column: 1; grid-row: 1; width: 100%; max-width: none; padding: 8rem 10%; background: rgb(var(--momo-soft)); }
.template-index .banner__box { max-width: 58rem; padding: 0; background: transparent; color: rgb(var(--momo-ink)); text-align: center; }
.template-index .banner__box::after { display: none; }
.template-index .banner__heading { font-size: 4.8rem; line-height: 1.1; }
.template-index .banner__text { margin-top: 1.4rem; color: rgb(var(--momo-muted)); }
.template-index .banner__buttons { margin-top: 2.8rem; }
.collection-list-wrapper,
.featured-collection,
.section-template--padding { padding-block: 8.8rem; }
.title-wrapper-with-link { margin-bottom: 4rem; }
.title-wrapper-with-link .title { font-size: 4rem; line-height: 1.2; }
.collection-list { column-gap: .2rem; row-gap: .2rem; }
.collection-list .card__media { aspect-ratio: 1 / 1.12; }
.collection-list .media { height: 100%; }
.collection-list .card__content { padding: 1.6rem 0; }
.collection-list .card__heading { font-size: 2.2rem; }

.card-wrapper { color: rgb(var(--momo-ink)); }
.product-card-wrapper .card__inner.gradient { transform: none; }
.card--standard > .card__content { padding: 1.6rem 1rem .8rem; }
.card__media .media { background: rgb(var(--momo-soft)); }
.card__media .media { aspect-ratio: 4 / 5; }
.card__media .media img { object-fit: cover; }
.card__heading { font-size: 1.5rem; line-height: 1.35; }
.card-information > *:not(.visually-hidden:first-child) + *:not(.rating):not(.card__information-volume-pricing-note) { margin-top: .4rem; }
.card-information .price { font-size: 1.4rem; letter-spacing: 0; }
.card__badge .badge { border: 0; border-radius: 0; padding: .5rem .8rem; font-size: 1rem; }
.quick-add { margin: 0; position: absolute; right: 1.2rem; bottom: 1.2rem; width: auto; opacity: 0; transform: translateY(.5rem); transition: opacity .18s ease, transform .18s ease; }
.quick-add__submit { min-width: 10.8rem; min-height: 4.2rem; padding: 1rem 1.4rem; background: rgb(var(--momo-paper)); color: rgb(var(--momo-ink)); }
.card-wrapper:hover .quick-add,
.quick-add:focus-within { opacity: 1; transform: none; }
.quick-add-modal__content { width: min(92vw, 108rem); max-height: 90vh; border: 0; border-radius: 0; }
.momo-card-media-controls { position: absolute; z-index: 3; right: .8rem; bottom: .8rem; left: .8rem; display: flex; justify-content: space-between; pointer-events: none; opacity: 0; transition: opacity .2s ease; }
.momo-card-media-controls button { display: grid; width: 3.6rem; height: 3.6rem; place-items: center; padding: 0; border: 0; background: rgba(255, 255, 255, .9); color: rgb(var(--momo-ink)); cursor: pointer; pointer-events: auto; }
.momo-card-media-controls button:disabled { color: rgba(var(--momo-ink), .25); cursor: not-allowed; }
.momo-card-media-controls button:first-child svg { transform: rotate(180deg); }
.card-wrapper:hover .momo-card-media-controls, .momo-card-media-controls:focus-within { opacity: 1; }
[data-momo-card-media] > img { opacity: 0 !important; transform: scale(1.01); transition: opacity .22s ease, transform .3s ease; }
[data-momo-card-media] > img.is-active { opacity: 1 !important; transform: scale(1); }
.momo-card-color-name { min-height: 1.7rem; margin: .3rem 0 0; color: rgb(var(--momo-muted)); font-size: 1.2rem; line-height: 1.4; }

.collection-hero { background: rgb(var(--momo-paper)); }
.collection-hero__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(3rem, 7vw, 10rem); max-width: 166.4rem; padding: 5.6rem var(--momo-gutter) 4.2rem; margin-inline: auto; }
.collection-hero__text-wrapper { min-width: 0; }
.collection-hero__title { margin: 0 0 1.2rem; font-size: 4rem; }
.collection-hero__description { min-width: 0; max-width: 72rem; align-self: center; color: rgb(var(--momo-muted)); font-size: 1.5rem; line-height: 1.55; }
.momo-collection-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) auto; min-height: 5.8rem; align-items: center; border-block: .1rem solid rgb(var(--momo-line)); }
.momo-collection-toolbar .facets-wrapper { min-width: 0; }
.momo-collection-toolbar .facets-wrapper,
.momo-collection-toolbar #main-collection-filters,
.momo-collection-toolbar .facets-container,
.momo-collection-toolbar facet-filters-form,
.momo-collection-toolbar .facets__form { min-height: 5.8rem; height: 5.8rem; }
.momo-collection-toolbar .facets__form { grid-template-columns: minmax(0, 1fr) auto auto; }
.momo-collection-toolbar .product-count { margin-right: 2rem; }
.momo-collection-toolbar .momo-density { margin-left: 2rem; }
.momo-active-facets { display: flex; min-height: 0; flex-wrap: wrap; gap: .8rem; padding: 0 var(--momo-gutter); }
.momo-active-facets:not(:has(facet-remove)) { display: none; }
.momo-active-facets facet-remove { display: inline-flex; }
.momo-active-facets .active-facets__button,
.momo-active-facets .active-facets__button-remove { margin: 1.2rem 0 0; }
.momo-collection-toolbar .active-facets-mobile,
.momo-collection-toolbar .active-facets-desktop { display: none !important; }
.facets-container { min-height: 5.8rem; padding: 0; border: 0; }
.facets__form { margin: 0; min-height: 5.8rem; align-items: center; }
.facets__heading,
.facet-filters__label,
.product-count__text { font-size: 1.3rem; letter-spacing: 0; }
.facets__summary,
.facet-filters__sort { min-height: 5.8rem; padding-block: 1.8rem; font-size: 1.3rem; }
.mobile-facets__inner {
  width: min(100vw, 52.5rem);
  max-width: 52.5rem;
  margin-right: auto;
  margin-left: 0;
  transform: translateX(-100%);
}
.template-collection .mobile-facets { background: rgba(231, 230, 230, .7); }
.mobile-facets__disclosure.menu-opening .mobile-facets__inner,
.mobile-facets__disclosure[open] .mobile-facets__inner { transform: translateX(0) !important; }
.mobile-facets__header { border-color: rgb(var(--momo-line)); }
.template-collection .mobile-facets__header-inner { text-align: left; }
.template-collection .mobile-facets__heading {
  font-size: 1.6rem;
  line-height: 1.9rem;
  text-align: left;
}
.template-collection .mobile-facets__count {
  font-size: 1.1rem;
  line-height: 1.4rem;
}
.template-collection details.menu-opening .mobile-facets__close {
  position: fixed;
  z-index: 101;
  top: 2.4rem;
  right: auto;
  left: calc(min(100vw, 52.5rem) - 5.6rem);
  display: grid;
  width: 2.4rem;
  height: 2.4rem;
  place-items: center;
}
.template-collection details.menu-opening .mobile-facets__close .svg-wrapper {
  width: 1.6rem;
  height: 1.6rem;
}
.mobile-facets__summary { border-bottom: .1rem solid rgb(var(--momo-line)); }
.mobile-facets__details--sort { order: -1; }
.mobile-facets__details--sort .mobile-facets__summary { padding: 2.4rem 0 .5rem; }
.template-collection .mobile-facets__sort { display: block; width: 100%; }
.mobile-facets__sort h3 { margin: 0 0 2.8rem; font-size: 1.4rem; font-weight: 500; }
.momo-sort-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(5, minmax(2.3rem, auto));
  grid-auto-flow: column;
  gap: 1.2rem 2rem;
}
.momo-sort-option { display: flex; min-width: 0; min-height: 2.3rem; align-items: center; gap: .8rem; color: rgb(var(--momo-ink)); font-size: 1.3rem; line-height: 1.35; cursor: pointer; }
.momo-sort-option input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.momo-sort-option > span { display: block; width: 1.6rem; height: 1.6rem; flex: 0 0 1.6rem; border: .1rem solid rgb(var(--momo-ink)); border-radius: 50%; }
.momo-sort-option input:checked + span { border-width: .45rem; }
.momo-sort-option input:focus-visible + span { outline: .2rem solid rgb(var(--momo-ink)); outline-offset: .2rem; }
.mobile-facets__footer { position: sticky; z-index: 2; bottom: 0; display: grid; grid-template-columns: 1fr 1.35fr; gap: 0; padding: 0; border-top: .1rem solid rgb(var(--momo-line)); background: rgb(var(--momo-paper)); }
.mobile-facets__footer > * { min-width: 0; }
.mobile-facets__footer .mobile-facets__clear { display: grid; min-height: 5.6rem; place-items: center; color: rgb(var(--momo-ink)); font-size: 1.2rem; font-weight: 500; text-transform: uppercase; }
.mobile-facets__footer .button { min-height: 5.6rem; margin: 0; }
#product-grid { margin-top: 0; row-gap: 6.4rem; column-gap: .2rem; }

.product { max-width: none; padding-inline: 0; }
.product__media-wrapper { padding-left: 0; }
.product__media-list { gap: .2rem; }
.product__media-item { background: rgb(var(--momo-soft)); }
.product__info-wrapper { padding: 4.4rem 4.2rem 3.2rem; }
.product__title h1 { font-size: 2.3rem; line-height: 1.25; }
.product__info-container > * + * { margin-top: 2rem; }
.product-form__input .form__label { font-size: 1.3rem; }
.product-form__input input[type='radio'] + label { min-height: 4.2rem; border-radius: 0; }
.product-form__buttons { max-width: none; }
.product__accordion { border-color: rgb(var(--momo-line)); }
.product__accordion summary { min-height: 6rem; }
.momo-delivery { margin-top: 2.4rem; padding: 1.8rem 0; border-block: .1rem solid rgb(var(--momo-line)); }
.momo-delivery__heading { display: flex; align-items: center; justify-content: space-between; gap: 1.6rem; }
.momo-delivery__heading label { font-size: 1.3rem; font-weight: 600; }
.momo-delivery__heading img { margin-left: auto; border: .1rem solid rgb(var(--momo-line)); }
.momo-delivery select { max-width: 21rem; border: 0; background: transparent; text-align: right; }
.momo-delivery p { margin: 1.2rem 0 0; color: rgb(var(--momo-muted)); font-size: 1.3rem; line-height: 1.5; }
.momo-product-purchase-reasons { display: grid; gap: .8rem; margin: 0; padding: 1.6rem 0 1.6rem 2rem; border-block: .1rem solid rgb(var(--momo-line)); color: rgb(var(--momo-muted)); font-size: 1.2rem; }
.momo-product-fee-note { margin: 0; padding: 1.4rem; border: .1rem solid rgb(var(--momo-line)); color: rgb(var(--momo-muted)); font-size: 1.2rem; line-height: 1.5; }
.momo-product-service-promises { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: .1rem solid rgb(var(--momo-line)); }
.momo-product-service-promises > a,
.momo-product-service-promises > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .2rem .8rem; min-width: 0; padding: 1.4rem 0; border-bottom: .1rem solid rgb(var(--momo-line)); color: inherit; text-decoration: none; }
.momo-product-service-promises > :nth-child(odd) { padding-right: 1.2rem; }
.momo-product-service-promises > :nth-child(even) { padding-left: 1.2rem; border-left: .1rem solid rgb(var(--momo-line)); }
.momo-product-service-promises strong,
.momo-product-service-promises span:not([aria-hidden]) { grid-column: 1; }
.momo-product-service-promises strong { font-size: 1.25rem; }
.momo-product-service-promises span { color: rgb(var(--momo-muted)); font-size: 1.1rem; }
.momo-product-help { display: flex; align-items: center; justify-content: space-between; gap: 1.6rem; padding: 1.6rem; background: rgb(var(--momo-soft)); color: inherit; text-decoration: none; }
.momo-product-help span:first-child { display: grid; gap: .2rem; }
.momo-product-help small { color: rgb(var(--momo-muted)); }
.momo-product-help i { color: rgb(36, 132, 76); font-style: normal; }
.momo-sticky-buy { position: fixed; z-index: 40; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 2rem; align-items: center; padding: 1.2rem 3.2rem; border-top: .1rem solid rgb(var(--momo-line)); background: rgba(255, 255, 255, .97); transform: translateY(110%); transition: transform .22s ease; }
.momo-sticky-buy.is-visible { transform: none; }
.momo-sticky-buy strong { overflow: hidden; font-size: 1.4rem; text-overflow: ellipsis; white-space: nowrap; }
.momo-sticky-buy .price { font-size: 1.4rem; }
.momo-sticky-buy .button { min-width: 17rem; }

.cart-drawer .drawer__inner { width: min(100vw, 48rem); max-width: none; border: 0; }
.cart-drawer .drawer__inner { width:min(100vw,56rem); background:#fff; color:#222321; }
.cart-drawer .drawer__inner { display:flex; flex-direction:column; }
.cart-drawer .drawer__header { height:6.2rem; min-height:6.2rem; padding:0 3.2rem; border-bottom:1px solid #e3e3e3; }
.cart-drawer .drawer__heading { margin:0; font-size:1.5rem; font-weight:500; }
.cart-drawer .momo-cart-count { color:#1d3c91; font-size:1.2rem; font-weight:400; }
.cart-drawer .drawer__contents { padding:0 3.2rem; }
.cart-drawer cart-drawer-items { flex:0 0 auto; min-height:0; overflow:visible; }
.momo-cart-shipping-note { margin:0 3.2rem; padding:1.5rem 0; border-bottom:1px solid #222321; color:#1d3c91; font-size:1.2rem; }
.momo-cart-recommendations { padding:1.8rem 3.2rem 1.6rem; overflow:hidden; }
.momo-cart-recommendations__header { display:flex; align-items:center; justify-content:space-between; margin-bottom:1.3rem; }
.momo-cart-recommendations__header h3 { margin:0; color:#171717; font-size:1.4rem; font-weight:600; }
.momo-cart-recommendations__header span { color:#171717; font-size:1.2rem; }
.momo-cart-recommendations__rail { display:flex; gap:.4rem; overflow:hidden; }
.momo-cart-recommendation { flex:0 0 calc((100% - 1.2rem)/4); min-width:0; color:#171717; text-decoration:none; }
.momo-cart-recommendation__media { aspect-ratio:1 / 1.12; overflow:hidden; background:#f7f7f5; }
.momo-cart-recommendation__media img { display:block; width:100%; height:100%; object-fit:contain; }
.momo-cart-recommendation strong,.momo-cart-recommendation span { display:block; overflow:hidden; margin-top:.7rem; font-size:1.1rem; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.momo-cart-recommendation span { margin-top:.3rem; color:#8a7777; }
.cart-drawer .cart-items thead { display:none; }
.cart-drawer .cart-item { display:grid; grid-template-columns:10.4rem minmax(0,1fr) auto; gap:1.6rem; padding:1.6rem 0 2rem; border-bottom:1px solid #e3e3e3; }
.cart-drawer .cart-item > td { display:block; width:auto; padding:0; }
.cart-drawer .cart-item__media { grid-column:1; grid-row:1 / span 2; }
.cart-drawer .cart-item__image { display:block; width:10.4rem; height:13.2rem; object-fit:cover; background:#f7f7f5; }
.cart-drawer .cart-item__details { grid-column:2; grid-row:1; }
.cart-drawer .cart-item__name { color:#171717; font-size:1.4rem; font-weight:600; text-decoration:none; }
.cart-drawer .cart-item__details .product-option { margin-top:.5rem; color:#7c7c7c; font-size:1.2rem; }
.cart-drawer .cart-item__totals { grid-column:3; grid-row:1; }
.cart-drawer .cart-item__price-wrapper .price { color:#171717; font-size:1.4rem; }
.cart-drawer .cart-item__quantity { grid-column:2 / span 2; grid-row:2; align-self:end; }
.cart-drawer .quantity { width:8.2rem; min-height:3.2rem; border:1px solid #e1e1e1; }
.cart-drawer cart-remove-button { margin-left:auto; }
.cart-drawer cart-remove-button a { color:#9c8585; font-size:1.2rem; }
.cart-drawer .cart-drawer__footer { padding:0 3.2rem; border-top:0; }
.cart-drawer .totals { display:flex; justify-content:space-between; padding:1.8rem 0 1rem; border-top:1px solid #e3e3e3; }
.cart-drawer .totals__total, .cart-drawer .totals__total-value { margin:0; font-size:1.4rem; }
.cart-drawer .cart__ctas { padding:0 3.2rem 2.4rem; }
.cart-drawer .cart__checkout-button { min-height:4.8rem; border:0; border-radius:0; background:#22201f; color:#fff; font-size:1.3rem; }
.cart-drawer .cart__checkout-button::before, .cart-drawer .cart__checkout-button::after { content:none; }
.template-collection #product-grid .quick-add__submit .momo-card-quick-added { position:absolute; inset:0; display:grid; place-items:center; pointer-events:none; opacity:0; }
.template-collection #product-grid .quick-add__submit[data-momo-added='true'] .momo-card-quick-icon { opacity:0; transform:scale(.7); }
.template-collection #product-grid .quick-add__submit[data-momo-added='true'] .momo-card-quick-added { opacity:1; }
.drawer__header { min-height: 7rem; border-bottom: .1rem solid rgb(var(--momo-line)); }
.drawer__heading { font-size: 2.4rem; }
.cart-item { border-bottom: .1rem solid rgb(var(--momo-line)); }
.totals { border-top: .1rem solid rgb(var(--momo-line)); padding-top: 2rem; }
.footer { border-top: 0; background: rgb(var(--momo-ink)); color: rgb(var(--momo-paper)); }
.footer .gradient { background: transparent; }
.footer__content-top { padding-top: 7.2rem; padding-bottom: 5.6rem; }
.footer-block__heading { color: rgb(var(--momo-paper)); font-size: 1.4rem; }
.footer-block__details-content .list-menu__item--link,
.footer__copyright,
.footer__copyright a { color: rgba(var(--momo-paper), .78); }
.newsletter-form__field-wrapper .field__input { background: transparent; color: rgb(var(--momo-paper)); }

/* MOMO editorial component layer */
.momo-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 3.2rem; }
.momo-section-heading h2 { margin: 0; font-size: 3.6rem; line-height: 1.15; }
.momo-section-heading__eyebrow { margin: 0 0 .8rem; color: rgb(var(--momo-muted)); font-size: 1.2rem; text-transform: uppercase; }
.momo-text-link { display: inline-flex; align-items: center; gap: .8rem; color: rgb(var(--momo-ink)); font-size: 1.3rem; text-decoration: underline; text-underline-offset: .4rem; }
.momo-breadcrumb { display: flex; align-items: center; gap: .8rem; margin-bottom: 1.6rem; color: rgb(var(--momo-muted)); font-size: 1.2rem; }
.momo-breadcrumb a { color: inherit; text-decoration: none; }
.momo-breadcrumb a:hover { color: rgb(var(--momo-ink)); text-decoration: underline; text-underline-offset: .3rem; }
.momo-breadcrumb--product { padding-top: 1.6rem; padding-inline: 0; }
.momo-usp { border-bottom: .1rem solid rgb(var(--momo-line)); background: rgb(var(--momo-paper)); }
.momo-usp__inner { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); min-height: 8.8rem; align-items: stretch; padding-block: 0; }
.momo-usp__item { display: flex; min-width: 0; align-items: center; justify-content: center; gap: 1.2rem; padding: 3.2rem 1.6rem; color: rgb(var(--momo-ink)); text-align: left; text-decoration: none; }
.momo-usp__icon { position: relative; display: inline-grid; width: 1.6rem; height: 1.6rem; flex: 0 0 1.6rem; place-items: center; border: .1rem solid currentColor; border-radius: 50%; color: rgb(var(--momo-ink)); font-size: 0; line-height: 1; }
.momo-usp__icon::after { position: absolute; top: .34rem; left: .48rem; width: .42rem; height: .74rem; border-right: .12rem solid currentColor; border-bottom: .12rem solid currentColor; content: ''; transform: rotate(40deg); }
.momo-usp__copy { display: grid; min-width: 0; color: rgb(var(--momo-ink)); }
.momo-usp__item strong { overflow-wrap: anywhere; font-size: 1.4rem; font-weight: 400; line-height: 1.45; }
.momo-usp__item small { color: rgb(var(--momo-muted)); font-size: 1.1rem; line-height: 1.35; }
.momo-product-tabs { background: rgb(var(--momo-paper)); }
.momo-product-tabs__header { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-bottom: 3.2rem; }
.momo-product-tabs__controls { display: flex; align-items: center; gap: 2rem; }
.momo-product-tabs__tablist { display: flex; gap: 1.6rem; }
.momo-product-tabs__tablist button { padding: .5rem 0; border: 0; border-bottom: .1rem solid transparent; background: transparent; color: rgb(var(--momo-muted)); font: inherit; font-size: 2.8rem; line-height: 1.1; cursor: pointer; }
.momo-product-tabs__tablist button[aria-selected='true'] { border-bottom-color: rgb(var(--momo-ink)); color: rgb(var(--momo-ink)); }
.momo-carousel-buttons { display: flex; gap: .4rem; }
.momo-carousel-buttons button { display: inline-grid; width: 4.2rem; height: 4.2rem; place-items: center; border: .1rem solid rgb(var(--momo-line)); background: transparent; color: rgb(var(--momo-ink)); cursor: pointer; }
.momo-carousel-buttons button:last-child svg { transform: rotate(180deg); }
.momo-product-tabs__rail { display: flex; gap: .2rem; margin: 0; padding: 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.momo-product-tabs__rail::-webkit-scrollbar { display: none; }
.momo-product-tabs__slide { flex: 0 0 calc((100% - .8rem) / 5); min-width: 0; scroll-snap-align: start; list-style: none; }
.momo-product-tabs__panel[hidden] { display: none; }
.momo-product-tabs__panel > .momo-text-link { margin-top: 2.8rem; }
.momo-editorial { background: rgb(var(--momo-soft)); }
.momo-editorial__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .2rem; }
.momo-editorial__item { min-width: 0; background: rgb(var(--momo-paper)); }
.momo-editorial__media { display: block; aspect-ratio: 1.25; overflow: hidden; background: rgb(var(--momo-soft)); }
.momo-editorial__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .22s ease; }
.momo-editorial__item:hover .momo-editorial__media img { transform: scale(1.02); }
.momo-editorial__content { padding: 2.4rem 2.8rem 2.8rem; }
.momo-editorial__content h3 { margin: 0 0 1rem; font-size: 2.4rem; }
.momo-editorial__content .rte { max-width: 48rem; color: rgb(var(--momo-muted)); }
.momo-collection-index { padding-block: 7.2rem; }
.momo-collection-index__list { margin: 0; padding: 0; border-top: .1rem solid rgb(var(--momo-line)); }
.momo-collection-index__list li { list-style: none; border-bottom: .1rem solid rgb(var(--momo-line)); }
.momo-collection-index__list a { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 1.6rem; align-items: center; padding: 1.8rem 0; color: rgb(var(--momo-ink)); font-size: 2rem; text-decoration: none; }
.momo-collection-index__list small { color: rgb(var(--momo-muted)); font-size: 1.2rem; }
.wishlist-hero-custom-button { position: absolute; z-index: 4; top: 1.2rem; right: 1.2rem; }
.momo-card-quick-icon { display: inline-grid; width: 1.8rem; height: 1.8rem; place-items: center; }
.momo-card-quick-icon svg { width: 100%; height: 100%; }
.card-wrapper .quick-add { position: absolute; z-index: 4; right: 1.2rem; bottom: 1.2rem; width: 4rem; margin: 0; opacity: 0; transition: opacity .2s ease; }
.card-wrapper:hover .quick-add, .card-wrapper:focus-within .quick-add { opacity: 1; }
.card-wrapper .quick-add { display: grid; width: 4.8rem; height: 4.8rem; place-items: center; background: #fff; opacity: 1; transform: none; }
.card-wrapper .quick-add__submit { opacity: 0; transform: translateY(calc(100% + 1.6rem)); transition: background-color .3s cubic-bezier(.25,.46,.45,.94), opacity .2s ease-in-out, transform .2s ease-in-out; }
.card-wrapper:hover .quick-add__submit, .card-wrapper:focus-within .quick-add__submit { opacity: 1; transform: translateY(0); }
.card-wrapper .quick-add__submit { position: relative; display: flex; width: 2.4rem; height: 2.4rem; min-width: 2.4rem; min-height: 2.4rem; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 0; background: #1e1c1a; color: #fff; cursor: pointer; overflow: hidden; transition: background-color .3s cubic-bezier(.25,.46,.45,.94); }
.card-wrapper .quick-add__submit:hover:not(:disabled), .card-wrapper .quick-add__submit:focus-visible:not(:disabled) { background: #383935; }
.card-wrapper .quick-add__submit:active:not(:disabled) { background: #383935; }
.card-wrapper .quick-add__submit .momo-card-quick-icon { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; transition: transform .2s cubic-bezier(.25,.46,.45,.94); }
.card-wrapper .quick-add__submit .momo-card-quick-icon svg { width: 1.6rem; height: 1.6rem; }
.card-wrapper .quick-add__submit:hover:not(:disabled) .momo-card-quick-icon, .card-wrapper .quick-add__submit:focus-visible:not(:disabled) .momo-card-quick-icon { transform: rotate(15deg); }
.card-wrapper .quick-add__submit:active:not(:disabled) .momo-card-quick-icon { transform: none; }
.card-wrapper .quick-add__submit .momo-card-quick-added { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; opacity: 0; pointer-events: none; }
.card-wrapper .quick-add__submit[data-added='true'] .momo-card-quick-icon { animation: momo-atc-fade-out .2s ease forwards; }
.card-wrapper .quick-add__submit[data-added='true'] .momo-card-quick-added { opacity: 1; }
.card-wrapper .quick-add__submit .momo-checkmark-burst { width: 1.6rem; height: 1.6rem; opacity: 0; overflow: visible; }
.card-wrapper .quick-add__submit[data-added='true'] .momo-checkmark-burst { opacity: 1; }
.card-wrapper .quick-add__submit .momo-check { opacity: .2; transform: scale(.8); filter: blur(2px); transform-origin: center; }
.card-wrapper .quick-add__submit .momo-line { stroke-dasharray: 1.5,1.5; stroke-dashoffset: -1.5; transform-origin: center; }
.card-wrapper .quick-add__submit[data-added='true'] .momo-check { opacity: 1; transform: scale(1); filter: blur(0); transition: opacity .2s ease, transform .2s ease, filter .2s ease; transition-delay: .065s; }
.card-wrapper .quick-add__submit[data-added='true'] .momo-tick { transform: scale(1); transition: transform .1s ease; transition-delay: .725s; }
.card-wrapper .quick-add__submit[data-added='true'] .momo-ring { opacity: 1; transform: scale(1); transition: opacity .2s ease, transform .2s ease; transition-delay: .665s; }
.card-wrapper .quick-add__submit[data-added='true'] .momo-line { stroke-dashoffset: 0; transition: stroke-dashoffset .32s cubic-bezier(.22,1,.36,1); transition-delay: .665s; }
@keyframes momo-atc-fade-out { from { opacity: 1; transform: translateY(0); } to { opacity: 0; transform: translateY(-100%); } }
/* Quick add follows the reference product chooser: media left, purchase details right. */
.quick-add-modal { background: rgba(20, 18, 16, .34); }
.quick-add-modal__content { top: 50%; left: 50%; width: min(92vw, 92rem); max-height: min(90vh, 70rem); margin: 0; transform: translate(-50%, -50%); background: #fff; box-shadow: 0 1.8rem 5rem rgba(0, 0, 0, .18); overflow: hidden; }
.quick-add-modal__content-info { padding: 0; display: block; overflow-y: auto; }
.quick-add-modal__content-info > product-info { display: block; width: 100%; }
.quick-add-modal__content-info .product { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(32rem, .92fr); gap: 0; }
.quick-add-modal__content-info .product__media-wrapper { width: auto; max-width: none; padding: 0; background: #f5f4f2; }
.quick-add-modal__content-info .product__media-list { margin: 0; }
.quick-add-modal__content-info .product__media-item:not(:first-child) { display: none !important; }
.quick-add-modal__content-info .product__media img { display: block; width: 100%; height: 100%; min-height: 52rem; object-fit: cover; }
.quick-add-modal__content-info .product__info-wrapper { width: auto; max-width: none; padding: 4rem 4.2rem 3.6rem; }
.quick-add-modal__content-info .product__title h1, .quick-add-modal__content-info .product__title > a { display: block; margin: 0 0 1rem; font-size: 2.2rem; line-height: 1.1; }
.quick-add-modal__content-info .product__title > a { pointer-events: none; color: inherit; text-decoration: none; }
.quick-add-modal__content-info .product-page { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(32rem, .92fr); gap: 0; width: 100%; max-width: none; margin: 0; padding: 0; }
.quick-add-modal__content-info .product-gallery { min-width: 0; background: #f5f4f2; }
.quick-add-modal__content-info .product-gallery .gallery-main, .quick-add-modal__content-info .product-gallery [data-gallery-main] { height: 100%; min-height: 52rem; }
.quick-add-modal__content-info .product-gallery img { display: block; width: 100%; height: 100%; min-height: 52rem; object-fit: cover; }
.quick-add-modal__content-info .product-info { min-width: 0; padding: 4rem 4.2rem 3.6rem; }
.quick-add-modal__content-info .product-title-display { margin: 0 0 1rem; font-size: 2.2rem; line-height: 1.1; }
.quick-add-modal__content-info .product-price, .quick-add-modal__content-info .price { margin: 0 0 2rem; font-size: 1.8rem; }
.quick-add-modal__content-info .product-form-wrapper { margin: 0; }
.quick-add-modal__content-info .product-form-wrapper .add-to-cart { width: 100%; min-height: 4.8rem; background: #211f1c; color: #fff; border: 0; }
.quick-add-modal__content-info .product-form-wrapper .add-to-cart:hover { background: #3b3833; }
.quick-add-modal__content-info .product-options, .quick-add-modal__content-info .purchase-row, .quick-add-modal__content-info .delivery-card, .quick-add-modal__content-info .product-description, .quick-add-modal__content-info .product-trust { margin-block: 1.8rem; }
.quick-add-modal__content-info .option-value { min-width: 2.8rem; min-height: 2.8rem; padding: .4rem; border-radius: 0; }
.quick-add-modal__content-info .option-values { display: flex; flex-wrap: wrap; gap: .7rem; }
.quick-add-modal__content-info .option-value--image { display: block; width: 3.2rem; height: 3.2rem; min-width: 3.2rem; min-height: 3.2rem; padding: .2rem; overflow: hidden; }
.quick-add-modal__content-info .option-value--image .option-thumbnail { display: block; width: 100%; height: 100%; object-fit: cover; }
.quick-add-modal__content-info .option-value__label { display: none; }
.quick-add-modal__content-info .product-info > ul { display: none; }
.quick-add-modal__content-info .option-input:checked + .option-value { box-shadow: inset 0 0 0 .15rem #fff, 0 0 0 .15rem #211f1c; }
.quick-add-modal__content-info .stock { margin-top: 1.8rem; color: #338a54; }
.quick-add-modal__content-info .delivery-card { padding: 1.2rem; background: #f5f5f3; }
.quick-add-modal__content-info .product-description { color: #6a6864; line-height: 1.5; }
.quick-add-modal__content-info .price { margin: 0 0 2rem; font-size: 1.8rem; }
.quick-add-modal__content-info .product-form__buttons .product-form__submit { min-height: 4.8rem; background: #211f1c; color: #fff; border: 0; }
.quick-add-modal__content-info .product-form__buttons .product-form__submit:hover { background: #3b3833; }
.quick-add-modal__content-info .product-form__input, .quick-add-modal__content-info .product-form__quantity { margin-block: 1.8rem; }
.quick-add-modal__content-info .product-form__input input[type='radio'] + label { min-width: 2.8rem; min-height: 2.8rem; padding: .4rem; border-radius: 0; }
.quick-add-modal__content-info .product-form__input input[type='radio']:checked + label { box-shadow: inset 0 0 0 .15rem #fff, 0 0 0 .15rem #211f1c; }
.quick-add-modal__toggle { top: 1.8rem; right: 1.8rem; width: 3.6rem; height: 3.6rem; padding: .8rem; border: 0; border-radius: 0; background: transparent; color: #211f1c; }
@media screen and (max-width: 749px) {
  .quick-add-modal__content { width: 100%; max-height: 94vh; bottom: 0; top: auto; transform: translateX(-50%); }
  .quick-add-modal__content-info .product { display: block; }
  .quick-add-modal__content-info .product__media img { min-height: 30rem; max-height: 42vh; }
  .quick-add-modal__content-info .product__info-wrapper { padding: 2.8rem 2rem 2.4rem; }
  .quick-add-modal__content-info .product-page { display: block; }
  .quick-add-modal__content-info .product-gallery, .quick-add-modal__content-info .product-gallery .gallery-main, .quick-add-modal__content-info .product-gallery [data-gallery-main], .quick-add-modal__content-info .product-gallery img { min-height: 30rem; max-height: 42vh; }
  .quick-add-modal__content-info .product-info { padding: 2.8rem 2rem 2.4rem; }
}

/* Quick-add chooser parity: measured noo.ma modal geometry (708 x 560 at 1280px). */
.quick-add-modal__content {
  width: min(90vw, 44.25rem);
  height: min(70vh, 35rem);
  max-height: calc(100vh - 2rem);
  overflow: hidden;
}
.quick-add-modal__content-info {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.quick-add-modal__content-info > product-info,
.quick-add-modal__content-info > .product-page {
  display: block;
  width: 100%;
  height: 100%;
}
.quick-add-modal__content-info .product-page {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}
.quick-add-modal__content-info .product-main-column {
  min-width: 0;
  height: 100%;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}
.quick-add-modal__content-info .product-gallery {
  min-width: 0;
  height: auto;
  background: #f5f4f2;
}
.quick-add-modal__content-info .gallery-thumbs,
.quick-add-modal__content-info .gallery-nav,
.quick-add-modal__content-info .gallery-progress,
.quick-add-modal__content-info .gallery-view-more {
  display: none !important;
}
.quick-add-modal__content-info .gallery-main-clip,
.quick-add-modal__content-info .gallery-main {
  height: auto;
  min-height: 0;
  overflow: visible;
}
.quick-add-modal__content-info .gallery-main {
  display: block;
}
.quick-add-modal__content-info .gallery-main__item {
  display: block !important;
  width: 100%;
  height: auto;
  min-height: 0;
  margin: 0;
}
.quick-add-modal__content-info .gallery-main__item .gallery-zoom-trigger {
  display: block;
  width: 100%;
  height: auto;
  padding: 0;
  border: 0;
}
.quick-add-modal__content-info .gallery-main__item img,
.quick-add-modal__content-info .gallery-main__item video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}
.quick-add-modal__content-info .product-main-column > #product-description {
  display: none;
}
.quick-add-modal__content-info .product-info {
  min-width: 0;
  height: 100%;
  padding: 2rem 1.5rem 1.5rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}
.quick-add-modal__content-info .product-title-display {
  margin: 0 0 .5rem;
  font-size: 1.25rem;
  line-height: 1.2;
}
.quick-add-modal__content-info .product-price,
.quick-add-modal__content-info .price {
  margin: 0 0 1.25rem;
  font-size: 1rem;
  line-height: 1.35;
}
.quick-add-modal__content-info .product-purchase-reasons,
.quick-add-modal__content-info .purchase-row,
.quick-add-modal__content-info .product-buy-now,
.quick-add-modal__content-info .delivery-card,
.quick-add-modal__content-info .product-fee-note {
  display: none !important;
}
.quick-add-modal__content-info .product-option {
  margin: 0 0 1.25rem;
  padding: 0;
  border: 0;
}
.quick-add-modal__content-info .product-option legend {
  margin: 0 0 .5rem;
  font-size: .875rem;
  line-height: 1.35;
}
.quick-add-modal__content-info .product-option:first-of-type .option-values {
  gap: .45rem;
}
.quick-add-modal__content-info .product-option:first-of-type .option-value--image,
.quick-add-modal__content-info .product-option:first-of-type .option-value {
  width: 1.75rem;
  min-width: 1.75rem;
  height: 1.75rem;
  min-height: 1.75rem;
  padding: .1rem;
  border: 0;
}
.quick-add-modal__content-info .product-option:first-of-type .option-swatch,
.quick-add-modal__content-info .product-option:first-of-type .option-thumbnail {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.quick-add-modal__content-info .product-option:first-of-type .option-input:checked + .option-value {
  outline: 1px solid #1e1c1a;
  outline-offset: 2px;
  box-shadow: none;
}
.quick-add-modal__content-info .product-option:not(:first-of-type) .option-values {
  display: block;
}
.quick-add-modal__content-info .product-option:not(:first-of-type) .option-value {
  display: flex;
  width: 100%;
  min-height: 4.125rem;
  align-items: center;
  justify-content: space-between;
  padding: 0 1rem;
  border: 1px solid rgba(30, 28, 26, .15);
}
.quick-add-modal__content-info .product-form-wrapper .add-to-cart,
.quick-add-modal__content-info .product-form__buttons .product-form__submit {
  width: 100%;
  min-height: 3rem;
  margin-top: .25rem;
  background: #1e1c1a;
  color: #fff;
  border: 0;
}
.quick-add-modal__content-info .stock {
  margin: .75rem 0 1.25rem;
  color: #338a54;
  font-size: .8125rem;
}
.quick-add-modal__content-info .product-description-summary {
  margin: 0 0 1.25rem;
  color: #6a6864;
  font-size: .8125rem;
  line-height: 1.45;
}
.quick-add-modal__content-info .product-benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .5rem;
  margin-top: 0;
}
.quick-add-modal__content-info .product-benefit {
  min-width: 0;
  padding: .6rem;
  background: #f5f4f2;
  font-size: .6875rem;
}
.quick-add-modal__toggle {
  z-index: 3;
  top: .75rem;
  right: .75rem;
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
}
@media screen and (max-width: 749px) {
  .quick-add-modal__content {
    width: 100%;
    height: min(92vh, 48rem);
    max-height: 92vh;
  }
  .quick-add-modal__content-info .product-page {
    display: block;
    height: auto;
  }
  .quick-add-modal__content-info .product-main-column,
  .quick-add-modal__content-info .product-info {
    height: auto;
    max-height: none;
    overflow: visible;
  }
  .quick-add-modal__content-info .product-info {
    padding: 1.5rem 1rem 1.25rem;
  }
}

/* Absolute desktop reference size: noo.ma measures 708 x 560 px. */
@media screen and (min-width: 750px) {
  .quick-add-modal__content {
    width: 44.25rem !important;
    min-width: 44.25rem !important;
    max-width: none !important;
    height: 35rem !important;
    min-height: 35rem !important;
    max-height: none !important;
  }
  .quick-add-modal__content-info .product-page {
    grid-template-columns: 22.125rem 22.125rem !important;
  }
}
.momo-card-swatches { position: relative; z-index: 6; display: flex; flex-wrap: wrap; gap: .6rem; margin-top: .8rem; pointer-events: auto; }
.momo-card-swatch { display: inline-grid; width: 1.8rem; height: 1.8rem; place-items: center; padding: .2rem; border: .1rem solid transparent; border-radius: 0; background: transparent; color: rgb(var(--momo-ink)); cursor: pointer; }
.momo-card-swatch__chip { display: block; width: 1.2rem; height: 1.2rem; border: .1rem solid rgba(var(--momo-ink), .12); background: var(--momo-swatch-color); }
.momo-card-swatch.is-active, .momo-card-swatch:focus-visible { border-color: rgb(var(--momo-ink)); outline: .1rem solid rgb(var(--momo-ink)); outline-offset: .1rem; }
.momo-density { display: flex; align-items: stretch; justify-content: flex-end; gap: 0; margin: 0; color: rgb(var(--momo-muted)); }
.momo-density button { position: relative; display: grid; width: 5.2rem; min-width: 5.2rem; min-height: 5.8rem; place-items: center; padding: 0; border: 0; background: rgb(var(--momo-paper)); color: rgb(var(--momo-ink)); cursor: pointer; }
.momo-density button::after { position: absolute; right: .8rem; bottom: 0; left: .8rem; height: .2rem; background: currentColor; content: ''; opacity: 0; transform: scaleX(.4); transition: opacity .18s ease, transform .18s ease; }
.momo-density button:hover::after, .momo-density button:focus-visible::after, .momo-density button[aria-pressed='true']::after { opacity: 1; transform: scaleX(1); }
.momo-density__icon { display: grid; width: 1.6rem; height: 1.6rem; grid-template-columns: 1fr; gap: .3rem; }
.momo-density__icon--4 { grid-template-columns: repeat(2, 1fr); }
.momo-density__icon--5 { grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, 1fr); gap: .3rem; }
.momo-density__icon i { width: auto; height: auto; border: .1rem solid currentColor; }
@media screen and (min-width: 990px) {
  #product-grid.momo-density-enabled { display: grid; grid-template-columns: repeat(var(--momo-columns), minmax(0, 1fr)); }
  #product-grid.momo-density-enabled .grid__item { width: auto !important; max-width: none !important; }
}

@media screen and (min-width: 990px) {
  .product--large:not(.product--no-media) .product__media-wrapper { max-width: 68%; width: 68%; }
  .product--large:not(.product--no-media) .product__info-wrapper { max-width: 32%; width: 32%; }
  .product__media-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.product__media-list .product__media-item { width: 100%; max-width: none; }
}

@media screen and (min-width: 990px) and (max-width: 1199px) {
  .header__inline-menu { margin-left: 1.2rem; }
  .header__menu-item { padding-inline: .4rem; font-size: 1.3rem; }
  .header__icons { gap: 0; padding-right: 0; }
  .js .header-localization:not(.menu-drawer__localization) .localization-form__select {
    padding-inline: .6rem 1.8rem;
  }
  .header-localization:not(.menu-drawer__localization) .localization-form__select > span {
    max-width: 8ch;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

@media screen and (max-width: 989px) {
  :root { --momo-gutter: 2rem; }
  .header { min-height: 6rem; }
  .header__heading-logo-wrapper img { max-height: 2.4rem; }
  .quick-add { opacity: 1; transform: none; }
  .card-wrapper .quick-add__submit { opacity: 1; transform: none; }
  .collection-hero__title { font-size: 3.2rem; }
  .facets-container { padding-inline: var(--momo-gutter); }
  .product__info-wrapper { padding: 3.2rem 2rem; }
}

@media screen and (max-width: 749px) {
  .card-wrapper .quick-add { opacity: 1; }
  .momo-card-media-controls { opacity: 1; }
  :root { --momo-gutter: 1.6rem; }
  .page-width { padding-inline: var(--momo-gutter); }
  .template-index .banner { min-height: auto; display: flex; flex-direction: column; }
  .template-index .banner__media { min-height: 58svh; order: 1; }
  .template-index .banner__content { min-height: 34rem; order: 2; padding: 4.8rem 2.4rem; }
  .template-index .banner__heading { font-size: 3.2rem; }
  .title-wrapper-with-link .title { font-size: 3rem; }
  .collection-list-wrapper,
  .featured-collection { padding-block: 5.6rem; }
  .collection-hero__inner { display: block; padding: 3.2rem 1.6rem 2.8rem; }
  .collection-hero__description { margin-top: 2.4rem; }
  #product-grid { margin-top: 2.8rem; row-gap: 4rem; }
  .card--standard > .card__content { padding-inline: .4rem; }
  .quick-add { position: static; margin-top: 1rem; }
  .quick-add__submit { width: 100%; }
  .product__media-list { gap: 0; scroll-snap-type: x mandatory; }
  .product__media-item { scroll-snap-align: start; }
  .product__title h1 { font-size: 2.3rem; }
  .momo-section-heading { align-items: flex-start; flex-direction: column; margin-bottom: 2.4rem; }
  .momo-section-heading h2 { font-size: 3rem; }
  .momo-usp__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .momo-usp__item { min-height: 7.2rem; justify-content: flex-start; padding: 1.6rem 1.2rem; border-bottom: .1rem solid rgb(var(--momo-line)); }
  .momo-usp__item:nth-child(2n) { border-right: 0; }
  .momo-usp__item:last-child:nth-child(odd) { grid-column: 1 / -1; justify-content: center; border-right: 0; }
  .momo-usp__item strong { font-size: 1.2rem; }
  .momo-product-tabs__controls { width: 100%; align-items: flex-end; justify-content: space-between; }
  .momo-product-tabs__slide { flex-basis: calc((100% - .8rem) / 2); }
  .momo-editorial__grid { grid-template-columns: 1fr; }
  .momo-editorial__content { padding: 2rem 1.6rem 2.4rem; }
  .momo-editorial__content h3 { font-size: 2.2rem; }
  .momo-collection-index { padding-block: 5.6rem; }
  .momo-collection-index__list a { font-size: 1.7rem; }
  .momo-wishlist { width: 100vw; padding: 1.6rem; }
  .momo-sticky-buy { grid-template-columns: minmax(0, 1fr) auto; gap: 1rem; padding: 1rem 1.6rem; }
  .momo-sticky-buy strong { display: none; }
  .momo-sticky-buy .button { min-width: 16rem; }
  .footer__content-top { padding-top: 5.2rem; }
}

/* Product card final geometry: keep the information rail inside the
   horizontal carousel viewport instead of clipping swatches below the image. */
@media screen and (min-width: 750px) {
  .template-index .momo-product-tabs__rail {
    height: auto !important;
    min-height: 0 !important;
    align-items: flex-start;
  }
  .template-index .momo-product-tabs__slide {
    height: auto !important;
    align-self: flex-start;
  }
}

/* noo.ma's desktop header search occupies the wide typing-trigger slot. */
@media screen and (min-width: 990px) {
  .header__icons { display: flex !important; align-items: center; justify-content: flex-end; min-width: 0; gap: var(--momo-space-2, 12px) !important; }
  .header__icons > .header__search { order: 1; position: static !important; inset: auto !important; left: auto !important; transform: none !important; }
  .header__icons > .header__icon--account { order: 2; }
  .header__icons > .wishlist-hero-header-link { order: 3; }
  .header__icons > .header__icon--cart { order: 4; }
  .header__icons > .desktop-localization-wrapper { order: 5; margin: 0 !important; transform: none !important; }
  .header__icons > :not(.header__search):not(.header__icon--account):not(.wishlist-hero-header-link):not(.header__icon--cart):not(.desktop-localization-wrapper) { order: 6; }
  .header__icons > .header__search {
    left: auto !important;
    width: auto !important;
    min-width: 16rem !important;
    max-width: 32rem !important;
    margin: 0 var(--momo-space-4) 0 0 !important;
    position: static !important;
    inset: auto !important;
    flex: 1 1 clamp(16rem, 24vw, 32rem) !important;
  }
  .header__icons > .header__search .header__icon--search {
    width: 100% !important;
    padding: 0 1.2rem !important;
    justify-content: flex-start;
    gap: 8px;
  }
  .header__icons > .header__search .header__icon--search::after {
    margin-left: 0;
    content: 'Search';
    color: currentColor;
    font-size: 14px;
    line-height: 1;
  }
}

/* Final footer and announcement values. */
body.template-index .momo-announcement__message { gap: 12px !important; }
body.template-index .momo-announcement__rule { display: inline-block !important; width: 1px !important; height: 10px !important; background: currentColor !important; }
body.template-index .announcement-bar__link { text-decoration: none !important; }
body.template-index .momo-announcement__cta { display: inline-flex; align-items: center; text-decoration: underline; text-underline-offset: 3px; }
body.template-index .momo-footer__menu summary { font-size: 1.8rem !important; }
body.template-index .momo-footer__menu a { font-size: 1.7rem !important; }
body.template-index .momo-footer__brand { height: auto !important; min-height: 0 !important; padding-block: 3.2rem 4rem !important; }
body.template-index .momo-footer__brand-stack > span { font-size: 9rem !important; }
body.template-index .momo-footer__brand-stack .momo-footer__payment { margin-top: 2.8rem !important; }
body.template-index .momo-footer { height: auto !important; min-height: 0 !important; }

/* Final cascade for the announcement/header relationship and footer type. */
body.template-index .section-header { top: 32px !important; transition: top .2s ease-in-out; }
body.template-index.momo-announcement-hidden .section-header { top: 0 !important; }
body.template-index .momo-footer__menu summary { font-size: 1.8rem !important; }
body.template-index .momo-footer__menu a { font-size: 1.7rem !important; }
body.template-index .momo-footer__brand-tagline { font-size: 1.1rem !important; }
body.template-index .momo-footer__bottom { display: none !important; }

/* EOF hero geometry boundary. */
@media screen and (min-width: 750px) {
  .template-index .momo-split-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; height: calc(100svh - var(--momo-header)) !important; min-height: 0 !important; }
  .template-index .momo-split-hero__copy,
  .template-index .momo-split-hero__media { height: 100% !important; min-height: 0 !important; }
  .template-index .momo-split-hero__copy { position: relative; }
  .template-index .momo-split-hero__copy-inner { position: static; }
  .template-index .momo-split-hero__copy-inner { display: flex; align-items: center; flex-direction: column; justify-content: center; }
  .template-index .momo-split-hero__copy-inner h1,
  .template-index .momo-split-hero__overlay h2 { margin: 0; }
  .template-index .momo-split-hero__copy-inner > p:not(.momo-split-hero__eyebrow) { margin: 2.4rem auto 0; }
  .template-index .momo-split-hero__copy-inner .momo-split-hero__button,
  .template-index .momo-split-hero__overlay .momo-split-hero__button { margin-top: 3.2rem; }
  .template-index .momo-split-hero__overlay { position: absolute; inset: 0; display: flex; align-items: center; flex-direction: column; justify-content: center; }
  .template-index .momo-split-hero__overlay p { margin: 2.4rem 0 0; }
}

/* Final split-hero balance. */
@media screen and (min-width: 750px) {
  .template-index .momo-split-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; height: calc(100svh - var(--momo-header)) !important; min-height: 0 !important; }
  .template-index .momo-split-hero__copy,
  .template-index .momo-split-hero__media { height: 100% !important; min-height: 0 !important; }
  .template-index .momo-split-hero__copy-inner { display: flex; align-items: center; flex-direction: column; justify-content: center; }
  .template-index .momo-split-hero__copy-inner h1,
  .template-index .momo-split-hero__overlay h2 { margin: 0; }
  .template-index .momo-split-hero__copy-inner > p:not(.momo-split-hero__eyebrow) { margin: 2.4rem auto 0; }
  .template-index .momo-split-hero__copy-inner .momo-split-hero__button,
  .template-index .momo-split-hero__overlay .momo-split-hero__button { margin-top: 3.2rem; }
  .template-index .momo-split-hero__overlay { display: flex; align-items: center; flex-direction: column; justify-content: center; }
  .template-index .momo-split-hero__overlay p { margin: 2.4rem 0 0; }
}

/* Final Header ordering boundary. */
@media screen and (min-width: 990px) {
  .header__icons { display: flex !important; align-items: center; justify-content: flex-end; min-width: 0; gap: var(--momo-space-2, 12px) !important; }
  .header__icons > .header__search { order: 1; position: static !important; inset: auto !important; left: auto !important; transform: none !important; }
  .header__icons > .header__icon--account { order: 2; }
  .header__icons > .wishlist-hero-header-link { order: 3; }
  .header__icons > .header__icon--cart { order: 4; }
  .header__icons > .desktop-localization-wrapper { order: 5; margin: 0 !important; transform: none !important; }
  .header__icons > :not(.header__search):not(.header__icon--account):not(.wishlist-hero-header-link):not(.header__icon--cart):not(.desktop-localization-wrapper) { order: 6; }
}
@media screen and (max-width: 989px) {
  .header__icons > .header__search { position: static !important; inset: auto !important; left: auto !important; transform: none !important; }
  .header__icons > .desktop-localization-wrapper { display: none !important; }
}

/* Noo.ma-inspired desktop rhythm: the search field follows the primary
   navigation, while account, wishlist, cart and locale stay grouped at the
   far edge. This uses the header grid instead of positional offsets. */
@media screen and (min-width: 990px) {
  .header {
    grid-template-columns: 42px auto auto minmax(16rem, 1fr) auto !important;
    grid-template-areas: 'left-icons heading navigation search icons' !important;
    column-gap: 0 !important;
  }
  .header > .header__inline-menu { grid-area: navigation !important; width: auto; }
  .header > .header__search { grid-area: search !important; display: flex !important; align-items: center; justify-self: start; width: min(22rem, 100%); min-width: 16rem; margin-left: 2.4rem; }
  .header > .header__search .header__icon--search { width: 100% !important; justify-content: flex-start; gap: .8rem; }
  .header > .header__search .header__icon--search::after { content: 'Search'; margin-left: 0; font-size: 1.4rem; line-height: 1; }
  .header > .header__icons { grid-area: icons !important; width: auto; }
  .header > .header__icons > .header__search { display: none !important; }
}
@media screen and (max-width: 989px) {
  .header { grid-template-columns: 42px minmax(0, 1fr) 4.4rem 4.4rem !important; grid-template-areas: 'left-icons heading search icons' !important; column-gap: 0 !important; }
  .header > .header__search { grid-area: search !important; justify-self: end; width: 4.4rem; min-width: 4.4rem; margin: 0; }
  .header > .header__search .header__icon--search { width: 4.4rem !important; }
  .header > .header__icons { grid-area: icons !important; min-width: 4.4rem; }
  .header > .header__icons > .header__icon--account,
  .header > .header__icons > .wishlist-hero-header-link,
  .header > .header__icons > .desktop-localization-wrapper,
  .header > .header__icons > :not(.header__icon--cart) { display: none !important; }
  .header > .header__icons > .header__icon--cart { display: inline-flex !important; }
}

/* Final Header balance: equal visual weight, one type treatment, and the
   locale switcher leading the right-side utility group like the reference. */
@media screen and (min-width: 990px) {
  .header {
    display: flex !important;
    align-items: center;
    min-height: 6.1rem;
    gap: 0 !important;
  }
  .header > header-drawer { flex: 0 0 4.2rem; }
  .header > .header__heading { flex: 0 0 auto; }
  .header > .header__inline-menu { flex: 0 1 auto; margin-left: 2.4rem !important; }
  .header > .header__search { flex: 0 0 18rem; width: 18rem; min-width: 18rem; margin: 0 0 0 2.4rem !important; }
  .header > .header__icons { display: flex !important; flex: 0 0 40rem; width: 40rem; align-items: center; justify-content: space-between; gap: 0 !important; margin-left: auto; min-width: 0; }
  .header > .header__icons .header__icon--account,
  .header > .header__icons .wishlist-hero-header-link,
  .header > .header__icons .header__icon--cart { transform: none !important; }
  .header > .header__icons > .desktop-localization-wrapper { order: 1; width: 10rem; min-width: 10rem; margin: 0 !important; transform: none !important; }
  .header > .header__icons > .header__icon--account { order: 2; width: 8rem; min-width: 8rem; justify-content: center; }
  .header > .header__icons > .wishlist-hero-header-link { order: 3; width: 8rem; min-width: 8rem; justify-content: center; }
  .header > .header__icons > .header__icon--cart { order: 4; width: 7rem; min-width: 7rem; justify-content: center; }
  .header > .header__icons > :not(.desktop-localization-wrapper):not(.header__icon--account):not(.wishlist-hero-header-link):not(.header__icon--cart) { order: 5; }
  .header > .header__search .header__icon--search,
  .header > .header__icons .header__icon--account,
  .header > .header__icons .wishlist-hero-header-link,
  .header > .header__icons .header__icon--cart,
  .header > .header__icons .localization-form__select,
  .header > .header__icons .localization-form__select > span,
  .header > .header__icons .momo-localization-trigger {
    font-family: var(--font-body-family) !important;
    font-size: 1.3rem !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
  }
  .header > .header__search .header__icon--search::after,
  .header > .header__icons .header__icon--account::after,
  .header > .header__icons .wishlist-hero-header-link::after,
  .header > .header__icons .header__icon--cart::after { font-size: 1.3rem !important; font-weight: 400 !important; }
  .header > .header__heading-link,
  .header > .header__inline-menu .header__menu-item,
  .header > .header__search .header__icon--search,
  .header > .header__icons .header__icon--account,
  .header > .header__icons .wishlist-hero-header-link,
  .header > .header__icons .header__icon--cart,
  .header > .header__icons .desktop-localization-wrapper,
  .header > .header__icons .desktop-localization-wrapper * {
    font-family: var(--font-body-family) !important;
    font-size: 1.4rem !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
  }
}

/* Header information architecture: brand and primary navigation lead, then
   search, account, wishlist, cart, locale and optional app actions. */
@media screen and (min-width: 990px) {
  .header__icons { display: flex !important; align-items: center; justify-content: flex-end; min-width: 0; gap: var(--momo-space-2, 12px) !important; }
  .header__icons > .header__search { order: 1; position: static !important; inset: auto !important; transform: none !important; }
  .header__icons > .header__icon--account { order: 2; }
  .header__icons > .wishlist-hero-header-link { order: 3; }
  .header__icons > .header__icon--cart { order: 4; }
  .header__icons > .desktop-localization-wrapper { order: 5; margin: 0 !important; transform: none !important; }
  .header__icons > :not(.header__search):not(.header__icon--account):not(.wishlist-hero-header-link):not(.header__icon--cart):not(.desktop-localization-wrapper) { order: 6; }
}
@media screen and (max-width: 989px) {
  .header__icons > .header__search { position: static !important; inset: auto !important; transform: none !important; }
  .header__icons > .desktop-localization-wrapper { display: none !important; }
}

/* Absolute EOF boundary: legacy header locks above are superseded by the
   flex-based search layout and must not reintroduce a runtime offset. */
@media screen and (min-width: 990px) {
  .header__icons > .header__search {
    position: static !important;
    inset: auto !important;
    flex: 1 1 clamp(16rem, 24vw, 32rem) !important;
    width: auto !important;
    min-width: 16rem !important;
    max-width: 32rem !important;
    margin: 0 var(--momo-space-4) 0 0 !important;
  }
  .header__icons > .header__search .header__icon--search {
    width: 100% !important;
    padding: 0 1.2rem !important;
  }
}

/* Hero media focus pass: keep the overlay legible and crop the pale window
   strip from the media edge without changing the source asset. */
.template-index .momo-split-hero__media > img {
  object-position: 70% center !important;
}
.template-index .momo-split-hero__overlay h2 {
  color: #fff !important;
}

/* The live Hero uses a portrait video. Contain mode creates side letterbox
   bands; cover fills the panel and lets the focal point control the crop. */
.template-index .momo-split-hero__media > video.momo-split-hero__video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 70% center !important;
}

/* Final system-ui-v1 cascade boundary. */
@media screen and (min-width: 990px) {
  .header__icons > .header__search {
    position: static !important;
    left: auto !important;
    flex: 1 1 clamp(16rem, 24vw, 32rem) !important;
    width: auto !important;
    min-width: 16rem !important;
    max-width: 32rem !important;
    margin: 0 var(--momo-space-4) 0 0 !important;
  }
  .header__icons > .header__search .header__icon--search {
    width: 100% !important;
    padding: 0 1.2rem !important;
  }
}

#product-grid .card__inner,
.template-index .product-card-wrapper .card__inner { aspect-ratio: 4 / 5; overflow: hidden; }
#product-grid .card__inner .media,
.template-index .product-card-wrapper .card__inner .media { height: 100%; }
#product-grid .card__heading { min-height: 4.05rem; }
#product-grid .price { min-height: 2.4rem; }

@media screen and (max-width: 749px) {
  .header.page-width { padding-inline: var(--momo-space-4); }
  .header__heading-link .h2 { font-size: 1.6rem; line-height: 1.6; }
  .header__icons { gap: var(--momo-space-1); }
  .template-product .product-info { padding-inline: var(--momo-space-4); }
  .template-product .product-form__submit { width: 100%; min-height: 5.2rem; }
}

.cart-drawer .drawer__inner { display: flex; flex-direction: column; }
.cart-drawer .drawer__contents { min-height: 0; overflow-y: auto; }
.cart-drawer .drawer__footer { flex: 0 0 auto; }

@media (prefers-reduced-motion: reduce) {
  .header *, .card-wrapper *, .cart-drawer *, .quick-add-modal * {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Final cascade boundary: Quick Add must remain fluid after legacy overrides. */
@media screen and (min-width: 750px) {
  .quick-add-modal__content {
    width: min(860px, calc(100vw - 48px)) !important;
    min-width: 0 !important;
    max-width: calc(100vw - 48px) !important;
    height: min(660px, calc(100vh - 96px)) !important;
    min-height: 0 !important;
    max-height: calc(100vh - 96px) !important;
  }
  .quick-add-modal__content-info .product-page {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
  }
  .quick-add-modal__content-info .product-main-column,
  .quick-add-modal__content-info .product-info {
    min-width: 0 !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
  }
}
@media screen and (max-width: 749px) {
  .quick-add-modal__content {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: min(92vh, 48rem) !important;
    max-height: 92vh !important;
  }
  .quick-add-modal__content-info .product-page { display: block !important; height: auto !important; }
  .quick-add-modal__content-info .product-main-column,
  .quick-add-modal__content-info .product-info { height: auto !important; overflow: visible !important; }
}
.template-collection #product-grid .quick-add,
.template-collection #product-grid .quick-add__submit {
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
}

@media screen and (min-width: 990px) {
  .quick-add-modal__content { width: 860px !important; min-width: 860px !important; max-width: 860px !important; }
  .quick-add-modal__content-info .product-page { grid-template-columns: 430px 430px !important; }
}
@media screen and (min-width: 750px) and (max-width: 989px) {
  .quick-add-modal__content { width: calc(100vw - 32px) !important; min-width: 0 !important; max-width: calc(100vw - 32px) !important; }
  .quick-add-modal__content-info .product-page { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; }
}
.quick-add-modal__content-info .delivery-card__summary > p {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
}

/* FINAL EOF quick-add width and delivery text rules. */
@media screen and (min-width: 990px) {
  .quick-add-modal__content { width: 860px !important; min-width: 860px !important; max-width: 860px !important; }
  .quick-add-modal__content-info .product-page { grid-template-columns: 430px 430px !important; }
}
@media screen and (min-width: 750px) and (max-width: 989px) {
  .quick-add-modal__content { width: calc(100vw - 32px) !important; min-width: 0 !important; max-width: calc(100vw - 32px) !important; }
  .quick-add-modal__content-info .product-page { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; }
}
.quick-add-modal__content-info .delivery-card__summary > p {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
}

/* AUTHORITATIVE EOF quick-add geometry. */
@media screen and (min-width: 750px) {
  .quick-add-modal__content {
    width: 860px !important;
    min-width: 860px !important;
    max-width: calc(100vw - 48px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100vh - 48px) !important;
  }
  .quick-add-modal__content-info .product-page {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .quick-add-modal__content-info .product-info {
    min-width: 0 !important;
    max-height: calc(100vh - 48px) !important;
    overflow-y: auto !important;
  }
  .quick-add-modal__content-info .delivery-card__summary > p {
    display: block !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
}

/* Final viewport-specific width: do not let the legacy 708px chooser win. */
@media screen and (min-width: 990px) {
  .quick-add-modal__content { width: 860px !important; min-width: 860px !important; max-width: 860px !important; }
  .quick-add-modal__content-info .product-page { grid-template-columns: 430px 430px !important; }
}
@media screen and (min-width: 750px) and (max-width: 989px) {
  .quick-add-modal__content { width: calc(100vw - 32px) !important; min-width: 0 !important; max-width: calc(100vw - 32px) !important; }
  .quick-add-modal__content-info .product-page { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; }
}

/* Final cascade lock for the quick-add chooser. */
.quick-add-modal__content {
  width: min(90vw, 44.25rem) !important;
  height: min(70vh, 35rem) !important;
  max-height: calc(100vh - 2rem) !important;
  overflow: hidden !important;
}
.quick-add-modal__content-info {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  overflow: hidden !important;
}
.quick-add-modal__content-info .product-page {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}
.quick-add-modal__content-info .product-main-column,
.quick-add-modal__content-info .product-info {
  height: 100% !important;
  max-height: none !important;
}
.quick-add-modal__content-info .product-main-column {
  overflow: hidden !important;
}
.quick-add-modal__content-info .product-gallery {
  height: 100% !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
}
.quick-add-modal__content-info .product-info {
  overflow-y: auto !important;
  overscroll-behavior: contain;
}
.momo-modal-delivery {
  display: none;
}
.quick-add-modal__content-info .momo-modal-delivery {
  display: flex;
  align-items: flex-start;
  gap: .5rem;
  margin: .75rem 0 1.25rem;
  font-size: .8125rem;
  line-height: 1.35;
}
.quick-add-modal__content-info .momo-modal-delivery__dot {
  width: .45rem;
  height: .45rem;
  flex: 0 0 .45rem;
  margin-top: .3rem;
  border-radius: 50%;
  background: #338a54;
}
.quick-add-modal__content-info .momo-modal-delivery__content {
  display: grid;
  gap: .2rem;
}
.quick-add-modal__content-info .momo-modal-delivery__secondary {
  color: #6a6864;
}
.quick-add-modal__content-info .product-benefits,
.quick-add-modal__content-info .dev-usp-bar {
  display: none !important;
}
.quick-add-modal__content-info .momo-modal-delivery {
  display: none !important;
}
.quick-add-modal__content-info .delivery-card {
  display: block !important;
  margin: .75rem 0 1rem !important;
  padding: 0 0 1rem !important;
  border: 0;
  border-bottom: 1px solid rgba(30, 28, 26, .15);
  background: transparent !important;
}
.quick-add-modal__content-info .delivery-card__summary {
  padding: 0 !important;
  background: transparent !important;
}
.quick-add-modal__content-info .delivery-card__heading {
  display: flex;
  min-height: 2.5rem;
  align-items: center;
  gap: .5rem;
}
.quick-add-modal__content-info .delivery-card__heading label {
  margin-right: .15rem;
  font-size: .8125rem;
  white-space: nowrap;
}
.quick-add-modal__content-info .delivery-card__heading select {
  width: 10.5rem;
  height: 2.25rem;
  padding: 0 .6rem;
  border: 1px solid #1e1c1a;
  border-radius: 0;
  background: #fff;
  font-size: .875rem;
}
.quick-add-modal__content-info .delivery-card__summary > p {
  margin: .35rem 0 .75rem;
  color: #6a6864;
  font-size: .75rem;
  line-height: 1.4;
}
.quick-add-modal__content-info .delivery-card__details {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0;
  color: #1e1c1a;
  font-size: .8125rem;
  text-decoration: none;
}
.quick-add-modal__content-info .delivery-timeline {
  display: none !important;
}
.quick-add-modal__content-info .product-description-summary {
  max-height: 7rem;
  margin: .75rem 0 0;
  overflow: hidden;
  color: #6a6864;
  font-size: .75rem;
  line-height: 1.45;
}
.quick-add-modal__content-info .product-info {
  overflow: hidden !important;
}
/* Match the reference fixed desktop canvas; shrink only when the viewport is smaller. */
.quick-add-modal__content {
  width: 920px !important;
  min-width: 920px !important;
  max-width: none !important;
  height: 728px !important;
  min-height: 728px !important;
  max-height: none !important;
}
.quick-add-modal__content-info .product-page {
  grid-template-columns: 460px 460px !important;
}
.quick-add-modal__content-info .product-info {
  padding: 31px !important;
  overflow: hidden !important;
}
.quick-add-modal__content-info .product-accordions {
  display: none !important;
}
.quick-add-modal__content-info .product-title-display {
  font-size: 20px !important;
  line-height: 1.2 !important;
}
.quick-add-modal__content-info .product-price,
.quick-add-modal__content-info .price {
  font-size: 16px !important;
}
/* Final target geometry and right-column composition. */
.quick-add-modal__content {
  width: 860px !important;
  min-width: 860px !important;
  height: 700px !important;
  min-height: 700px !important;
}
.quick-add-modal__content-info .product-page {
  grid-template-columns: 430px 430px !important;
}
.quick-add-modal__content-info .product-info {
  display: flex !important;
  flex-direction: column;
  gap: 0;
  padding: 28px 24px 22px !important;
  overflow: hidden !important;
}
.quick-add-modal__content-info .product-title-display {
  margin-bottom: 6px !important;
  font-size: 20px !important;
}
.quick-add-modal__content-info .product-price,
.quick-add-modal__content-info .price {
  margin-bottom: 16px !important;
  font-size: 16px !important;
}
.quick-add-modal__content-info .product-option {
  margin-bottom: 16px !important;
}
.quick-add-modal__content-info .product-form-wrapper {
  margin-top: 2px !important;
}
.quick-add-modal__content-info .product-form-wrapper .add-to-cart,
.quick-add-modal__content-info .product-form__buttons .product-form__submit {
  min-height: 49px !important;
  font-size: 14px !important;
}
.quick-add-modal__content-info .delivery-card {
  display: block !important;
  margin: 16px 0 20px !important;
  padding: 0 0 16px !important;
  border: 0;
  border-bottom: 1px solid rgba(30, 28, 26, .15);
  background: transparent !important;
}
.quick-add-modal__content-info .momo-modal-delivery {
  display: none !important;
}
.quick-add-modal__content-info .product-description-summary {
  display: -webkit-box;
  flex: 1 1 auto;
  max-height: none !important;
  min-height: 120px;
  margin: 0 0 20px !important;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  font-size: 16px !important;
  line-height: 1.55 !important;
}
.quick-add-modal__content-info .product-benefits {
  display: flex !important;
  flex-wrap: nowrap;
  gap: 8px;
  width: 100%;
  margin-top: auto !important;
  overflow: hidden;
}
.quick-add-modal__content-info .product-benefit {
  flex: 0 0 auto;
  padding: 7px 9px !important;
  background: #f2f2f2 !important;
  font-size: 12px !important;
  white-space: nowrap;
}
.quick-add-modal__content-info .product-benefit__icon {
  display: none !important;
}
.quick-add-modal__content-info .product-benefits {
  align-items: stretch;
  min-height: 34px;
  margin-top: auto !important;
  padding-top: 16px;
}
/* Final noo.ma-style right-column composition. */
.quick-add-modal__content-info .product-accordions {
  display: none !important;
}
.quick-add-modal__content-info .product-info {
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: 100% !important;
  overflow-y: auto !important;
}
.quick-add-modal__content-info .product-form-wrapper {
  flex: 0 0 auto;
}
.quick-add-modal__content-info .stock {
  flex: 0 0 auto;
}
.quick-add-modal__content-info .delivery-card {
  display: flex !important;
  flex: 0 0 auto !important;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 0;
  margin-bottom: 0 !important;
}
.quick-add-modal__content-info .delivery-card__summary,
.quick-add-modal__content-info .delivery-card__details {
  flex: 0 0 auto;
}

/* Reference chooser layout: compact 708 x 560 canvas. Components remain
   unchanged; this block only restores their visual order and sizing. */
@media screen and (min-width: 750px) {
  .quick-add-modal__content {
    width: 708px !important;
    min-width: 708px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100vh - 48px) !important;
    max-width: none !important;
    max-height: none !important;
  }
  .quick-add-modal__content-info .product-page {
    grid-template-columns: 354px 354px !important;
    height: auto !important;
    align-items: stretch !important;
  }
  .quick-add-modal__content-info .product-main-column,
  .quick-add-modal__content-info .product-gallery {
    height: 100% !important;
    min-height: 100% !important;
    max-height: calc(100vh - 48px) !important;
    overflow-y: auto !important;
  }
  .quick-add-modal__content-info .product-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 32px !important;
    height: auto !important;
    max-height: calc(100vh - 48px) !important;
    overflow-y: auto !important;
  }
  .quick-add-modal__content-info .product-title-display {
    margin-bottom: 10px !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
  }
  .quick-add-modal__content-info .product-price,
  .quick-add-modal__content-info .price {
    margin-bottom: 22px !important;
    font-size: 20px !important;
  }
  .quick-add-modal__content-info .product-form-wrapper,
  .quick-add-modal__content-info .stock {
    flex: 0 0 auto !important;
  }
  .quick-add-modal__content-info .product-form-wrapper .add-to-cart,
  .quick-add-modal__content-info .product-form__buttons .product-form__submit {
    min-height: 64px !important;
    font-size: 17px !important;
  }
  .quick-add-modal__content-info .product-option {
    margin-bottom: 32px !important;
  }
  .quick-add-modal__content-info .product-option legend {
    margin-bottom: 14px !important;
    font-size: 18px !important;
  }
  .quick-add-modal__content-info .product-option .option-values {
    gap: 12px !important;
  }
  .quick-add-modal__content-info .product-option .option-value--image,
  .quick-add-modal__content-info .product-option .option-value {
    min-width: 56px !important;
    min-height: 56px !important;
  }
  .quick-add-modal__content-info .stock {
    margin: 4px 0 0 !important;
    padding: 4px 0 6px !important;
    font-size: 12px !important;
  }
  .quick-add-modal__content-info .delivery-card {
    flex: 0 0 auto !important;
    min-height: 0 !important;
    margin: 8px 0 0 !important;
    padding: 0 0 12px !important;
  }
  .quick-add-modal__content-info .delivery-card__summary {
    min-height: 76px !important;
  }
  .quick-add-modal__content-info .delivery-card__heading {
    gap: 10px !important;
  }
  .quick-add-modal__content-info .delivery-card__heading label,
  .quick-add-modal__content-info .delivery-card__heading select {
    font-size: 15px !important;
  }
  .quick-add-modal__content-info .delivery-card__heading select {
    min-height: 42px !important;
    padding: 6px 34px 6px 10px !important;
  }
  .quick-add-modal__content-info .delivery-card__flag {
    width: 24px !important;
    height: 17px !important;
  }
  .quick-add-modal__content-info .delivery-card__summary > p,
  .quick-add-modal__content-info .delivery-card__details {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }
  .quick-add-modal__toggle {
    top: 18px !important;
    right: 18px !important;
    width: 36px !important;
    height: 36px !important;
    padding: 8px !important;
    border: 1px solid rgba(30, 28, 26, .18) !important;
    border-radius: 50% !important;
    background: #fff !important;
  }
}
@media screen and (max-width: 749px) {
  .quick-add-modal__content {
    width: 100% !important;
    height: min(92vh, 48rem) !important;
    max-height: 92vh !important;
  }
  .quick-add-modal__content-info .product-page {
    display: block !important;
    height: auto !important;
  }
  .quick-add-modal__content-info .product-main-column,
  .quick-add-modal__content-info .product-info {
    height: auto !important;
    overflow: visible !important;
  }
}
@media screen and (min-width: 750px) and (max-width: 989px) {
  .momo-ugc { min-height: 69.534rem; padding-block: 6.4rem; }
  .momo-ugc__rail { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* 2026-08-21 live-reference lock: final cascade for the current noo.ma geometry. */
@media screen and (min-width: 990px) {
  .template-index .momo-product-tabs { height: calc(35.99776182rem + 24.77477477vw + .1433rem) !important; }
  .template-index .momo-category-carousel { height: calc(29.07652027rem + 24.98592342vw + .149rem) !important; }
  .template-index .momo-footer { height: 90.2375rem !important; min-height: 90.2375rem !important; }
}
@media screen and (max-width: 749px) {
  .template-index .momo-product-tabs { height: 59.6671875rem !important; min-height: 59.6671875rem !important; padding: 6.159rem 0 !important; }
  .template-index .momo-product-tabs > .page-width { padding-inline: 0 !important; }
  .template-index .momo-product-tabs__header { height: 2.28rem !important; margin-bottom: 2.4rem !important; padding-inline: 1.6rem !important; }
  .template-index .momo-product-tabs__tablist button { height: 2.28rem !important; font-size: 1.6rem !important; line-height: 2.28rem !important; }
  .template-index .momo-category-carousel { height: 258.7109375rem !important; min-height: 258.7109375rem !important; padding: 4.4rem 0 !important; overflow: hidden !important; }
  .template-index .momo-category-carousel > .page-width { height: 249.9109375rem !important; padding-inline: 0 !important; }
  .template-index .momo-category-carousel__header { height: 3.039rem !important; margin-bottom: 2.4rem !important; padding-inline: 1.6rem !important; }
  .template-index .momo-category-carousel__header h2 { font-size: 1.9rem !important; line-height: 3.039rem !important; }
  .template-index .momo-category-carousel__controls { display: none !important; }
  .template-index .momo-category-carousel__track { display: grid !important; height: 240.097rem !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-auto-rows: 30.528rem !important; column-gap: .4rem !important; row-gap: 4.4rem !important; overflow: hidden !important; }
  .template-index .momo-category-carousel__slide { display: grid !important; width: auto !important; height: 30.528rem !important; min-width: 0 !important; grid-template-rows: 23.5rem 5.428rem !important; gap: 1.6rem !important; }
  .template-index .momo-category-carousel__image { width: auto !important; height: 23.5rem !important; aspect-ratio: auto !important; }
  .template-index .momo-category-carousel__content { width: auto !important; height: 5.428rem !important; min-height: 0 !important; padding: 0 .8rem !important; }
  .template-index .momo-category-carousel__content h3 { margin: 0 0 1.2rem !important; font-size: 1.9rem !important; line-height: 1.9rem !important; }
  .template-index .momo-category-carousel__content .momo-text-link { font-size: 1.6rem !important; line-height: 2.328rem !important; }
  .template-index .momo-promos { height: 157.6rem !important; }
  .template-index .momo-footer { height: 118.35rem !important; min-height: 118.35rem !important; }
  .momo-ugc__header h2 { line-height: 1.6 !important; }
}

/* TRUE EOF responsive home geometry lock. */
:root { --momo-announcement: 0px; }
body .announcement-bar-section { display: none !important; height: 0 !important; min-height: 0 !important; }
@media screen and (min-width: 750px) {
  .template-index .momo-split-hero,
  .template-index .momo-split-hero__copy,
  .template-index .momo-split-hero__media { height: calc(100svh - var(--momo-header)) !important; min-height: calc(100svh - var(--momo-header)) !important; }
  .template-index .momo-editorial,
  .template-index .momo-editorial__item { height: 100svh !important; min-height: 100svh !important; }
}

/* EOF responsive home geometry lock. */
:root { --momo-announcement: 0px; }
body .announcement-bar-section { display: none !important; height: 0 !important; min-height: 0 !important; }
@media screen and (min-width: 750px) {
  .template-index .momo-split-hero,
  .template-index .momo-split-hero__copy,
  .template-index .momo-split-hero__media { height: calc(100svh - var(--momo-header)) !important; min-height: calc(100svh - var(--momo-header)) !important; }
  .template-index .momo-editorial,
  .template-index .momo-editorial__item { height: 100svh !important; min-height: 100svh !important; }
}

/* AUTHORITATIVE EOF OVERRIDES: these rules intentionally remain last. */
@media screen and (max-width: 749px) {
  .menu-drawer { left: 34px !important; width: calc(100vw - 34px) !important; max-width: none !important; box-shadow: -34px 0 0 rgb(247, 242, 204) !important; }
  .template-index .momo-product-tabs { height: auto !important; min-height: 0 !important; padding: 32px 0 44px !important; }
  .template-index .momo-product-tabs__header { height: 23px !important; margin-bottom: 24px !important; padding-inline: 16px !important; }
  .template-index .momo-product-tabs__tablist { gap: 16px !important; overflow: visible !important; }
  .template-index .momo-product-tabs__tablist button { height: 23px !important; padding: 0 !important; font-size: 16px !important; line-height: 23px !important; white-space: nowrap !important; }
  .template-index .momo-product-tabs__rail { height: auto !important; gap: 2px !important; overflow-x: auto !important; }
  .template-index .momo-product-tabs__slide { width: calc(100vw - 32px) !important; flex: 0 0 calc(100vw - 32px) !important; height: auto !important; }
  .template-index .momo-product-tabs__slide .card__inner { height: auto !important; aspect-ratio: 4 / 5 !important; }
  .template-index .momo-category-carousel { height: auto !important; min-height: 0 !important; padding: 44px 0 !important; }
  .template-index .momo-category-carousel__header { height: auto !important; margin-bottom: 24px !important; padding-inline: 16px !important; }
  .template-index .momo-category-carousel__header h2 { font-size: 19px !important; line-height: 30px !important; white-space: nowrap !important; }
  .template-index .momo-category-carousel__track { display: flex !important; gap: 4px !important; overflow-x: auto !important; overflow-y: hidden !important; }
  .template-index .momo-category-carousel__slide { display: block !important; width: calc(100vw - 30px) !important; flex: 0 0 calc(100vw - 30px) !important; height: auto !important; }
  .template-index .momo-category-carousel__image { width: 100% !important; height: auto !important; aspect-ratio: 5 / 6 !important; }
  .template-index .momo-category-carousel__content { min-height: 54px !important; padding: 0 !important; }
  .template-index .momo-category-carousel__content h3 { margin: 12px 0 !important; font-size: 19px !important; line-height: 19px !important; }
  .template-index .momo-category-carousel__content .momo-text-link { font-size: 16px !important; line-height: 23px !important; }
  .template-collection .mobile-facets__main { min-height: 100dvh !important; padding-bottom: 96px !important; }
  .template-collection .mobile-facets__footer { min-height: 72px !important; padding: 12px 16px !important; border-top: 1px solid rgb(var(--momo-line)); background: rgb(var(--momo-paper)); }
}
:where(.momo-product-tabs__tablist button, .momo-category-carousel__card, .momo-density button, .momo-sort-option, .momo-localization-choice, .menu-drawer__menu-item, .search-modal__close-button):focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

/* Header announcement and footer final structure. The announcement follows
   the reference's fixed 32px strip; the footer keeps payment methods beneath
   the MOMO mark and removes the separate copyright/policy row. */
body.template-index .announcement-bar-section {
  position: fixed !important;
  z-index: 60 !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 32px !important;
  min-height: 32px !important;
  transform: translateY(0);
  transition: transform .2s ease-in-out;
}
body.template-index .announcement-bar-section.is-hidden { transform: translateY(-100%); }
body.template-index .announcement-bar-section .utility-bar,
body.template-index .announcement-bar-section .announcement-bar,
body.template-index .announcement-bar-section .announcement-bar-slider { height: 32px !important; min-height: 32px !important; }
body.template-index .announcement-bar-section .utility-bar { border-bottom: 1px solid rgba(30, 28, 26, .18); background: rgb(var(--color-background)) !important; color: rgb(var(--color-foreground)) !important; }
body.template-index .announcement-bar-section .announcement-bar__message { display: flex; min-height: 32px !important; align-items: center; justify-content: center; margin: 0; font-size: 11px !important; line-height: 1 !important; text-transform: uppercase; }
body.template-index .announcement-bar-section .announcement-bar__link { min-height: 32px; align-items: center; justify-content: center; }
.momo-footer__brand-stack { display: flex; align-items: flex-start; flex-direction: column; min-width: 0; }
.momo-footer__brand-stack > span { display: block; }
.momo-footer__brand-stack .momo-footer__payment { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: .6rem; margin: 1.8rem 0 0; padding: 0; }
.momo-footer__brand-stack .momo-footer__payment li { display: flex; width: 3.2rem; height: 2rem; align-items: center; justify-content: center; }
.momo-footer__brand-stack .momo-footer__payment .icon { display: block; max-width: 3.2rem; max-height: 2rem; }
.momo-footer__menu summary { font-size: 1.6rem; }
.momo-footer__menu a { font-size: 1.5rem; }
.momo-footer__brand-tagline { font-size: 1.1rem; }
.momo-footer__bottom { display: none !important; }

/* FINAL ROUTE-SCOPED ANNOUNCEMENT LOCK (2026-08-22): noo.ma home keeps
   the 32px sale strip; collection/search/product routes intentionally omit it. */
:root { --momo-announcement: 0px !important; }
body.template-index { --momo-announcement: 32px !important; }
body.template-index .announcement-bar-section {
  display: block !important;
  height: 32px !important;
  min-height: 32px !important;
  visibility: visible !important;
  overflow: hidden !important;
}
body.template-index .announcement-bar,
body.template-index .announcement-bar-slider { display: flex !important; height: 32px !important; min-height: 32px !important; }
body.template-index .announcement-bar__message { min-height: 0 !important; font-size: 11px !important; line-height: 32px !important; }
body:not(.template-index) .announcement-bar-section { display: none !important; height: 0 !important; min-height: 0 !important; }

/* Current authenticated noo.ma home has no announcement height. Its hero and
   editorial panels consume the remaining viewport, while downstream rails keep
   their measured content-driven heights. */
:root { --momo-announcement: 0px; }
body .announcement-bar-section { display: none !important; height: 0 !important; min-height: 0 !important; }
@media screen and (min-width: 750px) {
  .template-index .momo-split-hero,
  .template-index .momo-split-hero__copy,
  .template-index .momo-split-hero__media { height: calc(100svh - var(--momo-header)) !important; min-height: calc(100svh - var(--momo-header)) !important; }
  .template-index .momo-editorial,
  .template-index .momo-editorial__item { height: 100svh !important; min-height: 100svh !important; }
}

/* Absolute last cascade for screenshot-state parity. */
@media screen and (max-width: 749px) {
  .menu-drawer { left: 34px !important; width: calc(100vw - 34px) !important; max-width: none !important; box-shadow: -34px 0 0 rgb(247, 242, 204) !important; }
  .template-index .momo-product-tabs { height: auto !important; min-height: 0 !important; padding: 32px 0 44px !important; }
  .template-index .momo-product-tabs__header { height: 23px !important; margin-bottom: 24px !important; padding-inline: 16px !important; }
  .template-index .momo-product-tabs__tablist { gap: 16px !important; overflow: visible !important; }
  .template-index .momo-product-tabs__tablist button { height: 23px !important; padding: 0 !important; font-size: 16px !important; line-height: 23px !important; white-space: nowrap !important; }
  .template-index .momo-product-tabs__rail { height: auto !important; gap: 2px !important; overflow-x: auto !important; }
  .template-index .momo-product-tabs__slide { width: calc(100vw - 32px) !important; flex: 0 0 calc(100vw - 32px) !important; height: auto !important; }
  .template-index .momo-product-tabs__slide .card__inner { height: auto !important; aspect-ratio: 4 / 5 !important; }
  .template-index .momo-category-carousel { height: auto !important; min-height: 0 !important; padding: 44px 0 !important; }
  .template-index .momo-category-carousel__header { height: auto !important; margin-bottom: 24px !important; padding-inline: 16px !important; }
  .template-index .momo-category-carousel__header h2 { font-size: 19px !important; line-height: 30px !important; white-space: nowrap !important; }
  .template-index .momo-category-carousel__track { display: flex !important; gap: 4px !important; overflow-x: auto !important; overflow-y: hidden !important; }
  .template-index .momo-category-carousel__slide { display: block !important; width: calc(100vw - 30px) !important; flex: 0 0 calc(100vw - 30px) !important; height: auto !important; }
  .template-index .momo-category-carousel__image { width: 100% !important; height: auto !important; aspect-ratio: 5 / 6 !important; }
  .template-index .momo-category-carousel__content { min-height: 54px !important; padding: 0 !important; }
  .template-index .momo-category-carousel__content h3 { margin: 12px 0 !important; font-size: 19px !important; line-height: 19px !important; }
  .template-index .momo-category-carousel__content .momo-text-link { font-size: 16px !important; line-height: 23px !important; }
  .template-collection .mobile-facets__main { min-height: 100dvh !important; padding-bottom: 96px !important; }
  .template-collection .mobile-facets__footer { min-height: 72px !important; padding: 12px 16px !important; border-top: 1px solid rgb(var(--momo-line)); background: rgb(var(--momo-paper)); }
}
:where(.momo-product-tabs__tablist button, .momo-category-carousel__card, .momo-density button, .momo-sort-option, .momo-localization-choice, .menu-drawer__menu-item, .search-modal__close-button):focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
@media screen and (min-width: 750px) and (max-width: 989px) {
  .template-index .momo-usp { height: 6.896875rem !important; min-height: 6.896875rem !important; }
  .template-index .momo-product-tabs { height: 53.0421875rem !important; min-height: 53.0421875rem !important; }
  .template-index .momo-category-carousel { height: 43.6828125rem !important; min-height: 43.6828125rem !important; }
  .template-index .momo-collection-index { height: 20.184375rem !important; min-height: 20.184375rem !important; }
  .template-index .momo-ugc { height: 69.534375rem !important; min-height: 69.534375rem !important; padding: 7.6rem 0 4.4rem !important; }
  .template-index .momo-ugc__header { height: 2.5296875rem !important; margin-bottom: 1.6rem !important; padding-inline: 3.2rem !important; }
  .template-index .momo-ugc__header h2 { font-size: 2.4rem !important; line-height: 2.5296875rem !important; }
  .template-index .momo-ugc__rail { height: 46.725rem !important; padding-top: 1.6rem !important; }
  .template-index .momo-footer { height: 115.46rem !important; min-height: 115.46rem !important; }
}
@media screen and (min-width: 990px) {
  .cart-drawer .drawer__inner { width: 56rem !important; max-width: 56rem !important; }
  .cart-drawer .drawer__header { height: 6rem !important; min-height: 6rem !important; padding: 0 3.2rem !important; }
}

/* Cart drawer global parity. The drawer keeps Shopify's live cart DOM and
   updates, while its layout owns the sheet, item, rail and checkout regions. */
cart-drawer .drawer__inner {
  display: flex !important;
  flex-direction: column !important;
  width: min(100vw, 56rem) !important;
  max-width: 56rem !important;
  height: 100dvh !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  color: #22201f !important;
}
cart-drawer .drawer__header {
  flex: 0 0 6rem !important;
  height: 6rem !important;
  min-height: 6rem !important;
  padding: 0 3.2rem !important;
  border-bottom: .1rem solid #e3e3e3 !important;
  background: #fff !important;
}
cart-drawer .drawer__heading {
  margin: 0 !important;
  font-size: 1.4rem !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
}
cart-drawer .momo-cart-count { color: #1d3c91 !important; font-size: 1.2rem !important; font-weight: 400 !important; }
cart-drawer .drawer__close { width: 4.4rem !important; height: 4.4rem !important; top: .8rem !important; right: .8rem !important; padding: 1rem !important; }
cart-drawer cart-drawer-items { flex: 0 1 auto !important; min-height: 0 !important; overflow: auto !important; }
cart-drawer .drawer__contents { padding: 0 3.2rem !important; }
cart-drawer .cart-item { grid-template-columns: 8rem minmax(0, 1fr) auto !important; gap: 1.6rem !important; padding: 3.2rem 0 2.4rem !important; }
cart-drawer .cart-item__media, cart-drawer .cart-item__image { width: 8rem !important; height: 8rem !important; }
cart-drawer .cart-item__image { object-fit: contain !important; background: #f7f7f5 !important; }
cart-drawer .cart-item__name { display: block !important; overflow: hidden !important; font-size: 1.4rem !important; line-height: 1.25 !important; font-weight: 600 !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
cart-drawer .cart-item__details .product-option { margin-top: .5rem !important; color: #7c7c7c !important; font-size: 1.2rem !important; }
cart-drawer .cart-item__price-wrapper .price { font-size: 1.4rem !important; }
cart-drawer .cart-item__quantity { grid-column: 2 / span 2 !important; }
cart-drawer .quantity { width: 8rem !important; min-height: 5.4rem !important; border: .1rem solid #858585 !important; }
cart-drawer .quantity__button { width: 2.6rem !important; }
cart-drawer cart-remove-button { margin-left: 1.6rem !important; }
cart-drawer .momo-cart-scroll { flex: 1 1 auto !important; min-height: 0 !important; overflow-y: auto !important; overflow-x: hidden !important; scrollbar-width: thin !important; }
cart-drawer .momo-cart-scroll > cart-drawer-items { display: block !important; overflow: visible !important; }
cart-drawer .momo-cart-recommendations { flex: 0 0 auto !important; padding: 1.8rem 3.2rem 1.6rem !important; overflow: hidden !important; }
cart-drawer .momo-cart-recommendations__header { margin-bottom: 1.3rem !important; }
cart-drawer .momo-cart-recommendations__header h3 { font-size: 1.4rem !important; line-height: 1.2 !important; font-weight: 600 !important; }
cart-drawer .momo-cart-recommendations__controls { display: flex !important; align-items: center !important; gap: 1.2rem !important; }
cart-drawer .momo-cart-recommendations__controls button { width: 2.4rem !important; height: 2.4rem !important; padding: 0 !important; border: 0 !important; background: transparent !important; color: #22201f !important; font-size: 1.8rem !important; line-height: 1 !important; cursor: pointer !important; }
cart-drawer .momo-cart-recommendations__controls button:disabled { opacity: .25 !important; cursor: default !important; }
cart-drawer .momo-cart-recommendations__counter { min-width: 3.2rem !important; text-align: center !important; font-size: 1.2rem !important; }
cart-drawer .momo-cart-recommendations__viewport { overflow: hidden !important; }
cart-drawer .momo-cart-recommendations__rail { display: flex !important; gap: .4rem !important; overflow: visible !important; transform: translateX(0); transition: transform .35s ease !important; }
cart-drawer .momo-cart-recommendation { flex: 0 0 calc((100% - 1.2rem) / 4) !important; }
cart-drawer .momo-cart-recommendation__media { aspect-ratio: 1 / 1.12 !important; }
cart-drawer .drawer__footer { flex: 0 0 auto !important; padding: 0 3.2rem !important; border-top: .1rem solid #e3e3e3 !important; background: #fff !important; }
cart-drawer .momo-cart-payment-methods { padding: 1.6rem 0 0 !important; }
cart-drawer .momo-cart-payment-methods ul { display: flex !important; flex-wrap: wrap !important; gap: .6rem !important; align-items: center !important; justify-content: center !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
cart-drawer .momo-cart-payment-methods li { display: flex !important; width: 3.2rem !important; height: 2rem !important; align-items: center !important; justify-content: center !important; }
cart-drawer .momo-cart-payment-methods svg { display: block !important; max-width: 3.2rem !important; max-height: 2rem !important; }
cart-drawer .momo-cart-klarna { margin: 1.2rem 0 0 !important; padding: .8rem 1rem !important; background: #f5f5f5 !important; text-align: center !important; font-size: 1.2rem !important; }
cart-drawer .momo-cart-delivery-note { padding: 1.4rem 0 1.2rem !important; color: #6f6f6f !important; font-size: 1.2rem !important; line-height: 1.35 !important; }
cart-drawer .momo-cart-delivery-note p { margin: 0 !important; }
cart-drawer .momo-cart-delivery-note p + p { margin-top: .2rem !important; }
cart-drawer .momo-cart-delivery-note a { color: inherit !important; text-decoration: underline !important; }
cart-drawer .drawer__footer > details { border-bottom: .1rem solid #e3e3e3 !important; }
cart-drawer .drawer__footer summary { min-height: 4.6rem !important; padding: 1.5rem 0 !important; font-size: 1.2rem !important; }
cart-drawer .cart-drawer__footer { padding: 0 !important; }
cart-drawer .totals { padding: 1.8rem 0 1rem !important; border-top: 0 !important; }
cart-drawer .totals__total, cart-drawer .totals__total-value { font-size: 1.4rem !important; }
cart-drawer .cart__ctas { padding: 0 0 2.4rem !important; }
cart-drawer .cart__checkout-button { min-height: 4.8rem !important; border-radius: 0 !important; background: #22201f !important; font-size: 1.3rem !important; }

@media screen and (max-width: 749px) {
  cart-drawer .drawer__inner { width: 100vw !important; max-width: none !important; }
  cart-drawer .drawer__header { flex-basis: 6rem !important; padding-inline: 1.6rem !important; }
  cart-drawer .drawer__contents { padding-inline: 1.6rem !important; }
  cart-drawer .cart-item { padding-top: 3.2rem !important; }
  cart-drawer .momo-cart-recommendations { padding-inline: 1.6rem !important; }
  cart-drawer .drawer__footer { padding-inline: 1.6rem !important; }
  cart-drawer .cart__ctas { padding-bottom: 1.6rem !important; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

body.momo-popup-open { overflow: hidden; }

.momo-product-meta { display: flex; align-items: center; gap: 1rem; min-height: 2.4rem; margin-bottom: 1.2rem; }
.momo-product-badge { display: inline-flex; align-items: center; min-height: 2.4rem; padding: 0 .8rem; background: rgb(var(--momo-ink)); color: rgb(var(--momo-paper)); font-size: 1.1rem; line-height: 1; text-transform: uppercase; }
.momo-product-rating { color: rgb(var(--momo-ink)); font-size: 1.2rem; text-decoration: none; }
.momo-product-rating span:first-child { letter-spacing: .1rem; }
.momo-product-media-meta { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: 1rem; color: rgb(var(--momo-muted)); font-size: 1.2rem; }
.momo-product-media-meta__button { padding: 0; border: 0; border-bottom: .1rem solid currentColor; background: transparent; color: inherit; font: inherit; cursor: pointer; }
.momo-product-media-meta__button:hover, .momo-product-media-meta__button:focus-visible { color: rgb(var(--momo-ink)); }
.momo-product-promises { display: grid; gap: .8rem; margin: 2rem 0 0; padding: 1.6rem 0 0; border-top: .1rem solid rgb(var(--momo-line)); list-style: none; color: rgb(var(--momo-muted)); font-size: 1.2rem; }
.momo-product-promises li::before { content: '\2713'; margin-right: .8rem; color: rgb(var(--momo-ink)); }
.momo-product-support { padding-block: 6.4rem; border-top: .1rem solid rgb(var(--momo-line)); }
.momo-product-support__description { max-width: 92rem; margin-bottom: 5.6rem; }
.momo-product-support__eyebrow { color: rgb(var(--momo-muted)); font-size: 1.2rem; text-transform: uppercase; }
.momo-product-support h2 { margin: 0 0 1.2rem; font-size: 2.4rem; }
.momo-product-support__benefits { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-block: .1rem solid rgb(var(--momo-line)); }
.momo-product-support__benefit { display: grid; gap: .4rem; min-width: 0; padding: 2rem; border-right: .1rem solid rgb(var(--momo-line)); color: inherit; text-decoration: none; }
.momo-product-support__benefit:last-child { border-right: 0; }
.momo-product-support__benefit strong { font-size: 1.4rem; }
.momo-product-support__benefit span { color: rgb(var(--momo-muted)); font-size: 1.2rem; }
.momo-product-support__reasons { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; padding-block: 4.8rem 3.2rem; }
.momo-product-support__reasons ul { display: grid; gap: 1rem; margin: 0; }
.momo-product-support__note { padding: 1.6rem; border: .1rem solid rgb(var(--momo-line)); color: rgb(var(--momo-muted)); font-size: 1.3rem; }
.momo-product-support__accordions { margin-top: 4.8rem; border-top: .1rem solid rgb(var(--momo-line)); }
.momo-product-support__accordions details { border-bottom: .1rem solid rgb(var(--momo-line)); }
.momo-product-support__accordions summary { display: flex; justify-content: space-between; gap: 2rem; padding: 2rem 0; cursor: pointer; list-style: none; }
.momo-product-support__accordions summary::-webkit-details-marker { display: none; }
.momo-product-support__accordions details[open] summary span:last-child { transform: rotate(45deg); }
.momo-product-support__accordions .rte { max-width: 80rem; padding: 0 0 2.4rem; }
.momo-product-support__aftercare { display: grid; grid-template-columns: 1fr 1fr; gap: .1rem; margin-top: 4.8rem; background: rgb(var(--momo-line)); border: .1rem solid rgb(var(--momo-line)); }
.momo-product-support__aftercare article { padding: 3.2rem; background: rgb(var(--momo-paper)); }
.momo-product-support__number { color: rgb(var(--momo-muted)); font-size: 1.2rem; }
.momo-product-support__help { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-top: 3.2rem; padding: 2.4rem; background: rgb(var(--momo-soft)); }
.momo-product-support__help h2, .momo-product-support__help p { margin: 0; }
.momo-recently-viewed { padding-block: 6.4rem; }
.momo-recently-viewed[hidden] { display: none; }
.momo-recently-viewed__eyebrow { color: rgb(var(--momo-muted)); font-size: 1.2rem; text-transform: uppercase; }
.momo-recently-viewed h2 { margin: 0 0 2.4rem; font-size: 3.2rem; }
.momo-recently-viewed__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .2rem; }
.momo-recently-viewed__card a { color: inherit; text-decoration: none; }
.momo-recently-viewed__card img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; background: rgb(var(--momo-soft)); }
.momo-recently-viewed__card h3 { margin: 1.2rem 0 .4rem; font-size: 1.4rem; }
.momo-recently-viewed__card p { margin: 0; font-size: 1.3rem; }
.momo-description-toggle { margin-top: 1rem; padding: 0; border: 0; border-bottom: .1rem solid currentColor; background: transparent; color: rgb(var(--momo-ink)); font: inherit; font-size: 1.3rem; cursor: pointer; }
.momo-description-toggle[hidden] { display: none; }

.momo-footer__menu--text h2 { margin: 0 0 1.2rem; color: rgb(var(--momo-paper)); font-size: 1.4rem; font-weight: 500; }
.momo-footer__menu--text .rte { color: rgba(255, 255, 255, .7); font-size: 1.3rem; }
.momo-footer__menu--image img { display: block; width: 100%; height: auto; }

/* Component parity surfaces: split hero, popup, UGC and the dark footer. */
.momo-split-hero { min-height: min(82rem, calc(100svh - var(--momo-header) - var(--momo-announcement))); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.momo-split-hero__copy { display: grid; min-width: 0; place-items: center; padding: 7vw; background: var(--momo-hero-bg); }
.momo-split-hero__copy-inner { max-width: 58rem; text-align: center; }
.momo-split-hero__eyebrow { margin: 0 0 1.2rem; font-size: 1.2rem; text-transform: uppercase; }
.momo-split-hero h1, .momo-split-hero h2 { margin: 0; font-size: 5.7rem; line-height: 1.1; }
.momo-split-hero__copy p:not(.momo-split-hero__eyebrow) { max-width: 42rem; margin: 2rem auto; color: rgb(var(--momo-muted)); }
.momo-split-hero__media { position: relative; min-width: 0; overflow: hidden; background: rgb(var(--momo-soft)); }
.momo-split-hero__media > img, .momo-split-hero__media > .placeholder-svg { width: 100%; height: 100%; object-fit: cover; }
.momo-split-hero__overlay { position: absolute; right: 7%; bottom: 7%; left: 7%; color: rgb(var(--momo-paper)); text-align: center; text-shadow: 0 .1rem .8rem rgba(0, 0, 0, .2); }
.momo-split-hero__overlay h2 { max-width: 58rem; margin-inline: auto; font-size: 4.8rem; font-style: italic; line-height: 1.05; }
.momo-split-hero__overlay p { margin: 1.4rem 0 0; font-size: 1.3rem; }
.momo-split-hero__button { display: inline-flex; min-height: 4.8rem; align-items: center; justify-content: center; gap: 2rem; margin-top: 2.4rem; padding: 0 3rem; border: .1rem solid currentColor; color: inherit; font-size: 1.3rem; text-transform: uppercase; text-decoration: none; }
.momo-split-hero__button::after { width: .7rem; height: .7rem; border-top: .1rem solid currentColor; border-right: .1rem solid currentColor; content: ''; transform: rotate(45deg); transition: transform .2s ease; }
.momo-split-hero__button:hover { background: rgb(var(--momo-ink)); color: rgb(var(--momo-paper)); }
.momo-split-hero__button--light { background: rgb(var(--momo-paper)); color: rgb(var(--momo-ink)); text-shadow: none; }

/* Keep the split hero visually complete while hosted video metadata catches up.
   The poster is a real merchant image, not a decorative placeholder. */
.template-index .momo-split-hero__copy { background: var(--momo-hero-bg, #f3edc9) !important; }
.template-index .momo-split-hero__poster { position: absolute; inset: 0; z-index: 0; background: #f3edc9; }
.template-index .momo-split-hero__poster img { display: block; width: 100%; height: 100%; object-fit: cover; }
.template-index .momo-split-hero__media > .momo-split-hero__video { position: relative; z-index: 1; }
.template-index .momo-split-hero__overlay { z-index: 2; }
.template-index .momo-split-hero__button:hover::after,
.template-index .momo-split-hero__button:focus-visible::after { transform: translateX(.2rem) rotate(45deg); }

/* Typography and control rhythm measured from the live reference. */
.template-index .momo-split-hero__button { min-width: 19.2rem; min-height: 5.1rem; font-size: 1.4rem; font-weight: 500; letter-spacing: .04em; }
.template-index .momo-product-tabs__tablist button { font-weight: 500; }
.template-index .momo-product-tabs__view-all,
.template-index .momo-text-link { letter-spacing: .02em; }
.momo-footer__form-row button,
.momo-footer__menu a,
.momo-footer__bottom .momo-footer__policies a { letter-spacing: .01em; }

.momo-newsletter-popup[hidden] { display: none; }
.momo-newsletter-popup { position: fixed; z-index: 110; inset: 0; display: grid; place-items: center; padding: 2rem; }
.momo-newsletter-popup__backdrop { position: absolute; inset: 0; display: block !important; background: rgba(var(--momo-ink), .54); }
.momo-newsletter-popup__dialog { position: relative; z-index: 1; display: grid; width: min(100%, 90rem); max-height: min(90svh, 62rem); grid-template-columns: 1fr 1fr; overflow: auto; background: rgb(var(--momo-paper)); color: rgb(var(--momo-ink)); box-shadow: 0 2rem 6rem rgba(0, 0, 0, .22); }
.momo-newsletter-popup__close { position: absolute; z-index: 2; top: 1.6rem; right: 1.6rem; display: grid; width: 4rem; height: 4rem; place-items: center; padding: 0; border: 0; background: rgba(255, 255, 255, .86); cursor: pointer; }
.momo-newsletter-popup__close svg { width: 1.8rem; }
.momo-newsletter-popup__visual { display: grid; grid-template-rows: auto 1fr; background: rgb(var(--momo-soft)); }
.momo-newsletter-popup__offer { padding: 4.2rem 4.2rem 3.2rem; background: #f3edc9; }
.momo-newsletter-popup__offer h2, .momo-newsletter-popup__content h2 { margin: 0; font-size: 4.6rem; line-height: 1.08; }
.momo-newsletter-popup__eyebrow { margin: 0 0 1.2rem; color: rgb(var(--momo-muted)); font-size: 1.2rem; text-transform: uppercase; }
.momo-newsletter-popup__visual img, .momo-newsletter-popup__visual .placeholder-svg { width: 100%; height: 100%; min-height: 24rem; object-fit: cover; }
.momo-newsletter-popup__content { display: flex; flex-direction: column; justify-content: center; padding: 5.2rem 4.2rem; }
.momo-newsletter-popup__content > p:not(.momo-newsletter-popup__eyebrow) { margin: 2rem 0; color: rgb(var(--momo-muted)); }
.momo-newsletter-popup__form { display: grid; gap: 1rem; }
.momo-newsletter-popup__form label { color: rgb(var(--momo-muted)); font-size: 1.3rem; }
.momo-newsletter-popup__form input { min-height: 4.6rem; padding: 0 1.2rem; border: 0; border-bottom: .1rem solid rgb(var(--momo-line)); background: transparent; }
.momo-newsletter-popup__form .button { width: 100%; min-height: 4.8rem; }
.momo-newsletter-popup__privacy { margin-top: 2.4rem; color: rgb(var(--momo-muted)); font-size: 1.1rem; line-height: 1.5; }
.momo-newsletter-popup__message { margin: 0; font-size: 1.3rem; }

.momo-collection-index { padding-block: 8rem; }
.momo-collection-index__eyebrow { margin: 0 0 3.2rem; color: rgb(var(--momo-muted)); font-size: 1.2rem; text-align: center; text-transform: uppercase; }
.momo-collection-index__links { display: grid; grid-template-columns: repeat(4, minmax(0, auto)); max-width: 132rem; align-items: baseline; justify-content: center; column-gap: clamp(2.4rem, 4.5vw, 7.2rem); row-gap: var(--momo-index-row-gap, 1.6rem); margin-inline: auto; }
.momo-collection-index__link { position: relative; display: inline-block; min-width: 0; padding-right: 1.7rem; color: rgb(var(--momo-ink)); font-size: min(var(--momo-index-size, 5.6rem), 5.6rem); line-height: 1.12; text-decoration: none; white-space: nowrap; }
.momo-collection-index__link:nth-child(5) { grid-column: 2; }
.momo-collection-index__link:nth-child(6) { grid-column: 3; }
.momo-collection-index__link:hover, .momo-collection-index__link:focus-visible { text-decoration: underline; text-underline-offset: .5rem; }
.momo-collection-index__link sup { position: absolute; top: .05em; right: 0; color: rgb(var(--momo-muted)); font-size: .24em; font-weight: 400; line-height: 1; }
.momo-collection-index__all { display: block; width: fit-content; margin: 4rem auto 0; color: rgb(var(--momo-ink)); font-size: 1.3rem; text-decoration: underline; text-underline-offset: .4rem; }

.momo-category-carousel { padding-block: 7.2rem; overflow: hidden; }
.momo-category-carousel__header { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 2.4rem; }
.momo-category-carousel__header h2 { margin: 0; font-size: 2.8rem; line-height: 1.1; }
.momo-category-carousel__eyebrow { margin: 0 0 .8rem; color: rgb(var(--momo-muted)); font-size: 1.2rem; text-transform: uppercase; }
.momo-category-carousel__controls { display: flex; align-items: center; gap: 1rem; color: rgb(var(--momo-muted)); font-size: 1.2rem; white-space: nowrap; }
.momo-category-carousel__controls button { display: grid; width: 3.8rem; height: 3.8rem; place-items: center; padding: 0; border: .1rem solid rgb(var(--momo-line)); background: transparent; color: rgb(var(--momo-ink)); cursor: pointer; }
.momo-category-carousel__controls button:first-child svg { transform: rotate(180deg); }
.momo-category-carousel__controls button:disabled { color: rgb(var(--momo-line)); cursor: not-allowed; }
.momo-category-carousel__track { display: flex; gap: 1.6rem; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; touch-action: pan-y; }
.momo-category-carousel__track::-webkit-scrollbar { display: none; }
.momo-category-carousel__slide { flex: 0 0 calc((100% - 6.4rem) / 5); min-width: 0; scroll-snap-align: start; }
.momo-category-carousel__card { display: grid; height: 100%; grid-template-rows: minmax(0, 1fr) auto; gap: 1.6rem; color: inherit; text-decoration: none; }
.momo-category-carousel__image { display: block; aspect-ratio: 4 / 5; overflow: hidden; background: rgb(var(--momo-line)); }
.momo-category-carousel__image img, .momo-category-carousel__image svg { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .2s cubic-bezier(.25,.46,.45,.94); }
.momo-category-carousel__card:hover .momo-category-carousel__image img,
.momo-category-carousel__card:focus-visible .momo-category-carousel__image img { transform: scale(1.025); }
.momo-category-carousel__content { padding-top: 1.2rem; }
.momo-category-carousel__content h3 { margin: 0 0 .6rem; font-size: 1.8rem; }
.momo-category-carousel__content h3 a { color: inherit; text-decoration: none; }
.momo-category-carousel__card:hover .momo-text-link,
.momo-category-carousel__card:focus-visible .momo-text-link { text-decoration-thickness: .1rem; text-underline-offset: .4rem; }

/* Category carousel interaction lock: horizontal rail only, never document
   vertical scrolling from arrow clicks or touch gestures. */
.template-index .momo-category-carousel__track {
  touch-action: pan-x;
  overscroll-behavior-x: contain;
  overscroll-behavior-y: none;
  scroll-behavior: smooth;
}
.template-index .momo-category-carousel__slide,
.template-index .momo-category-carousel__card { min-height: 0; }

.momo-footer { background: rgb(var(--momo-ink)); color: rgb(var(--momo-paper)); }
.momo-footer__top { display: grid; grid-template-columns: minmax(30rem, 1fr) minmax(0, 1.4fr); gap: 8rem; padding-top: 7.2rem; padding-bottom: 6.4rem; }
.momo-footer__lead h2 { max-width: 48rem; margin: 0; color: rgb(var(--momo-paper)); font-size: 5.2rem; line-height: 1.05; }
.momo-footer__eyebrow { margin: 0 0 1.4rem; color: rgba(255, 255, 255, .7); font-size: 1.2rem; text-transform: uppercase; }
.momo-footer__tagline, .momo-footer__contact { max-width: 42rem; margin: 2rem 0 0; color: rgba(255, 255, 255, .7); font-size: 1.4rem; }
.momo-footer__contact a, .momo-footer__policies a { color: rgb(var(--momo-paper)); }
.momo-footer__form { margin-top: 3.2rem; max-width: 52rem; }
.momo-footer__form-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; border-bottom: .1rem solid rgba(255, 255, 255, .55); }
.momo-footer__form-row input { min-height: 4.8rem; padding: 0; border: 0; background: transparent; color: rgb(var(--momo-paper)); }
.momo-footer__form-row button { padding: 0 1.2rem; border: 0; background: transparent; color: rgb(var(--momo-paper)); font: inherit; cursor: pointer; }
.momo-footer__form-message { color: rgb(var(--momo-paper)); font-size: 1.3rem; }
.momo-footer__social { margin-top: 4rem; }
.momo-footer__social .list-social__item .icon { color: rgb(var(--momo-paper)); }
.momo-footer__menus { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2.4rem; }
.momo-footer__menu summary { display: flex; align-items: center; justify-content: space-between; padding-bottom: 1.6rem; color: rgb(var(--momo-paper)); font-size: 1.8rem; cursor: pointer; list-style: none; }
.momo-footer__menu summary::-webkit-details-marker { display: none; }
.momo-footer__menu summary span { display: none; }
.momo-footer__menu ul { display: grid; gap: 1.2rem; margin: 0; padding: 0; list-style: none; }
.momo-footer__menu a { color: rgba(255, 255, 255, .7); font-size: 1.7rem; text-decoration: none; }
.momo-footer__menu a:hover, .momo-footer__menu a:focus-visible { color: rgb(var(--momo-paper)); text-decoration: underline; }
.momo-footer__brand { display: flex; align-items: baseline; justify-content: space-between; gap: 2rem; padding-block: 3.2rem; border-top: .1rem solid rgba(255, 255, 255, .3); font-size: 18rem; line-height: .8; }
.momo-footer__brand-tagline { max-width: 28rem; color: rgba(255, 255, 255, .7); font-size: 1.3rem; line-height: 1.3; text-align: right; }
.momo-footer__bottom { display: grid; grid-template-columns: 1fr auto; gap: 2rem; padding-top: 2.4rem; padding-bottom: 3.2rem; border-top: .1rem solid rgba(255, 255, 255, .3); }
.momo-footer__localization { display: flex; flex-wrap: wrap; gap: 2rem; }
.momo-footer__localization label { display: block; color: rgba(255, 255, 255, .7); font-size: 1.1rem; }
.momo-footer__localization .localization-form__select { color: rgb(var(--momo-paper)); }
.momo-footer__payment { grid-column: 2; justify-content: flex-end; }
.momo-footer__policies { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 1rem 1.6rem; color: rgba(255, 255, 255, .6); font-size: 1.1rem; }

/* Footer refinement: noo.ma uses a calm, information-rich stack. Keep the
   MOMO mark present but subordinate to the newsletter and menu architecture. */
.momo-footer__top { min-height: 34rem; padding-top: 8rem; padding-bottom: 7.2rem; }
.momo-footer__lead h2 { max-width: 42rem; font-size: 4.2rem; line-height: 1.08; }
.momo-footer__menus { align-self: start; }
.momo-footer__menu summary { min-height: 4.4rem; padding: 1.1rem 0; border-bottom: .1rem solid rgba(255, 255, 255, .24); font-size: 1.6rem; line-height: 1.2; }
.momo-footer__menu summary span { display: block; width: 1.2rem; height: 1.2rem; flex: 0 0 1.2rem; font-size: 0; position: relative; }
.momo-footer__menu summary span::before,
.momo-footer__menu summary span::after { position: absolute; top: 50%; left: 50%; width: 1rem; height: .1rem; background: currentColor; content: ''; transform: translate(-50%, -50%); transition: transform .25s ease; }
.momo-footer__menu summary span::after { transform: translate(-50%, -50%) rotate(90deg); }
.momo-footer__menu[open] summary span::after { transform: translate(-50%, -50%) rotate(0); }
.momo-footer__menu ul { gap: .9rem; padding-top: 1.2rem; }
.momo-footer__menu a { font-size: 1.4rem; line-height: 1.35; transition: color .2s ease, text-decoration-color .2s ease; }
.momo-footer__brand { min-height: 15rem; padding-block: 4.8rem 3.2rem; font-size: 6.4rem; line-height: .85; }
.momo-footer__brand-stack > span { font-size: 6.4rem !important; line-height: .85; }
.momo-footer__brand-meta { display: flex; align-items: center; gap: 1.6rem; }
.momo-footer__bottom { display: flex !important; align-items: center; justify-content: space-between; gap: 2rem; padding-block: 2rem 3.2rem; border-top: .1rem solid rgba(255, 255, 255, .24); color: rgba(255, 255, 255, .62); font-size: 1.1rem; }
.momo-footer__copyright { white-space: nowrap; }
.momo-footer__bottom .momo-footer__policies { display: flex; grid-column: auto; gap: 1.6rem; font-size: 1.1rem; }
.momo-footer__bottom .momo-footer__policies a { color: inherit; text-decoration: none; transition: color .2s ease; }
.momo-footer__bottom .momo-footer__policies a:hover,
.momo-footer__bottom .momo-footer__policies a:focus-visible { color: rgb(var(--momo-paper)); text-decoration: underline; text-underline-offset: .3rem; }

@media screen and (max-width: 749px) {
  .momo-footer__top { min-height: 0; padding-top: 5.6rem; padding-bottom: 4.8rem; }
  .momo-footer__lead h2 { max-width: 30rem; font-size: 3.4rem; }
  .momo-footer__menus { gap: 0; }
  .momo-footer__menu summary { min-height: 4.8rem; padding-block: 1.4rem; }
  .momo-footer__brand { min-height: 0; padding-block: 3.6rem 2.8rem; font-size: 4.8rem; }
  .momo-footer__brand-stack > span { font-size: 4.8rem !important; }
  .momo-footer__brand-meta { align-items: flex-start; flex-direction: column; gap: 1rem; }
  .momo-footer__bottom { align-items: flex-start; flex-direction: column; gap: 1.2rem; padding-block: 1.8rem 2.4rem; }
  .momo-footer__bottom .momo-footer__policies { gap: .8rem 1.2rem; }
}

/* Judge.me injects a temporary display:none rule into the carousel widget.
   Keep the real app output visible once review cards have arrived so its
   native track, arrows, keyboard focus and touch scrolling remain usable. */
.jdgm-carousel:has(.jdgm-carousel-item) { display: block !important; }
.jdgm-carousel__item-container { position: relative; overflow: hidden; }
.jdgm-carousel__item-wrapper { display: flex !important; width: 100% !important; height: auto !important; transition: transform .3s ease; }
.jdgm-carousel-item { flex: 0 0 33.333% !important; width: 33.333% !important; box-sizing: border-box; }
.jdgm-carousel__arrows { position: absolute !important; z-index: 2; top: 45%; right: 0; left: 0; display: flex !important; justify-content: space-between; pointer-events: none; }
.jdgm-carousel__left-arrow,
.jdgm-carousel__right-arrow { display: flex !important; align-items: center; justify-content: center; min-width: 3.6rem; min-height: 3.6rem; cursor: pointer; pointer-events: auto; }
@media screen and (max-width: 767px) {
  .jdgm-carousel-item { flex-basis: 100% !important; width: 100% !important; }
}

@media screen and (min-width: 990px) {
  .header { grid-template-areas: 'left-icons heading navigation icons'; grid-template-columns: 4.2rem auto minmax(0, 1fr) auto; column-gap: 1.2rem; }
  .header > header-drawer { display: block; grid-area: left-icons; margin: 0; }
  .header > .header__heading,
  .header > .header__heading-link { grid-area: heading; }
  .header > .header__inline-menu { grid-area: navigation; margin-left: .8rem; }
  .header > .header__icons { grid-area: icons; }
  .product--large:not(.product--no-media) .product__media-wrapper { max-width: 65%; width: 65%; }
  .product--large:not(.product--no-media) .product__info-wrapper { max-width: 35%; width: 35%; }
}

@media screen and (max-width: 749px) {
  :root { --momo-header: 6.1rem; }
  .header.page-width { grid-template-columns: auto minmax(0, 1fr) auto; padding-inline: 1.2rem; }
  .header__heading-link { justify-self: center; max-width: 100%; }
  .header__heading-link .h2 { display: block; font-size: 2.2rem; line-height: 1; white-space: nowrap; }
  .header__icons { justify-self: end; gap: 0; }
  .header.header--has-menu .header__icons > .header__search { display: inline-flex !important; }
  .header__icon--search::after,
  .header__icon--account::after,
  .wishlist-hero-header-link::after,
  .header__icon--cart::after { content: none; }
  .header__icon--search,
  .header__icon--account,
  .wishlist-hero-header-link,
  .header__icon--cart { width: 3.4rem; min-width: 3.4rem; padding-inline: .6rem; }
  .momo-product-support__benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .momo-product-support__benefit:nth-child(2n) { border-right: 0; }
  .momo-product-support__reasons, .momo-product-support__aftercare { grid-template-columns: 1fr; }
  .momo-product-support__help { align-items: stretch; flex-direction: column; }
  .momo-recently-viewed__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3.2rem 1.2rem; }
  .momo-split-hero h1 { font-size: 3.8rem; line-height: 1.12; }
  .momo-split-hero { display: flex; min-height: auto; flex-direction: column; }
  .momo-split-hero__copy { min-height: calc(100svh - var(--momo-header) - var(--momo-announcement)); padding: 5.6rem 2.4rem; }
  .momo-split-hero__media { display: block; min-height: calc(100svh - var(--momo-header) - var(--momo-announcement)); }
  .momo-split-hero__overlay { right: 2.4rem; bottom: 4rem; left: 2.4rem; }
  .momo-split-hero__overlay h2 { font-size: 3.8rem; }
  .momo-newsletter-popup { padding: 1.6rem; }
  .momo-newsletter-popup__dialog { display: block; width: 100%; max-height: 92svh; }
  .momo-newsletter-popup__visual { display: block; }
  .momo-newsletter-popup__offer { padding: 2.8rem 2.4rem 2.4rem; }
  .momo-newsletter-popup__offer h2, .momo-newsletter-popup__content h2 { font-size: 3rem; }
  .momo-newsletter-popup__visual img, .momo-newsletter-popup__visual .placeholder-svg { display: block; height: 16rem; min-height: 0; }
  .momo-newsletter-popup__content { padding: 3rem 2.4rem 3.2rem; }
  .momo-collection-index { padding-block: 5.6rem; }
  .momo-collection-index__links { grid-template-columns: repeat(2, minmax(0, 1fr)); justify-content: stretch; column-gap: 1.6rem; row-gap: var(--momo-index-row-gap, 2rem); }
  .momo-collection-index__link { padding-right: 1.4rem; font-size: 3.2rem; line-height: 1.2; white-space: normal; }
  .momo-collection-index__link:nth-child(5), .momo-collection-index__link:nth-child(6) { grid-column: auto; }
  .momo-product-tabs__tablist button { font-size: 1.9rem; }
  .momo-category-carousel { padding-block: 5.6rem; }
  .momo-category-carousel__header { align-items: start; }
  .momo-category-carousel__header h2 { font-size: 2.8rem; }
  .momo-category-carousel__slide { flex-basis: min(72vw, 28rem); }
  .momo-footer__top { display: block; padding-top: 5.6rem; padding-bottom: 4.8rem; }
  .momo-footer__menus { display: block; margin-top: 5.6rem; }
  .momo-footer__menu { border-top: .1rem solid rgba(255, 255, 255, .25); }
  .momo-footer__menu:last-child { border-bottom: .1rem solid rgba(255, 255, 255, .25); }
  .momo-footer__menu summary { padding-block: 1.8rem; }
  .momo-footer__menu summary span { display: block; }
  .momo-footer__menu[open] summary span { transform: rotate(45deg); }
  .momo-footer__menu ul { padding: 0 0 1.8rem; }
  .momo-footer__brand { display: block; padding-block: 2.8rem; font-size: 6rem; }
  .momo-footer__brand-tagline { display: block; margin-top: 1.8rem; text-align: left; }
  .momo-footer__bottom { display: block; }
  .momo-footer__payment { justify-content: flex-start; margin-top: 2rem; }
  .momo-footer__policies { margin-top: 2rem; }
}

@media screen and (min-width: 750px) and (max-width: 1100px) {
  .header__icon--search::after,
  .header__icon--account::after,
  .wishlist-hero-header-link::after,
  .header__icon--cart::after { content: none; }
  .momo-category-carousel__slide { flex-basis: calc((100% - 3.2rem) / 3); }
  .momo-product-tabs__slide { flex-basis: calc((100% - .4rem) / 3); }
}

/* 2026-08-19 measured noo.ma template geometry. Content remains MOMO-owned. */
.template-index #MainContent { display: block; }
.template-index .shopify-section-group-header-group.announcement-bar-section,
.template-index .utility-bar { height: 3.2rem; min-height: 3.2rem; }
.template-index .utility-bar__grid,
.template-index .announcement-bar,
.template-index .announcement-bar-slider { min-height: 3.2rem; }
.template-index .announcement-bar__message { font-size: 1.1rem; line-height: 1.2; letter-spacing: 0; text-transform: uppercase; }
.template-index .shopify-section-group-header-group.section-header,
.template-index .section-header,
.template-index .header-wrapper,
.template-index .header { min-height: 6.1rem; }
.template-index .header { padding-top: .8rem; padding-bottom: .8rem; }
@media screen and (min-width: 990px) {
  .header__inline-menu > .list-menu > li:nth-child(n + 4) { display: none; }
  .header__inline-menu > .list-menu { column-gap: 2.4rem; }
  .header__menu-item { padding-inline: 0; }
}

.template-index .momo-split-hero { height: 80.7rem; min-height: 80.7rem; }
.template-index .momo-split-hero__copy,
.template-index .momo-split-hero__media { height: 80.7rem; min-height: 80.7rem; }
.template-index .momo-split-hero__copy { padding: 3.2rem; }
.template-index .momo-split-hero__copy-inner { width: min(100%, 36rem); }
.template-index .momo-split-hero h1 { font-size: 5.7rem; font-weight: 500; line-height: 1.1; letter-spacing: 0; }
.template-index .momo-split-hero__media > img,
.template-index .momo-split-hero__media > .placeholder-svg { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.template-index .momo-split-hero__overlay { inset: 0; display: flex; align-items: center; flex-direction: column; justify-content: center; padding: 3.2rem; }
.template-index .momo-split-hero__overlay h2 { max-width: 55rem; font-size: 7.4rem; font-style: italic; font-weight: 500; line-height: 1; transform: rotate(-8deg); }
.template-index .momo-split-hero__overlay p { margin-top: 4.8rem; }
.template-index .momo-split-hero__button { min-width: 19.2rem; min-height: 5.1rem; margin-top: 3.2rem; padding-inline: 3.2rem; font-size: 1.2rem; letter-spacing: 0; }
.template-index .momo-split-hero__button--light { margin-top: 3.6rem; }

.template-index .momo-usp { height: 8.8rem; overflow: hidden; }
.template-index .momo-usp__inner { min-height: 8.8rem; padding-inline: 3.2rem; }
.template-index .momo-usp__item { padding: 3.2rem 1rem; }
.template-index .momo-usp__item strong { font-size: 1.6rem; line-height: 2.32rem; }

.template-index .momo-product-tabs { height: 68.923rem; overflow: hidden; padding-top: 8.8rem !important; padding-bottom: 8.8rem !important; }
.template-index .momo-product-tabs > .page-width { max-width: none; padding-inline: 0; }
.template-index .momo-product-tabs__header { margin-bottom: 3.2rem; }
.template-index .momo-product-tabs__header { height: 3.08rem; padding-inline: 3.2rem; }
.template-index .momo-product-tabs__tablist button { padding: 0; font-size: 2.8rem; line-height: 3.08rem; }
.template-index .momo-product-tabs__controls { height: 3.08rem; }
.template-index .momo-product-tabs { position: relative; }
.template-index .momo-product-tabs__controls .momo-carousel-buttons { display: flex; position: absolute; z-index: 2; top: calc(50% - 3.6rem); right: 2.4rem; left: 2.4rem; justify-content: space-between; transform: translateY(-50%); pointer-events: none; }
.template-index .momo-product-tabs__controls .momo-carousel-buttons button { pointer-events: auto; }
.template-index .momo-product-tabs__controls .momo-carousel-buttons button:first-child svg { transform: rotate(90deg); }
.template-index .momo-product-tabs__controls .momo-carousel-buttons button:last-child svg { transform: rotate(-90deg); }
.template-index .momo-product-tabs__rail { height: 45.044rem; }
.template-index .momo-product-tabs__slide { height: 45.044rem; flex-basis: calc(20% - 1.12rem); overflow: hidden; }

.template-index .momo-editorial { height: 90rem; overflow: hidden; padding: 0 !important; background: #1e1c1a; }
.template-index .momo-editorial > .page-width { width: 100%; max-width: none; height: 100%; padding: 0; }
.template-index .momo-editorial .momo-section-heading { display: none; }
.template-index .momo-editorial__grid { height: 100%; gap: 0; }
.template-index .momo-editorial__item { position: relative; height: 100%; overflow: hidden; background: #1e1c1a; }
.template-index .momo-editorial__media { position: absolute; inset: 0; aspect-ratio: auto; }
.template-index .momo-editorial__media::after,
.template-index .momo-promos__item::after { position: absolute; inset: 0; background: rgba(0, 0, 0, .12); content: ''; }
.template-index .momo-editorial__content { position: absolute; z-index: 1; inset: 0; display: flex; align-items: center; flex-direction: column; justify-content: center; padding: 3.2rem; color: #fff; text-align: center; }
.template-index .momo-editorial__content h3 { margin: 0; color: #fff; font-size: 5.7rem; line-height: 1.1; }
.template-index .momo-editorial__content h3 { font-family: var(--font-heading-family); font-weight: 400; }
.template-index .momo-editorial__content .momo-text-link { display: inline-flex; min-width: 17.2rem; min-height: 5.1rem; align-items: center; justify-content: center; margin-top: 3.2rem; padding: 0 2.4rem; border: 0; background: #fff; color: #1e1c1a; font-size: 1.2rem; text-transform: uppercase; }

.template-index .momo-category-carousel { height: 62.283rem; padding: 8.8rem 0; }
.template-index .momo-category-carousel > .page-width { max-width: none; padding-inline: 0; }
.template-index .momo-category-carousel__header { height: 3.08rem; margin-bottom: 3.2rem; padding-inline: 3.2rem; }
.template-index .momo-category-carousel__header h2 { font-size: 2.8rem; }
.template-index .momo-category-carousel__eyebrow { display: none; }
.template-index .momo-category-carousel__track { height: 38.403rem; gap: .4rem; }
.template-index .momo-category-carousel__slide { display: grid; height: 38.403rem; flex-basis: calc(20% - 1.28rem); grid-template-rows: 31.375rem 5.428rem; gap: 1.6rem; overflow: hidden; }
.template-index .momo-category-carousel__image { height: 31.375rem; aspect-ratio: auto; }
.template-index .momo-category-carousel__content { height: 5.428rem; padding: 0 .8rem; }

.template-index .momo-collection-index { height: 29.039rem; overflow: hidden; padding: 8.8rem 3.2rem; }
.template-index .momo-collection-index__eyebrow { display: none; }
.template-index .momo-collection-index__links { display: flex; width: 108rem; max-width: 100%; min-height: 11.439rem; align-content: flex-start; justify-content: center; column-gap: 3.2rem; row-gap: 1.44rem; flex-wrap: wrap; }
.template-index .momo-collection-index__link,
.template-index .momo-collection-index__link:nth-child(5),
.template-index .momo-collection-index__link:nth-child(6) { grid-column: auto; padding-right: 1.12rem; font-size: 4rem; line-height: 5rem; }

.momo-lifestyle { height: 78.9rem; overflow: hidden; padding-top: 6.4rem; background: #fff; }
.momo-lifestyle__header { display: flex; max-width: none; align-items: center; justify-content: space-between; margin-bottom: 4.8rem; padding-inline: 3.2rem; }
.momo-lifestyle__header h2 { margin: 0; font-size: 2.8rem; line-height: 1.1; }
.momo-lifestyle__controls { display: flex; align-items: center; gap: 1rem; font-size: 1.2rem; }
.momo-lifestyle__controls button { display: grid; width: 3.8rem; height: 3.8rem; place-items: center; padding: 0; border: 1px solid #dedede; background: #fff; }
.momo-lifestyle__controls button:first-child svg { transform: rotate(180deg); }
.momo-lifestyle__controls button:disabled { opacity: .35; }
.momo-lifestyle__rail { display: flex; gap: 25.2rem; overflow-x: auto; padding: 0 3.2rem; scroll-snap-type: x mandatory; scrollbar-width: none; }
.momo-lifestyle__rail::-webkit-scrollbar { display: none; }
.momo-lifestyle__slide { flex: 0 0 25rem; scroll-snap-align: start; }
.momo-lifestyle__media { position: relative; display: block; width: 25rem; height: 43.5rem; overflow: hidden; background: #f2f2f2; color: #1e1c1a; }
.momo-lifestyle__media img,
.momo-lifestyle__media svg { width: 100%; height: 100%; object-fit: cover; }
.momo-lifestyle__media span { position: absolute; top: 0; left: 0; padding: .4rem .8rem; background: rgba(255, 255, 255, .85); font-size: 1.1rem; }
.momo-lifestyle__cta { max-width: none; margin-top: 4.8rem; padding-inline: 3.2rem; text-align: center; }
.momo-lifestyle__cta a { display: inline-flex; min-width: 24rem; min-height: 5.1rem; align-items: center; justify-content: center; background: #1e1c1a; color: #fff; font-size: 1.2rem; text-decoration: none; text-transform: uppercase; }

.momo-promos { display: grid; height: 113.3rem; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); background: #1e1c1a; }
.momo-promos__item { position: relative; min-width: 0; overflow: hidden; border: 1px solid rgba(255, 255, 255, .82); background: #1e1c1a; }
.momo-promos__media { position: absolute; inset: 0; display: block; overflow: hidden; }
.momo-promos__media > img { display: block; width: 100%; height: 100%; object-fit: cover; }
.momo-promos__item::after { position: absolute; z-index: 0; inset: 0; background: rgba(0, 0, 0, .12); content: ''; pointer-events: none; }
.momo-promos__overlay { position: absolute; z-index: 1; inset: 0; display: flex; align-items: center; flex-direction: column; justify-content: center; padding: 3.2rem; color: #fff; text-align: center; }
.momo-promos__overlay h2 { margin: 0; color: #fff; font-size: 4.8rem; line-height: 1.1; }
.momo-promos__overlay a { display: inline-flex; min-width: 17rem; min-height: 5.1rem; align-items: center; justify-content: center; gap: 1.2rem; margin-top: 3.2rem; padding: 0 4.4rem; overflow: hidden; background: #fff; color: #1e1c1a; font-size: 1.2rem; text-decoration: none; text-transform: uppercase; }
.momo-promos__overlay a { transition: background-color .2s ease, color .2s ease; }
.momo-promos__overlay a:hover,
.momo-promos__overlay a:focus-visible { background: #1e1c1a; color: #fff; }
.momo-slide-label { display: block; height: 1.68rem; overflow: hidden; line-height: 1.68rem; }
.momo-slide-track { display: block; transition: transform .2s cubic-bezier(.25,.46,.45,.94); }
.momo-slide-track > span { display: block; height: 1.68rem; white-space: nowrap; }
.momo-slide-arrow { display: block; width: 1.6rem; flex: 0 0 1.6rem; font-size: 1.6rem; line-height: 1; }
.momo-promos__overlay a:hover .momo-slide-track,
.momo-promos__overlay a:focus-visible .momo-slide-track { transform: translateY(-50%); }

/* UGC/community gallery: same measured shell as the reference, with MOMO-owned media. */
.momo-ugc { position: relative; height: 78.884rem; min-height: 78.884rem; box-sizing: border-box; padding: 12rem 0 8.8rem; background: rgb(var(--momo-paper)); overflow: hidden; }
.momo-ugc__header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.6rem; }
.momo-ugc__header h2 { margin: 0; font-size: 2.8rem; line-height: 1.1; }
.momo-ugc__nav { display: flex; align-items: center; gap: .8rem; }
.momo-ugc__nav button { display: grid; width: 2.4rem; height: 2.4rem; place-items: center; padding: 0; border: 0; background: transparent; color: rgb(var(--momo-ink)); font: inherit; font-size: 2.2rem; line-height: 1; cursor: pointer; }
.momo-ugc__nav button:disabled { opacity: .35; cursor: not-allowed; }
.momo-ugc__pager { color: rgb(var(--momo-muted)); font-size: 1.2rem; }
.momo-ugc__rail { display: flex; height: 46.725rem; gap: .1rem; overflow: hidden; padding-top: 1.6rem; scroll-behavior: smooth; }
.momo-ugc__card { width: 25rem; min-width: 25rem; height: 43.525rem; overflow: hidden; }
.momo-ugc__media { position: relative; width: 25rem; height: 43.525rem; overflow: hidden; background: rgb(var(--momo-soft)); }
.momo-ugc__media img, .momo-ugc__media svg { display: block; width: 100%; height: 100%; object-fit: cover; }
.momo-ugc__look { position: absolute; right: 1.2rem; bottom: 1.2rem; left: 1.2rem; min-height: 4rem; border: 0; background: rgb(var(--momo-paper)); color: rgb(var(--momo-ink)); font: inherit; font-size: 1.1rem; text-transform: uppercase; cursor: pointer; }
.momo-ugc__look:hover, .momo-ugc__look:focus-visible { background: rgb(var(--momo-ink)); color: rgb(var(--momo-paper)); }
.momo-ugc__meta { display: none; }
.momo-ugc__cta { margin-top: 1.6rem; text-align: center; }
.momo-ugc__cta a { display: inline-flex; min-width: 24rem; min-height: 5.1rem; align-items: center; justify-content: center; padding-inline: 2.4rem; background: rgb(var(--momo-ink)); color: rgb(var(--momo-paper)); font-size: 1.2rem; text-decoration: none; text-transform: uppercase; }
.momo-ugc-drawer[hidden] { display: none; }
.momo-ugc-drawer { position: fixed; z-index: 110; inset: 0; display: block; }
.momo-ugc-drawer__backdrop { position: absolute; inset: 0; background: rgba(var(--momo-ink), .35); }
.momo-ugc-drawer__dialog { position: absolute; top: 0; right: 0; bottom: 0; display: flex; width: min(52.5rem, 100vw); flex-direction: column; background: rgb(var(--momo-paper)); color: rgb(var(--momo-ink)); box-shadow: -1rem 0 4rem rgba(0, 0, 0, .08); }
.momo-ugc-drawer__header { display: flex; min-height: 6rem; align-items: center; justify-content: space-between; padding: 0 3.2rem; border-bottom: .1rem solid rgb(var(--momo-line)); }
.momo-ugc-drawer__header h2 { margin: 0; font-size: 2.2rem; }
.momo-ugc-drawer__header button { width: 3.2rem; height: 3.2rem; padding: 0; border: 0; background: transparent; font-size: 2.6rem; cursor: pointer; }
.momo-ugc-drawer__body { flex: 1 1 auto; overflow-y: auto; padding: 3.2rem; }
.momo-ugc-drawer__loading { margin: 0; color: rgb(var(--momo-muted)); }
.momo-ugc-drawer__eyebrow { margin: 0 0 1.6rem; color: rgb(var(--momo-muted)); font-size: 1.2rem; text-transform: uppercase; }
.momo-ugc-drawer__products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.6rem; margin-bottom: 4rem; }
.momo-ugc-drawer__products:empty::after { content: 'Select a community post to see MOMO products.'; grid-column: 1 / -1; color: rgb(var(--momo-muted)); }
.momo-ugc-drawer__browse { display: inline-flex; min-height: 4.8rem; align-items: center; padding-inline: 2.4rem; background: rgb(var(--momo-ink)); color: rgb(var(--momo-paper)); font-size: 1.2rem; text-decoration: none; text-transform: uppercase; }
@media screen and (max-width: 749px) {
  .momo-ugc { height: 67.244rem; min-height: 67.244rem; padding: 6.8rem 0 4.4rem; }
  .momo-ugc__header { margin-bottom: 2.4rem; padding-inline: 1.6rem; }
  .momo-ugc__header h2 { font-size: 1.9rem; }
  .momo-ugc__pager { font-size: 1.1rem; }
  .momo-ugc__rail { height: 43.525rem; gap: .2rem; padding-top: 0; overflow: hidden; }
  .momo-ugc__card, .momo-ugc__media { width: 25rem; min-width: 25rem; height: 43.525rem; }
  .momo-ugc__nav button { display: none; }
  .momo-ugc__cta { margin-top: 2.4rem; padding-inline: 1.6rem; }
  .momo-ugc__cta a { width: 100%; min-height: 4.68rem; }
  .momo-ugc-drawer__header { padding: 0 1.6rem; }
  .momo-ugc-drawer__body { padding: 2.4rem 1.6rem; }
}
@media screen and (min-width: 750px) and (max-width: 989px) {
  .momo-ugc { min-height: 69.534rem; padding-block: 6.4rem; }
  .momo-ugc__rail { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
html.momo-zoom-open { overflow: hidden; }
.gallery-zoom-dialog.is-open { position: fixed; z-index: 100; inset: 0; display: block; width: 100vw; height: 100vh; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; background: rgb(var(--momo-paper)); }

/* Template-level noo.ma geometry: pages, editorial, search, cart, policy and 404. */
.momo-page { padding-top: 0 !important; }
.momo-page__header { min-height: 17.3rem; padding-top: 4.6rem; padding-bottom: 3.4rem; }
.momo-page__eyebrow,
.momo-blog__eyebrow { margin: 0 0 2.2rem; font-size: 1rem; line-height: 1.2; text-transform: uppercase; }
.momo-page__header .main-page-title,
.momo-blog__header .title--primary { margin: 0; font-size: 3.5rem; line-height: 1.1; }
.momo-page__content { width: 100%; max-width: none; margin: 0; }
.momo-page__content > :not(figure):not(p:has(img)):not(div:has(> img)) { max-width: 74rem; margin-right: auto; margin-left: auto; }
.momo-page__content > p:not(:has(img)),
.momo-page__content > h2,
.momo-page__content > h3,
.momo-page__content > ul,
.momo-page__content > ol { padding-right: 3.2rem; padding-left: 3.2rem; }
.momo-page__content > p:has(img),
.momo-page__content > figure { margin: 0; }
.momo-page__content img { display: block; width: 100%; height: auto; border-radius: 0; }
.momo-page__content h2 { margin-top: 8rem; font-size: 3rem; line-height: 1.2; }
.momo-page__content h3 { margin-top: 5.6rem; font-size: 2.2rem; line-height: 1.25; }
.momo-page__content p { margin-top: 2.4rem; margin-bottom: 2.4rem; }
.momo-faq--content { padding-top: 0; }
.momo-faq--content .momo-page__content { max-width: 74rem; }
.momo-faq--content .momo-page__content h2 {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  margin: 0;
  padding: 2rem 3.2rem 2rem 0;
  border-top: .1rem solid rgb(var(--momo-line));
  font-size: 1.7rem;
  line-height: 1.35;
  font-style: normal;
}
.momo-faq--content .momo-page__content h2 > *:first-child { min-width: 0; width: 0; flex: 1 1 0; overflow-wrap: anywhere; word-break: break-word; white-space: normal; }
.momo-faq--content .momo-page__content h2::after { content: '+'; flex: 0 0 auto; font-style: normal; }
.momo-faq--content .momo-page__content h4 {
  margin: -0.2rem 0 0;
  padding: 0 3.2rem 2.4rem 0;
  color: rgb(var(--momo-muted));
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.momo-faq--content .momo-page__content h2 + h4 + p { display: none; }
.momo-faq--content .momo-page__content h2:last-of-type { border-bottom: .1rem solid rgb(var(--momo-line)); }
.momo-faq__items--content details { border-top: .1rem solid rgb(var(--momo-line)); }
.momo-faq__items--content details:last-child { border-bottom: .1rem solid rgb(var(--momo-line)); }
.momo-faq__items--content summary {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2rem;
  padding: 2rem 0;
  cursor: pointer;
  list-style: none;
  font-size: 1.7rem;
  font-style: normal;
  line-height: 1.35;
  overflow: hidden;
}
.momo-faq__items--content summary::-webkit-details-marker { display: none; }
.momo-faq__items--content summary > :first-child { display: block; min-width: 0; max-width: calc(100% - 4rem); flex: 0 1 calc(100% - 4rem); overflow-wrap: anywhere; word-break: break-word; white-space: normal; }
.momo-faq__items--content .momo-faq__icon { width: 2rem; flex: 0 0 2rem; margin-left: auto; text-align: center; }
.momo-faq__items--content .momo-faq__icon::before { content: '+'; }
.momo-faq__items--content details[open] .momo-faq__icon::before { content: '\2212'; }
.momo-faq__items--content .momo-faq__answer { padding: 0 3.2rem 2.4rem 0; color: rgb(var(--momo-muted)); font-size: 1.5rem; line-height: 1.6; }
.momo-about--content .momo-page__content { max-width: none; }
.momo-about--content .momo-page__content,
.momo-about--content .momo-page__content > * { box-sizing: border-box; max-width: 100%; overflow-wrap: anywhere; }
.momo-about--content .momo-page__content > p:not(:has(img)),
.momo-about--content .momo-page__content > h2,
.momo-about--content .momo-page__content > h3 { max-width: 59rem; margin-right: auto; margin-left: auto; padding-right: 3.2rem; padding-left: 3.2rem; }
.momo-about--content .momo-page__content > p:has(img),
.momo-about--content .momo-page__content > figure { margin: 0; }
.momo-about--content .momo-page__content > p:has(img) img,
.momo-about--content .momo-page__content > figure img { width: 100%; }

@media screen and (min-width: 750px) {
  .template-page .momo-page--faq-content .momo-page__header {
    padding-top: 4rem !important;
    padding-bottom: 2.4rem !important;
  }
  .template-page .momo-page--faq-content .momo-page__header .momo-page__eyebrow { display: none !important; }
  .template-page .momo-page--faq-content .momo-page__header h1 {
    font-size: 5.7rem !important;
    line-height: 1.21 !important;
    font-weight: 500;
  }
  .template-page .momo-page--about-content .momo-page__header h1 {
    font-size: 4.8rem !important;
    line-height: 1 !important;
  }
}

/* 2026-08-22 header parity lock: caret, logo, utility labels and location drawer. */
@media screen and (min-width: 990px) {
  .header__inline-menu details > summary.header__menu-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
  }
  .header__inline-menu details > summary.header__menu-item .icon-caret {
    position: static !important;
    flex: 0 0 10px !important;
    width: 10px !important;
    height: 6px !important;
    margin: 0 !important;
    transform: none !important;
  }
  .header > .header__heading,
  .header > .header__heading-link,
  .header__heading-link .header__heading-logo-wrapper {
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
    flex: 0 0 auto !important;
  }
  .header__heading-logo-wrapper img,
  .header__heading-logo {
    display: block !important;
    width: 9.5rem !important;
    max-width: none !important;
    height: 1.6rem !important;
    object-fit: contain !important;
    object-position: left center !important;
  }
  .header > .header__icons { gap: 1.6rem !important; }
  .header__icons .header__icon--account,
  .header__icons .wishlist-hero-header-link,
  .header__icons .header__icon--cart {
    display: inline-flex !important;
    width: auto !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    color: rgb(var(--momo-ink)) !important;
    font-size: 1.3rem !important;
    line-height: 1.6 !important;
    text-decoration: none !important;
    transition: color .16s ease, opacity .16s ease !important;
  }
  .header__icons .header__icon--account::after,
  .header__icons .wishlist-hero-header-link::after,
  .header__icons .header__icon--cart::after {
    display: inline !important;
    margin: 0 !important;
    font: inherit !important;
    line-height: inherit !important;
  }
  .header__icons .header__icon--account:hover,
  .header__icons .wishlist-hero-header-link:hover,
  .header__icons .header__icon--cart:hover,
  .header__icons .header__icon--account:focus-visible,
  .header__icons .wishlist-hero-header-link:focus-visible,
  .header__icons .header__icon--cart:focus-visible {
    color: rgb(var(--momo-ink)) !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
  }
  .header__icons .header__icon--account .svg-wrapper,
  .header__icons .wishlist-hero-header-link .svg-wrapper,
  .header__icons .header__icon--cart .svg-wrapper { display: none !important; }
}

@media screen and (max-width: 749px) {
  .momo-localization-panel {
    width: 100vw !important;
    max-width: none !important;
  }
  .momo-localization-form { grid-template-rows: 58px minmax(0, 1fr) auto !important; }
  .momo-localization-panel__header {
    min-height: 58px !important;
    padding: 0 27px !important;
    border-bottom: 1px solid rgb(var(--momo-line)) !important;
  }
  .momo-localization-panel__header h2 { font-size: 16px !important; line-height: 19px !important; }
  .momo-localization-panel__close { width: 24px !important; height: 24px !important; }
  .momo-localization-panel__body { padding: 28px 27px 0 !important; }
  .momo-localization-panel__body > p {
    max-width: 455px !important;
    margin: 0 0 26px !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
  }
  .momo-localization-field {
    min-height: 48px !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
    font-size: 14px !important;
  }
  .momo-localization-field__value { min-width: 0 !important; }
  .momo-localization-choice {
    min-height: 48px !important;
    justify-content: space-between !important;
    padding: 0 !important;
    text-align: left !important;
    font-size: 14px !important;
  }
  .momo-localization-choice > span:first-child { overflow: visible !important; text-overflow: clip !important; }
  .momo-localization-field[data-momo-location-field='country'] .momo-localization-choice,
  .momo-localization-field[data-momo-location-field='language'] .momo-localization-choice {
    border: 0 !important;
    border-bottom: 1px solid rgb(var(--momo-line)) !important;
  }
  .momo-localization-field > span:first-child { display: none !important; }
  .momo-localization-choice > span:first-child::before { content: 'Location & currency: ' !important; }
  .momo-localization-field[data-momo-location-field='language'] .momo-localization-choice > span:first-child::before { content: 'Language: ' !important; }
  .momo-localization-panel__footer { display: none !important; }
}

/* 2026-08-22 screenshot-state lock: the mobile location sheet uses two
   labelled rows with bordered value controls, not a combined pseudo-label. */
@media screen and (max-width: 749px) {
  .momo-localization-form { grid-template-rows: 53px minmax(0, 1fr) auto !important; }
  .momo-localization-panel__header {
    min-height: 53px !important;
    padding: 0 30px !important;
  }
  .momo-localization-panel__header h2 { font-size: 16px !important; line-height: 20px !important; }
  .momo-localization-panel__body { padding: 28px 30px 0 !important; }
  .momo-localization-panel__body > p {
    max-width: none !important;
    margin: 0 0 22px !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
  }
  .momo-localization-field {
    display: grid !important;
    min-height: 52px !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 16px !important;
    border-bottom: 1px solid rgb(var(--momo-line)) !important;
    font-size: 14px !important;
  }
  .momo-localization-field > span:first-child {
    display: block !important;
    white-space: nowrap !important;
  }
  .momo-localization-field__value { min-width: 0 !important; }
  .momo-localization-choice,
  .momo-localization-field[data-momo-location-field='country'] .momo-localization-choice,
  .momo-localization-field[data-momo-location-field='language'] .momo-localization-choice {
    display: flex !important;
    min-height: 52px !important;
    width: 100% !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 14px !important;
    padding: 0 12px !important;
    border: 2px solid rgb(var(--momo-ink)) !important;
    background: transparent !important;
    font-size: 14px !important;
    text-align: right !important;
  }
  .momo-localization-choice > span:first-child::before { content: none !important; }
  .momo-localization-choice > span:first-child { overflow: hidden !important; text-overflow: ellipsis !important; }
  .momo-localization-choice > span:last-child { flex: 0 0 auto !important; font-size: 18px !important; }
  .momo-localization-field[data-momo-location-field='country'],
  .momo-localization-field[data-momo-location-field='language'] { min-height: 52px !important; padding: 0 !important; border-bottom: 1px solid rgb(var(--momo-line)) !important; }
  .momo-localization-field.is-open { display: block !important; padding: 0 0 14px !important; }
  .momo-localization-field.is-open > span:first-child { display: block !important; padding: 6px 0 10px !important; }
  .momo-localization-field.is-open .momo-localization-choice { min-height: 30px !important; border: 0 !important; padding: 0 !important; justify-content: space-between !important; text-align: left !important; }
  .momo-localization-field.is-open .momo-localization-choice > span:last-child { transform: rotate(90deg) !important; }
  .momo-localization-options { margin-top: 8px !important; }
  .momo-localization-search input { min-height: 42px !important; }
  .momo-localization-option { min-height: 40px !important; padding: 7px 0 !important; }

  .template-index .momo-category-carousel__track { gap: 2px !important; }
  .template-index .momo-category-carousel__slide {
    width: 67.4vw !important;
    flex: 0 0 67.4vw !important;
  }
  .template-index .momo-category-carousel__image { aspect-ratio: 4 / 5 !important; }
}

/* FINAL ROUTE-SCOPED ANNOUNCEMENT LOCK (2026-08-22): noo.ma home keeps
   the 32px sale strip; collection/search/product routes intentionally omit it. */
:root { --momo-announcement: 0px !important; }
body.template-index { --momo-announcement: 32px !important; }
body.template-index .announcement-bar-section {
  display: block !important;
  height: 32px !important;
  min-height: 32px !important;
  visibility: visible !important;
  overflow: hidden !important;
}
body.template-index .announcement-bar,
body.template-index .announcement-bar-slider { display: flex !important; height: 32px !important; min-height: 32px !important; }
body.template-index .announcement-bar__message { min-height: 0 !important; font-size: 11px !important; line-height: 32px !important; }
body:not(.template-index) .announcement-bar-section { display: none !important; height: 0 !important; min-height: 0 !important; }

.main-blog { padding-top: 0 !important; }
.momo-blog__header { min-height: 17.3rem; padding-top: 4.6rem; padding-bottom: 3.4rem; }
.momo-blog-feature__media { display: block; width: 100%; aspect-ratio: 1.806 / 1; overflow: hidden; background: rgb(var(--momo-soft)); }
.momo-blog-feature__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.momo-blog-feature__media:hover img { transform: scale(1.01); }
.momo-blog-feature__content { min-height: 41rem; padding-top: 4.4rem; padding-bottom: 5.4rem; }
.momo-blog-feature__content h2 { max-width: 92rem; margin: 0 0 3.4rem; font-size: 3.1rem; line-height: 1.2; }
.momo-blog-feature__content h2 a,
.momo-blog-card h2 a { color: inherit; text-decoration: none; }
.momo-blog-card__tag { margin: 0 0 2rem; font-size: 1rem; text-transform: uppercase; }
.momo-blog-card__date { margin: 0 0 2.4rem; color: rgb(var(--momo-muted)); font-size: 1.3rem; }
.momo-blog-card__excerpt { max-width: 58rem; margin-bottom: 3.2rem; font-size: 1.5rem; line-height: 1.55; }
.momo-blog-feature__content .button { min-width: 16.6rem; }
.momo-blog-tags { display: flex; min-height: 12.6rem; align-items: center; gap: 2.8rem; overflow-x: auto; border-top: .1rem solid rgb(var(--momo-line)); border-bottom: .1rem solid rgb(var(--momo-line)); white-space: nowrap; scrollbar-width: none; }
.momo-blog-tags::-webkit-scrollbar { display: none; }
.momo-blog-tags a { color: rgb(var(--momo-muted)); font-size: 1.4rem; text-decoration: none; }
.momo-blog-tags a.is-active { color: rgb(var(--momo-ink)); text-decoration: underline; text-underline-offset: .5rem; }
.momo-blog-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10rem .2rem; padding-top: 3.2rem; padding-bottom: 10rem; }
.momo-blog-card { min-width: 0; }
.momo-blog-card__media { display: block; width: 100%; aspect-ratio: 1.806 / 1; overflow: hidden; background: rgb(var(--momo-soft)); }
.momo-blog-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.momo-blog-card__media:hover img { transform: scale(1.01); }
.momo-blog-card__content { min-height: 26rem; padding: 3rem 3.2rem; }
.momo-blog-card__content h2 { margin: 0 0 2rem; font-size: 2.2rem; line-height: 1.3; }

.template-search { padding-top: 0 !important; }
.template-search__header { min-height: 22rem; margin-bottom: 0 !important; padding-top: 4.4rem; padding-bottom: 3.2rem; text-align: left; }
.template-search__header .h2 { margin: 0 0 3.2rem; font-size: 4rem; line-height: 1.2; text-align: left; }
.template-search__search { display: none; }
.momo-search-products { margin: 0; font-size: 4.8rem; line-height: 1; }
.template-search__results.page-width { max-width: none; padding-inline: 0; }
.template-search #product-grid { row-gap: 0; }
.template-search .product-grid { column-gap: .2rem; row-gap: 0; }
.template-search .product-grid .grid__item { margin-bottom: 0; }
.template-search #product-grid .card__media .media { aspect-ratio: 4 / 5; }
.template-search #product-grid .card__media img { object-fit: contain; }
.template-search .card--standard > .card__content { min-height: 16.4rem; padding: 1.6rem; }

.template-cart .cart.is-empty { min-height: 45rem; padding-top: 12rem; padding-bottom: 8rem; }
.template-cart .cart__empty-text { margin-bottom: 2.4rem; font-size: 2rem; }
.template-cart .cart__warnings .button { margin-top: 2.8rem; }
.template-cart .cart__footer-wrapper:has(.is-empty) { display: none; }
.template-cart .featured-collection { padding-top: 0; }
.template-cart .featured-collection .page-width { max-width: none; padding-inline: 0; }
.template-cart .featured-collection .title-wrapper-with-link { min-height: 12rem; align-items: center; margin: 0; padding: 0 3.2rem; }
.template-cart .featured-collection .title { font-size: 2rem; }
.template-cart .featured-collection .slider-component-full-width { padding-inline: 0; }

.shopify-policy__container { max-width: 98rem; padding: 6.4rem 3.2rem 10rem; }
.shopify-policy__title { text-align: left; }
.shopify-policy__title h1 { margin-bottom: 5.6rem; font-size: 3.5rem; line-height: 1.15; }
.shopify-policy__body h2 { margin-top: 5.6rem; font-size: 2.4rem; }
.shopify-policy__body h3 { margin-top: 4rem; font-size: 1.9rem; }
.shopify-policy__body p,
.shopify-policy__body li { font-size: 1.5rem; line-height: 1.65; }
.shopify-policy__body table { display: block; max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
.shopify-policy__body a { overflow-wrap: anywhere; }
@media screen and (min-width: 750px) {
  .shopify-policy__container { max-width: 70.9rem !important; }
}

.momo-404 { display: grid; min-height: 58rem; place-content: center; padding-top: 8rem; padding-bottom: 10rem; }
.momo-404 > p { order: 2; margin: 2rem 0 3rem; font-size: 1.5rem; }
.momo-404 .title { order: 1; margin: 0; font-size: clamp(6rem, 11vw, 15rem); line-height: .9; }
.momo-404 .button { order: 3; justify-self: center; }

.article-template { display: grid; grid-template-columns: 37.7% minmax(0, 62.3%); }
.article-template__hero-container { grid-column: 2; grid-row: 1; width: 100%; max-width: none !important; margin: 0 !important; }
.article-template__hero-container .media { height: min(84rem, calc(100svh - var(--momo-header) - var(--momo-announcement))); min-height: 62rem; padding: 0 !important; }
.article-template__hero-container img { width: 100%; height: 100%; object-fit: cover; }
.article-template > header { grid-column: 1; grid-row: 1; width: 100%; max-width: none; margin: 0; padding: 5.2rem 3.2rem; }
.article-template__title { margin: 0 0 4rem; font-size: 3.8rem; line-height: 1.18; }
.article-template > header .caption-with-letter-spacing { display: block; margin-top: 1.5rem; font-size: 1rem; }
.article-template__social-sharing { grid-column: 1; grid-row: 1; align-self: end; width: 100%; max-width: none; padding: 3.2rem; }
.article-template__content { grid-column: 1 / -1; width: 100%; max-width: 140rem; margin: 0 auto !important; padding: 8rem 3.2rem; }
.article-template__content > p,
.article-template__content > h2,
.article-template__content > h3,
.article-template__content > ul,
.article-template__content > ol { max-width: 76rem; margin-right: auto; margin-left: auto; }
.article-template__content h2 { margin-top: 7rem; font-size: 2.9rem; line-height: 1.25; }
.article-template__content h3 { margin-top: 5.6rem; font-size: 2.3rem; line-height: 1.3; }
.article-template__content img { border-radius: 0; }
.article-template__back,
.article-template__comment-wrapper { grid-column: 1 / -1; }

.template-collection .collection-hero__breadcrumb { height: 7.28rem; min-height: 7.28rem; align-items: center; margin: 0; padding-top: 0; padding-bottom: 0; }
.template-collection .collection-hero__inner { min-height: 6.72rem; padding-top: 0; padding-bottom: 0; }
.template-collection .collection-hero__text-wrapper { display: contents; }
.template-collection .collection-hero__title { margin: 0; font-size: 4rem; line-height: 1.2; }
.template-collection .collection-hero__description { margin: 0; font-size: 1.6rem; line-height: 1.6; }
.template-collection .momo-collection-nav { height: 5.059rem; overflow: hidden; border-bottom: .1rem solid rgb(var(--momo-line)); }
.template-collection .momo-collection-nav__track { display: flex; height: 5.059rem; align-items: flex-start; gap: 1.6rem; overflow-x: auto; scrollbar-width: none; }
.template-collection .momo-collection-nav__track::-webkit-scrollbar { display: none; }
.template-collection .momo-collection-nav__track a { height: 3.459rem; flex: 0 0 auto; margin-bottom: -.1rem; padding-top: .8rem; border-bottom: .1rem solid transparent; color: rgb(var(--momo-ink)); font-size: 1.6rem; line-height: 2.56rem; text-decoration: none; white-space: nowrap; }
.template-collection .momo-collection-nav__track a[aria-current='page'] { border-bottom-color: rgb(var(--momo-ink)); }
.template-collection .momo-collection-toolbar { position: sticky; z-index: 9; top: 0; min-height: 5.6rem; height: 5.6rem; padding-top: 0; padding-bottom: 0; border-top: .1rem solid rgb(var(--momo-line)); border-bottom: .1rem solid rgb(var(--momo-line)); background: #fff; }
.template-collection .momo-collection-toolbar .facets-wrapper,
.template-collection .momo-collection-toolbar #main-collection-filters,
.template-collection .momo-collection-toolbar .facets-container,
.template-collection .momo-collection-toolbar facet-filters-form,
.template-collection .momo-collection-toolbar .facets__form { min-height: 5.6rem; height: 5.6rem; }
.template-collection #product-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0 .2rem; margin: 0; padding: 0; }
.template-collection #product-grid .grid__item { width: auto; max-width: none; margin: 0; padding: 0; }
.template-collection #product-grid .card__media .media { aspect-ratio: 4 / 5; }
.template-collection #product-grid .card--standard > .card__content { min-height: 18.8rem; padding: 1.6rem; }
.template-collection #product-grid .card__heading { font-size: 1.6rem; line-height: 1.1; }
.template-collection #product-grid .card-information .price { font-size: 1.4rem; }
.template-collection .momo-density { display: flex !important; }
.template-collection #product-grid.momo-density-enabled { display: grid; grid-template-columns: repeat(var(--momo-columns), minmax(0, 1fr)); }
.template-collection .momo-infinite-sentinel { min-height: 6rem; padding: 2rem; color: rgb(var(--momo-muted)); font-size: 1.2rem; text-align: center; }
@media screen and (min-width: 990px) and (max-width: 1364px) {
  .template-collection #product-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media screen and (min-width: 750px) and (max-width: 989px) {
  .template-collection .collection-hero__breadcrumb { height: 7.28rem; min-height: 7.28rem; }
  .template-collection .collection-hero__inner { min-height: 14.4rem; padding-inline: 3.2rem; }
  .template-collection .collection-hero__title { font-size: 2.8rem; }
  .template-collection #product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .template-collection #product-grid.momo-density-enabled { grid-template-columns: repeat(var(--momo-columns), minmax(0, 1fr)); }
  .template-collection .momo-collection-toolbar { padding-inline: 3.2rem; }
  .template-collection .momo-density button { width: 3.2rem; min-width: 3.2rem; }
}

.template-index .momo-footer { min-height: 90.2rem; }

@media screen and (max-width: 749px) {
  .momo-page__header,
  .momo-blog__header { min-height: 14rem; padding: 3.2rem 1.6rem; }
  .momo-page__eyebrow,
  .momo-blog__eyebrow { margin-bottom: 1.8rem; }
  .momo-page__header .main-page-title,
  .momo-blog__header .title--primary { font-size: 2.8rem; }
  .momo-page__content > :not(figure):not(p:has(img)):not(div:has(> img)),
  .momo-page__content > p:not(:has(img)),
  .momo-page__content > h2,
  .momo-page__content > h3,
  .momo-page__content > ul,
  .momo-page__content > ol { padding-right: 1.6rem; padding-left: 1.6rem; }
  .momo-page__content h2 { margin-top: 5.6rem; font-size: 2.5rem; }
  .momo-page__content h3 { margin-top: 4rem; font-size: 2rem; }
  .momo-faq--content .momo-page__content h2 { padding-right: 2.4rem; }
  .momo-faq--content .momo-page__content h4 { padding-right: 2.4rem; }
  .momo-about--content .momo-page__content > p:not(:has(img)),
  .momo-about--content .momo-page__content > h2,
  .momo-about--content .momo-page__content > h3 { padding-right: 1.6rem; padding-left: 1.6rem; }

  .template-collection .collection-hero__breadcrumb { height: 7.68rem; min-height: 7.68rem; padding-inline: 1.6rem; }
  .template-collection .collection-hero__inner { display: block; min-height: 12.48rem; padding: 0 1.6rem; }
  .template-collection .collection-hero__title { font-size: 2.8rem; line-height: 1.2; }
  .template-collection .collection-hero__description { display: -webkit-box; max-width: 100%; margin-top: 2.4rem; overflow: hidden; font-size: 1.6rem; line-height: 1.6; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .template-collection .momo-collection-toolbar { padding-inline: 1.6rem; }
  .template-collection .momo-collection-toolbar .facets__form { grid-template-columns: minmax(0, 1fr) auto; }
  .template-collection .momo-density button { width: 3.2rem; min-width: 3.2rem; min-height: 5.6rem; }
  .template-collection #product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 .2rem; }
  .template-collection #product-grid.momo-density-enabled { grid-template-columns: repeat(var(--momo-columns), minmax(0, 1fr)); }
  .template-collection #product-grid .card--standard > .card__content { min-height: 16.7rem; padding: 1.6rem; }

  .momo-blog-feature__media { height: auto; aspect-ratio: 1.806 / 1; }
  .momo-blog-feature__content { min-height: 35rem; padding: 3.2rem 1.6rem 4rem; }
  .momo-blog-feature__content h2 { margin-bottom: 2.8rem; font-size: 2.5rem; }
  .momo-blog-tags { min-height: 8.8rem; gap: 2.2rem; padding-inline: 1.6rem; }
  .momo-blog-grid { display: block; padding: 0; }
  .momo-blog-card { margin-bottom: 6.4rem; }
  .momo-blog-card__media { aspect-ratio: 1.806 / 1; }
  .momo-blog-card__content { min-height: 0; padding: 2.4rem 1.6rem; }
  .momo-blog-card__content h2 { font-size: 2.3rem; line-height: 1.2; }

  .template-search__header { min-height: 0; padding: 3.08rem 1.6rem 3.05rem; }
  .template-search__header .h2 { margin-bottom: 2.24rem; }
  .template-search__header .h2 { font-size: 2.8rem; }
  .momo-search-products { font-size: 4.4rem; line-height: 1; }
  .template-search .card--standard > .card__content { min-height: 14.2rem; padding: 1.2rem .8rem; }

  .template-cart .cart.is-empty { min-height: 38rem; padding: 9rem 1.6rem 6rem; }
  .template-cart .featured-collection .title-wrapper-with-link { min-height: 9.6rem; padding: 0 1.6rem; }
  .template-cart .featured-collection .title { font-size: 1.9rem; }

  .shopify-policy__container { padding: 4.8rem 1.6rem 7.2rem; }
  .shopify-policy__title h1 { margin-bottom: 4rem; font-size: 2.8rem; }
  .shopify-policy__body h2 { margin-top: 4rem; font-size: 2.2rem; }

  .momo-404 { min-height: 48rem; padding: 6.4rem 1.6rem 8rem; }
  .momo-404 .title { font-size: 7.2rem; }

  .article-template { display: block; }
  .article-template > header { padding: 3.2rem 1.6rem 4rem; }
  .article-template__title { margin-bottom: 2.8rem; font-size: 2.3rem; line-height: 1.2; }
  .article-template__hero-container .media { height: auto; min-height: 0; aspect-ratio: 1.806 / 1; }
  .article-template__social-sharing { display: none; }
  .article-template__content { padding: 5.6rem 1.6rem; }
  .article-template__content h2 { margin-top: 5.6rem; font-size: 2.5rem; }
  .article-template__content h3 { margin-top: 4rem; font-size: 2.1rem; }

  .template-index .page-width { padding-inline: 1.6rem; }
  .template-index .announcement-bar__message { font-size: .9rem; white-space: nowrap; }
  .template-index .announcement-bar .slider-button { display: none; }
  .template-index .header { height: 6.1rem; min-height: 6.1rem; padding: .8rem 1rem; }
  .template-index .header__heading-link .h2 { font-size: 2.4rem; }

  .template-index .momo-split-hero { height: 119.3rem; min-height: 119.3rem; }
  .template-index .momo-split-hero__copy,
  .template-index .momo-split-hero__media { width: 100%; }
  .template-index .momo-split-hero__copy { height: 44.2rem; min-height: 44.2rem; flex: 0 0 44.2rem; }
  .template-index .momo-split-hero__media { height: 75.1rem; min-height: 75.1rem; flex: 0 0 75.1rem; }
  .template-index .momo-split-hero__copy { padding: 4rem 2.4rem; }
  .template-index .momo-split-hero__media > img,
  .template-index .momo-split-hero__media > .placeholder-svg { position: absolute; inset: 0; height: 100%; }
  .template-index .momo-split-hero h1 { max-width: 31rem; margin-inline: auto; font-size: 3.8rem; line-height: 1.12; }
  .template-index .momo-split-hero__overlay { padding: 2.4rem; }
  .template-index .momo-split-hero__overlay h2 { max-width: 31rem; font-size: 5rem; }
  .template-index .momo-split-hero__overlay p { margin-top: 4rem; font-size: 1.1rem; }

  .template-index .momo-usp { height: 6.9rem; }
  .template-index .momo-usp__inner { display: flex; min-height: 6.9rem; gap: 3.2rem; overflow-x: auto; padding: 0 1.6rem; scrollbar-width: none; }
  .template-index .momo-usp__item { min-width: max-content; min-height: 6.9rem; flex: 0 0 auto; justify-content: center; padding: 0; border: 0; }
  .template-index .momo-usp__item:last-child:nth-child(odd) { display: none; }
  .template-index .momo-usp__item strong { font-size: 1.1rem; white-space: nowrap; }

  .template-index .momo-product-tabs { height: 59.723rem; padding-top: 5.6rem !important; padding-bottom: 5.6rem !important; }
  .template-index .momo-product-tabs > .page-width { padding-inline: 1.6rem; }
  .template-index .momo-product-tabs__rail { height: 43.323rem; }
  .template-index .momo-product-tabs__slide { height: 43.323rem; flex-basis: 64%; }
  .template-index .momo-product-tabs__tablist button { font-size: 1.9rem; }
  .template-index .momo-carousel-buttons { display: none; }
  .template-index .momo-product-tabs__panel > .momo-text-link { display: none; }

  .template-index .momo-editorial { height: 150.6rem; }
  .template-index .momo-editorial__grid { display: block; }
  .template-index .momo-editorial__item { height: 75.3rem; }
  .template-index .momo-editorial__content h3 { max-width: 32rem; font-size: 3.8rem; }

  .template-index .momo-category-carousel { height: 258.7rem; padding: 5.6rem 0 0; overflow: hidden; }
  .template-index .momo-category-carousel > .page-width { padding: 0; }
  .template-index .momo-category-carousel__header { margin-bottom: 2.4rem; padding-inline: 1.6rem; }
  .template-index .momo-category-carousel__header h2 { font-size: 1.9rem; }
  .template-index .momo-category-carousel__controls { display: none; }
  .template-index .momo-category-carousel__track { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; overflow: hidden; }
  .template-index .momo-category-carousel__slide { min-width: 0; }
  .template-index .momo-category-carousel__image { aspect-ratio: 2 / 3; }
  .template-index .momo-category-carousel__content { min-height: 5.8rem; padding: 1rem .8rem 1.2rem; }
  .template-index .momo-category-carousel__content h3 { margin-bottom: .4rem; font-size: 1.4rem; }
  .template-index .momo-category-carousel__content .momo-text-link { font-size: 1.1rem; }

  .template-index .momo-collection-index { height: 53rem; padding: 4.8rem 1.6rem; }
  .template-index .momo-collection-index__links { display: block; }
  .template-index .momo-collection-index__link { display: block; min-height: 7rem; padding: 1.4rem 3rem 1.4rem 0; font-size: 3.2rem; line-height: 1.2; white-space: nowrap; }
  .template-index .momo-collection-index__link::after { right: .4rem; }

  .momo-lifestyle { height: 67.2rem; padding-top: 5.6rem; }
  .momo-lifestyle__header { margin-bottom: 2.4rem; padding-inline: 1.6rem; }
  .momo-lifestyle__header h2 { font-size: 1.9rem; }
  .momo-lifestyle__controls { display: none; }
  .momo-lifestyle__rail { gap: .2rem; padding: 0; }
  .momo-lifestyle__slide,
  .momo-lifestyle__media { flex-basis: 25rem; width: 25rem; height: 43.5rem; }
  .momo-lifestyle__cta { margin-top: 2.4rem; padding-inline: 1.6rem; }
  .momo-lifestyle__cta a { width: 100%; min-height: 5.1rem; }

  .momo-promos { display: block; height: 157.6rem; }
  .momo-promos__item { height: 39.4rem; }
  .momo-promos__media > img { opacity: 1; }
  .momo-promos__overlay h2 { font-size: 3.2rem; }
  .template-index .momo-footer { min-height: 118.3rem; }
  .template-index .momo-footer__brand { font-size: 7.2rem; line-height: .9; }
}

/* 2026-08-20 measured component corrections for the draft parity pass. */
.momo-card-media-controls {
  right: auto;
  bottom: 0;
  left: 0;
  justify-content: flex-start;
  gap: 0;
}
.momo-card-media-controls button {
  width: 3.2rem;
  height: 3.2rem;
  background: rgb(var(--momo-paper));
}
/* Component parity overrides: header drawers, collection controls and interactive cards. */
.momo-localization-trigger {
  display: inline-flex;
  width: 8.22rem;
  height: 1.92rem;
  align-items: center;
  justify-content: flex-start;
  gap: .55rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgb(var(--momo-ink));
  font: inherit;
  font-size: 1.6rem;
  line-height: 1.92rem;
  cursor: pointer;
  white-space: nowrap;
}
.momo-localization-shell { position: fixed; z-index: 120; inset: 0; }
.momo-localization-shell[hidden] { display: none !important; }
.momo-localization-backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: rgba(231, 230, 230, .7);
  opacity: 0;
  transition: opacity .2s cubic-bezier(.25,.46,.45,.94);
}
.momo-localization-panel {
  position: absolute;
  top: 0;
  right: 0;
  width: min(100vw, 52.5rem);
  height: 100dvh;
  background: rgb(var(--momo-paper));
  outline: 0;
  transform: translateX(100%);
  transition: transform .2s cubic-bezier(.25,.46,.45,.94);
}
.momo-localization-shell.is-open .momo-localization-backdrop { opacity: 1; }
.momo-localization-shell.is-open .momo-localization-panel { transform: translateX(0); }
.momo-localization-form { display: grid; height: 100%; grid-template-rows: 6rem minmax(0, 1fr) 9.7rem; }
.momo-localization-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 3.2rem;
  border-bottom: .1rem solid rgb(var(--momo-line));
}
.momo-localization-panel__header h2 { margin: 0; font-size: 1.6rem; line-height: 1.9rem; }
.momo-localization-panel__close { display: grid; width: 2.4rem; height: 2.4rem; place-items: center; padding: 0; border: 0; background: transparent; cursor: pointer; }
.momo-localization-panel__close svg { width: 1.6rem; height: 1.6rem; }
.momo-localization-panel__body { padding: 2.8rem 3.2rem; }
.momo-localization-panel__body > p { max-width: 39rem; margin: 0 0 2.4rem; color: rgb(var(--momo-muted)); font-size: 1.4rem; line-height: 1.5; }
.momo-localization-field { display: grid; min-height: 5.2rem; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 1.6rem; border-bottom: .1rem solid rgb(var(--momo-line)); color: rgb(var(--momo-ink)); font-size: 1.4rem; }
.momo-localization-field__value { position: relative; min-width: 0; }
.momo-localization-field select { width: 100%; min-height: 5.1rem; padding: 0 2rem 0 0; border: 0; background: transparent; color: inherit; font: inherit; text-align: right; appearance: none; cursor: pointer; }
.momo-localization-field__value > span { position: absolute; top: 50%; right: 0; line-height: 1; pointer-events: none; transform: translateY(-50%); }
.momo-localization-panel__footer { display: flex; align-items: center; padding: 2.4rem 3.2rem; border-top: .1rem solid rgb(var(--momo-line)); }
.momo-localization-panel__footer .button { width: 100%; min-height: 4.8rem; margin: 0; }
body.momo-location-open { overflow: hidden; }

.template-index .momo-category-carousel__card { grid-row: 1 / -1; }
.template-index .momo-collection-index__links { display: grid; grid-template-columns: repeat(4, max-content); width: auto; max-width: 100%; justify-content: center; column-gap: 3.2rem; row-gap: 1.44rem; }
.template-index .momo-collection-index__link:nth-child(5) { grid-column: 2; }
.template-index .momo-collection-index__link:nth-child(6) { grid-column: 3; }

.template-collection .mobile-facets__main { display: flex; flex-direction: column; }
.template-collection .mobile-facets__details { border-bottom: .1rem solid rgb(var(--momo-line)); }
.template-collection .mobile-facets__summary { min-height: 6.4rem; padding: 0; }
.template-collection .mobile-facets__summary > div { display: flex; min-height: 6.4rem; align-items: center; justify-content: space-between; }
.template-collection .mobile-facets__submenu {
  position: static !important;
  width: 100% !important;
  height: auto !important;
  padding: 0 0 2.4rem !important;
  border: 0 !important;
  visibility: visible !important;
  transform: none !important;
}
.template-collection .mobile-facets__details:not([open]) > .mobile-facets__submenu { display: none; }
.template-collection .mobile-facets__close-button,
.template-collection .mobile-facets__details > .mobile-facets__submenu > .mobile-facets__footer { display: none !important; }
.template-collection .mobile-facets__list { padding: 0 !important; }
.template-collection .mobile-facets__label { min-height: 4rem; padding: .8rem 0; }
.template-collection .mobile-facets__details--sort { padding-bottom: 2.4rem; }

@media screen and (min-width: 990px) {
  .header__icons .desktop-localization-wrapper { width: 8.22rem; height: 1.92rem; }
  .template-collection #product-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .template-collection #product-grid .card__media .media,
  .template-collection #product-grid .card__inner { aspect-ratio: 4 / 5; }
}

@media screen and (max-width: 989px) {
  body.momo-location-open .desktop-localization-wrapper { display: block !important; }
  body.momo-location-open .desktop-localization-wrapper > .momo-localization-trigger { display: none; }
  .menu-drawer { width: min(calc(100vw - 2.2rem), 43.1rem); }
  .menu-drawer__navigation-container { display: flex; height: 100%; flex-direction: column; }
  .menu-drawer__navigation { flex: 1 1 auto; }
  .menu-drawer__utility-links { margin-top: auto; }
}

@media screen and (max-width: 749px) {
  .momo-localization-panel { width: calc(100vw - .7rem); }
  .momo-localization-panel__header { padding-inline: 3.2rem; }
  .momo-localization-panel__body { padding: 2.8rem 3.2rem; }
  .momo-localization-panel__footer { padding: 2.4rem 3.2rem; }
  .template-index .momo-collection-index__links { display: block; }
}
.momo-card-swatches { align-items: center; gap: .8rem; }
.momo-card-swatch { width: 1.6rem; height: 1.6rem; padding: 0; }
.momo-card-swatch__chip { width: 1.6rem; height: 1.6rem; }
.momo-card-swatches__more {
  display: inline-flex;
  min-height: 1.6rem;
  align-items: center;
  color: rgb(var(--momo-muted));
  font-size: 1.1rem;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}
.momo-card-swatches__more:hover,
.momo-card-swatches__more:focus-visible { color: rgb(var(--momo-ink)); text-decoration: underline; }

.template-index .momo-category-carousel__controls { gap: .8rem; }
.template-index .momo-category-carousel__controls button {
  width: 3.2rem;
  height: 3.2rem;
  border: 0;
}
.template-index .momo-category-carousel__controls button:first-child svg { transform: rotate(-90deg); }
.template-index .momo-category-carousel__controls button:last-child svg { transform: rotate(90deg); }
.template-index .momo-category-carousel__controls button:disabled { opacity: .35; }

.card__media .media img,
[data-momo-card-media] > img { object-fit: contain; object-position: 50% 50%; }

.template-index .momo-product-tabs__header { align-items: flex-end; }
.template-index .momo-product-tabs__controls { width: auto; margin-left: auto; }
.template-index .momo-product-tabs__view-all { white-space: nowrap; }

.template-collection .momo-density button {
  width: 3.2rem;
  min-width: 3.2rem;
  height: 3.2rem;
  min-height: 3.2rem;
}

.momo-collection-index__link > i { display: none; font-style: normal; }

/* FAQ disclosure parity: preserve native details semantics while matching the
   reference's quiet plus-to-minus motion and answer reveal. */
.momo-faq__items details > summary > span:last-child {
  display: inline-grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  font-size: 2rem;
  line-height: 1;
  transition: transform .2s ease;
}
.momo-faq__items details[open] > summary > span:last-child { transform: rotate(45deg); }
  .momo-faq__items details > .momo-faq__answer {
  animation: momo-faq-reveal .2s ease both;
}

/* Final component cascade. Keep all screenshot-state geometry in one layer so
   later Dawn component sheets cannot reintroduce the older mobile layouts. */
@media screen and (max-width: 749px) {
  .menu-drawer {
    left: 34px !important;
    width: calc(100vw - 34px) !important;
    max-width: none !important;
    box-shadow: -34px 0 0 rgb(247, 242, 204) !important;
  }
  .template-index .momo-product-tabs {
    height: auto !important;
    min-height: 0 !important;
    padding: 32px 0 44px !important;
  }
  .template-index .momo-product-tabs__header {
    height: 23px !important;
    margin-bottom: 24px !important;
    padding-inline: 16px !important;
  }
  .template-index .momo-product-tabs__tablist {
    gap: 16px !important;
    overflow: visible !important;
  }
  .template-index .momo-product-tabs__tablist button {
    height: 23px !important;
    padding: 0 !important;
    font-size: 16px !important;
    line-height: 23px !important;
    white-space: nowrap !important;
  }
  .template-index .momo-product-tabs__rail {
    height: auto !important;
    gap: 2px !important;
    overflow-x: auto !important;
  }
  .template-index .momo-product-tabs__slide {
    width: calc(100vw - 32px) !important;
    flex: 0 0 calc(100vw - 32px) !important;
    height: auto !important;
  }
  .template-index .momo-product-tabs__slide .card__inner {
    height: auto !important;
    aspect-ratio: 4 / 5 !important;
  }
  .template-index .momo-category-carousel {
    height: auto !important;
    min-height: 0 !important;
    padding: 44px 0 !important;
  }
  .template-index .momo-category-carousel__header {
    height: auto !important;
    margin-bottom: 24px !important;
    padding-inline: 16px !important;
  }
  .template-index .momo-category-carousel__header h2 {
    font-size: 19px !important;
    line-height: 30px !important;
    white-space: nowrap !important;
  }
  .template-index .momo-category-carousel__track {
    display: flex !important;
    gap: 4px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }
  .template-index .momo-category-carousel__slide {
    display: block !important;
    width: calc(100vw - 30px) !important;
    flex: 0 0 calc(100vw - 30px) !important;
    height: auto !important;
  }
  .template-index .momo-category-carousel__image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 5 / 6 !important;
  }
  .template-index .momo-category-carousel__content {
    min-height: 54px !important;
    padding: 0 !important;
  }
  .template-index .momo-category-carousel__content h3 {
    margin: 12px 0 !important;
    font-size: 19px !important;
    line-height: 19px !important;
  }
  .template-index .momo-category-carousel__content .momo-text-link {
    font-size: 16px !important;
    line-height: 23px !important;
  }
  .template-collection .mobile-facets__main {
    min-height: 100dvh !important;
    padding-bottom: 96px !important;
  }
.template-collection .mobile-facets__footer {
    min-height: 72px !important;
    padding: 12px 16px !important;
    border-top: 1px solid rgb(var(--momo-line));
    background: rgb(var(--momo-paper));
  }
}

/* TRUE EOF collection filter lock (2026-08-22): win after every Dawn
   component-style insertion in the mobile drawer. */
@media screen and (max-width: 749px) {
  .template-collection .mobile-facets__header,
  .template-collection .mobile-facets__header-inner {
    height: 99px !important;
    min-height: 99px !important;
  }
  .template-collection .mobile-facets__main {
    padding-top: 16px !important;
  }
  .template-collection .mobile-facets__details--sort {
    margin-bottom: 0 !important;
    border-bottom: 1px solid rgb(var(--momo-line)) !important;
  }
  .template-collection .mobile-facets__details--sort > .mobile-facets__summary,
  .template-collection .mobile-facets__details--sort > .mobile-facets__summary > div {
    height: 36px !important;
    min-height: 36px !important;
  }
  .template-collection .momo-sort-panel {
    padding: 2px 0 23px !important;
  }
  .template-collection .mobile-facets__details:not(.mobile-facets__details--sort) > .mobile-facets__summary,
  .template-collection .mobile-facets__details:not(.mobile-facets__details--sort) > .mobile-facets__summary > div {
    height: 76px !important;
    min-height: 76px !important;
  }
  .template-collection .mobile-facets__details:has(.facets__price) > .mobile-facets__summary,
  .template-collection .mobile-facets__details:has(.facets__price) > .mobile-facets__summary > div {
    height: 65px !important;
    min-height: 65px !important;
  }
}

/* 2026-08-22 target header lock: the supplied noo.ma home captures start
   directly with the 61px header; the announcement strip is zero-height. */
body.template-index {
  --momo-announcement: 0px !important;
}
body.template-index .announcement-bar-section,
body.template-index .announcement-bar,
body.template-index .announcement-bar-slider {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  visibility: hidden !important;
  overflow: hidden !important;
}

/* Collection filter parity lock: match the supplied 529px drawer crop after
   Dawn's late mobile-facets stylesheet has been inserted. */
@media screen and (max-width: 749px) {
  .template-collection .mobile-facets__header,
  .template-collection .mobile-facets__header-inner {
    height: 99px !important;
    min-height: 99px !important;
  }
  .template-collection .mobile-facets__main {
    padding-top: 16px !important;
  }
  .template-collection .mobile-facets__details--sort {
    margin-bottom: 0 !important;
    border-bottom: 1px solid rgb(var(--momo-line)) !important;
  }
  .template-collection .mobile-facets__details--sort > .mobile-facets__summary,
  .template-collection .mobile-facets__details--sort > .mobile-facets__summary > div {
    height: 36px !important;
    min-height: 36px !important;
  }
  .template-collection .momo-sort-panel {
    padding: 2px 0 23px !important;
  }
  .template-collection .mobile-facets__details:not(.mobile-facets__details--sort) > .mobile-facets__summary,
  .template-collection .mobile-facets__details:not(.mobile-facets__details--sort) > .mobile-facets__summary > div {
    height: 76px !important;
    min-height: 76px !important;
  }
  .template-collection .mobile-facets__details:has(.facets__price) > .mobile-facets__summary,
  .template-collection .mobile-facets__details:has(.facets__price) > .mobile-facets__summary > div {
    height: 65px !important;
    min-height: 65px !important;
  }
}

/* TRUE EOF lock (2026-08-22b): mobile location screenshot state must win
   over all earlier Dawn and legacy localization rules. */
@media screen and (max-width: 749px) {
  .momo-localization-form { grid-template-rows: 53px minmax(0, 1fr) auto !important; }
  .momo-localization-panel__header {
    min-height: 53px !important;
    padding: 0 44px 0 30px !important;
  }
  .momo-localization-panel__header h2 { font-size: 16px !important; line-height: 20px !important; }
  .momo-localization-panel__body { padding: 28px 44px 0 30px !important; }
  .momo-localization-panel__body > p {
    max-width: none !important;
    margin: 0 0 22px !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
  }
  .momo-localization-field {
    display: grid !important;
    min-height: 52px !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 16px !important;
    border-bottom: 1px solid rgb(var(--momo-line)) !important;
    font-size: 14px !important;
  }
  .momo-localization-field > span:first-child { display: block !important; white-space: nowrap !important; }
  .momo-localization-field__value { min-width: 0 !important; }
  .momo-localization-field[data-momo-location-field='country'] > span:first-child { min-width: 118px !important; }
  .momo-localization-field[data-momo-location-field='language'] > span:first-child { min-width: 58px !important; }
  .momo-localization-choice,
  .momo-localization-field[data-momo-location-field='country'] .momo-localization-choice,
  .momo-localization-field[data-momo-location-field='language'] .momo-localization-choice {
    display: flex !important;
    min-height: 52px !important;
    width: 100% !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 14px !important;
    padding: 0 12px !important;
    border: 2px solid rgb(var(--momo-ink)) !important;
    background: transparent !important;
    font-size: 14px !important;
    text-align: right !important;
  }
  .momo-localization-field[data-momo-location-field='country'] .momo-localization-choice > span:first-child::before,
  .momo-localization-field[data-momo-location-field='language'] .momo-localization-choice > span:first-child::before { content: none !important; }
  .momo-localization-choice > span:first-child { overflow: hidden !important; text-overflow: ellipsis !important; }
  .momo-localization-choice > span:last-child { flex: 0 0 auto !important; font-size: 18px !important; }
  .momo-localization-field[data-momo-location-field='country'],
  .momo-localization-field[data-momo-location-field='language'] { min-height: 52px !important; padding: 0 !important; border-bottom: 1px solid rgb(var(--momo-line)) !important; }
  .momo-localization-field.is-open { display: block !important; padding: 0 0 14px !important; }
  .momo-localization-field.is-open > span:first-child { display: block !important; padding: 6px 0 10px !important; }
  .momo-localization-field.is-open .momo-localization-choice { min-height: 30px !important; border: 0 !important; padding: 0 !important; justify-content: space-between !important; text-align: left !important; }
  .momo-localization-field.is-open .momo-localization-choice > span:last-child { transform: rotate(90deg) !important; }
  .momo-localization-options { margin-top: 8px !important; }
  .momo-localization-search input { min-height: 42px !important; }
  .momo-localization-option { min-height: 40px !important; padding: 7px 0 !important; }

  .template-index .momo-category-carousel__track { gap: 2px !important; }
  .template-index .momo-category-carousel__slide { width: 67.4vw !important; flex: 0 0 67.4vw !important; }
  .template-index .momo-category-carousel__image { aspect-ratio: 4 / 5 !important; }
}

/* Stable focus and reduced-motion behavior for every interactive state. */
:where(.momo-product-tabs__tablist button, .momo-category-carousel__card,
  .momo-density button, .momo-sort-option, .momo-localization-choice,
  .menu-drawer__menu-item, .search-modal__close-button):focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
@keyframes momo-faq-reveal {
  from { opacity: 0; transform: translateY(-.4rem); }
  to { opacity: 1; transform: translateY(0); }
}
.momo-footer,
.momo-footer * { box-sizing: border-box; }
.template-index .momo-footer { min-height: 90.2rem; }
.momo-footer__brand-meta { display: flex; align-items: flex-end; flex-direction: column; gap: 1.6rem; }
.momo-footer__brand-meta .momo-footer__social { margin: 0; }

.section-header,
.header-wrapper,
.header {
  height: 6.1rem;
  min-height: 6.1rem;
}
.header { box-sizing: border-box; padding-top: .8rem !important; padding-bottom: .8rem !important; }
.header__menu-item { height: 4.4rem; padding-top: 0; padding-bottom: 0; }

.template-collection .facets-vertical.page-width,
.template-collection .collection.page-width { width: 100%; max-width: none; padding-right: 0; padding-left: 0; }
@media screen and (min-width: 990px) {
  .template-collection .collection-hero__inner {
    display: grid;
    height: 9.278rem;
    min-height: 9.278rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 2.4rem;
    padding-bottom: 1.6rem;
    overflow: hidden;
  }
  .template-collection .collection-hero__description { max-height: 7.678rem; overflow: hidden; }
}
.template-collection .collection-hero__description > p { display: inline; margin: 0; }
.template-collection .collection-hero__description > p + p::before { content: ' '; }

.momo-footer__top { padding-top: 4.8rem; padding-bottom: 4rem; }
.momo-footer__brand { padding-block: 2.4rem; font-size: 17.2rem; }
.momo-footer__bottom { padding-top: 2rem; padding-bottom: 2.4rem; }

@media screen and (min-width: 750px) and (max-width: 989px) {
  .template-collection .collection-hero__inner { height: 14.4rem; min-height: 14.4rem; align-items: start; overflow: hidden; }
  .template-collection .collection-hero__description { max-height: 12.8rem; overflow: hidden; }
  .template-index .momo-collection-index { height: auto; min-height: 29rem; overflow: visible; }
  .template-index .momo-collection-index__links {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 69.4rem;
    justify-content: stretch;
    column-gap: 2.4rem;
  }
  .template-index .momo-collection-index__link,
  .template-index .momo-collection-index__link:nth-child(5),
  .template-index .momo-collection-index__link:nth-child(6) {
    grid-column: auto;
    padding-right: 1.4rem;
    font-size: 3.2rem;
    white-space: normal;
  }
}

@media screen and (max-width: 749px) {
  .template-index .momo-category-carousel {
    height: auto !important;
    min-height: 0 !important;
    padding: 44px 0 !important;
  }
  .template-index .momo-category-carousel > .page-width { height: auto !important; }
  .template-index .momo-category-carousel__header {
    height: auto !important;
    margin-bottom: 24px;
  }
  .template-index .momo-category-carousel__track {
    height: auto !important;
    grid-auto-rows: auto !important;
    column-gap: 4px;
    row-gap: 44px;
  }
  .template-index .momo-category-carousel__slide {
    width: 100% !important;
    height: auto !important;
    grid-template-rows: auto 54.28125px !important;
    gap: 16px;
  }
  .template-index .momo-category-carousel__image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 4 / 5;
  }
  .template-index .momo-category-carousel__content {
    width: 100% !important;
    height: 54.28125px;
    padding: 0 8px;
  }
}

@media screen and (min-width: 990px) {
  .header__icons .desktop-localization-wrapper {
    position: relative;
    top: -.05rem;
    left: 1.739rem;
    transform: none !important;
  }
}

/* Last cascade guard for lazy Dawn component styles. */
.search-modal { position: fixed !important; inset: 0 !important; width: 100vw !important; height: 100dvh !important; top: 0 !important; right: 0 !important; bottom: 0 !important; left: 0 !important; transform: none !important; }
.search-modal { visibility: hidden !important; pointer-events: none !important; opacity: 0 !important; }
details[open] > .search-modal { visibility: visible !important; pointer-events: auto !important; opacity: 1 !important; }
.search-modal__content { right: 0 !important; bottom: 0 !important; transform: translateX(102%) !important; }
details[open] .search-modal__content { transform: translateX(0) !important; }
@media screen and (min-width: 990px) {
  .header__icons > .header__search { left: 372px !important; width: 16rem !important; }
  .header__icons > .header__search .header__icon--search { width: 16rem !important; }
}
@media screen and (max-width: 749px) {
  .search-modal__content { width: calc(100vw - 1.6rem) !important; min-width: 0 !important; }
  .template-index .momo-product-tabs__slide { width: 64.8vw !important; flex-basis: 64.8vw !important; flex: 0 0 64.8vw !important; }
  .template-index .momo-category-carousel { height: auto !important; min-height: 0 !important; padding: 5.6rem 0 4.4rem !important; }
  .template-index .momo-category-carousel > .page-width { height: auto !important; padding-inline: 0 !important; }
  .template-index .momo-category-carousel__track { display: flex !important; height: auto !important; gap: .2rem !important; overflow-x: auto !important; overflow-y: hidden !important; }
  .template-index .momo-category-carousel__slide { display: block !important; width: 64.8vw !important; height: auto !important; flex: 0 0 64.8vw !important; }
  .template-index .momo-category-carousel__image { width: 100% !important; height: auto !important; aspect-ratio: 4 / 5 !important; }
  .template-index .momo-category-carousel__content { width: 100% !important; height: auto !important; min-height: 5.4rem !important; }
}

/* Screenshot parity lock: the reference mobile rail shows one nearly full-width
   card with a four-pixel reveal of the next card. Keep this after all Dawn
   component rules so lazy-loaded styles cannot restore the older 64.8vw rail. */
@media screen and (max-width: 749px) {
  .template-index .momo-category-carousel__track {
    display: flex !important;
    gap: 4px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
  }
  .template-index .momo-category-carousel__slide {
    width: calc(100vw - 30px) !important;
    flex: 0 0 calc(100vw - 30px) !important;
    scroll-snap-align: start;
  }
  .template-index .momo-category-carousel__image {
    aspect-ratio: 5 / 6 !important;
  }
  .template-index .momo-category-carousel__content {
    min-height: 54px !important;
    padding: 0 0 0 0 !important;
  }
  .template-index .momo-category-carousel__content h3 {
    margin-bottom: 12px !important;
    font-size: 19px !important;
    line-height: 19px !important;
  }
  .template-index .momo-category-carousel__content .momo-text-link {
    font-size: 16px !important;
    line-height: 23px !important;
  }
}

/* The collection index is a typographic cluster, not a bordered list. */
@media screen and (min-width: 750px) {
  .template-index .momo-collection-index {
    min-height: 290px !important;
    padding: 88px 32px !important;
    overflow: hidden !important;
  }
  .template-index .momo-collection-index__links {
    display: grid !important;
    grid-template-columns: repeat(4, max-content) !important;
    justify-content: center !important;
    align-items: baseline !important;
    column-gap: 32px !important;
    row-gap: 14px !important;
  }
  .template-index .momo-collection-index__link,
  .template-index .momo-collection-index__link:nth-child(5),
  .template-index .momo-collection-index__link:nth-child(6) {
    grid-column: auto;
    padding: 0 18px 0 0 !important;
    font-size: 40px !important;
    line-height: 50px !important;
    white-space: nowrap !important;
  }
  .template-index .momo-collection-index__link:nth-child(5) { grid-column: 2 !important; }
  .template-index .momo-collection-index__link:nth-child(6) { grid-column: 3 !important; }
}
@media screen and (max-width: 989px) {
  .menu-drawer { width: calc(100vw - 1.6rem) !important; max-width: none !important; }
}

/* Mobile menu reference: a 34px pale edge remains visible beside the white
   sheet. The shadow is deliberately solid so it survives translucent Dawn
   overlays and does not depend on the page background. */
@media screen and (max-width: 749px) {
  .menu-drawer {
    left: 34px !important;
    width: calc(100vw - 34px) !important;
    max-width: none !important;
    box-shadow: -34px 0 0 rgb(247, 242, 204) !important;
  }
}

/* Keep the location dialog above footer/media stacking contexts in every
   scroll position. */
.momo-localization-shell {
  position: fixed !important;
  z-index: 2147483000 !important;
  inset: 0 !important;
  isolation: isolate;
}
.momo-localization-panel {
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 1;
}
.template-collection .mobile-facets__header { height: 9.5rem !important; min-height: 9.5rem !important; }
.template-collection .mobile-facets__header-inner { min-height: 9.5rem !important; }
.template-collection .momo-sort-options { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-auto-flow: column !important; }
@media screen and (max-width: 749px) {
  .template-collection .mobile-facets__inner { width: 100vw !important; max-width: none !important; }
  .template-collection .mobile-facets__main { padding-inline: 3.2rem !important; }
  .template-collection .momo-sort-options { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-template-rows: repeat(5, minmax(2.3rem, auto)) !important; grid-auto-flow: column !important; gap: 1.2rem 1.6rem !important; }
  .template-collection .momo-sort-option { min-height: 2.3rem !important; gap: .8rem !important; font-size: 1.3rem !important; line-height: 1.35 !important; }
  .template-collection .momo-sort-option > span { width: 1.6rem !important; height: 1.6rem !important; flex: 0 0 1.6rem !important; }
  .header__icons .desktop-localization-wrapper { display: none !important; }
}
@media screen and (min-width: 990px) {
  .header__icons > .header__search { left: 372px !important; }
}

/* Final reference interaction pass. Keep these rules last so Dawn's lazy-loaded
   component sheets cannot move the controls after first paint. */
.header a,
.header summary,
.header button { text-decoration: none !important; }
.header__menu-item:hover span,
.header__menu-item:focus-visible span,
.header__menu-item[aria-current='page'] span { text-decoration: none !important; }

@media screen and (min-width: 990px) {
  .header__icons > .header__search { left: 372px; width: 16rem; }
  .header__icons > .header__search .header__icon--search { width: 16rem; padding: 0; color: rgb(160, 160, 160); }
  .header__icons > .header__search .header__icon--search::after { margin-left: .8rem; color: inherit; font-size: 1.4rem; line-height: 1; transition: color .16s ease, transform .16s ease; }
  .header__icons > .header__search .header__icon--search:hover,
  .header__icons > .header__search .header__icon--search:focus-visible { color: rgb(var(--momo-ink)); }
  .header__icons > .header__search .header__icon--search:hover::after,
  .header__icons > .header__search .header__icon--search:focus-visible::after { transform: translateX(.2rem); }
  .header__icons > .header__search .svg-wrapper,
  .header__icons > .header__search .icon-search { width: 1.6rem; height: 1.6rem; }
}

/* Country and language choices are a real disclosure, not a native select. */
.momo-localization-panel__body { overflow-y: auto; }
.momo-localization-field { position: relative; }
.momo-localization-choice { display: flex; width: 100%; min-height: 5.2rem; align-items: center; justify-content: flex-end; gap: 1.4rem; padding: 0 0 0 1.6rem; border: 0; background: transparent; color: inherit; font: inherit; text-align: right; cursor: pointer; }
.momo-localization-choice > span:first-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.momo-localization-choice > span:last-child { flex: 0 0 auto; font-size: 1.7rem; line-height: 1; transition: transform .2s ease; }
.momo-localization-field:not(.is-open) .momo-localization-choice { min-height: 5.2rem; padding-right: 1.2rem; border: .2rem solid rgb(var(--momo-ink)); }
.momo-localization-field.is-open { display: block; padding: 0 0 1.4rem; }
.momo-localization-field.is-open > span:first-child { display: block; padding: .6rem 0 1rem; font-weight: 500; }
.momo-localization-field.is-open .momo-localization-choice { min-height: 3rem; justify-content: space-between; padding: 0; text-align: left; }
.momo-localization-field.is-open .momo-localization-choice > span:last-child { transform: rotate(90deg); }
.momo-localization-native-select { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.momo-localization-options { display: block; margin-top: .8rem; }
.momo-localization-options[hidden] { display: none; }
.momo-localization-search { display: block; border-bottom: .1rem solid rgb(var(--momo-line)); }
.momo-localization-search input { width: 100%; min-height: 4.2rem; padding: 0; border: 0; background: transparent; color: rgb(var(--momo-ink)); font: inherit; }
.momo-localization-options__list { max-height: 47rem; overflow-y: auto; scrollbar-width: thin; }
.momo-localization-option { display: flex; width: 100%; min-height: 4rem; align-items: center; justify-content: space-between; gap: 1.2rem; padding: .7rem 0; border: 0; background: transparent; color: rgb(var(--momo-ink)); font: inherit; text-align: left; cursor: pointer; }
.momo-localization-option:hover,
.momo-localization-option:focus-visible,
.momo-localization-option.is-selected { color: rgb(var(--momo-ink)); font-weight: 500; }
.momo-localization-option[hidden] { display: none; }

/* The reference search is a right-hand panel with a dimmed page behind it. */
.search-modal { z-index: 100; background: rgba(30, 28, 26, .2); opacity: 0; transition: opacity .2s ease; }
details[open] > .search-modal { opacity: 1; }
.search-modal .modal-overlay { position: absolute; inset: 0; display: block !important; background: rgba(30, 28, 26, .2); }
.search-modal__content { position: absolute; z-index: 1; top: 0; right: 0; bottom: 0; display: flex; width: min(66.67vw, 96rem); min-width: 54rem; max-width: none; height: 100dvh; flex-direction: column; overflow-y: auto; padding: 0 3.2rem; border: 0; background: rgb(var(--momo-paper)); transform: translateX(102%); transition: transform .28s cubic-bezier(.25,.46,.45,.94); }
details[open] .search-modal__content { transform: translateX(0); }
.search-modal__title { min-height: 6rem; display: flex; align-items: center; border-bottom: .1rem solid rgb(var(--momo-line)); font-size: 1.4rem; font-weight: 500; }
.search-modal__form { display: block; margin-top: 7.2rem; }
.search-modal__form .field { min-height: 4.8rem; border-bottom: .1rem solid rgb(var(--momo-ink)); }
.search-modal__form .search__input { min-height: 4.8rem; padding: 0; border: 0; background: transparent; color: rgb(var(--momo-ink)); font-size: 1.5rem; }
.search-modal__form .field__label { display: none; }
.search-modal__form .field__button { width: 4rem; }
.search-modal__form .search__button { display: none; }
.search-modal__form .reset__button { right: 0; }
.search-modal__form .predictive-search { position: static; border: 0; }
.search-modal__extras { padding: 1.6rem 0 0; }
.search-modal__help { margin: 0 0 5.2rem; color: rgb(var(--momo-muted)); font-size: 1.3rem; }
.search-modal__help a { color: rgb(var(--momo-ink)); text-decoration: underline !important; text-underline-offset: .2rem; }
.search-modal__eyebrow { color: rgb(var(--momo-muted)); font-size: 1.2rem; }
.search-modal__suggestions { margin-bottom: 5.8rem; }
.search-modal__suggestion-links { display: flex; flex-wrap: wrap; gap: 2.8rem; margin-top: 1.8rem; }
.search-modal__suggestion-links a { color: rgb(var(--momo-ink)); font-size: 1.4rem; text-decoration: none; }
.search-modal__suggestion-links a:hover,
.search-modal__suggestion-links a:focus-visible { text-decoration: underline; text-underline-offset: .35rem; }
.search-modal__recent-header { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-bottom: 1.8rem; }
.search-modal__clear { padding: 0; border: 0; background: transparent; color: rgb(var(--momo-muted)); font: inherit; font-size: 1.2rem; cursor: pointer; }
.search-modal__product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .2rem; }
.search-modal__product { min-width: 0; color: inherit; text-decoration: none; }
.search-modal__product-media { display: block; aspect-ratio: 1 / 1; overflow: hidden; background: rgb(var(--momo-soft)); }
.search-modal__product-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.search-modal__product:hover .search-modal__product-media img,
.search-modal__product:focus-visible .search-modal__product-media img { transform: scale(1.025); }
.search-modal__product-copy { display: grid; gap: .4rem; padding: 1rem .8rem 1.8rem; }
.search-modal__product-copy strong { overflow: hidden; font-size: 1.3rem; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.search-modal__product-copy small { overflow: hidden; color: rgb(var(--momo-muted)); font-size: 1.2rem; text-overflow: ellipsis; white-space: nowrap; }
.search-modal__close-button { top: 1.6rem; right: 1.6rem; width: 2.4rem; height: 2.4rem; }
.search-modal__bottom-close { position: sticky; bottom: 0; width: 100%; min-height: 4.8rem; margin: auto 0 0; padding: 0; border: .1rem solid rgb(var(--momo-line)); background: rgb(var(--momo-paper)); color: rgb(var(--momo-ink)); font: inherit; font-size: 1.2rem; text-transform: uppercase; cursor: pointer; }

/* The menu leaves a narrow dim strip at the edge and uses the same easing as search. */
@media screen and (max-width: 989px) {
  .menu-drawer { width: calc(100vw - 1.6rem) !important; max-width: none !important; transition: transform .28s cubic-bezier(.25,.46,.45,.94), visibility .28s ease !important; }
  .menu-drawer__navigation { padding: 2.4rem 3.2rem 0 !important; }
  .menu-drawer__menu-item,
  .menu-drawer summary.menu-drawer__menu-item { min-height: 4.2rem; padding: .8rem 0 !important; font-size: 1.7rem; line-height: 2.3rem; }
  .menu-drawer__utility-links { padding: 2.4rem 3.2rem !important; }
}

/* Product rails use the same 64% mobile card width as the reference. */
.template-index .momo-product-tabs .card__media .media img { object-fit: cover; }
.template-index .momo-product-tabs__tablist button { transition: color .18s ease, border-color .18s ease; }
.template-index .momo-product-tabs__slide { transition: opacity .22s ease, transform .22s ease; }
.template-index .momo-product-tabs__slide:hover { transform: translateY(-.2rem); }
@media screen and (max-width: 749px) {
  .search-modal__content { width: calc(100vw - 1.6rem); min-width: 0; padding-inline: 1.6rem; }
  .search-modal__form { margin-top: 5.6rem; }
  .search-modal__help { margin-bottom: 3.6rem; }
  .search-modal__suggestions { margin-bottom: 3.8rem; }
  .search-modal__suggestion-links { gap: 1.8rem 2.4rem; }
  .search-modal__product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .template-index .momo-product-tabs__slide { width: 64.8vw; flex-basis: 64.8vw; }
  .template-index .momo-product-tabs__rail { gap: .2rem; }
  .template-index .momo-category-carousel { height: auto !important; min-height: 0 !important; padding: 5.6rem 0 4.4rem !important; }
  .template-index .momo-category-carousel > .page-width { height: auto !important; padding-inline: 0 !important; }
  .template-index .momo-category-carousel__header { height: auto !important; margin-bottom: 2.4rem; padding-inline: 1.6rem; }
  .template-index .momo-category-carousel__track { display: flex !important; height: auto !important; gap: .2rem; overflow-x: auto !important; scroll-snap-type: x mandatory; }
  .template-index .momo-category-carousel__slide { display: block !important; width: 64.8vw !important; height: auto !important; flex: 0 0 64.8vw !important; }
  .template-index .momo-category-carousel__image { width: 100% !important; height: auto !important; aspect-ratio: 4 / 5; }
  .template-index .momo-category-carousel__content { width: 100% !important; height: auto !important; min-height: 5.4rem; padding: 1.2rem .8rem 1.6rem; }
  .template-index .momo-category-carousel__content h3 { margin-bottom: .6rem; font-size: 1.7rem; line-height: 1.2; }
  .template-index .momo-category-carousel__content .momo-text-link { font-size: 1.3rem; }
}

/* Filter drawer parity: wide header, two-column sorting and sticky actions. */
.template-collection .mobile-facets__header { height: 9.5rem; min-height: 9.5rem; padding: 0 3.2rem; border-bottom: .1rem solid rgb(var(--momo-line)); }
.template-collection .mobile-facets__header-inner { display: flex; min-height: 9.5rem; flex-direction: column; justify-content: center; }
.template-collection .mobile-facets__heading { margin: 0; font-size: 1.6rem; line-height: 1.9rem; }
.template-collection .mobile-facets__count { margin: .4rem 0 0; color: rgb(var(--momo-muted)); font-size: 1.1rem; line-height: 1.4rem; }
.template-collection .mobile-facets__main { padding: 2.4rem 3.2rem 7.2rem; }
.template-collection .mobile-facets__details--sort { margin-bottom: 1.2rem; border-bottom: .1rem solid rgb(var(--momo-line)) !important; }
.template-collection .mobile-facets__details--sort > .mobile-facets__summary,
.template-collection .mobile-facets__details--sort > .mobile-facets__summary > div { height: 3.6rem; min-height: 3.6rem; }
.template-collection .momo-sort-options { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: column; gap: 1.2rem 2rem; }
.template-collection .mobile-facets__footer { position: sticky; bottom: 0; min-height: 7.2rem; }
.template-collection .mobile-facets__footer .mobile-facets__clear { min-height: 7.2rem; }
.template-collection .mobile-facets__footer .button { min-height: 7.2rem; }
@media screen and (max-width: 749px) {
  .template-collection .mobile-facets__inner { width: 100vw; max-width: none; }
  .template-collection .mobile-facets__main { padding-inline: 3.2rem; }
  .template-collection .momo-sort-options { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: column; }
}

/* Collection index links and density controls retain their active state without stray underlines. */
.template-index .momo-collection-index__link { text-decoration: none; transition: color .18s ease; }
.template-index .momo-collection-index__link::after { content: ''; position: absolute; right: 1.1rem; bottom: -.15rem; left: 0; height: .1rem; background: currentColor; opacity: 0; transform: scaleX(0); transform-origin: left; transition: opacity .2s ease, transform .2s ease; }
.template-index .momo-collection-index__link:hover::after,
.template-index .momo-collection-index__link:focus-visible::after { opacity: 1; transform: scaleX(1); }
.template-collection .momo-density button { transition: color .18s ease, background-color .18s ease; }
.template-collection .momo-density button[aria-pressed='true'] { color: rgb(var(--momo-ink)); }

/* Final measured collection and mobile category geometry. */
.template-collection #product-grid .scroll-trigger.animate--slide-in {
  opacity: 1 !important;
  transform: none !important;
}

.template-collection .mobile-facets__open {
  gap: 8px;
  padding: 0;
  font-size: 16px;
  line-height: 19.2px;
}
.template-collection .mobile-facets__open .svg-wrapper {
  width: 16px;
  height: 16px;
}
.template-collection .mobile-facets__open-label { margin-left: 0 !important; }
.template-collection .mobile-facets__open-label {
  font-size: 15.16px;
  line-height: 23.1875px;
}
body.template-collection.overflow-hidden-mobile { overflow: hidden !important; }

@media screen and (min-width: 990px) {
  .template-collection .momo-density { gap: 4.796875px; }

  .header__icons > .header__search { top: 8px; }
  .header__icons > .header__search .header__icon--search {
    color: rgb(162, 162, 164);
    transition: color 125ms ease-in-out, border-color 125ms ease-in-out;
  }
  .header__icons > .header__search .header__icon--search:hover,
  .header__icons > .header__search .header__icon--search:focus-visible,
  .header__icons > .header__search .header__icon--search:hover::after,
  .header__icons > .header__search .header__icon--search:focus-visible::after {
    color: rgba(var(--momo-ink), .81);
  }
  .header__icons > .header__search .header__icon--search .svg-wrapper,
  .header__icons > .header__search .header__icon--search .icon-search {
    width: 16px;
    height: 16px;
  }
  .header__icons > .header__search .header__icon--search::after {
    margin-left: 8px;
    color: inherit;
    font-size: 16px;
    line-height: 21px;
    transition: color 125ms ease-in-out;
  }

  .momo-localization-trigger { gap: 0; }
  .momo-localization-trigger__label {
    display: flex;
    width: 62.2px;
    min-width: 0;
    align-items: center;
    gap: 2px;
    overflow: hidden;
    font-size: 15.5px;
    line-height: 19.1875px;
    white-space: nowrap;
  }
  .momo-localization-trigger__caret {
    display: grid;
    width: 16px;
    height: 16px;
    margin-left: 4px;
    place-items: center;
  }
  .momo-localization-trigger__caret svg { width: 16px; height: 16px; }
}

@media screen and (max-width: 749px) {
  .template-index .momo-category-carousel__header h2 {
    font-size: 24px;
    line-height: 30.4px;
  }

  .template-collection .momo-collection-toolbar .facets-container { padding-left: 0; }
  .template-collection .mobile-facets__open {
    gap: 8px;
    padding: 0;
    font-size: 16px;
    line-height: 19.2px;
  }
  .template-collection .mobile-facets__open .svg-wrapper {
    width: 16px;
    height: 16px;
  }
  .template-collection .mobile-facets__open-label { margin-left: 0 !important; }
  .template-collection .mobile-facets__main > .mobile-facets__details { margin-right: 15px; }
  .template-collection .mobile-facets__details--sort {
    order: -2;
    margin-bottom: 12.796875px;
    padding-bottom: 0;
  }
  .template-collection .mobile-facets__details:has(.facets__price) { order: -1; }
  .template-collection .mobile-facets__details--sort > .mobile-facets__summary,
  .template-collection .mobile-facets__details--sort > .mobile-facets__summary > div {
    box-sizing: border-box;
    height: 52px;
    min-height: 52px;
    padding: 0;
  }
  .template-collection .mobile-facets__details--sort { border-bottom: 0 !important; }
  .template-collection .mobile-facets__details:not(.mobile-facets__details--sort) > .mobile-facets__summary,
  .template-collection .mobile-facets__details:not(.mobile-facets__details--sort) > .mobile-facets__summary > div {
    min-height: 55.1875px;
  }
  .template-collection .momo-sort-panel { padding: 8px 0; }
  .template-collection .momo-sort-options {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
    grid-auto-flow: row;
    gap: 12.796875px;
  }
  .template-collection .momo-sort-option {
    min-height: 22.390625px;
    gap: 8px;
    font-size: 16px;
    line-height: 19.2px;
  }
  .template-collection .momo-sort-option__input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
  }
  .template-collection .momo-sort-option > span {
    width: 16px;
    height: 16px;
    flex-basis: 16px;
  }
  .template-collection .mobile-facets__main > .mobile-facets__footer .mobile-facets__clear { width: 100%; }
}

/* Mobile navigation loads before Dawn's component stylesheet, so lock only the measured geometry here. */
@media screen and (max-width: 989px) {
  .menu-drawer {
    width: min(calc(100vw - 75px), 378px) !important;
    border: 0 !important;
    transition: transform 200ms ease, visibility 200ms ease !important;
  }
  .menu-drawer__navigation-container {
    display: flex !important;
    height: 100%;
    flex-direction: column;
  }
  .menu-drawer__navigation {
    flex: 1 1 auto;
    padding: 24px 32px 0 !important;
  }
  .js .menu-drawer__menu li { margin-bottom: 0 !important; }
  .menu-drawer__menu-item,
  .menu-drawer summary.menu-drawer__menu-item {
    min-height: 39px;
    padding: 8px 0 !important;
    border: 0 !important;
    font-size: 19px;
    line-height: 23px;
    text-decoration: none !important;
  }
  .menu-drawer summary.menu-drawer__menu-item { padding-right: 32px !important; }
  .menu-drawer__menu-item > .svg-wrapper { right: 0 !important; }
  .menu-drawer__utility-links {
    margin-top: auto;
    padding: 24px 32px !important;
    background: rgb(var(--momo-paper));
  }
}

@media screen and (max-width: 749px) {
  .template-collection .collection-hero__inner { height: 12.48rem; min-height: 12.48rem; overflow: hidden; }
  .template-index .momo-split-hero { height: 150.2rem; min-height: 150.2rem; }
  .template-index .momo-split-hero__copy,
  .template-index .momo-split-hero__media { height: 75.1rem; min-height: 75.1rem; flex: 0 0 75.1rem; }

  .template-index .momo-product-tabs {
    height: 58.917rem;
    padding-top: 6.159rem !important;
    padding-bottom: 6.159rem !important;
  }
  .template-index .momo-product-tabs > .page-width { padding-inline: 0; }
  .template-index .momo-product-tabs__header { align-items: flex-end; flex-direction: row; gap: 1.6rem; }
  .template-index .momo-product-tabs__header { height: 2.28rem; margin-bottom: 2.4rem; padding-inline: 1.6rem; }
  .template-index .momo-product-tabs__tablist { min-width: 0; flex: 1 1 auto; overflow-x: auto; gap: 1.6rem; scrollbar-width: none; }
  .template-index .momo-product-tabs__tablist::-webkit-scrollbar { display: none; }
  .template-index .momo-product-tabs__tablist button { height: 2.28rem; font-size: 1.6rem; line-height: 2.28rem; }
  .template-index .momo-product-tabs__controls { width: auto; flex: 0 0 auto; }
  .template-index .momo-product-tabs__view-all { display: none; }
  .template-index .momo-product-tabs__panel,
  .template-index .momo-product-tabs__rail { width: 100%; height: 41.919rem; }
  .template-index .momo-product-tabs__rail { gap: .2rem; }
  .template-index .momo-product-tabs__slide { width: 22.8rem; height: 41.919rem; flex: 0 0 22.8rem; }
  .template-index .momo-product-tabs__slide .card__inner { height: 28.5rem; }

  .template-index .momo-category-carousel { height: 254.336rem; min-height: 254.336rem; padding: 4.4rem 0; overflow: hidden; }
  .template-index .momo-category-carousel > .page-width { height: 245.536rem; }
  .template-index .momo-category-carousel__header { height: 3.039rem; margin-bottom: 2.4rem; }
  .template-index .momo-category-carousel__track {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    height: 240.097rem;
    grid-auto-rows: 30.528rem;
    column-gap: .4rem;
    row-gap: 4.4rem;
    overflow: visible;
  }
  .template-index .momo-category-carousel__slide {
    display: grid;
    width: 18.8rem;
    height: 30.528rem;
    min-width: 0;
    grid-template-rows: 23.5rem 5.428rem;
    gap: 1.6rem;
  }
  .template-index .momo-category-carousel__image { width: 18.8rem; height: 23.5rem; aspect-ratio: 4 / 5; }
  .template-index .momo-category-carousel__image img,
  .template-index .momo-category-carousel__image svg { object-fit: cover; }
  .template-index .momo-category-carousel__content { width: 18.8rem; height: 5.428rem; min-height: 0; padding: 0 .8rem; }
  .template-index .momo-category-carousel__content h3 { margin: 0 0 1.2rem; font-size: 1.9rem; line-height: 1.9rem; }
  .template-index .momo-category-carousel__content .momo-text-link { font-size: 1.6rem; line-height: 2.328rem; }

  .template-index .momo-collection-index { height: 53.031rem; min-height: 53.031rem; overflow: hidden; padding: 4.8rem 1.6rem; }
  .template-index .momo-collection-index__links { display: block; }
  .template-index .momo-collection-index__link {
    display: grid;
    min-height: 7rem;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 1rem;
    padding: 1.4rem 0;
    border-bottom: .1rem solid rgb(var(--momo-line));
    font-size: 3.2rem;
    line-height: 1.2;
    white-space: normal;
  }
  .template-index .momo-collection-index__link:first-child { border-top: .1rem solid rgb(var(--momo-line)); }
  .template-index .momo-collection-index__link > sup { position: static; align-self: start; padding-top: .5rem; font-size: 1rem; }
  .template-index .momo-collection-index__link > i { display: block; font-size: 2.4rem; line-height: 1; }

  .template-index .momo-lifestyle { height: 67.244rem; }
  .template-index .momo-promos { height: calc(400vw + 1.2rem); }
  .template-index .momo-promos__item { height: 100vw; }

  .template-index .momo-footer { min-height: 118.03rem; }
  .momo-footer__top { padding-top: 5.6rem; padding-bottom: 4.8rem; }
  .momo-footer__menus { margin-top: 4rem; }
  .momo-footer__brand { padding-block: 2.6rem; font-size: 7.2rem; }
  .momo-footer__bottom { padding-top: 2rem; padding-bottom: 2.4rem; }
  .momo-footer__brand-meta { align-items: flex-start; margin-top: 1.8rem; }
}

/* Final desktop header geometry: keep this after legacy Dawn overrides. */
@media screen and (min-width: 990px) {
  .header.page-width { display: flex !important; height: 6.1rem; min-height: 6.1rem; column-gap: 0; padding: 0 3.2rem !important; }
  .header > header-drawer { width: 1.6rem; height: 1.6rem; flex-basis: 1.6rem; margin: 0 !important; }
  .header > .header__heading,
  .header > .header__heading-link { width: 9.5rem; flex-basis: 9.5rem; margin-left: 1.6rem; }
  .header > .header__inline-menu { height: 6.1rem; margin-left: 3.2rem; }
  .header__inline-menu > .list-menu { column-gap: 1.6rem; }
  .header__inline-menu .header__menu-item { height: 100%; padding: 0; font-size: 1.2rem; }
  .header > .header__icons { height: 6.1rem; gap: 1.72rem; margin-left: auto; padding: 0; }
  .header__icons .desktop-localization-wrapper .localization-form__select { width: 8.22rem !important; min-width: 8.22rem !important; max-width: 8.22rem; overflow: hidden; }
  .header__icons .header__icon--cart { margin-right: 0; }
  .header > header-drawer,
  .header > .header__heading,
  .header > .header__heading-link { transform: translateY(-.05rem); }
  .header__icons .desktop-localization-wrapper { transform: translate(1.739rem, -.05rem); }
  .header__icons .desktop-localization-wrapper .localization-form__select { height: 1.919rem !important; }
  .header__icons .desktop-localization-wrapper .localization-form__select > span {
    display: block;
    line-height: 1.919rem;
    white-space: nowrap !important;
  }
  .header__icons .header__icon--account { transform: translate(-.94rem, -.05rem); }
  .header__icons .wishlist-hero-header-link { transform: translate(.11rem, -.05rem); }
  .header__icons .header__icon--cart { transform: translate(-.004rem, -.05rem); }
}

/* Desktop and tablet home sections scale from the reference's measured 1329px and 1440px canvases. */
@media screen and (min-width: 750px) {
  /* The reference keeps these desktop panels at measured fixed heights. Using
     100svh here caused a 140px drift in the authenticated Chrome baseline. */
  .template-index .momo-split-hero,
  .template-index .momo-split-hero__copy,
  .template-index .momo-split-hero__media { height: 80.7rem; min-height: 80.7rem; }

  .template-index .momo-usp { height: 8.81875rem; }
  .template-index .momo-product-tabs { height: 71.54rem; padding-bottom: calc(8.8rem - 1.28px) !important; }
  .template-index .momo-product-tabs__slide { height: calc(12.11807432rem + 24.77477477vw); }

  .template-index .momo-editorial,
  .template-index .momo-editorial__item { height: 90rem; }

  .template-index .momo-category-carousel { height: 64.94rem; padding-bottom: calc(8.8rem - 1.21px); }
  .template-index .momo-category-carousel__slide {
    height: calc(5.19683277rem + 24.98592342vw);
    grid-template-rows: calc(-1.83129223rem + 24.98592342vw) 5.428rem;
  }
  .template-index .momo-category-carousel__image { height: calc(-1.83129223rem + 24.98592342vw); }

  .template-index .momo-collection-index { height: calc(27.59987331rem + .99943694vw); }
  .template-index .momo-lifestyle { height: 78.884375rem; }

  .template-index .momo-promos {
    height: calc(125svh + .8rem);
    grid-template-rows: repeat(2, minmax(0, 1fr));
    column-gap: .4rem;
    row-gap: .4rem;
  }
  .template-index .momo-promos__item { height: auto; }
}

@media screen and (min-width: 750px) {
  .momo-footer {
    height: 89.2171875rem;
    min-height: 89.2171875rem;
    overflow: hidden;
  }
  .template-index .momo-footer { min-height: 89.2171875rem; }
  .momo-footer__top {
    box-sizing: border-box;
    height: 45.1125rem;
    padding: 6.4rem 3.2rem 0;
  }
  .momo-footer__brand {
    box-sizing: border-box;
    height: 19.1046875rem;
    margin-top: 3.2rem;
    padding: 3.2rem;
    font-size: 12rem;
    line-height: .8;
    white-space: nowrap;
  }
  .momo-footer__bottom {
    box-sizing: border-box;
    height: 12.1rem;
    margin-top: 6.5rem;
    padding: 0 3.2rem 3.2rem;
  }
}

/* Keep the header trigger aligned without creating a containing block for the fixed localization drawer. */
@media screen and (min-width: 990px) {
  .header__icons .desktop-localization-wrapper {
    position: relative;
    top: -.05rem;
    left: 1.739rem;
    transform: none !important;
  }
}

/* Last cascade guard for lazy Dawn component styles. */
.search-modal { position: fixed !important; inset: 0 !important; width: 100vw !important; height: 100dvh !important; top: 0 !important; right: 0 !important; bottom: 0 !important; left: 0 !important; transform: none !important; }
.search-modal__content { right: 0 !important; bottom: 0 !important; transform: translateX(102%) !important; }
details[open] .search-modal__content { transform: translateX(0) !important; }
@media screen and (min-width: 990px) {
  .header__icons > .header__search { left: 372px !important; width: 16rem !important; }
  .header__icons > .header__search .header__icon--search { width: 16rem !important; }
}
@media screen and (max-width: 749px) {
  .search-modal__content { width: calc(100vw - 1.6rem) !important; min-width: 0 !important; }
  .template-index .momo-product-tabs__slide { width: 64.8vw !important; flex-basis: 64.8vw !important; flex: 0 0 64.8vw !important; }
  .template-index .momo-category-carousel { height: auto !important; min-height: 0 !important; padding: 5.6rem 0 4.4rem !important; }
  .template-index .momo-category-carousel > .page-width { height: auto !important; padding-inline: 0 !important; }
  .template-index .momo-category-carousel__track { display: flex !important; height: auto !important; gap: .2rem !important; overflow-x: auto !important; overflow-y: hidden !important; }
  .template-index .momo-category-carousel__slide { display: block !important; width: 64.8vw !important; height: auto !important; flex: 0 0 64.8vw !important; }
  .template-index .momo-category-carousel__image { width: 100% !important; height: auto !important; aspect-ratio: 4 / 5 !important; }
  .template-index .momo-category-carousel__content { width: 100% !important; height: auto !important; min-height: 5.4rem !important; }
}
@media screen and (max-width: 989px) {
  .menu-drawer { width: calc(100vw - 1.6rem) !important; max-width: none !important; }
}
.template-collection .mobile-facets__header { height: 9.5rem !important; min-height: 9.5rem !important; }
.template-collection .mobile-facets__header-inner { min-height: 9.5rem !important; }
.template-collection .momo-sort-options { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-auto-flow: column !important; }
@media screen and (max-width: 749px) {
  .template-collection .mobile-facets__inner { width: 100vw !important; max-width: none !important; }
  .template-collection .mobile-facets__main { padding-inline: 3.2rem !important; }
}

/* Close remaining target-state differences after the remote draft upload. */
@media screen and (max-width: 749px) {
  .template-index .momo-product-tabs__header { padding-inline: 1.6rem !important; }
  .template-index .momo-product-tabs__tablist { overflow: visible !important; }
  .template-index .momo-product-tabs__tablist button { font-size: 1.9rem !important; line-height: 2.28rem !important; white-space: nowrap; }
  .template-index .momo-product-tabs__tablist button[aria-selected='true'] { font-weight: 400; }
  .template-index .momo-category-carousel__header { padding-inline: 1.6rem !important; }
  .template-index .momo-category-carousel__header h2 { font-size: 2.4rem !important; line-height: 3.04rem !important; white-space: nowrap; }

  .momo-localization-field[data-momo-location-field='country'].is-open .momo-localization-choice { border: 0 !important; outline: 0 !important; }
  .momo-localization-field[data-momo-location-field='country'].is-open { padding-bottom: 1.4rem; }
  .momo-localization-field[data-momo-location-field='country'].is-open .momo-localization-search input { border: 0 !important; outline: 0 !important; }

  .template-collection .mobile-facets__main { position: relative; padding-bottom: 9rem !important; }
  .template-collection .mobile-facets__footer { position: fixed !important; z-index: 20; right: 0; bottom: 0; left: 0; width: 100%; min-height: 7.2rem; }
  .template-collection .mobile-facets__details:has(.facets__price) { order: 1 !important; }
  .template-collection .mobile-facets__details--sort { order: -2 !important; }

  .search-modal__content { width: calc(100vw - 1.6rem) !important; padding-inline: 1.6rem !important; }
  .search-modal__title { position: absolute; top: 0; right: 1.6rem; left: 1.6rem; min-height: 6rem; justify-content: flex-start; }
  .search-modal__form { margin-top: 6rem !important; }
  .search-modal__form .field { border: 0 !important; }
  .search-modal__form .search__input { border-bottom: .1rem solid rgb(var(--momo-ink)) !important; }
  .search-modal__extras { padding-top: 1.6rem !important; }
}

/* Final measured parity pass: mobile rails, drawers and filter state. */
@media screen and (max-width: 749px) {
  .momo-localization-panel { width: 100vw !important; }
  .momo-localization-panel__header,
  .momo-localization-panel__body,
  .momo-localization-panel__footer { padding-left: 3.2rem !important; padding-right: 3.2rem !important; }
  .momo-localization-panel__body > p { margin-bottom: 1.9rem; }
  .momo-localization-field[data-momo-location-field='country'] { min-height: 6.1rem; border-bottom: 0; }
  .momo-localization-field[data-momo-location-field='country'] .momo-localization-choice { min-height: 6.1rem; padding-right: 1.2rem; border: .2rem solid rgb(var(--momo-ink)); }
  .momo-localization-field[data-momo-location-field='language'] { min-height: 4.8rem; }
  .momo-localization-field[data-momo-location-field='language'] .momo-localization-choice { min-height: 4.8rem; padding-right: 1.2rem; border: 0 !important; }

  .template-index .momo-product-tabs { height: auto !important; min-height: 0 !important; padding-top: 2rem !important; padding-bottom: 4.4rem !important; }
  .template-index .momo-product-tabs__header { height: auto !important; margin-bottom: 2.4rem !important; padding-inline: 3.2rem !important; }
  .template-index .momo-product-tabs__tablist button { height: auto !important; font-size: 2.8rem !important; line-height: 1.1 !important; }
  .template-index .momo-product-tabs__slide { width: 76vw !important; flex: 0 0 76vw !important; height: auto !important; }
  .template-index .momo-product-tabs__slide .card__inner { height: auto !important; aspect-ratio: 4 / 5; }

  .template-index .momo-category-carousel { height: auto !important; min-height: 0 !important; padding-top: 4.4rem !important; padding-bottom: 4.4rem !important; }
  .template-index .momo-category-carousel__header { padding-inline: 3.2rem !important; }
  .template-index .momo-category-carousel__header h2 { font-size: 2.8rem !important; line-height: 1.1 !important; }
  .template-index .momo-category-carousel__slide { width: 81.8vw !important; flex-basis: 81.8vw !important; }
  .template-index .momo-category-carousel__content { padding: 1.2rem .8rem 1.6rem !important; }

  .menu-drawer { width: 100vw !important; max-width: none !important; }

  .template-collection .mobile-facets__count { display: block !important; visibility: visible !important; opacity: 1 !important; }
  .template-collection .mobile-facets__main { padding-top: 2.4rem !important; }
  .template-collection .mobile-facets__details--sort { order: -2 !important; }
  .template-collection .mobile-facets__details:has(.facets__price) { order: 1 !important; }
  .template-collection .mobile-facets__details:not(.mobile-facets__details--sort):not(:has(.facets__price)) { order: 0 !important; }
  .template-collection .momo-sort-options { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-template-rows: repeat(5, minmax(2.3rem, auto)) !important; grid-auto-flow: column !important; gap: 1.2rem 2rem !important; }
  .template-collection .momo-sort-option { font-size: 1.4rem !important; line-height: 1.35 !important; }
}

@media screen and (min-width: 750px) and (max-width: 989px) {
  .template-index .momo-usp { height: 6.896875rem !important; min-height: 6.896875rem !important; }
  .template-index .momo-product-tabs { height: 53.0421875rem !important; min-height: 53.0421875rem !important; }
  .template-index .momo-category-carousel { height: 43.6828125rem !important; min-height: 43.6828125rem !important; }
  .template-index .momo-collection-index { height: 20.184375rem !important; min-height: 20.184375rem !important; }
  .template-index .momo-ugc { height: 69.534375rem !important; min-height: 69.534375rem !important; padding: 7.6rem 0 4.4rem !important; }
  .template-index .momo-ugc__header { height: 2.5296875rem !important; margin-bottom: 1.6rem !important; padding-inline: 3.2rem !important; }
  .template-index .momo-ugc__header h2 { font-size: 2.4rem !important; line-height: 2.5296875rem !important; }
  .template-index .momo-ugc__rail { height: 46.725rem !important; padding-top: 1.6rem !important; }
  .template-index .momo-footer { height: 115.46rem !important; min-height: 115.46rem !important; }
}

/* 2026-08-21 live-reference lock: final cascade for the current noo.ma geometry. */
@media screen and (min-width: 990px) {
  .template-index .momo-product-tabs { height: calc(35.99776182rem + 24.77477477vw + .1433rem) !important; }
  .template-index .momo-category-carousel { height: calc(29.07652027rem + 24.98592342vw + .149rem) !important; }
  .template-index .momo-product-tabs__slide {
    height: calc(12.11807432rem + 24.77477477vw + .121rem) !important;
    flex-basis: calc(20% - 1.022rem) !important;
    transition: transform .25s ease-out, box-shadow .25s ease-out;
  }
}
@media screen and (max-width: 749px) {
  .template-index .momo-product-tabs { height: 59.6671875rem !important; min-height: 59.6671875rem !important; padding: 6.159rem 0 !important; }
  .template-index .momo-product-tabs > .page-width { padding-inline: 0 !important; }
  .template-index .momo-product-tabs__header { height: 2.28rem !important; margin-bottom: 2.4rem !important; padding-inline: 1.6rem !important; }
  .template-index .momo-product-tabs__tablist button { height: 2.28rem !important; font-size: 1.6rem !important; line-height: 2.28rem !important; }
  .template-index .momo-category-carousel { height: 258.7109375rem !important; min-height: 258.7109375rem !important; padding: 4.4rem 0 !important; overflow: hidden !important; }
  .template-index .momo-category-carousel > .page-width { height: 249.9109375rem !important; padding-inline: 0 !important; }
  .template-index .momo-category-carousel__header { height: 3.039rem !important; margin-bottom: 2.4rem !important; padding-inline: 1.6rem !important; }
  .template-index .momo-category-carousel__header h2 { font-size: 1.9rem !important; line-height: 3.039rem !important; }
  .template-index .momo-category-carousel__controls { display: none !important; }
  .template-index .momo-category-carousel__track { display: grid !important; height: 240.097rem !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; grid-auto-rows: 30.528rem !important; column-gap: .4rem !important; row-gap: 4.4rem !important; overflow: hidden !important; }
  .template-index .momo-category-carousel__slide { display: grid !important; width: auto !important; height: 30.528rem !important; min-width: 0 !important; grid-template-rows: 23.5rem 5.428rem !important; gap: 1.6rem !important; }
  .template-index .momo-category-carousel__image { width: auto !important; height: 23.5rem !important; aspect-ratio: auto !important; }
  .template-index .momo-category-carousel__content { width: auto !important; height: 5.428rem !important; min-height: 0 !important; padding: 0 .8rem !important; }
  .template-index .momo-category-carousel__content h3 { margin: 0 0 1.2rem !important; font-size: 1.9rem !important; line-height: 1.9rem !important; }
  .template-index .momo-category-carousel__content .momo-text-link { font-size: 1.6rem !important; line-height: 2.328rem !important; }
  .template-index .momo-promos { height: 157.6rem !important; }
  .momo-ugc__header h2 { line-height: 1.6 !important; }
}

/* TRUE EOF responsive lock (2026-08-22): keep screenshot-state geometry
   authoritative after every Dawn lazy-style insertion. */
@media screen and (max-width: 749px) {
  .menu-drawer {
    left: 34px !important;
    width: calc(100vw - 34px) !important;
    max-width: none !important;
    box-shadow: -34px 0 0 rgb(247, 242, 204) !important;
  }
  .template-index .momo-product-tabs__rail {
    display: flex !important;
    gap: 2px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory;
  }
  .template-index .momo-product-tabs__slide {
    width: 76vw !important;
    flex: 0 0 76vw !important;
    scroll-snap-align: start;
  }
  .template-index .momo-category-carousel {
    height: auto !important;
    min-height: 0 !important;
    padding: 44px 0 !important;
    overflow: hidden !important;
  }
  .template-index .momo-category-carousel__track {
    display: flex !important;
    height: auto !important;
    gap: 4px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory;
  }
  .template-index .momo-category-carousel__slide {
    display: block !important;
    width: calc(100vw - 30px) !important;
    flex: 0 0 calc(100vw - 30px) !important;
    height: auto !important;
    scroll-snap-align: start;
  }
  .template-index .momo-category-carousel__image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 5 / 6 !important;
  }
  .template-index .momo-category-carousel__content {
    width: 100% !important;
    min-height: 54px !important;
    padding: 0 !important;
  }
  .template-collection .mobile-facets__main {
    min-height: 100dvh !important;
    padding-bottom: 96px !important;
  }
  .template-collection .mobile-facets__footer {
    box-sizing: border-box !important;
    position: fixed !important;
    z-index: 20 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 72px !important;
    min-height: 72px !important;
    padding: 12px 16px !important;
    border-top: 1px solid rgb(var(--momo-line));
    background: rgb(var(--momo-paper));
  }

  /* The reference drawer presents sorting before the live filter facets. A
     flex order keeps the Liquid data loop intact while fixing visual order. */
  .template-collection .mobile-facets__main {
    display: flex !important;
    flex-direction: column !important;
  }
  .template-collection .mobile-facets__details--sort { order: -1 !important; }
  .template-collection .mobile-facets__details:not(.mobile-facets__details--sort) { order: 0 !important; }
  .template-collection .mobile-facets__main > .mobile-facets__footer { order: 2 !important; }
}

/* TRUE EOF collection filter lock (2026-08-22): win after every Dawn
   component-style insertion in the mobile drawer. */
@media screen and (max-width: 749px) {
  .template-collection .mobile-facets__header,
  .template-collection .mobile-facets__header-inner { height: 99px !important; min-height: 99px !important; }
  .template-collection .mobile-facets__main { padding-top: 16px !important; }
  .template-collection .mobile-facets__details--sort { margin-bottom: 0 !important; border-bottom: 1px solid rgb(var(--momo-line)) !important; }
  .template-collection .mobile-facets__details--sort > .mobile-facets__summary,
  .template-collection .mobile-facets__details--sort > .mobile-facets__summary > div { height: 36px !important; min-height: 36px !important; }
  .template-collection .momo-sort-panel { padding: 2px 0 23px !important; }
  .template-collection .mobile-facets__details:not(.mobile-facets__details--sort) > .mobile-facets__summary,
  .template-collection .mobile-facets__details:not(.mobile-facets__details--sort) > .mobile-facets__summary > div { height: 76px !important; min-height: 76px !important; }
  .template-collection .mobile-facets__details:has(.facets__price) > .mobile-facets__summary,
.template-collection .mobile-facets__details:has(.facets__price) > .mobile-facets__summary > div { height: 65px !important; min-height: 65px !important; }
}

/* Shopify Account parity: the target's hosted surface inherits a 16px Futura
   body scale. These are the public host variables/part, not shadow internals. */
shopify-account.header__icon {
  --shopify-account-font-body: var(--font-body-family) !important;
  --shopify-account-font-heading: var(--font-heading-family) !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
}
shopify-account.header__icon::part(dialog) {
  width: 360px !important;
  max-width: min(360px, calc(100vw - 32px)) !important;
  --font-size-xs: 14px !important;
  --font-size-sm: 16px !important;
  --font-size-md: 18px !important;
  --font-size-lg: 24px !important;
  font-size: 16px !important;
  box-shadow: rgba(0, 0, 0, .1) 0 2px 16px, rgba(0, 0, 0, .25) 0 4px 60px !important;
}
@media screen and (min-width: 751px) {
  shopify-account.header__icon {
    --shopify-account-dialog-position-top: 93px !important;
  }
}

/* Cart route parity: noo.ma keeps its 32px sale bar on /cart and uses a
   363.578px empty state before the recommendation rail. */
body.template-cart .announcement-bar-section {
  display: block !important;
}
@media screen and (min-width: 750px) {
  .template-cart cart-items.is-empty,
  .template-cart cart-items.is-empty > .page-width .cart__warnings {
    min-height: 36.3578rem !important;
  }
  .template-cart cart-items.is-empty > .page-width .cart__warnings {
    padding-top: 12.8rem !important;
  }
}

/* 2026-08-22 drawer parity EOF lock.
   The reference drawers use a clean left-aligned sheet, 378px menu rail,
   and unboxed localization rows. Keep this last so Dawn's deferred sheets
   cannot restore the previous offset, pale edge, or bordered controls. */
.menu-drawer {
  left: 0 !important;
  width: min(calc(100vw - 7.5rem), 37.8rem) !important;
  max-width: 37.8rem !important;
  box-shadow: none !important;
  background: rgb(var(--momo-paper)) !important;
}
.menu-drawer__navigation {
  padding: 2.4rem 3.2rem 0 !important;
}
.menu-drawer__menu-item,
.menu-drawer summary.menu-drawer__menu-item {
  min-height: 2.28rem !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  font-size: 1.9rem !important;
  line-height: 2.28rem !important;
  font-weight: 450 !important;
  color: rgb(var(--momo-ink)) !important;
}
.menu-drawer__menu > li:not(:last-child) { margin-bottom: 1.6rem !important; }
.menu-drawer__menu-item > .svg-wrapper:last-child { display: none !important; }
.menu-drawer__menu-item > .svg-wrapper:first-of-type { margin-left: auto !important; }
.menu-drawer__utility-links {
  margin-top: auto !important;
  padding: 2.4rem 3.2rem !important;
  border-top: 0 !important;
  background: rgb(var(--momo-paper)) !important;
}
.menu-drawer__location {
  min-height: 4.8rem !important;
  border-top: .1rem solid rgb(var(--momo-line)) !important;
  border-bottom: .1rem solid rgb(var(--momo-line)) !important;
  font-size: 1.6rem !important;
  line-height: 1.92rem !important;
}

@media screen and (max-width: 749px) {
  .menu-drawer {
    width: min(calc(100vw - 7.5rem), 37.8rem) !important;
    max-width: 37.8rem !important;
  }

  .momo-localization-panel {
    top: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    max-width: none !important;
    height: 100dvh !important;
    transform: translateX(100%) !important;
  }
  .momo-localization-shell.is-open .momo-localization-panel {
    transform: translateX(0) !important;
  }
  .momo-localization-form {
    grid-template-rows: 6rem minmax(0, 1fr) 9.7rem !important;
  }
  .momo-localization-panel__header {
    min-height: 6rem !important;
    height: 6rem !important;
    padding: 0 3.2rem !important;
    border-bottom: .1rem solid rgba(0, 0, 0, .06) !important;
  }
  .momo-localization-panel__header h2 {
    margin: 0 !important;
    font-size: 1.6rem !important;
    line-height: 1.2 !important;
    font-weight: 450 !important;
    color: rgb(var(--momo-ink)) !important;
  }
  .momo-localization-panel__body {
    overflow-y: auto !important;
    padding: 0 3.2rem !important;
  }
  .momo-localization-panel__body > p {
    max-width: none !important;
    margin: 0 !important;
    padding: 2.8rem 0 2rem !important;
    color: rgb(var(--momo-muted)) !important;
    font-size: 1.6rem !important;
    line-height: 1.3 !important;
  }
  .momo-localization-field,
  .momo-localization-field[data-momo-location-field='country'],
  .momo-localization-field[data-momo-location-field='language'] {
    display: grid !important;
    min-height: 4.9rem !important;
    height: auto !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: center !important;
    gap: .4rem !important;
    padding: 0 !important;
    border: 0 !important;
    color: rgb(var(--momo-ink)) !important;
    font-size: 1.6rem !important;
    line-height: 1.6 !important;
  }
  .momo-localization-field::before {
    display: block !important;
    width: 100% !important;
    height: .1rem !important;
    grid-column: 1 / -1 !important;
    background: rgba(0, 0, 0, .06) !important;
    content: '' !important;
  }
  .momo-localization-field > span:first-child {
    display: block !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    font-weight: 500 !important;
  }
  .momo-localization-field__value {
    display: flex !important;
    min-width: 0 !important;
    align-items: center !important;
  }
  .momo-localization-choice,
  .momo-localization-field:not(.is-open) .momo-localization-choice,
  .momo-localization-field[data-momo-location-field='country'] .momo-localization-choice,
  .momo-localization-field[data-momo-location-field='language'] .momo-localization-choice {
    display: flex !important;
    width: 100% !important;
    min-height: 4.8rem !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: .4rem !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font: inherit !important;
    text-align: left !important;
  }
  .momo-localization-choice > span:first-child,
  .momo-localization-choice > span:first-child::before {
    overflow: visible !important;
    text-overflow: clip !important;
    content: none !important;
  }
  .momo-localization-choice > span:last-child {
    display: grid !important;
    width: 1.4rem !important;
    height: 1.4rem !important;
    flex: 0 0 1.4rem !important;
    margin-left: auto !important;
    place-items: center !important;
    overflow: hidden !important;
    color: currentColor !important;
    font-size: 0 !important;
    line-height: 1 !important;
    transform: none !important;
  }
  .momo-localization-choice > span:last-child::before {
    width: 0 !important;
    height: 0 !important;
    border-top: .4rem solid transparent !important;
    border-bottom: .4rem solid transparent !important;
    border-left: .55rem solid currentColor !important;
    content: '' !important;
  }
  .momo-localization-field.is-open {
    display: block !important;
    min-height: 0 !important;
    padding-bottom: 1.4rem !important;
  }
  .momo-localization-field.is-open::before { display: none !important; }
  .momo-localization-field.is-open > span:first-child {
    display: block !important;
    padding: .6rem 0 1rem !important;
  }
  .momo-localization-field.is-open .momo-localization-choice {
    min-height: 3rem !important;
    justify-content: space-between !important;
    padding: 0 !important;
  }
  .momo-localization-field.is-open .momo-localization-choice > span:last-child::before {
    transform: rotate(90deg) !important;
  }
  .momo-localization-panel__footer {
    display: flex !important;
    align-items: center !important;
    padding: 2.4rem 3.2rem !important;
    border-top: .1rem solid rgba(0, 0, 0, .06) !important;
  }
  .momo-localization-panel__footer .button {
    width: 100% !important;
    min-height: 4.8rem !important;
    margin: 0 !important;
    font-size: 1.4rem !important;
    line-height: 1 !important;
    font-weight: 450 !important;
    text-transform: uppercase !important;
  }
}

@media screen and (min-width: 750px) and (max-width: 989px) {
  .menu-drawer {
    left: 0 !important;
    width: 37.8rem !important;
    max-width: 37.8rem !important;
    box-shadow: none !important;
  }
}

/* Desktop and tablet share the same reference drawer geometry. */
.menu-drawer {
  position: fixed !important;
  top: 61px !important;
  right: auto !important;
  bottom: 0 !important;
  body .header__inline-menu > .list-menu--inline > li > a.header__menu-item,
  body .header__inline-menu > .list-menu--inline > li > details > summary.header__menu-item {
  width: 37.8rem !important;
  max-width: 37.8rem !important;
}
.momo-localization-panel {
  position: fixed !important;
  top: 0 !important;
  right: -1rem !important;
  bottom: 0 !important;
  left: auto !important;
  width: 52rem !important;
  max-width: 52rem !important;
  height: 100dvh !important;
}
.momo-localization-form {
  grid-template-rows: 6rem minmax(0, 1fr) 9.7rem !important;
}
.momo-localization-panel__header {
  min-height: 6rem !important;
  height: 6rem !important;
  padding: 0 3.2rem !important;
  border-bottom: .1rem solid rgba(0, 0, 0, .06) !important;
}
.momo-localization-panel__header h2 {
  margin: 0 !important;
  color: rgb(var(--momo-ink)) !important;
  font-size: 1.6rem !important;
  line-height: 1.2 !important;
  font-weight: 450 !important;
}
.momo-localization-panel__body {
  overflow-y: auto !important;
  padding: 0 3.2rem !important;
}
.momo-localization-panel__body > p {
  max-width: none !important;
  margin: 0 !important;
  padding: 2.8rem 0 2rem !important;
  color: rgb(var(--momo-muted)) !important;
  font-size: 1.6rem !important;
  line-height: 1.3 !important;
}
.momo-localization-field,
.momo-localization-field[data-momo-location-field='country'],
.momo-localization-field[data-momo-location-field='language'] {
  display: grid !important;
  min-height: 4.9rem !important;
  height: auto !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: .4rem !important;
  padding: 0 !important;
  border: 0 !important;
  color: rgb(var(--momo-ink)) !important;
  font-size: 1.6rem !important;
  line-height: 1.6 !important;
}
.momo-localization-field::before {
  display: block !important;
  width: 100% !important;
  height: .1rem !important;
  grid-column: 1 / -1 !important;
  background: rgba(0, 0, 0, .06) !important;
  content: '' !important;
}
.momo-localization-field > span:first-child {
  display: block !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  font-weight: 500 !important;
}
.momo-localization-field > span:first-child::after {
  content: ':' !important;
}
.momo-localization-field__value {
  display: flex !important;
  min-width: 0 !important;
  align-items: center !important;
}
.momo-localization-choice,
.momo-localization-field:not(.is-open) .momo-localization-choice,
.momo-localization-field[data-momo-location-field='country'] .momo-localization-choice,
.momo-localization-field[data-momo-location-field='language'] .momo-localization-choice {
  display: flex !important;
  width: 100% !important;
  min-height: 4.8rem !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: .4rem !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font: inherit !important;
  text-align: left !important;
}
.momo-localization-choice > span:first-child,
.momo-localization-choice > span:first-child::before {
  overflow: visible !important;
  text-overflow: clip !important;
  content: none !important;
}
.momo-localization-choice > span:last-child {
  display: grid !important;
  width: 1.4rem !important;
  height: 1.4rem !important;
  flex: 0 0 1.4rem !important;
  margin-left: auto !important;
  place-items: center !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 1 !important;
  transform: none !important;
}
.momo-localization-choice > span:last-child::before {
  width: 0 !important;
  height: 0 !important;
  border-top: .4rem solid transparent !important;
  border-bottom: .4rem solid transparent !important;
  border-left: .55rem solid currentColor !important;
  content: '' !important;
}
.momo-localization-panel__footer {
  display: flex !important;
  align-items: center !important;
  padding: 2.4rem 3.2rem !important;
  border-top: .1rem solid rgba(0, 0, 0, .06) !important;
}
.momo-localization-panel__footer .button {
  width: 100% !important;
  min-height: 4.8rem !important;
  margin: 0 !important;
  font-size: 1.4rem !important;
  line-height: 1 !important;
  font-weight: 450 !important;
  text-transform: uppercase !important;
}

@media screen and (max-width: 749px) {
  .menu-drawer {
    top: 61px !important;
    width: min(calc(100vw - 7.5rem), 37.8rem) !important;
    max-width: 37.8rem !important;
  }
  .momo-localization-panel {
    right: auto !important;
    right: auto !important;
    left: 0 !important;
    width: 100vw !important;
    max-width: none !important;
  }
}

/* Final localization state geometry. Keep the summary row and its options in
   the same reading order at every viewport; older grid rules placed the
   options beside the label when a field was expanded. */
.momo-localization-field {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  grid-template-rows: 48px !important;
  column-gap: 4px !important;
  row-gap: 0 !important;
  min-height: 48px !important;
  height: 48px !important;
  padding: 0 !important;
  border: 0 !important;
}
.momo-localization-field::before { display: none !important; }
.momo-localization-field + .momo-localization-field {
  min-height: 49px !important;
  height: 49px !important;
  border-top: 1px solid rgba(0, 0, 0, .06) !important;
}
.momo-localization-field[data-momo-location-field='country'],
.momo-localization-field[data-momo-location-field='language'] {
  min-height: 48px !important;
  height: 48px !important;
}
.momo-localization-field[data-momo-location-field='country'] +
.momo-localization-field[data-momo-location-field='language'] {
  min-height: 49px !important;
  height: 49px !important;
}
.momo-localization-field > span:first-child {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: flex !important;
  min-width: 0 !important;
  align-items: center !important;
  padding: 0 !important;
  white-space: nowrap !important;
}
.momo-localization-field__value {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: flex !important;
  min-width: 0 !important;
  align-items: center !important;
}
.momo-localization-choice {
  width: 100% !important;
  min-height: 48px !important;
  height: 48px !important;
  padding: 0 !important;
  border: 0 !important;
  justify-content: flex-start !important;
  text-align: left !important;
}
.momo-localization-choice > span:last-child {
  margin-left: auto !important;
}

.momo-localization-field.is-open {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  grid-template-rows: 48px auto !important;
  column-gap: 4px !important;
  row-gap: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
}
.momo-localization-field.is-open > span:first-child {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 !important;
}
.momo-localization-field.is-open .momo-localization-field__value {
  display: contents !important;
}
.momo-localization-field.is-open .momo-localization-choice {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-height: 48px !important;
  height: 48px !important;
  padding: 0 !important;
  border: 0 !important;
  justify-content: flex-start !important;
  text-align: left !important;
}
.momo-localization-field.is-open .momo-localization-choice > span:last-child {
  transform: none !important;
}
.momo-localization-field.is-open .momo-localization-choice > span:last-child::before {
  transform: rotate(90deg) !important;
}
.momo-localization-field.is-open .momo-localization-options {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 0 12.8px !important;
}
.momo-localization-field.is-open .momo-localization-search {
  width: 100% !important;
  height: 36px !important;
  min-height: 36px !important;
  padding: 0 !important;
  border: 0 !important;
}
.momo-localization-field.is-open .momo-localization-search input {
  width: 100% !important;
  height: 36px !important;
  min-height: 36px !important;
  padding: 8px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgb(var(--momo-line)) !important;
}
.momo-localization-field.is-open .momo-localization-options__list {
  width: 100% !important;
  height: 453px !important;
  max-height: 453px !important;
  margin-top: 11.2px !important;
}

@media screen and (max-width: 749px) {
  /* Match the target mobile header and full-width drawer origin. */
  .header.page-width {
    padding-inline: 16px !important;
  }
  header-drawer .menu-drawer,
  .menu-drawer {
    top: 39px !important;
    left: 0 !important;
    width: 100vw !important;
    max-width: none !important;
    box-shadow: none !important;
  }
  .menu-drawer__navigation {
    padding: 24px 16px 0 !important;
  }

  /* Secondary drawer lists bypass the primary navigation wrapper. Keep their
     text aligned to the drawer's 32px content rail instead of the viewport edge. */
  .menu-drawer__submenu .menu-drawer__menu {
    box-sizing: border-box !important;
    padding-inline: 32px !important;
  }
}

/* The reference home keeps its 32px announcement strip. This must be the
   final rule so the header and drawer share the same y-origin on mobile. */
body.template-index {
  --momo-announcement: 0px !important;
}
body.template-index .announcement-bar-section,
body.template-index .announcement-bar,
body.template-index .announcement-bar-slider {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  visibility: hidden !important;
}
body.template-index .section-header { top: 0 !important; }

/* Header drawer is anchored to the 61px header after the announcement bar. */
@media screen and (min-width: 750px), screen and (max-width: 749px) {
  header-drawer .menu-drawer,
  .menu-drawer {
    top: 61px !important;
  }
}

/* Product Tabs parity lock (2026-08-22): measured from noo.ma's resource list
   at the same card ratio. Keep these rules last so Dawn lazy styles cannot
   move the information rail or action state after first paint. */
.template-index .momo-product-tabs__rail {
  display: flex !important;
  gap: 2px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
}
.template-index .momo-product-tabs__rail::-webkit-scrollbar { display: none; }
.template-index .momo-product-tabs__slide {
  min-width: 0 !important;
  overflow: visible !important;
  scroll-snap-align: start;
  transition: none !important;
}
.template-index .momo-product-tabs__slide .card-wrapper,
.template-index .momo-product-tabs__slide .card { position: relative; }
.template-index .momo-product-tabs__slide .card__inner,
.template-index .momo-product-tabs__slide .card__media,
.template-index .momo-product-tabs__slide .card__media .media { overflow: hidden; }
.template-index .momo-product-tabs__slide .card__media,
.template-index .momo-product-tabs__slide .card__media .media { background: #f7f7f7; }
.template-index .momo-product-tabs__slide .card__information {
  box-sizing: border-box;
  width: 100%;
  padding: 20px 0 0 16px !important;
}
.template-index .momo-product-tabs__slide .card__heading,
.template-index .momo-product-tabs__slide .card__heading a {
  margin: 0 !important;
  color: rgb(var(--momo-ink));
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  letter-spacing: 0;
}
.template-index .momo-product-tabs__slide .momo-card-color-name {
  min-height: 0;
  margin: 7px 0 0 !important;
  color: rgb(var(--momo-ink));
  font-size: 14px !important;
  line-height: 19.6px !important;
}
.template-index .momo-product-tabs__slide [data-momo-card-price] {
  margin-top: 8px !important;
}
.template-index .momo-product-tabs__slide [data-momo-card-price] .price {
  margin: 0 !important;
  color: rgb(var(--momo-ink));
  font-size: 14px !important;
  line-height: 21px !important;
}
.template-index .momo-product-tabs__slide .momo-card-swatches {
  align-items: center;
  gap: 8px !important;
  min-height: 23px;
  margin-top: 8px !important;
  padding-bottom: 8px;
}
.template-index .momo-product-tabs__slide .momo-card-swatch {
  box-sizing: border-box;
  display: grid;
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px;
  place-items: center;
  padding: 0 !important;
  border: 1px solid transparent !important;
  border-radius: 0;
  background: transparent;
  transition: opacity .15s ease, border-color .15s ease;
}
.template-index .momo-product-tabs__slide .momo-card-swatch.is-active,
.template-index .momo-product-tabs__slide .momo-card-swatch[aria-pressed='true'] {
  border-color: transparent !important;
  outline: 0 !important;
  box-shadow: none !important;
}
.template-index .momo-product-tabs__slide .momo-card-swatch__chip {
  display: block;
  width: 16px !important;
  height: 16px !important;
  border: 0 !important;
  border-radius: 0;
}
.template-index .momo-product-tabs__slide .momo-card-swatch:hover,
.template-index .momo-product-tabs__slide .momo-card-swatch:focus-visible { opacity: .7; }
.template-index .momo-product-tabs__slide .momo-card-swatches__more {
  min-height: 16px;
  color: rgb(var(--momo-muted));
  font-size: 11px !important;
  line-height: 11px !important;
}
.template-index .momo-product-tabs__slide .momo-card-media-controls {
  right: auto;
  bottom: 0;
  left: 0;
  width: 64px;
  height: 32px;
  gap: 0;
}
.template-index .momo-product-tabs__slide .momo-card-media-controls button {
  width: 32px !important;
  height: 32px !important;
  background: #f2f2f2;
  color: rgb(var(--momo-ink));
}
.template-index .momo-product-tabs__slide .momo-card-media-controls button:disabled { color: rgba(var(--momo-ink), .25); }
.template-index .momo-product-tabs__slide .momo-card-media-controls {
  opacity: 0;
  transform: translateY(4px);
  pointer-events: none;
  transition: opacity .18s ease, transform .18s ease;
}
.template-index .momo-product-tabs__slide .card-wrapper:hover .momo-card-media-controls,
.template-index .momo-product-tabs__slide .card-wrapper:focus-within .momo-card-media-controls {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}
.template-index .momo-product-tabs__slide .momo-product-card-badge {
  position: absolute;
  z-index: 4;
  top: 16px;
  left: 16px;
  display: flex;
  min-height: 19px;
  align-items: center;
  box-sizing: border-box;
  padding: 4px 6px;
  background: #d9def2;
  color: #171854;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: .88px;
  line-height: 11px;
  text-transform: uppercase;
  pointer-events: none;
}
.template-index .momo-product-tabs__slide .quick-add {
  z-index: 8;
  display: none;
  right: 12.8px !important;
  bottom: 12.8px;
  width: 24px !important;
  height: 24px;
  margin: 0;
  opacity: 0;
  transform: none;
  transition: opacity .2s ease-in-out, transform .2s ease-in-out;
}
.template-index .momo-product-tabs__slide .card {
  overflow: visible !important;
}
.template-index .momo-product-tabs__slide .card__inner {
  position: relative;
}
.template-index .momo-product-tabs__slide .card-wrapper:hover .quick-add,
.template-index .momo-product-tabs__slide .card-wrapper:focus-within .quick-add,
.template-index .momo-product-tabs__slide .quick-add:focus-within {
  display: block;
  opacity: 1;
  transform: none;
}
.template-index .momo-product-tabs__slide .quick-add__submit {
  display: grid;
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  place-items: center;
  box-sizing: border-box;
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  background: rgb(var(--momo-ink));
  color: rgb(var(--momo-paper));
  transition: background-color .3s cubic-bezier(.25,.46,.45,.94), box-shadow .1s ease;
  --momo-text-speed: .26s;
  --momo-base-delay: .065s;
}
.template-index .momo-product-tabs__slide .momo-card-quick-added {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  pointer-events: none;
}
.template-index .momo-product-tabs__slide .momo-checkmark-burst { width: 16px; height: 16px; opacity: 0; overflow: visible; }
.template-index .momo-product-tabs__slide .momo-checkmark-burst .momo-check { opacity: .2; transform: scale(.8); filter: blur(2px); transform-origin: center; }
.template-index .momo-product-tabs__slide .momo-checkmark-burst .momo-burst { transform: rotate(20deg); }
.template-index .momo-product-tabs__slide .momo-checkmark-burst .momo-burst > g { transform-origin: center; transform-box: fill-box; transform: rotate(calc(var(--momo-index) * 45deg)); }
.template-index .momo-product-tabs__slide .momo-checkmark-burst .momo-line { stroke-dasharray: 1.5,1.5; stroke-dashoffset: -1.5; transform: translateY(-180%); transform-box: fill-box; transform-origin: center; }
.template-index .momo-product-tabs__slide .momo-checkmark-burst .momo-ring,
.template-index .momo-product-tabs__slide .momo-checkmark-burst .momo-tick { transform-box: fill-box; transform-origin: center; }
.template-index .momo-product-tabs__slide .quick-add__submit[data-momo-added='true'] .momo-card-quick-icon { clip-path: circle(0% at 50% 50%); filter: blur(2px); opacity: 0; transform: translateY(4px); transition: clip-path .156s ease-out, opacity .26s ease-out, filter .156s ease-out, transform .26s ease-out; }
.template-index .momo-product-tabs__slide .quick-add__submit[data-momo-added='true'] .momo-checkmark-burst { opacity: 1; }
.template-index .momo-product-tabs__slide .quick-add__submit[data-momo-added='true'] .momo-check { opacity: 1; transform: scale(1); filter: blur(0); transition: opacity .2s ease-out, transform .2s ease-out, filter .2s ease-out; transition-delay: .065s; }
.template-index .momo-product-tabs__slide .quick-add__submit[data-momo-added='true'] .momo-tick { transform: scale(1); transition: transform .1s ease-out; transition-delay: .725s; }
.template-index .momo-product-tabs__slide .quick-add__submit[data-momo-added='true'] .momo-ring { opacity: 1; transform: scale(1); transition: opacity .2s ease-out, transform .2s ease-out; transition-delay: .665s; }
.template-index .momo-product-tabs__slide .quick-add__submit[data-momo-added='true'] .momo-line { stroke-dashoffset: 0; transition: stroke-dashoffset .32s cubic-bezier(.22,1,.36,1); transition-delay: .665s; }
.template-index .momo-product-tabs__slide .quick-add__submit:hover,
.template-index .momo-product-tabs__slide .quick-add__submit:focus-visible { background: #3d3934; box-shadow: 0 0 0 2px rgb(var(--momo-paper)), 0 0 0 3px rgb(var(--momo-ink)); }
.template-index .momo-product-tabs__slide .quick-add__submit.loading { opacity: .65; pointer-events: none; }
.template-index .momo-product-tabs__slide .quick-add__submit.loading .momo-card-quick-icon { opacity: 0; }
.template-index .momo-product-tabs__slide .quick-add__submit.loading .loading__spinner { display: block; width: 14px; height: 14px; }
.template-index .momo-product-tabs__slide .momo-card-quick-icon,
.template-index .momo-product-tabs__slide .momo-card-quick-icon svg { width: 16px; height: 16px; color: currentColor; }
.template-index .momo-product-tabs__slide [data-momo-card-image][data-media-index='0'] { object-fit: contain !important; }
.template-index .momo-product-tabs__slide [data-momo-card-image]:not([data-media-index='0']) { object-fit: cover !important; }

/* Collection cards use the same compact, icon-only quick add and swatch
   geometry as the working homepage cards. Keep the rule collection-scoped. */
.template-collection #product-grid .quick-add {
  z-index: 8;
  right: 12.8px !important;
  bottom: 12.8px;
  width: 24px !important;
  height: 24px;
  margin: 0;
  opacity: 0;
  transform: none;
  transition: opacity .2s ease-in-out, transform .2s ease-in-out;
}
.template-collection #product-grid .card-wrapper:hover .quick-add,
.template-collection #product-grid .card-wrapper:focus-within .quick-add,
.template-collection #product-grid .quick-add:focus-within { opacity: 1; transform: none; }
.template-collection #product-grid .quick-add__submit {
  display: grid;
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  place-items: center;
  box-sizing: border-box;
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  background: rgb(var(--momo-ink));
  color: rgb(var(--momo-paper));
  font-size: 0;
  transition: background-color .3s cubic-bezier(.25,.46,.45,.94), box-shadow .1s ease;
}
.template-collection #product-grid .momo-card-quick-icon,
.template-collection #product-grid .momo-card-quick-icon svg { width: 16px; height: 16px; color: currentColor; }
.template-collection #product-grid .quick-add__submit:hover,
.template-collection #product-grid .quick-add__submit:focus-visible {
  background: #3d3934;
  box-shadow: 0 0 0 2px rgb(var(--momo-paper)), 0 0 0 3px rgb(var(--momo-ink));
}
.template-collection #product-grid .momo-card-swatches { align-items: center; gap: 8px; min-height: 23px; margin-top: 8px; padding-bottom: 8px; }
.template-collection #product-grid .momo-card-swatch { width: 16px; height: 16px; flex: 0 0 16px; padding: 0; border: 1px solid transparent; border-radius: 0; }
.template-collection #product-grid .momo-card-swatch__chip { width: 16px; height: 16px; border: 0; border-radius: 0; }
.template-collection #product-grid .momo-card-swatch.is-active,
.template-collection #product-grid .momo-card-swatch[aria-pressed='true'] { border-color: transparent; outline: 0; box-shadow: none; }

@media screen and (max-width: 749px) {
  .template-index .momo-product-tabs__slide .card__information { padding: 16px 0 0 12px !important; }
  .template-index .momo-product-tabs__slide .momo-product-card-badge { top: 12px; left: 12px; }
  .template-index .momo-product-tabs__slide .quick-add { right: 10px !important; bottom: 10px; }
}

/* Final EOF hero geometry boundary. */
@media screen and (min-width: 750px) {
  .template-index .momo-split-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; height: calc(100svh - var(--momo-header)) !important; min-height: 0 !important; }
  .template-index .momo-split-hero__copy,
  .template-index .momo-split-hero__media { height: 100% !important; min-height: 0 !important; }
  .template-index .momo-split-hero__copy { position: relative; }
  .template-index .momo-split-hero__copy-inner { position: static; }
  .template-index .momo-split-hero__copy-inner { display: flex; align-items: center; flex-direction: column; justify-content: center; }
  .template-index .momo-split-hero__copy-inner h1,
  .template-index .momo-split-hero__overlay h2 { margin: 0; }
  .template-index .momo-split-hero__copy-inner > p:not(.momo-split-hero__eyebrow) { margin: 2.4rem auto 0; }
  .template-index .momo-split-hero__copy-inner .momo-split-hero__button,
  .template-index .momo-split-hero__overlay .momo-split-hero__button { margin-top: 3.2rem; }
  .template-index .momo-split-hero__overlay { position: absolute; inset: 0; display: flex; align-items: center; flex-direction: column; justify-content: center; }
  .template-index .momo-split-hero__overlay p { margin: 2.4rem 0 0; }
}

/* Final EOF lock for the audited product rail and desktop search trigger. */
@media screen and (min-width: 750px) {
  .template-index .momo-product-tabs__rail {
    height: auto !important;
    min-height: 0 !important;
    align-items: flex-start;
  }
  .template-index .momo-product-tabs__slide {
    height: auto !important;
    align-self: flex-start;
  }
}
@media screen and (min-width: 990px) {
  .header__icons > .header__search {
    left: auto !important;
    width: auto !important;
    min-width: 16rem !important;
    max-width: 32rem !important;
    margin: 0 var(--momo-space-4) 0 0 !important;
    position: static !important;
    inset: auto !important;
    flex: 1 1 clamp(16rem, 24vw, 32rem) !important;
  }
  .header__icons > .header__search .header__icon--search {
    width: 100% !important;
    padding: 0 1.2rem !important;
    justify-content: flex-start;
    gap: 8px;
  }
  .header__icons > .header__search .header__icon--search::after {
    margin-left: 0;
    content: 'Search';
    color: currentColor;
    font-size: 14px;
    line-height: 1;
  }
}

/* Audited final geometry: keep the 32px announcement content centered,
   offset the localization drawer below it, and balance the footer split. */
body.template-index .announcement-bar__link,
body.template-index .announcement-bar-slider,
body.template-index .announcement-bar {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 32px !important;
  min-height: 32px !important;
}
body.template-index .momo-announcement__message {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 32px !important;
  min-height: 32px !important;
  margin: 0 !important;
  font-size: 12px !important;
  line-height: 12px !important;
}
body.template-index .momo-announcement__message > span,
body.template-index .momo-announcement__cta,
body.template-index .momo-announcement__message svg {
  display: inline-flex !important;
  align-items: center !important;
  height: 12px !important;
  line-height: 12px !important;
}
html body.template-index .momo-announcement__message,
html body.template-index .momo-announcement__message > span,
html body.template-index .momo-announcement__cta {
  font-size: 12px !important;
}
.momo-localization-panel {
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 52rem !important;
  max-width: calc(100vw - 32px) !important;
  height: 100dvh !important;
}
.momo-localization-form {
  grid-template-rows: 6rem minmax(0, 1fr) 9.7rem !important;
}
@media screen and (min-width: 750px) {
  body.template-index .momo-footer__top {
    height: auto !important;
    min-height: 0 !important;
    padding-top: 3.2rem !important;
    padding-bottom: 1.6rem !important;
  }
  body.template-index .momo-footer__brand {
    margin-top: 0 !important;
    padding-top: 4rem !important;
    padding-bottom: 6rem !important;
  }
  body.template-index .momo-footer__brand-stack > span { font-size: 9rem !important; }
}
@media screen and (max-width: 749px) {
  .momo-localization-panel {
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100dvh !important;
  }
}

/* Secondary navigation is a child layer of the primary drawer. Its original
   full-width absolute positioning placed the panel directly on the viewport
   edge; inset only this child layer while preserving the drawer's hit area. */
.menu-drawer > .menu-drawer__inner-container .menu-drawer__submenu {
  left: 1.6rem !important;
  width: calc(100% - 1.6rem) !important;
}

/* Header readability pass: keep the compact noo.ma information architecture,
   but give each navigation item enough typographic presence to scan quickly. */
@media screen and (min-width: 990px) {
  body .header__inline-menu .list-menu--inline { column-gap: 3.2rem !important; }
  body .header__inline-menu > .list-menu--inline > li > a.header__menu-item,
  body .header__inline-menu > .list-menu--inline > li > details > summary.header__menu-item {
    padding-inline: 0 !important;
    font-size: 1.5rem !important;
    font-weight: 500 !important;
    letter-spacing: .025em !important;
    line-height: 1.2 !important;
  }
  body .header__inline-menu .header__menu-item span { font-weight: 500 !important; }
  body .header__icons .header__icon--search::after,
  body .header__icons .header__icon--account::after,
  body .header__icons .wishlist-hero-header-link::after,
  body .header__icons .header__icon--cart::after {
    font-size: 1.4rem !important;
    font-weight: 500 !important;
    letter-spacing: .025em !important;
  }
  body .header__icons { gap: 1rem !important; }
}

/* Final homepage cascade: the measured noo.ma rhythm must win over legacy
   geometry guards above, while keeping the MOMO mark visually subordinate. */
body.template-index .momo-footer__top {
  height: auto !important;
  min-height: 34rem !important;
  padding-top: 8rem !important;
  padding-bottom: 7.2rem !important;
}
body.template-index .momo-footer__lead h2 { font-size: 4.2rem !important; line-height: 1.08 !important; }
body.template-index .momo-footer__brand {
  min-height: 15rem !important;
  padding-top: 4.8rem !important;
  padding-bottom: 3.2rem !important;
}
body.template-index .momo-footer__brand-stack > span { font-size: 6.4rem !important; line-height: .85 !important; }
body.template-index .momo-footer__bottom { display: flex !important; }
body.template-index .momo-split-hero__button {
  min-height: 5.1rem !important;
  font-size: 1.4rem !important;
  font-weight: 500 !important;
  letter-spacing: .04em !important;
}
@media screen and (max-width: 749px) {
  body.template-index .momo-footer__top { min-height: 0 !important; padding-top: 5.6rem !important; padding-bottom: 4.8rem !important; }
  body.template-index .momo-footer__brand { min-height: 0 !important; padding-top: 3.6rem !important; padding-bottom: 2.8rem !important; }
  body.template-index .momo-footer__brand-stack > span { font-size: 4.8rem !important; }
}

/* Canonical final override. Keep one authoritative rule at EOF so legacy
   geometry blocks cannot reset the utility labels. */
@media screen and (min-width: 990px) {
  body .header__icons .momo-account-control { order: 2 !important; display: inline-flex !important; flex: 0 0 auto !important; align-items: center !important; justify-content: center !important; gap: 0 !important; }
  body .header__icons .momo-account-control shopify-account { width: auto !important; min-width: 0 !important; height: auto !important; min-height: 0 !important; }
  body .header__icons .momo-account-control .momo-header-label { display: inline !important; }
  body .header__icons .momo-account-control + .wishlist-hero-header-link { order: 3 !important; }
  body .header__icons .momo-account-control ~ .header__icon--cart { order: 4 !important; }
  body .header__icons .momo-account-control ~ .desktop-localization-wrapper { order: 1 !important; }
  html body .header__icons .header__icon--account::after,
  html body .header__icons .wishlist-hero-header-link::after,
  html body .header__icons .header__icon--cart::after {
    display: inline !important;
    margin: 0 !important;
    font-family: 'Futura PT', Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
  }
}

@media screen and (min-width: 990px) {
  html body .header__icons .header__icon--cart .momo-cart-label,
  html body .header__icons .header__icon--cart .momo-cart-label > span {
    font-family: 'Futura PT', Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
  }
}





/* Final menu and homepage quick-add fixes */
.shopify-section-header-hidden.menu-open {
  top: 0 !important;
}

header-drawer,
header-drawer .menu-drawer,
.menu-drawer-container > details > .menu-drawer {
  z-index: 2147483001 !important;
}

header-drawer .menu-drawer {
  position: fixed !important;
  top: 61px !important;
  height: calc(100dvh - 61px) !important;
  max-height: calc(100dvh - 61px) !important;
  filter: none !important;
  box-shadow: none !important;
}

.template-index .momo-product-tabs__slide .quick-add {
  background: transparent !important;
  box-shadow: none !important;
}
