/* VA HOME v13.3.0 — page-specific cascade: site-catalog. Shared rules live in core.css. */

/* ===== catalog.css ===== */
/* ==========================================================================
   VA HOME — Catalog
   ========================================================================== */

.catalog-intro {
  max-width: 62ch;
}

.catalog-layout {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: var(--space-5);
  align-items: start;
}

@media (max-width: 1024px) {
  .catalog-layout {
    grid-template-columns: 1fr;
  }
}

/* ---- Filters: toggle button (mobile only) ---- */
.catalog-filters-toggle {
  display: none;
  align-items: center;
  gap: 0.5em;
}

@media (max-width: 1024px) {
  .catalog-filters-toggle {
    display: inline-flex;
    margin-bottom: var(--space-3);
  }
}

/* ---- Filters: shared groups ---- */
.filter-group {
  margin-bottom: var(--space-4);
}

.filter-group__title {
  font-size: var(--fs-caption);
  letter-spacing: var(--ls-caption);
  text-transform: uppercase;
  color: var(--text-secondary);
  margin-bottom: var(--space-2);
}

.filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
}

.filter-chip {
  min-height: 44px;
  padding: 0.7em 1em;
  font-size: var(--fs-small);
  border: 1px solid var(--border-hairline);
  border-radius: var(--radius-sm);
  color: var(--text-secondary);
  transition: border-color var(--duration-fast) var(--ease-standard),
              color var(--duration-fast) var(--ease-standard),
              background-color var(--duration-fast) var(--ease-standard);
}

.filter-chip:hover,
.filter-chip:focus-visible {
  border-color: var(--border-hairline-strong);
  color: var(--text-primary);
}

.filter-chip.is-active {
  background: var(--color-gold);
  border-color: var(--color-gold);
  color: var(--text-on-contrast);
}

.filter-select {
  width: 100%;
  padding: 0.7em 0.8em;
  border: 1px solid var(--border-hairline);
  border-radius: var(--radius-sm);
  background: var(--bg-elevated);
  color: var(--text-primary);
  font-size: var(--fs-small);
}

.filter-reset {
  font-size: var(--fs-small);
  color: var(--text-gold);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ---- Filters container: sidebar on desktop, sheet on mobile ---- */
.catalog-filters {
  background: transparent;
}

@media (min-width: 1025px) {
  .catalog-filters {
    position: sticky;
    top: calc(var(--header-height) + var(--space-3));
  }
  .catalog-filters__header,
  .catalog-filters__apply {
    display: none;
  }
}

@media (max-width: 1024px) {
  .catalog-filters {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100svh;
    z-index: var(--z-modal);
    visibility: hidden;
    pointer-events: none;
  }

  .catalog-filters.is-open {
    visibility: visible;
    pointer-events: auto;
  }

  .catalog-filters__scrim {
    position: absolute;
    inset: 0;
    background: var(--overlay-scrim);
    opacity: 0;
    transition: opacity var(--duration-base) var(--ease-standard);
  }

  .catalog-filters.is-open .catalog-filters__scrim {
    opacity: 1;
  }

  .catalog-filters__panel {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: min(85svh, 760px);
    overflow-y: auto;
    background: var(--color-charcoal);
    border-top: 1px solid var(--border-hairline);
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
    padding: var(--space-3) var(--container-pad) calc(var(--space-4) + env(safe-area-inset-bottom));
    transform: translateY(100%);
    transition: transform var(--duration-base) var(--ease-standard);
  }

  .catalog-filters.is-open .catalog-filters__panel {
    transform: translateY(0);
  }

  .catalog-filters__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--space-3);
  }

  .catalog-filters__apply {
    margin-top: var(--space-2);
  }
}

@media (min-width: 1025px) {
  .catalog-filters__panel,
  .catalog-filters__scrim {
    display: contents;
  }
}

/* ---- Toolbar ---- */
.catalog-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
  flex-wrap: wrap;
}

.catalog-toolbar__count {
  font-size: var(--fs-small);
  color: var(--text-secondary);
}

.catalog-sort {
  display: flex;
  align-items: center;
  gap: 0.6em;
  font-size: var(--fs-small);
}

/* ---- Results grid ---- */
.catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-3);
}

@media (min-width: 1600px) {
  .catalog-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (max-width: 900px) {
  .catalog-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 430px) {
  .catalog-grid {
    grid-template-columns: 1fr;
  }
}

.catalog-empty {
  padding: var(--space-6) var(--space-3);
  text-align: center;
  color: var(--text-secondary);
}

.catalog-load-more {
  display: flex;
  justify-content: center;
  margin-top: var(--space-5);
}

/* ===== v11-3-final-polish.css ===== */
/* VA HOME v11.3 — final cross-site polish */
:root{--tap-min:44px;--content-measure:68ch}
html{scroll-padding-top:92px}
body{word-break:normal;text-wrap:pretty}
h1,h2,h3,.hero-slide__title,.collection-world h2{overflow-wrap:normal;word-break:keep-all;text-wrap:balance}
p{max-width:var(--content-measure)}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,.btn,[role="button"],.header-icon,.collection-world__cta{min-height:var(--tap-min)}
img{background-color:transparent}
.editorial-fallback-image{object-fit:cover;filter:saturate(.82) contrast(.96);background:transparent}
.checkout-trust-strip{border-bottom:1px solid var(--border-hairline);background:var(--bg-primary);padding:18px 0}
.checkout-trust-strip__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.checkout-trust-strip__grid div{display:flex;flex-direction:column;gap:3px}
.checkout-trust-strip__grid strong{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary)}
.checkout-trust-strip__grid span{font-size:12px;color:var(--text-secondary)}
/* Keep editorial sections readable on narrow laptops and tablets */
@media (max-width:1100px){
  .collection-world{grid-template-columns:minmax(0,1fr) minmax(300px,.82fr)}
  .collection-world--reverse{grid-template-columns:minmax(300px,.82fr) minmax(0,1fr)}
  .collection-world__content{padding-inline:clamp(28px,5vw,64px)}
}
@media (max-width:760px){
  html{scroll-padding-top:74px}
  .checkout-trust-strip__grid{grid-template-columns:1fr;gap:12px}
  .checkout-trust-strip__grid div{padding-bottom:12px;border-bottom:1px solid var(--border-hairline)}
  .checkout-trust-strip__grid div:last-child{border-bottom:0;padding-bottom:0}
  .collection-world,.collection-world--reverse{grid-template-columns:1fr!important}
  .collection-world__media{min-height:58svh;order:0!important}
  .collection-world__content{order:1!important;padding:46px 22px 58px!important}
  .collection-world h2{font-size:clamp(44px,13vw,68px);line-height:.92}
  .collection-world__intro{font-size:15px;line-height:1.65}
  .collection-world__aromas{grid-template-columns:1fr 1fr;gap:10px 16px}
  .collections-v2-index__inner{overflow-x:auto;scrollbar-width:none;overscroll-behavior-inline:contain}
  .collections-v2-index__inner::-webkit-scrollbar{display:none}
  .collections-v2-index a{flex:0 0 auto;min-height:48px}
  .hero-slide__title br{display:none}
}
@media (max-width:390px){
  
  .btn{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important}
}

/* ===== v11-4-mobile-product-polish.css ===== */
/* VA HOME v11.4 — mobile hero reliability + editorial polish */

/* HOME CAROUSEL: all slides always own a complete painted viewport. */
.home-page .hero.hero--editorial{
  position:relative;
  isolation:isolate;
}
.home-page .hero.hero--editorial .hero-slide,
.home-page .hero.hero--editorial .hero-slide.is-active{
  position:absolute!important;
  inset:0;
  width:100%;
  height:100%;
  min-height:100%;
}
.home-page .hero.hero--editorial .hero-slide__media{
  background:#17130f;
}
.home-page .hero.hero--editorial .hero-slide__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:1;
  visibility:visible;
  background:#17130f;
}
.home-page .hero.hero--editorial .hero-slide:not(.is-active){
  pointer-events:none;
}
@media(max-width:900px){
  .home-page .hero.hero--editorial{height:100svh}
  .home-page .hero.hero--editorial .hero-slide__media img{object-position:center center}
  .home-page .hero.hero--editorial .hero-slide:nth-child(2) .hero-slide__media img{object-position:58% center}
  .home-page .hero.hero--editorial .hero-slide:nth-child(3) .hero-slide__media img{object-position:62% center}
  .home-page .hero.hero--editorial .hero-slide__content{
    padding:calc(var(--header-height,72px) + 28px) 20px max(88px,calc(62px + env(safe-area-inset-bottom)));
  }
  .home-page .hero.hero--editorial .hero-slide__title{
    font-size:clamp(40px,12.2vw,58px);
    line-height:.96;
    max-width:10ch;
  }
  .home-page .hero.hero--editorial .hero-slide__subtitle{
    font-size:15px;
    line-height:1.55;
    max-width:34ch;
  }
  .home-page .hero.hero--editorial .hero-slide__actions{max-width:360px}
  .home-page .hero.hero--editorial .hero-nav{bottom:max(18px,env(safe-area-inset-bottom))}
}
@media(max-width:390px){
  .home-page .hero.hero--editorial{}
  .home-page .hero.hero--editorial .hero-slide__title{font-size:clamp(38px,12vw,50px)}
  .home-page .hero.hero--editorial .hero-slide__content{padding-inline:16px}
}

/* ABOUT: restore hierarchy and prevent the manifesto headline colliding with copy. */
.brand-manifesto__grid{
  gap:clamp(2.5rem,6vw,7.5rem);
}
.brand-manifesto h2{
}
.brand-manifesto__copy{}
@media(max-width:1100px){
  .brand-manifesto__grid{grid-template-columns:.1fr minmax(0,1fr);gap:2rem 3rem}
  .brand-manifesto__copy{grid-column:2;max-width:620px}
  .brand-manifesto h2{font-size:clamp(3rem,7vw,5rem);max-width:11ch}
}
@media(max-width:600px){
  .brand-manifesto__grid{grid-template-columns:1fr;gap:1.4rem}
  .brand-manifesto__copy{grid-column:auto;max-width:none}
  .brand-manifesto h2{font-size:clamp(2.9rem,13vw,4.15rem);line-height:.96;max-width:10ch}
}

/* PRODUCT REVIEWS + RECOMMENDATIONS: social proof first, consulting tone second. */
.story-similar h2{font-size:clamp(2.5rem,5vw,5rem);line-height:.96}
.story-similar h2 span{color:var(--color-gold)}
.similar-section__intro{max-width:62ch;color:var(--text-secondary);font-size:clamp(.98rem,1.2vw,1.08rem);line-height:1.75;margin:1rem 0 2rem}
.reviews-section{border-top:1px solid var(--border-hairline)}
.reviews-summary{position:sticky;top:110px;align-self:start}
.review-card__verified,.verified-purchase{display:inline-flex;align-items:center;gap:.35rem;color:var(--color-gold);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:900px){
  
  .story-similar h2{font-size:clamp(2.4rem,11vw,4rem);max-width:12ch}
}
@media(max-width:600px){
  .reviews-layout{gap:2.25rem}
  .story-similar .similar-grid{grid-template-columns:1fr 1fr;gap:14px}
  .story-similar .product-card__title{font-size:1rem}
}


/* ===== v11-5-mobile-perfection.css ===== */
/* VA HOME v11.5 — Mobile Perfection
   Final responsive safety layer. It deliberately avoids redesigning pages and
   only corrects viewport behaviour, hierarchy, touch targets and text flow. */

html{}
body{overflow-x:clip}
img,video,svg{max-width:100%}

/* Never split luxury headings inside a word. Long URLs and user content may wrap,
   but editorial titles must retain natural Ukrainian word boundaries. */
h1,h2,h3,.hero-slide__title,.product-hero__name,.collection-world__name,
.brand-manifesto h2,.editorial-page-hero h1,.scent-experience__hero h1{
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  text-wrap:balance;
}

button,a,input,select,textarea{touch-action:manipulation}
.btn,.icon-btn,.filter-chip,.guide-option,.product-gallery-thumb{
  min-height:44px;
}

/* HOME HERO — stable paint on every slide, including iOS Safari/local preview. */
.home-page .hero.hero--editorial{
  height:100vh;
  height:100svh;
  min-height:620px;
  background:
    radial-gradient(circle at 70% 35%,rgba(181,138,75,.13),transparent 42%),
    #17130f;
}
.home-page .hero-slide{background:#17130f}
.home-page .hero-slide__media{
  opacity:1;
  background:
    radial-gradient(circle at 70% 35%,rgba(181,138,75,.12),transparent 45%),
    linear-gradient(135deg,#211b15,#0e0d0b 72%);
}
.home-page .hero-slide__media img{
  transform:scale(1.015);
  transition:transform 9s cubic-bezier(.2,.65,.25,1),opacity .45s ease;
}
.home-page .hero-slide.is-active .hero-slide__media img{transform:scale(1)}
.home-page .hero-slide:not(.is-media-ready) .hero-slide__media img{opacity:0}
.home-page .hero-slide.is-media-ready .hero-slide__media img{opacity:1}
.home-page .hero-slide.is-media-missing .hero-slide__media img{display:none}
.home-page .hero-slide__content{width:min(100%,720px)}

/* Shared inner-page hero geometry. */
.editorial-page-hero,.collections-v2-hero,.discovery-hero,
.scent-experience__hero,.brand-hero,.delivery-hero,.contact-hero{
  min-height:min(820px,calc(100svh - var(--header-height-mobile,72px)));
}

/* Product gallery polish shared across desktop and touch devices. */
.product-gallery-thumb,.product-hero__media,.story-media,.brand-frame__media,
.collection-world__media{overflow:hidden}
.product-gallery-thumb img,.product-hero__media img,.story-media img,
.brand-frame__media img,.collection-world__media img{
  transition:transform 900ms cubic-bezier(.2,.65,.25,1);
}
@media(hover:hover) and (pointer:fine){
  .product-gallery-thumb:hover img,.story-media:hover img,.brand-frame__media:hover img,
  .collection-world__media:hover img{transform:scale(1.02)}
  .btn:active{transform:translateY(1px) scale(.992);transition-duration:90ms}
}

@media(max-width:900px){
  :root{--mobile-page-pad:clamp(16px,5vw,24px)}
  .container{padding-inline:var(--mobile-page-pad)}

  /* Home: content remains readable on short iPhones and does not overlap dots. */
  .home-page .hero.hero--editorial{min-height:600px}
  .home-page .hero-slide__content{
    padding-top:calc(var(--header-height-mobile,72px) + env(safe-area-inset-top) + 24px);
    padding-right:var(--mobile-page-pad);
    padding-bottom:max(104px,calc(88px + env(safe-area-inset-bottom)));
    padding-left:var(--mobile-page-pad);
  }
  .home-page .hero-slide__title{
    max-width:11ch;
    font-size:clamp(2.55rem,11vw,4rem);
    line-height:.94;
    letter-spacing:-.025em;
  }
  .home-page .hero-slide__subtitle{max-width:34ch}
  .home-page .hero-nav{bottom:max(20px,env(safe-area-inset-bottom));left:var(--mobile-page-pad);right:var(--mobile-page-pad)}
  .home-page .slide-dots{justify-content:center}
  .home-page .slide-dots button{padding:12px 14px;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}

  /* Catalog: filter sheet and cards are comfortable at 320–430px. */
  .editorial-page-hero--catalog{min-height:clamp(540px,78svh,720px)}
  .catalog-layout{display:block}
  .catalog-filters__panel{
    max-height:min(82svh,760px);
    padding-bottom:max(24px,env(safe-area-inset-bottom));
    overflow:auto;
    overscroll-behavior:contain;
  }
  .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}
  .catalog-toolbar{gap:12px;align-items:flex-start}

  /* Collections: one visual scene at a time, no compressed text columns. */
  .collections-v2-hero{min-height:clamp(620px,90svh,820px)}
  .collections-v2-index{position:sticky;top:calc(var(--header-height-mobile,72px) + env(safe-area-inset-top));z-index:20;overflow-x:auto;scrollbar-width:none}
  .collections-v2-index::-webkit-scrollbar{display:none}
  .collections-v2-index__inner{width:max-content;min-width:100%;padding-inline:var(--mobile-page-pad)}
  .collection-world,.collection-world--reverse{grid-template-columns:1fr!important;min-height:auto}
  .collection-world__media{order:1;min-height:52svh;aspect-ratio:4/5}
  .collection-world__content{order:2;padding:clamp(34px,9vw,60px) var(--mobile-page-pad) clamp(58px,14vw,88px)}
  .collection-world__name{font-size:clamp(3rem,15vw,5rem);line-height:.9}
  .collection-world__aromas{grid-template-columns:1fr 1fr;gap:10px 16px}

  /* Discovery: cards and picker no longer fight the viewport. */
  .discovery-hero{min-height:clamp(620px,90svh,800px)}
  .discovery-hero__content{padding-bottom:max(52px,calc(34px + env(safe-area-inset-bottom)))}
  .discovery-variants{grid-template-columns:1fr;gap:18px}
  .discovery-variant-card{padding:clamp(24px,7vw,38px)}
  .discovery-picker{padding:12px}
  .discovery-picker__panel{max-height:calc(100svh - 24px);border-radius:18px;overflow:hidden}
  .discovery-picker__list{overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .discovery-picker__actions{padding-bottom:max(16px,env(safe-area-inset-bottom))}

  /* Scent guide: consultation remains usable without horizontal overflow. */
  .scent-experience__hero{min-height:clamp(620px,90svh,800px)}
  .scent-guide-layout{grid-template-columns:1fr}
  .scent-guide-aside{position:static}
  .guide-options{grid-template-columns:1fr 1fr;gap:12px}
  .guide-option{padding:18px 15px;min-width:0}
  .guide-option__title{overflow-wrap:normal;word-break:normal}

  /* About: editorial hierarchy from the approved correction. */
  .brand-manifesto__grid{grid-template-columns:1fr;gap:20px}
  .brand-manifesto__number{margin-bottom:2px}
  .brand-manifesto h2{font-size:clamp(3rem,13vw,4.65rem);line-height:.94;max-width:10.5ch}
  .brand-manifesto__copy{grid-column:auto;max-width:38rem;line-height:1.78}
  .brand-principles__grid{grid-template-columns:1fr}

  /* Delivery and contacts: facts/cards remain legible and tappable. */
  .delivery-hero__facts{grid-template-columns:1fr;gap:12px}
  .delivery-steps,.contact-cards{grid-template-columns:1fr}
  .delivery-split,.delivery-return__grid,.contact-details{grid-template-columns:1fr}
  .contact-hero__actions{align-items:stretch;flex-direction:column}
  .contact-hero__actions .btn{width:100%}

  /* Product: preserve the approved structure, refine only flow and touch UX. */
  .product-hero{grid-template-columns:1fr;gap:28px}
  .product-gallery{min-width:0}
  .product-gallery-thumbs{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
  .product-gallery-thumbs::-webkit-scrollbar{display:none}
  .product-gallery-thumb{flex:0 0 72px;scroll-snap-align:start}
  .product-hero__name{font-size:clamp(3rem,14vw,5rem);line-height:.9}
  .product-primary-actions{position:relative;z-index:2}
  .product-primary-actions .btn{width:100%}
  .reviews-layout{grid-template-columns:1fr}
  .reviews-summary{position:static}
  .story-similar .similar-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}

  /* Cart/checkout: predictable one-column purchase flow. */
  .cart-layout{grid-template-columns:1fr;gap:30px}
  .cart-summary{position:static}
  .checkout-trust-strip__grid{display:flex;overflow-x:auto;gap:24px;scrollbar-width:none;white-space:nowrap}
  .checkout-trust-strip__grid::-webkit-scrollbar{display:none}
  .checkout-form__grid,.form-grid{grid-template-columns:1fr}
}

@media(max-width:600px){
  .section{padding-block:clamp(52px,14vw,78px)}
  .section--tight{padding-block:clamp(38px,10vw,58px)}
  .editorial-page-hero h1,.collections-v2-hero h1,.discovery-hero h1,
  .scent-experience__hero h1,.brand-hero h1,.delivery-hero h1,.contact-hero h1{
    font-size:clamp(2.75rem,13.5vw,4.5rem);
    line-height:.92;
  }
  .product-essential-facts{grid-template-columns:1fr 1fr}
}

@media(max-width:390px){
  :root{--mobile-page-pad:16px}
  .home-page .hero.hero--editorial{min-height:580px}
  .home-page .hero-slide__title{font-size:clamp(2.35rem,11.2vw,3.15rem)}
  .home-page .hero-slide__subtitle{font-size:.92rem;line-height:1.5}
  .home-page .hero-slide__actions{gap:10px}
  .catalog-grid{}
  .guide-options{grid-template-columns:1fr}
  .collection-world__aromas{grid-template-columns:1fr}
  .story-similar .similar-grid{grid-template-columns:1fr}
  .product-essential-facts{grid-template-columns:1fr}
}

@media(max-height:700px) and (max-width:900px){
  .home-page .hero.hero--editorial{min-height:560px}
  .home-page .hero-slide__content{padding-top:calc(var(--header-height-mobile,72px) + 12px);padding-bottom:82px}
  .home-page .hero-slide__eyebrow{margin-bottom:10px}
  .home-page .hero-slide__title{font-size:clamp(2.2rem,9.8vw,3.2rem);margin-bottom:14px}
  .home-page .hero-slide__subtitle{margin-bottom:18px}
}

@media(prefers-reduced-motion:reduce){
  .home-page .hero-slide__media img,.product-gallery-thumb img,.story-media img,
  .brand-frame__media img,.collection-world__media img{transition:none!important;transform:none!important}
}

/* v11.8.1 hero copy reliability: motion layer must never blank active copy. */
.motion-ready .home-page .hero--editorial .hero-slide.is-active .hero-slide__content > *{
  opacity:1;
  transform:none;
}
.home-page .hero--editorial .hero-slide:not(.is-active) .hero-slide__content{
  pointer-events:none;
}

/* ===== v11-6-luxury-product-polish.css ===== */
/* VA HOME v11.6 — Luxury & Product Polish */

/* About: quieter editorial hierarchy */
.brand-manifesto__grid {
  grid-template-columns: 56px minmax(0, 1.45fr) minmax(360px, .9fr);
  column-gap: clamp(44px, 6vw, 104px);
}
.brand-manifesto h2 {
  max-width: 660px;
  font-size: clamp(3.15rem, 5.4vw, 5.9rem);
  line-height: .94;
  text-wrap: balance;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.brand-manifesto__copy {
  max-width: 460px;
  line-height: 1.8;
}
.brand-philosophy-strip {
  padding: clamp(72px, 9vw, 138px) 0;
  background: #171510;
  color: #f3eee4;
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.brand-philosophy-strip__inner {
  display: grid;
  grid-template-columns: minmax(180px,.65fr) minmax(0,1.35fr);
  gap: clamp(40px,8vw,140px);
  align-items: end;
}
.brand-philosophy-strip__words {
  display: grid;
  gap: .12em;
  font-family: var(--font-display, "Cormorant Garamond", serif);
  font-size: clamp(4rem, 9vw, 9.5rem);
  line-height: .78;
  letter-spacing: -.04em;
}
.brand-philosophy-strip__note {
  max-width: 430px;
  color: rgba(243,238,228,.66);
  line-height: 1.75;
}

/* Footer: stronger final scene */
.site-footer--editorial { padding-top: clamp(96px, 12vw, 176px); }
.footer-statement { margin-bottom: clamp(72px, 9vw, 124px); }

/* Buttons: more tactile, restrained */
.btn, button, .collection-world__cta, .text-link {
  transition-property: transform, background-color, color, border-color, opacity, box-shadow;
  transition-duration: .42s;
  transition-timing-function: cubic-bezier(.22,1,.36,1);
}
.btn:active, button:active { transform: translateY(1px) scale(.985); transition-duration: .12s; }

/* Product gallery: only a 2% cinematic movement */
@media (hover:hover) and (pointer:fine) {
  .product-hero__media img,
  .product-story img,
  .story-gallery img,
  .product-card__media img {
    transition: transform 1.35s cubic-bezier(.22,1,.36,1), filter .7s ease;
    transform-origin: center;
  }
  .product-hero__media:hover img,
  .product-story figure:hover img,
  .story-gallery figure:hover img,
  .product-card__media:hover img { transform: scale(1.02); }
}

/* Reviews: editorial trust treatment */
.reviews-section .section-heading { max-width: 820px; }
.reviews-section .section-heading h2 { text-wrap: balance; }
.verified-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 9px;
  border: 1px solid rgba(161,128,73,.32);
  color: #9a7640;
  font-size: .68rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  border-radius: 999px;
}
.verified-badge::before { content: "✓"; font-size: .78rem; }
.review-card__photo, .review-photo, .reviews-list img {
  border-radius: 50%;
  width: 50px;
  height: 50px;
  object-fit: cover;
}

/* Similar scents: consultant-like recommendations */
.story-similar .section-heading,
.product-recommendations-heading { max-width: 820px; }
.story-similar h2 { max-width: 760px; text-wrap: balance; }
.similar-grid .product-card { position: relative; }
.similar-grid .product-card__reason {
  margin: 2px 0 0;
  color: rgba(35,31,25,.62);
  font-size: .82rem;
  line-height: 1.55;
  min-height: 2.55em;
}
.similar-grid .product-card__body { gap: 8px; }
.similar-grid .product-card__desc { display: none; }

/* Collections: slower, cinematic reveal without over-animation */
.collection-world.reveal .collection-world__media,
.collection-world.reveal .collection-world__content {
  transition-duration: 1.15s;
  transition-timing-function: cubic-bezier(.22,1,.36,1);
}
.collection-world__media img { transition: transform 1.8s cubic-bezier(.22,1,.36,1); }
@media (hover:hover) and (pointer:fine) {
  .collection-world:hover .collection-world__media img { transform: scale(1.015); }
}

@media (max-width: 900px) {
  .brand-manifesto__grid { grid-template-columns: 42px minmax(0,1fr); gap: 30px 22px; }
  .brand-manifesto__copy { grid-column: 2; max-width: 620px; }
  .brand-philosophy-strip__inner { grid-template-columns: 1fr; }
  .brand-philosophy-strip__note { max-width: 560px; }
}
@media (max-width: 640px) {
  .brand-manifesto__grid { display: block; }
  .brand-manifesto__number { margin-bottom: 34px; }
  .brand-manifesto h2 { font-size: clamp(2.65rem, 13vw, 4.2rem); line-height: .95; max-width: 100%; }
  .brand-manifesto__copy { margin-top: 38px; line-height: 1.75; }
  .brand-philosophy-strip__words { font-size: clamp(4.4rem, 22vw, 7rem); line-height: .8; }
  .site-footer--editorial { padding-top: 84px; }
  .similar-grid .product-card__reason { min-height: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .product-hero__media img, .product-story img, .story-gallery img,
  .product-card__media img, .collection-world__media img { transition: none !important; transform: none !important; }
}

/* ===== v11-8-21-unified-page-heroes.css ===== */
/* VA HOME v11.8.21 — unified inner-page hero viewport system
   All main inner-page heroes now use the same viewport logic as the home hero:
   one first-screen composition, responsive typography and controlled overflow. */

:root {
  --va-desktop-header-h: 88px;
  --va-mobile-header-h: 68px;
}

@media (min-width: 761px) {
  /* Pages with a single hero directly below the desktop header */
  .editorial-page-hero,
  .discovery-hero,
  .scent-experience__hero,
  .brand-hero,
  .delivery-hero,
  .contact-hero {
    box-sizing: border-box;
    height: calc(100svh - var(--va-desktop-header-h));
    min-height: 560px;
    max-height: 900px;
    overflow: hidden;
  }

  /* Collections also contains a 46px breadcrumb strip above its hero. */
  .collections-v2-page .collections-v2-hero {
    box-sizing: border-box;
    height: calc(100svh - var(--va-desktop-header-h) - 46px);
    min-height: 540px;
    max-height: 850px;
    overflow: hidden;
  }

  /* Hero images always fill the available first-screen canvas. */
  .editorial-page-hero img,
  .discovery-hero img,
  .scent-experience__hero-media img,
  .brand-hero__media img,
  .delivery-hero__media img,
  .contact-hero__media img,
  .collections-v2-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  /* Prevent oversized copy from forcing an inner hero beyond the viewport. */
  .editorial-page-hero h1,
  .discovery-hero h1,
  .scent-experience__hero h1,
  .brand-hero h1,
  .delivery-hero h1,
  .contact-hero h1 {
    font-size: clamp(3.7rem, 6.6vw, 7.4rem);
    line-height: .88;
  }

  .collections-v2-page .collections-v2-hero__content {
    padding-top: clamp(44px, 6vh, 72px);
    padding-bottom: clamp(38px, 5vh, 62px);
  }

  .collections-v2-page .collections-v2-hero h1 {
    font-size: clamp(3.75rem, 6.8vw, 7.6rem);
    line-height: .85;
  }
}

@media (max-width: 760px) {
  .editorial-page-hero,
  .discovery-hero,
  .scent-experience__hero,
  .brand-hero,
  .delivery-hero,
  .contact-hero {
    box-sizing: border-box;
    min-height: calc(100svh - var(--va-mobile-header-h));
    height: auto;
    overflow: hidden;
  }

  .collections-v2-page .collections-v2-hero {
    box-sizing: border-box;
    min-height: calc(100svh - var(--va-mobile-header-h) - 44px);
    height: auto;
    overflow: hidden;
  }
}

/* Every collection title follows one identical typographic system.
   Entry is no longer treated as a one-off smaller heading. */
.collections-v2-page .collection-world h2 {
  width: 100%;
  max-width: 9.5ch;
  font-size: clamp(3.65rem, 5.55vw, 6.5rem);
  line-height: .84;
  letter-spacing: -.043em;
}

@media (max-width: 760px) {
  .collections-v2-page .collection-world h2 {
    max-width: 9.5ch;
    font-size: clamp(3.35rem, 16vw, 5.15rem);
    line-height: .86;
  }
}

/* Short laptop screens: keep the whole composition visible without browser zoom. */
@media (min-width: 761px) and (max-height: 760px) {
  .editorial-page-hero,
  .discovery-hero,
  .scent-experience__hero,
  .brand-hero,
  .delivery-hero,
  .contact-hero {
    min-height: 500px;
  }

  .collections-v2-page .collections-v2-hero {
    min-height: 490px;
  }

  .editorial-page-hero h1,
  .discovery-hero h1,
  .scent-experience__hero h1,
  .brand-hero h1,
  .delivery-hero h1,
  .contact-hero h1,
  .collections-v2-page .collections-v2-hero h1 {
    font-size: clamp(3.2rem, 6.2vw, 6.25rem);
  }
}

/* ===== v11-8-24-hero-dna.css ===== */
/* VA HOME v11.8.24 — stronger home hero typography + readable fragrance DNA */
@media (min-width: 901px) {
  .home-page .hero.hero--editorial .hero-slide__content {width:min(100%,760px)}
  .home-page .hero.hero--editorial .hero-slide__title {
    font-size:clamp(4rem,5.15vw,5.4rem);line-height:.92;letter-spacing:-.035em;margin-bottom:1.4rem
  }
  .home-page .hero.hero--editorial .hero-slide__subtitle {
    max-width:34ch;font-size:clamp(1.08rem,1.32vw,1.34rem);line-height:1.55;margin-bottom:1.65rem
  }
  .home-page .hero.hero--editorial .hero-slide__actions .btn {
    min-height:58px;padding-inline:1.9rem;font-size:.98rem
  }
}
@media (min-width:901px) and (max-height:820px) {
  .home-page .hero.hero--editorial .hero-slide__title {font-size:clamp(3.55rem,4.7vw,4.65rem)}
  .home-page .hero.hero--editorial .hero-slide__subtitle {font-size:1.05rem;margin-bottom:1.25rem}
  .home-page .hero.hero--editorial .hero-slide__actions .btn {min-height:52px}
}
.has-product-story-v10 .story-dna {overflow:hidden}
.story-dna__radar {width:min(100%,360px);margin:1.15rem auto .35rem}
.story-dna__radar svg {overflow:visible}
.story-dna__grid polygon,.story-dna__grid line {stroke:rgba(244,240,233,.15)}
.story-dna__shape {transform-box:fill-box;transform-origin:center;animation:dnaRadarReveal .75s cubic-bezier(.22,.61,.36,1) both}
.story-dna__point {fill:var(--color-gold);stroke:#0a0907;stroke-width:1.2;opacity:0;animation:dnaPointReveal .35s ease .55s forwards}
.story-dna__axis-label {fill:rgba(244,240,233,.72);font-family:var(--font-sans);font-size:7px;letter-spacing:.045em;text-transform:uppercase}
.story-dna__axis-value {fill:var(--color-gold);font-size:7px;font-weight:600}
.story-dna__character {display:grid;gap:.28rem;margin:.45rem 0 1rem;padding:1rem 0;border-top:1px solid rgba(244,240,233,.1);border-bottom:1px solid rgba(244,240,233,.1)}
.story-dna__character span {color:var(--text-secondary);font-size:.66rem;letter-spacing:.13em;text-transform:uppercase}
.story-dna__character strong {color:var(--text-primary);font-family:var(--font-display);font-size:clamp(1.25rem,2vw,1.65rem);font-weight:400;text-transform:capitalize}
.story-dna__legend {display:grid;grid-template-columns:1fr;gap:.58rem;margin:0;padding:0;list-style:none}
.story-dna__legend li {display:grid;grid-template-columns:minmax(74px,.75fr) minmax(80px,1fr) 62px;align-items:center;gap:.7rem;padding:0;border:0;font-size:.68rem}
.story-dna__legend li>span {color:var(--text-secondary)}
.story-dna__legend li>i {position:relative;height:2px;background:rgba(244,240,233,.13);overflow:hidden}
.story-dna__legend li>i b {display:block;width:calc(var(--dna-level) * 10%);height:100%;background:linear-gradient(90deg,#805728,var(--color-gold));transform-origin:left;animation:dnaBarReveal .75s ease .2s both}
.story-dna__legend li>strong {color:rgba(244,240,233,.78);font-size:.62rem;font-weight:500;letter-spacing:.04em;text-align:right}
@keyframes dnaRadarReveal {from{opacity:0;transform:scale(.15)}to{opacity:1;transform:scale(1)}}
@keyframes dnaPointReveal {to{opacity:1}}
@keyframes dnaBarReveal {from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:700px){.story-dna__radar{width:min(92%,330px)}.story-dna__legend li{grid-template-columns:78px 1fr 58px}}
@media(prefers-reduced-motion:reduce){.story-dna__shape,.story-dna__point,.story-dna__legend li>i b{animation:none!important;opacity:1;transform:none}}

/* v11.8.26 — mobile checkout trust strip: 2 + 1 layout */
@media (max-width: 560px) {
  .checkout-trust-strip {
    padding: 12px 0;
  }

  .checkout-trust-strip .container.checkout-trust-strip__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    overflow: visible;
    white-space: normal;
  }

  .checkout-trust-strip__grid > div {
    display: flex;
    min-width: 0;
    min-height: 66px;
    padding: 10px 12px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
    border-bottom: 1px solid var(--border-hairline);
  }

  .checkout-trust-strip__grid > div:first-child {
    border-right: 1px solid var(--border-hairline);
  }

  .checkout-trust-strip__grid > div:last-child {
    grid-column: 1 / -1;
    min-height: 60px;
    border-bottom: 0;
  }

  .checkout-trust-strip__grid strong,
  .checkout-trust-strip__grid span {
    display: block !important;
    max-width: 100%;
    overflow-wrap: normal;
    word-break: normal;
    white-space: normal;
  }

  .checkout-trust-strip__grid strong {
    font-size: clamp(.62rem, 2.8vw, .72rem);
    line-height: 1.25;
  }

  .checkout-trust-strip__grid span {
    margin-top: 4px;
    font-size: clamp(.55rem, 2.45vw, .66rem);
    line-height: 1.35;
  }
}

@media (max-width: 360px) {
  .checkout-trust-strip__grid > div {
    padding-inline: 9px;
  }
}

/* ===== v11-8-42-unified-hero-font-reveal.css ===== */
/* VA HOME v11.8.42 — stable hero typography reveal
   Keeps hero copy hidden only until display/body fonts are ready,
   then reveals it with a subtle 8px lift. */

html.va-hero-fonts-loading :is(
  .home-page .hero--editorial .hero-slide__content,
  .brand-hero__copy,
  .editorial-page-hero__content,
  .delivery-hero__copy,
  .contact-hero__copy,
  .discovery-hero__content,
  .scent-experience__hero-content,
  .product-hero__info,
  .cart-hero > div:first-child,
  .account-auth > div:first-child,
  .journal-hero .container,
  .order-track__intro
) {
  opacity: 0 !important;
  transform: translate3d(0, 8px, 0) !important;
}

html.va-hero-fonts-ready :is(
  .home-page .hero--editorial .hero-slide__content,
  .brand-hero__copy,
  .editorial-page-hero__content,
  .delivery-hero__copy,
  .contact-hero__copy,
  .discovery-hero__content,
  .scent-experience__hero-content,
  .product-hero__info,
  .cart-hero > div:first-child,
  .account-auth > div:first-child
) {
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) !important;
  transition: opacity 560ms ease, transform 560ms cubic-bezier(.22,.61,.36,1) !important;
  will-change: opacity, transform;
}

@media (prefers-reduced-motion: reduce) {
  html.va-hero-fonts-loading :is(
    .home-page .hero--editorial .hero-slide__content,
  .brand-hero__copy,
    .editorial-page-hero__content,
    .delivery-hero__copy,
    .contact-hero__copy,
    .discovery-hero__content,
    .scent-experience__hero-content,
    .product-hero__info,
    .cart-hero > div:first-child,
    .account-auth > div:first-child,
    .journal-hero .container,
    .order-track__intro
  ) {
    transform: none !important;
  }

  html.va-hero-fonts-ready :is(
    .home-page .hero--editorial .hero-slide__content,
  .brand-hero__copy,
    .editorial-page-hero__content,
    .delivery-hero__copy,
    .contact-hero__copy,
    .discovery-hero__content,
    .scent-experience__hero-content,
    .product-hero__info,
    .cart-hero > div:first-child,
    .account-auth > div:first-child,
    .journal-hero .container,
    .order-track__intro
  ) {
    transform: none !important;
    transition: opacity 180ms linear !important;
    will-change: auto;
  }
}

/* ===== compare.css ===== */
/* VA HOME — Scent Comparison / Editorial dark experience */
.va-compare-add{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:0;background:transparent;color:inherit;font:600 11px/1.2 Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:.65rem 0;opacity:.72;transition:opacity .2s ease,color .2s ease}.va-compare-add:hover,.va-compare-add.is-active{opacity:1;color:#b89a63}.va-compare-add svg{width:15px;height:15px}.product-card .va-compare-add{width:100%;border-top:1px solid rgba(30,27,23,.1);margin-top:.65rem}.va-compare-product-btn{margin-top:12px;border:1px solid rgba(255,255,255,.32);border-radius:999px;padding:12px 18px;color:#fff;opacity:.9}.va-compare-product-btn:hover,.va-compare-product-btn.is-active{background:rgba(255,255,255,.12);color:#e2c38d}

.va-compare-dock{position:fixed;left:50%;bottom:22px;z-index:9990;transform:translate(-50%,18px);display:flex;align-items:center;gap:14px;max-width:calc(100vw - 28px);padding:10px 12px 10px 16px;border:1px solid rgba(211,183,132,.35);border-radius:999px;background:rgba(13,12,10,.94);box-shadow:0 18px 60px rgba(0,0,0,.34);backdrop-filter:blur(18px);color:#fff;opacity:0;pointer-events:none;transition:.28s ease}.va-compare-dock.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%,0)}.va-compare-dock__label{font:600 10px/1 Manrope,sans-serif;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;color:#c9a76a}.va-compare-dock__thumbs{display:flex}.va-compare-dock__thumb{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid #171512;margin-left:-7px;background:#d8d0c4}.va-compare-dock__thumb:first-child{margin-left:0}.va-compare-dock__open{border:0;border-radius:999px;background:#efe8dc;color:#16130f;padding:11px 17px;font:700 10px/1 Manrope,sans-serif;letter-spacing:.11em;text-transform:uppercase;cursor:pointer}.va-compare-dock__clear{border:0;background:transparent;color:#fff;opacity:.5;font-size:18px;cursor:pointer;padding:4px}

.va-compare-modal{position:fixed;inset:0;z-index:10000;background:#0b0a08;color:#f4efe7;opacity:0;visibility:hidden;transition:opacity .28s ease}.va-compare-modal::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% -10%,rgba(184,148,87,.12),transparent 42%),linear-gradient(180deg,rgba(255,255,255,.015),transparent 36%)}.va-compare-modal.is-open{opacity:1;visibility:visible}.va-compare-modal__inner{position:relative;height:100%;overflow:auto;overscroll-behavior:contain}.va-compare-modal__top{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(215,184,128,.15);background:rgba(11,10,8,.9);backdrop-filter:blur(20px)}.va-compare-modal__eyebrow{margin:0 0 8px;font:600 9px/1 Manrope,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#b9955d}.va-compare-modal__title{margin:0;font:500 clamp(35px,4vw,62px)/.9 Cormorant Garamond,serif;letter-spacing:-.025em}.va-compare-modal__close{flex:0 0 auto;border:1px solid rgba(244,239,231,.2);border-radius:50%;background:rgba(255,255,255,.025);color:#f4efe7;font:300 27px/1 Manrope,sans-serif;cursor:pointer;transition:.2s ease}.va-compare-modal__close:hover{border-color:#b9955d;transform:rotate(7deg)}

.va-compare-tabs{position:sticky;z-index:9;display:flex;justify-content:center;border-bottom:1px solid rgba(215,184,128,.12);background:rgba(11,10,8,.9);backdrop-filter:blur(20px)}.va-compare-tab{position:relative;border:0;background:transparent;color:rgba(244,239,231,.48);padding:7px 2px;font:600 10px/1 Manrope,sans-serif;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:color .2s ease}.va-compare-tab::after{content:"";position:absolute;left:0;right:100%;height:1px;background:#c6a269;transition:right .25s ease}.va-compare-tab.is-active{color:#f4efe7}.va-compare-tab.is-active::after{right:0}

.va-compare-grid{display:grid;grid-template-columns:repeat(var(--compare-count),minmax(0,1fr));border-top:1px solid rgba(215,184,128,.16);border-left:1px solid rgba(215,184,128,.16)}.va-compare-card{display:flex;flex-direction:column;border-right:1px solid rgba(215,184,128,.16);border-bottom:1px solid rgba(215,184,128,.16);background:rgba(255,255,255,.018)}.va-compare-card__hero{position:relative;overflow:hidden}.va-compare-card__hero::after{content:"";position:absolute;inset:0}.va-compare-card__hero img{width:100%;height:100%;display:block;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.va-compare-card:hover .va-compare-card__hero img{transform:scale(1.025)}.va-compare-card__index{position:absolute;left:18px;bottom:15px;z-index:2;font:600 9px/1 Manrope,sans-serif;letter-spacing:.18em;color:rgba(255,255,255,.68)}.va-compare-card__remove{right:14px;top:14px;z-index:3;cursor:pointer;transition:.2s ease}.va-compare-card__remove:hover{background:#f1eadf;color:#15120f;border-color:#f1eadf}

.va-compare-card__identity{border-bottom:1px solid rgba(215,184,128,.12)}.va-compare-card__collection{font:600 9px/1 Manrope,sans-serif;letter-spacing:.19em;text-transform:uppercase;color:#b9955d}.va-compare-card__name{margin:0;font:500 clamp(27px,2.5vw,43px)/.95 Cormorant Garamond,serif;letter-spacing:-.02em}.va-compare-card__meta{display:flex;align-items:center;justify-content:space-between;color:rgba(244,239,231,.62);font:500 11px/1 Manrope,sans-serif}.va-compare-card__meta strong{color:#f4efe7;font-size:13px;font-weight:600}

.va-compare-panel{display:none}.va-compare-panel.is-active{display:block;animation:vaCompareFade .28s ease both}@keyframes vaCompareFade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.va-compare-block{padding:0 0 22px;margin:0 0 22px;border-bottom:1px solid rgba(215,184,128,.1)}.va-compare-block:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}.va-compare-block--compact{margin-top:24px}.va-compare-label{margin:0 0 12px;color:rgba(244,239,231,.46);font:600 9px/1 Manrope,sans-serif;letter-spacing:.17em;text-transform:uppercase}.va-compare-tags{display:flex;flex-wrap:wrap;gap:7px}.va-compare-tag{border:1px solid rgba(215,184,128,.2);border-radius:999px;padding:8px 11px;color:#ede4d7;font:500 10px/1 Manrope,sans-serif;background:rgba(255,255,255,.018)}.va-compare-statement{margin:0;max-width:24ch;font:500 clamp(21px,2vw,29px)/1.08 Cormorant Garamond,serif;color:#f4efe7}.va-compare-value{margin:0;color:rgba(244,239,231,.76);font:500 12px/1.55 Manrope,sans-serif}

.va-compare-meter{padding:0 0 17px;margin:0 0 17px;border-bottom:1px solid rgba(215,184,128,.1)}.va-compare-meter>div>span{display:block;margin-bottom:10px;color:rgba(244,239,231,.62);font:500 10px/1 Manrope,sans-serif}.va-compare-scale{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}.va-compare-scale i{display:block;height:2px;background:rgba(244,239,231,.13)}.va-compare-scale i.is-filled{background:#bd995f}

.va-compare-note{padding:20px 0;border-bottom:1px solid rgba(215,184,128,.11)}.va-compare-note:first-child{padding-top:0}.va-compare-note:last-child{border-bottom:0}.va-compare-note small{display:block;margin-bottom:8px;color:#b9955d;font:600 9px/1 Manrope,sans-serif;letter-spacing:.16em;text-transform:uppercase}.va-compare-note span{display:block;color:#f4efe7;font:500 15px/1.5 Cormorant Garamond,serif}

.va-compare-card__actions{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;margin-top:auto}.va-compare-link{color:rgba(244,239,231,.56);font:600 9px/1 Manrope,sans-serif;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;white-space:nowrap}.va-compare-link:hover{color:#f4efe7}.va-compare-buy{border:1px solid #bd995f;background:#bd995f;color:#110f0c;font:700 10px/1 Manrope,sans-serif;letter-spacing:.13em;text-transform:uppercase;cursor:pointer;transition:.22s ease}.va-compare-buy:hover{background:#d0ad72;border-color:#d0ad72}.va-compare-buy.is-added{background:#efe7db;border-color:#efe7db}

.va-compare-empty{padding:110px 24px;text-align:center}.va-compare-empty h3{margin:0 0 14px;font:500 clamp(36px,5vw,64px)/.95 Cormorant Garamond,serif}.va-compare-empty>p:last-child{margin:0 auto;max-width:470px;color:rgba(244,239,231,.55);font:400 13px/1.65 Manrope,sans-serif}body.va-compare-lock{overflow:hidden}

@media(max-width:900px){.va-compare-grid{margin-top:22px;border-left:0;display:flex;overflow-x:auto;scrollbar-width:none}.va-compare-grid::-webkit-scrollbar{display:none}.va-compare-card:first-child{border-left:1px solid rgba(215,184,128,.16)}.va-compare-card:last-child{}.va-compare-modal__top{padding:20px 18px}.va-compare-tabs{}}
@media(max-width:600px){.va-compare-dock{gap:9px;padding-left:12px}.va-compare-dock__label{display:none}.va-compare-dock__open{padding:11px 13px}.va-compare-modal__title{}.va-compare-modal__close{}.va-compare-tabs{justify-content:flex-start;gap:25px;overflow-x:auto;padding-left:18px;padding-right:18px}.va-compare-card__identity,.va-compare-panel{padding-left:20px;padding-right:20px}.va-compare-card__actions{grid-template-columns:1fr;padding-left:20px;padding-right:20px}.va-compare-link{text-align:center;padding:8px}.va-compare-panel{min-height:250px}}
@media(prefers-reduced-motion:reduce){.va-compare-card__hero img,.va-compare-modal,.va-compare-dock,.va-compare-panel{transition:none!important;animation:none!important}}

/* v11.8.69 — mobile comparison geometry fix */
.va-compare-modal__close,
.va-compare-card__remove{
  box-sizing:border-box;
  aspect-ratio:1 / 1;
  padding:0;
  display:grid;
  place-items:center;
  line-height:1;
}

@media(max-width:900px){
  .va-compare-grid{
    box-sizing:border-box;
  }
  .va-compare-card:first-child,
  .va-compare-card:last-child{
    margin-left:0;
    margin-right:0;
  }
  .va-compare-card__hero{
  }
  .va-compare-card__hero img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
  }
}

@media(max-width:600px){
  .va-compare-modal__top{
    min-height:88px;
    padding:17px 16px;
  }
  .va-compare-modal__title{
    font-size:31px;
    line-height:.92;
  }
  .va-compare-modal__close{
    width:42px;
    height:42px;
    min-width:42px;
    min-height:42px;
    border-radius:999px;
    font-size:24px;
  }
  .va-compare-tabs{
    top:88px;
  }
  .va-compare-grid{
    margin-top:16px;
    padding-inline:14px;
    gap:10px;
  }
  .va-compare-card{
    max-width:420px;
  }
  .va-compare-card__hero{
    min-height:0;
  }
  .va-compare-card__remove{
    width:36px;
    height:36px;
    min-width:36px;
    min-height:36px;
    border-radius:999px;
  }
}

/* v12.1 — compact adaptive compare */
.va-compare-modal__top{min-height:88px;padding:17px clamp(18px,3vw,46px)}
.va-compare-modal__title{font-size:clamp(32px,3.1vw,48px)}
.va-compare-modal__close{width:42px;height:42px;font-size:24px}
.va-compare-tabs{top:88px;padding:13px 20px;gap:30px}
.va-compare-tab::after{bottom:-14px}
.va-compare-grid{margin:20px auto 48px}
.va-compare-card__hero{max-height:260px}
.va-compare-card__identity{}
.va-compare-card__name{}
.va-compare-card__meta{}
.va-compare-panel{}
.va-compare-block{}
.va-compare-block--statement{}
.va-compare-statement{}
.va-compare-card__actions{}
.va-compare-buy{min-height:46px}
@media (min-width:901px) and (max-height:820px){
  .va-compare-modal__top{min-height:76px;padding-top:12px;padding-bottom:12px}
  .va-compare-modal__eyebrow{margin-bottom:5px}
  .va-compare-modal__title{font-size:36px}
  .va-compare-tabs{top:76px;padding:10px 18px}
  .va-compare-tab::after{bottom:-11px}
  .va-compare-grid{margin-top:14px}
  .va-compare-card__hero{max-height:190px;aspect-ratio:16/8}
  .va-compare-card__identity{padding-top:14px;padding-bottom:14px}
  .va-compare-panel{padding-top:16px;min-height:210px}
}
@media(max-width:900px){
  .va-compare-modal__top{min-height:82px}
  .va-compare-tabs{top:82px}
  .va-compare-grid{width:100%}
  .va-compare-card{}
  .va-compare-card:first-child{margin-left:0}
  .va-compare-card:last-child{margin-right:0}
  .va-compare-card__hero{max-height:220px}
}
@media(max-width:600px){
  .va-compare-card{}
  .va-compare-card__hero{aspect-ratio:4/3;max-height:240px}
}

/* v12.2 — laptop-first comparison composition */
.va-compare-grid{
  width:min(1460px,calc(100% - 40px));
  margin-top:16px;
}
.va-compare-card__hero{
  height:clamp(190px,22vh,250px);
  background:transparent;
}
.va-compare-card__hero::after{
  background:linear-gradient(180deg,rgba(8,7,6,.03) 48%,rgba(8,7,6,.32));
}
.va-compare-card__hero img{
}
.va-compare-card__identity{
  padding:18px 22px 18px;
}
.va-compare-card__heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:8px;
}
.va-compare-card__collection{
  margin:0;
}
.va-compare-card__remove{
  position:static;
  flex:0 0 30px;
  border-color:rgba(244,239,231,.16);
  font-size:17px;
  line-height:1;
}
.va-compare-card__remove:hover{
  transform:rotate(6deg);
}
.va-compare-card__name{
  font-size:clamp(25px,2vw,36px);
}
.va-compare-card__meta{
  margin-top:14px;
}
.va-compare-panel{
  padding:20px 22px;
  min-height:238px;
}
.va-compare-block{
  padding-bottom:18px;
  margin-bottom:18px;
}
.va-compare-block--statement{
  min-height:72px;
}
.va-compare-statement{
  font-size:clamp(20px,1.65vw,26px);
}
.va-compare-card__actions{
  padding:0 22px 20px;
}

@media (min-width:901px) and (max-height:900px){
  .va-compare-modal__top{min-height:82px;padding-top:14px;padding-bottom:14px}
  .va-compare-modal__title{font-size:clamp(30px,3vw,46px)}
  .va-compare-tabs{top:82px;padding-top:13px;padding-bottom:13px}
  .va-compare-tab::after{bottom:-14px}
  .va-compare-card__hero{height:clamp(165px,20vh,210px)}
  .va-compare-grid{margin-top:14px;margin-bottom:44px}
}

@media(max-width:900px){
  .va-compare-card__hero{height:220px;aspect-ratio:auto}
  .va-compare-card__identity{padding:18px 20px}
  .va-compare-panel{padding:20px;min-height:0}
}

@media(max-width:600px){
  .va-compare-card__hero{height:190px}
  .va-compare-card__name{font-size:30px}
}

/* v12.3 — VA HOME Macro Lens comparison */
.va-compare-card__hero--macro{
  position:relative;
  isolation:isolate;
  height:clamp(210px,25vh,286px);
  overflow:hidden;
  background:#0d0b09;
  border-bottom:1px solid rgba(215,184,128,.14);
}
.va-compare-card__hero--macro::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(8,7,6,.46),transparent 24%,transparent 76%,rgba(8,7,6,.46)),
    linear-gradient(180deg,rgba(8,7,6,.06),rgba(8,7,6,.18));
  pointer-events:none;
}
.va-compare-card__hero--macro::after{
  content:"";
  position:absolute;
  inset:14px;
  z-index:3;
  border:1px solid rgba(238,218,181,.16);
  background:none;
  pointer-events:none;
}
.va-compare-card__ambient,
.va-compare-card__focus{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}
.va-compare-card__ambient{
  z-index:0;
  object-fit:cover;
  filter:blur(22px) saturate(.72) brightness(.52);
  transform:scale(1.15);
  opacity:.72;
}
.va-compare-card__focus{
  z-index:2;
  object-fit:contain;
  object-position:center;
  padding:14px 42px;
  filter:drop-shadow(0 22px 34px rgba(0,0,0,.28));
  transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .9s ease;
}
.va-compare-card:hover .va-compare-card__focus{
  transform:scale(1.018);
  filter:drop-shadow(0 26px 42px rgba(0,0,0,.34));
}
.va-compare-card:hover .va-compare-card__ambient{
  transform:scale(1.18);
}
.va-compare-card__lens{
  position:absolute;
  left:27px;
  right:27px;
  bottom:25px;
  z-index:4;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:12px;
  color:rgba(250,244,235,.72);
  pointer-events:none;
}
.va-compare-card__lens span,
.va-compare-card__lens b{
  font:600 8px/1 Manrope,sans-serif;
  letter-spacing:.2em;
}
.va-compare-card__lens b{font-weight:500;color:#d1aa6a}
.va-compare-card__lens i{height:1px;background:linear-gradient(90deg,rgba(209,170,106,.52),rgba(209,170,106,.08))}
.va-compare-card__index{display:none}

@media (min-width:901px) and (max-height:900px){
  .va-compare-card__hero--macro{height:clamp(184px,23vh,228px)}
  .va-compare-card__focus{padding:12px 34px}
}
@media(max-width:900px){
  .va-compare-card__hero--macro{height:240px}
  .va-compare-card__focus{padding:14px 30px}
}
@media(max-width:600px){
  .va-compare-card__hero--macro{height:218px}
  .va-compare-card__hero--macro::after{inset:10px}
  .va-compare-card__focus{padding:10px 22px}
  .va-compare-card__lens{left:20px;right:20px;bottom:18px}
}
@media(prefers-reduced-motion:reduce){
  .va-compare-card__ambient,.va-compare-card__focus{transition:none!important}
}

/* v12.4 — VA HOME Olfactive Dossier comparison */
.va-compare-card--dossier .va-compare-card__hero{display:none!important}
.va-compare-card--dossier{
  background:linear-gradient(180deg,#0d0c0a 0%,#0b0a08 100%);
}
.va-compare-card__identity--portrait{
  padding:28px 28px 24px;
  display:grid;
  gap:26px;
  border-bottom:1px solid rgba(214,184,128,.14);
}
.va-compare-card__copy{min-width:0;display:flex;flex-direction:column}
.va-compare-card__number{
  display:block;
  margin:22px 0 9px;
  color:rgba(210,172,108,.66);
  font:600 9px/1 Manrope,sans-serif;
  letter-spacing:.22em;
}
.va-compare-card--dossier .va-compare-card__name{
  margin:0;
  font-size:clamp(29px,2.25vw,42px);
  line-height:.98;
  max-width:12ch;
}
.va-compare-card--dossier .va-compare-card__meta{margin-top:auto;padding-top:24px}
.va-compare-card__portrait{
  position:relative;
  margin:0;
  min-width:0;
  overflow:hidden;
  isolation:isolate;
}
.va-compare-card__portrait::after{
  content:"";
  position:absolute;
  border:1px solid rgba(248,239,222,.12);
  pointer-events:none;
  z-index:2;
}
.va-compare-card__portrait-image{display:block;
  transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .8s ease;
}
.va-compare-card:hover .va-compare-card__portrait-image{transform:scale(1.025)}
.va-compare-card__portrait figcaption{
  position:absolute;z-index:3;
  color:rgba(250,245,236,.74);
  font:600 7px/1 Manrope,sans-serif;
  text-shadow:0 1px 10px rgba(0,0,0,.7);
}
.va-compare-card__portrait figcaption::before{
  content:"";display:block;height:1px;background:#c99d57;
}
@media(min-width:901px) and (max-height:900px){
  .va-compare-card__identity--portrait{gap:20px}
  .va-compare-card__portrait-image{min-height:142px}
  .va-compare-card__number{margin-top:15px}
}
@media(max-width:900px){
  .va-compare-card__identity--portrait{padding:22px;gap:18px}
  .va-compare-card__portrait-image{min-height:146px}
}
@media(max-width:520px){
  .va-compare-card__identity--portrait{padding:18px;gap:14px}
  .va-compare-card__portrait-image{min-height:128px}
  .va-compare-card__portrait figcaption{font-size:6px;left:11px;bottom:10px}
  .va-compare-card__number{margin-top:13px}
}

/* v12.5 — Material Sample Compare polish */
.va-compare-card__identity--portrait{
  grid-template-columns:minmax(0,1fr) clamp(126px,9.2vw,148px);
  align-items:center;
  min-height:208px;
}
.va-compare-card__portrait{
  width:100%;
  aspect-ratio:1 / 1;
  align-self:center;
  border:1px solid rgba(225,196,143,.22);
  background:#100e0b;
  box-shadow:0 18px 44px rgba(0,0,0,.24);
}
.va-compare-card__portrait::before{
  content:"MATERIAL / 01";
  position:absolute;
  top:12px;
  left:13px;
  z-index:3;
  color:rgba(250,245,236,.56);
  font:600 6px/1 Manrope,sans-serif;
  letter-spacing:.18em;
  text-shadow:0 1px 8px rgba(0,0,0,.72);
}
.va-compare-card__portrait::after{inset:7px}
.va-compare-card__portrait-image{
  width:100%;height:100%;min-height:0;
  object-fit:cover;
  object-position:center center;
}
.va-compare-card__portrait figcaption{
  left:13px;right:13px;bottom:12px;
  font-size:6px;
  letter-spacing:.16em;
}
.va-compare-card__portrait figcaption::before{width:20px;margin-bottom:7px}

.va-compare-card__heading{position:relative}
.va-compare-card__remove{
  width:auto;
  height:30px;
  min-width:30px;
  padding:0 9px;
  border-radius:999px;
  border:1px solid rgba(205,166,101,.34);
  background:rgba(12,10,8,.18);
  color:rgba(239,225,202,.72);
  backdrop-filter:none;
  font:500 15px/1 Manrope,sans-serif;
  box-shadow:none;
}
.va-compare-card__remove::before{
  content:"REMOVE";
  margin-right:7px;
  font:600 7px/1 Manrope,sans-serif;
  letter-spacing:.16em;
  color:rgba(205,166,101,.58);
}
.va-compare-card__remove:hover,
.va-compare-card__remove:focus-visible{
  transform:none;
  background:rgba(205,166,101,.08);
  border-color:rgba(205,166,101,.66);
  color:#ead9bd;
  outline:none;
}

@media(min-width:901px) and (max-height:900px){
  .va-compare-card__identity--portrait{
    min-height:180px;
    grid-template-columns:minmax(0,1fr) 126px;
    padding:20px 22px;
  }
}
@media(max-width:900px){
  .va-compare-card__identity--portrait{
    grid-template-columns:minmax(0,1fr) 128px;
    min-height:188px;
  }
}
@media(max-width:520px){
  .va-compare-card__identity--portrait{
    grid-template-columns:minmax(0,1fr) 104px;
    min-height:168px;
  }
  .va-compare-card__remove::before{display:none}
  .va-compare-card__remove{width:30px;padding:0}
  .va-compare-card__portrait::before{display:none}
}

/* ===== v12-0-rc1.css ===== */
/* ==========================================================================
   VA HOME v12.0 RC1 — Production design-system and interaction polish
   Scope: shared cards, account wishlist, scent comparison, focus/touch UX.
   ========================================================================== */

:root{
  --ui-border:rgba(184,138,75,.22);
  --ui-border-hover:rgba(184,138,75,.48);
  --ui-surface:#12100d;
  --ui-surface-deep:#0b0a08;
  --ui-gold:#b88a4b;
  --ui-radius:2px;
  --ui-shadow-rest:0 12px 32px rgba(0,0,0,.18);
  --ui-shadow-lift:0 24px 64px rgba(0,0,0,.32);
  --ui-ease:cubic-bezier(.2,.7,.2,1);
  --ui-fast:180ms;
  --ui-base:360ms;
}

/* Consistent, visible keyboard focus without changing pointer interactions. */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:1px solid var(--ui-gold);
  outline-offset:4px;
}

/* Shared product-card geometry. Keeps every catalogue surface aligned. */
.product-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  height:100%;
  border-color:var(--ui-border);
  border-radius:var(--ui-radius);
  box-shadow:var(--ui-shadow-rest);
  transition:transform var(--ui-base) var(--ui-ease),border-color var(--ui-fast) ease,box-shadow var(--ui-base) var(--ui-ease);
}
.product-card__media{
  aspect-ratio:4/5;
  overflow:hidden;
  background:var(--ui-surface-deep);
}
.product-card__media>img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.product-card__body{
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
}
.product-card__desc{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  min-height:calc(2em * 1.55);
}
.product-card__meta{margin-top:auto}
.product-card__actions{margin-top:auto}
.product-card__wishlist{
  box-sizing:border-box;
  aspect-ratio:1;
  padding:0;
}
@media(hover:hover) and (pointer:fine){
  .product-card:hover{
    transform:translateY(-3px);
    border-color:var(--ui-border-hover);
    box-shadow:var(--ui-shadow-lift);
  }
}

/* Account: quieter private-space treatment and stable wishlist cards. */
.account-tabs button{
  min-height:48px;
  transition:color var(--ui-fast) ease,border-color var(--ui-fast) ease,background var(--ui-fast) ease;
}
.account-tabs button:hover{color:var(--text-primary);background:rgba(255,255,255,.018)}
.wishlist-grid{
  align-items:stretch;
  grid-template-columns:repeat(auto-fill,minmax(176px,218px));
  gap:18px;
}
.wishlist-card{
  min-width:0;
  height:100%;
  border-color:var(--ui-border);
  box-shadow:var(--ui-shadow-rest);
  transition:transform var(--ui-base) var(--ui-ease),border-color var(--ui-fast) ease,box-shadow var(--ui-base) var(--ui-ease);
}
.wishlist-card__media{aspect-ratio:4/5}
.wishlist-card__media img{object-fit:cover;object-position:center}
.wishlist-card__body{min-width:0;padding:15px}
.wishlist-card h2{overflow-wrap:anywhere;line-height:1.08}
.wishlist-card__actions{flex-wrap:wrap}
.wishlist-remove{min-height:38px;display:inline-flex;align-items:center}
@media(hover:hover) and (pointer:fine){
  .wishlist-card:hover{
    transform:translateY(-3px);
    border-color:var(--ui-border-hover);
    box-shadow:var(--ui-shadow-lift);
  }
}
@media(max-width:760px){
  .wishlist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
}
@media(max-width:520px){
  .wishlist-grid{grid-template-columns:1fr}
  .wishlist-card{display:grid;grid-template-columns:88px minmax(0,1fr);min-height:110px}
  .wishlist-card__media{width:88px;height:110px;aspect-ratio:4/5}
  .wishlist-card__body{padding:11px 12px}
  .wishlist-card__actions{padding-top:8px}
  .wishlist-card__actions .btn{min-height:36px;padding:8px 11px}
  .wishlist-remove{min-height:36px}
}

/* Comparison: editorial cards with predictable image ratio and safer mobile flow. */
.va-compare-modal__inner{scrollbar-gutter:stable}
.va-compare-modal__close,.va-compare-card__remove{
  box-sizing:border-box;
  display:grid;
  place-items:center;
  aspect-ratio:1;
  padding:0;
}
.va-compare-grid{align-items:stretch}
.va-compare-card{height:auto;min-width:0}
.va-compare-card__hero{aspect-ratio:4/5}
.va-compare-card__hero img{object-fit:cover;object-position:center}
.va-compare-panel{flex:1}
.va-compare-buy,.va-compare-dock__open{transition:background var(--ui-fast) ease,border-color var(--ui-fast) ease,transform var(--ui-fast) ease}
@media(hover:hover) and (pointer:fine){
  .va-compare-buy:hover,.va-compare-dock__open:hover{transform:translateY(-1px)}
}
@media(max-width:900px){
  .va-compare-grid{
    scroll-snap-type:x mandatory;
    scroll-padding-inline:16px;
    overscroll-behavior-inline:contain;
    gap:12px;
    padding:0 16px calc(12px + env(safe-area-inset-bottom));
  }
  .va-compare-card{
    flex:0 0 min(82vw,410px);
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
}
@media(max-width:600px){
  .va-compare-dock{bottom:calc(12px + env(safe-area-inset-bottom))}
  .va-compare-card{flex-basis:calc(100vw - 44px)}
  .va-compare-modal__top{padding-top:calc(17px + env(safe-area-inset-top))}
  .va-compare-tabs{scrollbar-width:none}
  .va-compare-tabs::-webkit-scrollbar{display:none}
}

/* Keep touch controls comfortably tappable. */
@media(pointer:coarse){
  .va-compare-add,.wishlist-remove{min-height:44px}
  .va-compare-card__remove{min-width:40px;min-height:40px}
}

@media(prefers-reduced-motion:reduce){
  .product-card,.wishlist-card,.product-card__media img,.wishlist-card__media img,
  .va-compare-buy,.va-compare-dock__open{transition:none!important;transform:none!important}
}

/* ===== v12-0-rc2.css ===== */
/* ==========================================================================
   VA HOME v12.0 RC2 — Production QA hardening
   Scope: mobile stability, accessibility, safe-area and overflow protection.
   No visual redesign and no commerce logic changes.
   ========================================================================== */

:root{
  --tap-target:44px;
  --focus-ring:rgba(184,138,75,.95);
}

html{
  overflow-x:clip;
  scrollbar-gutter:stable;
  text-size-adjust:100%;
  -webkit-text-size-adjust:100%;
}
body{min-width:0;overflow-wrap:break-word}
main,section,article,aside,nav,header,footer{min-width:0}
img,video,canvas,svg{max-width:100%}

/* Anchored sections remain visible below the sticky header. */
:where([id]){scroll-margin-top:96px}

/* Production-grade focus that remains visible on dark and light surfaces. */
:where(a,button,input,select,textarea,[role="button"],[tabindex]):focus-visible{
  outline:2px solid var(--focus-ring);
  outline-offset:3px;
}

/* Reliable touch behaviour without changing desktop sizing. */
:where(button,[role="button"],input[type="button"],input[type="submit"],input[type="checkbox"],input[type="radio"]){
  touch-action:manipulation;
}
@media(pointer:coarse){
  :where(.icon-btn,.header-action,.wishlist-remove,.va-compare-add,.va-compare-card__remove,.va-compare-modal__close){
    min-width:var(--tap-target);
    min-height:var(--tap-target);
  }
}

/* Prevent iOS form zoom and clipping in checkout/account forms. */
@media(max-width:760px){
  :where(input,select,textarea){font-size:16px}
  :where(.modal,.drawer,.va-compare-modal__inner){overscroll-behavior:contain}
}

/* Stable account/wishlist geometry across long titles and small screens. */
.wishlist-card__body,.wishlist-card__actions{min-width:0}
.wishlist-card__actions>*{max-width:100%}
.wishlist-card h2,.wishlist-card p{word-break:normal;overflow-wrap:anywhere}
@media(max-width:520px){
  .wishlist-card__media img{width:100%;height:100%;object-fit:cover;object-position:center}
}

/* Comparison modal: no accidental page scroll and no clipped final card. */
.va-compare-modal[aria-hidden="false"],.va-compare-modal.is-open{overscroll-behavior:contain}
.va-compare-grid>*{min-width:0}
@media(max-width:900px){
  .va-compare-grid::after{content:"";flex:0 0 4px}
}

/* Better behaviour for users who request less motion. */
@media(prefers-reduced-motion:reduce){
  html:focus-within{scroll-behavior:auto!important}
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
  }
}

/* High-contrast fallback keeps controls understandable. */
@media(forced-colors:active){
  :where(button,.btn,input,select,textarea,.product-card,.wishlist-card){border:1px solid CanvasText}
}

/* ===== v12-1-site-audit.css ===== */
/* VA HOME v12.1 — final adaptive/site-wide polish
   Safe layout corrections only: no redesign, loaders, blur, skeletons or reveal logic. */

html, body { max-width: 100%; overflow-x: clip; }
img, picture, video, canvas, svg { max-width: 100%; }
/* Do not force global image height: hero media relies on height:100%. */

/* Prevent long labels, prices and controls from forcing horizontal overflow. */
button, input, select, textarea, a { min-width: 0; }
.product-card, .collection-card, .journal-card, .cart-item,
.checkout-fieldset, .cart-summary, .va-compare-card { min-width: 0; }
.product-card__name, .product-card__desc, .va-compare-card__name,
.va-compare-statement, .va-compare-value, .cart-item__title { overflow-wrap: anywhere; }

/* Cart: remove the oversized empty gap between breadcrumbs and the hero. */
.cart-hero { margin-top: 0 !important; }
.cart-hero + .checkout-progress { margin-top: clamp(18px, 2.2vw, 30px); }
body:has(.cart-hero) .section.section--tight { padding-top: clamp(22px, 2.8vw, 42px); }

/* Laptop viewport: keep first checkout screen composed and readable. */
@media (min-width: 901px) and (max-height: 900px) {
  body:has(.cart-hero) .section.section--tight { padding-top: 24px; }
  .cart-hero {
    min-height: clamp(220px, 25vw, 320px);
    margin-bottom: 22px;
  }
  .cart-hero > div:first-child { padding: clamp(30px, 4vw, 58px); }
  .cart-hero h1 { font-size: clamp(3.2rem, 5.2vw, 5.4rem); }
  .cart-hero__visual { min-height: 100%; }
  .checkout-progress { margin-bottom: 30px; }
}

/* Compact notebook widths without shrinking touch targets. */
@media (min-width: 901px) and (max-width: 1440px) {
  .container { width: min(100% - 48px, var(--container-max)); }
  .btn { min-height: 46px; }
  .product-card__actions .btn { padding-inline: 16px; }
}

/* Mobile: preserve breathing room and avoid edge collisions. */
@media (max-width: 760px) {
  html, body { overflow-x: hidden; }
  body:has(.cart-hero) .section.section--tight { padding-top: 14px; }
  .cart-hero { margin-bottom: 16px; }
  .checkout-progress { margin-top: 14px; }
  .btn, button, input, select, textarea { max-width: 100%; }
}

/* Very small screens: keep dense controls usable. */
@media (max-width: 380px) {
  .container { width: min(100% - 28px, var(--container-max)); }
  .product-card__actions { gap: 8px; }
  .product-card__actions .btn { padding-inline: 10px; }
}


/* ===== Catalog component source: merged from site-category.css ===== */
.category-page {
  background: #080807;
}

.category-hero {
  min-height: min(72vh, 700px);
  display: grid;
  align-items: end;
  position: relative;
  background-position: center;
  background-size: cover;
  isolation: isolate;
}

.category-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(7, 7, 6, .9) 0%, rgba(7, 7, 6, .66) 42%, rgba(7, 7, 6, .18) 78%),
    linear-gradient(0deg, rgba(7, 7, 6, .78), transparent 45%);
}

.category-hero__content {
  max-width: 760px;
  padding-block: clamp(7rem, 15vw, 12rem) clamp(4rem, 8vw, 7rem);
}

.category-hero h1 {
  max-width: 15ch;
  margin-block: .35em .3em;
  font-size: clamp(3.5rem, 6.8vw, 6.8rem);
  line-height: .94;
  text-wrap: balance;
}

.category-hero .lead {
  max-width: 660px;
  color: rgba(244, 238, 228, .84);
  font-size: clamp(1rem, 1.5vw, 1.25rem);
}

.category-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
  gap: clamp(2rem, 6vw, 7rem);
  align-items: start;
}

.category-intro__copy {
  max-width: 760px;
  font-family: var(--font-heading);
  font-size: clamp(1.9rem, 3.1vw, 3.25rem);
  line-height: 1.15;
  color: var(--text-primary);
}

.category-intro__aside {
  border-top: 1px solid var(--color-gold);
  padding-top: 1.25rem;
  color: var(--text-secondary);
}

.category-products__head {
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  align-items: end;
  margin-bottom: 2.5rem;
}

.category-products__head p {
  max-width: 520px;
  color: var(--text-secondary);
}

.category-products__head h2 {
  max-width: 17ch;
  text-wrap: balance;
}

.category-products .catalog-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.category-editorial {
  padding-block: clamp(4rem, 7vw, 7rem);
}

.category-editorial__grid {
  display: grid;
  grid-template-columns: minmax(320px, .92fr) minmax(0, 1.08fr);
  min-height: 520px;
  overflow: hidden;
  border: 1px solid var(--border-hairline);
  background: #0d0c0a;
}

.category-editorial__media {
  min-height: 520px;
  margin: 0;
}

.category-editorial__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.category-editorial__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(2.75rem, 5vw, 5.5rem);
}

.category-editorial__content h2 {
  max-width: 17ch;
  margin-block: .4em .45em;
  font-size: clamp(2.65rem, 4.4vw, 5.25rem);
  line-height: .98;
  text-wrap: balance;
}

.category-editorial__content > p:not(.eyebrow) {
  max-width: 46ch;
  margin: 0;
  color: var(--text-secondary);
  font-size: clamp(1rem, 1.25vw, 1.14rem);
  line-height: 1.75;
}

.category-editorial__link {
  width: min(100%, 430px);
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  margin-top: clamp(2rem, 4vw, 3.5rem);
  padding-block: 1rem;
  border-top: 1px solid var(--border-hairline);
  border-bottom: 1px solid var(--border-hairline);
  color: var(--text-primary);
  font-size: .88rem;
  letter-spacing: .11em;
  text-transform: uppercase;
  transition: color var(--duration-fast), border-color var(--duration-fast);
}

.category-editorial__link:hover,
.category-editorial__link:focus-visible {
  color: var(--color-gold);
  border-color: var(--color-gold);
}

.category-faq {
  max-width: 980px;
}

.category-faq details {
  border-top: 1px solid var(--border-hairline);
  padding-block: 1.25rem;
}

.category-faq details:last-child {
  border-bottom: 1px solid var(--border-hairline);
}

.category-faq summary {
  cursor: pointer;
  color: var(--text-primary);
  font-size: 1.05rem;
}

.category-faq details p {
  max-width: 760px;
  margin-top: 1rem;
  color: var(--text-secondary);
}

.catalog-category-links {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  border: 1px solid var(--border-hairline);
}

.catalog-category-links a {
  min-height: 126px;
  display: flex;
  align-items: end;
  padding: 1.25rem;
  border-right: 1px solid var(--border-hairline);
  font-family: var(--font-heading);
  font-size: 1.35rem;
  transition: background-color var(--duration-fast), color var(--duration-fast);
}

.catalog-category-links a:last-child {
  border-right: 0;
}

.catalog-category-links a:hover,
.catalog-category-links a:focus-visible {
  background: var(--surface-raised);
  color: var(--color-gold);
}

@media (max-width: 980px) {
  .category-products .catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .catalog-category-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .catalog-category-links a {
    border-bottom: 1px solid var(--border-hairline);
  }

  .category-editorial__grid {
    grid-template-columns: 1fr;
  }

  .category-editorial__media {
    min-height: auto;
    aspect-ratio: 16 / 10;
  }
}

@media (max-width: 680px) {
  .category-hero {
    min-height: 620px;
    background-position: 62% center;
  }

  .category-hero::before {
    background:
      linear-gradient(0deg, rgba(7, 7, 6, .94) 0%, rgba(7, 7, 6, .62) 54%, rgba(7, 7, 6, .24) 100%);
  }

  .category-hero h1 {
    max-width: 12ch;
    font-size: clamp(3.25rem, 15vw, 5.25rem);
  }

  .category-intro,
  .category-products__head {
    grid-template-columns: 1fr;
    display: grid;
  }

  .category-products .catalog-grid {
    grid-template-columns: 1fr;
  }

  .category-editorial {
    padding-block: 3.5rem;
  }

  .category-editorial__media {
    aspect-ratio: 4 / 3;
  }

  .category-editorial__content {
    padding: 2.25rem 1.35rem 2.5rem;
  }

  .category-editorial__content h2 {
    max-width: 14ch;
    font-size: clamp(2.5rem, 12vw, 3.8rem);
  }

  .catalog-category-links {
    grid-template-columns: 1fr;
  }

  .catalog-category-links a {
    min-height: 92px;
    border-right: 0;
  }
}


/* ===== Catalog responsive component — consolidated from legacy mobile layers ===== */
@media (max-width: 900px){
.catalog-grid{gap: var(--va-mobile-card-gap);}
.catalog-hero,
  .category-hero{padding-block: clamp(42px, 9vw, 72px);}
.catalog-toolbar,
  .catalog-filters{gap: 12px; margin-bottom: 28px;}
}
@media (max-width: 620px){
.catalog-grid{grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px;}
}
@media (max-width: 380px){
.catalog-grid{grid-template-columns: 1fr;}
}
@media (max-width:620px){
#catalogGrid.catalog-grid{display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;}
#catalogGrid .product-card__wishlist{width:38px;height:38px;}
#catalogGrid .product-card__body{padding:12px 10px 9px;gap:5px;}
#catalogGrid .product-card__collection{font-size:9px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;}
#catalogGrid .product-card__name{font-size:clamp(1.18rem,5.3vw,1.48rem);}
#catalogGrid .product-card__desc{font-size:12px;-webkit-line-clamp:2;}
#catalogGrid .product-card__meta{font-size:12px;padding-top:7px;}
#catalogGrid .product-card__price{font-size:13px;}
#catalogGrid .product-card .va-compare-add{margin-inline:10px!important;
    min-height:36px!important;
    font-size:9px!important;}
#catalogGrid .product-card__actions{padding:0 10px 10px;}
#catalogGrid .product-card__actions .product-card__cart-btn{min-height:44px;font-size:10px;}
}
@media (max-width:380px){
#catalogGrid.catalog-grid{grid-template-columns:1fr!important;gap:16px!important;}
#catalogGrid .product-card{display:grid!important;
    grid-template-columns:42% minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;}
#catalogGrid .product-card__media{grid-row:1/3;height:100%;min-height:250px;}
#catalogGrid .product-card__body{grid-column:2;padding:14px 12px 8px;}
#catalogGrid .product-card .va-compare-add{display:none!important;}
#catalogGrid .product-card__actions{grid-column:2;padding:0 12px 12px;}
}
@media (max-width:900px){
.catalog-hero,
  .category-hero{padding-block:var(--qa-section-tight);}
.category-layout,
  .catalog-layout{gap:clamp(24px,5vw,42px);}
}
@media (max-width:620px){
.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
}
@media (max-width:390px){
.catalog-grid{grid-template-columns:minmax(0,1fr)!important;gap:18px!important;}
.catalog-grid .product-card{max-width:100%!important;}
}
@media (min-width:391px) and (max-width:620px){
#catalogGrid.catalog-grid{align-items:stretch!important;}
#catalogGrid .product-card{height:100%!important;
    min-height:0!important;}
#catalogGrid .product-card__body{display:flex;
    flex:1 1 auto;
    flex-direction:column;
    min-height:252px;}
#catalogGrid .product-card__collection{display:flex;
    align-items:flex-start;
    min-height:27px;
    white-space:normal;
    overflow:hidden;
    text-overflow:clip;}
#catalogGrid .product-card__name{display:-webkit-box;
    min-height:50px;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;}
#catalogGrid .product-card__desc{min-height:35px;}
#catalogGrid .product-card__rating,
  #catalogGrid .product-card__rating[hidden]{display:block;
    min-height:22px;
    margin:0;}
#catalogGrid .product-card__rating[hidden]{visibility:hidden;}
#catalogGrid .product-card__meta{margin-top:auto;}
#catalogGrid .product-card .va-compare-add{flex:0 0 auto!important;}
#catalogGrid .product-card__actions{flex:0 0 auto;
    margin-top:0;}
}
@media (max-width:620px){
.catalog-page .section{padding-block:clamp(44px,11vw,62px)!important;}
.category-card{min-width:0!important;}
}


/* VA HOME v16.4.18 — honest empty-review state; preserves RC1.32 card geometry */
#catalogGrid .product-card__rating.is-empty{
  color:var(--color-text-muted,#8f877b);
  opacity:.78;
}

/* VA HOME v16.4.18 — concise reed facts in catalog cards */
#catalogGrid .product-card__reed-facts{display:flex;align-items:center;min-height:28px;margin-top:8px;padding:8px 0 0;border-top:1px solid rgba(184,145,86,.14);color:var(--text-muted,#9f968b);font-size:10px;line-height:1.4;letter-spacing:.025em}
#catalogGrid .product-card__reed-facts span{display:block;white-space:nowrap}
@media(max-width:620px){#catalogGrid .product-card__reed-facts{min-height:26px;margin-top:6px;padding-top:7px;font-size:9.5px;letter-spacing:0}#catalogGrid .product-card__reed-facts span{white-space:normal}}
