@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500;700;900&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{
  /* --- palette: fugu neon noir --- */
  --bg:#0d0a2a;
  --bg-2:#1a1046;
  --panel:#1a1046;
  --panel-2:color-mix(in srgb,var(--panel) 74%,var(--bg));
  --line:rgba(255,62,165,0.24);
  --border:rgba(255,62,165,0.24);
  --accent:#ff3ea5;
  --accent-1:#ff3ea5;
  --accent-2:#7a3cff;
  --gold:#ffd75e;
  --text:#f5f8fc;
  --text-2:rgba(245,248,252,0.62);
  --text-muted:rgba(245,248,252,0.62);
  --prose:rgba(245,248,252,0.84);
  --on-accent:#ffffff;
  --on-accent-pair:#ffffff;
  --radius:14px;

  --font-head:'Zen Maru Gothic','Noto Sans JP',Georgia,'Times New Roman',serif;
  --font-body:'Manrope','Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;

  --hero-grad:linear-gradient(135deg,#ff9dd0 0%,#c9a6ff 55%,#8f7dff 100%);
  --hero-fill:transparent;

  --btn-bg:linear-gradient(135deg,#ff3ea5 0%,#7a3cff 100%);
  --btn-shadow:0 10px 26px -12px rgba(255,62,165,.55);
  --btn-shadow-hover:0 0 30px rgba(255,62,165,.6),0 14px 36px -12px rgba(122,60,255,.55);

  --card-bg:var(--panel);
  --card-border:1px solid rgba(255,62,165,0.24);
  --card-shadow:0 2px 14px rgba(0,0,0,.4);
  --card-shadow-hover:0 0 28px rgba(255,62,165,.35),0 22px 48px -22px rgba(122,60,255,.55);

  --icon-bg:linear-gradient(135deg,#ff3ea5,#7a3cff);
  --icon-radius:14px;

  --glow-1:.22;
  --glow-2:.18;
  --tile-cta:"Играть";
}

/* === base === */
*,*::before,*::after{box-sizing:border-box}
html,body{background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.5;margin:0;padding:0}
body{padding-bottom:100px;position:relative;overflow-x:hidden}
body::before{
  content:"";position:fixed;inset:-20% -20% auto auto;width:70vw;height:60vh;
  background:radial-gradient(circle at 60% 40%,rgba(255,62,165,var(--glow-1)),transparent 60%);
  z-index:-1;pointer-events:none;filter:blur(60px)
}
body::after{
  content:"";position:fixed;left:-15%;bottom:-15%;width:70vw;height:60vh;
  background:radial-gradient(circle at 40% 60%,rgba(122,60,255,var(--glow-2)),transparent 60%);
  z-index:-1;pointer-events:none;filter:blur(60px)
}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4{color:var(--text);font-family:var(--font-head)}

/* === container === */
.container{max-width:1200px;margin:0 auto;padding:0 20px}

/* === Sticky glass header === */
.site-header{
  position:sticky;top:0;z-index:40;
  background:color-mix(in srgb,var(--bg) 68%,transparent);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  backdrop-filter:blur(18px) saturate(140%);
  border-bottom:1px solid rgba(255,62,165,.2)
}
.container.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;gap:16px}
.brand{font-family:var(--font-head);font-weight:900;font-size:1.15rem;letter-spacing:.02em;color:var(--text);text-decoration:none;display:inline-flex;align-items:center}
.brand .dot{
  display:inline-flex;align-items:center;justify-content:center;
  width:28px;height:28px;border-radius:8px;margin-right:8px;
  background:linear-gradient(135deg,#ff3ea5,#7a3cff);
  color:#fff;font-weight:900;
  box-shadow:0 6px 20px -6px rgba(255,62,165,.7),0 0 20px rgba(122,60,255,.4)
}
.nav-links{display:flex;gap:22px;list-style:none;padding:0;margin:0}
.nav-links a{color:var(--text-2);text-decoration:none;font-size:.9rem;font-weight:500;transition:.2s}
.nav-links a:hover{color:var(--text)}
.nav-cta{display:flex;gap:10px;align-items:center}
.burger{display:none}
@media(max-width:900px){
  .nav-links{display:none}
  .burger{display:flex;flex-direction:column;gap:4px;width:28px;height:28px;background:transparent;border:0;cursor:pointer}
  .burger span{width:100%;height:2px;background:var(--text);border-radius:2px}
}

/* === Buttons === */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:11px 22px;border-radius:99px;
  font-family:var(--font-body);font-weight:700;font-size:.9rem;
  text-decoration:none;cursor:pointer;border:0;
  transition:.22s cubic-bezier(.2,.9,.3,1.05);letter-spacing:.01em
}
.btn-lg{padding:14px 28px;font-size:1rem}
.btn-primary{background:var(--btn-bg);color:#fff;box-shadow:var(--btn-shadow)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--btn-shadow-hover)}
.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--border)}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}

/* === Promo hero === */
.promo{
  position:relative;border-radius:var(--radius);overflow:hidden;
  padding:44px 40px;margin-top:24px;min-height:380px;display:flex;align-items:center;
  background:linear-gradient(115deg,rgba(255,62,165,.32) 0%,rgba(122,60,255,.24) 42%,var(--panel) 78%);
  border:1px solid rgba(255,62,165,.32);
  box-shadow:0 22px 60px -30px rgba(255,62,165,.35)
}
.promo-art{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.45;z-index:0}
.promo-inner{position:relative;z-index:1;max-width:640px}
.promo-eyebrow{color:var(--gold);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:700}
.promo-title{
  background:linear-gradient(135deg,#ffffff 0%,#ffbde3 45%,#c9a6ff 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  font-family:var(--font-head);font-weight:900;letter-spacing:.01em;
  font-size:2.4rem;line-height:1.1;margin:14px 0
}
.promo-prize{color:#ff8fd0;text-shadow:0 0 18px rgba(255,62,165,.55);font-family:var(--font-head);font-weight:700;font-size:1.4rem;margin-bottom:22px}
.promo-prize small{display:block;color:var(--text-2);font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;margin-top:4px}
.promo-timer{display:flex;gap:10px;margin-bottom:22px;flex-wrap:wrap}
@keyframes fugu-pulse{
  0%,100%{box-shadow:0 0 0 0 rgba(255,62,165,0);border-color:rgba(255,62,165,.28)}
  50%{box-shadow:0 0 16px 0 rgba(255,62,165,.42);border-color:rgba(255,62,165,.65)}
}
.promo-timer .u{
  background:color-mix(in srgb,var(--panel) 60%,transparent);
  border:1px solid rgba(255,62,165,.28);border-radius:10px;padding:10px 14px;min-width:64px;text-align:center;
  animation:fugu-pulse 2.6s ease-in-out infinite
}
.promo-timer .u:nth-child(2){animation-delay:.2s}
.promo-timer .u:nth-child(3){animation-delay:.4s}
.promo-timer .u:nth-child(4){animation-delay:.6s}
.promo-timer .u b{
  display:block;font-size:1.5rem;
  background:linear-gradient(135deg,#ff3ea5,#c9a6ff);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  font-family:var(--font-head);font-weight:900
}
.promo-timer .u span{color:var(--text-2);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}
@media(prefers-reduced-motion:reduce){.promo-timer .u{animation:none}}
@media(max-width:700px){.promo-title{font-size:1.55rem}.promo{padding:32px 22px;min-height:auto}}

/* === Welcome offer === */
.offer{
  background:linear-gradient(135deg,rgba(255,62,165,.14),rgba(122,60,255,.10));
  border:1px solid rgba(255,62,165,.28);
  box-shadow:0 26px 64px -30px rgba(255,62,165,.55);
  border-radius:var(--radius);padding:36px 32px;
  text-align:center
}
.offer-eyebrow{
  background:linear-gradient(135deg,rgba(255,215,94,.22),rgba(255,62,165,.18));
  color:var(--gold);
  padding:6px 14px;border-radius:99px;display:inline-block;
  letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;font-weight:700;margin-bottom:14px
}
.offer-amount{
  background:linear-gradient(135deg,#ff3ea5,#ffd75e);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  font-family:var(--font-head);font-weight:900;font-size:1.8rem;line-height:1.15;margin:6px 0 14px
}
.offer-desc{color:var(--prose);max-width:640px;margin:0 auto 22px;line-height:1.6}

/* === Chips === */
.chip{
  display:inline-flex;align-items:center;padding:6px 14px;margin:4px 6px 4px 0;
  border-radius:999px;
  background:color-mix(in srgb,var(--panel) 82%,var(--accent));
  border:1px solid rgba(255,62,165,.25);
  color:var(--text-2);font-size:.85rem;font-weight:500;transition:.2s
}
.chip:hover{color:var(--text);border-color:rgba(255,62,165,.55);transform:translateY(-1px)}
.chips{margin:14px 0 26px}
.sec-h,section > h2{font-family:var(--font-head);font-weight:900;color:var(--text);margin:36px 0 18px;font-size:1.55rem}
.sec{margin:44px 0}

/* === Slots catalog === */
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.tab{
  padding:8px 16px;border-radius:99px;border:1px solid var(--border);
  background:transparent;color:var(--text-2);cursor:pointer;font-size:.85rem;font-weight:600;transition:.2s
}
.tab.active,.tab:hover{
  background:linear-gradient(135deg,rgba(255,62,165,.18),rgba(122,60,255,.14));
  color:var(--text);border-color:rgba(255,62,165,.5)
}
.lobby-head h2{margin:0}
.grid-tiles{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-top:18px
}
.game-card{
  position:relative;aspect-ratio:1;overflow:hidden;
  border-radius:var(--radius);background:var(--panel);
  border:1px solid rgba(255,62,165,.18);
  text-decoration:none;color:var(--text);transition:.22s;display:block
}
.game-card:hover{
  box-shadow:0 0 34px rgba(255,62,165,.55),0 22px 48px -18px rgba(122,60,255,.55);
  border-color:rgba(255,62,165,.6);transform:translateY(-2px)
}
.game-card img{width:100%;height:100%;object-fit:cover;display:block}
.gc-content{
  position:absolute;inset:auto 0 0 0;padding:10px 12px;
  background:linear-gradient(180deg,transparent,rgba(13,10,42,.9));color:#fff
}
.gc-title{display:block;font-weight:600;font-size:.9rem;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
.gc-btns{display:flex;gap:6px;margin-top:6px}
.gc-demo,.gc-play{display:inline-block;padding:3px 10px;border-radius:99px;font-size:.72rem;font-weight:600}
.gc-demo{background:rgba(255,255,255,.12);color:var(--text)}
.gc-play{background:linear-gradient(135deg,#ff3ea5,#7a3cff);color:#fff}
.tile-more{margin-top:22px;text-align:center}
.tile-more a{color:var(--accent);font-weight:600}

/* === Cards + access === */
.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:26px}
@media(max-width:800px){.access-grid{grid-template-columns:1fr}}
.card{
  background:var(--card-bg);border:var(--card-border);border-radius:var(--radius);
  padding:26px;box-shadow:var(--card-shadow);transition:.25s
}
.card:hover{box-shadow:0 0 30px rgba(255,62,165,.5),0 22px 44px -20px rgba(122,60,255,.5);border-color:rgba(255,62,165,.55)}
.card .icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:48px;height:48px;border-radius:var(--icon-radius);
  background:var(--icon-bg);margin-bottom:12px;font-size:1.4rem;
  box-shadow:0 8px 24px -10px rgba(255,62,165,.6)
}
.card h3{font-family:var(--font-head);margin:0 0 10px;font-size:1.15rem;color:var(--text)}
.card p{color:var(--prose);margin:0 0 16px;line-height:1.6}

/* === Screenshots === */
.screenshots{display:flex;gap:14px;overflow-x:auto;padding:8px 2px;scroll-snap-type:x mandatory}
.screenshots img{
  flex:0 0 220px;height:auto;aspect-ratio:9/16;object-fit:cover;
  border-radius:20px;border:1px solid rgba(255,62,165,.24);scroll-snap-align:start
}

/* === VIP === */
.vip .lead{color:var(--text-2);margin-bottom:22px}
.vip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.vip-card{
  background:linear-gradient(180deg,var(--panel),color-mix(in srgb,var(--panel) 70%,#000));
  border:1px solid rgba(255,62,165,.28);border-radius:var(--radius);padding:22px;text-align:center;transition:.25s
}
.vip-card:hover{transform:translateY(-2px);border-color:rgba(255,62,165,.55);box-shadow:0 0 28px rgba(255,62,165,.35)}
.vip-lvl{font-family:var(--font-head);font-weight:900;font-size:1.35rem;color:var(--gold)}
.vip-perk{
  background:linear-gradient(135deg,#ff3ea5,#c9a6ff);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  font-weight:900;font-size:1.6rem;margin:10px 0;font-family:var(--font-head)
}
.vip-req{color:var(--text-2);font-size:.85rem;line-height:1.5}

/* === Pros/Cons === */
.pc-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:14px}
@media(max-width:800px){.pc-grid{grid-template-columns:1fr}}
.pros li,.cons li{padding:8px 0 8px 28px;position:relative;color:var(--prose);line-height:1.55}
.pros li::before{content:"✓";position:absolute;left:0;top:8px;color:#3fdb8f;font-weight:900}
.cons li::before{content:"—";position:absolute;left:0;top:8px;color:#ff8fa3;font-weight:900}
.pros,.cons{list-style:none;padding:0;margin:0}
.proscons h3{font-family:var(--font-head);color:var(--text);margin:0 0 6px}

/* === Reviews === */
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.review{background:var(--panel);border:1px solid rgba(255,62,165,.2);border-radius:var(--radius);padding:20px}
.review-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.review-head strong{color:var(--text);font-family:var(--font-head);font-weight:700}
.stars{color:var(--gold);letter-spacing:.05em}
.review p{color:var(--prose);line-height:1.55;margin:0}

/* === Trust bar === */
.trust-inner{
  display:flex;flex-wrap:wrap;align-items:center;gap:18px;justify-content:center;
  padding:16px 20px;border-radius:var(--radius);
  background:color-mix(in srgb,var(--panel) 78%,var(--bg));
  border:1px solid rgba(255,62,165,.2);color:var(--text-2);font-size:.88rem
}
.t18{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;border:2px solid var(--gold);
  border-radius:8px;color:var(--gold);font-weight:900
}

/* === Article E-E-A-T === */
.article{max-width:820px;margin:44px auto}
.byline{display:flex;align-items:center;gap:12px;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--border)}
.byline-av{
  width:44px;height:44px;border-radius:50%;
  background:var(--icon-bg);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-head);font-weight:900;font-size:1.2rem;
  box-shadow:0 8px 24px -10px rgba(255,62,165,.6)
}
.byline-txt{color:var(--text-2);font-size:.9rem}
.byline-txt strong{color:var(--text);display:block;font-family:var(--font-head)}
.article h2{font-family:var(--font-head);font-weight:900;color:var(--text);margin:32px 0 14px;font-size:1.35rem}
.article p,.article li{color:var(--prose);line-height:1.68}
.article strong{color:var(--text)}
.article ul{padding-left:22px}

/* === FAQ === */
.faq-list{margin-top:18px}
.faq-item{
  border:1px solid rgba(255,62,165,.2);border-radius:var(--radius);
  margin-bottom:10px;background:var(--panel);overflow:hidden;transition:.2s
}
.faq-item:hover{border-color:rgba(255,62,165,.42)}
.faq-q{
  width:100%;text-align:left;padding:16px 48px 16px 20px;
  background:transparent;border:0;color:var(--text);
  font-family:var(--font-body);font-weight:600;font-size:1rem;cursor:pointer;position:relative
}
.faq-q::after{
  content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);
  color:var(--accent);font-weight:900;font-size:1.3rem;transition:.2s
}
.faq-item.open .faq-q::after{content:"−";color:var(--gold)}
.faq-a{max-height:0;overflow:hidden;padding:0 20px;color:var(--prose);line-height:1.6;transition:.28s}
.faq-item.open .faq-a{max-height:800px;padding:0 20px 16px}

/* === Footer === */
.ftr{margin-top:60px;padding:40px 0 20px;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg) 82%,#000)}
.ftr-inner{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;margin-bottom:26px}
@media(max-width:800px){.ftr-inner{grid-template-columns:1fr 1fr}.ftr-brand{grid-column:1 / -1}}
.ftr h4{font-family:var(--font-head);color:var(--text);margin:0 0 12px;font-size:.95rem}
.ftr ul{list-style:none;padding:0;margin:0}
.ftr li{padding:5px 0;color:var(--text-2);font-size:.88rem}
.ftr a{color:var(--text-2);text-decoration:none}
.ftr a:hover{color:var(--accent)}
.ftr-col p{color:var(--text-2);font-size:.85rem;line-height:1.55}
.rg{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:20px;border-top:1px solid var(--border)}
.rg-help{color:var(--gold)}
.copy{margin-left:auto;color:var(--text-2);font-size:.82rem}

/* === Sticky bottom CTA === */
.sticky-cta{
  position:fixed;left:16px;right:16px;bottom:16px;
  padding:14px 22px;border-radius:99px;
  background:linear-gradient(135deg,#ff3ea5,#7a3cff);
  color:#fff;text-align:center;text-decoration:none;
  font-family:var(--font-head);font-weight:700;font-size:.95rem;
  box-shadow:0 12px 40px -14px rgba(255,62,165,.65),0 0 30px rgba(255,62,165,.35);
  transform:translateY(140%);opacity:0;transition:.35s cubic-bezier(.2,.9,.3,1.15);
  z-index:50;max-width:760px;margin:0 auto
}
.sticky-cta.show{transform:translateY(0);opacity:1}

/* === misc === */
::selection{background:rgba(255,62,165,.42);color:#fff}
a:hover{text-shadow:0 0 10px rgba(255,62,165,.35)}
.badge{background:color-mix(in srgb,var(--accent) 14%,transparent);border-color:rgba(255,62,165,.4)}
