/* Build112: additive banners in the native Build107 palette; menus and game cards unchanged. */
body.neon-site.neon-site .b112-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 22px}
body.neon-site.neon-site .b112-heading h2{margin:8px 0 0;font-size:clamp(21px,2vw,30px);color:var(--neon-ink);line-height:1.2}
body.neon-site.neon-site .b112-heading>span{font-size:9px;letter-spacing:1.5px;color:#9cacbb}
body.neon-site #neonLobby .b112-banner-grid{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(260px,1fr);gap:18px;margin-bottom:34px}
body.neon-site #neonLobby .b112-banner-grid .neon-carousel{min-width:0;margin:0;border-color:#3e5261;background:#14242d;border-radius:22px}
body.neon-site #neonLobby .b112-banner-grid .neon-carousel-stage{height:350px!important;min-height:0}
body.neon-site #neonLobby .b112-banner-grid .home-duck-slide{height:100%;background:radial-gradient(ellipse at 81% 49%,#bced7033,transparent 55%),linear-gradient(115deg,#14252d,#14212c)}
body.neon-site #neonLobby .b112-banner-grid .home-duck-slide .neon-carousel-copy{width:56%;padding:48px 0 46px 28px}
body.neon-site #neonLobby .b112-banner-grid .home-duck-slide .neon-carousel-title{font-size:clamp(25px,2.45vw,40px)!important;line-height:1.12;letter-spacing:-1.2px}
body.neon-site #neonLobby .b112-banner-grid .home-duck-slide .neon-carousel-copy p{font-size:11px}
body.neon-site #neonLobby .b112-banner-grid .home-duck-slide>.neon-eyebrow{left:28px;top:24px;font-size:8px;letter-spacing:1.5px}
body.neon-site #neonLobby .b112-banner-grid .home-duck-slide .b112-art{position:absolute;margin:0;pointer-events:none;inset:42px 8px 30px auto;top:42px;width:49%;max-width:none;height:auto;aspect-ratio:auto;transform:none;display:flex;align-items:center;justify-content:center;z-index:0}
body.neon-site #neonLobby .b112-banner-grid .b112-art picture{position:static;display:block;width:100%;height:100%}
body.neon-site #neonLobby .b112-banner-grid .b112-art img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;object-position:center;mask-image:none;-webkit-mask-image:none}
body.neon-site #neonLobby .b112-banner-grid .home-duck-slide:after{background:linear-gradient(90deg,#10202977,transparent 60%);pointer-events:none}
body.neon-site #neonLobby .b112-banner-grid .home-hero-age{left:28px;bottom:18px;font-size:9px}
body.neon-site #neonLobby .b112-banner-grid .neon-hero-actions{gap:12px;margin-top:18px}
body.neon-site #neonLobby .b112-banner-grid .neon-hero-actions .neon-primary{padding:11px 15px;font-size:11px;min-height:42px}
body.neon-site #neonLobby .b112-banner-grid .neon-text-link{font-size:10px}
body.neon-site.neon-site .b112-carousel-controls{position:absolute;right:16px;bottom:14px;z-index:4;display:flex;gap:6px}
body.neon-site.neon-site .b112-carousel-controls button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #71875b70;border-radius:10px;background:#0e1e2bcc;color:#e3efcf;font:24px/1 sans-serif;cursor:pointer}
body.neon-site.neon-site .b112-carousel-controls button:hover{background:#304b38;border-color:var(--neon-accent)}
body.neon-site.neon-site .b112-teasers{display:grid;grid-template-rows:1fr 1fr;gap:16px;min-width:0}
body.neon-site.neon-site .b112-teaser{position:relative;isolation:isolate;display:flex;align-items:center;min-height:160px;overflow:hidden;border:1px solid #3e5261;border-radius:22px;background:radial-gradient(ellipse at 80% 60%,#5e863a30,transparent 78%),#152638;color:var(--neon-ink);text-decoration:none;transition:border-color .2s,transform .2s}
body.neon-site.neon-site .b112-teaser:hover{border-color:#91b56b;transform:translateY(-2px)}
body.neon-site.neon-site .b112-teaser>div{position:relative;z-index:2;width:59%;padding:22px 0 22px 20px;text-shadow:0 2px 14px #05101b}
body.neon-site.neon-site .b112-teaser small{display:block;margin-bottom:8px;color:#c1d0d9;font-size:8px;letter-spacing:1px;font-weight:700}
body.neon-site.neon-site .b112-teaser strong{display:block;font-size:clamp(21px,2.2vw,32px);line-height:1.1;font-weight:800;letter-spacing:-.7px}
body.neon-site.neon-site .b112-teaser span{display:block;margin-top:10px;color:#d1ddcd;font-size:10px}
body.neon-site.neon-site .b112-teaser-bonus strong{color:var(--neon-accent);font-size:clamp(19px,1.8vw,29px)}
body.neon-site.neon-site .b112-teaser picture{position:absolute;right:0;top:8px;bottom:8px;width:61%;display:block;z-index:0}
body.neon-site.neon-site .b112-teaser img{width:100%;height:100%;display:block;object-fit:contain;mask-image:linear-gradient(90deg,transparent,#000 24%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 24%)}
body.neon-site.neon-site .b112-teaser:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#152638b8,transparent 70%);pointer-events:none}
body.neon-site.neon-site :is(.b112-banner-grid,.b112-guest) :is(a,button):focus-visible{outline:2px solid var(--neon-accent);outline-offset:3px}
body.neon-site.neon-site .b112-guest{position:relative;isolation:isolate;min-height:600px;height:calc(100svh - 112px);max-height:850px;margin:0 0 34px;border:1px solid #43594b;border-radius:22px;overflow:hidden;background:#0b1720;display:flex;align-items:center}
body.neon-site.neon-site .b112-world{position:absolute;inset:0;z-index:-2;display:block}
body.neon-site.neon-site .b112-world img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
body.neon-site.neon-site .b112-guest:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#08131be6,transparent 60%),linear-gradient(0deg,#08131bd9,transparent 45%)}
body.neon-site.neon-site .b112-guest-mascot{position:absolute;left:34%;right:6%;top:12%;bottom:9%;display:flex;align-items:center;justify-content:center;transition:right .35s ease;filter:drop-shadow(0 16px 28px #0005);z-index:0}
body.neon-site.neon-site .b112-guest-mascot picture{display:block;width:100%;height:100%}
body.neon-site.neon-site .b112-guest-mascot img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
body.neon-site.neon-site .b112-guest-copy{position:relative;z-index:1;width:47%;padding:34px}
body.neon-site.neon-site .b112-guest-copy .neon-eyebrow{font-size:9px;letter-spacing:1.5px;color:#d2e9c1;display:inline-flex;align-items:center;gap:7px}
body.neon-site.neon-site .b112-guest-copy .neon-eyebrow b{width:5px;height:5px;border-radius:50%;background:var(--neon-accent)}
body.neon-site.neon-site .b112-guest h1{margin:24px 0 18px;font-size:clamp(30px,3.3vw,54px);font-weight:800;letter-spacing:-1.5px;line-height:1.06;color:#f0f7fd;text-shadow:0 3px 22px #0009}
body.neon-site.neon-site .b112-guest h1 em{font-style:normal;color:var(--neon-accent)}
body.neon-site.neon-site .b112-guest-copy>p{color:#d4dee5;font-size:12px;line-height:1.65}
body.neon-site.neon-site .b112-guest-offer{display:flex;align-items:center;gap:12px;margin:25px 0}
body.neon-site.neon-site .b112-guest-offer>span{display:grid;place-items:center;width:43px;height:43px;border:1px solid #bccd6966;border-radius:13px;background:#213827aa;color:#e2f1aa;font-size:27px}
body.neon-site.neon-site .b112-guest-offer small{display:block;color:#d7dda9;font-size:8px;letter-spacing:1.3px;font-weight:700}
body.neon-site.neon-site .b112-guest-offer strong{display:block;color:var(--neon-accent);font-size:25px;line-height:1.25}
body.neon-site.neon-site .b112-guest-offer div>span{display:block;color:#b9c8cd;font-size:9px;margin-top:4px}
body.neon-site.neon-site .b112-guest-actions{display:flex;gap:10px;flex-wrap:wrap}
body.neon-site.neon-site .b112-guest-actions a{font-size:11px;padding:12px 14px;min-height:44px}
body.neon-site.neon-site .b112-guest-copy .b112-guest-note{font-size:9px;margin:20px 0 0;color:#b9c6c8}
body.neon-site.neon-site .b112-guest-note a{color:#d8e5d6;text-decoration:none}
body.neon-site.neon-site .b112-guest-note a:hover{text-decoration:underline}
body.neon-site.neon-site .b112-explore{position:absolute;bottom:20px;left:34px;color:#ccdbc7;font-size:10px;text-decoration:none;z-index:2}
body.neon-site.neon-site .b112-auth-tabs{display:flex;gap:6px;margin:0 0 20px;padding:4px;background:#0e1b2b;border-radius:11px}
body.neon-site.neon-site .b112-auth-tabs button{flex:1;border:1px solid transparent;border-radius:8px;padding:10px 8px;font:inherit;font-size:12px;color:#aabcca;background:transparent;cursor:pointer}
body.neon-site.neon-site .b112-auth-tabs button[aria-pressed=true]{color:var(--neon-accent);border-color:#a2bf6b80;background:#30483a80}
body.neon-site.neon-site.b112-auth-open.neon-home-active .b112-guest-mascot{right:28%;left:32%}
@media(min-width:1100px){
 body.neon-site.neon-site.b112-auth-open.neon-home-active #neonAuthOverlay{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;align-items:center;justify-content:flex-end;padding:80px 32px 26px;pointer-events:none}
 body.neon-site.neon-site.b112-auth-open.neon-home-active #neonAuthOverlay>div{width:350px;max-height:calc(100svh - 110px);pointer-events:auto;background:#142739ed;border-color:#80956770;box-shadow:0 20px 65px #0007;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
 body.neon-site.neon-site.b112-auth-open.neon-home-active .b112-guest-copy{width:38%;padding:30px}
 body.neon-site.neon-site.b112-auth-open.neon-home-active .b112-guest h1{font-size:clamp(30px,2.9vw,46px)}
}
@media(max-width:1100px){
 body.neon-site #neonLobby .b112-banner-grid{grid-template-columns:minmax(0,1fr)}
 body.neon-site.neon-site .b112-teasers{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:14px}
 body.neon-site.neon-site .b112-teaser{min-height:155px}
 body.neon-site.neon-site .b112-heading>span{display:none}
 body.neon-site.neon-site .b112-guest{min-height:550px}
 body.neon-site.neon-site .b112-guest-copy{width:52%;padding:27px}
}
@media(max-width:760px){
 body.neon-site.neon-site .b112-heading{margin-bottom:16px}
 body.neon-site #neonLobby .b112-banner-grid{gap:12px;margin-bottom:26px}
 body.neon-site #neonLobby .b112-banner-grid .neon-carousel-stage{height:480px!important;min-height:0}
 body.neon-site #neonLobby .b112-banner-grid .home-duck-slide{align-items:flex-end;flex-direction:column;justify-content:flex-end}
 body.neon-site #neonLobby .b112-banner-grid .home-duck-slide .neon-carousel-copy{width:100%;padding:16px 20px 52px}
 body.neon-site #neonLobby .b112-banner-grid .home-duck-slide .neon-carousel-title{font-size:29px!important;letter-spacing:-.8px}
 body.neon-site #neonLobby .b112-banner-grid .home-duck-slide .b112-art{position:absolute;margin:0;pointer-events:none;inset:45px 12px auto;width:auto;max-width:none;height:235px}
 body.neon-site #neonLobby .b112-banner-grid .home-duck-slide>.neon-eyebrow{left:20px;top:18px;font-size:8px}
 body.neon-site #neonLobby .b112-banner-grid .home-hero-age{left:20px;bottom:17px}
 body.neon-site #neonLobby .b112-banner-grid .home-duck-slide:after{background:linear-gradient(0deg,#10202985,transparent 70%)}
 body.neon-site.neon-site .b112-teasers{gap:10px}
 body.neon-site.neon-site .b112-teaser{min-height:172px;align-items:flex-end;border-radius:17px}
 body.neon-site.neon-site .b112-teaser>div{width:100%;padding:12px;z-index:2;background:linear-gradient(0deg,#122333,#122333bb 70%,transparent)}
 body.neon-site.neon-site .b112-teaser picture{inset:0 4px auto;width:auto;height:101px}
 body.neon-site.neon-site .b112-teaser img{mask-image:none;-webkit-mask-image:none}
 body.neon-site.neon-site .b112-teaser small{font-size:7px;margin-bottom:5px;letter-spacing:.5px}
 body.neon-site.neon-site .b112-teaser strong{font-size:21px}
 body.neon-site.neon-site .b112-teaser-bonus strong{font-size:18px}
 body.neon-site.neon-site .b112-teaser span{font-size:9px;margin-top:6px}
 body.neon-site.neon-site .b112-teaser:after{background:linear-gradient(0deg,#15263850,transparent 80%)}
 body.neon-site.neon-site .b112-guest{height:auto;min-height:680px;max-height:none;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;border-radius:20px}
 body.neon-site.neon-site .b112-world img{object-position:52% center}
 body.neon-site.neon-site .b112-guest-mascot,body.neon-site.neon-site.b112-auth-open.neon-home-active .b112-guest-mascot{left:6%;right:6%;top:20px;bottom:auto;height:295px;transition:none}
 body.neon-site.neon-site .b112-guest-copy{width:100%;padding:310px 22px 60px}
 body.neon-site.neon-site .b112-guest:after{background:linear-gradient(0deg,#08131bfa,#08131bda 45%,#08131b22 74%,#08131b11)}
 body.neon-site.neon-site .b112-guest h1{font-size:34px;margin:16px 0}
 
 body.neon-site.neon-site .b112-guest-copy>p{font-size:12px}
 body.neon-site.neon-site .b112-guest-offer{margin:19px 0}
 body.neon-site.neon-site .b112-explore{left:22px;bottom:20px}
 body.neon-site.neon-site.b112-auth-open #neonAuthOverlay{align-items:flex-end;padding:10px 10px max(12px,env(safe-area-inset-bottom));background:#06101b66}
 body.neon-site.neon-site.b112-auth-open #neonAuthOverlay>div{width:100%;max-height:calc(100svh - 28px);border-radius:22px 22px 14px 14px}
}
@media(prefers-reduced-motion:reduce){body.neon-site.neon-site .b112-guest-mascot,body.neon-site.neon-site .b112-teaser{transition:none}body.neon-site.neon-site .b112-teaser:hover{transform:none}}
/* Legacy slides used a wider fixed canvas. Keep every slide within the new banner cell. */
body.neon-site #neonLobby .b112-banner-grid .neon-carousel-stage,
body.neon-site #neonLobby .b112-banner-grid .neon-carousel-slide{width:100%;max-width:100%;min-width:0;min-height:0;box-sizing:border-box}
body.neon-site #neonLobby .b112-banner-grid .home-duck-slide>.neon-eyebrow{display:inline-flex}
