@font-face{font-family:Squares;src:url('/stadium/assets/round-10/TTSquares-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Condensed;src:url('/stadium/assets/round-10/RobotoCondensed-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root[data-font=squares] h1{font-family:Squares,sans-serif;font-weight:700;font-size:clamp(43px,min(4.6vw,9svh),86px);letter-spacing:-.035em}
:root[data-font=condensed] h1{font-family:Condensed,sans-serif;font-weight:700;letter-spacing:-.025em}
:root[data-background=aurora] .stadium-landing{background:radial-gradient(ellipse at 20% 25%,#16739180,transparent 55%),radial-gradient(ellipse at 80% 85%,#2342a56b,transparent 60%),#051627}
:root[data-background=arena] .stadium-landing{background:repeating-conic-gradient(from 240deg at 30% -20%,#56bfff08 0deg 8deg,transparent 8deg 24deg),radial-gradient(ellipse at 30% 10%,#245a83,#050f21 75%)}
:root[data-background=geometry] .stadium-landing{background:linear-gradient(125deg,transparent 45%,#4088b513 45% 60%,transparent 60%),linear-gradient(35deg,#07182c 20%,#103955 60%,#07182c)}
:root[data-background]:not([data-background=night]) .stadium-landing:after{background:linear-gradient(90deg,transparent 50%,#061a3022 68%,#061a3077)}
:root .primary-cta{position:relative;isolation:isolate;overflow:hidden;background:#35fd8f;color:#05251a;border:1px solid #afffd4;box-shadow:0 0 28px #35fd8f44;font-weight:700}
:root[data-cta=lime] .primary-cta{background:#c2ff21;border-color:#e6ff97;box-shadow:0 0 28px #c2ff2144;color:#182400}
.primary-cta:after{content:'';position:absolute;z-index:-1;inset:-60% auto -60% -65%;width:35%;background:linear-gradient(90deg,transparent,#fff9,transparent);transform:skewX(-22deg);animation:cta-sheen 4.8s ease-in-out infinite;animation-play-state:paused;pointer-events:none}
:root[data-motion=running] .primary-cta:after{animation-play-state:running}
.primary-cta:hover{filter:brightness(1.07)}.primary-cta:active{filter:brightness(.92)}.primary-cta:focus-visible{outline:3px solid white;outline-offset:5px}
@keyframes cta-sheen{0%,60%{left:-65%}88%,100%{left:145%}}
.building-flag{position:absolute;z-index:4;pointer-events:none;transform-origin:0 15%;animation:flag-breeze 4s ease-in-out infinite;animation-play-state:paused}
.building-flag img{display:block;width:100%;height:100%;object-fit:fill}
.flag-quiet{left:50.7541%;top:11.9302%;width:1.90164%;height:3.78274%}.flag-compact{left:51.4098%;top:9.11736%;width:2.22951%;height:3.87973%}
:root[data-motion=running] .building-flag{animation-play-state:running}
:root[data-flag=wave] .building-flag{animation-name:flag-wave;animation-duration:2.6s}
:root[data-flag=gust] .building-flag{animation-name:flag-gust;animation-duration:5.5s}
@keyframes flag-breeze{0%,100%{transform:skewY(0) scaleX(1)}50%{transform:skewY(3deg) scaleX(.94)}}
@keyframes flag-wave{0%,100%{transform:perspective(90px) rotateY(0) skewY(0)}30%{transform:perspective(90px) rotateY(-18deg) skewY(-4deg)}70%{transform:perspective(90px) rotateY(12deg) skewY(4deg)}}
@keyframes flag-gust{0%,100%{transform:scaleX(.96) skewY(0)}30%{transform:scaleX(.8) skewY(7deg)}44%{transform:scaleX(1.08) skewY(-5deg)}60%{transform:scaleX(.9) skewY(3deg)}}
:root[data-viewport=locked],:root[data-viewport=locked] body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}
:root[data-viewport=locked] body{position:fixed;inset:0;margin:0}
:root[data-viewport=locked] .stadium-landing{height:100dvh;min-height:0;max-height:100dvh;overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:pinch-zoom}
:root[data-viewport=locked] img{user-select:none;-webkit-user-drag:none;pointer-events:none}
:root[data-viewport=locked] button{touch-action:manipulation}
@media(max-width:900px){
 :root[data-viewport=locked] .stadium-landing{padding: max(12px,env(safe-area-inset-top)) 20px calc(100px + env(safe-area-inset-bottom));justify-content:center}
 :root[data-viewport=locked] .scene-column{width:min(136vw,calc((100dvh - 330px)*1.48),820px)}
 :root[data-viewport=locked] .hero-copy{margin-top:0}
 :root[data-viewport=locked] h1,:root[data-viewport=locked][data-font=squares] h1{font-size:clamp(27px,min(9vw,6.3dvh),48px);line-height:1.05}
 :root[data-viewport=locked] .primary-cta{position:fixed;left:20px;right:20px;bottom:calc(12px + env(safe-area-inset-bottom));width:calc(100% - 40px);min-height:56px;margin:0;z-index:20}
 :root[data-viewport=locked] .action-status{min-height:20px;font-size:10px}
 :root[data-viewport=locked] .campaign-actions{margin-top:12px}
}
@media(max-height:500px) and (orientation:landscape){:root[data-viewport=locked] .stadium-landing{display:grid;grid-template-columns:1fr 1fr;padding:12px 20px 78px}:root[data-viewport=locked] .scene-column{position:absolute;width:57vw;left:-3vw;top:50%;transform:translateY(-50%)}:root[data-viewport=locked] .hero-copy{grid-column:2}:root[data-viewport=locked] h1,:root[data-viewport=locked][data-font=squares] h1{font-size:clamp(23px,7dvh,34px)}}
@media(prefers-reduced-motion:reduce){.building-flag,.primary-cta:after{animation:none!important}}
