:root{color-scheme:dark;--cb-gold:#dfbd70;--cb-text:#eeeee8;--cb-muted:#a3aaa9;--cb-line:#d7b56630}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#090f13}
body{margin:0;color:var(--cb-text);font-family:Arial,Helvetica,sans-serif;background:radial-gradient(ellipse at 50% 15%,#142c29 0,transparent 60%),#090f13;min-height:100vh}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:2px solid var(--cb-gold);outline-offset:5px}
.cb-skip{position:absolute;left:12px;top:-100px;z-index:5;padding:12px;background:#152b27}
.cb-skip:focus{top:12px}
.cb-header{border-bottom:1px solid var(--cb-line);background:#0b1216ee}
.cb-header-inner{max-width:1376px;margin:auto;min-height:76px;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.cb-brand{display:flex;align-items:center;gap:12px;font-size:16px;letter-spacing:2px}
.cb-brand img{object-fit:contain;clip-path:circle(44% at 50% 50%)}
.cb-brand strong{color:var(--cb-gold);font-weight:600}
.cb-brand small{display:block;letter-spacing:3px;font-size:9px;color:var(--cb-muted);margin-top:6px}
nav{display:flex;gap:28px;font-size:13px}nav a{padding:8px 0;color:#bcc6c4}nav a:hover{color:var(--cb-gold)}
.cb-page{max-width:1376px;padding:22px 24px 0;margin:auto}
.cb-top{margin-bottom:22px}
.cb-banner{position:relative;overflow:hidden;display:flex;text-decoration:none;border:1px solid var(--cb-line);background:#123b2c;color:var(--cb-text)}
.cb-banner--top{min-height:136px;align-items:center;justify-content:space-between;padding:22px 38px;background:radial-gradient(ellipse at 88% 50%,#48703c55,transparent 44%),linear-gradient(110deg,#102b25,#164632 62%,#0d231e)}
.cb-banner--top:before{content:"";position:absolute;inset:-90% -2% -100% 64%;border:1px solid #e2c47923;transform:rotate(-26deg);pointer-events:none}
.cb-eyebrow{display:block;font-size:9px;letter-spacing:2px;line-height:1.7;color:var(--cb-gold);font-weight:bold}
.cb-banner-copy{position:relative;z-index:1}
.cb-banner h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:29px;line-height:1.12;letter-spacing:-.4px;margin:10px 0}
.cb-banner p{font-size:12px;line-height:1.7;color:#c0cebf;margin:0;max-width:560px}
.cb-banner-logo{width:100px;height:100px;object-fit:contain;flex:none;margin:-8px 24px -8px 36px;clip-path:circle(44% at 50% 50%)}
.cb-arena{display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,1000px) minmax(130px,1fr);gap:16px;align-items:start}
.cb-game{min-width:0;scroll-margin-top:16px}
.cb-game-heading{display:flex;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:1.4px;color:#9daaa8;padding:0 2px 10px}
.cb-game-heading span:last-child{letter-spacing:0;color:#758681}
.cb-stage{position:relative;width:100%;aspect-ratio:2/1;background:#000;box-shadow:0 16px 42px #0007;isolation:isolate}
.cb-stage>object,.cb-stage>embed,.cb-stage>ruffle-object,.cb-stage>ruffle-embed,.cb-stage>ruffle-player{display:block!important;width:1000px!important;height:500px!important;position:absolute!important;inset:0!important;transform:scale(var(--cb-game-scale,1));transform-origin:top left}
.cb-stage object embed{width:100%;height:100%}
.cb-side{padding-top:20px;min-width:0}
.cb-side .cb-banner{min-height:480px;padding:26px 18px;flex-direction:column;background:radial-gradient(ellipse at 50% 64%,#2b66523d,transparent 70%),linear-gradient(160deg,#132f29,#0c1b1b);}
.cb-side .cb-eyebrow{font-size:8px;letter-spacing:1.6px}
.cb-side h2{font-size:25px;line-height:1.16;margin:17px 0}
.cb-side p{font-size:11px;color:#9fafaa}
.cb-side--right .cb-banner{background:radial-gradient(ellipse at 70% 70%,#25436a55,transparent 60%),linear-gradient(160deg,#192a3c,#101b26)}
.cb-side--right p{color:#adb8c3}
.cb-banner-signature{font-size:9px;line-height:1.7;letter-spacing:3px;color:#cbb477;margin-top:auto;position:relative;z-index:1}
.cb-balls{position:relative;height:160px;flex:1;min-height:120px;opacity:.95;margin:20px -18px 12px;overflow:hidden}
.cb-ball{position:absolute;width:90px;height:90px;border-radius:50%;box-shadow:12px 20px 18px #0008;top:45px;left:42%;background:radial-gradient(circle at 32% 23%,#666,#111 42%,#020303 78%)}
.cb-ball i{position:absolute;display:grid;place-items:center;left:21px;top:19px;width:45px;height:45px;border-radius:50%;background:#eae7d9;color:#111;font:bold 32px Arial;font-style:normal;transform:rotate(18deg)}
.cb-ball--gold{width:67px;height:67px;left:3%;top:18px;background:radial-gradient(circle at 30% 22%,#fff4a3,#c99c29 38%,#70501d 80%)}
.cb-banner--image{padding:0!important;background:#0d1a1a!important}
.cb-banner-art{display:block;width:100%;height:100%;object-fit:contain}
.cb-side .cb-banner--image{aspect-ratio:320/1000;min-height:0}
.cb-top .cb-banner--image{aspect-ratio:1400/160;min-height:0}
.cb-footer{max-width:1376px;margin:28px auto 0;padding:20px 24px 24px;display:flex;justify-content:space-between;gap:12px;border-top:1px solid #ffffff0b;font-size:11px;color:#82928d}
.cb-mobile-tip{display:none}
@media(min-width:1400px){.cb-side .cb-banner{min-height:520px}}
@media(max-width:1239px){.cb-page{max-width:1048px}.cb-arena{grid-template-columns:1fr 1fr}.cb-game{grid-row:1;grid-column:1/-1}.cb-side{padding-top:4px}.cb-side .cb-banner{min-height:170px;padding:22px 24px}.cb-side h2{margin:10px 0;font-size:24px}.cb-side .cb-banner-copy{max-width:68%}.cb-balls{position:absolute;right:0;bottom:0;width:130px;height:120px;margin:0;min-height:0}.cb-banner-signature{display:none}.cb-side .cb-banner--image{aspect-ratio:320/180;min-height:0}.cb-side .cb-banner-art{position:absolute;inset:0;object-fit:contain}}
@media(max-width:650px){.cb-header-inner{padding:12px 16px;min-height:68px}.cb-brand{font-size:12px;letter-spacing:1px;gap:8px}.cb-brand img{width:36px;height:36px}.cb-brand small{font-size:8px;letter-spacing:2px}nav{gap:14px;font-size:11px}.cb-page{padding:16px 12px 0}.cb-top{margin-bottom:18px}.cb-banner--top{padding:22px 18px;min-height:156px}.cb-banner--top h2{font-size:25px;max-width:260px}.cb-banner--top p{font-size:11px}.cb-banner-logo{display:none}.cb-eyebrow{font-size:8px;letter-spacing:1.4px}.cb-arena{gap:12px}.cb-side .cb-banner{min-height:260px;padding:18px 14px}.cb-side .cb-banner-copy{max-width:100%}.cb-side h2{font-size:23px}.cb-balls{opacity:.35;width:110px;height:95px}.cb-mobile-tip{display:block;font-size:10px;color:var(--cb-muted);margin:12px 0 0}.cb-footer{margin-top:20px;padding:18px 16px;flex-direction:column;font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Compact welcome strip; side banners and native game dimensions unchanged. */
.cb-page{padding-top:16px}
.cb-top{margin-bottom:14px}
.cb-banner--top:not(.cb-banner--image){min-height:80px;padding:10px 24px;gap:18px}
.cb-banner--top .cb-eyebrow{font-size:8px;letter-spacing:1.5px;line-height:1.4}
.cb-banner--top h2{font-size:22px;line-height:1.15;margin:4px 0}
.cb-banner--top p{font-size:11px;line-height:1.4}
.cb-banner-logo{width:56px;height:56px;margin:0 8px 0 12px}
@media(max-width:650px){.cb-banner--top:not(.cb-banner--image){min-height:68px;padding:12px 16px}.cb-banner--top h2{font-size:20px;max-width:none;margin-bottom:0}.cb-banner--top p{display:none}}
@media(max-width:650px){.cb-header-inner{flex-wrap:wrap}.cb-header-inner nav{width:100%;justify-content:space-between}}
