:root{--canvas:#14110E;--surface:#EAE0D0;--ink:#F4ECE0;--ink-soft:#B4A797;--dark-ink:#1C1712;--accent:#D6246E;--accent-ink:#FFF6F9;--ease:cubic-bezier(.23,1,.32,1);--disp:"Bodoni Moda",Georgia,serif;--text:"Manrope",system-ui,sans-serif}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;overflow-x:clip}
body{background:var(--canvas);color:var(--ink);font-family:var(--text);font-size:17px;line-height:1.6}
body::after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.05;z-index:90;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:3px 3px}
img{display:block;max-width:100%}
::selection{background:var(--accent);color:var(--accent-ink)}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
em{font-style:italic;color:var(--accent)}
.bar{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:14px 4vw;background:linear-gradient(rgba(20,17,14,.85),rgba(20,17,14,0));}
.mark{font-family:var(--disp);font-weight:700;font-size:1.6rem;text-decoration:none;letter-spacing:-.02em}.mark i{font-weight:400;color:var(--accent)}
.bar nav{display:flex;gap:28px}.bar nav a{text-decoration:none;font-weight:600;font-size:.9rem}.bar nav a:hover{color:var(--accent)}
.bag{text-decoration:none;font-weight:600;border:1px solid var(--ink-soft);border-radius:40px;padding:8px 16px;min-height:44px;display:inline-flex;align-items:center;gap:8px;transition:transform .15s var(--ease)}.bag b{background:var(--accent);color:var(--accent-ink);border-radius:20px;padding:0 8px}.bag.pop{transform:scale(1.12)}
.mirror{position:fixed;right:2vw;bottom:3vh;z-index:60;width:76px;height:108px;border-radius:50%;overflow:hidden;border:2px solid var(--accent);box-shadow:0 10px 24px rgba(0,0,0,.5);text-decoration:none;transition:border-radius .6s var(--ease),transform .2s}
.mirror:hover{transform:scale(1.05)}.mirror img{width:100%;height:100%;object-fit:cover;transition:opacity .4s}.mirror span{position:absolute;bottom:0;left:0;right:0;font-size:.6rem;text-align:center;background:rgba(20,17,14,.8);padding:2px;font-weight:800}
.btn{display:inline-flex;align-items:center;min-height:48px;padding:0 28px;border-radius:40px;background:var(--accent);color:var(--accent-ink);font-weight:800;text-decoration:none;border:0;font-family:var(--text);font-size:1rem;cursor:pointer;transition:transform .14s var(--ease),box-shadow .2s;box-shadow:0 8px 20px rgba(214,36,110,.3)}
.btn:hover{transform:translateY(-2px)}.btn:active{transform:scale(.97)}
.hero{position:relative;min-height:120vh;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#2A221B,#14110E 70%)}
.hero [data-depth]{will-change:transform}
.far{position:absolute;width:18vw;opacity:.35;filter:blur(3px) grayscale(.3)}.far img{border-radius:4px}.far1{left:5vw;top:12vh}.far2{right:6vw;top:30vh}
.h-back{position:absolute;top:16vh;left:0;right:0;text-align:center;font-family:var(--disp);font-weight:700;font-size:clamp(4rem,15vw,15rem);line-height:1;letter-spacing:-.04em;color:var(--surface);text-transform:uppercase}
.subject{position:absolute;left:50%;top:34vh;width:min(30vw,440px);margin-left:max(-15vw,-220px);z-index:3}
.subject img{border-radius:220px 220px 6px 6px;box-shadow:0 30px 60px rgba(0,0,0,.5)}
.shadow{position:absolute;left:12%;right:12%;bottom:-18px;height:30px;border-radius:50%;background:radial-gradient(ellipse,rgba(0,0,0,.7),transparent 70%);z-index:-1}
.ring{position:absolute;left:50%;top:48vh;width:min(50vw,720px);transform-origin:center;margin-left:max(-25vw,-360px);fill:none;stroke:var(--accent);stroke-width:2.5}
.ring-back{z-index:2;opacity:.55}.ring-front{z-index:4}
.h-front{position:absolute;top:52vh;left:0;right:0;text-align:center;z-index:5;font-family:var(--disp);font-style:italic;font-size:clamp(3rem,9vw,9rem);line-height:1.05;color:transparent;-webkit-text-stroke:2px var(--accent)}
.hero-copy{position:absolute;left:calc(6vw - 28px);bottom:30vh;z-index:6;max-width:calc(26ch + 56px);padding:28px;border-radius:24px;background:radial-gradient(ellipse at 40% 55%,rgba(20,17,14,.92),rgba(20,17,14,.6) 60%,rgba(20,17,14,0) 100%)}.lead{font-size:1.15rem;margin-bottom:20px;color:var(--ink);text-shadow:0 1px 3px rgba(0,0,0,.6)}.hero-copy .btn{text-shadow:0 1px 2px rgba(0,0,0,.35)}
.manifesto{background:var(--surface);color:var(--dark-ink);padding:18vh 0 0}
.wrap{width:min(1180px,90vw);margin:0 auto}
.eyebrow{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.2em;color:#8E1446;margin-bottom:24px}
.manifesto h2{font-family:var(--disp);font-size:clamp(2.2rem,5vw,4.6rem);line-height:1.08;max-width:18ch;letter-spacing:-.02em}.manifesto em{color:#B01858}
.body{max-width:58ch;margin-top:28px;font-size:1.05rem}.manifesto .body{color:#4A4036}
.rise{opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.rise.in{opacity:1;transform:none}
.marquee{margin-top:14vh;overflow:hidden;background:var(--accent);color:var(--accent-ink);padding:22px 0}.track{display:flex;width:max-content;animation:mq 26s linear infinite}.track span{font-family:var(--disp);font-size:2rem;white-space:nowrap;padding-right:1rem}
@keyframes mq{to{transform:translateX(-50%)}}
.rack{padding:16vh 4vw;background:#1E1915}
.rack-title{font-family:var(--text);font-weight:800;font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.03em;margin-bottom:6vh;text-transform:uppercase}
.rack-grid{display:grid;grid-template-columns:62fr 38fr;grid-template-rows:auto auto;gap:3vw}
.item{position:relative;transition:transform .3s var(--ease)}.item.big{grid-row:span 2}.item img{width:100%;height:auto;border-radius:4px;box-shadow:0 24px 50px rgba(0,0,0,.45)}
.item:not(.big) img{aspect-ratio:4/3;object-fit:cover;object-position:50% 30%}
.item figcaption{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:16px}.item b{font-family:var(--disp);font-size:1.5rem}.item span{color:var(--ink-soft);width:100%}
.add{background:none;border:1px solid var(--ink);color:var(--ink);border-radius:40px;min-height:44px;padding:0 18px;font-family:var(--text);font-weight:600;cursor:pointer;transition:background .15s,color .15s,transform .12s}.add:hover{background:var(--ink);color:var(--canvas)}.add:active{transform:scale(.97)}.add.done{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.peak{height:240vh;background:#0F0C0A;position:relative}
.peak-stage{position:sticky;top:0;height:100vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4vw;padding:0 6vw}
.peak-copy h2{font-family:var(--disp);font-size:clamp(2.6rem,5.5vw,5.4rem);line-height:1.08;letter-spacing:-.02em;transition:opacity .4s}
.peak-copy p{color:var(--ink-soft);max-width:40ch;margin:20px 0 28px;font-size:1.1rem;transition:opacity .4s}
.looks{display:flex;gap:10px;margin-bottom:28px;flex-wrap:wrap}
.look,.chips button{min-height:44px;padding:0 20px;border-radius:40px;border:1px solid var(--ink-soft);background:transparent;color:var(--ink);font-family:var(--text);font-weight:600;cursor:pointer;transition:background .2s,color .2s,transform .12s}
.look:active,.chips button:active{transform:scale(.96)}.ping{outline:2px solid var(--accent);outline-offset:3px}.btn.sent{background:var(--ink);color:var(--canvas);box-shadow:none}.look.on,.chips button.on{background:var(--ink);color:var(--canvas);border-color:var(--ink)}
.glass{position:relative;height:84vh;display:flex;justify-content:center;align-items:center}
.glass .ring{top:50%;margin-top:-12vh;width:46vw;margin-left:-23vw}
.frame{position:relative;z-index:3;width:min(32vw,460px);aspect-ratio:2/3;overflow:hidden;border:3px solid var(--accent);border-radius:50%;transition:border-radius .8s var(--ease),transform .8s var(--ease);box-shadow:0 40px 70px rgba(0,0,0,.6)}
.frame img{width:100%;height:100%;object-fit:cover;transition:opacity .35s,transform .8s var(--ease)}
.frame.swap img{opacity:0;transform:scale(1.08)}
.glass .shadow{bottom:4vh;left:30%;right:30%}
.config{background:var(--surface);color:var(--dark-ink);padding:16vh 0}
.cfg{display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:center}
.config h2,.cassa h2{font-family:var(--disp);font-size:clamp(2.4rem,4.6vw,4.4rem);line-height:1.08}.config em{color:#B01858}
.config .body{color:#4A4036}
.lbl{margin-top:28px;font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#5C5045}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.config .chips button{color:var(--dark-ink);border-color:#8A7C6C}.config .chips button.on{background:var(--dark-ink);color:var(--surface)}
.composed{position:relative;transition:transform .6s var(--ease)}.composed img{border-radius:240px 240px 6px 6px;aspect-ratio:2/3;object-fit:cover;width:100%;transition:opacity .35s,transform .6s var(--ease);box-shadow:0 30px 50px rgba(60,40,20,.35)}
.composed.swap img{opacity:0;transform:translateY(12px) rotate(-2deg)}
.composed figcaption{margin-top:18px;font-weight:800;text-align:center}
.sport .composed img{border-radius:6px}
.cassa{background:#1A1512;padding:16vh 0 12vh}
.cassa-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw}
.cassa .body{color:var(--ink-soft)}
.summary{list-style:none;padding:0;margin-top:28px;border-top:1px solid #3A322B}.summary li{padding:14px 0;border-bottom:1px solid #3A322B}
.form{display:flex;flex-direction:column;gap:18px;background:#241D18;padding:36px;border-radius:8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 20px 40px rgba(0,0,0,.4)}
.form label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:.9rem}
.form input{min-height:48px;border-radius:6px;border:1px solid #5A4E43;background:#14110E;color:var(--ink);padding:0 14px;font:inherit}
.out{min-height:1.5em;color:var(--ink)}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:30px 120px 30px 4vw;background:#0F0C0A;color:var(--ink-soft);font-size:.85rem}
@media(max-width:860px){.bar nav{display:none}.far{width:30vw}.far1{left:-6vw}.far2{right:-6vw}.h-back{top:14vh;font-size:15.5vw}.subject{width:62vw;margin-left:-31vw;top:22vh}.ring{width:94vw;margin-left:-47vw;top:52vh}.h-front{top:62vh;font-size:13vw}.hero-copy{left:6vw;right:6vw;bottom:16vh;max-width:none}.hero{min-height:112vh}.rack-grid{grid-template-columns:1fr}.item.big{grid-row:auto}.peak{height:210vh}.peak-stage{grid-template-columns:1fr;grid-template-rows:auto 1fr;padding:72px 6vw 20px;gap:10px;align-content:start}.peak-copy p{margin:8px 0 12px;font-size:.95rem}.peak-copy h2{font-size:2.2rem}.looks{margin-bottom:12px}.glass{height:48vh}.frame{width:auto;height:44vh}.glass .ring{width:86vw;margin-left:-43vw}.cfg,.cassa-grid{grid-template-columns:1fr}.composed{width:76%;margin:0 auto}.mirror{width:56px;height:80px}.foot{padding-left:4vw;padding-right:90px}.form{padding:24px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}.rise{opacity:1;transform:none}.peak{height:auto}.peak-stage{position:relative;height:auto;padding-top:14vh;padding-bottom:10vh}}