/* ==========================================================================
   Royal Treasure Distributor — royaltreasuredistributor.com
   Palette sampled from the Dragon Fury platform logo.
   ========================================================================== */

:root{
  --bg:#120420; --bg-2:#1A0730; --surface:#3A0A52; --surface-2:#5C127E;
  --line:rgba(240,192,0,.20); --line-soft:rgba(205,155,205,.16);
  --accent:#F0C000; --accent-hot:#F0A800; --accent-bright:#FFE680; --cyan:#F74FC0;
  --text:#F7EEF8; --text-dim:#C098C6; --wa:#25D366; --tg:#229ED9;
  --radius:16px; --radius-sm:10px; --maxw:1180px; --shadow:0 18px 50px rgba(0,0,0,.55);
  --font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

*,*::before,*::after{ box-sizing:border-box; }

html{ scroll-behavior:smooth; scroll-padding-top:84px; }

body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--font);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

img{ max-width:100%; display:block; }
figure{ margin:0; }
a{ color:var(--cyan); text-decoration:none; }
a:hover{ color:var(--accent); }

h1,h2,h3,h4{ line-height:1.15; letter-spacing:-.02em; margin:0 0 .5em; font-weight:800; }
h1{ font-size:clamp(2rem,5.2vw,3.6rem); }
h2{ font-size:clamp(1.6rem,3.6vw,2.5rem); }
h3{ font-size:clamp(1.15rem,2vw,1.4rem); }
p{ margin:0 0 1.1em; }

.wrap{ width:100%; max-width:var(--maxw); margin:0 auto; padding-inline:20px; }
.section{ padding-block:clamp(56px,8vw,104px); position:relative; }
.section--alt{ background:
   radial-gradient(1100px 500px at 12% -10%, rgba(48,0,96,.55), transparent 60%),
   var(--bg-2); }
.eyebrow{
  display:inline-block; font-size:.78rem; font-weight:700; letter-spacing:.16em;
  text-transform:uppercase; color:var(--accent); margin-bottom:.9rem;
}
.lead{ font-size:1.08rem; color:var(--text-dim); max-width:70ch; }
.center{ text-align:center; }
.center .lead{ margin-inline:auto; }

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.55em;
  padding:.95em 1.6em; border-radius:999px; font-weight:700; font-size:.98rem;
  border:1px solid transparent; cursor:pointer; text-align:center;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
  line-height:1.2;
}
.btn:hover{ transform:translateY(-2px); }
.btn--primary{
  background:linear-gradient(135deg,var(--accent-bright),var(--accent) 45%,var(--accent-hot));
  color:#1A0E00; box-shadow:0 10px 30px rgba(240,168,0,.32);
}
.btn--primary:hover{ color:#1A0E00; box-shadow:0 16px 40px rgba(240,168,0,.45); }
.btn--ghost{ background:rgba(255,255,255,.04); border-color:var(--line); color:var(--text); }
.btn--ghost:hover{ border-color:var(--accent); color:var(--accent); background:rgba(240,192,0,.07); }
.btn--wa{ background:var(--wa); color:#04220F; }
.btn--wa:hover{ color:#04220F; box-shadow:0 14px 34px rgba(37,211,102,.35); }
.btn--tg{ background:var(--tg); color:#03222F; }
.btn--tg:hover{ color:#03222F; box-shadow:0 14px 34px rgba(34,158,217,.35); }
.btn--sm{ padding:.68em 1.2em; font-size:.9rem; }
.btn-row{ display:flex; flex-wrap:wrap; gap:.8rem; }
.icon{ width:1.15em; height:1.15em; flex:none; fill:currentColor; }

/* ---------- Header ---------- */
.topbar{
  background:linear-gradient(90deg,var(--surface),var(--surface-2));
  border-bottom:1px solid var(--line-soft);
  font-size:.85rem;
}
.topbar .wrap{ display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:42px; }
.topbar a{ color:var(--text-dim); display:inline-flex; align-items:center; gap:.4em; }
.topbar a:hover{ color:var(--accent); }
.topbar__links{ display:flex; gap:1.2rem; align-items:center; }
.topbar__note{ color:var(--text-dim); }

.header{
  position:sticky; top:0; z-index:60;
  background:rgba(10,6,24,.82);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line-soft);
  transition:padding .2s ease, background .2s ease;
}
.header.is-stuck{ background:rgba(10,6,24,.96); box-shadow:0 8px 30px rgba(0,0,0,.5); }
.header .wrap{ display:flex; align-items:center; gap:1.4rem; min-height:72px; }
.brand{ display:flex; align-items:center; gap:.7rem; flex:none; }
.brand img{ height:42px; width:auto; }
.brand__txt{ font-weight:800; font-size:1.02rem; letter-spacing:-.01em; color:var(--text); line-height:1.15; }
.brand__txt span{ display:block; font-size:.68rem; font-weight:600; letter-spacing:.14em;
  text-transform:uppercase; color:var(--accent); }
.nav{ margin-left:auto; display:flex; align-items:center; gap:1.5rem; }
.nav a{ color:var(--text-dim); font-weight:600; font-size:.95rem; }
.nav a:hover{ color:var(--accent); }
.header .btn{ flex:none; }
.burger{ display:none; margin-left:auto; background:none; border:0; padding:.4rem; cursor:pointer; }
.burger span{ display:block; width:26px; height:2px; background:var(--text); margin:5px 0; border-radius:2px;
  transition:transform .25s ease, opacity .25s ease; }
.burger.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.burger.is-open span:nth-child(2){ opacity:0; }
.burger.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* ---------- Hero ---------- */
.hero{
  position:relative; overflow:hidden;
  padding-block:clamp(56px,9vw,110px);
  background:
    radial-gradient(900px 520px at 78% 8%, rgba(240,168,0,.20), transparent 62%),
    radial-gradient(1000px 620px at 12% 18%, rgba(48,0,96,.85), transparent 65%),
    radial-gradient(700px 500px at 50% 110%, rgba(59,200,245,.14), transparent 60%),
    var(--bg);
}
.hero::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.055) 1px, transparent 1px);
  background-size:34px 34px; mask-image:linear-gradient(180deg,#000,transparent 75%);
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 75%);
}
.hero .wrap{ position:relative; z-index:1; display:grid; gap:clamp(2rem,5vw,4rem);
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); align-items:center; }
.hero h1{ margin-bottom:.55em; }
.hero h1 em{ font-style:normal; background:linear-gradient(120deg,var(--accent-bright),var(--accent-hot));
  -webkit-background-clip:text; background-clip:text; color:transparent; }
.hero p{ color:var(--text-dim); font-size:1.06rem; max-width:56ch; }
.hero__logo{ position:relative; display:flex; align-items:center; justify-content:center; }
.hero__logo img{ width:min(420px,100%); filter:drop-shadow(0 22px 48px rgba(0,0,0,.6)); position:relative; z-index:1; }
.hero__logo::before{
  content:""; position:absolute; width:62%; aspect-ratio:1; border-radius:50%;
  background:radial-gradient(circle,rgba(240,192,0,.42),transparent 66%);
  filter:blur(34px); animation:pulse 5.5s ease-in-out infinite;
}
@keyframes pulse{ 0%,100%{ transform:scale(.9); opacity:.75; } 50%{ transform:scale(1.12); opacity:1; } }

.trust{ display:flex; flex-wrap:wrap; gap:1.4rem 2.4rem; margin-top:2.4rem;
  padding-top:1.7rem; border-top:1px solid var(--line-soft); }
.trust div{ min-width:110px; }
.trust b{ display:block; font-size:1.55rem; font-weight:800; color:var(--accent); line-height:1.1; }
.trust span{ font-size:.82rem; color:var(--text-dim); }

/* ---------- Cards & grids ---------- */
.grid{ display:grid; gap:1.4rem; }
.grid--3{ grid-template-columns:repeat(auto-fit,minmax(275px,1fr)); }
.grid--2{ grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); }

.card{
  background:linear-gradient(160deg,rgba(48,0,96,.55),rgba(24,0,72,.35));
  border:1px solid var(--line-soft); border-radius:var(--radius);
  padding:1.7rem; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.card:hover{ transform:translateY(-4px); border-color:var(--line); box-shadow:var(--shadow); }
.card h3{ color:var(--accent); }
.card p{ color:var(--text-dim); margin-bottom:0; font-size:.98rem; }
.card__ico{
  width:48px; height:48px; border-radius:12px; display:grid; place-items:center; margin-bottom:1.1rem;
  background:linear-gradient(140deg,rgba(240,192,0,.2),rgba(59,200,245,.14));
  border:1px solid var(--line);
}
.card__ico svg{ width:24px; height:24px; fill:var(--accent); }

.checklist{ list-style:none; padding:0; margin:0 0 1.4rem; }
.checklist li{ position:relative; padding-left:1.85rem; margin-bottom:.6rem; color:var(--text-dim); }
.checklist li::before{
  content:""; position:absolute; left:0; top:.55em; width:9px; height:9px; border-radius:50%;
  background:linear-gradient(135deg,var(--accent-bright),var(--accent-hot));
  box-shadow:0 0 0 4px rgba(240,192,0,.14);
}

/* ---------- Steps ---------- */
.steps{ display:grid; gap:1.2rem; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); counter-reset:s; }
.step{ position:relative; background:rgba(24,0,72,.42); border:1px solid var(--line-soft);
  border-radius:var(--radius); padding:1.9rem 1.4rem 1.5rem; counter-increment:s;
  transition:border-color .22s ease, transform .22s ease; }
.step:hover{ border-color:var(--line); transform:translateY(-4px); }
.step::before{
  content:counter(s,decimal-leading-zero);
  position:absolute; top:-.55rem; left:1.3rem; font-size:1.55rem; font-weight:800;
  background:linear-gradient(135deg,var(--accent-bright),var(--accent-hot));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.step h3{ font-size:1.05rem; margin-top:.7rem; }
.step p{ font-size:.94rem; color:var(--text-dim); margin:0; }

/* ---------- Games grid ---------- */
.filters{ display:flex; flex-wrap:wrap; gap:.6rem; justify-content:center; margin-bottom:2.2rem; }
.chip{
  background:rgba(255,255,255,.04); border:1px solid var(--line-soft); color:var(--text-dim);
  padding:.5em 1.1em; border-radius:999px; font-size:.88rem; font-weight:600; cursor:pointer;
  transition:all .18s ease; font-family:inherit;
}
.chip:hover{ color:var(--text); border-color:var(--line); }
.chip.is-active{ background:linear-gradient(135deg,var(--accent-bright),var(--accent-hot));
  color:#1A0E00; border-color:transparent; }

.games{ display:grid; gap:1.3rem; grid-template-columns:repeat(auto-fill,minmax(232px,1fr)); }
.game{ position:relative; margin:0; border-radius:var(--radius-sm); overflow:hidden; background:var(--surface);
  border:1px solid var(--line-soft); transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease; }
.game img{ width:100%; height:auto; aspect-ratio:9/16; object-fit:cover; object-position:center; }
.game figcaption{
  position:absolute; inset:auto 0 0 0; padding:2.4rem .9rem .85rem;
  background:linear-gradient(transparent,rgba(10,6,24,.55) 35%,rgba(10,6,24,.95) 78%);
  font-size:.9rem; font-weight:700; line-height:1.3;
}
.game:hover{ transform:translateY(-6px); border-color:var(--accent); box-shadow:0 16px 38px rgba(240,168,0,.22); }
.game.is-hidden{ display:none; }
.games.is-collapsed .game.is-extra{ display:none; }
.games-more{ display:flex; justify-content:center; margin-top:1.8rem; }

/* ---------- Platform logo grid ---------- */
.plats{ display:grid; gap:1.3rem; grid-template-columns:repeat(auto-fit,minmax(226px,1fr)); align-items:stretch; }
.plat{
  background:linear-gradient(160deg,rgba(48,0,96,.5),rgba(24,0,72,.3));
  border:1px solid var(--line-soft); border-radius:var(--radius);
  padding:1.3rem 1.1rem 1.5rem; text-align:center;
  display:flex; flex-direction:column; align-items:center; gap:.65rem;
  transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.plat:hover{ transform:translateY(-5px); border-color:var(--accent); box-shadow:var(--shadow); }
.plat__logo{
  width:100%; height:116px; border-radius:12px; margin-bottom:.2rem;
  display:flex; align-items:center; justify-content:center; padding:.7rem;
  background:radial-gradient(circle at 50% 45%, rgba(255,255,255,.07), rgba(10,6,24,.5) 72%);
  border:1px solid rgba(255,255,255,.06); overflow:hidden;
}
.plat__logo img{ width:100%; height:100%; object-fit:contain; border-radius:8px; }
.plat--featured{ border-color:var(--line); background:linear-gradient(160deg,rgba(64,0,120,.62),rgba(24,0,72,.4)); }
.plat--featured .plat__logo{ height:140px; }
.plat h3{ font-size:1.05rem; margin:0; color:var(--text); }
.plat p{ font-size:.86rem; color:var(--text-dim); margin:0; flex:1; }
.plat .btn{ margin-top:.4rem; width:100%; }
.badge{
  display:inline-block; font-size:.64rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase;
  padding:.3em .75em; border-radius:999px; background:rgba(240,192,0,.14); color:var(--accent);
  border:1px solid var(--line);
}
.badge--now{ background:linear-gradient(135deg,var(--accent-bright),var(--accent-hot)); color:#1A0E00; border-color:transparent; }
.plat p.plat__buy{
  font-size:.88rem; font-weight:800; color:var(--accent); margin:.1rem 0 .2rem; flex:none;
  letter-spacing:-.005em;
}

.plat p.plat__former{
  font-size:.76rem; color:var(--text-dim); margin:-.2rem 0 0; flex:none;
  letter-spacing:.01em;
}
.plat p.plat__former b{ color:var(--cyan); font-weight:700; }

.renames{
  margin-top:2.6rem; background:linear-gradient(160deg,rgba(48,0,96,.42),rgba(24,0,72,.26));
  border:1px solid var(--line-soft); border-radius:var(--radius); padding:clamp(1.3rem,3vw,2rem);
}
.renames h3{ color:var(--accent); margin-bottom:.4rem; }
.renames p{ color:var(--text-dim); font-size:.94rem; margin-bottom:1.3rem; }
.renames table{ width:100%; border-collapse:collapse; font-size:.96rem; }
.renames th{
  text-align:left; padding:.6rem .9rem; font-size:.74rem; letter-spacing:.12em;
  text-transform:uppercase; color:var(--accent); border-bottom:1px solid var(--line);
}
.renames td{ padding:.72rem .9rem; border-bottom:1px solid var(--line-soft); color:var(--text-dim); }
.renames tbody tr:last-child td{ border-bottom:0; }
.renames td b{ color:var(--text); }
.renames tbody tr:hover td{ background:rgba(255,255,255,.03); }

.badge--est{ background:rgba(59,200,245,.12); color:var(--cyan); border-color:rgba(59,200,245,.28); }

/* ---------- FAQ ---------- */
.faq{ max-width:860px; margin-inline:auto; }
.faq details{
  border:1px solid var(--line-soft); border-radius:var(--radius-sm);
  background:rgba(24,0,72,.35); margin-bottom:.85rem; overflow:hidden;
}
.faq details[open]{ border-color:var(--line); }
.faq summary{
  cursor:pointer; padding:1.15rem 3rem 1.15rem 1.3rem; font-weight:700; font-size:1.02rem;
  list-style:none; position:relative;
}
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{
  content:"+"; position:absolute; right:1.2rem; top:50%; transform:translateY(-50%);
  font-size:1.5rem; font-weight:400; color:var(--accent); transition:transform .22s ease;
}
.faq details[open] summary::after{ transform:translateY(-50%) rotate(45deg); }
.faq .faq__a{ padding:0 1.3rem 1.3rem; color:var(--text-dim); font-size:.98rem; }

/* ---------- Form ---------- */
.formwrap{
  background:linear-gradient(165deg,rgba(48,0,96,.62),rgba(16,8,40,.75));
  border:1px solid var(--line); border-radius:22px; padding:clamp(1.4rem,3vw,2.6rem);
  box-shadow:var(--shadow); max-width:900px; margin-inline:auto;
}
.crmWebToEntityForm{ max-width:none !important; background:transparent !important; color:var(--text) !important; }
.fgrid{ display:grid; gap:1.05rem; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); }
.field{ display:flex; flex-direction:column; gap:.4rem; }
.field--full{ grid-column:1/-1; }
.field label{ font-size:.83rem; font-weight:700; color:var(--text-dim); letter-spacing:.02em; }
.field label .req{ color:var(--accent); }
.field input[type=text], .field input[type=email], .field input[type=tel],
.field select, .field textarea{
  width:100%; padding:.85em 1em; border-radius:var(--radius-sm);
  background:rgba(10,6,24,.72); border:1px solid var(--line-soft); color:var(--text);
  font-family:inherit; font-size:.98rem; transition:border-color .18s ease, box-shadow .18s ease;
  -webkit-appearance:none; appearance:none;
}
.field textarea{ min-height:110px; resize:vertical; }
.field select{
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23A99FC4'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right .7rem center; background-size:22px; padding-right:2.4rem;
}
.field select option{ background:#180048; color:var(--text); }
.field :is(input,select,textarea):focus{
  outline:none; border-color:var(--accent); box-shadow:0 0 0 3px rgba(240,192,0,.16);
}
.field input::placeholder, .field textarea::placeholder{ color:rgba(169,159,196,.55); }

.gamepick{ display:grid; grid-template-columns:repeat(auto-fill,minmax(148px,1fr)); gap:.45rem;
  max-height:236px; overflow-y:auto; padding:.9rem; border:1px solid var(--line-soft);
  border-radius:var(--radius-sm); background:rgba(10,6,24,.5); }
.gamepick label{ display:flex; align-items:center; gap:.5rem; font-size:.88rem; font-weight:500;
  color:var(--text-dim); cursor:pointer; padding:.25rem .35rem; border-radius:6px; }
.gamepick label:hover{ background:rgba(255,255,255,.04); color:var(--text); }
.gamepick input{ accent-color:var(--accent); width:16px; height:16px; flex:none; }

.consent{ display:flex; gap:.75rem; align-items:flex-start; margin:1.4rem 0 .4rem;
  font-size:.86rem; color:var(--text-dim); }
.consent input{ accent-color:var(--accent); width:18px; height:18px; margin-top:.15rem; flex:none; }
.consent b{ color:var(--text); }
.zerr{ font-size:.8rem; color:#FF6B6B; }

.formwrap .formsubmit.zcwf_button{
  background:linear-gradient(135deg,var(--accent-bright),var(--accent) 45%,var(--accent-hot)) !important;
  color:#1A0E00 !important; border:0 !important; border-radius:999px !important;
  padding:1em 2.4em !important; font-size:1rem !important; font-weight:800 !important;
  cursor:pointer; max-width:none !important; width:auto;
  box-shadow:0 10px 30px rgba(240,168,0,.32); transition:transform .18s ease, box-shadow .18s ease;
  font-family:inherit;
}
.formwrap .formsubmit.zcwf_button:hover{ transform:translateY(-2px); box-shadow:0 16px 40px rgba(240,168,0,.45); }
.formwrap .formsubmit.zcwf_button[disabled]{ opacity:.6; cursor:wait; transform:none; }
.formactions{ display:flex; flex-wrap:wrap; gap:1rem; align-items:center; margin-top:1.5rem; }
.g-recaptcha{ transform-origin:0 0; }

/* ---------- Global reach ---------- */
.markets{ display:flex; flex-wrap:wrap; gap:.6rem; margin-top:1.4rem; }
.markets span{
  padding:.45em 1em; border-radius:999px; font-size:.86rem; font-weight:700;
  background:rgba(240,192,0,.1); border:1px solid var(--line); color:var(--accent);
}

.locs{ display:grid; gap:1rem; grid-template-columns:repeat(auto-fit,minmax(152px,1fr)); }
.loc{
  background:linear-gradient(160deg,rgba(48,0,96,.55),rgba(24,0,72,.32));
  border:1px solid var(--line-soft); border-radius:var(--radius);
  padding:1.5rem 1.2rem; display:flex; flex-direction:column; gap:.35rem; align-items:center;
  text-align:center; transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.loc:hover{ transform:translateY(-4px); border-color:var(--accent); box-shadow:var(--shadow); }
.loc__abbr{
  font-size:2rem; font-weight:800; line-height:1;
  background:linear-gradient(135deg,var(--accent-bright),var(--accent-hot));
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.loc__name{ font-size:.92rem; font-weight:600; color:var(--text-dim); }
.loc--more{ border-style:dashed; }
.loc--more .loc__abbr{ font-size:1.6rem; }

/* ---------- CTA band ---------- */
.cta{
  background:
    radial-gradient(700px 380px at 20% 0%, rgba(240,168,0,.24), transparent 62%),
    linear-gradient(135deg,var(--surface),var(--surface-2));
  border-block:1px solid var(--line);
}
.cta h2{ margin-bottom:.4em; }
.cta p{ color:var(--text-dim); max-width:62ch; margin-inline:auto; }

/* ---------- Disclaimer ---------- */
.note{
  border-left:3px solid var(--accent); background:rgba(240,192,0,.06);
  padding:1.2rem 1.4rem; border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  font-size:.94rem; color:var(--text-dim); max-width:80ch;
}

/* ---------- Footer ---------- */
.footer{ background:var(--bg-2); border-top:1px solid var(--line-soft); padding-block:3.4rem 1.8rem; }
.footer__grid{ display:grid; gap:2rem; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); }
.footer h4{ font-size:.8rem; letter-spacing:.14em; text-transform:uppercase; color:var(--accent); margin-bottom:1rem; }
.footer ul{ list-style:none; padding:0; margin:0; }
.footer li{ margin-bottom:.55rem; }
.footer a, .footer p{ color:var(--text-dim); font-size:.92rem; }
.footer__bottom{
  margin-top:2.6rem; padding-top:1.5rem; border-top:1px solid var(--line-soft);
  display:flex; flex-wrap:wrap; gap:1rem; justify-content:space-between;
  font-size:.85rem; color:var(--text-dim);
}

/* ---------- Floating contact ---------- */
.floats{ position:fixed; right:18px; bottom:18px; z-index:70; display:flex; flex-direction:column; gap:.65rem; }
.float{
  width:54px; height:54px; border-radius:50%; display:grid; place-items:center;
  box-shadow:0 10px 26px rgba(0,0,0,.45); transition:transform .18s ease;
}
.float:hover{ transform:scale(1.08); }
.float svg{ width:27px; height:27px; fill:#fff; }
.float--wa{ background:var(--wa); }
.float--tg{ background:var(--tg); }

/* ---------- Reveal ---------- */
.js .reveal{ opacity:0; transform:translateY(22px); transition:opacity .6s ease, transform .6s ease; }
.js .reveal.is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){
  .js .reveal{ opacity:1; transform:none; transition:none; }
  html{ scroll-behavior:auto; }
  .hero__logo::before{ animation:none; }
}

/* ---------- Responsive ---------- */
@media (max-width:960px){
  .hero .wrap{ grid-template-columns:1fr; text-align:center; }
  .hero p{ margin-inline:auto; }
  .hero .btn-row{ justify-content:center; }
  .trust{ justify-content:center; }
  .hero__logo{ order:-1; }
  .hero__logo img{ width:min(300px,72%); }
}
@media (max-width:860px){
  .burger{ display:block; }
  .nav{
    position:absolute; inset:100% 0 auto 0; flex-direction:column; align-items:stretch; gap:0;
    background:rgba(10,6,24,.98); border-bottom:1px solid var(--line-soft);
    padding:.5rem 20px 1.2rem; display:none;
  }
  .nav.is-open{ display:flex; }
  .nav a{ padding:.85rem 0; border-bottom:1px solid var(--line-soft); }
  .header__cta{ display:none; }
  .topbar__links span{ display:none; }
  .topbar__note{ font-size:.78rem; }
}
@media (max-width:600px){
  body{ font-size:16px; }
  .games{ grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:.8rem; }
  .plats{ grid-template-columns:repeat(auto-fit,minmax(158px,1fr)); gap:.8rem; }
  .plat__logo{ height:92px; }
  .plat--featured .plat__logo{ height:104px; }
  .game figcaption{ font-size:.78rem; padding:1.8rem .6rem .6rem; }
  .btn{ width:100%; }
  .btn-row{ flex-direction:column; }
  .formactions{ flex-direction:column; align-items:stretch; }
  .g-recaptcha{ transform:scale(.88); }
  .floats{ right:12px; bottom:12px; }
  .float{ width:48px; height:48px; }
}

/* legacy / rename page */
.storywrap{ max-width:860px; margin-inline:auto; display:grid; gap:2.2rem; }
.story h2{ font-size:clamp(1.3rem,2.6vw,1.8rem); color:var(--accent); }
.story p{ color:var(--text-dim); margin:0; font-size:1.04rem; }
.kwstrip{ display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1rem; }
.kwstrip span{ font-size:.82rem; padding:.35em .85em; border-radius:999px;
  background:rgba(255,255,255,.05); border:1px solid var(--line-soft); color:var(--text-dim); }
