:root {
  --black: #030408;
  --ink: #080814;
  --white: #f5f7ff;
  --muted: #9ca2bc;
  --cyan: #25ffe1;
  --blue: #2184ff;
  --violet: #7637ff;
  --pink: #ff28ef;
  --acid: #d9ff57;
  --glow: 0 0 16px rgba(37,255,225,.52), 0 0 48px rgba(97,44,255,.25);
  --mx: 50%;
  --my: 40%;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-snap-type: y proximity; background: var(--black); }
body { margin: 0; color: var(--white); background: var(--black); font-family: Arial, Helvetica, sans-serif; overflow-x: hidden; }
body::selection { background: var(--cyan); color: var(--black); }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
a { color: inherit; text-decoration: none; }

.noise { position: fixed; inset: 0; z-index: 100; pointer-events: none; opacity: .16; mix-blend-mode: soft-light; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }
#cursorGlow { position: fixed; z-index: 0; width: 34rem; aspect-ratio: 1; left: var(--mx); top: var(--my); transform: translate(-50%,-50%); pointer-events: none; background: radial-gradient(circle, rgba(28,187,255,.11), rgba(147,38,255,.045) 38%, transparent 70%); }
#signalCanvas { position: fixed; inset: 0; z-index: 50; pointer-events: none; width: 100%; height: 100%; }

.topbar { position: fixed; z-index: 90; top: 0; left: 0; right: 0; height: 82px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 clamp(18px,4vw,68px); border-bottom: 1px solid rgba(255,255,255,.11); background: linear-gradient(to bottom, rgba(3,4,8,.84), rgba(3,4,8,.34)); backdrop-filter: blur(14px); }
.brand { justify-self: start; display: inline-flex; align-items: center; gap: 12px; font: 800 .78rem/1 Arial; letter-spacing: .18em; }
.brand-mark { display: grid; place-items: center; width: 34px; height: 34px; border: 2px solid transparent; border-radius: 9px; background: linear-gradient(var(--black),var(--black)) padding-box, linear-gradient(145deg,var(--pink),var(--blue),var(--cyan)) border-box; color: var(--cyan); font-size: 1rem; box-shadow: var(--glow); transform: skew(-7deg); }
.nav { display: flex; gap: clamp(20px,3vw,46px); }
.nav a { position: relative; color: #b2b6c9; font: 700 .72rem/1 Arial; letter-spacing: .16em; text-transform: uppercase; transition: color .25s; }
.nav a::after { content:""; position:absolute; height:1px; left:50%; right:50%; bottom:-8px; background:var(--cyan); transition:.25s; box-shadow:0 0 8px var(--cyan); }
.nav a:hover { color: var(--white); }
.nav a:hover::after { left:0; right:0; }
.top-actions { justify-self: end; display: flex; align-items: center; gap: 8px; }
.pill, .sound-btn { height: 38px; border: 1px solid rgba(255,255,255,.24); color: var(--white); background: rgba(3,4,8,.6); display: inline-flex; align-items:center; justify-content:center; font-weight: 900; font-size: .72rem; letter-spacing: .12em; cursor:pointer; }
.pill { padding: 0 18px; border-radius: 99px; }
.pill-x { width:38px; padding:0; }
.pill-buy { border-color: var(--cyan); color: var(--black); background: var(--cyan); box-shadow: 0 0 24px rgba(37,255,225,.3); }
.sound-btn { gap:9px; border:0; padding:0 6px; color:#b6bbce; }
.sound-bars { display:flex; align-items:center; gap:2px; height:18px; }
.sound-bars i { display:block; width:2px; height:6px; background:currentColor; }
.sound-bars i:nth-child(2){height:12px}.sound-bars i:nth-child(3){height:8px}
.sound-btn[aria-pressed="true"] { color:var(--cyan); }
.sound-btn[aria-pressed="true"] i { animation: eq .72s infinite alternate ease-in-out; }
.sound-btn[aria-pressed="true"] i:nth-child(2){animation-delay:-.3s}.sound-btn[aria-pressed="true"] i:nth-child(3){animation-delay:-.5s}
@keyframes eq { to { height:18px; } }

.channel-dial { position:fixed; right:clamp(14px,2vw,36px); top:50%; transform:translateY(-50%); z-index:70; display:flex; flex-direction:column; align-items:center; gap:13px; }
.dial-label { font:700 .62rem/1 monospace; color:#73788d; transform:rotate(90deg); margin-bottom:13px; }
.dial-dot { position:relative; width:9px; height:9px; border:1px solid rgba(255,255,255,.42); border-radius:50%; transition:.3s; }
.dial-dot::after { content:attr(data-label); position:absolute; right:18px; top:-3px; opacity:0; font:700 .62rem/1 monospace; color:var(--cyan); transition:.2s; }
.dial-dot:hover::after,.dial-dot.active::after{opacity:1}.dial-dot.active{background:var(--cyan);box-shadow:0 0 15px var(--cyan);transform:scale(1.35)}

.chapter { min-height:100svh; position:relative; scroll-snap-align:start; overflow:hidden; }
.hero { min-height:100svh; display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.95fr); align-items:center; gap:2vw; padding:120px clamp(24px,7vw,120px) 90px; isolation:isolate; }
.hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(3,4,8,.96) 0%,rgba(3,4,8,.7) 42%,rgba(3,4,8,.14) 78%),linear-gradient(0deg,var(--black),transparent 26%); }
.hero-bg,.stage-bg { position:absolute; inset:-4%; z-index:-2; background:url('assets/neon-alley.png') center/cover no-repeat; filter:saturate(1.1) contrast(1.04); transform:translate3d(var(--px,0),var(--py,0),0) scale(1.06); transition:transform .16s linear; }
.hero-copy { width:100%; max-width:780px; min-width:0; z-index:2; }
.eyebrow { margin:0 0 22px; color:var(--cyan); font:800 clamp(.7rem,1vw,.84rem)/1.4 monospace; letter-spacing:.17em; text-transform:uppercase; }
.live-dot { display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--pink);box-shadow:0 0 16px var(--pink);animation:pulse 1.2s infinite;margin-right:8px; }
@keyframes pulse { 50%{opacity:.3;transform:scale(.7)} }
h1,h2,h3,p { position:relative; }
h1 { margin:0; font:900 clamp(4.8rem,11.2vw,10.7rem)/.74 Arial Black,Impact,sans-serif; letter-spacing:-.09em; text-transform:uppercase; text-shadow:0 8px 42px rgba(0,0,0,.6); }
h1 span { color:transparent; -webkit-text-stroke:2px var(--white); filter:drop-shadow(0 0 15px rgba(55,178,255,.38)); }
.hero-sub { max-width:520px; margin:32px 0; font:600 clamp(1rem,1.35vw,1.3rem)/1.5 Arial; color:#d9dcee; }
.hero-cta { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.cta,.ghost-btn,.receipt-btn { min-height:58px; border-radius:3px; display:inline-flex; align-items:center; justify-content:space-between; gap:34px; padding:0 22px; border:1px solid var(--cyan); font-weight:900; font-size:.78rem; letter-spacing:.11em; cursor:pointer; transition:transform .2s,box-shadow .2s; }
.cta,.receipt-btn { color:#031112;background:linear-gradient(120deg,var(--cyan),#78a7ff);box-shadow:0 0 30px rgba(37,255,225,.2); }
.cta b,.receipt-btn b { font-size:1.3rem; }
.ghost-btn { background:rgba(4,5,13,.62);color:var(--white);border-color:rgba(255,255,255,.3); }
.cta:hover,.ghost-btn:hover,.receipt-btn:hover { transform:translateY(-3px);box-shadow:0 0 35px rgba(37,255,225,.32); }
.character-wrap { position:relative; justify-self:center; width:min(44vw,650px); aspect-ratio:1; display:grid; place-items:center; cursor:grab; touch-action:none; }
.character-wrap:active { cursor:grabbing; }
.character { width:100%; height:100%; object-fit:cover; border-radius:50%; mix-blend-mode:screen; filter:saturate(1.22) contrast(1.08) drop-shadow(0 0 22px rgba(40,125,255,.38)); user-select:none; pointer-events:none; transform:rotate(var(--tilt,0deg)) scale(var(--char-scale,1)); transition:filter .4s,transform .16s; }
.character-wrap.awake .character { animation:characterWake 1.3s cubic-bezier(.16,.9,.2,1);filter:saturate(1.7) contrast(1.16) drop-shadow(0 0 50px rgba(255,35,241,.55)); }
@keyframes characterWake { 0%{transform:scale(.7) rotate(-16deg);filter:brightness(3)} 45%{transform:scale(1.12) rotate(5deg)} 100%{transform:scale(1)} }
.character-halo { position:absolute; width:76%;height:76%;border-radius:50%;border:1px solid rgba(43,244,255,.37);box-shadow:inset 0 0 50px rgba(0,209,255,.16),0 0 80px rgba(118,55,255,.19);animation:halo 8s linear infinite; }
.character-halo::before,.character-halo::after{content:"";position:absolute;inset:-13%;border-radius:50%;border:1px dashed rgba(255,42,242,.36)}
.character-halo::after{inset:8%;border-color:rgba(37,255,225,.2);animation:halo 5s linear reverse infinite}
@keyframes halo{to{transform:rotate(360deg)}}
.drag-tag { position:absolute; left:3%; top:20%; border:1px solid var(--pink); background:#0a0713; color:var(--pink); border-radius:99px; padding:8px 12px; font:800 .62rem/1 monospace;letter-spacing:.08em; transform:rotate(-8deg);box-shadow:0 0 18px rgba(255,40,239,.25);cursor:pointer; }
.mood-readout { position:absolute;right:0;bottom:15%;padding:11px 14px;border-left:2px solid var(--cyan);background:rgba(3,4,8,.78);backdrop-filter:blur(8px); }
.mood-readout span{display:block;color:#767b94;font:700 .58rem monospace;letter-spacing:.16em}.mood-readout strong{display:block;margin-top:3px;color:var(--cyan);font:800 .74rem monospace;letter-spacing:.08em}
.hero-orbit { position:absolute;z-index:-1;border:1px solid rgba(255,255,255,.1);border-radius:50%;pointer-events:none; }
.orbit-a { width:52vw;aspect-ratio:1;right:-20vw;top:8%; }.orbit-b{width:20vw;aspect-ratio:1;left:37%;bottom:-13vw;border-style:dashed;}
.ticker { position:absolute;bottom:0;left:0;right:0;height:38px;overflow:hidden;white-space:nowrap;background:var(--pink);color:#07040c;display:flex;align-items:center;transform:rotate(-.55deg) scale(1.01);font:900 .75rem monospace;letter-spacing:.13em; }
.ticker div { min-width:max-content;animation:ticker 22s linear infinite; }
@keyframes ticker{to{transform:translateX(-50%)}}
.scroll-cue { position:absolute;right:7vw;bottom:58px;z-index:5;font:700 .67rem monospace;letter-spacing:.13em;color:#c9cce0}.scroll-cue span{display:inline-block;color:var(--cyan);font-size:1.2rem;animation:bounce 1.2s infinite}@keyframes bounce{50%{transform:translateY(5px)}}

.section-number { position:absolute;left:clamp(20px,4vw,70px);top:110px;color:#72778d;font:700 .7rem monospace;letter-spacing:.14em;writing-mode:vertical-rl; }
.origin { padding:clamp(130px,14vw,190px) clamp(34px,9vw,150px) 100px;background:radial-gradient(circle at 20% 38%,rgba(91,26,255,.14),transparent 34%),linear-gradient(180deg,#030408,#070611 52%,#030408); }
.origin::before { content:"";position:absolute;inset:0;opacity:.22;background:linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.08) 50%,transparent 50.2%);pointer-events:none; }
.origin-grid { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.85fr);gap:clamp(40px,8vw,120px);align-items:center; }
h2 { margin:0;font:900 clamp(3.2rem,7vw,7.5rem)/.85 Arial Black,Impact,sans-serif;letter-spacing:-.075em;text-transform:uppercase; }
h2 em { font-style:normal;color:transparent;-webkit-text-stroke:1.5px var(--pink);text-shadow:0 0 26px rgba(255,40,239,.28); }
.story-card { position:relative;padding:clamp(30px,4vw,54px);border:1px solid rgba(255,255,255,.14);background:linear-gradient(145deg,rgba(18,17,36,.82),rgba(4,5,12,.82));box-shadow:20px 20px 0 rgba(39,20,76,.38),0 0 60px rgba(84,34,255,.1);transform:rotate(1.5deg); }
.story-card p { color:#c7cada;font-size:1rem;line-height:1.7;margin:0 0 17px; }.story-card strong{color:var(--white)}
.chapter-kicker { color:var(--cyan)!important;font:800 .68rem monospace!important;letter-spacing:.17em; }
.tape { position:absolute;width:90px;height:26px;background:rgba(117,245,255,.28);border:1px solid rgba(255,255,255,.24);box-shadow:0 0 20px rgba(37,255,225,.12)}.tape-one{top:-10px;left:18%;transform:rotate(-5deg)}.tape-two{bottom:-10px;right:13%;transform:rotate(7deg)}
.redact-btn { border:0;border-bottom:1px solid var(--pink);padding:8px 0;background:none;color:var(--pink);font:800 .68rem monospace;letter-spacing:.13em;cursor:pointer; }
.story-card blockquote { margin:22px 0 0;padding:16px 0 0;border-top:1px dashed rgba(255,255,255,.2);color:var(--white);font:800 1.08rem/1.5 monospace; }
.memory-mixer { margin-top:90px; }
.mixer-head { display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:18px; }
.mixer-head span{display:block;color:var(--pink);font:800 .7rem monospace;letter-spacing:.15em}.mixer-head strong{display:block;font-size:1.1rem;margin-top:7px}.mixer-head button{border:1px solid rgba(255,255,255,.24);background:transparent;color:var(--white);padding:12px 16px;font:800 .67rem monospace;letter-spacing:.1em;cursor:pointer}
.memory-track { display:grid;grid-template-columns:repeat(4,1fr);gap:10px; }
.memory-card { min-height:120px;text-align:left;border:1px solid rgba(255,255,255,.13);background:#090914;color:var(--white);padding:22px;cursor:pointer;transition:.25s; }
.memory-card span{display:block;color:#73788d;font:700 .82rem monospace}.memory-card b{display:block;margin-top:30px;font:900 .86rem Arial;letter-spacing:.12em}.memory-card:hover,.memory-card.active{transform:translateY(-6px);border-color:var(--cyan);background:linear-gradient(145deg,rgba(31,31,69,.7),rgba(7,8,16,.9));box-shadow:0 12px 30px rgba(21,114,255,.12)}
.memory-output { margin:18px 0 0;color:var(--cyan);font:700 clamp(1rem,2vw,1.45rem)/1.4 monospace;min-height:2em; }

.closet { padding:clamp(130px,13vw,180px) clamp(34px,8vw,130px) 100px;background:#04050a; }
.closet-layout { display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(35px,7vw,100px);align-items:center; }
.closet-copy>p:not(.eyebrow){max-width:470px;color:#aeb2c6;line-height:1.65}
.wardrobe { margin-top:34px;border-top:1px solid rgba(255,255,255,.14); }
.wardrobe-btn { width:100%;display:flex;align-items:center;gap:18px;padding:18px 2px;border:0;border-bottom:1px solid rgba(255,255,255,.14);background:transparent;color:#858a9f;text-align:left;font:900 .8rem Arial;letter-spacing:.1em;cursor:pointer;transition:.25s; }
.wardrobe-btn span{font:700 .65rem monospace;color:#585d73}.wardrobe-btn:hover,.wardrobe-btn.active{color:var(--cyan);padding-left:14px;text-shadow:0 0 12px rgba(37,255,225,.4)}
.closet-stage { position:relative;min-height:660px;border:1px solid rgba(255,255,255,.15);overflow:hidden;isolation:isolate;clip-path:polygon(5% 0,100% 0,100% 93%,94% 100%,0 100%,0 7%); }
.closet-stage::after { content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(2,3,8,.35),rgba(2,3,8,.92)); }
.stage-copy { position:absolute;z-index:4;left:7%;right:7%;bottom:7%; }.stage-copy span{font:800 .68rem monospace;letter-spacing:.14em;color:var(--cyan)}.stage-copy h3{margin:9px 0;font:900 clamp(2rem,4vw,4.5rem)/.88 Arial Black;letter-spacing:-.06em;max-width:700px}.stage-copy p{margin:16px 0 0;max-width:520px;color:#d3d6e5;line-height:1.5;font-weight:600}
.artifact { position:absolute;z-index:3;display:grid;place-items:center;filter:drop-shadow(0 0 20px currentColor);transition:.6s cubic-bezier(.16,1,.3,1);opacity:.18;transform:scale(.72) rotate(-12deg); }
.artifact-phone{right:11%;top:10%;width:185px;height:315px;border:8px solid currentColor;border-radius:32px;color:var(--cyan);background:linear-gradient(145deg,rgba(30,104,255,.24),rgba(255,36,247,.15));}.artifact-phone::before{content:"";width:50px;height:8px;border-radius:8px;background:currentColor;position:absolute;top:12px}.artifact-phone span{width:54px;height:54px;border-radius:50%;border:4px solid currentColor;box-shadow:35px 0 0 -4px var(--blue),0 35px 0 -4px var(--pink)}
.artifact-cross{left:10%;top:18%;font:900 13rem/1 serif;color:var(--pink)}
.artifact-phones{right:8%;top:18%;font:900 10rem/1 Arial;color:#7d63ff;letter-spacing:-.4em;transform-origin:center}
.artifact-beanie{left:13%;top:11%;font:900 17rem/1 Arial;color:var(--blue);transform:rotate(-15deg)}
.closet-stage[data-mode="phone"] .artifact-phone,.closet-stage[data-mode="cross"] .artifact-cross,.closet-stage[data-mode="phones"] .artifact-phones,.closet-stage[data-mode="beanie"] .artifact-beanie{opacity:1;transform:scale(1) rotate(5deg)}

.route { min-height:1100px;padding:clamp(130px,13vw,185px) clamp(34px,7vw,110px) 100px;background:radial-gradient(circle at 70% 48%,rgba(37,101,255,.16),transparent 30%),radial-gradient(circle at 67% 51%,rgba(255,40,239,.12),transparent 48%),#030408; }
.route-intro { max-width:760px;position:relative;z-index:3}.route-intro>p:last-child{max-width:600px;color:#aeb2c6;line-height:1.6}
.orbit-map { position:absolute;width:min(62vw,850px);aspect-ratio:1;right:-2%;top:170px;touch-action:none;user-select:none; }
.orbit-lines { position:absolute;inset:7%;border:1px solid rgba(255,255,255,.12);border-radius:50%;animation:halo 48s linear infinite; }.orbit-lines::before,.orbit-lines::after{content:"";position:absolute;border-radius:50%;border:1px dashed rgba(72,118,255,.3);inset:14%}.orbit-lines::after{inset:31%;border-color:rgba(255,40,239,.25)}
.orbit-lines i{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 15px var(--cyan)}.orbit-lines i:nth-child(1){left:8%;top:23%}.orbit-lines i:nth-child(2){right:4%;top:44%;background:var(--pink);box-shadow:0 0 15px var(--pink)}.orbit-lines i:nth-child(3){bottom:7%;left:38%}.orbit-lines i:nth-child(4){top:5%;left:58%;background:var(--violet)}
.route-core { position:absolute;inset:27%;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14%;background:radial-gradient(circle,rgba(18,20,41,.96),rgba(4,5,11,.92));border:1px solid rgba(37,255,225,.4);box-shadow:inset 0 0 45px rgba(32,95,255,.18),0 0 70px rgba(37,255,225,.08); }.route-core>span{color:var(--cyan);font:800 .62rem monospace;letter-spacing:.15em}.route-core h3{margin:9px 0;font:900 clamp(1.6rem,3vw,3rem)/.9 Arial Black}.route-core p{margin:7px 0;color:#b9bdcf;font-size:.88rem;line-height:1.45;max-width:260px}.route-status{display:flex;align-items:center;gap:7px;margin-top:9px;color:#84899e;font:700 .58rem monospace;letter-spacing:.1em}.route-status i{width:6px;height:6px;border-radius:50%;background:var(--pink);box-shadow:0 0 9px var(--pink)}
.orbit-node { position:absolute;width:98px;aspect-ratio:1;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:#070811;color:var(--white);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;z-index:5;box-shadow:0 0 0 8px rgba(3,4,8,.7);transition:.3s; }.orbit-node small{color:#73788c;font:700 .58rem monospace}.orbit-node span{font:900 .72rem/1.05 Arial;letter-spacing:.08em;margin-top:4px}.orbit-node:hover,.orbit-node.active{border-color:var(--cyan);color:var(--cyan);box-shadow:0 0 0 8px rgba(3,4,8,.8),0 0 28px rgba(37,255,225,.35);transform:scale(1.08)}
.node-1{left:8%;top:20%}.node-2{right:3%;top:29%}.node-3{right:17%;bottom:4%}.node-4{left:4%;bottom:16%}
.drag-map { position:absolute;bottom:2%;left:30%;font:700 .62rem monospace;letter-spacing:.14em;color:#666b7f; }

.signal { min-height:100svh;display:grid;place-items:center;padding:140px 26px 95px;isolation:isolate;background:#020307; }
.signal-bg { position:absolute;z-index:-2;inset:0;background:url('assets/neon-alley.png') center/cover no-repeat;filter:saturate(1.3) brightness(.48); }
.signal::after { content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at center,rgba(3,4,8,.35),rgba(3,4,8,.95) 75%); }
.signal-panel { text-align:center;max-width:900px;width:100%; }.signal-panel h2 span{color:var(--cyan);text-shadow:0 0 28px rgba(37,255,225,.27)}.signal-panel>p:not(.eyebrow){max-width:560px;margin:25px auto;color:#b4b8ca;line-height:1.6}.receipt-btn{margin:13px auto 36px;}
.receipt { position:relative;width:min(100%,470px);margin:0 auto;background:#e9f6f5;color:#0a0c10;padding:30px 34px 24px;transform:rotate(-1deg);box-shadow:0 24px 90px rgba(0,0,0,.5);clip-path:polygon(0 0,100% 0,100% 96%,96% 100%,92% 96%,88% 100%,84% 96%,80% 100%,76% 96%,72% 100%,68% 96%,64% 100%,60% 96%,56% 100%,52% 96%,48% 100%,44% 96%,40% 100%,36% 96%,32% 100%,28% 96%,24% 100%,20% 96%,16% 100%,12% 96%,8% 100%,4% 96%,0 100%); }.receipt.printing{animation:print .65s cubic-bezier(.16,1,.3,1)}@keyframes print{0%{transform:translateY(-40px) scaleY(.3);opacity:0}100%{transform:rotate(-1deg)}}
.receipt-top { padding-bottom:14px;border-bottom:2px dashed #353a40;font:800 .7rem monospace;letter-spacing:.15em}.receipt p{font:900 clamp(1.2rem,3vw,2rem)/1.05 monospace;margin:24px 0}.receipt small{font:700 .58rem monospace;letter-spacing:.15em}.barcode{height:38px;margin:20px 0;background:repeating-linear-gradient(90deg,#090b0e 0 2px,transparent 2px 5px,#090b0e 5px 9px,transparent 9px 11px)}
.final-actions { display:flex;justify-content:center;gap:20px;margin-top:34px}.final-actions a{color:var(--pink);font:900 .72rem monospace;letter-spacing:.1em;border-bottom:1px solid;padding-bottom:5px}
footer { position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:25px clamp(20px,4vw,70px);border-top:1px solid rgba(255,255,255,.11);color:#777c90;font:700 .62rem monospace;letter-spacing:.12em}.signal footer button{border:0;background:transparent;color:#a9aec0;font:inherit;cursor:pointer}

.toast { position:fixed;z-index:120;left:50%;bottom:30px;transform:translate(-50%,25px);padding:12px 18px;border:1px solid var(--cyan);background:#070a12;color:var(--cyan);box-shadow:var(--glow);font:800 .68rem monospace;letter-spacing:.13em;opacity:0;pointer-events:none;transition:.3s}.toast.show{opacity:1;transform:translate(-50%,0)}
.reveal { opacity:0;transform:translateY(35px);transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1); }.reveal.visible{opacity:1;transform:none}

@media (max-width: 900px) {
  .topbar{grid-template-columns:1fr auto;height:70px;padding:0 16px}.nav,.sound-label{display:none}.top-actions{gap:6px}.sound-btn{width:34px}.pill{height:35px}.hero{grid-template-columns:1fr;padding:120px 22px 85px;text-align:center}.hero-copy{margin:auto}.hero-sub{margin:24px auto}.hero-cta{justify-content:center}.character-wrap{width:min(90vw,520px);margin-top:-10px}.scroll-cue{display:none}.channel-dial{right:9px}.origin-grid,.closet-layout{grid-template-columns:1fr}.origin,.closet,.route{padding-left:28px;padding-right:28px}.story-card{transform:none}.memory-track{grid-template-columns:repeat(2,1fr)}.closet-stage{min-height:580px}.route{min-height:1250px}.orbit-map{position:relative;top:auto;right:auto;width:min(100%,680px);margin:70px auto 0}.section-number{display:none}
}

@media (max-width: 560px) {
  .brand>span:last-child{display:none}.top-actions .pill{padding:0 13px}.top-actions .pill-x{width:35px;padding:0}.hero{padding-top:96px}.hero h1{font-size:clamp(4rem,18.5vw,4.55rem)}.hero-sub{max-width:340px}.hero-cta{width:100%;flex-direction:column}.cta,.ghost-btn{width:100%;max-width:100%}.character-wrap{width:100%;margin-left:0;transform:scale(1.1)}.mood-readout{right:3%}.origin,.closet,.route{padding-left:20px;padding-right:20px}.memory-track{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:12px}.memory-card{min-width:70vw;scroll-snap-align:center}.mixer-head{align-items:flex-start;gap:14px;flex-direction:column}.closet-stage{min-height:520px}.artifact-phone{width:130px;height:230px}.artifact-cross{font-size:9rem}.artifact-phones{font-size:7rem}.artifact-beanie{font-size:12rem}.route{min-height:980px}.route-intro{text-align:center}.orbit-map{width:110vw;margin-left:-10vw}.orbit-node{width:76px}.route-core{inset:25%;padding:14%}.route-core p{font-size:.72rem}.drag-map{display:none}.final-actions{flex-direction:column;align-items:center}footer span:nth-child(2){display:none}
}

@media (prefers-reduced-motion: reduce) {
  html{scroll-behavior:auto}.noise{display:none}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}
}
