:root{
  --primary:#FF5F06; --primary-hover:#FF7A33; --accent:var(--primary);
  --bg-page:#080c12; --bg-main:#0D141C; --bg-elevated:#131c27;
  --text-main:#FFFFFF; --text-muted:#AAACB0;
  --hairline:color-mix(in srgb, var(--text-main) 8%, transparent);
  --hairline-strong:color-mix(in srgb, var(--text-main) 16%, transparent);
  --button-text:#fff;
  --radius:14px;
  --font-body:"Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-display:"Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --gold-a:#F8DC8A; --gold-b:#D5A330;

  /* ── engine-shared compat aliases (render_footer_block()/render_cookie_banner()) ── */
  --border-0:var(--hairline);
  --header-border:var(--hairline);
  --footer-bg:var(--bg-page);
  --cookie-bg:var(--bg-elevated);
  --surface-0:var(--bg-elevated);
  --surface-1:color-mix(in srgb, var(--bg-elevated) 82%, white 8%);
  --text-0:var(--text-main);
  --text-1:var(--text-muted);
  --muted:var(--text-muted);
  --accent-0:var(--primary);
  --link:var(--primary);
}

/* ── Phase 4: 5 color palettes via body[data-theme="1..5"] (theme 1 = :root
   defaults above). Canonical variable set shared with brand-v6/brand-v8.
   --gold-a/--gold-b intentionally stay constant across themes — used as a
   fixed "premium/trust" accent (stat highlights, crypto CTA), not a brand color. ── */
body[data-theme="2"]{
  --primary:#2C75FF; --primary-hover:#478CFF;
  --bg-page:#EEF3FB; --bg-main:#F6F9FE; --bg-elevated:#FFFFFF;
  --text-main:#172133; --text-muted:#55657B;
  --hairline:rgba(23,33,51,.12); --hairline-strong:rgba(23,33,51,.22);
  --button-text:#fff;
}
body[data-theme="3"]{
  --primary:#2FDE73; --primary-hover:#53F087;
  --bg-page:#061c15; --bg-main:#0B2A1F; --bg-elevated:#123829;
  --text-main:#E8FFF2; --text-muted:#A2D4B9;
  --hairline:rgba(232,255,242,.08); --hairline-strong:rgba(232,255,242,.16);
  --button-text:#072111;
}
body[data-theme="4"]{
  --primary:#7B42FF; --primary-hover:#A668FF;
  --bg-page:#0A0D2A; --bg-main:#19123C; --bg-elevated:#241a4d;
  --text-main:#F4EFFF; --text-muted:#BCA9EF;
  --hairline:rgba(244,239,255,.08); --hairline-strong:rgba(244,239,255,.16);
  --button-text:#fff;
}
body[data-theme="5"]{
  --primary:#D6B26F; --primary-hover:#E3C88C;
  --bg-page:#1A1611; --bg-main:#221B12; --bg-elevated:#2c2317;
  --text-main:#F6EDD8; --text-muted:#C7B28A;
  --hairline:rgba(246,237,216,.08); --hairline-strong:rgba(246,237,216,.16);
  --button-text:#1c150b;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;overflow-x:hidden;max-width:100%}
body{background:var(--bg-main); color:var(--text-main);
  font-family:var(--font-body); font-size:16px; line-height:1.5;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;}
a{color:inherit;text-decoration:none}
img,video,iframe{max-width:100%;height:auto}
.container{width:min(1180px,100% - 2.5rem);margin-inline:auto}

/* ── buttons ── */
.btn{display:inline-flex;align-items:center;gap:.5rem;font-weight:700;font-family:var(--font-display);
  border-radius:999px;padding:.7rem 1.35rem;font-size:.95rem;cursor:pointer;border:1px solid transparent;
  transition:transform .15s ease, background .15s ease, box-shadow .15s ease;line-height:1;white-space:nowrap}
.btn-lg{padding:.9rem 1.6rem;font-size:1rem}
.btn-arrow svg{width:15px;height:15px;display:block}
.btn-primary{background:var(--primary);color:var(--button-text);box-shadow:0 6px 22px color-mix(in srgb,var(--primary) 45%,transparent)}
.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--text-main);border-color:var(--hairline-strong)}
.btn-ghost:hover{border-color:var(--primary);color:var(--primary)}

/* ── reading progress ── */
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:120;background:transparent}
.reading-progress-fill{height:100%;transform:scaleX(0);transform-origin:0 50%;
  background:linear-gradient(90deg,var(--primary),var(--gold-a))}

/* ── promo strip ── */
.promo-strip{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.5rem 1rem;
  background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 22%,var(--bg-page)),var(--bg-page));
  border-bottom:1px solid var(--hairline);font-size:.86rem;position:relative;z-index:60}
.promo-dot{width:8px;height:8px;border-radius:50%;background:var(--primary);animation:pulse-dot 2s infinite}
@keyframes pulse-dot{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--primary) 55%,transparent)}70%{box-shadow:0 0 0 7px transparent}100%{box-shadow:0 0 0 0 transparent}}
.promo-prefix{color:var(--text-muted);margin-right:.35rem}
.promo-headline{font-weight:700}
.promo-arrow svg{width:15px;height:15px;display:block;transition:transform .15s}
.promo-strip:hover .promo-arrow svg{transform:translateX(3px)}

/* ── header ── */
.site-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(12px);
  background:color-mix(in srgb,var(--bg-page) 82%,transparent);border-bottom:1px solid var(--hairline)}
.header-shell{display:flex;align-items:center;gap:1.25rem;padding:.7rem 1.25rem;max-width:1220px;margin-inline:auto}
.logo{display:flex;align-items:center;gap:.6rem;font-family:var(--font-display);font-weight:900;font-size:1.15rem}
.logo-img{height:38px;width:auto;display:block}
.primary-nav{margin-left:auto}
.primary-nav ul{display:flex;gap:1.4rem;list-style:none;margin:0;padding:0}
.nav-link{color:var(--text-muted);font-weight:600;font-size:.92rem;transition:color .15s}
.nav-link:hover{color:var(--text-main)}
.header-cta-group{display:flex;gap:.6rem;margin-left:1rem}
@media(max-width:900px){
  .primary-nav,.header-cta-group .btn-ghost{display:none}
  .header-cta-group{margin-left:auto}
}

/* ── generic section header ── */
section{position:relative}
.section-header{margin-bottom:2rem}
.section-header .eyebrow,.eyebrow{display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;color:var(--primary);margin:0 0 .5rem}
h2{font-family:var(--font-display);font-weight:900;letter-spacing:-.02em;font-size:clamp(1.6rem,3vw,2.3rem);margin:0 0 .6rem;line-height:1.12}
h3{font-family:var(--font-display);font-weight:800;font-size:1.15rem;margin:0 0 .4rem}

/* reveal-on-scroll */
[data-reveal],[data-reveal-stagger]>*,[data-prose-reveal]{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
[data-reveal].is-visible,[data-reveal-stagger].is-visible>*,[data-prose-reveal].is-visible{opacity:1;transform:none}
[data-reveal-stagger].is-visible>*:nth-child(2){transition-delay:.08s}
[data-reveal-stagger].is-visible>*:nth-child(3){transition-delay:.16s}
[data-reveal-stagger].is-visible>*:nth-child(4){transition-delay:.24s}

/* ── hero (funnel-classic: static bg + centered copy + bonus bezel + bottom strip) ── */
.hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(2.5rem,6vw,4.5rem) 0 clamp(1.5rem,3vw,2.5rem)}
.hero-bg-main{position:absolute;inset:0;z-index:-3}
.hero-bg-main img{width:100%;height:100%;object-fit:cover;object-position:center;
  -webkit-mask-image:radial-gradient(ellipse 120% 100% at 50% 30%,#000 45%,transparent 92%);
  mask-image:radial-gradient(ellipse 120% 100% at 50% 30%,#000 45%,transparent 92%)}
/* Light scrim only — just enough gradient to lift contrast, the photo stays
   clearly visible. Readability is guaranteed instead by pinning .hero-copy
   text to a fixed light palette + drop-shadow below, independent of which
   of the 5 color themes is active (a photo's brightness has nothing to do
   with the page's theme colors). */
.hero-bg-veil{position:absolute;inset:0;z-index:-2;
  background:radial-gradient(55% 55% at 50% 20%,color-mix(in srgb,var(--primary) 16%,transparent),transparent 65%),
    linear-gradient(180deg,rgba(4,6,10,.42) 0%,rgba(4,6,10,.22) 45%,rgba(4,6,10,.1) 75%,transparent 95%)}
.hero-ambient{position:absolute;inset:0;z-index:-1;pointer-events:none}
.ambient-orb{position:absolute;border-radius:50%;filter:blur(50px);opacity:.5;animation:orb-pulse 7s ease-in-out infinite}
.orb-a{width:280px;height:280px;background:color-mix(in srgb,var(--primary) 55%,transparent);top:-60px;left:8%}
.orb-b{width:220px;height:220px;background:color-mix(in srgb,var(--gold-a) 50%,transparent);top:40px;right:6%;animation-delay:-3.5s}
@keyframes orb-pulse{0%,100%{transform:scale(1);opacity:.45}50%{transform:scale(1.25);opacity:.7}}
.hero-grid{max-width:640px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.1rem}
.hero-copy{color:#fff}
.hero-copy h1{font-family:var(--font-display);font-weight:900;letter-spacing:-.02em;font-size:clamp(2.4rem,6vw,3.6rem);margin:.3rem 0 0;
  background:linear-gradient(180deg,#fff,#ffd9c2);-webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 2px 12px rgba(0,0,0,.55)}
.hero-subhead{font-size:1.15rem;color:#fff;margin:.4rem 0 0;text-shadow:0 1px 8px rgba(0,0,0,.75),0 1px 2px rgba(0,0,0,.9)}
.hero-trust-row{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.1rem;padding:0;margin:.6rem 0 0;
  font-size:.85rem;color:#fff;font-weight:600;text-shadow:0 1px 8px rgba(0,0,0,.75),0 1px 2px rgba(0,0,0,.9)}
.hero-trust-row li{display:flex;align-items:center;gap:.4rem}
.hero-trust-row li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--primary)}

/* bonus bezel card */
.hero-bonus{width:min(100%,380px);margin-top:.6rem}
.bezel{background:color-mix(in srgb,var(--text-main) 4%,transparent);border:1px solid var(--hairline);
  border-radius:20px;padding:6px}
.bezel-inner{position:relative;overflow:hidden;border-radius:14px;padding:1.6rem 1.5rem;
  background:color-mix(in srgb,var(--bg-elevated) 75%,transparent);backdrop-filter:blur(24px) saturate(140%);
  box-shadow:0 4px 24px -8px rgba(0,0,0,.4),inset 0 1px 1px color-mix(in srgb,var(--text-main) 12%,transparent)}
.bonus-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.1em;color:var(--primary);margin:0 0 .6rem}
.bonus-headline{display:flex;align-items:baseline;justify-content:center;gap:.4rem;font-family:var(--font-display)}
.bonus-percentage{font-size:2.6rem;font-weight:900;color:var(--primary);letter-spacing:-.03em}
.bonus-up-to{font-size:.9rem;color:var(--text-muted);font-weight:600}
.bonus-max{font-size:1.6rem;font-weight:800}
.bonus-spins{display:flex;align-items:center;justify-content:center;gap:.4rem;font-weight:700;margin:.35rem 0 1rem;color:var(--primary)}
.bonus-spins-dot{width:6px;height:6px;border-radius:50%;background:var(--primary)}
.bonus-checklist{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.45rem;text-align:left}
.bonus-checklist li{display:flex;gap:.5rem;font-size:.88rem;color:var(--text-muted)}
.bonus-checklist li::before{content:"✓";color:var(--primary);font-weight:900;flex:none}
.bonus-fineprint{font-size:.72rem;color:var(--text-muted);margin:0;line-height:1.4}

/* bottom strip: values | CTAs | payment glyphs */
.hero-strip-wrapper{margin-top:2rem}
.hero-bottom-strip{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;justify-content:center;
  background:color-mix(in srgb,var(--bg-elevated) 70%,transparent);backdrop-filter:blur(16px);
  border:1px solid var(--hairline);border-radius:18px;padding:1.25rem 1.5rem}
.hbs-panel{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;align-items:center;justify-content:center}
.hbs-value-list{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;padding:0;margin:0;font-size:.86rem;color:var(--text-muted);font-weight:600}
.hbs-value-item{display:flex;align-items:center;gap:.4rem}
.hbs-value-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);flex:none}
.hbs-divider{width:1px;align-self:stretch;background:var(--hairline);min-height:28px}
.hbs-ctas{gap:.7rem}
.hbs-trust{gap:.6rem 1rem;font-size:.78rem;color:var(--text-muted);font-weight:700;letter-spacing:.02em}
@media(max-width:760px){.hbs-divider{display:none}.hero-bottom-strip{flex-direction:column}}

/* liveops row */
.liveops-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.5rem}
.liveops-card{background:color-mix(in srgb,var(--bg-elevated) 70%,transparent);backdrop-filter:blur(14px);
  border:1px solid var(--hairline);border-radius:16px;padding:1rem 1.2rem;text-align:center}
.liveops-label{font-size:.75rem;color:var(--text-muted);font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:0 0 .3rem}
.liveops-stat{margin:0;font-family:var(--font-display);font-weight:900;font-size:1.5rem;display:flex;align-items:baseline;justify-content:center;gap:.15rem;white-space:nowrap}
@media(max-width:420px){.liveops-stat{font-size:1.15rem}}
.liveops-suffix{color:var(--primary)}

/* ── crypto section ── */
.crypto-section{padding:2.5rem 0}
.crypto-cta{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,var(--bg-elevated)),var(--bg-elevated));
  border:1px solid var(--hairline-strong);border-radius:20px;padding:1.75rem 2rem}
.crypto-orb{position:absolute;width:220px;height:220px;border-radius:50%;right:-60px;top:-60px;z-index:-1;
  background:color-mix(in srgb,var(--primary) 40%,transparent);filter:blur(50px)}
.crypto-icon{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:14px;flex:none;
  color:var(--primary);background:color-mix(in srgb,var(--primary) 16%,transparent)}
.crypto-icon svg{width:26px;height:26px}
.crypto-copy{flex:1;min-width:220px}
.crypto-copy h2{margin:0 0 .3rem}
.crypto-copy p{margin:0;color:var(--text-muted)}
.crypto-btn{flex:none}

/* ── payments ── */
.payments-section{padding:4rem 0}
.payments-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2rem}
.pf{display:flex;gap:.9rem;align-items:flex-start}
.pf-icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;flex:none;
  color:var(--primary);background:color-mix(in srgb,var(--primary) 14%,transparent)}
.pf-icon svg{width:22px;height:22px}
.pf-label{margin:0 0 .2rem}
.pf-proof{margin:0;color:var(--text-muted);font-size:.88rem}
.methods-grid{display:flex;flex-wrap:wrap;gap:.6rem}
.method-tile{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-radius:10px;
  background:var(--bg-elevated);border:1px solid var(--hairline);font-weight:700;font-size:.85rem;color:var(--text-main);
  transition:border-color .15s,transform .15s}
.method-tile:hover{border-color:color-mix(in srgb,var(--primary) 55%,transparent);transform:translateY(-2px)}

/* ── stats strip ── */
.stats-strip{padding:3.5rem 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);
  background:color-mix(in srgb,var(--bg-page) 40%,transparent)}
.stats-header{text-align:center;margin-bottom:2rem}
.stats-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
@media(min-width:700px){.stats-grid{grid-template-columns:repeat(4,1fr)}}
.stat-tile{text-align:center;background:var(--bg-elevated);border:1px solid var(--hairline);border-radius:var(--radius);padding:1.2rem 1rem}
.stat-value{display:block;font-family:var(--font-display);font-weight:900;font-size:1.8rem;color:var(--primary)}
.stat-caption{display:block;font-weight:700;margin-top:.25rem}
.stat-detail{display:block;color:var(--text-muted);font-size:.8rem;margin-top:.3rem;line-height:1.4}

/* ── games ── */
.games-section{padding:4rem 0}
.game-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}
@media(min-width:600px){.game-grid{grid-template-columns:repeat(3,1fr);gap:1.1rem}}
@media(min-width:1000px){.game-grid{grid-template-columns:repeat(4,1fr)}}
.game-card{position:relative;display:block;border-radius:var(--radius);overflow:hidden;aspect-ratio:1/1.15;
  border:1px solid var(--hairline);isolation:isolate;transition:transform .18s ease,border-color .18s ease;
  box-shadow:0 8px 22px -12px rgba(0,0,0,.5)}
.game-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 55%,transparent)}
.game-card-art,.game-card-img{position:absolute;inset:0;width:100%;height:100%}
.game-card-img{object-fit:cover;z-index:-2}
/* Fixed light colors below (not theme vars) — this veil is always
   near-black at the bottom regardless of theme; theme-driven text
   (dark on light themes) would be invisible on it. */
.game-card-veil{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 32%,rgba(6,8,14,.55) 58%,rgba(4,6,10,.94) 100%)}
.game-card-meta{position:absolute;left:0;right:0;bottom:0;padding:.85rem .9rem;display:flex;flex-direction:column;gap:.25rem}
.game-card-title{font-weight:800;font-size:.95rem;line-height:1.2;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5)}
.game-card-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.72rem}
.game-card-provider{color:rgba(255,255,255,.72);text-transform:uppercase;letter-spacing:.03em;font-weight:600;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.game-card-rating{display:inline-flex;align-items:center;gap:.2rem;color:#ffd166;font-weight:700;flex:none}
.game-card-rating svg{width:12px;height:12px}
.game-card-cta{position:absolute;top:.6rem;right:.6rem;display:inline-flex;align-items:center;gap:.25rem;
  font-size:.72rem;font-weight:800;color:var(--button-text);background:color-mix(in srgb,var(--primary) 90%,transparent);
  padding:.25rem .55rem;border-radius:999px;opacity:0;transform:translateY(-4px);transition:.18s}
.game-card-cta svg{width:12px;height:12px}
.game-card:hover .game-card-cta{opacity:1;transform:none}

/* ── trust ── */
.trust-section{padding:4rem 0}
.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}
.trust-pillar{text-align:center}
.trust-icon{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:14px;margin-bottom:.8rem;
  color:var(--primary);background:color-mix(in srgb,var(--primary) 14%,transparent)}
.trust-icon svg{width:26px;height:26px}
.trust-proof{color:var(--text-muted);font-size:.9rem;margin:.3rem 0 0}

/* ── seo article ── */
.seo-section{padding:4rem 0}
.seo-layout{display:grid;grid-template-columns:220px minmax(0,1fr) 300px;gap:2.5rem;align-items:start}
@media(max-width:1080px){.seo-layout{grid-template-columns:220px minmax(0,1fr)}.seo-sidebar{display:none}}
@media(max-width:900px){.seo-layout{grid-template-columns:1fr}.seo-toc{display:none}}
.seo-toc{position:sticky;top:90px}
.seo-toc-title{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-weight:800;margin-bottom:.6rem;padding-left:.875rem}
.seo-toc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.seo-toc-link{display:block;padding:.5rem 0 .5rem .875rem;border-left:2px solid var(--hairline);color:var(--text-muted);font-size:.85rem;line-height:1.4;
  transition:color .15s,border-left-color .15s}
.seo-toc-link:hover{color:var(--text-main);border-left-color:var(--hairline-strong)}
.seo-toc-link.is-active{color:var(--primary);border-left-color:var(--primary);font-weight:600}
.seo-sidebar{position:sticky;top:90px}
.sidebar-bonus{background:linear-gradient(165deg,color-mix(in srgb,var(--primary) 14%,var(--bg-elevated)),var(--bg-elevated));
  border:1px solid var(--hairline-strong);border-radius:18px;padding:1.5rem 1.25rem;box-shadow:0 18px 50px rgba(0,0,0,.4)}
.sidebar-bonus-eyebrow{display:inline-flex;align-items:center;gap:.4rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin:0 0 .75rem}
.sidebar-bonus-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);box-shadow:0 0 6px var(--primary)}
.sidebar-bonus-percent{font-family:var(--font-display);font-size:2.6rem;font-weight:900;color:var(--primary);line-height:.95;margin:0 0 .4rem;letter-spacing:-.04em}
.sidebar-bonus-detail{color:var(--text-muted);margin:0 0 1.1rem;line-height:1.5}
.sidebar-bonus-detail strong{color:var(--text-main)}
.sidebar-bonus-cta{width:100%;justify-content:center}
.sidebar-bonus-note{color:var(--text-muted);font-size:.72rem;margin:.8rem 0 0;line-height:1.4}
.prose{max-width:70ch}
.prose h2{position:relative;padding-left:1.1rem;margin:2rem 0 .7rem}
.prose h2:before{content:"";position:absolute;left:0;top:.55em;width:.75rem;height:.18rem;background:var(--primary);border-radius:1px;box-shadow:0 0 8px color-mix(in srgb,var(--primary) 50%,transparent)}
.prose h3{margin:1.4rem 0 .4rem;color:var(--primary)}
.prose p{color:var(--text-muted);line-height:1.7;margin:.6rem 0}
.prose ul{color:var(--text-muted);line-height:1.7;padding-left:1.2rem}
.prose blockquote{margin:1.2rem 0;padding:1rem 1.2rem;border-left:3px solid var(--primary);
  background:color-mix(in srgb,var(--primary) 8%,transparent);border-radius:0 10px 10px 0;font-weight:600}
.prose .content-block{margin:0}

/* ── faq ── */
.faq-section{padding:4rem 0}
.faq-list{display:flex;flex-direction:column;gap:.6rem;max-width:820px;margin-inline:auto}
/* engine's render_faq_items() emits button.faq-question + div.faq-answer */
.faq-item{background:var(--bg-elevated);border:1px solid var(--hairline);border-radius:12px;overflow:hidden}
.faq-item summary{cursor:pointer;list-style:none;padding:1rem 1.2rem;font-weight:700;display:flex;justify-content:space-between;gap:1rem;align-items:center}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";color:var(--primary);font-size:1.3rem;font-weight:400;transition:transform .2s}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item p{color:var(--text-muted);line-height:1.6;padding:0 1.2rem 1.1rem;margin:0}
.faq-question{width:100%;background:transparent;border:0;cursor:pointer;padding:1rem 1.2rem;font-weight:700;
  font-family:inherit;font-size:1rem;color:var(--text-main);display:flex;justify-content:space-between;gap:1rem;align-items:center}
.faq-icon{color:var(--primary);font-size:1.3rem;font-weight:400;transition:transform .2s}
.faq-question[aria-expanded="true"] .faq-icon{transform:rotate(45deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .25s ease}
.faq-answer p{color:var(--text-muted);line-height:1.6;padding:0 1.2rem 1.1rem;margin:0}

/* ── sticky banner ── */
.sticky-banner-wrap{position:fixed;left:0;right:0;bottom:0;z-index:70;padding:.6rem}
.sticky-banner{max-width:1100px;margin-inline:auto;display:flex;align-items:center;gap:1rem;
  background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 10%,var(--bg-elevated)),var(--bg-elevated));
  backdrop-filter:blur(12px);
  border:1px solid color-mix(in srgb,var(--primary) 45%,transparent);border-radius:16px;padding:.85rem 1.25rem;
  box-shadow:0 12px 40px rgba(0,0,0,.5),0 0 0 1px color-mix(in srgb,var(--primary) 12%,transparent),0 0 34px color-mix(in srgb,var(--primary) 22%,transparent)}
.banner-text{display:flex;flex-direction:column;gap:.1rem;min-width:0}
.banner-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--text-muted);font-weight:800}
.banner-dot{width:7px;height:7px;border-radius:50%;background:var(--primary);animation:pulse-dot 2s infinite}
.banner-headline{font-weight:800;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.banner-cta{margin-left:auto;flex:none}
@media(max-width:520px){.banner-headline{font-size:.85rem}}

/* ── footer / cookie-banner (verbatim from assets/brand-v5/styles.css, via
   the var() aliases declared at the top of this file) ── */
.site-footer{border-top:1px solid var(--border-0);margin-top:28px;background:var(--footer-bg)}
.footer-top-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:26px;padding:22px 0 26px}
.footer-col h3{margin:0 0 8px;font-size:15px}
.footer-col p,.footer-col li,.footer-col a{font-size:13px;color:var(--text-1);line-height:1.45}
.footer-links-list{margin:0;padding:0;list-style:none;display:grid;gap:4px}
.footer-links-list a{color:var(--text-1)}
.footer-links-list a:hover{color:var(--accent-0)}
.footer-accordion{display:none}
.footer-acc-item{border-top:1px solid var(--header-border)}
.footer-acc-trigger{width:100%;border:0;background:transparent;color:var(--text-0);font:inherit;font-size:16px;font-weight:800;
  text-align:left;display:flex;align-items:center;justify-content:space-between;padding:16px 2px;cursor:pointer}
.footer-acc-chevron{color:var(--muted);transition:transform .2s ease}
.footer-acc-panel{max-height:0;overflow:hidden;transition:max-height .25s ease}
.footer-acc-panel .footer-links-list{padding:0 2px 14px;gap:10px}
.footer-acc-item.is-open .footer-acc-chevron{transform:rotate(90deg)}
.footer-nav-row{border-top:1px solid var(--header-border);border-bottom:1px solid var(--header-border);padding:14px 0;
  display:flex;align-items:center;justify-content:space-between;gap:12px}
.footer-nav-row p{margin:0;color:var(--text-1);font-size:13px}
.footer-page-nav{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}
.footer-page-nav a{color:var(--link);font-weight:700;font-size:14px}
.social-links{display:inline-flex;align-items:center;gap:10px}
.social-link{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;
  border:1px solid var(--border-0);background:var(--surface-0);color:var(--text-1);
  transition:transform .18s ease,color .18s ease,border-color .18s ease,background .18s ease}
.social-link svg{width:18px;height:18px;fill:currentColor}
.social-link:hover{color:var(--accent-0);border-color:var(--accent-0);transform:translateY(-2px)}
.footer-logo-block{padding:12px 0 10px;text-align:center;position:relative;z-index:2}
.footer-logo-block h3{margin:0 0 14px;font-size:22px;font-weight:800;letter-spacing:.01em;font-family:var(--font-display)}
.footer-logo-row{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;align-items:center;position:relative;z-index:2}
.footer-logo-row.collaborators{margin-bottom:28px}
.footer-logo-row.payments{margin-bottom:0}
.footer-logo-row.trust{margin-top:22px}
.footer-logo-row.collaborators li,.footer-logo-row.payments li{min-height:48px;padding:0;display:inline-flex;align-items:center;justify-content:center}
.footer-logo-row img{width:120px;height:56px;object-fit:contain;max-width:min(120px,100%);max-height:56px;opacity:1;filter:none;transition:transform .25s ease}
@media(hover:hover){.footer-logo-row li:hover img{transform:scale(1.04)}}
.footer-legal{border-top:1px solid var(--header-border);padding:16px 0 84px}
.footer-legal p{margin:6px 0;text-align:center;color:var(--muted);font-size:13px}
.footer-legal a{color:var(--link);font-weight:700;text-decoration:underline}

.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--cookie-bg);border-top:1px solid var(--border-0)}
.cookie-banner-inner{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}
.cookie-banner p{margin:0;font-size:12px;color:var(--muted)}
.cookie-banner p a{color:var(--link);font-weight:700}
.cookie-actions{display:flex;gap:8px}
.cookie-actions button{border:1px solid var(--border-0);border-radius:8px;min-width:72px;height:30px;font-size:12px;font-weight:800;
  color:var(--text-0);background:var(--surface-0);cursor:pointer}
.cookie-actions button:hover{background:var(--surface-1)}

@media(max-width:900px){
  .footer-top-grid{display:none}
  .footer-accordion{display:block}
}
@media(max-width:640px){
  .footer-nav-row{flex-direction:column;align-items:flex-start}
  .footer-page-nav{justify-content:flex-start}
  .cookie-banner-inner{flex-direction:column;align-items:flex-start}
}

.footer-inner{display:flex;flex-wrap:wrap;gap:2.5rem;justify-content:space-between}
.footer-logo-img{height:32px;width:auto}

/* ── Фаза 5: compat shim for the engine's shared subpage layout
   (templates/brand-template-v3-page.html — about-us/privacy/responsible-
   gaming/terms-of-use). See assets/brand-v6/styles.css for rationale;
   identical block, same canonical vars. ── */
.site-header{border-bottom:1px solid var(--hairline);background:var(--bg-page)}
.site-header .header-inner{display:flex;align-items:center;gap:1.2rem;padding:1rem 0}
.site-logo img{height:34px;width:auto}
.main-nav{display:flex;gap:1.2rem;margin-left:auto}
.main-nav a{color:var(--text-muted);font-weight:600;font-size:.92rem}
.main-nav a:hover{color:var(--text-main)}
.header-actions{display:flex;gap:.6rem}
.menu-toggle{display:none}
.casino-hero{padding:3rem 0}
.casino-hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:center}
.casino-hero-eyebrow{color:var(--text-muted);font-weight:700;text-transform:uppercase;font-size:.8rem;letter-spacing:.04em}
.casino-hero-title{margin:.5rem 0 1.2rem}
.hero-title-subpage{font-family:var(--font-display);font-weight:900;font-size:clamp(1.8rem,4vw,2.6rem);margin:0;line-height:1.1}
.casino-hero-cta-row{display:flex;gap:.8rem;flex-wrap:wrap}
.casino-hero-btn{height:50px;padding:0 1.6rem;border-radius:999px;font-weight:800;display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap}
.casino-hero-btn .btn-icon svg{width:18px;height:18px;fill:currentColor}
.casino-hero-right{display:flex;justify-content:center}
.casino-hero-img{width:100%;border-radius:16px;display:block}
.main-content{padding:2rem 0 3rem}
.content-card{background:var(--bg-elevated);border:1px solid var(--hairline);border-radius:16px;padding:2rem}
@media(max-width:760px){.casino-hero-inner{grid-template-columns:1fr}.casino-hero-right{display:none}.main-nav{display:none}}

/* bonus-card interstitials (render_bonus_card_html / inject_content_interstitials)
   injected into long-form prose content. No sizing existed for this family, so
   the inline fire-icon <svg> (viewBox only, no width/height) expanded to fill
   its whole container. Identical block in brand-v6/brand-v8. */
.bonus-card-wrap{margin:28px 0;max-width:100%}
.bonus-card{border-radius:var(--radius);padding:18px 20px;background:var(--bg-elevated);border:1px solid var(--hairline)}
.bonus-card__body{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.bonus-card__text{flex:1 1 auto;min-width:0}
.bonus-card__label{margin:0 0 4px;display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;
  background:var(--primary);color:var(--button-text);font-size:12px;font-weight:700;letter-spacing:.02em}
.bonus-card__headline{margin:0;display:flex;align-items:center;gap:8px;font-size:19px;line-height:1.15;color:var(--text-main);font-weight:800}
.bonus-card__icon{width:.9em;height:.9em;color:var(--primary);flex:0 0 auto}
.bonus-card__icon svg{width:100%;height:100%;fill:currentColor}
.bonus-card__subtext{margin:3px 0 0;color:var(--text-muted);font-weight:500;font-size:13px;line-height:1.3}
.bonus-card__button{min-width:130px;height:38px;padding:0 16px;border-radius:12px;display:inline-flex;align-items:center;
  justify-content:center;font-size:14px;font-weight:800;white-space:nowrap;color:var(--button-text);background:var(--primary);flex:0 0 auto}
.bonus-card__button:hover{background:var(--primary-hover)}
@media(max-width:560px){.bonus-card__body{flex-direction:column;align-items:flex-start}.bonus-card__button{width:100%}}
