/* ============================================================
   Ilmainen Kasino Theme
   ============================================================ */

:root {
  --color-primary: #ff6b00;
  --color-primary-light: #ff8c40;
  --color-secondary: #00d4ff;
  --color-accent: #ff0080;
  --color-gold: #ffd700;
  --color-bg: #050508;
  --color-bg2: #0a0a14;
  --color-surface: #0f0f1e;
  --color-surface2: #16162a;
  --color-border: #2a2a4a;
  --color-border-neon: #ff6b0040;
  --color-text: #e8e8ff;
  --color-text-muted: #8888aa;
  --font-heading: 'Impact', 'Arial Black', sans-serif;
  --font-body: 'Arial', 'Helvetica Neue', sans-serif;
  --font-mono: 'Courier New', monospace;
  --radius-card: 6px;
  --radius-btn: 4px;
  --shadow-neon: 0 0 20px rgba(255,107,0,0.3);
  --shadow-blue: 0 0 20px rgba(0,212,255,0.2);
  --transition: all 0.25s ease;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; }
body { background: var(--color-bg); color: var(--color-text); font-family: var(--font-body); line-height: 1.6; overflow-x: hidden; }
a { color: var(--color-primary-light); text-decoration: none; transition: var(--transition); }
a:hover { color: var(--color-secondary); }
img { max-width: 100%; height: auto; display: block; }
h1, h2, h3, h4 { font-family: var(--font-heading); line-height: 1.15; color: var(--color-text); letter-spacing: 1px; text-transform: uppercase; }

/* Cyberpunk grid background */
body::before {
  content: '';
  position: fixed;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,107,0,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,107,0,0.03) 1px, transparent 1px);
  background-size: 40px 40px;
  pointer-events: none;
  z-index: 0;
}

/* Glitch animation */
@keyframes glitch {
  0%,100% { text-shadow: none; }
  20% { text-shadow: 2px 0 0 var(--color-accent), -2px 0 0 var(--color-secondary); }
  40% { text-shadow: -2px 0 0 var(--color-accent), 2px 0 0 var(--color-secondary); }
}
.glitch { animation: glitch 4s infinite; }

/* Cookie Banner */
#cookie-banner { position:fixed;bottom:0;left:0;right:0;background:#0a0a14;border-top:1px solid var(--color-border);padding:14px 24px;z-index:9999;display:flex;align-items:center;gap:16px;flex-wrap:wrap; }
#cookie-banner p { flex:1;font-size:0.83rem;color:var(--color-text-muted); }
.btn-cookie-accept,.btn-cookie-decline { padding:8px 18px;border-radius:var(--radius-btn);font-size:0.83rem;cursor:pointer;border:none;font-family:var(--font-body);font-weight:600;transition:var(--transition); }
.btn-cookie-accept { background:var(--color-primary);color:#000; }
.btn-cookie-accept:hover { background:var(--color-primary-light); }
.btn-cookie-decline { background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border); }

/* Age Gate 18+ */
body.age-gate-open { overflow:hidden; }
#age-gate { position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,0.92);backdrop-filter:blur(8px); }
.age-gate-box { width:min(100%,440px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:32px 28px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,0.6); }
.age-gate-badge { display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border:2px solid var(--color-primary);border-radius:50%;font-size:1rem;font-weight:700;color:var(--color-primary);margin:0 auto 16px;font-family:var(--font-heading); }
.age-gate-box h2 { font-size:1.5rem;margin-bottom:12px; }
.age-gate-box > p { color:var(--color-text-muted);font-size:0.92rem;margin-bottom:20px; }
.age-gate-actions { display:flex;flex-direction:column;gap:10px; }
.btn-age-confirm { background:linear-gradient(90deg,var(--color-primary),var(--color-accent));color:#000;border:none;border-radius:var(--radius-btn);padding:14px 20px;font-size:0.95rem;font-weight:700;cursor:pointer;transition:var(--transition); }
.btn-age-confirm:hover { box-shadow:var(--shadow-neon); }
.btn-age-decline { background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-btn);padding:12px 20px;font-size:0.88rem;cursor:pointer; }
.btn-age-decline:hover { border-color:var(--color-primary);color:var(--color-text); }
.age-gate-note { margin-top:16px!important;margin-bottom:0!important;font-size:0.78rem!important; }

/* Navigation */
.site-header { position:sticky;top:0;z-index:1000;background:rgba(5,5,8,0.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);padding:0 24px;height:64px;display:flex;align-items:center;justify-content:space-between; }
.logo { display:flex;align-items:center;gap:10px;font-family:var(--font-heading);font-size:1.3rem;color:var(--color-primary);letter-spacing:3px;text-transform:uppercase; }
.logo-icon { font-size:1.6rem; }
.site-nav { display:flex;align-items:center;gap:4px;list-style:none; }
.site-nav li a { padding:8px 12px;border-radius:var(--radius-btn);font-size:0.85rem;color:var(--color-text-muted);font-family:var(--font-body);transition:var(--transition); }
.site-nav li a:hover,.site-nav li a.active { color:var(--color-primary);background:rgba(255,107,0,0.08); }
.nav-cta { background:var(--color-primary)!important;color:#000!important;font-weight:700!important; }
.nav-cta:hover { background:var(--color-primary-light)!important;box-shadow:var(--shadow-neon); }
.hamburger { display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:6px; }
.hamburger span { display:block;width:24px;height:2px;background:var(--color-text);border-radius:2px; }

/* Hero — Split left text right image */
.hero { position:relative;min-height:88vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden;z-index:1; }
.hero-left { padding:60px 48px 60px 60px;z-index:2; }
.hero-right { position:relative;height:100%;min-height:500px;overflow:hidden; }
.hero-right img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0.7; }
.hero-right::before { content:'';position:absolute;inset:0;background:linear-gradient(to right,var(--color-bg) 0%,transparent 40%);z-index:1; }
.hero-badge { display:inline-block;background:rgba(255,107,0,0.1);border:1px solid var(--color-primary);color:var(--color-primary);font-size:0.72rem;letter-spacing:3px;text-transform:uppercase;padding:5px 14px;border-radius:2px;margin-bottom:20px;font-family:var(--font-mono); }
.hero h1 { font-size:clamp(2.2rem,4.5vw,3.8rem);margin-bottom:16px;line-height:1.05; }
.hero h1 .accent { color:var(--color-primary); }
.hero p { font-size:1rem;color:var(--color-text-muted);margin-bottom:32px;max-width:460px;font-family:var(--font-body);text-transform:none;letter-spacing:0; }
.btn-primary { display:inline-block;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));color:#000;padding:14px 40px;border-radius:var(--radius-btn);font-size:1rem;font-weight:700;font-family:var(--font-heading);letter-spacing:2px;text-transform:uppercase;transition:var(--transition);box-shadow:var(--shadow-neon);border:none;cursor:pointer; }
.btn-primary:hover { transform:translateY(-2px);box-shadow:0 0 30px rgba(255,107,0,0.5);color:#000; }
.btn-secondary { display:inline-block;background:transparent;color:var(--color-primary);padding:12px 32px;border-radius:var(--radius-btn);font-size:0.9rem;font-weight:700;border:1px solid var(--color-primary);letter-spacing:1px;font-family:var(--font-heading);text-transform:uppercase;transition:var(--transition); }
.btn-secondary:hover { background:rgba(255,107,0,0.1);box-shadow:var(--shadow-neon); }
.hero-stats { display:flex;gap:28px;margin-top:36px;flex-wrap:wrap; }
.hero-stat .number { display:block;font-size:1.7rem;font-weight:700;color:var(--color-primary);font-family:var(--font-heading); }
.hero-stat .label { font-size:0.72rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:2px; }

/* Sections */
.section { padding:72px 24px;max-width:1280px;margin:0 auto; }
.section-header { text-align:center;margin-bottom:48px; }
.section-header .eyebrow { display:block;font-size:0.72rem;text-transform:uppercase;letter-spacing:4px;color:var(--color-primary);margin-bottom:10px;font-family:var(--font-mono); }
.section-header h2 { font-size:clamp(1.6rem,3.5vw,2.4rem);margin-bottom:12px; }
.section-header p { color:var(--color-text-muted);max-width:560px;margin:0 auto;text-transform:none;font-family:var(--font-body);font-weight:normal; }
.section-divider { width:60px;height:2px;background:linear-gradient(90deg,var(--color-primary),transparent);margin:16px auto 0; }

/* Compact List Cards */
.promo-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px; }
.promo-card { background:var(--color-surface);border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--color-border);transition:var(--transition); }
.promo-card:hover { border-color:var(--color-primary);box-shadow:var(--shadow-neon); }
.promo-card-img { position:relative;height:160px;overflow:hidden;background:var(--color-surface2); }
.promo-card-img img { width:100%;height:100%;object-fit:cover;transition:transform 0.5s; }
.promo-card:hover .promo-card-img img { transform:scale(1.06); }
.promo-card-badge { position:absolute;top:10px;left:10px;background:var(--color-primary);color:#000;font-size:0.68rem;font-weight:700;padding:3px 8px;border-radius:2px;text-transform:uppercase;letter-spacing:1px;font-family:var(--font-heading); }
.promo-card-body { padding:18px; }
.promo-card-body h3 { font-size:1rem;margin-bottom:6px;color:var(--color-text);letter-spacing:1px; }
.promo-card-body p { font-size:0.85rem;color:var(--color-text-muted);margin-bottom:14px;text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }

/* Game Cards — compact list style */
.games-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px; }
.game-card { background:var(--color-surface);border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--color-border);transition:var(--transition);cursor:pointer; }
.game-card:hover { border-color:var(--color-primary);box-shadow:var(--shadow-neon); }
.game-thumb { position:relative;aspect-ratio:4/3;background:var(--color-surface2);overflow:hidden; }
.game-thumb img { width:100%;height:100%;object-fit:cover;transition:transform 0.4s; }
.game-card:hover .game-thumb img { transform:scale(1.08); }
.game-overlay { position:absolute;inset:0;background:rgba(255,107,0,0.85);display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition); }
.game-card:hover .game-overlay { opacity:1; }
.game-overlay span { color:#000;font-weight:700;font-size:0.85rem;letter-spacing:2px;text-transform:uppercase;font-family:var(--font-heading); }
.game-info { padding:10px 12px;display:flex;align-items:center;gap:8px; }
.game-info h4 { font-size:0.85rem;color:var(--color-text);flex:1;letter-spacing:0.5px; }
.game-info .provider { font-size:0.72rem;color:var(--color-text-muted); }

/* Categories */
.categories-bar { display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:32px; }
.cat-chip { background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted);padding:7px 16px;border-radius:2px;font-size:0.8rem;cursor:pointer;transition:var(--transition);font-family:var(--font-heading);letter-spacing:1px;text-transform:uppercase; }
.cat-chip:hover,.cat-chip.active { background:var(--color-primary);color:#000;border-color:var(--color-primary); }

/* Winners Ticker */
.winners-section { background:var(--color-surface);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:20px 0;overflow:hidden; }
.winners-ticker { display:flex;gap:24px;animation:ticker-scroll 28s linear infinite;white-space:nowrap; }
.winners-ticker:hover { animation-play-state:paused; }
.win-item { display:flex;align-items:center;gap:10px;flex-shrink:0;padding:8px 16px;background:var(--color-surface2);border-radius:4px;border:1px solid var(--color-border); }
.win-item .win-avatar { width:32px;height:32px;border-radius:3px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));display:flex;align-items:center;justify-content:center;font-size:0.8rem;font-weight:700;color:#000;flex-shrink:0;font-family:var(--font-heading); }
.win-item .win-user { font-size:0.82rem;color:var(--color-text);font-weight:600; }
.win-item .win-game { font-size:0.75rem;color:var(--color-text-muted); }
.win-item .win-amount { font-size:0.88rem;color:var(--color-primary);font-weight:700; }
@keyframes ticker-scroll { from { transform:translateX(0); } to { transform:translateX(-50%); } }

/* Providers */
.providers-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px; }
.provider-item { background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:16px 12px;text-align:center;font-size:0.8rem;color:var(--color-text-muted);transition:var(--transition);font-family:var(--font-heading);letter-spacing:1px; }
.provider-item:hover { border-color:var(--color-primary);color:var(--color-primary); }

/* Register Section */
.register-section { background:linear-gradient(135deg,var(--color-bg2),var(--color-surface));border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:80px 24px;text-align:center; }
.register-inner { max-width:560px;margin:0 auto; }
.register-inner h2 { font-size:clamp(1.6rem,3vw,2.2rem);margin-bottom:12px; }
.register-inner p { color:var(--color-text-muted);margin-bottom:28px;text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }
.register-cta { margin-bottom:18px; }
.register-note { font-size:0.78rem;color:var(--color-text-muted); }
.register-features { display:flex;gap:20px;justify-content:center;margin-bottom:28px;flex-wrap:wrap; }
.reg-feature { display:flex;align-items:center;gap:6px;font-size:0.85rem;color:var(--color-text-muted); }

/* Game Pages */
.game-page-hero { background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:28px 24px; }
.game-page-hero h1 { font-size:1.8rem; }
.game-frame-wrapper { position:relative;background:#000;border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--color-border);max-width:900px;margin:0 auto 20px;box-shadow:var(--shadow-neon); }
.game-frame-wrapper iframe { display:block; }
.game-legal { font-size:0.8rem;color:var(--color-text-muted);text-align:center;max-width:600px;margin:0 auto;line-height:1.5; }
.game-info-box { background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:22px;margin-bottom:22px;max-width:900px;margin-left:auto;margin-right:auto; }
.game-info-box h2 { font-size:1.1rem;margin-bottom:10px; }
.game-info-box p,.game-info-box h3 { text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0;color:var(--color-text-muted);font-size:0.9rem;margin-bottom:8px; }
.game-info-box h3 { color:var(--color-primary);font-weight:600;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:1px;margin-top:12px; }
.game-tags { display:flex;gap:6px;flex-wrap:wrap;margin-top:10px; }
.tag { background:var(--color-surface2);border:1px solid var(--color-border);padding:3px 10px;border-radius:2px;font-size:0.75rem;color:var(--color-text-muted); }
.related-games { max-width:900px;margin:0 auto; }

/* Page Hero */
.page-hero { background:linear-gradient(135deg,var(--color-bg2),var(--color-surface));border-bottom:1px solid var(--color-border);padding:56px 24px 44px;text-align:center; }
.page-hero h1 { font-size:clamp(1.8rem,4vw,2.8rem);margin-bottom:10px; }
.page-hero p { color:var(--color-text-muted);max-width:560px;margin:0 auto;text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }

/* Content Blocks */
.content-block { background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:24px 28px;margin-bottom:20px; }
.content-block h2 { font-size:1.2rem;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--color-border); }
.content-block h3 { font-size:0.95rem;margin:16px 0 6px;color:var(--color-primary);text-transform:uppercase;letter-spacing:1px; }
.content-block p { font-size:0.88rem;color:var(--color-text-muted);margin-bottom:10px;line-height:1.7;text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }
.content-block ul { list-style:none;padding:0; }
.content-block ul li { padding:5px 0 5px 18px;font-size:0.88rem;color:var(--color-text-muted);position:relative;text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }
.content-block ul li::before { content:'▶';position:absolute;left:0;font-size:0.65rem;color:var(--color-primary); }

/* RG */
.rg-logos { display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:center;padding:16px 0; }
.rg-logo-item { background:var(--color-surface2);border:1px solid var(--color-border);border-radius:4px;padding:8px 14px;font-size:0.75rem;color:var(--color-text-muted);text-align:center;min-width:90px; }
.rg-logo-item img { max-height:36px;width:auto;margin:0 auto 5px; }
.rg-logos a.rg-logo-link { display: inline-flex; align-items: center; }
.rg-logos a.rg-logo-link:hover img { filter: none; opacity: 1; }
.rg-logos img { height: 40px; width: auto; object-fit: contain; }

/* FAQ */
.faq-list { max-width:760px;margin:0 auto; }
.faq-item { background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);margin-bottom:8px;overflow:hidden; }
.faq-question { padding:16px 20px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:0.9rem;font-weight:700;color:var(--color-text);text-transform:uppercase;letter-spacing:0.5px;font-family:var(--font-heading);transition:var(--transition); }
.faq-question:hover { background:var(--color-surface2); }
.faq-question .arrow { font-size:0.75rem;transition:transform 0.3s;color:var(--color-text-muted);flex-shrink:0; }
.faq-item.open .faq-question .arrow { transform:rotate(180deg); }
.faq-answer { display:none;padding:0 20px 16px;font-size:0.86rem;color:var(--color-text-muted);line-height:1.7;text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }
.faq-item.open .faq-answer { display:block; }

/* Bonus / VIP cards */
.bonus-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px; }
.bonus-card { background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:24px;text-align:center;transition:var(--transition); }
.bonus-card:hover { border-color:var(--color-primary);box-shadow:var(--shadow-neon); }
.bonus-icon { font-size:2.2rem;margin-bottom:12px; }
.bonus-card h3 { font-size:0.95rem;margin-bottom:7px; }
.bonus-card p { font-size:0.84rem;color:var(--color-text-muted);margin-bottom:14px;text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }
.bonus-amount { font-size:1.6rem;font-weight:700;color:var(--color-primary);font-family:var(--font-heading);margin:8px 0; }
.vip-tiers { display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px; }
.vip-tier { background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-card);padding:24px 18px;text-align:center;transition:var(--transition); }
.vip-tier.featured { border-color:var(--color-primary);box-shadow:var(--shadow-neon); }
.vip-tier:hover { transform:translateY(-3px); }
.tier-icon { font-size:2rem;margin-bottom:10px; }
.tier-name { font-size:1rem;font-weight:700;margin-bottom:7px;color:var(--color-text); }
.tier-benefit { font-size:0.82rem;color:var(--color-text-muted);text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }

/* RG section */
.rg-section { background:var(--color-surface2);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:24px;margin-bottom:18px; }
.rg-section h2 { font-size:1.1rem;color:var(--color-text);margin-bottom:10px; }
.rg-section p { font-size:0.88rem;color:var(--color-text-muted);line-height:1.7;margin-bottom:8px;text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }
.rg-tips { display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-top:16px; }
.rg-tip { background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;padding:16px; }
.rg-tip .tip-icon { font-size:1.4rem;margin-bottom:7px; }
.rg-tip h4 { font-size:0.88rem;color:var(--color-primary);margin-bottom:5px;text-transform:uppercase;letter-spacing:0.5px; }
.rg-tip p { font-size:0.82rem; }

/* Tournament */
.tournament-card { background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:22px;margin-bottom:18px;display:flex;gap:24px;align-items:center; }
.tournament-prize { font-size:1.8rem;font-weight:700;color:var(--color-primary);white-space:nowrap;font-family:var(--font-heading); }
.tournament-info h3 { font-size:1rem;margin-bottom:5px; }
.tournament-info p { font-size:0.84rem;color:var(--color-text-muted);text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }

/* Contact */
.contact-grid { display:grid;grid-template-columns:1fr 1fr;gap:36px; }
.info-item { display:flex;gap:12px;margin-bottom:18px;align-items:flex-start; }
.info-icon { font-size:1.3rem;flex-shrink:0; }
.info-text h4 { font-size:0.85rem;color:var(--color-primary);margin-bottom:3px;text-transform:uppercase;letter-spacing:0.5px; }
.info-text p { font-size:0.83rem;color:var(--color-text-muted);text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }

/* Footer */
.site-footer { background:var(--color-surface);border-top:1px solid var(--color-border);padding:40px 24px 20px; }
.footer-grid { max-width:1280px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px;margin-bottom:36px; }
.footer-brand h3 { font-family:var(--font-heading);font-size:1.3rem;color:var(--color-primary);margin-bottom:10px;letter-spacing:3px; }
.footer-brand p { font-size:0.83rem;color:var(--color-text-muted);line-height:1.6;text-transform:none;font-family:var(--font-body);font-weight:normal;letter-spacing:0; }
.footer-col h4 { font-size:0.75rem;text-transform:uppercase;letter-spacing:2px;color:var(--color-primary);margin-bottom:14px; }
.footer-col ul { list-style:none; }
.footer-col ul li { margin-bottom:7px; }
.footer-col ul li a { font-size:0.83rem;color:var(--color-text-muted); }
.footer-col ul li a:hover { color:var(--color-primary); }
.footer-bottom { max-width:1280px;margin:0 auto;padding-top:20px;border-top:1px solid var(--color-border);text-align:center; }
.footer-compliance { font-size:0.8rem;color:var(--color-text-muted);line-height:1.7;margin-bottom:10px;max-width:800px;margin-left:auto;margin-right:auto; }
.footer-legal { font-size:0.76rem;color:#3a3a5a; }
.age-badge { display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:2px solid var(--color-border);border-radius:2px;font-size:0.7rem;font-weight:700;color:var(--color-text-muted);margin:6px;font-family:var(--font-heading); }

/* Utility */
.text-center { text-align:center; }
.mt-24 { margin-top:24px; }
.mb-24 { margin-bottom:24px; }
.container { max-width:1280px;margin:0 auto;padding:0 24px; }
.page-wrapper { min-height:100vh;display:flex;flex-direction:column;position:relative;z-index:1; }
.page-wrapper main { flex:1; }
.promo-hero { position:relative;background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:56px 24px;overflow:hidden; }
.promo-hero::before { content:'>_KAMPANJAT';position:absolute;top:20px;right:40px;font-family:var(--font-mono);font-size:2rem;opacity:0.06;color:var(--color-primary); }

@media (max-width:1024px) { .hero { grid-template-columns:1fr; } .hero-right { display:none; } .hero-left { padding:60px 32px; } .footer-grid { grid-template-columns:1fr 1fr; } .contact-grid { grid-template-columns:1fr; } }
@media (max-width:768px) { .site-nav { display:none;flex-direction:column;position:absolute;top:64px;left:0;right:0;background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:16px;z-index:999; } .site-nav.open { display:flex; } .hamburger { display:flex; } .footer-grid { grid-template-columns:1fr;gap:20px; } .hero-left { padding:40px 24px; } .games-grid { grid-template-columns:repeat(2,1fr); } .promo-grid { grid-template-columns:1fr; } .section { padding:44px 16px; } .tournament-card { flex-direction:column; } #cookie-banner { flex-direction:column;align-items:flex-start; } }
@media (max-width:480px) { .games-grid { grid-template-columns:1fr 1fr; } .bonus-grid { grid-template-columns:1fr; } }
