﻿@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Montserrat:wght@700;800;900&display=swap');

:root {
  --gold: #f5c518;
  --gold-dark: #c9960c;
  --cyan: #00d4ff;
  --dark: #0a0a0f;
  --dark2: #12121a;
  --dark3: #1a1a28;
  --dark4: #22223a;
  --text: #e8e8f0;
  --text-muted: #8888aa;
  --red: #ff3b5c;
  --green: #00e87a;
  --radius: 16px;
  --shadow: 0 8px 32px rgba(0,0,0,0.5);
}

* { margin:0; padding:0; box-sizing:border-box; }

html { scroll-behavior:smooth; }

body {
  font-family:'Inter',sans-serif;
  background:var(--dark);
  color:var(--text);
  line-height:1.6;
  overflow-x:hidden;
}

a { text-decoration:none; color:inherit; }
img { max-width:100%; display:block; }

/* SCROLLBAR */
::-webkit-scrollbar { width:6px; }
::-webkit-scrollbar-track { background:var(--dark2); }
::-webkit-scrollbar-thumb { background:var(--gold); border-radius:3px; }

/* NAVBAR */
.navbar {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  background:rgba(10,10,15,0.92);
  backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(245,197,24,0.15);
  padding:0 calc(5% + 8px) 0 5%;
  display:flex; align-items:center; justify-content:space-between;
  height:68px;
  transition:background .3s, box-shadow .3s;
}
.navbar.scrolled { background:rgba(10,10,15,0.99); box-shadow:0 4px 30px rgba(0,0,0,0.6); }

/* LEFT: logo only */
.navbar-left { display:flex; align-items:center; flex-shrink:0; }

/* RIGHT: nav + CTA + burger */
.navbar-right { display:flex; align-items:center; gap:2rem; flex:1; justify-content:flex-end; }

.navbar-logo {
  font-family:'Montserrat',sans-serif;
  font-size:1.3rem; font-weight:900;
  background:linear-gradient(135deg,var(--gold),#ffe066,var(--cyan));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  letter-spacing:-0.5px;
  display:flex; align-items:center; gap:0;
  text-decoration:none; flex-shrink:0;
}
.navbar-logo span { -webkit-text-fill-color:transparent; }

/* Crown SVG icon */
.logo-icon {
  width:26px; height:auto; flex-shrink:0;
  margin-right:0.5rem;
  filter:drop-shadow(0 0 8px rgba(245,197,24,0.7));
  transition:filter .3s;
}
.navbar-logo:hover .logo-icon { filter:drop-shadow(0 0 12px rgba(245,197,24,1)); }

.navbar-nav { display:flex; gap:1.5rem; align-items:center; }

.navbar-nav a {
  font-size:0.88rem; font-weight:500; color:var(--text-muted);
  transition:color .2s; white-space:nowrap;
}
.navbar-nav a:hover, .navbar-nav a.active { color:var(--gold); }

/* CTA button in navbar-right */
.btn-nav {
  background:linear-gradient(135deg,var(--gold) 0%,#ffe066 50%,var(--gold-dark) 100%);
  background-size:200% auto;
  color:#000 !important;
  padding:0.55rem 1.4rem;
  border-radius:9px;
  font-weight:800 !important;
  font-size:0.85rem !important;
  white-space:nowrap;
  flex-shrink:0;
  margin-right:0;
  box-shadow:0 2px 12px rgba(245,197,24,0.4);
  transition:background-position .4s, transform .2s, box-shadow .2s;
  display:inline-flex; align-items:center; gap:0.3rem;
}
.btn-nav:hover { background-position:right center; transform:translateY(-2px); box-shadow:0 4px 20px rgba(245,197,24,0.6); }

/* HERO */
.hero {
  min-height:100vh;
  position:relative;
  display:flex; align-items:center; justify-content:center;
  text-align:center;
  padding:100px 5% 60px;
  overflow:hidden;
}

.hero-bg {
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 40%, rgba(245,197,24,0.08) 0%, transparent 70%),
    radial-gradient(ellipse 60% 80% at 80% 20%, rgba(0,212,255,0.06) 0%, transparent 60%),
    linear-gradient(180deg,#0a0a0f 0%,#12121a 100%);
  z-index:0;
}

.hero-bg-img {
  position:absolute; inset:0;
  background-image:url('../images/hero-bg.png');
  background-size:cover; background-position:center;
  opacity:0.12; z-index:1;
}

.hero-content { position:relative; z-index:2; max-width:900px; }

.hero-badge {
  display:inline-flex; align-items:center; gap:0.5rem;
  background:rgba(245,197,24,0.1);
  border:1px solid rgba(245,197,24,0.3);
  border-radius:50px;
  padding:0.4rem 1.2rem;
  font-size:0.8rem; font-weight:600; color:var(--gold);
  margin-bottom:1.5rem;
  animation:fadeInDown .6s ease;
}

.hero-title {
  font-family:'Montserrat',sans-serif;
  font-size:clamp(2.2rem,6vw,4.5rem);
  font-weight:900;
  line-height:1.1;
  margin-bottom:1.2rem;
  animation:fadeInUp .7s ease;
}

.hero-title .highlight {
  background:linear-gradient(135deg,var(--gold),#ffaa00);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
}

.hero-sub {
  font-size:clamp(1rem,2vw,1.25rem);
  color:var(--text-muted);
  margin-bottom:2.5rem;
  animation:fadeInUp .8s ease;
}

.hero-buttons { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; animation:fadeInUp .9s ease; }

/* BUTTONS */
.btn {
  display:inline-flex; align-items:center; gap:0.5rem;
  padding:0.85rem 2rem;
  border-radius:12px;
  font-weight:700; font-size:1rem;
  cursor:pointer; border:none;
  transition:all .25s;
  position:relative; overflow:hidden;
}

.btn::after {
  content:'';
  position:absolute; inset:0;
  background:rgba(255,255,255,0.1);
  opacity:0; transition:opacity .2s;
}
.btn:hover::after { opacity:1; }
.btn:hover { transform:translateY(-2px); box-shadow:0 12px 30px rgba(0,0,0,0.4); }

.btn-gold {
  background:linear-gradient(135deg,var(--gold),var(--gold-dark));
  color:#000;
}

.btn-cyan {
  background:linear-gradient(135deg,var(--cyan),#0099cc);
  color:#000;
}

.btn-outline {
  background:transparent;
  border:2px solid var(--gold);
  color:var(--gold);
}
.btn-outline:hover { background:var(--gold); color:#000; }

.btn-ghost {
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.1);
  color:var(--text);
}

/* STATS BAR */
.stats-bar {
  background:linear-gradient(135deg,var(--dark2),rgba(245,197,24,0.02));
  border-top:1px solid rgba(245,197,24,0.15);
  border-bottom:1px solid rgba(245,197,24,0.15);
  padding:1.4rem 5%;
  display:flex; gap:0; justify-content:center; flex-wrap:wrap;
}
.stat-item {
  display:flex; flex-direction:column; align-items:center;
  gap:0.2rem; padding:0.3rem 2rem;
  border-right:1px solid rgba(255,255,255,0.06);
}
.stat-item:last-child { border-right:none; }
.stat-num {
  font-family:'Montserrat',sans-serif; font-size:1.6rem; font-weight:900;
  background:linear-gradient(135deg,var(--gold),#ffe066);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
}
.stat-label { font-size:0.75rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:1px; }

/* SECTION */
.section { padding:80px 5%; }
.section-dark { background:var(--dark2); }
.section-darker { background:var(--dark3); }

/* Section title underline accent */
.section-title::after {
  content:'';
  display:block; width:50px; height:3px;
  background:linear-gradient(90deg,var(--gold),var(--cyan));
  margin:0.6rem auto 0; border-radius:2px;
}

.section-header { text-align:center; margin-bottom:3rem; }

.section-tag {
  display:inline-block;
  background:rgba(245,197,24,0.12);
  border:1px solid rgba(245,197,24,0.25);
  color:var(--gold);
  font-size:0.75rem; font-weight:700;
  text-transform:uppercase; letter-spacing:2px;
  padding:0.3rem 1rem; border-radius:50px;
  margin-bottom:1rem;
}

.section-title {
  font-family:'Montserrat',sans-serif;
  font-size:clamp(1.8rem,4vw,2.8rem);
  font-weight:900;
  margin-bottom:0.75rem;
}

.section-sub { color:var(--text-muted); max-width:600px; margin:0 auto; }

/* CARDS */
.cards-grid { display:grid; gap:1.5rem; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); }

.casino-card {
  background:var(--dark3);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:var(--radius);
  overflow:hidden;
  transition:all .3s;
  position:relative;
}
.casino-card:hover { transform:translateY(-6px); border-color:rgba(245,197,24,0.3); box-shadow:0 20px 50px rgba(0,0,0,0.5); }

.casino-card-top {
  padding:2rem;
  display:flex; align-items:center; gap:1.5rem;
  border-bottom:1px solid rgba(255,255,255,0.05);
}

.casino-logo-wrap {
  width:80px; height:80px;
  border-radius:12px;
  overflow:hidden;
  background:var(--dark4);
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
}
.casino-logo-wrap img { width:100%; height:100%; object-fit:contain; }

.casino-meta h3 { font-size:1.3rem; font-weight:800; margin-bottom:0.25rem; }

.stars { color:var(--gold); font-size:0.9rem; letter-spacing:2px; }

.casino-badge {
  display:inline-block;
  background:rgba(0,232,122,0.12);
  border:1px solid rgba(0,232,122,0.3);
  color:var(--green);
  font-size:0.7rem; font-weight:700;
  padding:0.2rem 0.6rem; border-radius:4px;
  margin-top:0.4rem;
}

.casino-card-body { padding:1.5rem 2rem; }

.bonus-highlight {
  background:linear-gradient(135deg,rgba(245,197,24,0.1),rgba(245,197,24,0.03));
  border:1px solid rgba(245,197,24,0.2);
  border-radius:10px;
  padding:1rem 1.2rem;
  margin-bottom:1.2rem;
}

.bonus-highlight-label { font-size:0.72rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:1px; margin-bottom:0.3rem; }
.bonus-highlight-value { font-family:'Montserrat',sans-serif; font-size:1.4rem; font-weight:900; color:var(--gold); }

.promo-box {
  background:rgba(0,212,255,0.06);
  border:1px dashed rgba(0,212,255,0.3);
  border-radius:8px;
  padding:0.75rem 1rem;
  margin-bottom:1.2rem;
  display:flex; align-items:center; gap:0.75rem;
}
.promo-label { font-size:0.72rem; color:var(--text-muted); }
.promo-code { font-family:monospace; font-size:1.1rem; font-weight:800; color:var(--cyan); letter-spacing:2px; }

.casino-card-footer { padding:0 2rem 2rem; }

/* FEATURES LIST */
.features-list { display:grid; gap:0.6rem; margin-bottom:1.2rem; }
.feature-item { display:flex; align-items:center; gap:0.6rem; font-size:0.88rem; color:var(--text-muted); }
.feature-item::before { content:'✓'; color:var(--green); font-weight:900; }

/* Предупредительные пункты (⚠ вместо ✓) */
.feature-item.warn-item::before { content:'⚠'; color:var(--red); }


/* TOP BADGE */
.top-pick-badge {
  position:absolute; top:1rem; right:1rem;
  background:linear-gradient(135deg,var(--gold),var(--gold-dark));
  color:#000;
  font-size:0.65rem; font-weight:800;
  padding:0.3rem 0.7rem; border-radius:6px;
  text-transform:uppercase; letter-spacing:1px;
}

/* BONUS CARDS */
.bonus-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1.5rem; }

.bonus-card {
  background:var(--dark3);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:var(--radius);
  padding:2rem;
  text-align:center;
  transition:all .3s;
  position:relative; overflow:hidden;
}
.bonus-card:hover { transform:translateY(-5px); border-color:rgba(245,197,24,0.3); }

.bonus-card-icon { font-size:2.5rem; margin-bottom:1rem; }
.bonus-card-amount { font-family:'Montserrat',sans-serif; font-size:2rem; font-weight:900; color:var(--gold); margin-bottom:0.3rem; }
.bonus-card-title { font-weight:700; margin-bottom:0.5rem; }
.bonus-card-desc { font-size:0.85rem; color:var(--text-muted); }

/* HOW TO */
.steps-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:2rem; position:relative; }
.steps-grid::before {
  content:'';
  position:absolute; top:30px; left:12%; right:12%; height:2px;
  background:linear-gradient(90deg,transparent,rgba(245,197,24,0.3),transparent);
  pointer-events:none;
}
.step-card {
  text-align:center;
  background:var(--dark3); border:1px solid rgba(255,255,255,0.05);
  border-radius:var(--radius); padding:2rem 1.5rem;
  transition:all .3s;
}
.step-card:hover { border-color:rgba(245,197,24,0.25); transform:translateY(-4px); }
.step-num {
  width:64px; height:64px; border-radius:50%;
  background:linear-gradient(135deg,var(--gold),var(--gold-dark));
  color:#000; font-family:'Montserrat',sans-serif;
  font-size:1.5rem; font-weight:900;
  display:flex; align-items:center; justify-content:center;
  margin:0 auto 1.2rem;
  box-shadow:0 0 20px rgba(245,197,24,0.3);
}
.step-title { font-weight:700; font-size:1rem; margin-bottom:0.5rem; }
.step-desc { font-size:0.85rem; color:var(--text-muted); }

/* FAQ */
.faq-list { max-width:800px; margin:0 auto; display:flex; flex-direction:column; gap:1rem; }

.faq-item {
  background:var(--dark3);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:12px; overflow:hidden;
}

.faq-question {
  width:100%; background:none; border:none;
  padding:1.2rem 1.5rem;
  display:flex; align-items:center; justify-content:space-between;
  cursor:pointer; color:var(--text);
  font-size:1rem; font-weight:600;
  text-align:left;
  transition:background .2s;
}
.faq-question:hover { background:rgba(255,255,255,0.03); }
.faq-icon { font-size:1.2rem; color:var(--gold); transition:transform .3s; }
.faq-item.open .faq-icon { transform:rotate(45deg); }

.faq-answer {
  max-height:0; overflow:hidden;
  transition:max-height .35s ease, padding .35s;
  padding:0 1.5rem;
  font-size:0.9rem; color:var(--text-muted);
}
.faq-item.open .faq-answer { max-height:200px; padding:0 1.5rem 1.2rem; }

/* TRUST BADGES */
.trust-grid { display:flex; flex-wrap:wrap; gap:1.2rem; justify-content:center; }
.trust-item {
  background:linear-gradient(135deg,var(--dark3),rgba(245,197,24,0.02));
  border:1px solid rgba(255,255,255,0.06);
  border-radius:14px;
  padding:1.2rem 1.8rem;
  display:flex; align-items:center; gap:0.8rem;
  min-width:190px; transition:all .3s;
}
.trust-item:hover {
  border-color:rgba(245,197,24,0.25);
  transform:translateY(-3px);
  box-shadow:0 10px 30px rgba(0,0,0,0.3);
}
.trust-icon {
  font-size:1.8rem;
  width:44px; height:44px;
  background:rgba(245,197,24,0.08);
  border-radius:10px;
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
}
.trust-text { font-size:0.85rem; }
.trust-text strong { display:block; color:var(--text); margin-bottom:0.1rem; }
.trust-text span { color:var(--text-muted); font-size:0.75rem; }

/* TABLE */
.compare-table { width:100%; border-collapse:collapse; }
.compare-table th, .compare-table td {
  padding:1rem 1.2rem;
  text-align:left;
  border-bottom:1px solid rgba(255,255,255,0.05);
  font-size:0.9rem;
}
.compare-table th { background:var(--dark4); color:var(--gold); font-weight:700; font-size:0.8rem; text-transform:uppercase; letter-spacing:1px; }
.compare-table tr:hover td { background:rgba(255,255,255,0.02); }
.compare-table .check { color:var(--green); font-weight:900; }
.compare-table .cross { color:var(--red); }

/* FOOTER */
footer {
  background:var(--dark2);
  border-top:1px solid rgba(255,255,255,0.06);
  padding:3rem 5% 2rem;
}

.footer-grid {
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1fr;
  gap:3rem;
  margin-bottom:3rem;
}

.footer-brand-name {
  font-family:'Montserrat',sans-serif;
  font-size:1.3rem; font-weight:900;
  background:linear-gradient(135deg,var(--gold),var(--cyan));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  margin-bottom:0.75rem;
}

.footer-desc { font-size:0.85rem; color:var(--text-muted); line-height:1.7; margin-bottom:1rem; }

.footer-col-title { font-weight:700; font-size:0.9rem; margin-bottom:1rem; color:var(--text); }
.footer-links { display:flex; flex-direction:column; gap:0.5rem; }
.footer-links a { font-size:0.85rem; color:var(--text-muted); transition:color .2s; }
.footer-links a:hover { color:var(--gold); }

.footer-bottom {
  border-top:1px solid rgba(255,255,255,0.05);
  padding-top:1.5rem;
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:1rem;
}

.footer-copy { font-size:0.78rem; color:var(--text-muted); }

.gambling-warning {
  background:rgba(255,59,92,0.08);
  border:1px solid rgba(255,59,92,0.2);
  border-radius:8px;
  padding:0.75rem 1rem;
  font-size:0.75rem;
  color:var(--text-muted);
  margin-bottom:2rem;
  display:flex; gap:0.6rem; align-items:flex-start;
}
.gambling-warning strong { color:var(--red); }

/* PAGE HERO (inner pages) */
.page-hero {
  padding:140px 5% 80px;
  text-align:center;
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(245,197,24,0.08) 0%, transparent 70%),
    var(--dark);
}

.page-hero-title {
  font-family:'Montserrat',sans-serif;
  font-size:clamp(2rem,5vw,3.5rem);
  font-weight:900;
  margin-bottom:1rem;
}

.page-hero-sub { color:var(--text-muted); max-width:600px; margin:0 auto 2rem; }

/* RATING STARS */
.rating-big { display:flex; align-items:center; gap:0.5rem; justify-content:center; margin-bottom:1rem; }
.star-filled { color:var(--gold); font-size:1.4rem; }
.rating-num { font-size:2rem; font-weight:900; }

/* CONTENT PROSE */
.prose { max-width:820px; margin:0 auto; }
.prose h2 { font-family:'Montserrat',sans-serif; font-size:1.8rem; font-weight:800; margin:2.5rem 0 1rem; }
.prose h3 { font-size:1.2rem; font-weight:700; margin:2rem 0 0.75rem; color:var(--gold); }
.prose p { color:var(--text-muted); margin-bottom:1rem; line-height:1.8; }
.prose ul { padding-left:1.5rem; color:var(--text-muted); margin-bottom:1rem; }
.prose ul li { margin-bottom:0.5rem; }
.prose strong { color:var(--text); }

/* MOBILE NAV */
.nav-toggle { display:none; background:none; border:none; cursor:pointer; flex-direction:column; gap:5px; }
.nav-toggle span { display:block; width:24px; height:2px; background:var(--text); border-radius:2px; transition:all .3s; }

/* STICKY CTA */
.sticky-cta {
  position:fixed; bottom:1.5rem; right:1.5rem; z-index:999;
  display:flex; flex-direction:column; gap:0.75rem;
}
.sticky-cta-btn {
  display:flex; align-items:center; gap:0.6rem;
  padding:0.75rem 1.2rem;
  border-radius:50px;
  font-weight:700; font-size:0.85rem;
  box-shadow:0 8px 24px rgba(0,0,0,0.5);
  transition:all .25s;
  cursor:pointer; border:none;
}
.sticky-cta-btn:hover { transform:translateY(-2px) scale(1.03); }

/* ANIMATIONS */
@keyframes fadeInDown { from { opacity:0; transform:translateY(-20px); } to { opacity:1; transform:translateY(0); } }
@keyframes fadeInUp { from { opacity:0; transform:translateY(30px); } to { opacity:1; transform:translateY(0); } }
@keyframes pulse { 0%,100% { box-shadow:0 0 0 0 rgba(245,197,24,0.4); } 50% { box-shadow:0 0 0 12px rgba(245,197,24,0); } }
@keyframes shimmer { 0% { background-position:-200% center; } 100% { background-position:200% center; } }
@keyframes float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-10px); } }

.pulse { animation:pulse 2s infinite; }
.float { animation:float 4s ease-in-out infinite; }

/* RESPONSIVE */
@media(max-width:900px) {
  .footer-grid { grid-template-columns:1fr 1fr; }
  .cards-grid { grid-template-columns:1fr; max-width:500px; margin:0 auto; }
}

@media(max-width:640px) {
  .navbar-nav { display:none; }
  .nav-toggle { display:flex; }
  .navbar-nav.open {
    display:flex; flex-direction:column;
    position:absolute; top:70px; left:0; right:0;
    background:rgba(10,10,15,0.98);
    backdrop-filter:blur(20px);
    padding:1.5rem 5%;
    border-bottom:1px solid rgba(245,197,24,0.15);
    gap:0.25rem;
  }
  .navbar-nav.open a { padding:0.6rem 0; border-bottom:1px solid rgba(255,255,255,0.04); }
  .hero-buttons { flex-direction:column; align-items:center; }
  .hero-buttons .btn { width:100%; max-width:340px; justify-content:center; }
  .footer-grid { grid-template-columns:1fr; gap:2rem; }
  .stats-bar { flex-wrap:wrap; gap:1rem; justify-content:center; }
  .sticky-cta { bottom:1rem; right:1rem; }
  .section { padding:60px 5%; }
  .bonus-grid { grid-template-columns:1fr 1fr; }
  .steps-grid { grid-template-columns:1fr 1fr; }
  .trust-grid { flex-direction:column; }
  .trust-item { min-width:unset; }
}

@media(max-width:400px) {
  .bonus-grid { grid-template-columns:1fr; }
  .steps-grid { grid-template-columns:1fr; }
}

/* ==========================================
   HERO CASINO DECORATIONS
   ========================================== */
.hero-decos {
  position:absolute; inset:0;
  pointer-events:none; overflow:hidden; z-index:1;
}
.hd-suit {
  position:absolute;
  font-size:5rem; line-height:1;
  color:rgba(255,255,255,0.07);
  animation:suitFloat var(--d,9s) ease-in-out var(--dl,0s) infinite;
  transform:rotate(var(--r,0deg));
  user-select:none;
}
@keyframes suitFloat {
  0%,100% { transform:rotate(var(--r,0deg)) translateY(0); }
  50%      { transform:rotate(calc(var(--r,0deg) + 8deg)) translateY(-18px); }
}
.hd-chip {
  position:absolute;
  border-radius:50%;
  border:3px dashed rgba(245,197,24,0.12);
  animation:chipSpin var(--d,15s) linear infinite;
}
@keyframes chipSpin {
  from { transform:rotate(0deg); }
  to   { transform:rotate(360deg); }
}
.hd-dice {
  position:absolute;
  font-size:2.8rem;
  color:rgba(255,255,255,0.06);
  animation:suitFloat var(--d,13s) ease-in-out var(--dl,0s) infinite;
}

/* Mobile responsive for new navbar structure */
@media(max-width:900px) {
  .btn-nav { display:none; }
}
@media(max-width:640px) {
  .navbar-left { gap:0; }
  .navbar-right { gap:0.5rem; }
  .navbar-nav { display:none; }
  .nav-toggle { display:flex; }
  .navbar-nav.open {
    display:flex; flex-direction:column;
    position:absolute; top:70px; left:0; right:0;
    background:rgba(10,10,15,0.98);
    backdrop-filter:blur(20px);
    padding:1.5rem 5%;
    border-bottom:1px solid rgba(245,197,24,0.15);
    gap:0.1rem; z-index:999;
  }
  .navbar-nav.open a {
    padding:0.75rem 0;
    border-bottom:1px solid rgba(255,255,255,0.05);
    font-size:1rem;
    color:var(--text);
  }
  .navbar-nav.open a:last-child { border-bottom:none; }
}


/* Scroll progress bar */
.scroll-progress {
  position:fixed; top:0; left:0; height:3px; z-index:9999;
  background:linear-gradient(90deg, var(--gold), var(--cyan));
  width:0%; transition:width 0.1s linear;
}

/* Navbar scrolled state */
.navbar.scrolled {
  background:rgba(10,10,15,0.98);
  box-shadow:0 4px 30px rgba(0,0,0,0.5);
}

/* Enhanced card glow on hover */
.casino-card:hover {
  box-shadow:0 20px 60px rgba(0,0,0,0.5), 0 0 0 1px rgba(245,197,24,0.2), 0 0 40px rgba(245,197,24,0.06);
}

/* Shimmer effect on gold buttons */
.btn-gold {
  background:linear-gradient(135deg, var(--gold), var(--gold-dark));
  background-size:200% auto;
  animation:btnShimmer 3s linear infinite;
}
@keyframes btnShimmer {
  0% { background-position:0% center; }
  50% { background-position:100% center; }
  100% { background-position:0% center; }
}
.btn-gold { background:linear-gradient(135deg,var(--gold) 0%,#ffe066 40%,var(--gold-dark) 60%,var(--gold) 100%); background-size:200% auto; }

/* Badge pulse animation */
.hero-badge { animation:fadeInDown .6s ease, badgePulse 4s ease-in-out 1s infinite; }
@keyframes badgePulse {
  0%,100% { box-shadow:0 0 0 0 rgba(245,197,24,0.2); }
  50% { box-shadow:0 0 0 8px rgba(245,197,24,0); }
}

/* Stats bar counter style */
.stat-num {
  background:linear-gradient(135deg,var(--gold),#ffcc44);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  font-size:1.6rem;
}

/* Bonus card shimmer top border */
.bonus-card::before {
  content:'';
  position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, transparent, var(--gold), transparent);
  opacity:0; transition:opacity .3s;
}
.bonus-card:hover::before { opacity:1; }

/* Step cards connected line */
.steps-grid { position:relative; }

/* Section tag animation */
.section-tag {
  animation:none;
  transition:transform .2s;
}
.section-tag:hover { transform:scale(1.05); }

/* FAQ smooth open */
.faq-answer {
  transition:max-height .4s cubic-bezier(0.4,0,0.2,1), padding .3s;
}
.faq-item.open { border-color:rgba(245,197,24,0.2); }
.faq-item.open .faq-question { color:var(--gold); }

/* Compare table row highlight */
.compare-table tbody tr:first-child td:nth-child(2) {
  background:rgba(245,197,24,0.05);
}

/* Promo code glow */
.promo-code:hover {
  color:#fff !important;
  text-shadow:0 0 12px rgba(0,212,255,0.8);
  transition:all .2s;
}

/* Top pick badge shine */
.top-pick-badge {
  animation:badgeSpin 4s linear infinite;
  background-size:200% auto;
}

/* Image lazy load fade in */
img[loading="lazy"] { opacity:0; transition:opacity .4s; }
img[loading="lazy"].loaded { opacity:1; }

/* Live indicator dot */
.live-dot {
  display:inline-block;
  width:8px; height:8px;
  border-radius:50%;
  background:var(--green);
  margin-right:6px;
  animation:livePulse 1.5s ease-in-out infinite;
}
@keyframes livePulse {
  0%,100% { opacity:1; transform:scale(1); }
  50% { opacity:0.5; transform:scale(0.8); }
}

/* Slot card hover glow */
.slot-card:hover {
  box-shadow:0 15px 40px rgba(0,0,0,0.4), 0 0 20px rgba(245,197,24,0.08);
}

/* Active nav link */
.navbar-nav a.active { color:var(--gold) !important; }

/* Floating animation for hero section */
.hero-content { animation:heroFloat 6s ease-in-out infinite; }
@keyframes heroFloat {
  0%,100% { transform:translateY(0); }
  50% { transform:translateY(-6px); }
}

/* Better scrollbar */
::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-thumb { background:linear-gradient(180deg,var(--gold),var(--cyan)); border-radius:3px; }

/* Glassmorphism card variant */
.glass-card {
  background:rgba(255,255,255,0.03);
  backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:var(--radius);
}

/* Print styles */
@media print {
  .navbar, .sticky-cta, .hero-buttons, .scroll-progress { display:none; }
  body { background:#fff; color:#000; }
}

/* ==========================================
   PREMIUM SPORTS BETTING SECTION
   ========================================== */

/* Sport section background */
.section-sport {
  background: linear-gradient(180deg, var(--dark3) 0%, rgba(0,212,255,0.02) 50%, var(--dark3) 100%);
  position:relative; overflow:hidden;
}
.section-sport::before {
  content:''; position:absolute; top:0; left:0; right:0; bottom:0;
  background: radial-gradient(ellipse 60% 40% at 50% 0%, rgba(0,212,255,0.04) 0%, transparent 70%);
  pointer-events:none;
}

/* Sport hero card — glassmorphism */
.sport-hero-card {
  background: linear-gradient(135deg, rgba(255,255,255,0.04), rgba(0,212,255,0.06));
  border: 1px solid rgba(0,212,255,0.15);
  border-radius: 24px;
  padding: 2.5rem;
  margin-bottom: 2.5rem;
  position: relative;
  overflow: hidden;
  backdrop-filter: blur(10px);
}
.sport-hero-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background: linear-gradient(90deg, var(--cyan), var(--gold), var(--cyan));
}
.sport-hero-badge {
  display:inline-flex; align-items:center; gap:0.5rem;
  background: rgba(0,212,255,0.12); border: 1px solid rgba(0,212,255,0.25);
  color: var(--cyan); padding:0.4rem 1rem; border-radius:50px;
  font-size:0.8rem; font-weight:700; margin-bottom:1.5rem; letter-spacing:0.5px;
}
.sport-hero-content {
  display: grid; grid-template-columns: 1fr 380px; gap: 2.5rem; align-items: start;
}
.sport-brand {
  font-family:'Montserrat',sans-serif; font-size:2rem; font-weight:900;
  background: linear-gradient(135deg, var(--cyan), var(--gold));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  margin-bottom:0.25rem;
}
.sport-tagline { color:var(--text-muted); font-size:0.95rem; margin-bottom:1.5rem; }
.sport-stats {
  display: flex; gap:1.5rem; flex-wrap:wrap; margin-bottom:1.5rem;
}
.sport-stat { text-align:center; }
.sport-stat-val {
  font-family:'Montserrat',sans-serif; font-size:1.4rem; font-weight:900;
  color:var(--gold); display:block;
}
.sport-stat-label { font-size:0.68rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:1px; }
.sport-features { display:flex; flex-wrap:wrap; gap:0.5rem; margin-bottom:1.5rem; }
.sport-feat {
  background: rgba(0,212,255,0.08); border:1px solid rgba(0,212,255,0.15);
  color:var(--text); padding:0.3rem 0.8rem; border-radius:6px;
  font-size:0.8rem; font-weight:500;
}

/* Live odds widget */
.live-odds-widget {
  background: rgba(10,10,15,0.7); border:1px solid rgba(0,212,255,0.2);
  border-radius:16px; padding:1.5rem; backdrop-filter:blur(15px);
}
.odds-header {
  font-family:'Montserrat',sans-serif; font-size:0.8rem; font-weight:800;
  color:var(--red, #ef4444); letter-spacing:2px; margin-bottom:1rem;
  display:flex; align-items:center; gap:0.5rem;
}
.odds-header::before { content:''; width:8px; height:8px; background:#ef4444; border-radius:50%; animation:blink 1s ease-in-out infinite; }
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0.3} }
.odds-item {
  display:flex; justify-content:space-between; align-items:center;
  padding:0.7rem 0; border-bottom:1px solid rgba(255,255,255,0.05);
  gap:0.5rem;
}
.odds-item:last-of-type { border-bottom:none; }
.odds-match { font-size:0.82rem; color:var(--text); font-weight:500; flex:1; }
.odds-values { display:flex; gap:0.4rem; flex-shrink:0; }
.odd {
  background: rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.1);
  color:var(--gold); font-weight:700; font-size:0.82rem;
  padding:0.25rem 0.5rem; border-radius:6px; cursor:pointer;
  transition: all .15s; min-width:40px; text-align:center;
}
.odd:hover { background:var(--gold); color:#000; }
.odd-draw { color:var(--text-muted); }
.odds-footer { font-size:0.68rem; color:var(--text-muted); text-align:center; margin-top:0.75rem; }

/* Sport grid */
.sport-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem; margin-bottom: 2rem;
}
.sport-card {
  background: linear-gradient(135deg, rgba(255,255,255,0.03), rgba(0,212,255,0.03));
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 14px; padding: 1.5rem;
  transition: all .3s; position:relative; overflow:hidden;
}
.sport-card::before {
  content:''; position:absolute; top:0; left:0; width:3px; height:100%;
  background: linear-gradient(180deg, var(--cyan), transparent);
  opacity:0; transition:opacity .3s;
}
.sport-card:hover { border-color:rgba(0,212,255,0.25); transform:translateY(-4px); box-shadow:0 15px 40px rgba(0,0,0,0.3); }
.sport-card:hover::before { opacity:1; }
.sport-card-icon { font-size:2rem; margin-bottom:0.75rem; }
.sport-card-title { font-weight:700; font-size:0.95rem; margin-bottom:0.4rem; color:var(--text); }
.sport-card-desc { font-size:0.82rem; color:var(--text-muted); line-height:1.6; }

/* ==========================================
   PREMIUM DESIGN UPGRADES — Glassmorphism
   ========================================== */

/* Glass cards for casino */
.casino-card {
  position:relative; overflow:hidden;
}
.casino-card::after {
  content:''; position:absolute; top:-50%; left:-50%;
  width:200%; height:200%;
  background: radial-gradient(circle at 50% 0%, rgba(245,197,24,0.04) 0%, transparent 60%);
  pointer-events:none;
}

/* Premium gradient border on hover */
.casino-card:hover {
  box-shadow: 0 20px 60px rgba(0,0,0,0.4), 0 0 0 1px rgba(245,197,24,0.15), 0 0 30px rgba(245,197,24,0.04);
}

/* Section title enhanced */
.section-title {
  background: linear-gradient(135deg, var(--text) 0%, rgba(241,245,249,0.8) 100%);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
}

/* Premium feature cards with left border accent */
.feature-card { position:relative; overflow:hidden; }
.feature-card::before {
  content:''; position:absolute; top:0; left:0; width:3px; height:100%;
  background: linear-gradient(180deg, var(--gold), transparent); opacity:0; transition:opacity .3s;
}
.feature-card:hover::before { opacity:1; }

/* Premium step cards */
.step-card { position:relative; overflow:hidden; }
.step-card::after {
  content:''; position:absolute; inset:0;
  background: radial-gradient(circle at 50% 0%, rgba(245,197,24,0.04) 0%, transparent 70%);
  pointer-events:none;
}

/* Shimmer on all gold buttons */
@keyframes shimmerBtn { 0%{background-position:200% center} 100%{background-position:-200% center} }
.btn-gold {
  background: linear-gradient(135deg, #c9960c, #f5c518, #ffe066, #f5c518, #c9960c);
  background-size: 300% auto;
  animation: shimmerBtn 4s linear infinite;
}

/* Navbar nav enhanced active */
.navbar-nav a.active {
  color: var(--gold);
  position:relative;
}
.navbar-nav a.active::after {
  content:''; position:absolute; bottom:-4px; left:0; right:0;
  height:2px; background:var(--gold); border-radius:1px;
}

/* ==========================================
   MOBILE OPTIMIZATION (Mobile-First)
   Touch targets ≥44px | Font ≥16px | No overflow
   ========================================== */

/* Tablet */
@media(max-width:900px) {
  .navbar-left { gap:1.5rem; }
  .sport-hero-content { grid-template-columns:1fr; }
  .live-odds-widget { max-width:100%; }
  .section { padding:60px 4%; }
  .hero { min-height:90vh; }
  .hero-title { font-size:2.5rem; }
  .compare-section { overflow-x:auto; }
  .compare-table { min-width:500px; }
  .review-layout { grid-template-columns:1fr !important; gap:2rem; }
  .cards-grid { grid-template-columns:1fr; max-width:480px; margin:0 auto; }
}

/* Phone */
@media(max-width:640px) {
  /* Base font */
  body { font-size:16px; }

  /* Navbar */
  .navbar-left { gap:0; }
  .navbar-right { gap:0.4rem; }

  /* Stats bar: 2-col grid on mobile */
  .stats-bar { padding:0.8rem 4%; gap:0; flex-wrap:wrap; }
  .stat-item {
    border-right:none !important;
    border-bottom:1px solid rgba(255,255,255,0.05);
    padding:0.8rem 0;
    width:50%;
    flex-direction:row;
    gap:0.5rem;
    justify-content:center;
  }
  .stat-item:nth-child(even) { border-left:1px solid rgba(255,255,255,0.05); }
  .stat-item:last-child, .stat-item:nth-last-child(2):nth-child(odd) { border-bottom:none; }
  .stat-num { font-size:1.3rem; }
  .stat-label { font-size:0.7rem; }

  /* Hero */
  .hero { min-height:100svh; padding-top:80px; }
  .hero-content { animation:none; } /* kill float on mobile - save battery */
  .hero-title { font-size:2rem; line-height:1.2; }
  .hero-sub { font-size:1rem; }
  .hero-buttons { flex-direction:column; align-items:stretch; gap:0.75rem; }
  .hero-buttons .btn { min-height:52px; justify-content:center; font-size:1rem; }

  /* Hero decorations - scale down */
  .hd-suit { font-size:3rem; }
  .hd-dice { font-size:2rem; }
  .hd-chip { display:none; } /* too distracting on small screens */

  /* Section */
  .section { padding:50px 4%; }
  .section-title { font-size:1.7rem; }
  .section-tag { font-size:0.7rem; }

  /* Cards */
  .cards-grid { grid-template-columns:1fr; }
  .casino-card { padding:1.5rem; }

  /* Bonus grid */
  .bonus-grid { grid-template-columns:1fr 1fr; gap:0.8rem; }
  .bonus-card { padding:1rem; }
  .bonus-card-icon { font-size:1.5rem; }
  .bonus-card-title { font-size:0.8rem; }

  /* Steps */
  .steps-grid { grid-template-columns:1fr 1fr; gap:1rem; }
  .steps-grid::before { display:none; }
  .step-num { width:48px; height:48px; font-size:1.2rem; }
  .step-card { padding:1.2rem 1rem; }

  /* Touch targets: all interactive elements ≥ 44px */
  .btn, button, .btn-nav,
  .faq-question, .nav-toggle,
  .promo-code-btn { min-height:44px; }
  .faq-question { padding:1rem 1.2rem; font-size:0.95rem; }
  .nav-toggle { min-width:44px; min-height:44px; }

  /* Compare table */
  .compare-section { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .compare-table { min-width:420px; font-size:0.78rem; }
  .compare-table th, .compare-table td { padding:0.65rem 0.75rem; }

  /* Trust grid */
  .trust-grid { gap:0.8rem; }
  .trust-item { min-width:calc(50% - 0.4rem); padding:1rem; }
  .trust-icon { width:36px; height:36px; font-size:1.4rem; }

  /* FAQ */
  .faq-item { margin-bottom:0.5rem; }
  .faq-answer { font-size:0.9rem; }

  /* Page hero */
  .page-hero { padding:110px 4% 55px; }
  .page-hero-title { font-size:2rem; }

  /* Sticky CTA */
  .sticky-cta { bottom:0.8rem; right:0.8rem; }
  .sticky-cta a { padding:0.7rem 1.2rem; font-size:0.85rem; min-height:44px; display:flex; align-items:center; }

  /* Footer */
  .footer-bottom { flex-direction:column; gap:0.5rem; text-align:center; }
  .gambling-warning { font-size:0.8rem; gap:0.5rem; }

  /* Prose (legal pages) */
  .prose { font-size:0.95rem; line-height:1.7; }
  .prose h2 { font-size:1.25rem; }
  .prose h3 { font-size:1rem; }
}

/* Very small phones */
@media(max-width:380px) {
  .hero-title { font-size:1.7rem; }
  .bonus-grid { grid-template-columns:1fr; }
  .trust-item { min-width:100%; }
  .steps-grid { grid-template-columns:1fr; }
  .hd-suit { display:none; }
}

/* iOS safe area support */
@supports(padding: max(0px)) {
  .navbar { padding-left:max(5%, env(safe-area-inset-left)); padding-right:max(5%, env(safe-area-inset-right)); }
  .sticky-cta { right:max(1rem, env(safe-area-inset-right)); bottom:max(1rem, env(safe-area-inset-bottom)); }
}

/* ===== PAGE BANNER – simple reliable overlay ===== */
.page-banner{position:relative;display:block;width:100%;overflow:hidden;line-height:0}
.page-banner-img{width:100%;height:360px;object-fit:cover;object-position:center 25%;display:block;filter:brightness(0.65) saturate(1.1)}
.page-banner-overlay{
  position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(0,0,0,0.80) 0%,rgba(0,0,0,0.45) 55%,rgba(0,0,0,0.08) 100%);
  display:flex;align-items:center;
  padding:72px 5% 0;
  line-height:normal;
}
.page-banner-body{max-width:620px}
.page-banner-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:clamp(1.25rem,2.4vw,1.9rem);
  font-weight:900;color:#fff;
  line-height:1.25;margin-bottom:0.55rem;
  text-shadow:0 2px 16px rgba(0,0,0,0.8);
}
.page-banner-sub{
  font-size:clamp(0.8rem,1.3vw,0.93rem);
  color:rgba(255,255,255,0.9);
  margin-bottom:1rem;line-height:1.5;
  text-shadow:0 1px 8px rgba(0,0,0,0.6);
}
.page-banner-btns{display:flex;gap:0.7rem;flex-wrap:wrap}
.btn-bp{display:inline-flex;align-items:center;gap:0.35rem;font-weight:800;font-size:0.9rem;padding:0.7rem 1.45rem;border-radius:10px;text-decoration:none;transition:all .25s;white-space:nowrap}
.btn-bp-primary{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;box-shadow:0 4px 16px rgba(124,58,237,0.5)}
.btn-bp-primary:hover{transform:translateY(-2px);box-shadow:0 7px 24px rgba(124,58,237,0.7)}
.btn-bp-gold{background:linear-gradient(135deg,#f5c518,#c9960c);color:#000;box-shadow:0 4px 16px rgba(245,197,24,0.45)}
.btn-bp-gold:hover{transform:translateY(-2px)}
.btn-bp-red{background:linear-gradient(135deg,#b91c1c,#ef4444);color:#fff;box-shadow:0 4px 16px rgba(185,28,28,0.5)}
.btn-bp-red:hover{transform:translateY(-2px);box-shadow:0 7px 24px rgba(185,28,28,0.7)}
@media(max-width:768px){
  .page-banner-img{height:240px;object-position:center 15%}
  .page-banner-overlay{padding:65px 4% 0;align-items:center}
  .page-banner-title{font-size:1.05rem}
  .page-banner-sub{font-size:0.78rem;margin-bottom:0.7rem}
  .btn-bp-gold{display:none}
}
@media(max-width:400px){.page-banner-img{height:190px}}
/* ===== MOBILE SEO / UX OPTIMIZATION ===== */
/* Tap targets */
a, button, .btn, .btn-bp, .nav-toggle { min-height: 44px; min-width: 44px; }
.navbar-nav a { padding: 0.6rem 0.8rem; }

/* Font size - prevent zoom on iOS */
input, select, textarea { font-size: 16px !important; }

/* No horizontal scroll */
html, body { overflow-x: hidden; max-width: 100%; }

/* Image optimization */
img { max-width: 100%; height: auto; }

/* Mobile text readability */
@media (max-width: 480px) {
  body { font-size: 15px; line-height: 1.65; }
  h1 { font-size: clamp(1.4rem, 7vw, 2rem) !important; }
  h2 { font-size: clamp(1.2rem, 5vw, 1.6rem) !important; }
  .section { padding: 2rem 1rem !important; }
  .casino-card, .slot-card, .sport-card { margin-bottom: 1rem; }
  .hero-buttons, .kh-hero-btns { flex-direction: column; width: 100%; }
  .btn, .btn-bp, .kh-btn-gold, .kh-btn-outline { width: 100%; text-align: center; justify-content: center; }
  .stats-bar { gap: 0.5rem; flex-wrap: wrap; }
  .stat-item { min-width: 70px; }
  .cards-grid { grid-template-columns: 1fr !important; }
  .slot-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .footer-grid { grid-template-columns: 1fr !important; }
  /* Sticky CTA mobile */
  .sticky-cta { bottom: 0.5rem; right: 0.5rem; gap: 0.4rem; }
  .sticky-cta-btn { font-size: 0.78rem; padding: 0.5rem 0.9rem; }
}

@media (max-width: 360px) {
  .slot-grid { grid-template-columns: 1fr !important; }
}

/* ===== MOBILE FIX FINAL - CLEAN ===== */
html { overflow-x: hidden; }
body { overflow-x: hidden; }

@media (max-width: 768px) {

  /* NAVBAR: hide button, keep burger */
  .btn-nav, a.btn-nav { display: none !important; }
  .navbar, nav {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 16px !important;
    height: 56px !important;
    box-sizing: border-box !important;
    position: fixed !important;
    top: 0; left: 0; right: 0; width: 100%;
    z-index: 1000;
  }

  /* BURGER centered */
  .burger, .hamburger, .nav-toggle,
  button[class*="toggle"], button[class*="burger"] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 5px !important;
    width: 40px !important; height: 40px !important;
    min-width: 40px !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    flex-shrink: 0 !important;
    margin-left: auto !important;
  }

  /* SCROLLBAR hide */
  ::-webkit-scrollbar { display: none; width: 0; }

  /* HERO: proper top spacing for fixed navbar */
  .hero, section.hero, [class*="page-hero"], [class*="hero-section"] {
    margin-top: 0 !important;
    padding-top: 70px !important;
  }

  /* HERO inner pages - only reduce font, don't break layout */
  .hero-title, .page-hero-title {
    font-size: clamp(1.4rem, 6vw, 2rem) !important;
    word-break: break-word !important;
  }
  .hero-sub, .page-hero-sub {
    font-size: 0.85rem !important;
    line-height: 1.5 !important;
  }

  /* HERO SPLIT: single column, keep image visible */
  .hero-split {
    grid-template-columns: 1fr !important;
    padding: 0 4% !important;
  }
  .hero-split-left { text-align: center !important; }
  /* Keep right side hidden only on main hero (has the card overlay) */
  .hero-split-right { display: none !important; }

  /* BUTTONS: full width stacked */
  .hero-buttons {
    flex-direction: column !important;
    width: 100% !important;
    gap: 0.6rem !important;
  }
  .hero-buttons .btn, .hero-buttons a {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
    display: flex !important;
  }

  /* STATS PILLS: 3 column */
  .hero-bonus-pills {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0.4rem !important;
    width: 100% !important;
  }
  .bonus-pill {
    flex: 1 !important;
    min-width: 0 !important;
    padding: 0.5rem 0.3rem !important;
  }
  .bonus-pill-val { font-size: 0.9rem !important; }
  .bonus-pill-label { font-size: 0.55rem !important; }

  /* KUMARHANE pills */
  .kh-hero-pills {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0.4rem !important;
    width: 100% !important;
  }
  .kh-pill { flex: 1 !important; min-width: 0 !important; padding: 0.4rem 0.3rem !important; }
  .kh-hero-btns {
    flex-direction: column !important;
    width: 100% !important;
    gap: 0.5rem !important;
  }
  .kh-btn-gold, .kh-btn-outline {
    width: 100% !important; justify-content: center !important;
  }
  .kh-hero-right { display: none !important; }

  /* SECTION padding */
  .section { padding: 2rem 4% !important; }

  /* FLOATING DECOS: hide to prevent overflow */
  .hd-suit, .hd-chip, .hero-decos { display: none !important; }

  /* PAGE HERO inner pages - keep image, fix text */
  .page-banner, [class*="page-hero"] {
    padding: 80px 4% 2rem !important;
    text-align: center !important;
  }
  .page-banner-btns, [class*="page-hero-btns"] {
    flex-direction: column !important;
    gap: 0.5rem !important;
    width: 100% !important;
  }
  .page-banner-btns a, [class*="page-hero-btns"] a {
    width: 100% !important;
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
  }
}