/* XOYO: purple ink, black stock and off-white poster typography. */
:root{--ink:#0a080c;--paper:#eeeae2;--muted:#bcb6c2;--accent:#b852f5;--line:#eeeae233;--glow:#bb59fa;--glow-rgb:187,89,250;--glass:#151019dd;--glass-border:#b85af647}
body{background:#0a080c;color:var(--paper)}
header,header.scrolled{background:#0a080cf2;border-bottom-color:#eeeae244}
.hero{background-color:#0a080c;background-blend-mode:luminosity}
.hero .hero-video{filter:grayscale(1)!important;opacity:.3!important}
.hero .video-shade{background:linear-gradient(90deg,#0a080cf5,#1c082acf 65%,#0a080ca8)!important}
.ambient-orange{background:radial-gradient(ellipse,#ad3df52d,transparent 65%)}
.grid-field{opacity:.35}
.hero h1{font-size:clamp(84px,11vw,180px);line-height:.98;letter-spacing:-.035em}
.hero h1>.chrome{background:none;color:var(--paper);filter:none;animation:none;text-shadow:4px 4px 0 #7524a7}
.hero h1>.pass-title{font-size:.25em;letter-spacing:0;color:#0a080c;-webkit-text-stroke:0;background:var(--paper);padding:9px 12px;margin-top:14px;transform:rotate(-2deg)}
.hero h1>.takeover-title{font-size:.42em;margin-top:15px;letter-spacing:-.02em;color:var(--paper);border-bottom:5px solid var(--accent);padding-bottom:10px}
.hero h1>.year-title{font:700 1rem/1.4 'Courier New',monospace;letter-spacing:.08em;color:#d9a8ff;border:1px solid #b85af67a;background:#b852f512;padding:10px 14px;margin-top:24px;box-shadow:none}
.hero-copy .eyebrow{font-size:.875rem;letter-spacing:.1em;max-width:34em}
.edition p{font-size:.875rem}.micro{font-size:.875rem}
.button,.mobile-book{background:#c575ff;border-color:#d9a8ff;color:#120919;border-radius:2px;box-shadow:5px 5px 0 #57227750}
.button:hover{box-shadow:5px 5px 0 #8f2de866}
.poster-art{border:1px solid #eeeae270;border-radius:0;box-shadow:10px 10px 0 #b852f524,0 20px 60px #0009}
.poster-glare{display:none}
.poster-label,figcaption{color:var(--paper)}
.ticker{background:var(--paper);color:#0a080c;border:0;border-block:3px solid #b852f5;font-weight:900}
.chrome{background:none;color:var(--paper);filter:none;text-shadow:3px 3px #7722a5;animation:none}
.scroll-progress{background:var(--accent)}
.venue-detail,.holo-pass,.game-console{border-radius:2px;background:#131016;border:1px solid #eeeae24a;box-shadow:7px 7px 0 #b852f519}
.venue-date strong{color:var(--paper)}
.venue-copy .eyebrow{color:#d29af9}
.venue-detail .venue-index{font-size:180px}
.pass-section{background:#130c1a}
.pass-video{filter:grayscale(1);opacity:.24}
.holo-pass{transform:rotate(-2deg);border-top:5px solid var(--accent)}
.holo-pass:after{display:none}
.pass-top,.pass-bottom,.pass-stamps span{font-size:.875rem}
.booking-top{background:#17101d}.booking-top strong{line-height:1.5}
.info a{color:#d59bff}
.figure-scene[data-figure-state=active] .activate-figure{border-color:#d29af9;background:#68259055;box-shadow:0 0 30px #a52cdd33}
.figure-scene[data-figure-state=active] .figure-status{color:#d29af9}
.drop-game{display:grid;grid-template-columns:.95fr 1.05fr;gap:6%;margin-top:68px;padding-top:50px;border-top:1px dashed var(--line);align-items:center}
.game-copy h3{font-size:clamp(48px,5.5vw,86px);line-height:1.02}
.game-copy>p:not(.eyebrow){color:var(--muted);max-width:460px}
.game-copy strong{color:var(--paper)}
.game-hint,.game-disclaimer{font-size:.875rem}
.game-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px}
.game-actions button{cursor:pointer}
.game-actions button:disabled{opacity:.45;cursor:default;transform:none!important}
.game-stop{padding:12px 16px;min-height:44px;border:1px solid var(--line);background:transparent;color:var(--paper);font-size:.875rem}
.game-stop[hidden]{display:none}
.game-console{padding:26px;min-width:0;border-top:5px solid var(--accent)}
.game-scoreboard{display:flex;justify-content:space-between;gap:10px;font: .875rem/1.5 'Courier New',monospace;color:var(--muted);padding-bottom:20px}
.game-scoreboard span{display:flex;flex-direction:column;gap:3px}
.game-scoreboard b{font-size:1.4rem;color:var(--paper)}








#game-feedback{min-height:3.5em;font-size:1rem;line-height:1.6;color:var(--paper)}
.game-disclaimer{color:var(--muted);margin-bottom:0}
.lineup{contain-intrinsic-size:auto 1150px}
@media(max-width:800px){.hero h1{font-size:clamp(100px,21vw,170px)}.drop-game{grid-template-columns:1fr;gap:28px;margin-top:40px;padding-top:36px}.game-copy h3{font-size:58px}.game-console{padding:20px}.hero .video-shade{background:linear-gradient(0deg,#0a080cfa,#170c20db)!important}.pass-top,.pass-bottom{font-size:.75rem}.booking-top{flex-wrap:wrap}.hero h1>.pass-title{font-size:.24em}.hero h1>.takeover-title{font-size:.42em}.hero h1>.year-title{font-size:.875rem}}
@media(min-width:651px) and (max-width:1000px){.hero h1{font-size:clamp(82px,12vw,125px)}.hero h1>.pass-title{font-size:.23em}.hero-copy .eyebrow{font-size:.75rem}.hero-copy>.button{padding-inline:14px;gap:10px;font-size:.75rem}}
@media(max-width:380px){.game-console{padding:15px}.game-scoreboard{font-size:.75rem}.hero h1{font-size:94px}.edition{gap:10px}.edition p{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.holo-pass,.hero h1>.pass-title{transform:none}}
/* One responsive canvas. Controls remain outside its swipe area. */
.drop-game{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start}
.game-copy,.game-console{min-width:0}
.game-console{max-width:600px;width:100%;box-sizing:border-box}
.game-scoreboard{gap:8px;padding-bottom:12px}
.game-scoreboard b{font-size:clamp(1rem,2vw,1.4rem)}
.game-console .game-actions{margin:0 0 16px;justify-content:space-between;gap:10px}
.game-console .game-actions .button{min-height:46px;padding:10px 18px;font-size:.875rem}
.game-stop{cursor:pointer;min-height:46px}.game-stop:disabled{opacity:.4;cursor:default}
.arcade-stage{position:relative;aspect-ratio:12/11;background:#0b0810;border:1px solid #be78eb66;overflow:hidden}
#night-run{display:block;width:100%;height:100%;aspect-ratio:12/11;touch-action:pan-y;outline-offset:-4px}
.arcade-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:22px;background:#0a0613dd;text-align:center;pointer-events:none;box-sizing:border-box}
.arcade-overlay[hidden]{display:none}
.arcade-overlay strong{font:900 clamp(24px,3vw,40px)/1.05 Impact,'Arial Narrow',Arial,sans-serif;color:#eeeae2;white-space:pre-line;max-width:100%}
.arcade-overlay span{font-size:.875rem;line-height:1.5;color:#d5b0ef;max-width:240px}
.arcade-controls{display:flex;align-items:center;justify-content:center;gap:10px;margin:16px auto 0}
.arcade-controls>div{display:grid;gap:6px}
.arcade-controls button{display:grid;place-items:center;width:58px;height:46px;min-width:44px;min-height:44px;padding:0;border:1px solid #ce89ff80;background:#2b143b;color:#f4e8ff;font:700 24px/1 Arial;cursor:pointer;touch-action:manipulation;border-radius:3px}
.arcade-controls button:active{background:#c575ff;color:#160821;transform:translateY(2px)}
.arcade-controls button:disabled{opacity:.35;cursor:default}
.game-legend{display:flex;flex-wrap:wrap;gap:14px;font:700 .75rem/1.6 'Courier New',monospace;color:#c9bdd3;margin:24px 0}
.game-legend b{display:inline-block;font-size:.75rem;padding:1px 5px;margin-right:4px}.legend-you{color:#f2de8f}.legend-bus{background:#b72e4b;color:#fff}.legend-cab{background:#0a0b0f;border:1px solid #aaa;color:#fff}
#game-feedback{min-height:4.8em;margin-bottom:8px}
@media(max-width:900px){.drop-game{grid-template-columns:1fr;gap:28px}.game-console{max-width:580px;margin-inline:auto}.game-copy h3{font-size:clamp(48px,9vw,74px)}.game-copy>p:not(.eyebrow){max-width:640px}.game-legend{margin-bottom:0}}
@media(max-width:480px){.game-console{padding:14px}.game-scoreboard{font-size:.75rem}.game-scoreboard b{font-size:1.05rem}.game-console .game-actions .button{padding-inline:14px;font-size:.8rem}.arcade-overlay strong{font-size:30px}.game-stop{padding-inline:12px}.arcade-controls{margin-top:12px}.lineup{contain-intrinsic-size:auto 1520px}}
