.recap-home #hero-outer{height:280svh;}
.recap-home #hero-inner{height:100svh;min-height:0;background:#030304;isolation:isolate;}
.recap-home #nav>a img,.recap-home #nav .max-wrap>a img{height:30px;width:auto;}
.recap-native{position:absolute;inset:0;clip-path:inset(var(--dissolve,0%) 0 0);}
#recap-video{position:absolute;top:0;height:100%;width:100%;object-fit:contain;}
.recap-band{position:absolute;left:0;right:0;height:10.5%;overflow:hidden;background:transparent;border:0;z-index:1;}
.recap-band-top{top:7%;}.recap-band-bottom{bottom:0;}
.recap-band-track{height:100%;display:flex;align-items:center;gap:5vw;width:max-content;animation:recap-marquee 32s linear infinite;will-change:transform;backface-visibility:hidden;}
.recap-band-track img{height:50%;width:auto;flex-shrink:0;}
.recap-band-bottom .recap-band-track{animation-direction:reverse;}
@keyframes recap-marquee{from{transform:translate3d(0,0,0);}to{transform:translate3d(-50%,0,0);}}
.recap-home #hero-canvas{opacity:0;pointer-events:none;}
.recap-webgl #hero-canvas{opacity:1;}
.recap-webgl .recap-native{opacity:0;}
/* Keep navigation at the right after removing the corner logo. */
.recap-home #nav > .max-wrap{justify-content:flex-end;}
.recap-controls{position:absolute;left:50%;bottom:14%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:9px;z-index:3;pointer-events:none;color:#fff;padding:14px 20px;border-radius:40px;background:rgba(3,3,4,.3);backdrop-filter:blur(5px);text-shadow:0 2px 10px #000;}
.recap-scroll-label{font:10px 'Space Mono',monospace;letter-spacing:.2em;white-space:nowrap;}
.recap-scroll-arrow{animation:recap-scroll-nudge 1.8s ease-in-out infinite;}
@keyframes recap-scroll-nudge{0%,100%{transform:translateY(-3px);opacity:.6;}50%{transform:translateY(3px);opacity:1;}}
@media(max-width:767px){.recap-controls{bottom:14%;padding:12px 17px;}.recap-scroll-label{font-size:9px;}}
@media(prefers-reduced-motion:reduce){.recap-scroll-arrow{animation:none;}}
@media(prefers-reduced-motion:reduce){.recap-home #hero-outer{height:160svh;}}

#recap-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(22px);transform:scale(1.12);opacity:.6;pointer-events:none;}

.recap-band-bottom .recap-band-track span{font-family:Anton,sans-serif;font-size:4.83svh;line-height:1;white-space:nowrap;color:#f4f3ef;flex-shrink:0;}

/* Original intro typography and CTA hierarchy over the live recap. */
.recap-controls{bottom:11%;padding:0;background:none;backdrop-filter:none;border-radius:0;gap:18px;pointer-events:auto;text-align:center;width:calc(100% - 40px);}
.recap-controls .btn-primary{font-family:'Space Mono',monospace;text-shadow:none;}
.recap-community{margin:0;line-height:1.5;text-shadow:0 2px 14px #000;}
.recap-bottom-scroll{position:absolute;bottom:max(1rem,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:.4rem;font-family:'Space Mono',monospace;font-size:.6rem;letter-spacing:.3em;color:var(--haze);text-shadow:0 2px 8px #000;pointer-events:none;}
.recap-bottom-scroll svg{animation:scrollbounce 1.6s ease-in-out infinite;}
@media(prefers-reduced-motion:reduce){.recap-bottom-scroll svg{animation:none;}}
