/* Jackpots Casinos Games - site styles (structure first, then the Casino Night theme) */
:root{--navy:#0c2354;--navy-d:#07163a;--gold:#f2b705;--gold-d:#b98200;--green:#0f5a2e;--green-d:#0a3d20;--red:#c8102e;--ink:#1d2433}
body{font-family:var(--body-font,system-ui,sans-serif);color:var(--page-ink,var(--ink));background:var(--page-bg,#fff);line-height:1.6}
h1,h2,h3,.navbar-brand{font-family:var(--head-font,inherit)}
a{color:var(--link,#0b4fb3)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.skip-link{position:absolute;z-index:2000;left:.5rem;top:.5rem;background:#fff;padding:.5rem 1rem}

.masthead{padding:1rem 0}
.masthead .logo{width:min(520px,100%);height:auto}
.ad-slot{text-align:center;overflow:hidden}
.ad-slot img,.ad-slot iframe,.ad-slot a{max-width:100%}
.ad-slot img{height:auto}
.leaderboard{padding:.75rem 0}
.leaderboard .ad-slot{display:flex;justify-content:center}

.navbar-jcg{background:var(--nav-bg);box-shadow:0 2px 6px rgba(0,0,0,.25)}
.navbar-jcg .navbar-brand,.navbar-jcg .nav-link{color:var(--nav-ink);font-weight:600}
.navbar-jcg .nav-link:hover,.navbar-jcg .nav-link:focus,.navbar-jcg .nav-link.active{color:var(--gold)}
@media (min-width:992px){.navbar-jcg .nav-link{padding:.9rem 1rem;border-bottom:3px solid transparent}
.navbar-jcg .nav-link.active,.navbar-jcg .nav-link:hover{border-bottom-color:var(--gold)}}
.navbar-jcg .navbar-toggler{border-color:rgba(255,255,255,.5)}
.navbar-jcg .navbar-toggler-icon{filter:invert(1)}

.offer{position:relative;background:var(--card-bg);border:1px solid var(--card-line);border-radius:.75rem;padding:1.25rem;display:flex;justify-content:center;align-items:center;min-height:110px;text-align:center}
.offer .ad-slot{width:100%}
.offer-flag{position:absolute;top:-.8rem;left:1rem;background:var(--red);color:#fff;font-weight:700;font-size:.85rem;padding:.2rem .8rem;border-radius:2rem}
.offer-best{border:2px solid var(--gold);box-shadow:0 8px 24px rgba(0,0,0,.18);padding-top:1.6rem;padding-bottom:1.6rem}
.btn-gold{background:var(--gold);color:#241a00;font-weight:700;border:0}
.btn-gold:hover{background:#ffd23d;color:#241a00}

.sidebar-stack{display:grid;gap:1rem}
.side-card{background:var(--card-bg);border:1px solid var(--card-line);border-radius:.75rem;padding:1rem 1.1rem}
.side-title{font-size:1.05rem;margin-bottom:.5rem}
.side-links li{padding:.35rem 0;border-top:1px solid var(--card-line)}
.side-links li:first-child{border-top:0}
.side-ad{display:flex;justify-content:center}

.site-footer{background:var(--navy-d);color:#cfd7ea;padding:2.5rem 0 1.5rem;margin-top:3rem;border-top:4px solid var(--gold)}
.site-footer a{color:#ffe08a}
.footer-title{font-size:1rem;color:#fff;margin-bottom:.6rem;font-family:var(--head-font)}
.site-footer li{margin-bottom:.3rem}
.footer-rule{border-color:rgba(255,255,255,.2)}
.cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:1080;background:var(--navy-d);color:#fff;padding:.75rem 0;border-top:3px solid var(--gold)}
.cookie-bar a{color:#ffe08a}
.cookie-bar[hidden]{display:none}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Banner sizes: 482 = 125x125 + text, 480 = 468x60 + text, 481 = 120x600 + text, 483 = free-form */
.ad-125{width:160px;font-size:.75rem;line-height:1.25}
.ad-slot{font-size:.8rem;line-height:1.3}
.rail{width:100%;display:flex;justify-content:center}
.rail .ad-slot{width:160px;overflow:visible}
@media (min-width:992px){.rail{position:sticky;top:4.5rem;width:160px}}
.offer .ad-slot{overflow-x:auto;font-size:1rem}
.offer-list{display:grid;gap:1.75rem}
.hero-sm{padding:2rem 0 1rem!important}

/* ===== Casino Night theme ===== */
/* Casino Night theme: dark felt, big hero, offer grid */
body.theme-b{--head-font:'Oswald',Impact,sans-serif;--body-font:'Work Sans',system-ui,sans-serif;
--page-bg:#05281a;--page-ink:#eaf2ec;--link:#ffd86b;--card-bg:#0b3a24;--card-line:#1f6a43;--nav-bg:#041d12;--nav-ink:#f4f1e4}
.theme-b{background-image:radial-gradient(ellipse at 50% -10%,#0f6a3f 0%,#05281a 60%)}
.theme-b .masthead{background:#041d12;border-bottom:1px solid #1f6a43}
.theme-b .leaderboard{background:rgba(0,0,0,.25)}
.theme-b .hero{padding:3rem 0 2rem}
.theme-b .hero h1{font-size:clamp(2.4rem,7vw,4.5rem);line-height:1;text-transform:uppercase;letter-spacing:.02em;color:var(--gold)}
.theme-b .hero .lead{max-width:40rem;color:#d6e6dc}
.theme-b h2{font-size:1.9rem;text-transform:uppercase;letter-spacing:.03em;color:#fff}
.theme-b .offer{background:linear-gradient(160deg,#0d4a2e,#082f1d)}
.theme-b .offer-best{background:linear-gradient(160deg,#10223f,#0a1730);border-color:var(--gold)}
.theme-b .place-card{display:block;height:100%;padding:1rem;background:#0b3a24;border:1px solid #1f6a43;border-radius:.75rem;text-decoration:none;color:#fff;font-weight:600}
.theme-b .place-card:hover{border-color:var(--gold);color:var(--gold)}
.theme-b .site-footer{background:#020f09}
.theme-b .btn-outline-light:hover{color:#000}
.theme-b .hero-sm h1{font-size:clamp(1.8rem,5vw,2.6rem)}
.theme-b .ad-slot,.theme-b .side-ad{color:#d6e6dc}
