/** Shopify CDN: Minification failed

Line 1121:0 Unexpected "}"

**/
/* ═══════════════════════════════════════════════════════════════════
   EMETTE — FASHION LAYER (se încarcă ultimul, câștigă cascada)
   Direcția: marile case de modă (COS / Toteme / The Row):
   canvas aproape alb, muchii drepte, fotografia respiră,
   Jost (grotesc geometric) pe UI, Marcellus doar pe titluri.
   ═══════════════════════════════════════════════════════════════════ */

/* ── 0. NICIO SUBLINIERE — nicio linie sub cuvinte, nicăieri pe site ── */
a, a:hover, a:focus, a:active,
.underline-links-hover a:hover,
.underline-links-hover a:focus {
  text-decoration: none !important;
}
.em-gz-cats__cta {
  border-bottom: none !important;
  padding-bottom: 0 !important;
}
/* `.em-gz-hero__link` used to be an underlined text link, so it was stripped of
   its bottom border here. It is a pill with a border on all four sides now, and
   the rule was cutting the bottom edge off that pill. Underlines are already
   handled by the text-decoration reset above, so nothing needs to replace it. */

/* ── 1. TOKENS — canvas-ul se mută de pe bej pe off-white ── */
:root {
  --em-base:      #DCC7B0;
  --em-surface:   #E7DAC6;
  --em-surface-2: #D0B999;
  --em-bej:       #DCC7B0;
  --em-border:    #C2AB8B;
  --em-ink:       #2F241D;
  --em-chocolate: #4B362B;
  --em-muted:     #5E5247; /* darkened from #6E635A: 3.57:1 on bej failed AA text (4.5:1); this hits 4.63:1 */
  --em-font-display: 'DM Sans', system-ui, sans-serif;
  --em-font-body: 'DM Sans', system-ui, sans-serif;
}

html, body {
  background-color: var(--em-base) !important;
  color: var(--em-ink);
}

/* Sistem de greutăți Archivo (demo1): display 800-900, UI 400-600 */
h2[class*="__title"], .emette-catalog__title, .emette-catalog__chapter-title,
.title.h2, .collection__title h2 {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

::selection { background: var(--em-chocolate); color: var(--em-base); }

/* ── 2. HEADER — bar curat pe off-white ── */
.shopify-section-group-header-group {
  background-color: var(--em-base) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.header { background: transparent !important; }
.header__heading-link, .header__heading-link .h2 {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 27px !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
}

/* Mobile: the 27px desktop wordmark size wraps "Emette Design" onto two
   lines inside the narrow centered logo column (bug — inflated the header
   to 105px and broke vertical centering). Scale it down to fit on one line. */
@media screen and (max-width: 749px) {
  .header__heading-link .h2 {
    font-size: 15px !important;
    letter-spacing: 0.02em !important;
    white-space: nowrap;
  }
}
.header__menu-item span, .header__menu-item a {
  font-size: 13px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase;
  font-weight: 600 !important;
  color: #2F241D !important;
}

/* emette-taste.css / emette-brand.css add an animated ::after underline on
   .header__menu-item span for hover/active, colored --em-bej (#DCC7B0) —
   identical to the header background, so it is invisible and never does
   anything (dead effect layered under Dawn's real text-decoration
   underline, which already gives correct, visible hover/active feedback).
   Disable the invisible duplicate instead of leaving confusing dead CSS. */
.header__menu-item span::after {
  content: none !important;
}

/* ── 3. BUTOANE — dreptunghiulare, uppercase, fără pill ──
   .product-form__submit (ATC) exclus intenționat: PDP folosește
   convenția VELORA — 58px / colț 12px, vezi secțiunea 10 mai jos.
   Fără acest :not(), regula genera un conflict de specificitate
   egală cu override-ul VELORA și câștiga imprevizibil, lăsând
   butonul de Add to Cart cu colțuri drepte și text 12px caps. */
.button:not(.product-form__submit),
.btn:not(.product-form__submit),
.shopify-challenge__button,
.customer button,
button.button:not(.product-form__submit),
.emette-hero__cta-primary,
.emette-vbanner__cta,
.emette-vidquote__cta {
  border-radius: 0 !important;
  font-family: var(--em-font-body) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}
.emette-hero__cta-primary, .emette-hero__cta-secondary {
  border-radius: 0 !important;
}

/* Butonul principal de produs: negru plin, lat, ferm */
.product-form__submit {
  background: var(--em-ink) !important;
  color: #FFFFFF !important;
  min-height: 52px;
  border: 1px solid var(--em-ink) !important;
  transition: background 250ms ease, color 250ms ease;
}
.product-form__submit:hover { background: var(--em-chocolate) !important; border-color: var(--em-chocolate) !important; }

/* Buy-it-now: contur simplu, aceeași geometrie — fără dublă ramă */
.shopify-payment-button__button,
.shopify-payment-button__button--unbranded {
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--em-ink) !important;
  border: 1px solid var(--em-ink) !important;
  box-shadow: none !important;
  font-family: var(--em-font-body) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  min-height: 52px;
}
.shopify-payment-button__button--unbranded:hover {
  background: var(--em-ink) !important;
  color: #FFFFFF !important;
}
.shopify-payment-button__more-options { font-family: var(--em-font-body) !important; font-size: 11px; }

/* ── 4. CARDURI PRODUS — fotografia edge-to-edge, zero cosmetică ── */
.card, .card--card, .card--standard, .card__inner {
  border-radius: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.card--card .card__inner .card__media, .card__media, .media {
  border-radius: 0 !important;
}
.card__media::before { content: none !important; }   /* pill-ul fals „Quick view" */
.card__media::after  { content: none !important; }   /* glow-ul radial de pe hover */
.card-wrapper:hover .card__media img { transform: scale(1.04); }
.card__media img { transition: transform 700ms var(--em-ease-out, cubic-bezier(0.16, 1, 0.3, 1)) !important; }

.card__heading { margin-top: 2px; }
.card__heading a {
  font-family: var(--em-font-body) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: var(--em-ink) !important;
}
.card__heading a:hover { text-decoration: none !important; color: var(--em-chocolate) !important; }
.card-information .price,
.card-information .price * {
  font-family: var(--em-font-body) !important;
  font-size: 13px !important;
  letter-spacing: 0.02em;
  color: var(--em-muted) !important;
}
.card-information .price .price-item--sale { color: var(--em-ink) !important; }
.card-information { padding-top: 10px; text-align: left !important; }
.card__badge .badge { border-radius: 0 !important; }
.em-color-dot { border-radius: 0 !important; width: 10px !important; height: 10px !important; }

/* ── 5. PAGINA DE PRODUS ── */
.price__badge-sale, .price__badge-sold-out { display: none !important; }
.product__title, .product__title h1 {
  font-family: var(--em-font-display) !important;
  font-size: clamp(28px, 3.2vw, 40px) !important;
  letter-spacing: 0.02em;
}
.product__text.caption-with-letter-spacing {
  font-family: var(--em-font-body) !important;
  font-size: 11px !important;
  letter-spacing: 0.22em !important;
  color: var(--em-muted) !important;
}
.product .price, .product .price * {
  font-family: var(--em-font-body) !important;
  font-size: 17px !important;
  letter-spacing: 0.02em;
}
.product .price .price-item--regular { color: var(--em-muted) !important; font-size: 15px !important; }
.product__tax, .product__tax * {
  font-family: var(--em-font-body) !important;
  font-size: 12px !important;
  color: var(--em-muted) !important;
}

/* variantele: chip-uri dreptunghiulare cu contur fin */
variant-selects .form__label, .product-form__input .form__label {
  font-family: var(--em-font-body) !important;
  font-size: 11px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase;
  color: var(--em-muted) !important;
}
.product-form__input input[type='radio'] + label {
  border-radius: 0 !important;
  border: 1px solid var(--em-border) !important;
  background: transparent !important;
  font-family: var(--em-font-body) !important;
  font-size: 12px !important;
  letter-spacing: 0.08em;
  color: var(--em-ink) !important;
  box-shadow: none !important;
  transition: border-color 200ms ease, background 200ms ease, color 200ms ease;
}
.product-form__input input[type='radio']:checked + label {
  background: var(--em-ink) !important;
  border-color: var(--em-ink) !important;
  color: #FFFFFF !important;
}
.product-form__input input[type='radio'] + label:hover { border-color: var(--em-ink) !important; }

/* cantitatea: minimală */
quantity-input.quantity, .quantity {
  border-radius: 0 !important;
  border: 1px solid var(--em-border) !important;
  background: transparent !important;
  box-shadow: none !important;
}
.quantity__input, .quantity__button {
  font-family: var(--em-font-body) !important;
  font-size: 13px !important;
  background: transparent !important;
}

/* galeria: fără ramă bej în jurul fotografiei */
.product__media-wrapper, .product__media-item,
.product__media-list {
  background: transparent !important;
  border-radius: 0 !important;
  border: none !important;
  box-shadow: none !important;
}
.product__media, .product__media .media, .product-media-container {
  border-radius: 16px !important;
  overflow: hidden;
  border: none !important;
  box-shadow: none !important;
}
.product__media img { border-radius: 16px !important; }
.thumbnail, .thumbnail-list__item { border-radius: 12px !important; }
.thumbnail.global-media-settings { border: none !important; }
.thumbnail[aria-current] {
  border: none !important;
  box-shadow: 0 0 0 2px var(--em-base), 0 0 0 4px var(--em-ink) !important;
}

/* trust-icons de sub butoane */
.emette-trust__icon { color: var(--em-chocolate) !important; }

/* ── 6. RITM DE SECȚIUNI — fără câmpii goale ── */
.emette-vidquote { min-height: 0 !important; }
.emette-vidquote__panel {
  padding: clamp(48px, 7vw, 88px) clamp(28px, 5vw, 72px) !important;
  justify-content: center !important;
  gap: 18px !important;
}
/* The quote image is a white-backdrop studio shot. Multiplying it over the bej
   canvas dissolves that backdrop into the page instead of leaving a white slab
   around the model — most visible on mobile, where the crop is shortest. */
.emette-vidquote__media {
  max-height: 640px;
  overflow: hidden;
  background: var(--em-base);
}
.emette-vidquote__media img {
  object-position: top center;
  mix-blend-mode: multiply;
}

@media screen and (max-width: 749px) {
  /* a 50vw band cropped the model to a floating head; give it real height
     so the garment — the actual subject — is in frame */
  .emette-vidquote,
  .emette-vidquote__media {
    height: auto !important;
  }
  .emette-vidquote { grid-template-rows: auto auto !important; }
  .emette-vidquote__media { aspect-ratio: 4 / 5; }
  .emette-vidquote__media img { object-position: center 12%; }
}
.emette-vbanner { min-height: 0 !important; }
.emette-vbanner__content { padding-top: clamp(56px, 9vw, 120px) !important; padding-bottom: clamp(56px, 9vw, 120px) !important; }
.emette-vbanner__title { font-size: clamp(44px, 6.5vw, 88px) !important; }

/* eticheta categoriilor: lizibilă pe fotografie */
.emette-categories__label, .emette-categories__sub {
  text-shadow: 0 1px 14px rgba(47, 36, 29, 0.55);
}

/* ── 7. FORME GLOBALE — nimic rotunjit pe suprafețele mari ── */
input, textarea, select, .field__input, .search__input {
  border-radius: 0 !important;
  font-family: var(--em-font-body) !important;
}
.badge { border-radius: 0 !important; }
.emette-catalog__chapter-head { border-bottom-color: var(--em-border); }
.emette-catalog__num { color: rgba(75, 54, 43, 0.28); }

/* footer: chocolate adânc, text cald */
.footer, .footer__inner, .footer-section { background: #2F241D !important; }

/* ── 8. TIPOGRAFIE DE BAZĂ ── */
body, p, li, label { font-family: var(--em-font-body); }
body { font-size: 16px; line-height: 1.65; }

/* ── 9. ULTIMELE PILL-URI ── */
:root { --em-radius-pill: 0 !important; }
.emette-hero--video .emette-hero__cta-primary,
.emette-hero--video .emette-hero__cta-secondary {
  border-radius: 0 !important;
  box-shadow: none !important;
}
.emette-newsletter__form { border-radius: 0 !important; }
h1.product__title { font-weight: 400 !important; }

/* ═══════════════════════════════════════════════════════════
   10. GAZU / VELORA SYSTEM (demo1 + product page 1:1)
   ═══════════════════════════════════════════════════════════ */

/* Cardurile: fotografie normală, caseta albă a secțiunii — fără decupaj */
.card__media, .card__media .media {
  background: #FFFFFF !important;
}

/* "Best of EMETTE" trebuie să fie o secțiune ALBĂ intenționat (scheme-1) —
   regula globală din emette-brand.css forțează scheme-1 la bej pentru header/
   footer/etc; aici o suprascriem punctual, doar pentru această secțiune. */
/* Shopify prefixes section ids with the template id (e.g.
   "shopify-section-template--123__featured_collection"), so an exact
   #shopify-section-featured_collection selector never matches — use
   an attribute selector on the suffix instead. */
[id$="__featured_collection"] .color-scheme-1 {
  background: #FFFFFF !important;
}

/* orice urmă de contur/umbră la hover pe card — eliminată */
.card-wrapper:hover .card,
.card-wrapper:hover .card__inner,
.card-wrapper:hover .card__media,
.card:hover, .card__inner:hover {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background-clip: border-box;
}
.card-wrapper { border: none !important; outline: none !important; }

/* BEST OF EMETTE — heading row ca în demo1 */
.title-wrapper-with-link .title,
h2.title.inline-richtext,
.collection .title-wrapper-with-link .title,
.featured-collection .title {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 600 !important;
  font-size: clamp(22px, 2.2vw, 28px) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.02em !important;
}
.title-wrapper-with-link .link-with-icon,
.title-wrapper-with-link .view-all {
  font-family: 'DM Sans', system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  text-decoration: underline !important;
  text-underline-offset: 4px;
}

/* Benefits (The EMETTE Promise) — rând compact demo1, fără lead-text mare,
   dar cu suficient ritm cât să nu citească ca 4 carduri identice:
   eyebrow ca ancoră + numerotare subtilă + hairline-uri verticale + hover. */
.emette-promise { padding-top: clamp(36px,5vw,64px) !important; padding-bottom: clamp(36px,5vw,64px) !important; }
.emette-promise__inner { display: block !important; }

.emette-promise__lead { display: block !important; text-align: center; margin: 0 0 clamp(22px,3vw,32px) !important; }
.emette-promise__title,
.emette-promise__intro,
.emette-promise__cta { display: none !important; }
.emette-promise__eyebrow {
  display: block !important;
  text-align: center;
  font-family: 'DM Sans', system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.24em !important;
  color: #4B362B !important;
  opacity: 0.65;
}
/* WCAG fix: .section-emette-promise .label-uppercase (emette-brand.css, 2-class
   specificity) beats the rule above and paints this bej — invisible on the
   .emette-promise bej background set below. Re-declare at matching specificity
   with opacity:1 (0.65 opacity alone still only reaches ~3.2:1). */
.section-emette-promise .label-uppercase,
.emette-promise__eyebrow {
  color: #4B362B !important;
  opacity: 1 !important;
}

.emette-promise__list {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  max-width: 1280px;
  margin: 0 auto;
  border-top: 1px solid rgba(47, 36, 29, 0.14);
}
.emette-promise__row {
  display: flex !important; flex-direction: column; gap: 9px;
  background: transparent !important; box-shadow: none !important;
  padding: clamp(22px,2.6vw,30px) clamp(16px,2.4vw,30px) !important;
  border-right: 1px solid rgba(47, 36, 29, 0.14) !important;
  transition: background-color 320ms ease, padding-left 320ms ease;
}
.emette-promise__row:first-child { padding-left: 0 !important; }
.emette-promise__row:last-child { border-right: none !important; padding-right: 0 !important; }
.emette-promise__row:hover { background-color: rgba(47, 36, 29, 0.045) !important; padding-left: calc(clamp(16px,2.4vw,30px) + 4px) !important; }
.emette-promise__row:first-child:hover { padding-left: 4px !important; }

.emette-promise__num {
  display: block !important;
  font-family: 'DM Sans', system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  color: #4B362B !important;
  opacity: 0.45;
  font-feature-settings: "tnum" 1;
}
.emette-promise__row-title {
  font-family: 'DM Sans', system-ui, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #2F241D !important;
  margin: 0 !important;
}
.emette-promise__row p, .emette-promise__content p {
  font-family: 'DM Sans', system-ui, sans-serif !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
  color: #5E5247 !important; /* was #6E635A: 3.57:1 on bej, below AA 4.5:1 for 12.5px text */
  margin: 0 !important;
}
@media (max-width: 749px) {
  .emette-promise__list { grid-template-columns: repeat(2, 1fr) !important; }
  .emette-promise__row { border-bottom: 1px solid rgba(47, 36, 29, 0.14) !important; }
  .emette-promise__row:nth-child(2n) { border-right: none !important; padding-right: 0 !important; }
  .emette-promise__row:nth-child(2n+1) { padding-left: 0 !important; }
  .emette-promise__row:nth-child(-n+2) { padding-top: 0 !important; }
  .emette-promise__row:hover { padding-left: 0 !important; }
  .emette-promise__row:first-child:hover { padding-left: 0 !important; }
}
@media (prefers-reduced-motion: reduce) {
  .emette-promise__row { transition: none !important; }
}

/* ── PRODUCT PAGE — VELORA ── */
h1.product__title, .product__title h1, .product__title {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: clamp(30px, 3.3vw, 46px) !important;
  letter-spacing: -0.015em !important;
  line-height: 1.08 !important;
  text-transform: none !important;
  color: #2F241D !important;
}
/* pretul: mare si bold, taiat langa el, pill negru SALE */
.product .price .price-item--sale,
.product .price .price__sale .price-item--sale {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: clamp(28px, 2.8vw, 40px) !important;
  font-weight: 700 !important;
}
.product .price .price-item--regular { font-size: 18px !important; }
.price__badge-sale {
  display: inline-flex !important;
  align-items: center;
  background: #2F241D !important;
  color: #FFFFFF !important;
  font-family: 'DM Sans', system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 4px 10px !important;
}
/* chip-urile de varianta: VELORA — colt 8px, selectat negru */
.product-form__input input[type='radio'] + label {
  border-radius: 12px !important;
  border-color: #DCC7B0 !important;
  min-width: 54px;
  min-height: 48px;
  display: inline-flex; align-items: center; justify-content: center;
  text-align: center;
  font-weight: 500 !important;
  font-size: 14px !important;
}
.product-form__input input[type='radio']:checked + label {
  border-radius: 12px !important;
}
quantity-input.quantity, .quantity { border-radius: 12px !important; }
.product-form__submit { border-radius: 12px !important; font-size: 16px !important; min-height: 58px !important; letter-spacing: 0.02em !important; text-transform: none !important; font-weight: 600 !important; }
.shopify-payment-button__button, .shopify-payment-button__button--unbranded { border-radius: 12px !important; min-height: 54px; }

/* imaginea principala: caseta off-white VELORA (#FAF8F5, paleta EMETTE) + multiply */
.product__media, .product__media .media, .product-media-container {
  background: #FAF8F5 !important;
}
.product__media img { mix-blend-mode: multiply; }
.thumbnail { background: #FAF8F5 !important; border-radius: 8px !important; overflow: hidden; }
.thumbnail img { mix-blend-mode: multiply; }
.thumbnail[aria-current] { border: 1.5px solid #2F241D !important; }

/* ── GALERIA VELORA: thumbnails verticale pe stânga, imagine mare dreapta ── */
@media screen and (min-width: 990px) {
  media-gallery[id^="MediaGallery"] {
    display: grid !important;
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
  }
  media-gallery[id^="MediaGallery"] > [id^="GalleryViewer"] {
    grid-column: 2;
    grid-row: 1;
  }
  media-gallery[id^="MediaGallery"] .thumbnail-slider {
    grid-column: 1;
    grid-row: 1;
    display: block !important;
    margin: 0 !important;
  }
  media-gallery[id^="MediaGallery"] .thumbnail-slider .slider-button {
    display: none !important;
  }
  media-gallery[id^="MediaGallery"] .thumbnail-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px;
    max-height: 660px;
    overflow-y: auto;
    scrollbar-width: none;
    padding: 0 !important;
  }
  media-gallery[id^="MediaGallery"] .thumbnail-list::-webkit-scrollbar { display: none; }
  media-gallery[id^="MediaGallery"] .thumbnail-list__item {
    width: 88px !important;
    max-width: 88px !important;
    flex: 0 0 auto !important;
  }
  media-gallery[id^="MediaGallery"] .thumbnail {
    width: 100%;
    aspect-ratio: 3 / 4;
    object-fit: cover;
  }
}

/* ── VELORA: imaginea de produs mare (bate capul de 38% din emette-product.css) ── */
@media screen and (min-width: 990px) {
  .product:not(.product--no-media) .product__media-wrapper {
    max-width: 58% !important;
    flex: 0 0 58% !important;
    width: 58% !important;
    padding-right: clamp(20px, 3vw, 48px) !important;
  }
  .product:not(.product--no-media) .product__info-wrapper {
    max-width: 42% !important;
    flex: 0 0 42% !important;
    padding-left: 0 !important;
  }
  .product .product__media img,
  .product .product__media .media img {
    max-height: none !important;
    object-fit: cover !important;
  }
}

/* ── inelul urât de focus rămas după click pe card ── */
.card__heading a:focus:after,
.card__heading a:focus-visible:after {
  outline: 1px solid #2F241D !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}
.card__heading a:focus:not(:focus-visible):after {
  outline: none !important;
  box-shadow: none !important;
}
/* umbra-fantomă a cardului Dawn (pseudo-element), moartă definitiv */
.card--card:after, .card--standard .card__inner:after {
  content: none !important;
}

/* ═══════════════════════════════════════════════════════════
   11. SPEC FINAL — GAZU utility bar, VELORA swatch-uri rotunde
   ═══════════════════════════════════════════════════════════ */

/* Bara utilitară (announcement) — neagră, text mic tracked (GAZU) */
.announcement-bar-section .utility-bar,
.announcement-bar, .announcement-bar__message {
  background: #2F241D !important;
  color: #FAF8F5 !important;
  font-family: 'DM Sans', system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

/* Header mai înalt, aerisit (GAZU ~96px) */
.header { padding-top: 18px !important; padding-bottom: 18px !important; }

/* Benefits row — treapta gri-caldă, titluri 700 caps (GAZU) */
.emette-promise { background: #DCC7B0 !important; }
.emette-promise__row-title { font-size: 14px !important; }
.emette-promise__row p, .emette-promise__content p { font-size: 13.5px !important; color: #4A4238 !important; }

/* VELORA — Color ca swatch-uri ROTUNDE (textul rămâne pentru screen-readers) */
.product-form__input input[type='radio'][value="Navy"] + label,
.product-form__input input[type='radio'][value="Chocolate"] + label,
.product-form__input input[type='radio'][value="Black"] + label,
.product-form__input input[type='radio'][value="Ivory"] + label,
.product-form__input input[type='radio'][value="Grey"] + label,
.product-form__input input[type='radio'][value="White"] + label,
.product-form__input input[type='radio'][value="Burgundy"] + label {
  /* 44px, nu 42px: pastila rotundă e ținta de atingere pentru culoare, iar 42px
     o lăsa 2px sub pragul minim. Cercul rămâne vizual identic. */
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  border-radius: 50% !important;
  padding: 0 !important;
  font-size: 0 !important;
  color: transparent !important;
  border: 1px solid rgba(47, 36, 29, 0.14) !important;
}
.product-form__input input[type='radio'][value="Navy"] + label      { background: #1E2A44 !important; }
.product-form__input input[type='radio'][value="Chocolate"] + label { background: #4B362B !important; }
.product-form__input input[type='radio'][value="Black"] + label     { background: #121110 !important; }
.product-form__input input[type='radio'][value="Ivory"] + label     { background: #EEE7DA !important; }
.product-form__input input[type='radio'][value="Grey"] + label      { background: #9A9894 !important; }
.product-form__input input[type='radio'][value="White"] + label     { background: #FBFAF7 !important; }
.product-form__input input[type='radio'][value="Burgundy"] + label  { background: #45222E !important; }
.product-form__input input[type='radio'][value="Navy"]:checked + label,
.product-form__input input[type='radio'][value="Chocolate"]:checked + label,
.product-form__input input[type='radio'][value="Black"]:checked + label,
.product-form__input input[type='radio'][value="Ivory"]:checked + label,
.product-form__input input[type='radio'][value="Grey"]:checked + label,
.product-form__input input[type='radio'][value="White"]:checked + label,
.product-form__input input[type='radio'][value="Burgundy"]:checked + label {
  box-shadow: 0 0 0 3px var(--em-base), 0 0 0 4.5px #2F241D !important;
  border-color: transparent !important;
}

/* rândul de beneficii de sub butoane (trust) — DM Sans, două rânduri */
.emette-trust, .emette-trust * { font-family: 'DM Sans', system-ui, sans-serif !important; }

/* linkuri „VIEW ALL" cu săgeată — deja subliniate; tracking GAZU */
.title-wrapper-with-link .link-with-icon { letter-spacing: 0.1em !important; }

/* ═══════════════════════════════════════════════════════════
   11. COLLECTION TAG PAGES (main-collection-banner + main-collection-product-grid)
   Aceste pagini (statement-suits, vests-sets, skirts-shorts, shirts) rulează pe
   secțiunile default Dawn, nu pe emette-collection-catalog.liquid. Titlul
   .collection-hero__title și textul din facets/sort moșteneau culoarea gri
   generică Dawn (--color-foreground, rgba(44,44,44,.x)) în loc de tokenii
   EMETTE — inconsistent cu restul site-ului. Aliniem la aceeași convenție
   Inter 600 uppercase folosită de .emette-catalog__title. ── */

.collection-hero__title {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--em-ink) !important;
}
.collection-hero__description,
.collection-hero__description * {
  font-family: var(--em-font-body) !important;
  color: var(--em-muted) !important;
}

/* sidebar-ul vertical de filtre (facets) + „Sort by" — text gri Dawn → tokeni EMETTE */
.facets-vertical-sort .facet-filters__label,
.facets-vertical-sort .facet-filters__label label,
.product-count-vertical,
.product-count__text,
.facets__summary,
.facets__label,
.facets__price,
.facets-vertical facet-remove,
.facets-vertical .facets__reset,
.no-js-hidden .facets__price {
  color: var(--em-muted) !important;
  font-family: var(--em-font-body) !important;
}
.facets__summary { text-transform: uppercase; letter-spacing: 0.04em; }
.facet-filters__sort.select__select {
  color: var(--em-ink) !important;
  font-family: var(--em-font-body) !important;
  border-radius: 0 !important;
}

/* stare goală (0 produse într-o colecție): titlul nu era prins de regula
   generală (clasele reale sunt "title title--primary", nu "title h2") —
   rămânea pe fontul Assistant default din temă, netratat. */
.collection--empty .title--primary {
  font-family: 'Inter', system-ui, sans-serif !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--em-ink) !important;
}
.collection--empty .underlined-link {
  color: var(--em-chocolate) !important;
}

/* PDP: eticheta „Limited edition” ca pill gri (VELORA „New Arrival”) */
.emette-limited, .product__text.emette-limited {
  display: inline-block;
  background: #F1EDE4;
  border-radius: 999px;
  padding: 7px 14px;
  font-size: 12.5px !important;
  color: #2F241D !important;
}


/* ═══════════════════════════════════════════════════════════
   AUDIT MOBIL — corecții responsive
   Toate valorile de mai jos vin din măsurători pe dispozitiv,
   nu din estimări. Paleta, fonturile și absența underline-urilor
   rămân neatinse: se schimbă doar geometrie.
   ═══════════════════════════════════════════════════════════ */

/* ── 1. Header: depășire orizontală pe ecrane foarte înguste ──
   Măsurat pe Galaxy Fold (280px): grila header-ului era
   32px + 140px + 84px = 256px conținut + 70px padding = 326px,
   adică 15px de scroll orizontal pe TOATE paginile.
   Se strâng gutter-ele și se micșorează wordmark-ul; „Emette Design"
   rămâne pe un singur rând (nowrap explicit). */
@media (max-width: 400px) {
  .header {
    padding-left: 16px !important;
    padding-right: 16px !important;
    column-gap: 4px;
  }
  .header__heading,
  .header__heading-link {
    min-width: 0;
  }
  /* Wordmark-ul stă pe UN rând, dar trebuie și să încapă între hamburger (44px)
     și iconițe (84px) — altfel debordează coloana din grilă, se suprapune peste
     hamburger și îi FURĂ tap-ul (elementFromPoint returna wordmark-ul, nu
     <summary>). Fontul scalează cu viewport-ul ca ambele să rămână adevărate:
     la 280px ≈ 14px → ~127px lățime, sub cei ~132px disponibili. */
  .header__heading-link {
    white-space: nowrap;
    font-size: clamp(14px, 5vw, 24px) !important;
  }
}
@media (max-width: 340px) {
  .header {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}

/* wordmark-ul nu trebuie să se rupă pe două rânduri la nicio lățime */
.header__heading-link {
  white-space: nowrap;
}

/* ── 2. Lizibilitate: nimic sub 12px pe telefon ──
   .emette-vidquote__stat-lbl măsura 10px. */
.emette-vidquote__stat-lbl {
  font-size: 12px;
}

/* ── 3. Ținte de atingere sub 44px ── */

/* (pastilele de culoare de pe PDP sunt corectate direct în regula lor
   de mai sus, 42px → 44px — acolo valorile sunt !important) */

/* PDP — câmpul de cantitate măsura 42x44 */
.quantity__input {
  min-width: 44px;
}

/* Overlay-ul de intro — butonul „Skip" măsura 49x26 */
.intro-skip {
  min-height: 44px;
  min-width: 44px;
  box-sizing: border-box;
}

/* Navigația din footer — linkurile măsurau 21px înălțime pe toate profilele,
   cu doar 32px între rânduri. Un pseudo-element de 44px ar fi suprapus
   casetele vecine (tap-uri furate între linkuri — mai rău decât o țintă mică),
   deci se mărește rândul în sine: fiecare <a> e singurul copil al <p>-ului lui,
   deci `display:block` + padding crește <p>-ul și restul curge natural.
   Paragraful descriptiv nu conține niciun <a>, deci nu e atins. */
.footer-block__details-content.rte p > a:only-child {
  display: block;
  padding: 12px 0;
}

/* ═══════════════════════════════════════════════════════════
   A11Y — MOBILE CONTRAST & SCRIM FIXES (WCAG 2.1 AA)
   Only opacity/shade of existing palette tokens is changed.
   No new hue is introduced.
   ═══════════════════════════════════════════════════════════ */

/* 1. VIDEO BANNER SCRIM — Dawn's base.css has a global
   `div:empty { display: none }` rule, and .emette-vbanner__gradient
   is an empty <div>. The dark scrim it carries was therefore never
   painted, leaving the off-white eyebrow (#F9F6F3) and 44px title
   (#F8F5F2) sitting straight on the campaign photo — measured 1.45:1
   and 1.51:1 against the page's bej. Restoring display re-applies the
   intended rgba(39,35,32,.95 → transparent) gradient. */
.emette-vbanner__gradient {
  display: block !important;
}

/* 2. PRODUCT DESCRIPTION EYEBROW — chocolate at .45 alpha over bej
   measured 2.13:1 at 11px (AA needs 4.5:1). .85 alpha = 4.95:1
   and keeps the label visually subordinate to the heading. */
.em-pdesc__eyebrow {
  color: rgba(75, 54, 43, 0.85) !important;
}

/* 3. SHIPPING BADGE SUBLINE — bej at .55 alpha over chocolate
   measured 3.24:1 at 12px (AA needs 4.5:1). .8 alpha = 5.05:1,
   still a step quieter than the badge's solid title. */
.em-badge__sub {
  color: rgba(220, 199, 176, 0.8) !important;
}

/* 4. CATALOG INDEX NUMERAL — chocolate at .35 alpha over the
   intentional white catalog surface measured 1.94:1. At 40px it is
   large text, so the bar is 3:1; .6 alpha = 3.51:1. */
.emette-catalog__num {
  color: rgba(75, 54, 43, 0.6) !important;
}

/* 5. SEARCH PLACEHOLDER — Dawn ships #757575, which lands at 2.82:1
   on bej. --em-muted (#5E5247) is the palette's already-audited
   muted token and measures 4.63:1 on bej, 6.9:1 on off-white. */
.search__input::placeholder,
.search__input::-webkit-input-placeholder,
.field__input::placeholder {
  color: #5E5247 !important;
  opacity: 1 !important;
}

/* ═══════════════════════════════════════════════════════════════
   AUDIT VIZUAL MOBIL — corecții de ritm vertical și scară tipografică
   Nu schimbă paleta, fonturile sau structura secțiunilor.
   ═══════════════════════════════════════════════════════════════ */

/* ── 1. Titlul video-bannerului: leading negativ pe ecran mic ──
   `line-height: 0.88` funcționează la 118px pe desktop, dar la 44px
   pe 320px lățime rupea „Crafted with intention." în 4 rânduri
   înghesuite (44px text peste 38.7px interlinie). Coborâm scara și
   aducem interlinia peste 1.0 ca rândurile să nu se atingă. */
@media (max-width: 749px) {
  .emette-vbanner__title {
    font-size: clamp(36px, 11vw, 64px) !important;
    line-height: 0.98 !important;
  }
}

/* ── 2. Titlul paginii de colecții: se rupea la orice lățime mobilă ──
   „The Collections" cerea 331px la 36px, dar page-width lasă 300px
   la 360 și 260px la 320. Scalăm ca să încapă pe un rând. */
@media (max-width: 749px) {
  .emette-catalog__title {
    font-size: clamp(26px, 8vw, 34px) !important;
  }
}

/* ── 3. Landscape scurt (telefon rotit, ex. 844x390) ──
   Header-ul sticky de 81px stă în flux deasupra hero-ului, deci un
   hero de 100vh împinge rândul de butoane sub linia de plutire
   („Shop now" ieșea cu 17px, „Explore new in" cu 11px).
   Scădem înălțimea header-ului din hero și strângem ancorarea CTA. */
@media (orientation: landscape) and (max-height: 500px) {
  .em-gz-hero {
    min-height: calc(100vh - 81px) !important;
    min-height: calc(100dvh - 81px) !important;
  }
  .em-gz-hero__actions {
    bottom: clamp(20px, 7vh, 44px) !important;
  }

  /* Video-bannerul: height 82vh dă 320px, dar conținutul cere 383px,
     iar `overflow:hidden` + `align-items:flex-end` tăiau 63px din
     spațiul de sus. Lăsăm banda să crească după conținut. */
  .emette-vbanner {
    height: auto !important;
    min-height: min(82vh, 800px) !important;
  }
  .emette-vbanner__content {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
}

/* 6. CONTACT PANEL — bej text on the chocolate panel. Measured
   3.24:1 (eyebrow, 12px), 4.41:1 (description, 17px) and 3.90:1
   (email/phone links, 16px); all three need 4.5:1. Raising alpha to
   .8 puts them at 5.05:1 while keeping the tonal step below the
   solid-bej heading. */
.em-contact__eyebrow,
.em-contact__desc,
.em-contact__detail-link {
  color: rgba(220, 199, 176, 0.8) !important;
}

/* 7. CONTACT FIELD PLACEHOLDERS — chocolate at .62 alpha on the bej
   form panel measured 2.98:1. .85 alpha = 4.95:1. The visible
   <label> above each field already carries the field name, so the
   placeholder stays a hint, not the label. */
.em-contact .em-field input.em-field__input::placeholder,
.em-contact .em-field textarea.em-field__input::placeholder,
.em-contact .em-field input.em-field__input::-webkit-input-placeholder,
.em-contact .em-field textarea.em-field__input::-webkit-input-placeholder {
  color: rgba(75, 54, 43, 0.85) !important;
  opacity: 1 !important;
}

/* 8. ABOUT — PIVOT "not" CLAUSE. Bej at .35 alpha on ink #2F241D
   measured 2.38:1 at 28px; large text needs 3:1. .5 alpha = 3.43:1,
   still clearly recessive against the full-opacity clause it
   contrasts with. */
.em-ab-pivot__not {
  color: rgba(220, 199, 176, 0.5) !important;
}

/* ═══════════════════════════════════════════════════════════════════
   MOBILE — SECTION RHYTHM
   `emette.css` puts a blanket `.shopify-section { padding: 60px 0 }` on every
   section. The full-bleed bands already own their internal spacing, so each one
   carries 120px of extra padding on top of it. Because consecutive bands share
   the same bej, that padding does not read as separation — it reads as an empty
   gap, which is exactly what it looks like on a phone.

   Zeroed on mobile only: desktop keeps the wider rhythm, where the extra air is
   proportionate to the viewport.
   ═══════════════════════════════════════════════════════════════════ */
@media screen and (max-width: 749px) {
  /* Every section wrapper: the 60px is desktop rhythm. Sections that own their
     spacing get none; the rest get a proportionate 28px instead of 60px. */
  .shopify-section { padding-top: 28px !important; padding-bottom: 28px !important; }

  /* Full-bleed bands and self-spacing sections — wrapper padding is pure waste. */
  .shopify-section:has(> .em-gz-vibes),
  .shopify-section:has(> .emette-vbanner),
  .shopify-section:has(> .emette-story),
  .shopify-section:has(> .em-gz-hero),
  .shopify-section:has(> .em-gz-cats),
  .shopify-section:has(> .emette-vidquote),
  .shopify-section:has(> .em-contact),
  .shopify-section:has(> .emette-catalog),
  .shopify-section:has(.em-about),
  [id$="__featured_collection"] {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Fallback for browsers without :has() — same sections, matched by id. */
  [id$="__emette_editorial"],
  [id$="__emette_palette"],
  [id$="__emette_story"],
  [id$="__emette_contact"],
  [id$="__emette_hero"],
  [id$="__emette_categories"],
  [id$="__emette_testimonials"] {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Catalog: 415px of preamble before the first product on a 844px screen.
     The body panel already carries the rhythm. */
  .emette-catalog__head { padding-top: 28px !important; padding-bottom: 20px !important; }
  .emette-catalog__body { padding-top: 24px !important; padding-bottom: 40px !important; }
  .emette-catalog__chapter { margin-bottom: 48px !important; }
  .emette-catalog__chapter-head { padding-bottom: 12px !important; margin-bottom: 20px !important; }

  /* About: the act paddings clamp at a desktop-scale 72–88px floor, which on a
     phone is most of a viewport of empty bej per act. */
  .em-ab-manifesto,
  .em-ab-pivot,
  .em-ab-pillars,
  .em-ab-reflection { padding-top: 52px !important; padding-bottom: 52px !important; }
  .em-ab-story { padding-top: 48px !important; padding-bottom: 48px !important; gap: 56px !important; }

  /* Footer closes the page; it does not need 60px of bej under it as well. */
  .shopify-section-group-footer-group { padding-bottom: 0 !important; }

  /* The band's own copy column then supplies the whole rhythm, so give it a
     little more than the 32px it had when the wrapper was padding it too. */
  .em-gz-vibes__copy { padding: 40px 24px 44px !important; }

  /* Promise: eyebrow sat 52px below the section top from stacked margins on
     the lead block and the eyebrow itself. One margin is enough. */
  .emette-promise { padding-top: 28px !important; padding-bottom: 32px !important; }
  .emette-promise__lead { margin-bottom: 10px !important; }
  .emette-promise__eyebrow { margin-top: 0 !important; margin-bottom: 8px !important; }
}

/* ── Sticky header must outrank page content ─────────────────────────────────
   Dawn gives `.section-header` z-index 3, and the GAZU hero puts its CTA row
   at z-index 3 as well. `.em-gz-hero` is position:relative with z-index auto,
   so it creates no stacking context and the two values compete directly —
   equal z-index, later in the DOM wins, and "SHOP NOW" painted straight over
   the EMETTE DESIGN logo as soon as the page was scrolled. 6 clears the hero
   (3) and every in-page layer in base.css (max 4) while staying far below the
   drawers (100) and the cart drawer (1000), which must still cover the header. */
.section-header.shopify-section-group-header-group,
.section-header.shopify-section-header-sticky {
  z-index: 6;
}

/* ── No horizontal scrollbar from the 3D scroll entrances ────────────────────
   emette-motion.js parks several full-bleed sections in a 3D rest state before
   they enter the viewport — `.emette-story` sits at `rotateX(6deg)` with a
   1600px perspective, and the values strip at `rotateX(-18deg) skewX(-4deg)`.
   A rotated box projects WIDER than its layout width (the story section
   measured -60 … 1965 against a 1905px viewport), so the page carried a
   horizontal scrollbar on every load until each section had animated in.
   `clip` rather than `hidden`: `overflow: hidden` on an ancestor silently
   kills `position: sticky`, which is exactly what the header above relies on.
   Scoped to #MainContent, NOT to `html`: putting it on the root element does
   stop the scrollbar, but it also stops `position: sticky` from working on the
   header, which is a child of the root. On mobile that showed up as the menu
   drawer opening at the very top of the document instead of under the header —
   the moment Dawn locks the body (`overflow-hidden-tablet`) while the drawer
   opens, the header snapped back to its static position, taking the drawer with
   it. The header lives outside #MainContent, so clipping there leaves it alone.
   The sections that overflow (story, values, vidquote, promise) are all inside
   main, and nothing inside main is sticky, so nothing else is affected. */
#MainContent {
  overflow-x: clip;
}

/* The header sits outside the clip above, so its own stray overflow has to be
   fixed at the source: the closed search modal collapses to zero width, but the
   input inside it keeps its intrinsic min-width (~113px) and pushed the page
   16px wider than the viewport on mobile. */
.search-modal__form,
.search-modal .field,
.search-modal .field .search__input {
  min-width: 0;
}

/* ── Italic words must not be sliced by the word-reveal mask ─────────────────
   emette-motion.js wraps every word of a display heading in `.em-w-wrap`
   (overflow: hidden) so the word can slide up from underneath. The wrapper is
   sized to the word's ADVANCE width, but an italic glyph paints past its own
   advance — the final N of "FASHION AS A FORM OF *EXPRESSION*" was cut off by
   a hard vertical edge. Widen the clip window just for italic words and take
   the same amount back as negative margin, so the reveal still hides the
   vertical slide and the surrounding word spacing is unchanged. */
.em-w-wrap:has(em),
.em-w-wrap:has(i) {
  padding-right: 0.12em;
  margin-right: -0.12em;
}

/* ── NEW IN cutouts: all four figures the same height ────────────────────────
   The band ships with a deliberate stagger (0.90 / 1 / 0.86 / 0.96 of the
   band height) so the line-up would not read as a row of clones. The client
   looked at it on desktop and on a phone and asked, twice, for the figures
   to stand at the same level — so the stagger goes, at every width. The
   per-slot rules live in the section's own {% style %} block and are
   nth-child specific, so this has to match that specificity and load later,
   which it does (fashion.css is the last stylesheet). */
.em-gz-vibes__slot:nth-child(1),
.em-gz-vibes__slot:nth-child(2),
.em-gz-vibes__slot:nth-child(3),
.em-gz-vibes__slot:nth-child(4) { --em-vibes-h: 1; }
}

/* ── Full Outfit colour links (five sibling products, one page feel) ──────────
   Same 36px round swatch, same hexes and the same chocolate ring as the real
   Color option on every other product, so the shopper cannot tell that these
   navigate to a sibling product instead of switching a variant. */
.em-outfit-colors { margin-bottom: 1.6rem; }
.em-outfit-colors__label { display: block; margin-bottom: 0.8rem; }
.em-outfit-colors__row { display: flex; gap: 12px; flex-wrap: wrap; }
.em-outfit-colors__swatch {
  display: inline-block; width: 36px; height: 36px; border-radius: 50%;
  border: 1px solid rgba(47, 36, 29, 0.25); box-shadow: inset 0 0 0 2px #FAF8F5;
  transition: transform 160ms ease, box-shadow 160ms ease;
}
.em-outfit-colors__swatch:hover { transform: scale(1.06); }
.em-outfit-colors__swatch.is-current { box-shadow: inset 0 0 0 2px #FAF8F5, 0 0 0 2px #2F241D; cursor: default; }
.em-outfit-colors__swatch[data-colour="Navy"]      { background: #1E2A44; }
.em-outfit-colors__swatch[data-colour="Chocolate"] { background: #4B362B; }
.em-outfit-colors__swatch[data-colour="Black"]     { background: #121110; }
.em-outfit-colors__swatch[data-colour="Ivory"]     { background: #EEE7DA; }
.em-outfit-colors__swatch[data-colour="Grey"]      { background: #9A9894; }
