@font-face{font-family:'Jost';font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fonts/jost-latin-wght-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Jost';font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fonts/jost-latin-ext-wght-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* Amber V — site styles */
:root{
  --bg:#050303;--bg2:#0B0605;--panel:#110C0B;--ink:#F4ECE8;--ink2:#CFCAC6;--ink3:#A8A29E;--line:rgba(244,236,232,.16);
  --rose:#C88A74;--rose2:#E8AA92;--gold:#F3DFA8;--red:#B3141D;
  --font:'Jost','Futura','Helvetica Neue',Arial,sans-serif;
  --pad:clamp(20px,4.6vw,72px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.6;overflow-x:hidden}
img,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
a:hover{color:#fff}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--rose);outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--bg);padding:12px 18px;z-index:100}
.skip:focus{left:12px;top:12px}
.lbl{font-weight:600;font-size:13px;letter-spacing:.3em;text-transform:uppercase}
.h-xl{margin:0;font-weight:800;text-transform:uppercase;line-height:.86;letter-spacing:-.01em;font-size:clamp(46px,7vw,104px)}
.h-l{margin:0;font-weight:800;text-transform:uppercase;line-height:.9;font-size:clamp(40px,5.4vw,84px)}
.h-m{margin:0;font-weight:800;text-transform:uppercase;line-height:1;font-size:clamp(28px,3vw,44px)}
.muted{color:var(--ink3)}
.lead{font-size:clamp(17px,1.4vw,21px);line-height:1.6;color:var(--ink2);margin:0}
.wrap{padding-left:var(--pad);padding-right:var(--pad)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 34px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-weight:600;font-size:12px;letter-spacing:.3em;text-transform:uppercase;cursor:pointer;transition:background .3s,color .3s,border-color .3s,box-shadow .3s}
.btn:hover{background:var(--ink);color:var(--bg)}
.btn.solid{background:var(--ink);color:var(--bg)}
.btn.solid:hover{background:#fff;box-shadow:0 0 28px rgba(232,170,146,.45)}
.btn.rose{border-color:var(--rose);color:var(--rose2)}
.btn.rose:hover{background:var(--rose);color:#0b0605;box-shadow:0 0 30px rgba(200,138,116,.55)}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.btn .arr{font-size:16px;letter-spacing:0}

/* marquee */
.marquee{border-top:1px solid rgba(201,194,188,.3);border-bottom:1px solid rgba(201,194,188,.3);background:var(--bg2);overflow:hidden;white-space:nowrap;padding:10px 0}
.marq{display:inline-flex;align-items:center;gap:30px;animation:avMarq 34s linear infinite;font-weight:800;text-transform:uppercase;font-size:22px;line-height:1;color:#fff}
.marq .w{animation:avNeon 4.5s linear infinite}
.marq .w:nth-of-type(3n+2){animation-delay:-1.4s}
.marq .w:nth-of-type(3n){animation-delay:-2.9s}
.marq img{height:15px;width:auto;flex:none;filter:drop-shadow(0 0 6px rgba(200,138,116,.5))}

/* header */
.site-head{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px var(--pad);background:rgba(5,3,3,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site-head .left{display:flex;align-items:center;gap:24px}
.logo-anim{position:relative;display:block;width:68px;aspect-ratio:800/440;flex:none}
.logo-anim img{position:absolute;inset:0;width:100%;height:100%}
.logo-anim .a{clip-path:inset(0 0 50% 0)}
.logo-anim .v{clip-path:inset(50% 0 0 0)}
.socials{display:flex;align-items:center;gap:2px}
.socials a{display:flex;align-items:center;justify-content:center;min-width:38px;min-height:40px;color:var(--ink);transition:color .3s,transform .3s}
.socials a:hover{color:var(--rose);transform:scale(1.12)}
.socials svg{width:17px;height:17px}
.mainnav{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;column-gap:30px}
.mainnav a{padding:12px 0;font-size:12px}
.mainnav a.cur{color:var(--rose2)}
.bag{display:inline-flex;align-items:center;gap:8px;padding:10px 14px!important;border:1px solid var(--line)}
.bag b{font-weight:700;color:var(--rose2)}
.bag-m{display:none!important}

/* animations */
@keyframes avStrobe{0%{opacity:1;background:#fff}10%{background:#050303}20%{background:#fff}36%{background:#050303}50%{background:#8E1F1F}64%{opacity:1;background:#050303}100%{opacity:0;background:#050303;visibility:hidden}}
@keyframes avLoopA{0%{opacity:0;transform:translateY(-220px) scale(1.25);filter:blur(6px)}24%{opacity:1;transform:none;filter:none}84%{opacity:1;transform:none;filter:none}100%{opacity:0;transform:translateY(-60px);filter:blur(8px)}}
@keyframes avLoopV{0%{opacity:0;transform:translateY(220px) scale(1.25);filter:blur(6px)}24%{opacity:1;transform:none;filter:none}84%{opacity:1;transform:none;filter:none}100%{opacity:0;transform:translateY(60px);filter:blur(8px)}}
@keyframes avInA{from{opacity:0;transform:translateY(-120%) scale(1.25);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@keyframes avInV{from{opacity:0;transform:translateY(120%) scale(1.25);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@keyframes avShine{0%,24%{background-position:160% 0}40%{background-position:-60% 0}100%{background-position:-60% 0}}
@keyframes avWord{0%{opacity:0;letter-spacing:.6em;filter:blur(14px)}100%{opacity:1;letter-spacing:0;filter:none}}
@keyframes avFade{from{opacity:0}to{opacity:1}}
@keyframes avZoom{from{transform:scale(1.14)}to{transform:scale(1)}}
@keyframes avNeon{0%,18%,22%,26%,52%,58%,100%{opacity:1;text-shadow:0 0 4px #fff,0 0 18px #fff,0 0 44px #9A9A9A,0 0 90px #3A3A3A}20%,24%,55%{opacity:.15;text-shadow:none}}
@keyframes avNeonSoft{0%,40%,44%,48%,80%,100%{opacity:1;text-shadow:0 0 2px rgba(255,255,255,.7),0 0 16px rgba(232,170,146,.55),0 2px 8px rgba(0,0,0,.9)}42%,46%{opacity:.72;text-shadow:0 2px 8px rgba(0,0,0,.9)}}
@keyframes avBlood{0%,100%{text-shadow:0 0 6px #ff6b5a,0 0 28px #b3141d,0 0 70px #6a0a0f;opacity:1}8%{opacity:.4}10%{opacity:1}50%{text-shadow:0 0 2px #ff6b5a,0 0 12px #b3141d}}
@keyframes avBeat{0%,100%{transform:scale(1);opacity:.35}12%{transform:scale(1.18);opacity:.75}24%{transform:scale(1);opacity:.4}36%{transform:scale(1.12);opacity:.7}}
@keyframes avMarq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes avFilt{0%,100%{filter:grayscale(1) contrast(1.3) brightness(.85)}30%{filter:sepia(.55) hue-rotate(-24deg) saturate(1.6) contrast(1.1)}60%{filter:none}80%{filter:contrast(1.5) saturate(1.9) hue-rotate(-14deg) brightness(.9)}}
@keyframes avGlitch{0%{transform:translate(0);filter:none}20%{transform:translate(-6px,2px);filter:hue-rotate(-40deg) saturate(2)}40%{transform:translate(5px,-3px);filter:invert(.08) contrast(1.6)}60%{transform:translate(-3px,1px)}80%{transform:translate(4px,0);filter:hue-rotate(30deg)}100%{transform:translate(0)}}
@keyframes avGrain{0%{transform:translate(0,0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-2%,-1%)}100%{transform:translate(1%,3%)}}
@keyframes avSmoke{0%{transform:translate(-8%,4%) scale(1)}50%{transform:translate(6%,-4%) scale(1.15)}100%{transform:translate(-8%,4%) scale(1)}}
@keyframes avCycle{0%{opacity:0;text-shadow:none}1%{opacity:.9;text-shadow:0 0 3px #fff,0 0 14px rgba(255,255,255,.85),0 0 36px rgba(255,255,255,.45),0 0 70px rgba(200,138,116,.35)}1.6%{opacity:.1;text-shadow:none}2.4%{opacity:1;text-shadow:0 0 3px #fff,0 0 14px rgba(255,255,255,.85),0 0 36px rgba(255,255,255,.45),0 0 70px rgba(200,138,116,.35)}3%{opacity:.35;text-shadow:none}3.8%{opacity:1;text-shadow:0 0 3px #fff,0 0 14px rgba(255,255,255,.85),0 0 36px rgba(255,255,255,.45),0 0 70px rgba(200,138,116,.35)}15.5%{opacity:1;text-shadow:0 0 3px #fff,0 0 14px rgba(255,255,255,.85),0 0 36px rgba(255,255,255,.45),0 0 70px rgba(200,138,116,.35)}16.2%{opacity:.15;text-shadow:none}16.8%{opacity:1;text-shadow:0 0 3px #fff,0 0 14px rgba(255,255,255,.85),0 0 36px rgba(255,255,255,.45),0 0 70px rgba(200,138,116,.35)}17.8%{opacity:0;text-shadow:none}100%{opacity:0;text-shadow:none}}
@keyframes avBlink{0%,49%{opacity:1}50%,100%{opacity:0}}
@keyframes vtA{0%{opacity:0;transform:translateX(-.45em);clip-path:inset(0 0 50% 0)}60%{opacity:1;transform:none;clip-path:inset(0 0 50% 0)}61%,100%{opacity:1;transform:none;clip-path:inset(-60% -20% -60% -20%)}}
@keyframes vtV{0%{opacity:0;transform:translateX(.45em);clip-path:inset(50% 0 0 0)}60%{opacity:1;transform:none;clip-path:inset(50% 0 0 0)}61%,100%{opacity:0;transform:none;clip-path:inset(50% 0 0 0)}}
@keyframes vtGlow{0%{text-shadow:0 0 0 rgba(0,0,0,0)}14%{text-shadow:0 0 6px #fff,0 0 28px #F4D3C4,0 0 80px #C88A74}24%{text-shadow:0 0 2px rgba(255,255,255,.3)}34%{text-shadow:0 0 6px #fff,0 0 34px #F4D3C4,0 0 100px #C88A74}100%{text-shadow:0 0 4px rgba(255,255,255,.35),0 0 24px rgba(200,138,116,.45)}}
@keyframes rise{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
.strobe{position:absolute;inset:0;z-index:60;pointer-events:none;animation:avStrobe 1.1s steps(1,end) both}
.grain{position:fixed;inset:-10%;z-index:55;pointer-events:none;opacity:.07;mix-blend-mode:overlay;animation:avGrain .5s steps(4) infinite;width:120%;height:120%}
.av-a{animation:avLoopA 8s cubic-bezier(.2,.8,.2,1) .9s infinite both}
.av-v{animation:avLoopV 8s cubic-bezier(.2,.8,.2,1) .9s infinite both}
.av-a1{animation:avInA 1.8s cubic-bezier(.2,.8,.2,1) .4s both}
.av-v1{animation:avInV 1.8s cubic-bezier(.2,.8,.2,1) .4s both}
.av-shine{position:absolute;inset:0;-webkit-mask-image:url(/img/logo-mark.webp);mask-image:url(/img/logo-mark.webp);-webkit-mask-size:100% 100%;mask-size:100% 100%;background:linear-gradient(105deg,rgba(255,255,255,0) 38%,#fff 50%,rgba(255,255,255,0) 62%) no-repeat;background-size:260% 100%;animation:avShine 8s ease-in-out .9s infinite both}
.av-word{animation:avWord 2s cubic-bezier(.2,.8,.2,1) 2.6s both}
.av-tag{animation:avFade 1.6s ease-out 3.6s both}
.av-zoom{animation:avZoom 9s cubic-bezier(.2,.7,.2,1) .4s both}
.neon{animation:avNeon 4.5s linear infinite}
.neon-soft{animation:avNeonSoft 6s linear infinite}
.blood{animation:avBlood 3.2s linear infinite}
.beat{animation:avBeat 1.6s ease-in-out infinite}
.filt{animation:avFilt 11s ease-in-out infinite}
.glitch:hover img{animation:avGlitch .35s steps(2) infinite}
.smoke{animation:avSmoke 24s ease-in-out infinite}
.blink{animation:avBlink 1s steps(1,end) infinite}
/* title split */
.vt{position:relative}
.vt-a{display:block}
.vt-v{position:absolute;left:0;top:0;width:100%;opacity:0;pointer-events:none}
html.vt-armed .vt:not(.in) .vt-a{opacity:0}
.vt.in .vt-a{animation:vtA 1.3s cubic-bezier(.2,.8,.2,1) both,vtGlow 1.8s ease-out .75s}
.vt.in .vt-v{animation:vtV 1.3s cubic-bezier(.2,.8,.2,1) both}
.vt:not(.neon):not(.blood):not(.dark) .vt-a{text-shadow:0 0 4px rgba(255,255,255,.35),0 0 24px rgba(200,138,116,.45)}
.vt.dark .vt-a{text-shadow:none!important}
.reveal{opacity:1}
html.vt-armed .reveal:not(.in){opacity:0;transform:translateY(40px)}
.reveal.in{animation:rise .9s cubic-bezier(.2,.8,.2,1) both}

/* HOME */
.hero{position:relative;overflow:hidden;min-height:calc(100svh - 120px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:40px var(--pad) 64px;text-align:center;background:radial-gradient(ellipse at 50% 55%,#1A1212 0%,#050303 68%)}
.hero .smoke{position:absolute;inset:-20%;background:radial-gradient(ellipse at 30% 40%,rgba(142,31,31,.25),transparent 45%),radial-gradient(ellipse at 70% 60%,rgba(201,194,188,.12),transparent 40%)}
.hero .mark{position:relative;width:min(420px,58vw);aspect-ratio:800/440}
.hero .mark img{position:absolute;inset:0;width:100%;height:100%}
.hero .mark .a{clip-path:inset(0 0 50% 0)}.hero .mark .v{clip-path:inset(50% 0 0 0)}
.hero h1{margin:0;width:min(640px,82vw);position:relative}
.hero h1 img{display:block;width:100%;height:auto}
.hero .cycbox{position:relative;height:clamp(64px,10vw,150px);width:100%}

.cyc{position:absolute;left:0;right:0;top:0;opacity:0;font-weight:800;text-transform:uppercase;font-size:clamp(52px,8vw,112px);line-height:1.3;color:var(--ink);animation:avCycle 15s steps(1,end) infinite;will-change:opacity}
.photohero{position:relative;height:min(100svh,1100px);min-height:620px;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}
.photohero .bg{position:absolute;inset:0;transform-origin:50% 30%}
.photohero .bg img{width:100%;height:100%;object-fit:cover;object-position:50% 18%}
.photohero .shade{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 35%,transparent 40%,rgba(5,3,3,.7) 100%),linear-gradient(180deg,rgba(5,3,3,.55) 0%,transparent 16%,transparent 48%,rgba(5,3,3,.92) 100%)}
.photohero .txt{position:relative;max-width:860px;padding:0 var(--pad) clamp(48px,8vh,96px);text-align:center}
.photohero .txt p{margin:0;font-size:clamp(21px,2.3vw,34px);line-height:1.45;font-weight:500;color:#fff}
.photohero .txt .sig{display:block;margin-top:18px;color:var(--rose2)}
.split{display:flex;flex-wrap:wrap;align-items:stretch}
.split > .media{flex:1 1 560px;min-width:0;position:relative;overflow:hidden;min-height:clamp(520px,60vw,920px)}
.split > .media img,.split > .media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.split > .copy{flex:1 1 480px;min-width:0;padding:clamp(64px,7vw,110px) var(--pad);display:flex;flex-direction:column;justify-content:center;gap:26px}
.wonder .copy{background:radial-gradient(ellipse at 20% 30%,#1A1414 0%,#050303 65%)}
.wonder .media{background:#000;min-height:0!important;aspect-ratio:16/9;align-self:center}
.store-teaser .grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.soon{position:relative;overflow:hidden;padding:clamp(80px,10vw,150px) var(--pad)}
.soon .bgimg{position:absolute;right:4%;top:8%;width:40%;max-width:620px;height:84%;overflow:hidden}
.soon .bgimg img{width:100%;height:100%;object-fit:cover;object-position:50% 15%;opacity:.6}
.soon .fade{position:absolute;inset:0;background:linear-gradient(90deg,#050303 46%,rgba(5,3,3,.15) 100%)}
.soon .beat{position:absolute;left:6%;top:10%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(179,20,29,.45),transparent 70%)}
.soon .inner{position:relative;max-width:920px;display:flex;flex-direction:column;gap:8px}
.track{display:flex;align-items:baseline;gap:28px;padding:16px 0;border-top:1px solid rgba(244,236,232,.14);font-weight:800;text-transform:uppercase;font-size:clamp(28px,4.4vw,60px);line-height:1.1;transition:color .3s,padding-left .4s,text-shadow .4s}
.track:last-of-type{border-bottom:1px solid rgba(244,236,232,.14)}
.track:hover{color:#fff;padding-left:28px;text-shadow:0 0 22px #b3141d}
.track .lbl{color:var(--ink2)}
.vgrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}
.vgrid div{overflow:hidden}
.vgrid img{width:100%;aspect-ratio:2/3;object-fit:cover;object-position:50% 18%}
.stream{display:flex;flex-direction:column;max-width:460px}
.stream a{display:flex;align-items:center;justify-content:space-between;min-height:60px;border-top:1px solid rgba(244,236,232,.3)}
.stream a:last-child{border-bottom:1px solid rgba(244,236,232,.3)}
.stream a span{display:flex;align-items:center;gap:16px}
.stream svg{width:22px;height:22px}
.live{position:relative;overflow:hidden;padding:clamp(80px,10vw,140px) var(--pad);background:radial-gradient(ellipse at 80% 20%,rgba(122,40,160,.28),transparent 55%),radial-gradient(ellipse at 10% 90%,rgba(179,20,29,.22),transparent 50%),#08050C}
.live .inner{max-width:980px;margin:0 auto;display:flex;flex-direction:column;gap:26px}
.shows{list-style:none;margin:8px 0 0;padding:0}
.shows li{display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px;padding:20px 0;border-top:1px solid rgba(244,236,232,.2)}
.shows li:last-child{border-bottom:1px solid rgba(244,236,232,.2)}
.shows .d{width:150px}
.shows .e{flex:1 1 220px;font-weight:700;text-transform:uppercase;font-size:20px;letter-spacing:.06em}
.book{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding:28px 30px;border:1px solid rgba(200,138,116,.45);background:linear-gradient(120deg,rgba(200,138,116,.10),rgba(5,3,3,0))}
.book p{margin:0}
.book strong{display:block;font-size:20px;text-transform:uppercase;letter-spacing:.08em}
.store-teaser{padding:clamp(80px,9vw,130px) var(--pad);display:flex;flex-direction:column;gap:48px;border-top:1px solid rgba(201,194,188,.25)}
.store-teaser .head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px}
.signup{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;overflow:hidden;color:#1A0B08}
.signup .sun{position:absolute;inset:0;background:radial-gradient(ellipse at 75% 40%,#F3DFA8 0%,#B8893A 26%,#3A2A10 60%,#050303 100%)}
.signup .media{position:relative;flex:1 1 560px;min-height:clamp(520px,60vw,900px);overflow:hidden}
.signup .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% 30%}
.signup .copy{position:relative;flex:1 1 440px;padding:clamp(64px,7vw,96px) var(--pad);display:flex;flex-direction:column;justify-content:center;gap:18px}
.signup input[type=email]{height:58px;padding:0;background:transparent;border:0;border-bottom:1px solid #1A0B08;font-size:22px;max-width:460px;color:#1A0B08}
.signup .btn{background:#1A0B08;color:#F3DFA8;border-color:#1A0B08;max-width:460px}
.signup .btn:hover{background:#000;color:#fff}
.signup a{text-decoration:underline}
.chk{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;max-width:460px}
.chk input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:#1A0B08}
.formmsg{min-height:1.5em;font-weight:600;margin:0}

/* FOOTER */
.site-foot{display:flex;flex-direction:column;align-items:center;gap:24px;padding:88px 24px 40px;text-align:center;border-top:1px solid rgba(201,194,188,.3)}
.site-foot .mark{position:relative;width:170px;aspect-ratio:800/440}
.site-foot .mark img{position:absolute;inset:0;width:100%;height:100%}
.site-foot .word{width:min(340px,70vw);height:auto}
.site-foot .socials svg{width:24px;height:24px}
.site-foot .socials{gap:10px;flex-wrap:wrap;justify-content:center}
.site-foot .mgmt{margin:0;max-width:720px;font-size:15px;color:var(--ink2)}
.site-foot .mgmt a{text-decoration:underline}
.legalnav{display:flex;flex-wrap:wrap;justify-content:center;column-gap:24px;font-size:11px;color:var(--ink3)}
.legalnav a{padding:10px 0}
.copy-line{margin:0;font-size:10px;color:#8A847F}

/* SHOP */
.shop-hero{position:relative;display:grid;grid-template-columns:1fr 1.15fr 1fr;align-items:end;min-height:min(86svh,860px);overflow:hidden}
.shop-hero > img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;filter:brightness(.72) contrast(1.08)}
.shop-hero .over{position:absolute;inset:auto 0 0 0;padding:0 var(--pad) 48px;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;background:linear-gradient(transparent,rgba(5,3,3,.95) 60%)}
.shop-hero .over p{max-width:440px;margin:0}
.aicap{position:absolute;right:10px;top:10px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.6);background:rgba(0,0,0,.4);padding:3px 7px}
.catbar{position:sticky;top:73px;z-index:30;display:flex;gap:10px;justify-content:center;flex-wrap:wrap;padding:16px var(--pad);background:rgba(5,3,3,.92);border-bottom:1px solid var(--line)}
.catbar button{min-height:42px;padding:0 18px;border:1px solid rgba(255,255,255,.3);background:transparent;cursor:pointer;font-size:11px;letter-spacing:.24em;text-transform:uppercase;font-weight:600}
.catbar button[aria-pressed=true]{background:var(--ink);color:var(--bg)}
.notice{margin:0 var(--pad);margin-top:28px;padding:16px 20px;border:1px solid rgba(200,138,116,.4);color:var(--ink2);font-size:15px}
.notice b{color:var(--rose2)}
.cat{padding:72px var(--pad) 40px}
.cat-head{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:end;margin-bottom:40px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.cat-top{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px);align-items:end;margin-bottom:44px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.cat-top .cat-banner{position:relative;margin:0;width:100%;height:auto;aspect-ratio:4/5;max-height:680px;overflow:hidden}
.cat-top .cat-head{display:flex;flex-direction:column;gap:18px;margin:0;padding:0;border:0}
.cat-banner{position:relative;margin:0 0 40px;height:clamp(240px,34vw,460px);overflow:hidden}
.cat-banner img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;filter:brightness(.8)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:44px 22px}
.card{display:flex;flex-direction:column;gap:12px}
.card .ph{position:relative;display:block;overflow:hidden;background:#0d0909;aspect-ratio:4/5}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1),opacity .4s}
.card .ph .phl{display:block;width:100%;height:100%}
.card:hover .ph img{transform:scale(1.03)}
.card .pnav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(5,3,3,.55);color:#fff;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.85;transition:opacity .3s,background .3s}
.card .pnav:hover{background:rgba(5,3,3,.85);opacity:1}
.card .pnav.prev{left:10px}.card .pnav.next{right:10px}
@media (hover:hover){.card .pnav{opacity:0}.card:hover .pnav{opacity:.9}}
.card .pdots{position:absolute;right:12px;bottom:14px;display:flex;gap:5px;z-index:2}
.card .pdots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.35)}
.card .pdots i.on{background:#fff}
.card .avail{display:flex;flex-direction:column;gap:6px}
.card .avail .lbl{font-size:10px;letter-spacing:.18em;color:var(--ink3)}
.card .chips{display:flex;flex-wrap:wrap;gap:6px}
.card .chip.sw{width:26px;height:26px;padding:3px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:transparent;cursor:pointer}
.card .chip.sw span{display:block;width:100%;height:100%;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.card .chip.sw[aria-pressed=true]{border:2px solid var(--rose2)}
.card .chip.tx{min-height:28px;padding:0 9px;border:1px solid rgba(255,255,255,.28);background:transparent;color:var(--ink2);font-size:11px;letter-spacing:.06em;cursor:pointer}
.card .chip.tx[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}
.card .badge{position:absolute;left:12px;top:12px;padding:6px 10px;background:var(--ink);color:var(--bg);font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:700}
.card .oos{position:absolute;left:12px;bottom:12px;padding:6px 10px;background:rgba(5,3,3,.82);border:1px solid rgba(255,255,255,.35);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}
.card h3{margin:0;font-weight:700;font-size:14px;letter-spacing:.14em;text-transform:uppercase;line-height:1.45}
.card .row{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.card .price{font-weight:600;white-space:nowrap;color:var(--rose2)}
.card p{margin:0;font-size:14px;line-height:1.55;color:var(--ink3)}
.card .btn{min-height:46px;padding:0 16px;font-size:11px;margin-top:auto}
.noimg{display:flex;align-items:center;justify-content:center;height:100%;background:radial-gradient(circle at 50% 45%,#2a1d1a,#070404 70%)}
.noimg img{width:46%!important;height:auto!important;object-fit:contain!important}
.promise{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:72px var(--pad);text-align:center;border-top:1px solid var(--line)}
.promise strong{display:block;font-size:20px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.promise span{color:var(--ink3);font-size:15px}

/* PRODUCT */
.crumbs{padding:22px var(--pad) 0;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3)}
.crumbs a:hover{color:var(--ink)}
.pdp{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);padding:28px var(--pad) 80px;align-items:start}
.gallery .main{position:relative;aspect-ratio:4/5;overflow:hidden;background:#0d0909}
.gallery .main img{width:100%;height:100%;object-fit:cover}
.gallery .main .pnav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(5,3,3,.55);color:#fff;font-size:28px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.gallery .main .pnav:hover{background:rgba(5,3,3,.85)}
.gallery .main .pnav.prev{left:12px}.gallery .main .pnav.next{right:12px}
.thumbs{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}
.thumbs button{width:76px;aspect-ratio:4/5;padding:0;border:1px solid transparent;background:#111;cursor:pointer;overflow:hidden}
.thumbs button[aria-current=true]{border-color:var(--rose)}
.thumbs img{width:100%;height:100%;object-fit:cover}
.pinfo{position:sticky;top:110px;display:flex;flex-direction:column;gap:22px}
.pinfo h1{margin:0;font-weight:800;text-transform:uppercase;font-size:clamp(34px,3.6vw,56px);line-height:.95}
.pinfo .price{font-size:24px;font-weight:600;color:var(--rose2)}
.stock{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:600}
.stock i{width:9px;height:9px;border-radius:50%;background:#ff4a3a;box-shadow:0 0 10px #ff4a3a}
.opt{display:flex;flex-direction:column;gap:10px}
.opt .vals{display:flex;flex-wrap:wrap;gap:8px}
.opt .vals button{min-height:44px;min-width:52px;padding:0 14px;border:1px solid rgba(255,255,255,.3);background:transparent;cursor:pointer;font-size:13px;letter-spacing:.08em}
.opt .vals button.sw{min-width:0;width:44px;height:44px;padding:4px;border-radius:50%;border-color:rgba(255,255,255,.25)}
.opt .vals button.sw span{display:block;width:100%;height:100%;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.opt .vals button.sw[aria-pressed=true]{background:transparent;border:2px solid var(--rose2)}
.opt .vals button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--bg)}
.qty{display:flex;align-items:center;border:1px solid rgba(255,255,255,.3);width:max-content}
.qty button{width:46px;height:46px;background:transparent;border:0;cursor:pointer;font-size:20px}
.qty input{width:52px;height:46px;text-align:center;background:transparent;border:0;-moz-appearance:textfield}
.pdesc{color:var(--ink2);margin:0}
.feat{margin:0;padding-left:18px;color:var(--ink2)}
.small{font-size:13px;color:var(--ink3);line-height:1.6}
.ainote{font-size:12px;color:var(--ink3);border-left:2px solid var(--rose);padding-left:10px}
.details{border-top:1px solid var(--line)}
.details details{border-bottom:1px solid var(--line)}
.details summary{cursor:pointer;padding:16px 0;font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;list-style:none;display:flex;justify-content:space-between}
.details summary::after{content:'+'}
.details details[open] summary::after{content:'–'}
.details .in{padding:0 0 18px;color:var(--ink2);font-size:15px}

/* CART / FORMS */
.page{padding:48px var(--pad) 96px;max-width:1280px;margin:0 auto}
.cartgrid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:48px;align-items:start}
.line{display:grid;grid-template-columns:96px 1fr auto;gap:18px;padding:18px 0;border-bottom:1px solid var(--line);align-items:center}
.line img{width:96px;aspect-ratio:4/5;object-fit:cover}
.line h3{margin:0;font-size:14px;letter-spacing:.12em;text-transform:uppercase}
.line .meta{font-size:13px;color:var(--ink3)}
.line .rm{background:none;border:0;color:var(--ink3);cursor:pointer;text-decoration:underline;font-size:13px;padding:6px 0}
.summary{border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;gap:14px;position:sticky;top:110px}
.summary .r{display:flex;justify-content:space-between}
.summary .tot{font-size:20px;font-weight:700;border-top:1px solid var(--line);padding-top:14px}
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form .full{grid-column:1/-1}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--ink2)}
.field input,.field select,.field textarea{min-height:50px;padding:10px 14px;background:#0d0909;border:1px solid rgba(255,255,255,.22);color:var(--ink)}
.field textarea{min-height:110px}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--rose);outline:none}
.err{color:#ff8a7a;font-size:14px}
.ok{color:#9be3b0}

/* LEGAL */
.legal{max-width:880px;margin:0 auto;padding:56px var(--pad) 96px}
.legal h1{margin:0 0 8px}
.legal h2{font-size:20px;text-transform:uppercase;letter-spacing:.06em;margin:40px 0 10px}
.legal h3{font-size:16px;margin:24px 0 6px}
.legal p,.legal li{color:var(--ink2);font-size:16px}
.legal a{text-decoration:underline}
.langtabs{display:flex;gap:8px;margin:20px 0 10px}
.langtabs a{padding:8px 14px;border:1px solid var(--line);font-size:12px;letter-spacing:.2em}
.legal .box{border:1px solid var(--line);padding:20px 24px;margin:20px 0}
.legal table{border-collapse:collapse;width:100%}
.legal td,.legal th{border-bottom:1px solid var(--line);padding:8px 6px;text-align:left;color:var(--ink2);font-size:15px;vertical-align:top}

/* responsive */
@media (max-width:1100px){
  .mainnav{column-gap:20px}
  .site-head{flex-wrap:wrap;row-gap:4px}
}
@media (max-width:860px){
  body{font-size:16px}
  .site-head{padding:10px 14px;gap:4px}
  .site-head .left{gap:8px;width:100%;justify-content:space-between}
  .logo-anim{width:54px}
  .socials a{min-width:32px}
  .socials svg{width:16px;height:16px}
  .mainnav{width:100%;justify-content:space-between;column-gap:8px}
  .mainnav a{font-size:10px;letter-spacing:.12em;padding:10px 0}
  .bag{padding:6px 8px!important;font-size:10px}
  .bag-m{display:inline-flex!important}
  .bag-d{display:none!important}
  .marq{font-size:15px;gap:18px}
  .marq img{height:11px}
  .marquee{padding:8px 0}
  .photohero{height:92svh;min-height:540px}
  .photohero .bg img{object-position:50% 12%}
  .split{flex-direction:column}
  .split > .media{flex:none;min-height:70svh}
  .split > .copy{flex:none}
  .wonder .media{order:2;min-height:0!important;aspect-ratio:16/9}
  .store-teaser .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wonder .copy{order:1}
  .soon .bgimg{width:100%;right:0;top:0;height:100%;max-width:none}
  .soon .bgimg img{opacity:.3}
  .soon .beat{width:320px;height:320px}
  .vgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vgrid div:last-child{grid-column:1/-1}
  .vgrid div:last-child img{aspect-ratio:4/3}
  .shows .d{width:auto}
  .book{padding:22px}
  .shop-hero{grid-template-columns:1fr;min-height:78svh}
  .shop-hero > img:not(.keep){display:none}
  .catbar{top:96px;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding:12px 14px}
  .catbar button{flex:none}
  .cat{padding:48px 16px 24px}
  .cat-head{grid-template-columns:1fr}
  .cat-top{grid-template-columns:1fr}
  .cat-top .cat-banner{width:100%;height:auto;aspect-ratio:4/5;max-height:none}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 12px}
  .card h3{font-size:12px;letter-spacing:.08em}
  .card .row{flex-direction:column;gap:2px}
  .card p{font-size:13px}
  .card .btn{font-size:10px;letter-spacing:.14em;padding:0 8px}
  .promise{grid-template-columns:1fr;padding:48px 20px}
  .pdp{grid-template-columns:1fr;padding:16px 14px 64px}
  .pinfo{position:static}
  .cartgrid{grid-template-columns:1fr}
  .summary{position:static}
  .form{grid-template-columns:1fr}
  .line{grid-template-columns:72px 1fr;}
  .line img{width:72px}
  .line > :last-child{grid-column:2}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .strobe{display:none}
  .cyc:first-child{opacity:1}
  html.vt-armed .vt:not(.in) .vt-a,html.vt-armed .reveal:not(.in){opacity:1;transform:none}
}

/* ---------- opening intro (once per visit) ---------- */
.intro{display:none}
.playintro .intro{display:flex;position:fixed;inset:0;z-index:9999;background:#000;align-items:center;justify-content:center;animation:introOut .7s cubic-bezier(.6,0,.4,1) 2.7s forwards;cursor:pointer}
.playintro body{overflow:hidden}
.intro .in{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px;width:min(520px,72vw)}
.intro .im{width:62%;height:auto;opacity:0;filter:brightness(.2) drop-shadow(0 0 0 rgba(232,170,146,0));animation:introMark 2.4s cubic-bezier(.2,.8,.2,1) .15s forwards}
.intro .iw{width:100%;height:auto;opacity:0;animation:introWord 1.4s cubic-bezier(.2,.8,.2,1) .9s forwards}
.intro .flare{position:absolute;left:50%;top:38%;width:160%;height:2px;transform:translate(-50%,-50%) scaleX(0);background:linear-gradient(90deg,transparent,#fff 45%,#F6C9B4 50%,#fff 55%,transparent);box-shadow:0 0 24px 6px rgba(255,214,196,.55);opacity:0;animation:introFlare 1.1s ease-out .55s forwards}
@keyframes introMark{0%{opacity:0;transform:scale(1.9);filter:brightness(.2) blur(6px)}35%{opacity:1;transform:scale(1);filter:brightness(2.4) blur(0) drop-shadow(0 0 40px rgba(246,201,180,.9))}60%{filter:brightness(1.1) drop-shadow(0 0 18px rgba(232,170,146,.55))}100%{opacity:1;transform:scale(1.04);filter:brightness(1) drop-shadow(0 0 10px rgba(232,170,146,.35))}}
@keyframes introWord{0%{opacity:0;letter-spacing:.4em;transform:translateY(14px);filter:blur(8px)}100%{opacity:1;transform:none;filter:none}}
@keyframes introFlare{0%{opacity:0;transform:translate(-50%,-50%) scaleX(0)}40%{opacity:1;transform:translate(-50%,-50%) scaleX(1)}100%{opacity:0;transform:translate(-50%,-50%) scaleX(1.2)}}
@keyframes introOut{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.25);visibility:hidden}}
.playintro .site-head *,.playintro .hero *{animation-play-state:paused!important}
.hadintro .strobe{display:none}
.card .avail .cust{font-size:12px;color:var(--rose2);letter-spacing:.02em}
.gallery .main .splitbot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.setbox{border:1px solid rgba(232,170,146,.35);padding:16px;display:flex;flex-direction:column;gap:12px;background:rgba(232,170,146,.04)}
.setbox .setrow{display:flex;gap:14px;align-items:center}
.setbox .setrow img{width:84px;aspect-ratio:4/5;object-fit:cover;display:block}
.setbox h3{font-size:13px;letter-spacing:.12em;text-transform:uppercase}

@media (max-width:640px){.legal table,.legal tbody,.legal tr,.legal td{display:block;width:auto}.legal tr:first-child{display:none}.legal tr{border-bottom:1px solid var(--line);padding:10px 0}.legal td{border:0;padding:3px 0;overflow-wrap:anywhere}.legal td::before{content:attr(data-label);display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3)}}
.legal p,.legal li,.legal td{overflow-wrap:anywhere}

/* ---------- speed & mobile (28 Oct 2026, after audit) ---------- */
/* shorter opening intro, hero visible right after */
.playintro .intro{animation:introOut .5s cubic-bezier(.6,0,.4,1) 1.3s forwards}
.intro .im{animation-duration:1.4s;animation-delay:.05s}
.intro .iw{animation-duration:.8s;animation-delay:.35s}
.intro .flare{animation-duration:.8s;animation-delay:.25s}
@keyframes avWord{0%{opacity:0;letter-spacing:.35em}100%{opacity:1;letter-spacing:0}}
.av-word{animation:avWord 1.1s cubic-bezier(.2,.8,.2,1) .2s both}
.av-tag{animation:avFade 1s ease-out .9s both}
/* film grain only over the hero, not the whole page */
.grain{display:none}
/* colour-shift photos: static look instead of re-filtering every frame */
.filt{animation:none;filter:contrast(1.12) saturate(1.1)}
/* pause looping animations that are off screen (toggled by site.js) */
.offscreen,.offscreen *{animation-play-state:paused!important}
/* mobile: video visible, no heavy blur, bigger tap targets, readable text */
@media (max-width:860px){
  .site-head{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(5,3,3,.96)}
  .wonder .media{align-self:stretch;width:100%}
  .socials a{min-width:40px;min-height:44px}
  .mainnav a{font-size:12px;padding:14px 0}
  .marq .w,.neon{animation:none;text-shadow:0 0 4px #fff,0 0 18px rgba(255,255,255,.6)}
}
.legalnav{font-size:12px}.legalnav a{display:inline-block;padding:12px 4px}
.copy-line{font-size:12px}
.site-foot .mgmt a{display:inline-block;padding:10px 0}
.chk input{width:22px;height:22px}
.chk{min-height:44px}
picture{display:contents}
/* V-grid photos: flicker back on, and on phones all five small in one row */
.vgrid .filt{animation:avFilt 11s ease-in-out infinite}
.vgrid .glitch:nth-child(2) .filt{animation-delay:-2s}.vgrid .glitch:nth-child(3) .filt{animation-delay:-4s}.vgrid .glitch:nth-child(4) .filt{animation-delay:-6s}.vgrid .glitch:nth-child(5) .filt{animation-delay:-8s}
@media (max-width:860px){
  .vgrid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .vgrid div:last-child{grid-column:auto}
  .vgrid div:last-child img,.vgrid img{aspect-ratio:2/3}
}
.vgrid img{height:auto;display:block}
/* cookie consent */
.avc{position:fixed;left:0;right:0;bottom:0;z-index:90;padding:0 16px calc(16px + env(safe-area-inset-bottom,0px));pointer-events:none}
.avc-in{pointer-events:auto;max-width:720px;margin:0 auto;background:rgba(11,6,5,.96);border:1px solid rgba(200,138,116,.45);border-radius:14px;padding:18px 20px;box-shadow:0 10px 40px rgba(0,0,0,.6);display:grid;gap:10px}
.avc-k{margin:0;font-weight:600;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--rose2)}
.avc-t{margin:0;font-size:15px;line-height:1.5;color:var(--ink)}
.avc-t a{color:var(--rose2)}
.avc-b{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.avc-b button{font:600 13px/1 Jost,system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;padding:13px 20px;border-radius:40px;cursor:pointer;min-width:140px}
.avc-no{background:transparent;color:var(--ink);border:1px solid rgba(244,236,232,.5)}
.avc-yes{background:var(--rose);color:#050303;border:1px solid var(--rose)}
@media (max-width:520px){.avc-b button{flex:1}}
