/* Public marketing site only. Vibrant campaign direction requested 13 October 2026. */
body.marketing-launch { --site-blue:#143f92; --site-navy:#10234f; --site-gold:#ffcc41; --site-cyan:#dff7ff; --site-ink:#152b4c; background:#f5fbff; color:var(--site-ink); }
body.marketing-launch .lp-header { position:sticky; top:0; z-index:20; min-height:82px; padding:12px max(24px,calc((100vw - 1460px)/2)); gap:20px; background:var(--site-navy); color:white; border:0; box-shadow:0 4px 18px #06173433; }
body.marketing-launch .lp-brand-copy strong { color:white; font-size:23px; }
body.marketing-launch .lp-brand-copy small { color:#cfdefb; }
body.marketing-launch .lp-brand img { width:54px; height:54px; }
.lp-top-nav { display:flex; align-items:center; justify-content:center; gap:26px; margin-left:auto; }
.lp-top-nav a { display:flex; align-items:center; min-height:44px; color:white; font-weight:800; font-size:14px; }
.lp-top-nav a:hover { color:var(--site-gold); }
body.marketing-launch .lp-sign-in { background:var(--site-gold); border-color:#d89412; color:var(--site-navy); box-shadow:0 3px #ad7411; }
body.marketing-launch .lp-launch-hero { display:flex; align-items:center; justify-content:center; min-height:min(860px,calc(100svh - 82px)); max-width:none; padding:65px 24px 105px; overflow:hidden; isolation:isolate; background:#328aab; text-align:center; }
.lp-launch-art { position:absolute; inset:0; z-index:-2; pointer-events:none; }
.lp-launch-art>picture { display:contents; }
.lp-launch-backdrop { width:100%; height:100%; object-fit:cover; object-position:center 40%; }
body.marketing-launch .lp-launch-hero::after { content:""; display:block; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(180deg,#10234f80 0%,#10234f12 45%,#10234fb5 100%); }
body.marketing-launch .lp-hero-content { max-width:860px; position:relative; z-index:2; }
body.marketing-launch .lp-launch-hero h1 { font:400 clamp(54px,6.8vw,104px)/1.02 var(--ui-font-heading); color:white; letter-spacing:-1.8px; text-shadow:0 4px 0 #163259,0 8px 24px #071c42a8; }
body.marketing-launch .lp-launch-hero h1 em { margin-top:18px; color:var(--site-gold); font-size:.53em; text-shadow:0 3px 0 #574016,0 6px 16px #071c42b0; }
body.marketing-launch .lp-launch-hero .lp-kicker { background:var(--site-gold); color:var(--site-navy); border:2px solid #fff1a4; padding:9px 20px; font-size:14px; box-shadow:0 4px #7b560f5c; }
body.marketing-launch .lp-lead { max-width:650px; margin:26px auto 0; color:white; font-size:21px; font-weight:800; line-height:1.55; text-shadow:0 2px 8px #09204e; }
body.marketing-launch .lp-launch-actions { justify-content:center; gap:18px; margin-top:32px; }
body.marketing-launch .lp-button { background:linear-gradient(#ffe77d,#ffcc41); border:2px solid #fff0a6; color:var(--site-navy); box-shadow:0 5px #ad7411,0 10px 20px #09204e33; font-size:21px; min-height:66px; border-radius:12px; padding:15px 26px; }
body.marketing-launch .lp-launch-actions .lp-button { font-size:20px; margin:0; }
body.marketing-launch .lp-store-button { background:#09162d; border:2px solid #ffffffbf; color:white; min-height:66px; box-shadow:0 5px #0009; }
body.marketing-launch .lp-store-button strong { font:800 24px/1.2 var(--ui-font); }
body.marketing-launch .lp-store-button small { font:700 11px/1.4 var(--ui-font); }
body.marketing-launch .lp-hero-note { color:white; font-weight:800; text-shadow:0 1px 8px #09204e; }
.lp-launch-guardian,.lp-launch-rider { position:absolute; bottom:-20px; width:clamp(200px,27vw,450px); height:auto; filter:drop-shadow(0 15px 10px #10234f70); }
.lp-launch-guardian { left:-4%; transform:rotate(-8deg); }
.lp-launch-rider { right:-3%; transform:rotate(7deg); }
body.marketing-launch .lp-platforms { background:var(--site-blue); color:white; padding-block:48px 60px; border-top:5px solid var(--site-gold); }
body.marketing-launch .lp-platforms>h2 { font-size:38px; color:white; }
body.marketing-launch .lp-platform-card { background:white; border:0; color:var(--site-ink); border-radius:20px; box-shadow:0 7px #082965; padding:28px; }
body.marketing-launch .lp-platform-card h3 { color:var(--site-blue); }
body.marketing-launch .lp-platform-card a { color:var(--site-blue); }
body.marketing-launch .lp-platform-status.is-live { background:#d6f9d5; border-color:#62af46; color:#214e1c; }
body.marketing-launch .lp-guide-nav { background:var(--site-navy); color:white; border:0; gap:12px 28px; }
body.marketing-launch .lp-guide-nav a { text-decoration:none; font-weight:800; }
body.marketing-launch .lp-guide-nav a:hover { color:var(--site-gold); }
body.marketing-launch .lp-guide-section { padding-block:88px; background:#f4fbff; }
body.marketing-launch .lp-guide-alt { background:var(--site-cyan); }
body.marketing-launch .lp-guide-heading h2 { color:var(--site-blue); font-size:clamp(36px,4.5vw,58px); }
body.marketing-launch .lp-section-kicker { color:var(--site-blue); font-weight:900; letter-spacing:2px; font-size:13px; text-transform:uppercase; }
body.marketing-launch .lp-guide-heading>p:last-child { color:#3f5773; max-width:730px; margin-inline:auto; }
body.marketing-launch .lp-guide-card,body.marketing-launch .lp-campaign-card { background:white; border:1px solid #c6deed; border-radius:22px; box-shadow:0 6px 0 #b9d9e9; }
body.marketing-launch .lp-guide-card h3,body.marketing-launch .lp-campaign-card h3 { color:var(--site-blue); }
body.marketing-launch .lp-campaign-card img { aspect-ratio:8/5; object-fit:cover; }
body.marketing-launch .lp-campaign-card figcaption { padding:24px; }
body.marketing-launch .lp-guide-card p { color:#3f5773; }
body.marketing-launch #troops { background:linear-gradient(140deg,#143f92,#10234f); }
body.marketing-launch #troops .lp-guide-heading :is(h2,p),body.marketing-launch #troops .lp-guide-note,body.marketing-launch #troops .lp-tier-status { color:white; }
body.marketing-launch #troops .lp-guide-card { background:#f5fbff; }
body.marketing-launch .lp-tier-picker button[aria-pressed=true] { background:var(--site-gold); color:var(--site-navy); border-color:#e7a51b; }
body.marketing-launch .lp-progression-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; list-style-position:inside; padding:0; max-width:1180px; }
body.marketing-launch .lp-progression-list li { background:white; border-radius:18px; padding:25px; border-top:4px solid var(--site-gold); box-shadow:0 5px #bddae9; }
body.marketing-launch .lp-progression-list li::marker { color:var(--site-blue); }
body.marketing-launch .lp-progression-list h3 { color:var(--site-blue); }
body.marketing-launch #bosses { background:#fff0c3; }
body.marketing-launch .lp-access { background:linear-gradient(145deg,#143f92,#10234f); padding-block:85px; }
body.marketing-launch .lp-auth-heading { background:var(--site-gold); color:var(--site-navy); }
body.marketing-launch .lp-auth-card { border:0; border-radius:24px; overflow:hidden; box-shadow:0 12px 35px #07162c66; }
body.marketing-launch .lp-footer { background:#09182f; color:#dce9fb; padding-block:28px; }
body.marketing-launch .lp-footer a { color:white; }
body.marketing-launch :is(a,summary,button,input):focus-visible { outline:3px solid #ff8b32; outline-offset:4px; }
body.marketing-launch :is(.lp-button,.lp-store-button,.lp-sign-in):active { transform:translateY(3px); box-shadow:0 2px #ad7411; }
@media(min-width:1500px) { .lp-launch-guardian { left:2%; } .lp-launch-rider { right:2%; } }
@media(max-width:1050px) { .lp-top-nav { gap:16px; } .lp-top-nav a { font-size:12px; } body.marketing-launch .lp-brand-copy strong { font-size:19px; } .lp-launch-guardian,.lp-launch-rider { opacity:.9; bottom:-10px; width:250px; } }
@media(max-width:800px) { .lp-top-nav { display:none; } body.marketing-launch .lp-header { min-height:74px; padding:10px 18px; } body.marketing-launch .lp-launch-hero { min-height:730px; padding:48px 20px 140px; } body.marketing-launch .lp-launch-hero h1 { font-size:clamp(48px,9vw,76px); } body.marketing-launch .lp-lead { font-size:18px; max-width:540px; } .lp-launch-guardian,.lp-launch-rider { width:220px; opacity:1; bottom:-55px; } .lp-launch-guardian { left:-60px; } .lp-launch-rider { right:-60px; } body.marketing-launch .lp-guide-section { padding-block:55px; } body.marketing-launch .lp-progression-list { grid-template-columns:1fr; } }
@media(max-width:560px) { body.marketing-launch .lp-header { flex-wrap:nowrap; justify-content:space-between; gap:10px; } body.marketing-launch .lp-brand-copy { display:none; } body.marketing-launch .lp-brand img { width:46px; height:46px; } body.marketing-launch .lp-header-actions { width:auto; gap:9px; } body.marketing-launch .lp-sign-in { padding:10px; font-size:14px; } body.marketing-launch .lp-launch-hero { min-height:700px; padding:42px 20px 125px; } body.marketing-launch .lp-launch-hero h1 { font-size:52px; letter-spacing:-1px; } body.marketing-launch .lp-launch-hero .lp-kicker { font-size:12px; padding:8px 12px; } body.marketing-launch .lp-launch-actions { flex-direction:column; align-items:stretch; max-width:320px; margin-inline:auto; gap:14px; } body.marketing-launch .lp-launch-actions a { justify-content:center; } body.marketing-launch .lp-lead { font-size:17px; } body.marketing-launch .lp-hero-note { font-size:12px; } .lp-launch-backdrop { object-position:50% 50%; } }
@media(max-height:500px) and (min-width:561px) { body.marketing-launch .lp-launch-hero { min-height:580px; padding-block:45px 70px; } .lp-launch-guardian,.lp-launch-rider { width:200px; bottom:-40px; } }
@media(prefers-reduced-motion:reduce) { body.marketing-launch * { scroll-behavior:auto; } }

html:has(body.marketing-launch) { scroll-padding-top:100px; }
body.marketing-launch #game-goal .lp-guide-card { padding:0 26px 28px; overflow:hidden; }
body.marketing-launch #game-goal .lp-guide-card img { height:240px; width:calc(100% + 52px); max-width:none; margin-left:-26px; object-fit:cover; background:#cfeef8; }
@media(max-width:1050px) { body.marketing-launch .lp-top-nav { display:none; } body.marketing-launch .lp-header-actions { flex-wrap:nowrap; } }
/* Matching visible button bounds; the official badge retains its clear space. */
body.marketing-launch .lp-launch-actions { --cta-width:264px; --cta-height:calc(var(--cta-width) * 168 / 564); display:flex; align-items:center; justify-content:center; flex-direction:row; gap:38px; }
body.marketing-launch .lp-launch-actions :is(.lp-official-play,.lp-browser-play) { position:relative; flex:0 0 var(--cta-width); width:var(--cta-width); height:var(--cta-height); min-width:0; min-height:0; margin:0; box-shadow:none; }
body.marketing-launch .lp-launch-actions .lp-official-play { display:block; padding:0; background:none; border:0; border-radius:0; transition:none; }
body.marketing-launch .lp-official-play img { position:absolute; display:block; width:calc(var(--cta-width) * 646 / 564); max-width:none; height:auto; left:calc(var(--cta-width) * -41 / 564); top:calc(var(--cta-width) * -41 / 564); pointer-events:none; }
body.marketing-launch .lp-official-play:active { transform:none; box-shadow:none; }
body.marketing-launch .lp-launch-actions .lp-browser-play { display:flex; align-items:center; justify-content:center; gap:12px; padding:12px 18px; background:#ffcc41; border:1px solid #e8b52e; border-radius:8px; color:#10234f; }
body.marketing-launch .lp-launch-actions .lp-browser-play,body.marketing-launch .lp-launch-actions .lp-browser-play>span { font:800 16px/1.25 var(--ui-font)!important; }
body.marketing-launch .lp-browser-play>span { min-width:0; text-align:left; }
.lp-browser-icon { flex:0 0 28px; }
body.marketing-launch .lp-browser-play:hover { background:#ffe077; }
body.marketing-launch .lp-browser-play:active { background:#efb92d; box-shadow:none; transform:translateY(1px); }
@media(max-width:560px) { body.marketing-launch .lp-launch-actions { flex-direction:column; align-items:center; gap:30px; margin-inline:auto; } body.marketing-launch .lp-launch-actions :is(.lp-official-play,.lp-browser-play) { flex-basis:auto; } }

/* Keep the browser entry first and the editorial links usable at every width. */
body.marketing-launch .lp-hero-content { width:100%; min-width:0; }
body.marketing-launch .lp-launch-hero h1 em { font-size:clamp(26px,3.5vw,44px); line-height:1.15; }
body.marketing-launch .lp-launch-actions { flex-wrap:wrap; gap:22px; }
body.marketing-launch .lp-launch-actions .lp-official-play { --cta-width:190px; }
body.marketing-launch .lp-launch-actions .lp-browser-play { background:linear-gradient(var(--ui-action-green-light),var(--ui-action-green),var(--ui-action-green-base)); color:var(--ui-action-green-ink); border-color:var(--ui-action-green-edge); box-shadow:0 4px var(--ui-action-green-edge); }
body.marketing-launch .lp-launch-actions .lp-browser-play:hover { filter:brightness(1.04); }
body.marketing-launch .lp-launch-actions .lp-browser-play:active { transform:translateY(3px); box-shadow:0 1px var(--ui-action-green-edge); }
body.marketing-launch .lp-hero-guides { display:inline-flex; align-items:center; min-height:44px; margin-top:20px; color:white; font-weight:800; text-decoration:underline; text-underline-offset:4px; }
body.marketing-launch .lp-arcane-grid { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:28px; }
body.marketing-launch .lp-arcane-grid img { display:block; width:100%; height:240px; object-fit:contain; }
body.marketing-launch .lp-context-guide { text-align:center; margin:28px 0 0; }
body.marketing-launch .lp-context-guide a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 18px; border:1px solid var(--ui-line); border-radius:12px; background:var(--ui-card); color:var(--ui-ink); font-weight:800; text-decoration:underline; text-underline-offset:4px; }
@media(max-width:1200px) { .lp-top-nav { gap:14px; } body.marketing-launch .lp-brand-copy small { display:none; } }
@media(max-width:560px) { body.marketing-launch .lp-launch-hero h1 { font-size:clamp(38px,10vw,52px); } body.marketing-launch .lp-launch-actions { max-width:100%; } body.marketing-launch .lp-arcane-grid { grid-template-columns:1fr; } body.marketing-launch .lp-hero-guides { margin-top:14px; } }

/* Crawlable language choices also work without JavaScript. */
.public-language-links{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 12px}
.public-language-links a{display:inline-flex;align-items:center;min-height:44px}
.public-language-links a[aria-current="page"]{font-weight:800;text-decoration:underline}
