.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.42;z-index:0}
.hero>*:not(.hero__bg):not(.hero__scroll){position:relative;z-index:1}
.hero__scroll{z-index:1}
.marq{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;background:#050505}
.marq__track{display:flex;width:max-content;animation:marq 40s linear infinite}
.marq__item{font-family:'Cinzel',serif;font-size:.74rem;letter-spacing:.42em;text-transform:uppercase;color:var(--silver);padding:0 28px;white-space:nowrap}
.marq__item::after{content:'\2726';margin-left:56px;opacity:.55}
@keyframes marq{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marq__track{animation:none}}
.rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:34px 24px 24px max(24px,calc((100vw - 1200px)/2 + 24px));scrollbar-width:none;-webkit-overflow-scrolling:touch}
.rail::-webkit-scrollbar{display:none}
.rail .card{flex:0 0 min(72vw,330px);scroll-snap-align:start}
.rail-hint{text-align:center;font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}
.card__quick{margin:14px 0 0}
.card__add{background:transparent;color:var(--text);border:1px solid rgba(255,255,255,.35);padding:11px 20px;font-family:'Cinzel',serif;font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;cursor:pointer;transition:all .3s}
.card__add:hover{background:var(--chrome);color:#0a0a0a;border-color:transparent}
.card__add[disabled]{opacity:.6}
@media(hover:hover) and (min-width:900px){.card__quick{opacity:0;transform:translateY(6px);transition:all .4s var(--ease)}.card:hover .card__quick{opacity:1;transform:none}}
.edit{display:grid;border:1px solid var(--line)}
.edit__img{position:relative;min-height:440px;background:radial-gradient(circle at 50% 40%,#171717,#070707)}
.edit__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:8%}
.edit__img.cover img{object-fit:cover;padding:0}
.edit__txt{padding:clamp(40px,7vw,96px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.edit__txt h2{font-size:clamp(1.4rem,3.2vw,2.3rem);text-transform:uppercase;letter-spacing:.12em}
.edit__txt p{color:#cfccc6;max-width:420px;margin:0 0 32px}
@media(min-width:900px){.edit{grid-template-columns:1fr 1fr}.edit--flip .edit__img{order:2}.edit__img{min-height:620px}}
.news{max-width:560px;margin:0 auto;text-align:center}
.news form{display:flex;margin-top:28px;border:1px solid rgba(255,255,255,.4)}
.news input[type=email]{flex:1;min-width:0;background:transparent;border:0;color:var(--text);padding:16px 18px;font:inherit;outline:none}
.news button{border:0;background:var(--chrome);color:#0a0a0a;padding:0 24px;font-family:'Cinzel',serif;letter-spacing:.25em;font-size:.64rem;text-transform:uppercase;cursor:pointer}
.news .notice{margin:20px 0 0}
.tools{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:34px 0 36px;font-size:.62rem;letter-spacing:.24em;text-transform:uppercase}
.tools__l,.tools__r{display:flex;gap:20px;align-items:center}
.tools__count{color:var(--muted)}
.tools select,.tool{background:transparent;color:var(--text);border:0;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;padding:6px 0}
.tools select option{color:#000;text-transform:none;letter-spacing:0}
.pills{display:flex;gap:10px;flex-wrap:wrap;margin:-14px 0 30px}
.pill{border:1px solid var(--line);padding:7px 12px;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase}
.grid.grid--lg{grid-template-columns:1fr}
@media(min-width:900px){.grid.grid--lg{grid-template-columns:repeat(3,1fr)}}
.banner{grid-column:1/-1;text-align:center;padding:clamp(56px,9vw,110px) 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 50% 50%,rgba(200,204,212,.13),transparent 70%)}
.banner h2{font-size:clamp(1.3rem,3.6vw,2.4rem);text-transform:uppercase;letter-spacing:.14em}
.banner p{color:#cfccc6;max-width:480px;margin:0 auto 28px}
.scrim{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:70;opacity:0;pointer-events:none;transition:opacity .4s}
.scrim.open{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;bottom:0;left:0;width:min(420px,92vw);background:#080808;border-right:1px solid var(--line);z-index:80;transform:translateX(-102%);transition:transform .5s var(--ease);overflow-y:auto;padding:26px 26px 120px}
.drawer.open{transform:none}
.drawer__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.chk{display:flex;gap:12px;align-items:center;padding:9px 0;font-size:.9rem;cursor:pointer}
.chk span{flex:1}.chk em{font-style:normal;color:var(--muted);font-size:.78rem}
.chk input{accent-color:#c9ccd2;width:16px;height:16px}
.drawer__foot{position:absolute;left:0;right:0;bottom:0;display:flex;gap:12px;padding:18px 26px;background:#080808;border-top:1px solid var(--line)}
.drawer__foot .btn{flex:1;padding:14px 10px;text-align:center}
.pdp__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:0}
.pdp__track::-webkit-scrollbar{display:none}
.pdp__slide{flex:0 0 100%;scroll-snap-align:center;border:1px solid var(--line);background:radial-gradient(circle at 50% 40%,#171717,#070707)}
.pdp__slide img{width:100%}
.pdp__dots{display:flex;justify-content:center;gap:8px;margin-top:14px}
.pdp__dots span{width:6px;height:6px;border-radius:50%;background:#444;transition:background .3s}
.pdp__dots span.on{background:var(--silver)}
@media(min-width:900px){.pdp__track{display:grid;grid-template-columns:1fr 1fr;gap:12px;overflow:visible}.pdp__slide:first-child{grid-column:1/-1}.pdp__dots{display:none}}
.sbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:rgba(0,0,0,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);transform:translateY(110%);transition:transform .45s var(--ease)}
.sbar.show{transform:none}
.sbar__t{font-family:'Cinzel',serif;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
.sbar__p{color:var(--silver);font-size:.85rem;letter-spacing:.1em}
.sbar .btn{padding:14px 26px;white-space:nowrap}
@media(min-width:900px){.sbar{display:none}}
