/* ==========================================================================
   Inimitable Games — Top online casina HR
   ========================================================================== */

:root{
  --bg: #0a0c18;
  --bg-alt: #0f1224;
  --surface: #141830;
  --surface-2: #1b2040;
  --border: rgba(212,175,55,0.18);
  --border-strong: rgba(212,175,55,0.4);
  --gold: #d4af37;
  --gold-light: #f5d485;
  --gold-dark: #8a6a13;
  --purple: #7c5cff;
  --purple-2: #4f3bb5;
  --text: #f3f2f8;
  --text-dim: #a9a8c3;
  --text-faint: #74739a;
  --success: #33d17a;
  --radius: 18px;
  --radius-sm: 10px;
  --shadow: 0 20px 60px -20px rgba(0,0,0,0.6);
  --container: 1180px;
  --header-h: 84px;
}

*,*::before,*::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; overflow-x: hidden; width: 100%; }
body{
  margin:0;
  font-family: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;
  background:
    radial-gradient(1200px 600px at 15% -10%, rgba(124,92,255,0.16), transparent 60%),
    radial-gradient(1000px 500px at 100% 0%, rgba(212,175,55,0.10), transparent 55%),
    var(--bg);
  color: var(--text);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  width: 100%;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
ul{ margin:0; padding:0; list-style:none; }
h1,h2,h3,h4{ margin:0; font-weight:800; letter-spacing:-0.01em; }
p{ margin:0; }
button{ font-family:inherit; cursor:pointer; }
.container{ max-width: var(--container); margin:0 auto; padding: 0 24px; width:100%; box-sizing:border-box; }

::selection{ background: var(--gold); color:#161125; }

/* ==================== ACCESSIBILITY ==================== */
.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
  clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

.skip-link{
  position:absolute; top:-100%; left:12px; z-index:1000;
  background: var(--gold-light); color:#171022; font-weight:700;
  padding:12px 20px; border-radius:0 0 10px 10px; text-decoration:none;
  transition: top .2s ease;
}
.skip-link:focus{ top:0; }

a:focus-visible,
button:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible{
  outline: 2px solid var(--gold-light);
  outline-offset: 3px;
  border-radius: 4px;
}

/* Scrollbar */
::-webkit-scrollbar{ width:10px; }
::-webkit-scrollbar-track{ background: var(--bg); }
::-webkit-scrollbar-thumb{ background: linear-gradient(var(--purple), var(--gold-dark)); border-radius:10px; }

/* ==================== ANIMATED BACKGROUND ==================== */
.bg-fx{
  position: fixed; inset: 0; z-index: -1; overflow: hidden; pointer-events: none;
}
.bg-fx .fx-icon{
  position: absolute; opacity: 0.10; color: var(--gold-light);
  animation-name: fxFloat, fxSpin;
  animation-timing-function: ease-in-out, linear;
  animation-iteration-count: infinite, infinite;
  will-change: transform;
}
.bg-fx .fx-icon.purple{ color: var(--purple); }
.bg-fx .fx-icon.gold{ color: var(--gold); }

@keyframes fxFloat{
  0%, 100%{ translate: 0 0; }
  50%{ translate: 0 -36px; }
}
@keyframes fxSpin{
  from{ rotate: 0deg; }
  to{ rotate: 360deg; }
}

@media (prefers-reduced-motion: reduce){
  .bg-fx .fx-icon{ animation: none; }
}

@media (max-width: 640px){
  .bg-fx .fx-icon{ opacity: 0.07; }
}

/* Reveal on scroll */
.reveal{ opacity:0; transform: translateY(28px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.3,1); }
.reveal.is-visible{ opacity:1; transform:none; }

/* ==================== HEADER ==================== */
.site-header{
  position: sticky; top:0; z-index:200;
  height: var(--header-h);
  display:flex; align-items:center;
  background: rgba(10,12,24,0.72);
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
  border-bottom: 1px solid var(--border);
  transition: box-shadow .3s ease, background .3s ease;
}
.site-header.scrolled{ box-shadow: 0 10px 40px -10px rgba(0,0,0,0.55); background: rgba(9,10,20,0.92); }
.site-header .container{ display:grid; grid-template-columns: auto 1fr; align-items:center; gap:24px; width:100%; }

.brand{ display:flex; align-items:center; gap:12px; font-weight:800; font-size:1.15rem; letter-spacing:0.01em; justify-self:start; min-width:0; }
.brand img{ width:38px; height:38px; flex-shrink:0; }
.brand small{ display:block; font-size:0.62rem; font-weight:600; color: var(--gold-light); letter-spacing:0.18em; }

.nav-right{ display:flex; align-items:center; gap:28px; justify-content:flex-end; justify-self:end; width:100%; }

.nav-links{ display:flex; align-items:center; gap:32px; }
.nav-links a{
  font-size:0.93rem; font-weight:600; color: var(--text-dim); position:relative; padding:6px 2px;
  transition: color .25s ease;
}
.nav-links a::after{
  content:""; position:absolute; left:0; bottom:0; width:0; height:2px;
  background: linear-gradient(90deg, var(--gold), var(--purple));
  transition: width .3s ease;
}
.nav-links a:hover{ color: var(--text); }
.nav-links a:hover::after{ width:100%; }
.nav-links a.active{ color: var(--gold-light); }

.header-cta{
  display:inline-flex; align-items:center; gap:8px;
  padding: 11px 22px; border-radius: 999px;
  font-weight:700; font-size:0.88rem;
  background: linear-gradient(135deg, var(--gold-light), var(--gold) 55%, var(--gold-dark));
  color:#171022; border:1px solid rgba(255,255,255,0.25);
  box-shadow: 0 10px 26px -8px rgba(212,175,55,0.55);
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
  white-space:nowrap;
}
.header-cta:hover{ transform: translateY(-2px) scale(1.02); box-shadow: 0 16px 34px -8px rgba(212,175,55,0.7); filter:brightness(1.05); }

.burger{
  display:none; width:44px; height:44px; border-radius:12px;
  border:1px solid var(--border); background: var(--surface);
  position:relative; flex-shrink:0;
}
.burger span{
  position:absolute; left:11px; right:11px; height:2px; background: var(--gold-light);
  transition: transform .3s ease, opacity .3s ease, top .3s ease;
}
.burger span:nth-child(1){ top:15px; }
.burger span:nth-child(2){ top:21px; }
.burger span:nth-child(3){ top:27px; }
.burger.open span:nth-child(1){ top:21px; transform: rotate(45deg); }
.burger.open span:nth-child(2){ opacity:0; }
.burger.open span:nth-child(3){ top:21px; transform: rotate(-45deg); }

.mobile-drawer{
  position: fixed; inset: var(--header-h) 0 0 0; z-index:190;
  background: rgba(8,9,18,0.98); backdrop-filter: blur(10px);
  display:flex; flex-direction:column; gap:6px; padding: 28px 24px;
  transform: translateY(-12px); opacity:0; pointer-events:none;
  transition: opacity .3s ease, transform .3s ease;
  overflow-y:auto;
}
.mobile-drawer.open{ opacity:1; transform:none; pointer-events:auto; }
.mobile-drawer a{
  padding: 16px 6px; font-size:1.05rem; font-weight:700; color: var(--text);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.mobile-drawer .header-cta{ margin-top:18px; justify-content:center; }

/* ==================== HERO ==================== */
.hero{ padding-top: 76px; padding-bottom: 40px; position:relative; }
.hero::before{
  content:""; position:absolute; top:-100px; right:-140px; width:480px; height:480px; border-radius:50%;
  background: radial-gradient(circle, rgba(124,92,255,0.35), transparent 70%); filter: blur(10px); pointer-events:none;
}
.eyebrow{
  display:inline-flex; align-items:center; gap:8px; padding:7px 16px; border-radius:999px;
  font-size:0.78rem; font-weight:700; letter-spacing:0.06em; text-transform:uppercase;
  color: var(--gold-light); background: rgba(212,175,55,0.1); border:1px solid var(--border-strong);
  margin-bottom:22px;
}
.eyebrow .dot{ width:7px; height:7px; border-radius:50%; background: var(--success); box-shadow:0 0 0 3px rgba(51,209,122,0.25); }

.hero h1{
  font-size: clamp(2.1rem, 4.6vw, 3.6rem); line-height:1.08; max-width: 920px;
  background: linear-gradient(100deg, #fff 20%, var(--gold-light) 55%, var(--gold) 80%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.hero .lead{
  margin-top:20px; font-size:1.12rem; color: var(--text-dim); max-width:660px;
}
.hero .sub{ margin-top:14px; font-size:1.02rem; color: var(--text-faint); max-width:640px; }

/* Benefits */
.benefits{ display:grid; grid-template-columns: repeat(4,1fr); gap:18px; margin-top:44px; }
.benefit-card{
  background: linear-gradient(160deg, var(--surface), var(--surface-2));
  border:1px solid var(--border); border-radius: var(--radius-sm);
  padding: 22px 18px; text-align:center;
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.benefit-card:hover{ transform: translateY(-6px); border-color: var(--border-strong); box-shadow: var(--shadow); }
.benefit-card .icon{
  width:48px; height:48px; margin:0 auto 12px; border-radius:14px;
  display:flex; align-items:center; justify-content:center; font-size:22px;
  background: linear-gradient(135deg, var(--purple), var(--purple-2)); box-shadow: 0 8px 20px -6px rgba(124,92,255,0.6);
}
.benefit-card strong{ display:block; font-size:0.9rem; letter-spacing:0.03em; color: var(--text); }

/* ==================== SECTION HEADERS ==================== */
.section{ padding: 68px 0; }
.section-head{ max-width:680px; margin-bottom:38px; }
.section-tag{ color: var(--gold-light); font-weight:700; font-size:0.8rem; text-transform:uppercase; letter-spacing:0.14em; }
.section-head h2{ font-size: clamp(1.6rem, 3vw, 2.3rem); margin-top:10px; }
.section-head p{ margin-top:12px; color: var(--text-dim); }

.updated-badge{
  display:inline-flex; align-items:center; gap:10px; margin-bottom:26px;
  padding:9px 18px; border-radius:999px; font-size:0.85rem; font-weight:600;
  background: var(--surface); border:1px solid var(--border); color: var(--text-dim);
}
.updated-badge b{ color: var(--gold-light); }
.updated-badge svg{ width:15px; height:15px; }

/* ==================== RANKING CARDS ==================== */
.ranking-list{ display:flex; flex-direction:column; gap:20px; }
.rank-card{
  position:relative; display:grid; grid-template-columns: 64px 200px 1fr auto; align-items:center; gap:26px;
  background: linear-gradient(135deg, var(--surface) 0%, var(--surface-2) 100%);
  border:1px solid var(--border); border-radius: var(--radius); padding: 26px 30px;
  overflow:hidden; transition: transform .35s cubic-bezier(.2,.8,.3,1), box-shadow .35s ease, border-color .35s ease;
}
.rank-card::before{
  content:""; position:absolute; inset:0; opacity:0; pointer-events:none;
  background: linear-gradient(120deg, transparent 30%, rgba(212,175,55,0.14) 50%, transparent 70%);
  transform: translateX(-100%); transition: transform .8s ease, opacity .3s ease;
}
.rank-card:hover{ transform: translateY(-6px); box-shadow: var(--shadow); border-color: var(--border-strong); }
.rank-card:hover::before{ opacity:1; transform: translateX(100%); }
.rank-card.top1{ border-color: var(--border-strong); box-shadow: 0 0 0 1px rgba(212,175,55,0.25), var(--shadow); }

.rank-num{
  width:52px; height:52px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  font-size:1.3rem; font-weight:800; font-style:italic;
  background: linear-gradient(160deg, rgba(212,175,55,0.18), rgba(124,92,255,0.12));
  border:1px solid var(--border-strong); color: var(--gold-light);
}
.rank-logo{
  display:flex; flex-direction:column; align-items:flex-start; gap:10px;
}
.logo-mark{
  display:inline-flex; align-items:center; gap:8px; padding:10px 16px; border-radius:12px;
  font-weight:800; font-size:1.05rem; letter-spacing:0.01em; color:#fff;
  border:1px solid rgba(255,255,255,0.12);
}
.logo-mark.admiral{ background: linear-gradient(135deg,#c0392b,#8e1e1e); }
.logo-mark.arena{ background: linear-gradient(135deg,#0f5ea8,#08315c); }
.logo-mark.hipodrom{ background: linear-gradient(135deg,#1c8a5c,#0e4a32); }
.logo-mark.pin{ background: linear-gradient(135deg,#e0862a,#8a4b0c); }
.logo-img{
  width:150px; height:auto; border-radius:12px; border:1px solid rgba(255,255,255,0.12);
  background:#0c0c0c; padding:4px;
}
.stars{ color: var(--gold-light); font-size:0.85rem; letter-spacing:2px; }
.rank-score{ font-size:0.78rem; color: var(--text-faint); }

.rank-info{ display:flex; flex-direction:column; gap:10px; }
.bonus-line{ font-size:1.05rem; font-weight:700; color: var(--text); }
.bonus-line span{ color: var(--gold-light); }
.tags{ display:flex; flex-wrap:wrap; gap:8px; }
.tag{
  font-size:0.74rem; font-weight:600; padding:5px 11px; border-radius:999px;
  background: rgba(124,92,255,0.14); border:1px solid rgba(124,92,255,0.3); color:#c9bfff;
}
.tag.good{ background: rgba(51,209,122,0.12); border-color: rgba(51,209,122,0.35); color:#7de8ab; }

.rank-cta{ display:flex; flex-direction:column; align-items:flex-end; gap:10px; }
.btn-play{
  display:inline-flex; align-items:center; gap:8px; padding:13px 26px; border-radius:999px;
  font-weight:800; font-size:0.92rem; color:#171022; white-space:nowrap;
  background: linear-gradient(135deg, var(--gold-light), var(--gold) 55%, var(--gold-dark));
  border:1px solid rgba(255,255,255,0.25); box-shadow: 0 10px 24px -8px rgba(212,175,55,0.55);
  transition: transform .25s ease, box-shadow .25s ease;
}
.btn-play:hover{ transform: translateY(-3px); box-shadow: 0 16px 32px -8px rgba(212,175,55,0.75); }
.review-link{ font-size:0.78rem; color: var(--text-faint); text-decoration:underline; text-underline-offset:3px; }
.review-link:hover{ color: var(--gold-light); }

@media (max-width: 860px){
  .rank-card{ grid-template-columns: 1fr; gap:16px; padding:22px; text-align:left; }
  .rank-cta{ align-items:flex-start; width:100%; }
  .btn-play{ width:100%; justify-content:center; }
  .rank-num{ position:absolute; top:18px; right:18px; }
}

/* ==================== REVIEWS ==================== */
.reviews-grid{ display:grid; grid-template-columns: repeat(3,1fr); gap:20px; }
.review-card{
  background: var(--surface); border:1px solid var(--border); border-radius: var(--radius);
  padding: 26px; display:flex; flex-direction:column; gap:16px;
  transition: transform .3s ease, border-color .3s ease;
}
.review-card:hover{ transform: translateY(-6px); border-color: var(--border-strong); }
.review-stars{ color: var(--gold-light); font-size:0.95rem; letter-spacing:2px; }
.review-text{ color: var(--text-dim); font-size:0.94rem; }
.review-user{ display:flex; align-items:center; gap:12px; margin-top:auto; }
.avatar{
  width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  font-weight:800; font-size:0.85rem; color:#171022;
  background: linear-gradient(135deg, var(--gold-light), var(--purple));
}
.review-user .name{ font-weight:700; font-size:0.88rem; }
.review-user .meta{ font-size:0.75rem; color: var(--text-faint); }

/* ==================== INFO BLOCKS ==================== */
.info-grid{ display:grid; grid-template-columns: repeat(3,1fr); gap:20px; }
.info-card{
  background: linear-gradient(160deg, var(--surface), var(--surface-2));
  border:1px solid var(--border); border-radius: var(--radius); padding: 26px;
  transition: transform .3s ease, border-color .3s ease;
}
.info-card:hover{ transform: translateY(-5px); border-color: var(--border-strong); }
.info-card .icon{
  width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center;
  margin-bottom:14px; font-size:20px;
  background: linear-gradient(135deg, var(--gold-light), var(--gold-dark)); color:#171022;
}
.info-card h3{ font-size:1.05rem; margin-bottom:8px; }
.info-card p{ font-size:0.9rem; color: var(--text-dim); }

/* ==================== FAQ ==================== */
#faq .container{ text-align:center; }
#faq .section-head{ margin-left:auto; margin-right:auto; }
.faq-list{ display:flex; flex-direction:column; gap:14px; max-width:840px; margin:0 auto; text-align:left; }
.faq-item{
  background: linear-gradient(160deg, var(--surface), var(--surface-2));
  border:1px solid var(--border); border-radius: var(--radius-sm); overflow:hidden;
  transition: border-color .3s ease;
}
.faq-item:hover{ border-color: var(--border-strong); }
.faq-item[open]{ border-color: var(--border-strong); }
.faq-item summary{
  list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding: 20px 24px; font-weight:700; font-size:1rem; color: var(--text);
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item .faq-chevron{ flex-shrink:0; color: var(--gold-light); transition: transform .3s ease; }
.faq-item[open] .faq-chevron{ transform: rotate(180deg); }
.faq-item p{ padding: 0 24px 22px; color: var(--text-dim); font-size:0.94rem; }

/* ==================== CTA BANNER ==================== */
.cta-banner{
  position:relative; overflow:hidden; border-radius: 28px; padding: 56px 44px; text-align:center;
  background: linear-gradient(135deg, #221a48, #0f0c22 60%);
  border:1px solid var(--border-strong);
}
.cta-banner::after{
  content:""; position:absolute; inset:-40%; background: conic-gradient(from 0deg, rgba(212,175,55,0.12), transparent 30%, rgba(124,92,255,0.15), transparent 70%);
  animation: spin 14s linear infinite; pointer-events:none;
}
@keyframes spin{ to{ transform: rotate(360deg); } }
.cta-banner h2{ font-size: clamp(1.5rem,3vw,2.1rem); position:relative; }
.cta-banner p{ color: var(--text-dim); margin-top:12px; position:relative; }
.cta-banner .header-cta{ margin-top:26px; position:relative; padding:15px 34px; font-size:1rem; }

/* ==================== FOOTER ==================== */
.site-footer{ margin-top:80px; border-top:1px solid var(--border); background: var(--bg-alt); padding-top: 56px; }
.footer-top{ display:grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap:32px; padding-bottom:40px; }
.footer-brand .brand{ margin-bottom:14px; }
.footer-brand p{ color: var(--text-faint); font-size:0.88rem; max-width:280px; }
.footer-col h4{ font-size:0.85rem; letter-spacing:0.06em; text-transform:uppercase; color: var(--gold-light); margin-bottom:16px; }
.footer-col ul{ display:flex; flex-direction:column; gap:11px; }
.footer-col a{ font-size:0.89rem; color: var(--text-dim); transition: color .2s ease, padding-left .2s ease; }
.footer-col a:hover{ color: var(--text); padding-left:4px; }

.compliance-strip{
  display:flex; flex-wrap:wrap; align-items:center; gap:14px; padding:26px 0;
  border-top:1px solid var(--border); border-bottom:1px solid var(--border);
}
.badge{
  display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:10px 18px; border-radius:14px;
  background: var(--surface); border:1px solid var(--border); font-size:0.78rem; font-weight:700; color: var(--text-dim);
  transition: border-color .25s ease, color .25s ease, transform .25s ease, filter .25s ease;
  min-height:60px;
}
.badge:hover{ border-color: var(--border-strong); color: var(--gold-light); transform: translateY(-2px); filter:brightness(1.1); }
.badge.age{ color: var(--gold-light); border-color: var(--border-strong); font-size:0.85rem; }
.badge img{ height:38px; width:auto; display:block; filter: grayscale(1) brightness(1.6) contrast(0.9); opacity:0.85; transition: filter .25s ease, opacity .25s ease; }
.badge:hover img{ filter:none; opacity:1; }
.badge.age img{ height:48px; }

.footer-bottom{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px;
  padding: 22px 0 34px; font-size:0.78rem; color: var(--text-faint);
}
.footer-bottom a{ color: var(--text-faint); text-decoration:underline; text-underline-offset:3px; }
.footer-bottom a:hover{ color: var(--gold-light); }
.disclaimer{
  font-size:0.76rem; color: var(--text-faint); padding: 18px 0; border-top:1px solid var(--border);
  line-height:1.7;
}

/* ==================== LEGAL PAGES ==================== */
.legal-page{ padding-top: 60px; padding-bottom: 90px; text-align:center; }
.legal-page h1{ font-size: clamp(1.8rem, 3.6vw, 2.6rem); margin-bottom:8px; background: linear-gradient(100deg,#fff,var(--gold-light)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.legal-page .updated-badge{ margin: 16px auto 34px; }
.legal-content{ max-width: 820px; margin:0 auto; text-align:left; }
.legal-content h2{ font-size:1.25rem; margin-top:34px; margin-bottom:12px; color: var(--gold-light); }
.legal-content p, .legal-content li{ color: var(--text-dim); font-size:0.96rem; margin-bottom:12px; }
.legal-content ul{ padding-left:20px; list-style:disc; }
.legal-content a{ color: var(--gold-light); text-decoration:underline; }

/* ==================== RESPONSIVE ==================== */
@media (max-width: 1200px){
  .container{ padding: 0 20px; }
}

@media (max-width: 991px){
  .nav-links{ display:none; }
  .header-cta.desktop-only{ display:none; }
  .burger{ display:block; }
  .benefits{ grid-template-columns: repeat(2,1fr); }
  .reviews-grid{ grid-template-columns: repeat(2,1fr); }
  .info-grid{ grid-template-columns: repeat(2,1fr); }
  .footer-top{ grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px){
  .container{ padding: 0 18px; }
  .hero{ padding-top: 48px; padding-bottom: 28px; }
  .benefits{ grid-template-columns: 1fr 1fr; gap:12px; }
  .reviews-grid{ grid-template-columns: 1fr; }
  .info-grid{ grid-template-columns: 1fr; }
  .footer-top{ grid-template-columns: 1fr; gap:28px; }
  .cta-banner{ padding: 40px 22px; }
  .section{ padding: 48px 0; }
}

@media (max-width: 480px){
  .container{ padding: 0 16px; }
  .brand span.name{ font-size:0.98rem; }
  .brand small{ font-size:0.56rem; }
  .hero h1{ font-size: 1.7rem; }
  .benefit-card{ padding:16px 10px; }
  .benefit-card strong{ font-size:0.78rem; }
  .rank-card{ padding:18px; }
  .cta-banner{ padding: 36px 18px; }
  .info-card, .review-card{ padding:22px 18px; }
  .faq-item summary{ padding:18px 18px; gap:12px; }
  .faq-item p{ padding:0 18px 20px; }
}

@media (max-width: 340px){
  .container{ padding: 0 14px; }
  .brand small{ display:none; }
  .header-cta{ padding: 8px 12px; font-size:0.72rem; }
  .benefits{ grid-template-columns: 1fr 1fr; gap:8px; }
  .benefit-card .icon{ width:36px; height:36px; font-size:16px; }
  .hero h1{ font-size:1.35rem; }
  .eyebrow{ font-size:0.66rem; padding:5px 10px; }
  .logo-mark{ font-size:0.85rem; padding:8px 12px; }
  .btn-play{ padding:11px 16px; font-size:0.82rem; }
  .compliance-strip{ gap:8px; }
  .badge{ padding:8px 12px; font-size:0.68rem; min-height:48px; }
  .badge img{ height:30px; }
  .badge.age img{ height:36px; }
  .rank-card{ padding:16px; }
  .info-card, .review-card{ padding:18px 14px; }
}
