#animated-logo[role=button]{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
#animated-logo:focus-visible{outline:2px solid var(--red);outline-offset:4px}
#animated-logo.logo-burst{animation:outage-burst .65s steps(1,end)}
#animated-logo.logo-burst .logo-glitch-a{animation:outage-slice-a .65s steps(1,end)}
#animated-logo.logo-burst .logo-glitch-b{animation:outage-slice-b .65s steps(1,end)}
@keyframes outage-burst{0%,100%{filter:none}15%,45%{filter:brightness(1.3) contrast(1.2)}30%,60%{filter:brightness(.9) contrast(1.3)}}
@keyframes outage-slice-a{0%,100%{opacity:0;transform:none}12%,44%{opacity:.85;clip-path:inset(25% 0 50%);transform:translateX(-10px)}28%,62%{opacity:.7;clip-path:inset(60% 0 16%);transform:translateX(8px)}}
@keyframes outage-slice-b{0%,100%{opacity:0;transform:none}18%,50%{opacity:.75;clip-path:inset(42% 0 40%);transform:translateX(10px)}35%,70%{opacity:.6;clip-path:inset(12% 0 72%);transform:translateX(-8px)}}
@media(prefers-reduced-motion:reduce){#animated-logo.logo-burst{animation:none;filter:brightness(1.15)}#animated-logo.logo-burst .logo-glitch{animation:none;opacity:0}}
.hero-manifesto{margin:24px 0 0;font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(26px,3vw,44px);font-weight:800;line-height:1.1;letter-spacing:.02em}
.hero-manifesto span,.lineup-manifesto span{color:var(--red)}
.lineup-manifesto{margin:0 0 32px;font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(26px,4vw,58px);font-weight:800;line-height:1.15;letter-spacing:.01em;overflow-wrap:break-word}
.artist .artist-lock{display:flex;align-items:center;justify-content:center;flex:1;min-height:42px;margin:8px 0;color:var(--red)}
.artist-lock svg{display:block;width:32px;height:32px}
.artist:has(.artist-lock) b{margin:0 0 4px}
.scroll-reveal{transition:opacity .7s ease,translate .7s cubic-bezier(.2,.65,.3,1);transition-delay:var(--reveal-delay,0ms)}
.scroll-reveal.reveal-pending{opacity:0;translate:0 24px}
.scroll-reveal.reveal-visible{opacity:1;translate:0 0}
.launch-poster.scroll-reveal{transition-duration:.9s}
.launch-poster.reveal-pending{translate:0 36px}
@media(max-width:600px){.artist .artist-lock{min-height:30px;margin:6px 0}.artist-lock svg{width:27px;height:27px}.scroll-reveal.reveal-pending{translate:0 18px}}
@media(prefers-reduced-motion:reduce){.scroll-reveal,.launch-poster.scroll-reveal{transition:opacity .25s ease;transition-delay:0ms}.scroll-reveal.reveal-pending,.launch-poster.reveal-pending{translate:none}}
