:root{--bone:#f4efe8;--stone:#e7dfd3;--sand:#d8ccb9;--esp:#241c17;--esp2:#3a2e26;--wine:#7a1f2b;--mut:#8a7f73;--line:#d9d0c3;
--serif:"Instrument Serif",Georgia,serif;--sans:Manrope,system-ui,sans-serif;--e:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--bone)}
body{background:var(--bone);color:var(--esp);font:400 15px/1.6 var(--sans);overflow-x:clip;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit;background:none;border:0}button{cursor:pointer}
img{display:block;max-width:100%}
.w{width:min(1400px,100% - 40px);margin-inline:auto}
.k{font:600 10.5px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:.95;letter-spacing:-.02em}
h2{font-size:clamp(44px,6.2vw,96px)}
em{font-style:italic}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 30px;border-radius:100px;font:600 11.5px var(--sans);letter-spacing:.16em;text-transform:uppercase;transition:.5s var(--e);white-space:nowrap}
.btn-d{background:var(--esp);color:var(--bone)}.btn-d:hover{background:var(--wine)}
.btn-o{border:1px solid var(--esp)}.btn-o:hover{background:var(--esp);color:var(--bone)}
.btn-l{background:var(--bone);color:var(--esp)}.btn-l:hover{background:#fff}
.ul{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .5s var(--e)}.ul:hover{background-size:100% 1px}
.ann{background:var(--esp);color:var(--bone);height:36px;overflow:hidden;font-size:11.5px;letter-spacing:.12em}
.ann .t{display:flex;flex-direction:column;align-items:center;animation:ann 12s infinite var(--e)}
.ann .t span{height:36px;display:grid;place-items:center}
@keyframes ann{0%,28%{transform:translateY(0)}33%,61%{transform:translateY(-36px)}66%,95%{transform:translateY(-72px)}100%{transform:translateY(0)}}
header{position:sticky;top:0;z-index:50;background:rgba(244,239,232,.86);backdrop-filter:blur(14px) saturate(1.2);border-bottom:1px solid transparent;transition:border-color .4s}
header.sc{border-color:var(--line)}
.hd{height:74px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.hd nav{display:flex;gap:30px;font-size:12.5px;font-weight:500}
.logo{display:flex;flex-direction:column;align-items:center;line-height:.8}
.logo i{font:italic 22px var(--serif)}
.logo b{font:400 34px var(--serif);letter-spacing:.18em;margin-right:-.18em}
.logo u{display:block;width:34px;height:1px;background:var(--wine);margin-top:5px}
.icons{display:flex;justify-content:flex-end;gap:6px}
.ib{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;position:relative;transition:.3s}.ib:hover{background:var(--stone)}
.ib svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.5}
.ib .n{position:absolute;top:4px;right:3px;min-width:17px;height:17px;border-radius:9px;background:var(--wine);color:#fff;font-size:10px;font-weight:600;display:grid;place-items:center;transform:scale(0);transition:.4s var(--e)}
.ib .n.on{transform:scale(1)}
.burger{display:none}
.mega{position:absolute;left:0;right:0;top:74px;background:var(--bone);border-bottom:1px solid var(--line);clip-path:inset(0 0 100% 0);transition:clip-path .6s var(--e);pointer-events:none}
header:has(.shopnav:hover) .mega,.mega:hover{clip-path:inset(0 0 0 0);pointer-events:auto}
.mega .w{display:grid;grid-template-columns:repeat(3,1fr) 1.3fr 1.3fr;gap:30px;padding:40px 0 46px}
.mega h5{font:600 10.5px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-bottom:16px}
.mega a{display:block;font:400 26px/1.35 var(--serif)}.mega a:hover{font-style:italic;color:var(--wine)}
.mega .card{border-radius:14px;overflow:hidden;position:relative;aspect-ratio:4/3.4}
.mega .card img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--e)}.mega .card:hover img{transform:scale(1.05)}
.mega .card span{position:absolute;left:14px;bottom:12px;background:var(--bone);border-radius:100px;padding:7px 14px;font:600 11px var(--sans);letter-spacing:.12em;text-transform:uppercase}
@media(max-width:960px){.hd nav{display:none}.burger{display:grid}.hd{grid-template-columns:auto 1fr auto}.logo{align-items:flex-start;margin-left:8px}.mega{display:none}}
.hero{position:relative;height:calc(100svh - 110px);min-height:620px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-bottom:1px solid var(--line)}
.hero .l{padding:clamp(30px,5vw,80px) 40px clamp(30px,4vw,60px) max(20px,calc((100vw - 1400px)/2));display:flex;flex-direction:column;justify-content:space-between;position:relative;z-index:2}
.hero h1{font-size:clamp(64px,8.2vw,146px);margin-top:26px}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.06em}
.hero h1 .ln>span{display:inline-block}
.rot{display:inline-grid;vertical-align:top;color:var(--wine)}
.rot span{grid-area:1/1;font-style:italic;opacity:0}
.hero p{max-width:400px;color:#5b5047;font-size:16px;margin:26px 0 34px}
.hero .ctas{display:flex;gap:10px;flex-wrap:wrap}
.hero .proof{display:flex;gap:34px;margin-top:40px;font-size:12px;color:var(--mut)}
.hero .proof b{display:block;font:400 34px/1 var(--serif);color:var(--esp);margin-bottom:4px}
.hero .r{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;padding:0 12px;background:var(--stone)}
.col{display:flex;flex-direction:column;gap:12px;will-change:transform}
.col figure{border-radius:14px;overflow:hidden;aspect-ratio:4/5;flex:none;background:var(--sand)}
.col img{width:100%;height:100%;object-fit:cover}
.hero .r::before,.hero .r::after{content:"";position:absolute;left:0;right:0;height:120px;z-index:2;pointer-events:none}
.hero .r::before{top:0;background:linear-gradient(var(--stone),transparent)}.hero .r::after{bottom:0;background:linear-gradient(transparent,var(--stone))}
.hero .seal{position:absolute;left:-62px;bottom:70px;z-index:3;width:124px;height:124px;border-radius:50%;background:var(--wine);color:var(--bone);display:grid;place-items:center}
.hero .seal svg{position:absolute;inset:8px;animation:sp 16s linear infinite}
.hero .seal b{font:italic 40px var(--serif)}
@keyframes sp{to{transform:rotate(360deg)}}
@media(max-width:900px){.hero{grid-template-columns:1fr;height:auto}.hero .l{padding:40px 20px}.hero .r{height:62vh}.hero .seal{left:auto;right:20px;top:-62px;bottom:auto}}
.mq{border-bottom:1px solid var(--line);overflow:hidden;white-space:nowrap;padding:22px 0}
.mq .t{display:inline-flex;font:italic 400 30px var(--serif);animation:mq 40s linear infinite}
.mq span{padding:0 34px;display:inline-flex;align-items:center;gap:68px}.mq span::after{content:"";width:7px;height:7px;border-radius:50%;background:var(--wine)}
@keyframes mq{to{transform:translateX(-50%)}}
.cats{padding:110px 0 40px}
.sh{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:46px}
.sh p{max-width:360px;color:#6a5f55}
.ct{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ct a{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:3/4}
.ct img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--e)}
.ct a:hover img{transform:scale(1.07)}
.ct a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(36,28,23,.75))}
.ct .lb{position:absolute;left:22px;right:22px;bottom:20px;z-index:2;color:var(--bone);display:flex;justify-content:space-between;align-items:end}
.ct .lb h3{font-size:36px}.ct .lb small{font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.8}
.ct .ar{width:42px;height:42px;border-radius:50%;background:var(--bone);color:var(--esp);display:grid;place-items:center;transform:rotate(-45deg);transition:.5s var(--e)}
.ct a:hover .ar{transform:none;background:var(--wine);color:var(--bone)}
@media(max-width:900px){.ct{grid-template-columns:1fr 1fr}}
.bs{padding:80px 0 110px}
.rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px;scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
.rail .pc{flex:0 0 clamp(250px,22vw,320px);scroll-snap-align:start}
.navb{display:flex;gap:8px}.navb button{width:50px;height:50px;border-radius:50%;border:1px solid var(--esp);transition:.3s}.navb button:hover{background:var(--esp);color:var(--bone)}
.pc{position:relative}
.pc .im{position:relative;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background:var(--stone);cursor:pointer}
.pc .im img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--e),opacity .6s}
.pc .im img.b{position:absolute;inset:0;opacity:0}
.pc:hover .im img.b{opacity:1}.pc:hover .im img{transform:scale(1.05)}
.pc .tg{position:absolute;top:12px;left:12px;background:var(--bone);border-radius:100px;padding:5px 11px;font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;z-index:2}
.pc .hrt{position:absolute;top:10px;right:10px;width:38px;height:38px;border-radius:50%;background:rgba(244,239,232,.9);display:grid;place-items:center;z-index:2}
.pc .hrt svg{width:17px;height:17px;stroke:var(--esp);fill:none;stroke-width:1.6;transition:.3s}
.pc .hrt.on svg{fill:var(--wine);stroke:var(--wine);animation:pop .45s var(--e)}
@keyframes pop{50%{transform:scale(1.35)}}
.pc .add{position:absolute;left:10px;right:10px;bottom:10px;height:46px;border-radius:100px;background:var(--esp);color:var(--bone);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;transform:translateY(130%);transition:.55s var(--e);z-index:2}
.pc:hover .add{transform:none}.pc .add:hover{background:var(--wine)}
@media(hover:none){.pc .add{transform:none;height:40px}}
.pc .meta{display:flex;justify-content:space-between;gap:10px;margin-top:14px}
.pc h4{font:400 23px/1.1 var(--serif)}
.pc small{display:block;color:var(--mut);font-size:12px;margin-top:5px}
.pc .sz{font-size:11px;color:var(--mut);white-space:nowrap;margin-top:4px}
.story{background:var(--esp);color:var(--bone);padding:clamp(110px,14vw,190px) 0;overflow:hidden}
.story .g{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.story .ph{position:relative;aspect-ratio:4/5;border-radius:22px}
.story .ph>img{width:100%;height:100%;object-fit:cover;border-radius:22px}
.story .ph2{position:absolute;width:44%;aspect-ratio:4/5;border-radius:16px;overflow:hidden;right:-14%;bottom:-8%;border:8px solid var(--esp)}
.story .ph2 img{width:100%;height:100%;object-fit:cover}
.story p.big{font:400 clamp(30px,3.4vw,52px)/1.12 var(--serif);margin:24px 0 30px}
.story p.big .wd{opacity:.18}
.story .pts{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:40px 0}
.story .pts div{border-top:1px solid rgba(244,239,232,.2);padding-top:16px;font-size:14px;color:#c9bfb2}
.story .pts b{display:block;font:italic 400 28px var(--serif);color:var(--bone);margin-bottom:6px}
@media(max-width:900px){.story .g{grid-template-columns:1fr;gap:60px}.story .ph2{right:-4%}}
.quiz{padding:clamp(100px,12vw,160px) 0}
.qz{display:grid;grid-template-columns:1fr 1.1fr;border-radius:28px;overflow:hidden;background:var(--stone);min-height:560px}
.qz .ph{position:relative}.qz .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.qz .bd{padding:clamp(30px,5vw,70px);display:flex;flex-direction:column}
.qz .bar{height:2px;background:var(--sand);margin:22px 0 36px}.qz .bar i{display:block;height:100%;background:var(--wine);transition:width .6s var(--e)}
.qz h3{font-size:clamp(36px,3.6vw,56px);margin-bottom:28px}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.opts button{border:1px solid var(--sand);border-radius:14px;padding:20px;text-align:left;font-size:15px;transition:.35s var(--e);background:var(--bone)}
.opts button:hover{border-color:var(--esp);transform:translateY(-2px)}
.res{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:900px){.qz{grid-template-columns:1fr}.qz .ph{height:300px}.opts{grid-template-columns:1fr}}
.shop{padding:110px 0 120px;border-top:1px solid var(--line)}
.tools{position:sticky;top:74px;z-index:20;background:var(--bone);display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:16px 0;border-bottom:1px solid var(--line);margin-bottom:30px}
.chips{display:flex;gap:6px;flex-wrap:wrap;flex:1}
.chip{height:40px;padding:0 18px;border-radius:100px;border:1px solid var(--line);font-size:12.5px;font-weight:500;transition:.3s}
.chip:hover{border-color:var(--esp)}.chip.on{background:var(--esp);color:var(--bone);border-color:var(--esp)}
.chip sup{font-size:9px;margin-left:3px;opacity:.6}
.fs{display:flex;align-items:center;gap:8px;height:40px;border:1px solid var(--line);border-radius:100px;padding:0 16px;min-width:230px}
.fs svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6;flex:none}
.fs input{outline:0;width:100%;font-size:13px}
select{height:40px;border:1px solid var(--line);border-radius:100px;padding:0 16px;font-size:12.5px;outline:0;cursor:pointer}
.cnt{font-size:12px;color:var(--mut);margin-bottom:22px}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px 16px}
@media(max-width:1100px){.grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.grid{grid-template-columns:1fr 1fr;gap:28px 10px}.pc h4{font-size:19px}.fs{min-width:0;flex:1}.tools{top:74px}}
.empty{grid-column:1/-1;text-align:center;padding:60px 0;font:italic 30px var(--serif);color:var(--mut)}
.faces{padding:0 0 120px;overflow:hidden}
.lane{display:flex;gap:14px;width:max-content;animation:mq 70s linear infinite}
.lane:hover{animation-play-state:paused}
.lane figure{width:clamp(220px,20vw,300px);aspect-ratio:4/5;border-radius:16px;overflow:hidden;flex:none}
.lane img{width:100%;height:100%;object-fit:cover}
.salon{background:var(--wine);color:var(--bone);padding:clamp(90px,11vw,150px) 0;position:relative;overflow:hidden}
.salon .g{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:end;position:relative}
.salon ol{list-style:none;counter-reset:s}
.salon li{counter-increment:s;padding:18px 0;border-top:1px solid rgba(244,239,232,.25);display:flex;gap:18px}
.salon li::before{content:"0" counter(s);font:italic 22px var(--serif);opacity:.7}
.salon .bgw{position:absolute;right:-2vw;bottom:-6vw;font:400 30vw/.8 var(--serif);color:rgba(244,239,232,.06);pointer-events:none}
@media(max-width:900px){.salon .g{grid-template-columns:1fr}}
.faq{padding:clamp(100px,12vw,160px) 0}
.faq .g{display:grid;grid-template-columns:1fr 1.4fr;gap:60px}
details{border-top:1px solid var(--line);padding:24px 0}
details:last-child{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;font:400 26px/1.2 var(--serif)}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font:300 26px var(--sans);transition:.4s var(--e)}
details[open] summary::after{transform:rotate(45deg)}
details p{color:#5b5047;margin-top:14px;max-width:560px}
@media(max-width:900px){.faq .g{grid-template-columns:1fr}}
footer{background:var(--esp);color:#bdb2a5;padding:100px 0 30px;overflow:hidden}
.fg{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}
.fg h5{color:var(--bone);font:600 10.5px var(--sans);letter-spacing:.2em;text-transform:uppercase;margin-bottom:18px}
.fg a{display:block;margin-bottom:9px;font-size:14px}.fg a:hover{color:var(--bone)}
.fg .nl{display:flex;border-bottom:1px solid #6b5e53;margin-top:22px}.fg .nl input{flex:1;height:48px;outline:0;color:var(--bone)}
.fbig{font:400 clamp(100px,25vw,420px)/.75 var(--serif);color:var(--esp2);text-align:center;letter-spacing:.12em;margin:80px 0 30px;user-select:none}
.fb{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12px}
@media(max-width:900px){.fg{grid-template-columns:1fr 1fr}}
.scrim{position:fixed;inset:0;background:rgba(36,28,23,.45);backdrop-filter:blur(3px);z-index:70;opacity:0;pointer-events:none;transition:.5s}
.scrim.on{opacity:1;pointer-events:auto}
.srch{position:fixed;inset:0 0 auto;z-index:80;background:var(--bone);transform:translateY(-102%);transition:transform .7s var(--e);max-height:88vh;overflow:auto}
.srch.on{transform:none}
.srch .top{display:flex;align-items:center;gap:16px;height:110px;border-bottom:1px solid var(--line)}
.srch input{flex:1;font:400 clamp(28px,4vw,56px) var(--serif);outline:0;min-width:0}
.srch input::placeholder{color:#b3a899}
.srch .bd{padding:30px 0 50px;display:grid;grid-template-columns:240px 1fr;gap:40px}
.srch .pop a{display:block;font:400 22px/1.6 var(--serif)}.srch .pop a:hover{color:var(--wine);font-style:italic}
.sres{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.sres .pc h4{font-size:19px}
@media(max-width:800px){.srch .bd{grid-template-columns:1fr}.sres{grid-template-columns:1fr 1fr}}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100%);z-index:80;background:var(--bone);transform:translateX(102%);transition:transform .7s var(--e);display:flex;flex-direction:column}
.drawer.on{transform:none}
.drawer .dh{display:flex;justify-content:space-between;align-items:center;padding:26px;border-bottom:1px solid var(--line)}
.drawer .dh h3{font-size:34px}
.drawer .items{flex:1;overflow:auto;padding:10px 26px}
.li{display:grid;grid-template-columns:76px 1fr auto;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);align-items:center}
.li img{width:76px;aspect-ratio:4/5;object-fit:cover;border-radius:10px}
.li h4{font:400 20px/1.1 var(--serif)}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:100px;margin-top:8px}.qty button{width:30px;height:30px}.qty span{min-width:22px;text-align:center;font-size:13px}
.li .rm{font-size:11px;color:var(--mut);text-decoration:underline}
.drawer .df{padding:22px 26px;border-top:1px solid var(--line)}
.drawer .df p{font-size:12.5px;color:var(--mut);margin-bottom:14px}
.drawer .df .btn{width:100%}
.drawer .em{text-align:center;padding:60px 0;font:italic 26px var(--serif);color:var(--mut)}
dialog{border:0;padding:0;border-radius:24px;width:min(1040px,94vw);max-height:92vh;background:var(--bone);color:var(--esp);overflow:auto;margin:auto}
dialog::backdrop{background:rgba(36,28,23,.5);backdrop-filter:blur(4px)}
dialog[open]{animation:up .6s var(--e)}
@keyframes up{from{opacity:0;transform:translateY(40px)}}
.pd{display:grid;grid-template-columns:1.05fr 1fr}
.pd .gal{background:var(--stone)}.pd .gal img{width:100%;height:100%;object-fit:cover;min-height:420px}
.pd .tx{padding:44px;display:flex;flex-direction:column;gap:16px}
.pd h3{font-size:clamp(40px,4vw,58px)}
.pd .bul{list-style:none;display:grid;gap:8px;font-size:14px}.pd .bul li::before{content:"— ";color:var(--wine)}
.pd .sizes{display:flex;gap:8px}.pd .sizes button{height:40px;padding:0 16px;border:1px solid var(--line);border-radius:100px;font-size:12.5px}.pd .sizes button.on{border-color:var(--esp);background:var(--esp);color:var(--bone)}
.pd .row{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}
.xb{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;background:var(--bone);z-index:3;font-size:18px}
@media(max-width:800px){.pd{grid-template-columns:1fr}.pd .gal img{min-height:0;max-height:48vh}.pd .tx{padding:26px}}
.toast{position:fixed;left:50%;bottom:26px;z-index:90;transform:translate(-50%,160%);background:var(--esp);color:var(--bone);border-radius:100px;padding:12px 22px 12px 12px;font-size:13px;display:flex;gap:12px;align-items:center;transition:.6s var(--e);white-space:nowrap}
.toast.on{transform:translate(-50%,0)}
.toast img{width:30px;height:30px;border-radius:50%;object-fit:cover}
.mnav{position:fixed;inset:0;z-index:85;background:var(--bone);padding:24px;transform:translateX(-102%);transition:transform .7s var(--e);display:flex;flex-direction:column;gap:6px}
.mnav.on{transform:none}.mnav a{font:400 46px/1.2 var(--serif)}
.wa{position:fixed;right:20px;bottom:20px;z-index:60;width:56px;height:56px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 10px 26px -8px rgba(37,211,102,.6);transition:.3s}
.wa:hover{transform:scale(1.08)}
.js .rv{opacity:0;transform:translateY(40px)}
.prog{position:fixed;top:0;left:0;height:2px;width:100%;background:var(--wine);transform-origin:0 50%;transform:scaleX(0);z-index:99}
.js .ct a,.js .story .ph{clip-path:inset(100% 0 0 0)}
.btn{will-change:transform}
#ld{position:fixed;inset:0;z-index:100;background:var(--esp);display:grid;place-items:center;color:var(--bone)}
#ld .logo b{font-size:clamp(70px,12vw,150px)}#ld .logo i{font-size:clamp(34px,5vw,60px)}
#ld .logo u{width:0;transition:width 1s var(--e)}

/* ===== mobile pass ===== */
.hero .r{overflow:hidden}
.ann .t span{white-space:nowrap;overflow:hidden;padding:0 12px}
@media(max-width:900px){
 .ann{font-size:10.5px;letter-spacing:.06em}
 .hd{height:64px}
 .logo i{font-size:17px}.logo b{font-size:26px}.logo u{width:26px;margin-top:3px}
 .hd>.logo{justify-self:center;align-items:center;margin:0}
 .icons{gap:0}.ib{width:38px;height:38px}
 .mega{top:64px}
 .hero{min-height:0}
 .hero .l{padding:34px 20px 30px}
 .hero h1{font-size:clamp(54px,15vw,84px);margin-top:16px}
 .hero p{font-size:15px;margin:18px 0 24px}
 .hero .ctas .btn{flex:1;padding:0 18px}
 .hero .proof{gap:22px;margin-top:28px}.hero .proof b{font-size:28px}
 .hero .r{height:68vh;grid-template-columns:1fr 1fr;margin:0 12px 12px;border-radius:22px;padding:0 8px;gap:8px}
 .hero .r .col:nth-child(4){display:none}
 .hero .seal{width:92px;height:92px;right:24px;top:-46px;left:auto;bottom:auto}.hero .seal b{font-size:30px}
 .mq .t{font-size:24px}
 .cats{padding:80px 0 20px}.bs{padding:60px 0 80px}
 .ct{gap:10px}.ct .lb{left:14px;right:14px;bottom:14px}.ct .lb h3{font-size:26px}.ct .ar{width:34px;height:34px}
 .sh{margin-bottom:30px}
 .rail .pc{flex-basis:68vw}
 .tools{top:64px;flex-wrap:wrap;gap:8px;padding:12px 0;margin-inline:-20px;padding-inline:20px}
 .chips{flex:0 0 100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-20px;padding-inline:20px}
 .chips::-webkit-scrollbar{display:none}
 .chip{flex:none;height:38px;padding:0 15px;white-space:nowrap}
 .fs{flex:1;min-width:0;height:42px}select{height:42px}
 .pc .add{left:auto;right:8px;bottom:8px;width:42px;height:42px;padding:0;font-size:0;transform:none;border-radius:50%}
 .pc .add::before{content:"+";font:300 24px/1 var(--sans)}
 .pc .hrt{width:34px;height:34px;top:8px;right:8px}
 .pc .tg{top:8px;left:8px;font-size:9px;padding:4px 9px}
 .pc .sz{display:none}
 .pc h4{font-size:19px}.pc small{font-size:11px}
 .story{padding:90px 0}.story .ph2{width:40%;right:4%;bottom:-6%}
 .story .pts{grid-template-columns:1fr 1fr;gap:18px}.story .pts b{font-size:22px}
 .quiz{padding:80px 0}.qz{min-height:0;border-radius:22px}.qz .ph{height:240px}
 .opts button{padding:16px}
 .shop{padding:80px 0}
 .faces{padding-bottom:80px}.lane figure{width:56vw}
 .salon .bgw{font-size:52vw}
 .faq summary{font-size:22px}
 footer{padding-top:70px}.fg{grid-template-columns:1fr 1fr;gap:30px}.fg>div:first-child{grid-column:1/-1}
 .wa{width:52px;height:52px;right:14px;bottom:14px}
 .toast{bottom:80px;max-width:calc(100% - 32px);white-space:normal}
 .drawer .dh,.drawer .df{padding:20px}.drawer .items{padding:6px 20px}
 .srch .top{height:84px}
}
@media(hover:none){.pc:hover .im img{transform:none}.pc:hover .im img.b{opacity:0}}

/* ===== stories ===== */
.stories{display:flex;gap:18px;overflow-x:auto;scrollbar-width:none;padding:26px 20px 6px;justify-content:center}
.stories::-webkit-scrollbar{display:none}
.sto{flex:none;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11.5px;font-weight:500}
.sto i{width:74px;height:74px;border-radius:50%;padding:3px;background:conic-gradient(from 200deg,var(--wine),#c9a24a,var(--wine));display:block;transition:transform .4s var(--e)}
.sto i img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid var(--bone)}
.sto:hover i{transform:scale(1.07) rotate(-4deg)}
@media(max-width:900px){.stories{justify-content:flex-start}.sto i{width:66px;height:66px}}
.sv{position:fixed;inset:0;z-index:95;background:#000;display:none;align-items:center;justify-content:center}
.sv.on{display:flex}
.sv .box{position:relative;height:100%;max-height:100svh;aspect-ratio:9/16;max-width:100%;background:#111;overflow:hidden}
.sv .box img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sv .bars{position:absolute;top:12px;left:12px;right:12px;display:flex;gap:4px;z-index:3}
.sv .bars span{flex:1;height:2.5px;background:rgba(255,255,255,.35);border-radius:2px;overflow:hidden}
.sv .bars b{display:block;height:100%;width:0;background:#fff}
.sv .hd2{position:absolute;top:26px;left:14px;right:14px;z-index:3;display:flex;align-items:center;gap:10px;color:#fff;font-size:13px;font-weight:600}
.sv .hd2 img{position:static;width:34px;height:34px;border-radius:50%}
.sv .hd2 button{margin-left:auto;color:#fff;font-size:22px;width:40px;height:40px}
.sv .tap{position:absolute;top:0;bottom:0;width:40%;z-index:2}.sv .tap.l{left:0}.sv .tap.r{right:0}
.sv .cta{position:absolute;left:16px;right:16px;bottom:22px;z-index:3;text-align:center}
.sv .cta h3{color:#fff;font-size:34px;margin-bottom:14px;text-shadow:0 2px 20px rgba(0,0,0,.6)}
.sv::after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(transparent,rgba(0,0,0,.7));pointer-events:none;z-index:1}

/* ===== pinned signature showcase ===== */
.sig{background:var(--esp);color:var(--bone);overflow:hidden}
.sig .pin{height:100svh;display:flex;flex-direction:column;justify-content:center;gap:34px}
.sig .top{display:flex;justify-content:space-between;align-items:end;gap:20px}
.sig .cnt2{font:italic 400 34px var(--serif);color:#c9a98a;white-space:nowrap}
.sig .trk{display:flex;gap:18px;padding-left:max(20px,calc((100vw - 1400px)/2));will-change:transform}
.sig .it{flex:none;width:clamp(260px,30vw,440px);position:relative}
.sig .it .ph{aspect-ratio:4/5;border-radius:22px;overflow:hidden}
.sig .it img{width:100%;height:100%;object-fit:cover;transform:scale(1.15)}
.sig .it .n{position:absolute;top:-14px;left:14px;font:italic 400 64px/1 var(--serif);color:var(--bone);z-index:2;text-shadow:0 4px 20px rgba(0,0,0,.4)}
.sig .it h3{font-size:30px;margin-top:16px}.sig .it a{font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.7}
.sig .it.end{display:grid;place-items:center;text-align:center;border:1px solid rgba(244,239,232,.25);border-radius:22px;aspect-ratio:4/5;align-self:start}
@media(max-width:900px){.sig .it{width:72vw}.sig .pin{gap:24px}.sig .it .n{font-size:48px}}
.wl{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em}.wl>span{display:inline-block}
@media(max-width:900px){
 .toast{top:74px;bottom:auto;transform:translate(-50%,-220%);width:max-content;max-width:calc(100% - 32px);white-space:nowrap;padding:8px 18px 8px 8px;font-size:12.5px;box-shadow:0 14px 30px -12px rgba(0,0,0,.5)}
 .toast.on{transform:translate(-50%,0)}
 .toast span{overflow:hidden;text-overflow:ellipsis;min-width:0}
}

/* ===== v6: transitions, bottom nav, cursor, ingredients ===== */
.curtain{position:fixed;inset:0;z-index:120;background:var(--esp);transform:translateY(100%);pointer-events:none;display:grid;place-items:center;color:var(--bone)}
.curtain .logo b{font-size:64px}.curtain .logo i{font-size:30px}
.curtain.in{animation:cIn .6s var(--e) forwards}
.curtain.out{transform:none;animation:cOut .8s var(--e) .1s forwards}
@keyframes cIn{from{transform:translateY(100%)}to{transform:none}}
@keyframes cOut{to{transform:translateY(-100%)}}
.bnav{display:none}
@media(max-width:900px){
 .bnav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:10px;right:10px;bottom:10px;z-index:58;height:62px;border-radius:20px;background:rgba(36,28,23,.92);backdrop-filter:blur(14px);color:var(--bone);box-shadow:0 16px 40px -14px rgba(0,0,0,.6)}
 .bnav a,.bnav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10px;font-weight:500;letter-spacing:.04em;position:relative}
 .bnav svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5}
 .bnav .n{position:absolute;top:8px;left:calc(50% + 6px);min-width:16px;height:16px;border-radius:8px;background:var(--wine);font-size:9.5px;display:grid;place-items:center}
 .bnav .wab{color:#4fe08a}
 .wa{display:none}
 body{padding-bottom:84px}
 .sticky{bottom:84px}
}
.cur{position:fixed;left:0;top:0;width:12px;height:12px;border-radius:50%;background:var(--wine);pointer-events:none;z-index:110;transform:translate(-50%,-50%);transition:width .4s var(--e),height .4s var(--e),background .3s;display:grid;place-items:center;color:var(--bone);font:600 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;mix-blend-mode:normal}
.cur.big{width:86px;height:86px;background:rgba(122,31,43,.92)}
@media(hover:none){.cur{display:none}}
.ingx{padding:clamp(100px,12vw,160px) 0}
.ingx .g{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);align-items:center}
.ingx .vis{position:relative;aspect-ratio:4/5;border-radius:24px;overflow:hidden;background:var(--stone)}
.ingx .vis img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ingx .vis .lbl{position:absolute;left:18px;bottom:18px;z-index:2;background:var(--bone);border-radius:100px;padding:8px 16px;font:italic 400 22px var(--serif)}
.ingx ul{list-style:none;margin-top:34px;border-top:1px solid var(--line)}
.ingx li{border-bottom:1px solid var(--line);padding:20px 0;cursor:pointer;display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:baseline;transition:padding .5s var(--e)}
.ingx li h3{font-size:clamp(34px,4vw,58px);transition:color .4s,transform .6s var(--e)}
.ingx li p{grid-column:2/-1;color:#5b5047;max-height:0;overflow:hidden;opacity:0;transition:max-height .6s var(--e),opacity .5s}
.ingx li .i{font:italic 20px var(--serif);color:var(--mut)}
.ingx li .ar{font-size:20px;transition:transform .5s var(--e)}
.ingx li.on h3{color:var(--wine);font-style:italic;transform:translateX(10px)}
.ingx li.on p{max-height:120px;opacity:1;margin-top:8px}
.ingx li.on .ar{transform:rotate(-45deg)}
@media(max-width:900px){.ingx .g{grid-template-columns:1fr}.ingx .vis{aspect-ratio:1}}
.recent{padding:0 0 110px}
/* toast: fully invisible when hidden (iOS peeking fix) */
.toast{opacity:0;visibility:hidden;transition:transform .6s var(--e),opacity .35s,visibility 0s .6s}
.toast.on{opacity:1;visibility:visible;transition:transform .6s var(--e),opacity .25s,visibility 0s}
@media(max-width:900px){.toast{top:calc(env(safe-area-inset-top) + 74px);transform:translate(-50%,-30px)}.toast.on{transform:translate(-50%,0)}}
