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

:root{
  --wrap:1120px;
  --pad:20px;
  --font:-apple-system,"SF Pro Rounded",BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

html{
  background:var(--bg);
  background-image:radial-gradient(130% 70% at 50% -10%, #1b52ad 0%, #123c8c 40%, var(--bg-deep) 100%);
  background-attachment:fixed;
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
}

body{
  font-family:var(--font);
  font-size:16px;
  line-height:1.6;
  color:var(--ink-soft);
  min-height:100dvh;
  overflow-x:hidden;
}

[hidden]{display:none !important}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,select{font:inherit;color:inherit}

h1,h2,h3{color:var(--title);font-weight:900;letter-spacing:-.03em;line-height:1.1;text-wrap:balance}
h1{font-size:clamp(2rem,7vw,3.4rem)}
h2{font-size:clamp(1.5rem,4vw,2.3rem)}
h3{font-size:1.06rem;letter-spacing:-.02em}

.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}

section{padding:clamp(56px,9vw,104px) 0;position:relative}
.sec-head{margin-bottom:clamp(28px,4vw,44px)}
.sec-head h2,.sec-head p{max-width:56ch}
.sec-head p{margin-top:10px;font-size:1.05rem}
.sec-head.center{text-align:center}
.sec-head.center h2,.sec-head.center p{margin-inline:auto}

.eyebrow{
  display:inline-block;font-size:.74rem;font-weight:900;letter-spacing:.14em;
  text-transform:uppercase;color:var(--accent);margin-bottom:12px;
}

.top{
  position:sticky;top:0;z-index:50;
  background:rgba(7,30,78,.82);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(143,184,245,.16);
}
.top-in{display:flex;align-items:center;gap:14px;min-height:66px}
.brand{display:flex;align-items:center;gap:11px;flex:0 0 auto}
.brand img{
  width:36px;height:36px;border-radius:11px;
  background:linear-gradient(180deg,#232b39,#1a212d);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 var(--rise-sm) 0 rgba(6,20,54,.75),0 8px 14px rgba(4,16,44,.42);
}
.brand b{color:var(--title);font-size:1.22rem;font-weight:900;letter-spacing:-.03em}

.top-nav{display:none;margin-inline-start:auto;gap:4px}
.top-nav a{
  padding:8px 13px;border-radius:11px;font-size:.94rem;font-weight:700;
  color:var(--ink-soft);transition:background .18s ease,color .18s ease;
}
.top-nav a:hover{background:rgba(143,184,245,.14);color:var(--ink)}

.lang{position:relative;margin-inline-start:auto;flex:0 0 auto}
.top-nav + .lang{margin-inline-start:0}
.lang select{
  appearance:none;-webkit-appearance:none;
  padding:9px 34px 9px 13px;border:0;border-radius:12px;
  background:linear-gradient(180deg,var(--card-hi),var(--card));
  color:var(--ink);font-size:.9rem;font-weight:800;cursor:pointer;
  box-shadow:var(--shadow-sm);
}
.lang svg{
  position:absolute;right:11px;top:50%;transform:translateY(-50%);
  width:13px;height:13px;pointer-events:none;opacity:.85;
}

.hero{padding-top:clamp(40px,6vw,72px);overflow:hidden}
.hero-in{display:grid;gap:clamp(36px,6vw,56px);align-items:center}
.hero-copy p.lede{font-size:clamp(1.02rem,2.2vw,1.22rem);max-width:46ch;margin-top:16px}
.hero-icon{
  width:78px;height:78px;border-radius:22px;margin-bottom:20px;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.2),0 6px 0 rgba(6,20,54,.8),0 20px 34px rgba(4,16,44,.5);
}

.badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.badge{
  display:flex;align-items:center;gap:11px;
  padding:12px 20px 12px 17px;border-radius:15px;
  background:linear-gradient(180deg,#2b3242,#1a2029);
  color:#fff;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.16),0 var(--rise) 0 #0c0f15,0 12px 22px rgba(3,10,28,.5);
  transition:transform .16s ease,box-shadow .16s ease;
}
.badge svg{width:26px;height:26px;flex:0 0 auto;fill:#fff}
.badge span{display:block;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.72;line-height:1.3}
.badge b{display:block;font-size:1.02rem;font-weight:800;letter-spacing:-.02em;line-height:1.2}
.badge[href]:hover{transform:translateY(-2px);box-shadow:inset 0 2px 0 rgba(255,255,255,.16),0 7px 0 #0c0f15,0 16px 26px rgba(3,10,28,.55)}
.badge[href]:active{transform:translateY(var(--rise));box-shadow:inset 0 2px 0 rgba(255,255,255,.16),0 0 0 #0c0f15,0 6px 12px rgba(3,10,28,.5)}
.badge.soon{opacity:.62;cursor:default}
.badge.soon b{font-size:.9rem}

.btn{
  display:inline-flex;align-items:center;gap:9px;
  padding:14px 24px;border-radius:15px;border:0;cursor:pointer;
  background:linear-gradient(180deg,var(--btn-hi),var(--btn));
  color:#fff;font-weight:800;font-size:1rem;letter-spacing:-.01em;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.24),0 var(--rise) 0 var(--btn-edge),0 12px 22px rgba(4,16,44,.44);
  transition:transform .14s ease,box-shadow .14s ease;
}
.btn:active{transform:translateY(var(--rise));box-shadow:inset 0 2px 0 rgba(255,255,255,.24),0 0 0 var(--btn-edge),0 6px 12px rgba(4,16,44,.4)}
.btn svg{width:18px;height:18px;fill:currentColor}
.btn.ghost{
  background:linear-gradient(180deg,var(--card-hi),var(--card));
  box-shadow:inset 0 2px 0 rgba(255,255,255,.24),0 var(--rise) 0 var(--card-edge),0 12px 22px rgba(4,16,44,.44);
}
.btn.ghost:active{box-shadow:inset 0 2px 0 rgba(255,255,255,.24),0 0 0 var(--card-edge),0 6px 12px rgba(4,16,44,.4)}
.hero .btn{margin-top:18px}

.phone{
  position:relative;flex:0 0 auto;
  width:min(282px,74vw);
  padding:9px;border-radius:46px;
  background:linear-gradient(158deg,#5a6474 0%,#2c333f 34%,#1a1f27 68%,#39414e 100%);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.13),
    inset 0 2px 1px rgba(255,255,255,.24),
    0 10px 0 #080d1e,
    0 30px 60px rgba(3,10,30,.62);
}
.phone::before,.phone::after{
  content:"";position:absolute;left:-2px;width:3px;border-radius:3px 0 0 3px;
  background:linear-gradient(90deg,#141922,#39414e);
}
.phone::before{top:132px;height:26px}
.phone::after{top:172px;height:46px}
.phone-side{
  position:absolute;right:-2px;top:148px;width:3px;height:64px;border-radius:0 3px 3px 0;
  background:linear-gradient(270deg,#141922,#39414e);
}
.phone-screen{
  position:relative;aspect-ratio:375/812;border-radius:38px;overflow:hidden;
  background:var(--bg-deep);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.6);
}
.phone-screen img{width:100%;height:100%;object-fit:cover}
.phone-island{
  position:absolute;top:1.35%;left:50%;transform:translateX(-50%);
  width:33%;height:4.43%;border-radius:99px;
  background:#05070c;
  box-shadow:0 0 0 1px rgba(255,255,255,.06);
}
.phone-island::after{
  content:"";position:absolute;right:7%;top:50%;transform:translateY(-50%);
  width:22%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 34% 30%,#2f4a6b,#0a1119 68%);
}
.phone-home{
  position:absolute;left:50%;bottom:1.05%;transform:translateX(-50%);
  width:36%;height:.62%;border-radius:99px;
  background:rgba(255,255,255,.82);
}
.phone-glare{
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(122deg,rgba(255,255,255,.14) 0%,rgba(255,255,255,.05) 18%,transparent 38%);
}
.phone-cap{
  margin-top:16px;text-align:center;font-size:.9rem;font-weight:800;
  color:var(--ink-soft);letter-spacing:-.01em;
}

.hero-art{display:flex;justify-content:center;position:relative}
.hero-art .phone{width:min(300px,78vw)}
.hero-art::after{
  content:"";position:absolute;z-index:-1;inset:-14% -6%;
  background:radial-gradient(58% 46% at 50% 46%,rgba(124,63,224,.4),transparent 70%);
  filter:blur(12px);
}

.gallery{
  display:flex;gap:clamp(18px,3vw,30px);
  overflow-x:auto;overflow-y:hidden;
  padding:6px var(--pad) 12px;margin:0 calc(var(--pad) * -1);
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.gallery::-webkit-scrollbar{display:none}
.gallery > figure{scroll-snap-align:center;flex:0 0 auto}
.gallery .phone{width:min(238px,62vw)}

.grid-feats{display:grid;gap:16px}
.card{
  background:linear-gradient(180deg,var(--card-hi),var(--card));
  border-radius:20px;padding:22px 20px 24px;
  box-shadow:var(--shadow);
}
.card p{margin-top:8px;font-size:.96rem;color:#dbe8fc}
.card-ico{
  width:46px;height:46px;border-radius:14px;margin-bottom:15px;
  display:grid;place-items:center;
  background:var(--sunk);box-shadow:var(--inset);
}
.card-ico svg{width:25px;height:25px;fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.chips{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:26px}
.chip{
  padding:9px 16px;border-radius:13px;border:0;cursor:pointer;
  background:var(--sunk);box-shadow:var(--inset);
  color:var(--ink-soft);font-size:.88rem;font-weight:800;
  transition:color .16s ease;
}
.chip:hover{color:var(--ink)}
.chip.on{
  background:linear-gradient(180deg,var(--card-hi),var(--card));
  box-shadow:var(--shadow-sm);color:var(--ink);
}

.grid-games{display:grid;grid-template-columns:repeat(auto-fill,minmax(272px,1fr));gap:10px}
.game{
  position:relative;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) 12px;
  grid-template-rows:auto auto;
  align-items:center;
  column-gap:13px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.09);
  border-radius:14px;padding:10px 14px 10px 10px;
  transition:background .14s ease,border-color .14s ease,transform .14s ease;
}
.game::after{
  content:"";grid-column:3;grid-row:1 / 3;
  width:8px;height:8px;justify-self:end;
  border-top:2px solid var(--ink-soft);border-inline-end:2px solid var(--ink-soft);
  transform:rotate(45deg);opacity:.5;
  transition:opacity .14s ease,transform .14s ease;
}
html[dir="rtl"] .game::after{transform:rotate(225deg)}
@media (hover:hover){
  .game:hover{background:rgba(255,255,255,.085);border-color:rgba(158,203,255,.34)}
  .game:hover .game-name{color:var(--accent)}
  .game:hover::after{opacity:.95;transform:rotate(45deg) translate(1px,-1px)}
  html[dir="rtl"] .game:hover::after{transform:rotate(225deg) translate(1px,-1px)}
}
.game:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.game-thumb{
  grid-column:1;grid-row:1 / 3;
  width:58px;height:58px;border-radius:12px;
  display:grid;place-items:center;overflow:hidden;
}
.game-thumb svg{width:100%;height:100%}
.game-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.game-cat{
  grid-column:2;grid-row:1;justify-self:start;
  font-size:.58rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-soft);opacity:.72;
}
.game-name{
  grid-column:2;grid-row:2;
  color:var(--ink);font-weight:800;font-size:1rem;letter-spacing:-.02em;line-height:1.25;
  overflow-wrap:anywhere;hyphens:auto;
  transition:color .14s ease;
}
.game-new{
  position:absolute;top:7px;inset-inline-start:7px;z-index:2;
  padding:2px 6px;border-radius:6px;
  background:linear-gradient(180deg,var(--gold-hi),var(--gold));
  color:var(--gold-ink);font-size:.53rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;
}
.games-foot{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px}
.games-count{font-size:.9rem;font-weight:700;opacity:.72}

.plans{display:grid;gap:18px;margin-inline:auto}
.plan{
  background:linear-gradient(180deg,var(--card-hi),var(--card));
  border-radius:22px;padding:26px 22px 28px;
  box-shadow:var(--shadow);position:relative;
}
.plan.best{
  background:linear-gradient(180deg,#8f55ee,#7c3fe0);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.26),0 var(--rise) 0 var(--btn-edge),0 calc(var(--rise) * 2) 22px rgba(4,16,44,.46);
}
.plan.plus{
  background:linear-gradient(180deg,#1d5ec2,#123f8e);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.28),0 0 0 2px var(--gold-hi),0 var(--rise) 0 #08204f,0 calc(var(--rise) * 2) 22px rgba(4,16,44,.46);
}
.plan-tag{
  position:absolute;top:16px;right:16px;border-radius:999px;padding:5px 11px;
  background:linear-gradient(180deg,var(--gold-hi),var(--gold));color:var(--gold-ink);
  font-size:.72rem;font-weight:900;letter-spacing:.02em;
  box-shadow:inset 0 1.5px 0 rgba(255,255,255,.6),0 2px 0 var(--gold-edge);
}
.plan-price{display:block;margin:6px 0 14px;color:var(--gold);font-size:1.7rem;font-weight:900;letter-spacing:-.03em}
.plan.best .plan-price,.plan.plus .plan-price{color:var(--gold-hi)}
.plan.plus h3{padding-right:96px}
.plan p{color:#e4eefc;font-size:.99rem}
.plan-note{margin-top:26px;font-size:.88rem;opacity:.76;text-align:center}

.sp-band{
  display:grid;gap:clamp(26px,4vw,40px);align-items:center;
  border-radius:26px;padding:clamp(28px,4vw,40px) clamp(22px,3vw,36px);
  background:
    radial-gradient(86% 120% at 88% 8%,rgba(245,196,81,.15),transparent 62%),
    linear-gradient(180deg,#1d5ec2,#123f8e);
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.28),
    0 0 0 2px var(--gold-hi),
    0 var(--rise) 0 #08204f,
    0 calc(var(--rise) * 2) 26px rgba(4,16,44,.48);
}
.sp-band .eyebrow{color:var(--gold-hi)}
.sp-copy p{margin-top:10px;font-size:1.02rem;color:#e8f1ff}
.sp-list{margin-top:18px;display:grid;gap:11px;list-style:none}
.sp-list li{
  position:relative;padding-inline-start:30px;
  font-size:.97rem;color:#dceafd;
}
.sp-list li::before{
  content:"";position:absolute;inset-inline-start:0;top:.36em;
  width:16px;height:16px;border-radius:50%;
  background:linear-gradient(180deg,var(--gold-hi),var(--gold));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
}
.sp-list li::after{
  content:"";position:absolute;inset-inline-start:5px;top:.66em;
  width:6px;height:3px;border:0 solid var(--gold-ink);
  border-left-width:2px;border-bottom-width:2px;
  transform:rotate(-45deg);
}
.sp-art{display:grid;justify-items:center;gap:14px}
.sp-fab{
  display:inline-flex;align-items:center;gap:11px;
  border:3px solid var(--gold-hi);
  padding:15px 28px;border-radius:999px;
  color:#fff;font-weight:900;font-size:1.12rem;letter-spacing:-.01em;
  background:linear-gradient(180deg,#a688f5,#5a34c4);
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.38),
    0 6px 0 var(--gold-edge),
    0 14px 28px rgba(4,12,30,.6);
  animation:spGlowLand 3.6s ease-in-out infinite;
}
.sp-fab svg{width:26px;height:26px;fill:var(--gold-hi);flex:none}
@keyframes spGlowLand{
  0%,100%{box-shadow:inset 0 2px 0 rgba(255,255,255,.38),0 6px 0 var(--gold-edge),0 14px 28px rgba(4,12,30,.6),0 0 24px rgba(245,196,81,.34)}
  50%{box-shadow:inset 0 2px 0 rgba(255,255,255,.38),0 6px 0 var(--gold-edge),0 14px 28px rgba(4,12,30,.6),0 0 44px rgba(255,216,117,.72)}
}
.sp-cap{font-size:.85rem;color:#bcd4f4;text-align:center;max-width:26ch}

.help-row{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:26px}

.foot{
  border-top:1px solid rgba(143,184,245,.16);
  padding:30px 0 40px;
  display:flex;flex-wrap:wrap;align-items:center;gap:14px;
  font-size:.88rem;
}
.foot-links{display:flex;flex-wrap:wrap;gap:10px;margin-inline-start:auto}
.foot-links a{display:inline-flex;align-items:center;min-height:34px;padding:0 10px;border-radius:10px;font-weight:700}
.foot-links a:hover{color:var(--ink);background:rgba(143,184,245,.14)}

@media(max-width:520px){
  .badges{flex-direction:column;align-items:stretch}
  .badge{width:100%}
  .hero .btn{width:100%;justify-content:center}
}

@media(min-width:760px){
  .sp-band{grid-template-columns:1.28fr .72fr}
  .grid-feats{grid-template-columns:repeat(2,1fr);gap:20px}
  .plans{grid-template-columns:repeat(2,1fr)}
  .plan.plus{grid-column:1 / -1}
  .badges{gap:14px}
}

@media(min-width:1000px){
  .top-nav{display:flex}
  .hero-in{grid-template-columns:1.06fr .94fr}
  .grid-feats{grid-template-columns:repeat(3,1fr)}
  .gallery{
    display:grid;grid-template-columns:repeat(5,1fr);
    overflow:visible;margin:0;padding:6px 0 0;
  }
  .gallery .phone{width:100%}
  .plans{grid-template-columns:repeat(3,1fr);max-width:1000px}
  .plan.plus{grid-column:auto}
  .plan.plus h3{padding-right:0}
  .plan-tag{position:static;display:inline-block;margin-bottom:10px}
}

@media(prefers-reduced-motion:reduce){
  .sp-fab{animation:none}
  html{scroll-behavior:auto}
  *{transition-duration:.001s !important;animation-duration:.001s !important}
}
