.game-hero{position:relative;isolation:isolate;min-height:var(--hero-height,460px);overflow:hidden;border:1px solid #ffffff24;border-radius:22px;background:radial-gradient(ellipse at 80% 20%,#235c75,transparent 55%),linear-gradient(125deg,#090f22,#142840);color:#fff;margin:0 0 32px}
.game-hero[hidden]{display:none}
.game-hero-video,.game-hero-poster,.game-hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.game-hero-video{z-index:-2}.game-hero-video[hidden]{display:none}.game-hero-poster{z-index:-1}.game-hero.video-ready .game-hero-poster{opacity:0}.game-hero-shade{z-index:1;background:#030916}
.game-hero-copy{position:relative;z-index:20;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:var(--hero-height,460px);width:58%;padding:clamp(28px,5vw,68px);pointer-events:none}
.game-hero-eyebrow{margin:0 0 16px;font-size:11px;font-weight:850;letter-spacing:.17em;text-transform:uppercase;color:#b9f8e8}
.game-hero-title{font-size:clamp(30px,3.5vw,58px);font-weight:900;line-height:1.04;letter-spacing:-.045em;margin:0 0 18px;overflow-wrap:anywhere;text-wrap:balance;color:#fff}
.game-hero-description{margin:0 0 25px;max-width:490px;line-height:1.6;font-size:15px;color:#e8edf5;overflow-wrap:anywhere}
.game-hero-actions{display:flex;flex-wrap:wrap;gap:10px;pointer-events:auto}
.game-hero .game-hero-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 20px;background:linear-gradient(120deg,#ff6020,#ff3557);border:1px solid transparent;border-radius:10px;color:#fff;text-decoration:none;font-size:13px;font-weight:850}
.game-hero .game-hero-button.is-secondary{border-color:#ffffff75;background:#09132465}
.game-hero-layer{position:absolute;z-index:2;left:var(--layer-x);top:var(--layer-y);width:var(--layer-width);transform:translate(-50%,-50%);pointer-events:none;max-height:100%}
a.game-hero-layer{pointer-events:auto}.game-hero-layer>img{display:block;width:100%;max-height:var(--hero-height);object-fit:contain}.game-hero-lottie{width:100%;aspect-ratio:1;max-height:var(--hero-height)}.game-hero-lottie svg{width:100%!important;height:100%!important}
.game-hero .game-hero-motion{position:absolute;z-index:21;bottom:16px;right:16px;border:1px solid #ffffff66;border-radius:20px;padding:9px 13px;background:#071020b3;color:#fff;cursor:pointer;font-size:11px;min-height:36px;max-width:calc(100% - 32px)}
.game-hero a:focus-visible,.game-hero button:focus-visible{outline:3px solid #8fdfff;outline-offset:4px}
@media(max-width:760px){.game-hero{min-height:var(--hero-mobile-height,440px);border-radius:16px}.game-hero-copy{width:100%;min-height:var(--hero-mobile-height,440px);padding:140px 24px 66px;justify-content:flex-end}.game-hero-title{font-size:32px;max-width:480px}.game-hero-description{font-size:13px}.game-hero-layer{left:var(--layer-mobile-x);top:var(--layer-mobile-y);width:var(--layer-mobile-width)}.game-hero-layer>img,.game-hero-lottie{max-height:var(--hero-mobile-height)}}
@media(prefers-reduced-motion:reduce){.game-hero *{scroll-behavior:auto!important}}
.agent-welcome-popup{width:min(640px,calc(100vw - 32px));max-height:90dvh;box-sizing:border-box;border:0;border-radius:16px;padding:20px;background:#101827;color:#fff;box-shadow:0 20px 80px #0008}
.agent-welcome-popup::backdrop{background:#000b}
.agent-welcome-popup h2{margin:0 48px 16px 0;font-size:1.25rem}
.agent-welcome-close{position:absolute;top:10px;right:10px;width:44px;height:44px;font-size:28px;cursor:pointer;border-radius:50%;border:1px solid #8795ad;background:#182438;color:white}
.agent-welcome-media img,.agent-welcome-media video{display:block;width:100%;max-height:70dvh;object-fit:contain}
.agent-welcome-lottie{width:100%;height:min(60vh,480px)}

.marketing-creative{position:relative;width:100%;aspect-ratio:5/1;overflow:hidden;background:#101827;color:#fff;border-radius:10px;container-type:inline-size;text-align:left}
.marketing-creative[data-placement="side"]{aspect-ratio:2/3}
.marketing-creative>img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important}
.marketing-copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:3%;background:linear-gradient(90deg,#000c,transparent);overflow:auto;overflow-wrap:anywhere}
.marketing-copy strong{font-size:clamp(14px,3.5cqw,36px);line-height:1.1}
.marketing-copy p{font-size:clamp(12px,1.8cqw,20px);margin:.4em 0;white-space:pre-wrap}
.marketing-cta{display:inline-block;background:#ffd557;color:#111;padding:.35em .8em;border-radius:6px;font-size:clamp(12px,1.8cqw,18px)}
.marketing-creative[data-placement="side"] .marketing-copy strong{font-size:clamp(18px,8cqw,32px)}
.marketing-creative[data-placement="side"] .marketing-copy p{font-size:clamp(14px,5cqw,20px)}

/* Featured hero is a separate section above the game lobby. */
.games-page>.games-hero-standalone{width:100%;box-sizing:border-box;margin:38px 0 0}
.games-page>.games-hero-standalone:not([hidden])+.games-shell{padding-top:32px}
@media(max-width:700px){.games-page>.games-hero-standalone{margin-top:25px}.games-page>.games-hero-standalone:not([hidden])+.games-shell{padding-top:25px}}

/* Business announcements share the score ticker's location on the Games view. */
.gameroom-ticker-active .ticker{display:none}
#gameroom-ticker{display:flex;align-items:center;gap:14px;padding:10px 24px;background:var(--panel,#e4edf6);color:var(--text,#13253f);border-bottom:1px solid #cbd8e5}
#gameroom-ticker[hidden]{display:none}
#gameroom-ticker>strong{font-size:12px;letter-spacing:.08em}
.announcement-window{flex:1;min-width:0;overflow:hidden}
.announcement-track{display:flex;align-items:center;gap:16px;width:max-content;animation:gameroom-announcement-scroll 20s linear infinite}
.announcement-track img{height:36px;max-width:180px;object-fit:contain}
.announcement-track span{white-space:pre-wrap;max-width:90vw}
#gameroom-ticker button{font:inherit;font-size:12px;padding:5px 9px;cursor:pointer}
#gameroom-ticker:hover .announcement-track,#gameroom-ticker:focus-within .announcement-track,#gameroom-ticker.paused .announcement-track{animation-play-state:paused}
@keyframes gameroom-announcement-scroll{from{transform:translateX(80vw)}to{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){.announcement-track{animation:none;width:auto}.announcement-window{overflow:auto}}
@media(max-width:600px){#gameroom-ticker{padding:8px 12px;gap:8px}#gameroom-ticker>strong{display:none}}
