/* Home layouts: Editorial, Boutique, Catalog, Lookbook + shared sections */
.sable-card[hidden],.no-res[hidden]{display:none!important}
.btn.ghost{background:transparent;color:var(--fg);border:1px solid var(--line)}.btn.ghost:hover{border-color:var(--acc);color:var(--acc);box-shadow:none}
.a{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
body[class*="lay-"]:not(.lay-cinema) main{padding-top:76px}

/* shared: marquee, features, tiles, cta */
.mq{overflow:hidden;border-block:1px solid var(--line);padding:16px 0;background:var(--bg);position:relative;z-index:2}
.mq-track{display:flex;width:max-content;animation:mq 38s linear infinite}
.mq span{font:italic 500 clamp(17px,2vw,24px) var(--fd);white-space:nowrap;padding-right:48px}.mq span::after{content:"✦";color:var(--acc);margin-left:48px;font-style:normal;font-size:.7em}
.mq:hover .mq-track{animation-play-state:paused}@keyframes mq{to{transform:translateX(-25%)}}
.fts{position:relative;z-index:2;background:var(--bg);padding:clamp(50px,7vw,90px) clamp(18px,6vw,110px)}
.fts-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:clamp(20px,3vw,44px)}
.ft{border-top:1px solid var(--line);padding-top:20px}.ft .fn{color:var(--acc);font:italic 500 16px var(--fd)}.ft h3{font-size:26px;margin:8px 0}.ft p{margin:0;color:var(--mut);font-size:15px}
.tls{position:relative;z-index:2;background:var(--bg);padding:clamp(60px,8vw,110px) clamp(18px,6vw,110px);text-align:center}.tls h2{font-size:clamp(30px,4.2vw,58px);margin-bottom:clamp(26px,4vw,50px)}
.tl-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px}
.tile{position:relative;display:block;aspect-ratio:4/5;border-radius:26px;overflow:hidden;text-decoration:none;color:#fff;background:var(--s1)}
.tile img,.tile-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.tile:hover img,.tile:hover .tile-bg{transform:scale(1.06)}
.tile-bg.tb1{background:radial-gradient(circle at 30% 30%,#f6e3b0,#c9a86a 45%,#6b4f1f)}.tile-bg.tb2{background:radial-gradient(circle at 70% 30%,#f0b48a,#b4562a 50%,#4a1d0c)}.tile-bg.tb3{background:radial-gradient(circle at 40% 30%,#6a5a80,#2c2238 50%,#0e0a14)}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,#000a)}
.tile-t{position:absolute;left:22px;right:22px;bottom:20px;z-index:2;font:500 26px var(--fd);display:flex;justify-content:space-between;align-items:end;text-align:left}.tile-t i{color:var(--acc);font-style:normal;transition:transform .3s}.tile:hover .tile-t i{transform:translateX(6px)}
.cbs{position:relative;z-index:2;background:var(--bg);padding:clamp(40px,6vw,90px) clamp(18px,6vw,110px)}
.cb{max-width:1100px;margin:0 auto;text-align:center;border-radius:36px;padding:clamp(44px,7vw,96px) clamp(20px,5vw,70px);background:radial-gradient(90% 120% at 50% 0%,var(--s2),var(--s3));border:1px solid var(--line)}
.cb h2{font-size:clamp(30px,4.4vw,60px)}.cb p{color:var(--mut);max-width:46ch;margin:16px auto 28px}

/* shop variants */
.sh-rail{border-radius:0}
.sable-grid.rail{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:minmax(250px,calc((100% - 60px)/3.2));overflow-x:auto;scroll-snap-type:x mandatory;gap:20px;padding:6px 4px 22px;scrollbar-width:thin;scrollbar-color:var(--acc) transparent}
.sable-grid.rail>*{scroll-snap-align:start}
.tb{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0 0 28px;text-align:left}
.tb input,.tb select{font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--line);border-radius:999px;padding:11px 18px}
.tb-q{flex:1 1 240px;min-width:0}.tb-n{margin-left:auto;color:var(--mut);font-size:14px}
.no-res{color:var(--mut);padding:30px 0}

/* EDITORIAL: split hero */
.hs{position:relative;z-index:2;min-height:calc(100svh - 76px);display:grid;align-items:center;padding:40px clamp(18px,6vw,110px) 70px;background:radial-gradient(70% 90% at 78% 40%,var(--s2),var(--bg) 70%)}
.hs-in{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,5vw,90px);align-items:center;max-width:1300px;margin:0 auto;width:100%}
.hs h1{font-size:clamp(40px,6vw,92px)}.hs-tx p{color:var(--mut);max-width:42ch;margin:20px 0 0;font-size:1.08em}
.hs-trust{list-style:none;margin:34px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 24px;color:var(--mut);font-size:13px}.hs-trust li::before{content:"✓";color:var(--acc);margin-right:8px}
.hs-card{justify-self:center;width:100%;max-width:440px}
.hs .sable-card.pc{background:color-mix(in srgb,var(--card) 80%,transparent);backdrop-filter:blur(8px);box-shadow:0 40px 80px #0005}
.hs .sable-card .tx{min-height:0}

/* BOUTIQUE: centred hero */
.hc{position:relative;z-index:2;text-align:center;padding:clamp(40px,6vw,80px) clamp(18px,6vw,110px) 0;overflow:hidden;background:radial-gradient(60% 50% at 50% 70%,color-mix(in srgb,var(--acc) 16%,var(--bg)),var(--bg) 72%)}
.hc h1{font-size:clamp(42px,7.4vw,120px);max-width:14ch;margin:0 auto}.hc-p{color:var(--mut);max-width:48ch;margin:20px auto 0;font-size:1.1em}.hc .a{justify-content:center}
.hc-vis{position:relative;height:clamp(300px,52svh,560px);margin-top:clamp(20px,4vw,50px);display:grid;place-items:end center}
.hc-ring{position:absolute;bottom:-38%;left:50%;translate:-50% 0;width:min(110vw,980px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--acc) 30%,transparent),transparent 62%);filter:blur(10px)}
.hc-bt{position:relative;height:100%;width:auto;aspect-ratio:var(--ar,2/5);object-fit:contain;filter:drop-shadow(0 30px 40px #0007);animation:flt 7s ease-in-out infinite}
@keyframes flt{50%{transform:translateY(-10px)}}
.hc-n{position:absolute;font:500 12px var(--fb);letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 80%,transparent);backdrop-filter:blur(6px);padding:8px 14px;border-radius:999px}
.hc-n.n1{left:12%;top:22%}.hc-n.n2{right:12%;top:34%}.hc-n.n3{left:18%;top:62%}.hc-n.n4{right:16%;top:68%}

/* CATALOG: compact hero */
.hk{position:relative;z-index:2;padding:clamp(34px,5vw,70px) clamp(18px,6vw,110px);background:linear-gradient(120deg,var(--s2),var(--bg) 70%);border-bottom:1px solid var(--line)}
.hk-in{display:grid;grid-template-columns:1fr auto;gap:clamp(20px,4vw,60px);align-items:center}
.hk h1{font-size:clamp(34px,4.8vw,70px)}.hk-tx p{color:var(--mut);max-width:50ch;margin:14px 0 0}
.hk-vis img{display:block;height:clamp(180px,26vw,320px);width:auto;aspect-ratio:var(--ar,2/5);object-fit:contain;filter:drop-shadow(0 22px 30px #0007)}
.sh-catalog{border-radius:0;padding-top:clamp(40px,5vw,70px)}.sh-catalog h2,.sh-catalog .eb,.sh-catalog .sub{text-align:left}.sh-catalog .sub{margin-left:0}

/* LOOKBOOK: full-bleed hero */
.hl{position:relative;z-index:2;min-height:calc(100svh - 76px);display:flex;align-items:flex-end;overflow:hidden;background:radial-gradient(70% 80% at 70% 40%,var(--s2),var(--s3))}
.hl-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hl::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#000d 0,#0004 45%,transparent 75%)}
.hl:not(.has-img)::after{background:linear-gradient(to top,#0008,transparent 60%)}
.hl-bt{position:absolute;right:clamp(20px,10vw,200px);bottom:0;height:min(84%,760px);width:auto;aspect-ratio:var(--ar,2/5);object-fit:contain;filter:drop-shadow(0 30px 50px #000a)}
.hl-in{position:relative;z-index:3;padding:clamp(30px,6vw,90px) clamp(18px,6vw,110px);max-width:900px;color:#fff}
.hl h1{font-size:clamp(44px,7.4vw,116px)}.hl p{max-width:44ch;margin:18px 0 0;color:#ffffffc8}.hl .eb{color:#ffffffb8}.hl .btn.ghost{color:#fff;border-color:#ffffff66}
.lay-lookbook .story{padding-top:clamp(60px,8vw,120px)}
.lay-lookbook .bim{aspect-ratio:4/5}

@media (max-width:900px){
 .hs-in,.hk-in{grid-template-columns:1fr}.hs{padding-top:20px}.hk-vis{display:none}
 .hs-card{max-width:380px}
 .sable-grid.rail{grid-auto-columns:78%}
 .hc-n{font-size:10px;padding:6px 10px}.hc-n.n1{left:2%}.hc-n.n2{right:2%}.hc-n.n3{left:4%}.hc-n.n4{right:4%}
 .hl-bt{right:50%;translate:50% 0;height:62%;opacity:.9}.hl-in{padding-bottom:50px}
}
@media (prefers-reduced-motion:reduce){.mq-track,.hc-bt{animation:none}}

/* scent finder section + wide quiz page */
.qzs{position:relative;z-index:2;background:var(--bg);padding:clamp(60px,8vw,120px) clamp(18px,6vw,110px);text-align:center}.qzs h2{font-size:clamp(30px,4.4vw,62px)}
.wide-page .page-wrap{max-width:1200px;text-align:center}.wide-page .page-title{text-align:center}

/* product page: sticky buy bar (phones and tablets) */
.sticky-buy{position:fixed;left:0;right:0;bottom:0;z-index:70;transform:translateY(110%);transition:transform .35s;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:10px clamp(14px,4vw,40px) calc(10px + env(safe-area-inset-bottom))}
.sticky-buy.on{transform:none}.sticky-in{display:flex;gap:14px;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}
.sticky-n{display:grid;line-height:1.2;min-width:0}.sticky-n b{font:500 18px var(--fd);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sticky-n small{color:var(--mut);font-size:14px}
.sticky-in .btn{padding:12px 26px;font-size:14px}
@media (min-width:1025px){.sticky-buy{display:none}}
