:root{
  --bg:#0b0820;--bg2:#14083a;--card:#171233;--card2:#1e1745;--line:#2c2557;
  --text:#f3f1ff;--muted:#a9a3d1;--cyan:#22d3ee;--violet:#8b5cf6;--pink:#f472b6;
  --grad:linear-gradient(120deg,#22d3ee,#8b5cf6 55%,#f472b6);
}
:root[data-theme="light"]{
  --bg:#faf8ff;--bg2:#e8e2ff;--card:#ffffff;--card2:#f1edff;--line:#ddd6ff;
  --text:#1b1440;--muted:#5d5690;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text);background:transparent;min-height:100vh;overflow-x:hidden}
html{background:var(--bg)}
/* живой фон: градиент и неоновые линии как на главном экране приложения */
#fx{position:fixed;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(1200px 600px at 80% -10%,rgba(139,92,246,.28),transparent 60%),
             radial-gradient(900px 500px at -10% 20%,rgba(34,211,238,.18),transparent 60%),
             radial-gradient(800px 500px at 60% 110%,rgba(244,114,182,.14),transparent 60%),
             linear-gradient(180deg,var(--bg),var(--bg2))}
#fx canvas{position:absolute;inset:0;width:100%;height:100%}
header.top,main,footer{position:relative;z-index:1}
a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}
:root[data-theme="light"] a{color:#6d3df0}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
header.top{position:sticky;top:0;z-index:5;backdrop-filter:blur(14px);background:color-mix(in srgb,var(--bg) 72%,transparent);border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;gap:14px;height:60px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--text)}
.brand:hover{text-decoration:none}
.brand img{width:32px;height:32px;border-radius:9px}
nav{margin-left:auto;display:flex;gap:18px;align-items:center}
nav a{color:var(--muted);font-size:15px}
nav a:hover{color:var(--text);text-decoration:none}
.tools{display:flex;gap:6px}
.chip{border:1px solid var(--line);background:var(--card);color:var(--muted);border-radius:999px;padding:5px 12px;font:inherit;font-size:13px;cursor:pointer}
.chip[aria-pressed="true"]{background:var(--grad);color:#fff;border-color:transparent}
.hero{padding:72px 0 56px;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
h1{font-size:clamp(34px,6vw,58px);line-height:1.05;margin:0 0 18px;letter-spacing:-.02em}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:19px;color:var(--muted);max-width:34em;margin:0 0 28px}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:14px;font-weight:600;font-size:16px;border:1px solid var(--line);color:var(--text);background:var(--card)}
.btn:hover{text-decoration:none;filter:brightness(1.08)}
.btn.primary{background:var(--grad);border-color:transparent;color:#fff;box-shadow:0 10px 30px rgba(139,92,246,.35)}
.note{margin-top:14px;font-size:13px;color:var(--muted)}
.phone{justify-self:center;width:250px;aspect-ratio:9/18.5;border-radius:36px;border:2px solid var(--line);background:linear-gradient(160deg,var(--card2),var(--card));padding:18px 14px;box-shadow:0 30px 80px rgba(0,0,0,.35);position:relative;overflow:hidden}
.phone .t{font-weight:800;font-size:22px;line-height:1.05;margin:8px 0 12px}
.phone .c{border-radius:18px;padding:12px 14px;margin-bottom:10px;color:#fff;font-weight:600;font-size:14px}
.phone .c small{display:block;font-weight:400;opacity:.9;font-size:11px}
.c1{background:linear-gradient(120deg,#8b5cf6,#f472b6)}
.c2{background:linear-gradient(120deg,#22d3ee,#8b5cf6)}
.c3{background:linear-gradient(120deg,#f472b6,#8b5cf6)}
.wave{position:absolute;inset:auto -20% 6% -20%;height:90px;opacity:.55}
section{padding:46px 0}
h2{font-size:clamp(26px,4vw,36px);margin:0 0 8px;letter-spacing:-.01em}
.sub{color:var(--muted);margin:0 0 28px;max-width:40em}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px}
.card h3{margin:0 0 6px;font-size:18px}
.card p{margin:0;color:var(--muted);font-size:15px}
.ico{width:42px;height:42px;border-radius:13px;background:var(--grad);display:grid;place-items:center;font-size:21px;margin-bottom:12px;color:#fff}
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.steps .card{position:relative;padding-top:54px}
.steps .card::before{counter-increment:s;content:counter(s);position:absolute;top:16px;left:20px;width:28px;height:28px;border-radius:50%;background:var(--grad);color:#fff;font-weight:700;display:grid;place-items:center}
.pro{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.plan.hl{border:1px solid transparent;background:linear-gradient(var(--card),var(--card)) padding-box,var(--grad) border-box}
.plan ul{margin:12px 0 0;padding-left:20px;color:var(--muted);font-size:15px}
.plan li{margin:4px 0}
details{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 18px;margin-bottom:10px}
summary{cursor:pointer;font-weight:600}
details p{margin:10px 0 0;color:var(--muted)}
footer{border-top:1px solid var(--line);padding:30px 0 50px;color:var(--muted);font-size:14px}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between}
/* язык */
html[lang="ru"] [data-l="en"],html[lang="en"] [data-l="ru"]{display:none!important}
/* страница политики */
.doc{max-width:760px;padding:50px 0 30px}
.doc h1{font-size:clamp(28px,5vw,42px)}
.doc h2{font-size:22px;margin:34px 0 8px}
.doc p,.doc li{color:var(--muted)}
.doc li{margin:4px 0}
.doc .upd{font-size:14px}
@media(max-width:820px){.hero{grid-template-columns:1fr;padding-top:40px}.phone{width:220px}.pro{grid-template-columns:1fr}nav a.hide{display:none}}

/* ---------- оживление ---------- */
.card,details{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:color-mix(in srgb,var(--card) 78%,transparent);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.grid .card:hover,.steps .card:hover,.plan:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--violet) 60%,var(--line));box-shadow:0 18px 40px rgba(139,92,246,.22)}
.ico{box-shadow:0 8px 22px rgba(139,92,246,.45);transition:transform .3s}
.card:hover .ico{transform:rotate(-6deg) scale(1.08)}
.grad{background-size:220% 100%;animation:shift 9s ease-in-out infinite alternate}
@keyframes shift{from{background-position:0 0}to{background-position:100% 0}}
.btn.primary{position:relative;overflow:hidden}
.btn.primary::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:sheen 4.5s ease-in-out infinite}
@keyframes sheen{0%,60%{left:-60%}100%{left:130%}}
/* появление при прокрутке */
html.js .rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
html.js .rv.in{opacity:1;transform:none}
/* строка с цифрами */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:0 0 20px}
.stat{padding:16px 18px;border-radius:18px;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 70%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.stat b{display:block;font-size:26px;line-height:1.1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat span{font-size:13px;color:var(--muted)}
/* демо-телефон с водяным знаком */
.demo{justify-self:center;display:flex;flex-direction:column;align-items:center;gap:16px;perspective:900px}
.device{width:260px;aspect-ratio:9/18;border-radius:38px;padding:10px;background:linear-gradient(160deg,#2a2160,#120d33);border:2px solid var(--line);box-shadow:0 40px 90px rgba(80,40,200,.45),0 0 0 1px rgba(255,255,255,.05) inset;transform-style:preserve-3d;transition:transform .15s ease-out;animation:bob 6s ease-in-out infinite}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -10px}}
.screen{position:relative;width:100%;height:100%;border-radius:28px;overflow:hidden;background:#111}
.screen svg.scene{position:absolute;inset:0;width:100%;height:100%}
.wm{position:absolute;inset:0;overflow:hidden;color:#fff;font-weight:700;letter-spacing:.02em;text-shadow:0 1px 6px rgba(0,0,0,.45);pointer-events:none}
.wm .one,.wm .logo,.wm .gridbox,.wm .float{position:absolute;opacity:0;transition:opacity .6s ease}
.wm .one{left:50%;bottom:9%;transform:translateX(-50%);font-size:15px;white-space:nowrap}
.wm .gridbox{left:-30%;top:-30%;width:160%;height:160%;display:grid;grid-template-columns:repeat(4,1fr);align-content:space-around;justify-items:center;transform:rotate(-28deg);font-size:12px;white-space:nowrap}
.wm .float{left:0;top:0;font-size:15px;white-space:nowrap;animation:roam 9s ease-in-out infinite alternate}
@keyframes roam{0%{transform:translate(18px,40px)}25%{transform:translate(70px,230px)}50%{transform:translate(120px,90px)}75%{transform:translate(30px,150px)}100%{transform:translate(110px,300px)}}
.wm[data-mode="text"] .one{opacity:.92}
.wm[data-mode="grid"] .gridbox{opacity:.5}
.wm[data-mode="float"] .float{opacity:.95}
.modes{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.modes .chip{font-size:13px}
.notch{position:absolute;top:8px;left:50%;width:70px;height:16px;border-radius:10px;background:#0b0820;transform:translateX(-50%);z-index:2}
@media (prefers-reduced-motion:reduce){.device,.grad,.btn.primary::after{animation:none}.wm .float{animation:none;transform:translate(40px,120px)}html.js .rv{opacity:1;transform:none;transition:none}}
@media(max-width:820px){.device{width:220px}}

/* оживление */
.cursor-glow{position:fixed;left:0;top:0;width:400px;height:400px;border-radius:50%;pointer-events:none;z-index:0;opacity:0;transition:opacity .4s;
  background:radial-gradient(circle,color-mix(in srgb,var(--violet) 22%,transparent),transparent 65%)}
.hero{position:relative}
.pt{position:absolute;border-radius:50%;pointer-events:none;background:var(--violet);opacity:0;animation:rise linear infinite;box-shadow:0 0 12px var(--violet)}
@keyframes rise{0%{transform:translateY(0);opacity:0}15%{opacity:.7}100%{transform:translateY(-260px);opacity:0}}
.btn{transition:transform .2s,box-shadow .2s,filter .2s}
.btn:hover{transform:translateY(-2px) scale(1.03)}
.grid .card,.steps .card,.plan{transition:transform .15s,border-color .25s,box-shadow .25s}
@media (prefers-reduced-motion:reduce){.pt,.cursor-glow{display:none}}

.wm .logo{right:12%;bottom:11%;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5));transform:scale(.8)}
.wm[data-mode="logo"] .logo{opacity:.95;transform:scale(1);transition:opacity .6s ease,transform .6s ease}
