:root{
  --bg:#07071A; --surface:rgba(255,255,255,.03); --line:rgba(255,255,255,.08);
  --text:#EEF0FF; --muted:#A3A8D0; --soft:#B4B8DC;
  --cyan:#22D3EE; --blue:#3B6BFF; --violet:#7C5CFF; --magenta:#E040FB; --green:#6EF0A8;
  --accent:#7C5CFF;
  --display:'Unbounded',system-ui,sans-serif; --body:'Manrope',system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);overflow-x:hidden}
a{color:#8FB4FF}a:hover{color:#C9D8FF}
::selection{background:var(--violet);color:#fff}
img,svg{display:block}
button{font:inherit}

@keyframes eq{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes pulse{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.25}}

.glow{position:absolute;border-radius:50%;pointer-events:none;z-index:0}
.glow--a{top:-260px;left:-200px;width:720px;height:720px;background:radial-gradient(circle,rgba(59,107,255,.28),transparent 65%);animation:pulse 9s ease-in-out infinite}
.glow--b{top:120px;right:-240px;width:760px;height:760px;background:radial-gradient(circle,rgba(224,64,251,.18),transparent 65%);animation:pulse 11s ease-in-out infinite}

.wrap{max-width:1200px;margin:0 auto;padding:0 24px;position:relative;z-index:1}
.section{padding:112px 0 40px}
.eyebrow{font-size:14px;font-weight:700;letter-spacing:.14em;color:var(--cyan)}
.h2{margin:14px 0 12px;font-family:var(--display);font-weight:700;font-size:clamp(30px,4vw,52px);line-height:1.1}
.lead{margin:0 0 44px;font-size:18px;color:var(--muted)}
.grad-text{background:linear-gradient(90deg,var(--cyan),#6D6BFF 50%,var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;border:none;border-radius:999px;cursor:pointer;text-decoration:none;font-weight:700;color:#fff;background:linear-gradient(90deg,var(--blue),var(--accent));transition:transform .2s,box-shadow .3s,filter .2s}
.btn:hover{color:#fff;transform:translateY(-2px);filter:brightness(1.12);box-shadow:0 14px 40px -10px rgba(124,92,255,.8)}
.btn--lg{font-size:17px;padding:18px 30px}
.btn--ghost{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.18);color:var(--text);font-weight:600}
.card{border-radius:24px;border:1px solid var(--line);background:var(--surface);transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s}
.card:hover{transform:translateY(-6px);border-color:rgba(124,92,255,.55);box-shadow:0 24px 60px -20px rgba(124,92,255,.45)}
.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}

/* nav */
.nav{position:sticky;top:0;z-index:50;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:rgba(7,7,26,.72);border-bottom:1px solid rgba(255,255,255,.07)}
.nav__in{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:14px 24px}
.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}
.brand span{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.06em}
.nav__links{display:flex;gap:28px;flex-wrap:wrap;font-size:15px;font-weight:500}
.nav__links a,.foot__links a{color:#C3C7E8;text-decoration:none;transition:color .2s}
.nav__links a:hover,.foot__links a:hover{color:#fff}
.nav .btn{font-size:15px;padding:12px 22px}

/* hero */
.hero{display:flex;flex-wrap:wrap;align-items:center;gap:56px;padding:88px 24px 72px}
.hero__text{flex:1 1 520px;min-width:0;display:flex;flex-direction:column;gap:28px}
.badge{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border-radius:999px;border:1px solid rgba(34,211,238,.35);background:rgba(34,211,238,.08);font-size:14px;font-weight:600;color:#8EEBFA}
.dot{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px var(--cyan);animation:blink 1.6s infinite}
.hero h1{margin:0;font-family:var(--display);font-weight:800;font-size:clamp(40px,6vw,80px);line-height:1.02;letter-spacing:-.02em}
.hero p{margin:0;font-size:clamp(17px,1.6vw,20px);line-height:1.6;color:var(--soft);max-width:560px}
.row{display:flex;flex-wrap:wrap;gap:14px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-top:8px}
.stat{padding:18px;border-radius:18px;border:1px solid var(--line);background:var(--surface)}
.stat b{display:block;font-family:var(--display);font-size:26px}
.stat span{display:block;font-size:14px;color:var(--muted);margin-top:6px;line-height:1.45}

.device-wrap{flex:1 1 400px;min-width:0;display:flex;justify-content:center;position:relative}
.orbit{position:absolute;inset:10% 5%;border-radius:50%;border:1px dashed rgba(124,92,255,.35);animation:spin 40s linear infinite}
.device{position:relative;width:100%;max-width:440px;border-radius:32px;padding:28px;background:linear-gradient(160deg,rgba(30,30,70,.9),rgba(12,12,34,.95));border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 120px -30px rgba(91,108,255,.55),inset 0 1px 0 rgba(255,255,255,.08);animation:float 7s ease-in-out infinite}
.device__top{display:flex;justify-content:space-between;align-items:center}
.live{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--green);letter-spacing:.08em}
.live i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);animation:blink 1.2s infinite}
.clock{font-family:var(--display);font-size:22px;font-weight:600;font-variant-numeric:tabular-nums}
.eq{height:150px;margin:28px 0 22px;display:flex;align-items:center;justify-content:center;gap:8px}
.eq span{width:10px;border-radius:6px;animation:eq 1.1s ease-in-out infinite}
.label{font-size:13px;color:var(--muted);letter-spacing:.08em;margin-bottom:12px}
.sched{display:flex;flex-direction:column;gap:8px}
.sched div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);color:var(--muted)}
.sched div.on{background:linear-gradient(90deg,rgba(59,107,255,.35),rgba(124,92,255,.25));border-color:rgba(124,92,255,.6);color:#fff}
.sched b{font-weight:700}.sched small{font-size:14px;opacity:.8}
.chips{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted)}
.chips span{padding:6px 10px;border-radius:8px;background:rgba(255,255,255,.05)}

/* marquee */
.marquee{border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.02);overflow:hidden;padding:20px 0;position:relative;z-index:1}
.marquee__track{display:flex;width:max-content;gap:48px;animation:marquee 32s linear infinite;font-family:var(--display);font-size:18px;font-weight:500;color:#C3C7E8;white-space:nowrap}

/* pains */
.pains{display:flex;flex-wrap:wrap;gap:24px;align-items:stretch}
.pains__list{flex:1 1 380px;min-width:0;display:flex;flex-direction:column;gap:10px}
.pain{display:flex;gap:16px;align-items:flex-start;width:100%;min-height:64px;padding:18px 20px;border-radius:18px;cursor:pointer;color:var(--text);text-align:left;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.07);transition:all .25s}
.pain:hover{border-color:rgba(124,92,255,.4)}
.pain.on{background:rgba(124,92,255,.16);border-color:rgba(124,92,255,.65);box-shadow:0 12px 40px -18px rgba(124,92,255,.8)}
.pain__num{flex:none;font-family:var(--display);font-size:14px;font-weight:700;padding-top:3px;color:#6B6F96}
.pain.on .pain__num{color:#F07BFF}
.pain__t{display:block;font-weight:700;font-size:17px}
.pain__s{display:block;font-size:14px;color:var(--muted);line-height:1.45;margin-top:4px}
.fix{flex:1 1 440px;min-width:0;border-radius:28px;padding:40px;background:linear-gradient(160deg,rgba(91,108,255,.18),rgba(224,64,251,.08) 60%,rgba(255,255,255,.02));border:1px solid rgba(124,92,255,.35);display:flex;flex-direction:column;gap:20px;transition:opacity .25s}
.fix.fade{opacity:.2}
.fix__k{font-size:13px;font-weight:700;letter-spacing:.14em}
.fix__title{font-family:var(--display);font-size:clamp(22px,2.4vw,30px);font-weight:700;line-height:1.2}
.fix p{margin:0;font-size:17px;line-height:1.6;color:#C3C7E8}
.fix p.fix__sol{font-size:18px;color:var(--text)}
.fix hr{border:0;height:1px;background:linear-gradient(90deg,rgba(124,92,255,.6),transparent);margin:0}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.tags span{padding:8px 14px;border-radius:999px;background:rgba(110,240,168,.1);border:1px solid rgba(110,240,168,.3);color:#9DF5C4;font-size:14px;font-weight:600}

/* risks */
.risk{padding:36px 32px}
.risk b{display:block;font-family:var(--display);font-size:clamp(30px,3.4vw,44px);font-weight:800;font-variant-numeric:tabular-nums}
.risk p{margin:14px 0 0;font-size:16px;line-height:1.55;color:var(--soft)}
.risk--hi{border-color:rgba(124,92,255,.45);background:linear-gradient(160deg,rgba(91,108,255,.2),rgba(124,92,255,.06))}

/* steps */
.step{padding:32px 28px;display:flex;flex-direction:column;gap:14px}
.step__n{font-family:var(--display);font-size:56px;font-weight:800;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--c)}
.step h3,.doc h3{margin:0;font-size:21px;font-weight:700}
.step p,.doc p{margin:0;font-size:15px;line-height:1.6;color:var(--muted)}

/* sound */
.sound{position:relative;border-radius:36px;padding:clamp(28px,5vw,64px);background:radial-gradient(120% 80% at 50% 0%,rgba(91,108,255,.28),rgba(10,10,30,.95) 60%);border:1px solid rgba(124,92,255,.35);overflow:hidden}
.center{text-align:center;max-width:760px;margin:0 auto}
.center p{margin:0;font-size:17px;line-height:1.6;color:var(--soft)}
.moods{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:40px 0 8px}
.mood{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:130px;min-height:60px;padding:12px 22px;border-radius:18px;cursor:pointer;font-size:16px;color:#fff;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);transition:all .25s}
.mood.on{background:linear-gradient(135deg,rgba(59,107,255,.55),rgba(224,64,251,.35));border-color:rgba(255,255,255,.35);box-shadow:0 10px 30px -10px rgba(124,92,255,.9)}
.mood b{font-weight:700}.mood small{font-size:13px;opacity:.75}
.viz{display:flex;align-items:flex-end;justify-content:center;gap:5px;height:200px;margin:36px auto 30px;max-width:760px}
.viz span{flex:1 1 0;max-width:16px;border-radius:8px;transform-origin:bottom}
.viz.idle span{opacity:.55;animation:eq 1.4s ease-in-out infinite}
.viz.live span{animation:none;transition:height .08s linear}
.player{display:flex;flex-direction:column;align-items:center;gap:14px}
.play{width:88px;height:88px;border-radius:50%;border:none;cursor:pointer;color:#fff;background:linear-gradient(135deg,var(--blue),var(--accent));box-shadow:0 0 0 10px rgba(124,92,255,.15),0 20px 60px -10px rgba(124,92,255,.9);display:flex;align-items:center;justify-content:center;transition:transform .2s}
.play:hover{transform:scale(1.06)}
.now{font-family:var(--display);font-size:18px;font-weight:600;text-align:center}
.note{font-size:13px;color:var(--muted);text-align:center;max-width:520px;line-height:1.5}

/* price */
.price{display:flex;flex-wrap:wrap;gap:20px;align-items:stretch}
.price__main{flex:1 1 460px;min-width:0;border-radius:32px;padding:3px;background:linear-gradient(135deg,var(--cyan),#5B6CFF 45%,var(--magenta))}
.price__in{height:100%;border-radius:29px;padding:44px 40px;background:#0C0C24;display:flex;flex-direction:column;gap:24px}
.price__num{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.price__num b{font-family:var(--display);font-size:clamp(56px,7vw,88px);font-weight:800;line-height:1}
.price__num span{font-size:17px;color:var(--muted)}
.checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.checks li{display:flex;gap:14px;align-items:flex-start;font-size:16px;line-height:1.5}
.checks li::before{content:"✓";flex:none;width:26px;height:26px;border-radius:50%;background:rgba(110,240,168,.15);color:var(--green);display:flex;align-items:center;justify-content:center;font-size:14px}
.small{margin:0;font-size:14px;color:var(--muted);line-height:1.5}
.price__side{flex:1 1 340px;min-width:0;display:flex;flex-direction:column;gap:20px}
.side{flex:1;padding:32px;border-radius:28px;display:flex;flex-direction:column;gap:12px}
.side h3{margin:0;font-family:var(--display);font-size:22px;font-weight:700}
.side p{margin:0;font-size:15px;line-height:1.6;color:var(--soft)}
.soon{padding:5px 12px;border-radius:999px;background:rgba(255,184,107,.15);color:#FFC98F;font-size:12px;font-weight:700;letter-spacing:.08em}

/* docs */
.doc{padding:32px;display:flex;flex-direction:column;gap:16px}
.doc__icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center}
.callout{margin-top:20px;padding:24px 28px;border-radius:20px;border:1px dashed rgba(124,92,255,.45);background:rgba(124,92,255,.06);font-size:16px;line-height:1.6;color:#C3C7E8}

/* faq */
.faq{max-width:920px}
.faq__list{display:flex;flex-direction:column;gap:12px}
.qa{border-radius:20px;background:var(--surface);border:1px solid var(--line);transition:all .25s}
.qa.open{background:rgba(124,92,255,.1);border-color:rgba(124,92,255,.5)}
.qa button{width:100%;min-height:64px;padding:20px 24px;background:none;border:none;color:var(--text);font-size:18px;font-weight:700;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px}
.qa__icon{flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:400;background:rgba(255,255,255,.08);color:#C3C7E8;transition:transform .3s,background .3s}
.qa.open .qa__icon{transform:rotate(45deg);background:var(--accent);color:#fff}
.qa__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.qa.open .qa__a{grid-template-rows:1fr}
.qa__a>div{overflow:hidden}
.qa__a p{margin:0;padding:0 24px 24px;font-size:16px;line-height:1.65;color:var(--soft)}

/* form */
.start{display:flex;flex-wrap:wrap;gap:48px;border-radius:36px;padding:clamp(28px,5vw,56px);background:linear-gradient(160deg,rgba(30,30,70,.85),rgba(12,12,34,.95));border:1px solid rgba(255,255,255,.1)}
.start__text{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:18px}
.start__text .h2{margin:0}
.start__text p{margin:0;font-size:15px;line-height:1.6;color:var(--muted)}
.form{flex:1 1 460px;min-width:0;display:flex;flex-direction:column;gap:16px}
.form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.field{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:#C3C7E8}
.field input{min-height:52px;padding:0 16px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#fff;font:inherit;font-size:16px;transition:border-color .2s,box-shadow .2s}
.field input:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 4px rgba(124,92,255,.25)}
.pills{display:flex;flex-wrap:wrap;gap:10px}
.pill{min-height:48px;padding:10px 16px;border-radius:14px;cursor:pointer;font-size:14px;font-weight:600;color:#fff;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14)}
.pill.on{background:rgba(124,92,255,.25);border-color:rgba(124,92,255,.8)}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;color:var(--muted);cursor:pointer}
.consent input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--violet);flex:none}
.form .btn{min-height:60px;font-size:17px}

/* footer */
.foot{border-top:1px solid rgba(255,255,255,.07);position:relative;z-index:1}
.foot__in{display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between;align-items:flex-start;padding:48px 24px}
.foot__brand{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:14px}
.foot__brand p{margin:0;font-size:13px;line-height:1.6;color:var(--muted);max-width:520px}
.tagline{font-size:12px;letter-spacing:.2em;color:var(--muted)}
.foot__links{display:flex;flex-wrap:wrap;gap:24px;font-size:15px}
.copy{padding:0 24px 32px;font-size:13px;color:#8A8FB8}

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

@media (max-width:720px){
  .nav__links{display:none}
  .hero{padding-top:48px;gap:40px}
  .fix,.price__in{padding:28px 24px}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}


/* Листание слов в заголовке: «бара → ресторана → спортзала…».
   Слова лежат друг на друге, видно только активное — так строка не прыгает. */
.rotator { position: relative; display: inline-block; min-width: 6.2em; }
.rotator .word {
  position: absolute; left: 0; top: 0; opacity: 0;
  transform: translateY(0.35em);
  transition: opacity .35s ease, transform .35s cubic-bezier(.2, .7, .2, 1);
  background: linear-gradient(90deg, #3DD6F5, #8B8BFF, #D946EF, #8B8BFF, #3DD6F5);
  background-size: 300% 100%;
  -webkit-background-clip: text; background-clip: text; color: transparent;
  animation: zvShift 7s linear infinite;
}
.rotator .word.on { position: relative; opacity: 1; transform: none; }
/* Небольшой отступ, чтобы хвост фразы не прилипал к запятой. */
.rotator { padding-right: .18em; }
@keyframes zvShift { 0% { background-position: 0% 50% } 100% { background-position: 300% 50% } }
@media (prefers-reduced-motion: reduce) {
  .rotator .word { animation: none; transition: none; }
}
