/* IMPULORA — лендинг */

.scroll-pulse{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;pointer-events:none}
.scroll-pulse i{display:block;height:100%;width:100%;transform-origin:left;transform:scaleX(var(--p,0));background:linear-gradient(90deg,var(--violet),var(--lime));box-shadow:0 0 12px var(--lime)}

/* ── Плитка платформы ── */
.ptile{width:var(--s);height:var(--s);flex:none;border-radius:calc(var(--s) * .3);display:grid;place-items:center;box-shadow:inset 0 0 0 1px #ffffff1f,0 10px 30px -10px #0008}
.ptile svg{filter:drop-shadow(0 1px 1px #0003)}

/* ── HERO ── */
.hero{position:relative;overflow:hidden;padding:84px 0 110px;min-height:calc(100vh - 76px);display:flex;align-items:center}
.pulse-field{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.hero-fade{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(60% 70% at 72% 45%,transparent 0,#07060d00 40%,#07060dcc 85%),linear-gradient(180deg,transparent 70%,var(--bg))}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;gap:40px;align-items:center}
.kinetic{font-size:clamp(34px,4.6vw,68px);line-height:1.06;letter-spacing:-.04em;margin:26px 0 26px;font-weight:800}
.kinetic .line{display:block;overflow:hidden;padding-bottom:.08em;white-space:nowrap}
.kinetic .w{display:inline-block;transform:translateY(105%);animation:rise 1s var(--ease) forwards}
.kinetic .line:nth-child(1) .w:nth-child(1){animation-delay:.05s}.kinetic .line:nth-child(1) .w:nth-child(2){animation-delay:.12s}
.kinetic .line:nth-child(2) .w:nth-child(1){animation-delay:.22s}.kinetic .line:nth-child(2) .w:nth-child(2){animation-delay:.29s}
.kinetic .line:nth-child(3) .w:nth-child(1){animation-delay:.42s}.kinetic .line:nth-child(3) .w:nth-child(2){animation-delay:.5s}
@keyframes rise{to{transform:none}}
.kinetic .accent{color:var(--lime)}
.kinetic .spark{position:relative;background:linear-gradient(100deg,var(--lime) 0%,#f2ffd6 25%,var(--lime) 45%,#b8f05a 70%,var(--lime) 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:rise 1s var(--ease) .5s forwards,shimmer 5s linear 1.6s infinite}
.kinetic .spark:after{content:"✦";position:absolute;right:-.55em;top:-.15em;font-size:.38em;color:var(--lime);animation:twinkle 2.4s ease-in-out infinite}
@keyframes shimmer{to{background-position:-250% 0}}
@keyframes twinkle{0%,100%{opacity:.3;transform:scale(.7) rotate(0)}50%{opacity:1;transform:scale(1.1) rotate(90deg)}}
.lead{font-size:17px;color:#b7b0c8;max-width:520px;line-height:1.75}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.hero-actions [data-icon] svg,.sync-actions [data-icon] svg{width:18px;height:18px}
.hero-stats{display:flex;gap:0;margin:52px 0 0}
.hero-stats div{padding:0 28px;border-left:1px solid #ffffff1a}
.hero-stats div:first-child{padding-left:0;border-left:0}
.hero-stats dt{font:700 26px var(--display);letter-spacing:-.03em}
.hero-stats dd{margin:6px 0 0;font-size:12px;color:var(--dim);font-weight:700}

.hero-visual{position:relative;display:grid;place-items:center;min-height:520px}
.orbit{position:relative;width:min(520px,100%);aspect-ratio:1}
.ring{position:absolute;border-radius:50%;inset:0;border:1px solid #ffffff14}
.ring.r2{inset:13%;border-style:dashed;border-color:#ffffff1c;animation:rot 60s linear infinite}
.ring.r3{inset:27%;border-color:#9f76ff33;box-shadow:0 0 80px -10px #9f76ff40 inset}
@keyframes rot{to{transform:rotate(360deg)}}
.core{position:absolute;inset:32%;display:grid;place-items:center}
.core img{width:100%;height:100%;border-radius:32%;transform:rotate(-8deg);box-shadow:0 30px 90px -20px #7344ffaa,0 0 0 1px #ffffff1a;animation:breathe 4.6s ease-in-out infinite}
.core-glow{position:absolute;inset:-30%;border-radius:50%;background:radial-gradient(circle,#8a5cff55,transparent 62%);filter:blur(8px);animation:breathe 4.6s ease-in-out infinite}
@keyframes breathe{0%,100%{transform:rotate(-8deg) scale(1)}50%{transform:rotate(-6deg) scale(1.04)}}
.orbit-track{position:absolute;inset:6.5%;border-radius:50%;animation:rot 38s linear infinite}
.orbit-track .sat{position:absolute;left:50%;top:50%;margin:-22px;transform:rotate(var(--a)) translate(calc(var(--r) * 1px)) rotate(calc(-1 * var(--a)))}
.orbit-track .sat > span{display:block;animation:rot 38s linear infinite reverse}
.float-card{position:absolute;z-index:3;padding:14px 16px;border-radius:18px;background:#16121fe6;border:1px solid #ffffff1c;backdrop-filter:blur(14px);box-shadow:var(--shadow);animation:float 6s ease-in-out infinite}
.float-card small{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#a99fc0}
.float-card strong{display:block;font:700 22px var(--display);letter-spacing:-.03em;margin-top:6px}
.float-card em{display:flex;align-items:center;gap:7px;font-style:normal;font-size:11px;color:var(--lime);margin-top:6px;font-weight:700}
.float-card .up{color:var(--lime)}
.fc-1{right:-2%;top:9%}
.fc-2{left:-4%;bottom:20%;animation-delay:-2s}
.fc-3{right:4%;bottom:5%;display:flex;gap:12px;align-items:center;animation-delay:-4s}
.fc-3 strong{font-size:17px}
.fc-ico{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--pink),#ff8fc7);color:#fff;font-size:18px}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

@media (max-width:980px){
  .hero{min-height:0;padding:56px 0 70px}
  .hero-grid{grid-template-columns:1fr}
  .hero-visual{min-height:0;margin-top:20px;order:2}
  .orbit{width:min(420px,92%)}
}
@media (max-width:560px){
  .hero-stats div{padding:0 16px}
  .hero-stats dt{font-size:20px}
  .float-card{padding:10px 12px}.float-card strong{font-size:17px}
  .fc-2{left:-2%}
  .hero-actions .btn{flex:1 1 auto}
}

/* ── Бегущая строка ── */
.ticker{border-block:1px solid #ffffff12;background:#0b0914;overflow:hidden;padding:18px 0;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.ticker-track{display:flex;gap:44px;width:max-content;animation:marquee 40s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.ticker-item{display:flex;align-items:center;gap:12px;font:600 15px var(--display);letter-spacing:-.02em;color:#d9d2ea;white-space:nowrap}
.ticker-item .ptile{--s:26px}
.ticker-item b{color:var(--lime);font-family:var(--body);font-weight:800;font-size:13px}
@keyframes marquee{to{transform:translateX(-50%)}}

/* ── Платформы ── */
.platform-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.platform-card{padding:20px 18px 18px;display:flex;flex-direction:column;gap:22px;cursor:pointer;transition:transform .45s var(--ease),border-color .3s;transform-style:preserve-3d;border:1px solid var(--stroke);text-align:left;color:inherit;font:inherit}
.platform-card:hover{border-color:#4a4166}
.platform-card .pc-top{display:flex;justify-content:space-between;align-items:flex-start}
.platform-card .pc-arrow{width:30px;height:30px;border-radius:50%;border:1px solid var(--stroke2);display:grid;place-items:center;color:var(--muted);transition:.3s}
.platform-card:hover .pc-arrow{background:var(--lime);color:#120f1a;border-color:var(--lime);transform:rotate(45deg)}
.platform-card .pc-arrow svg{width:14px;height:14px}
.platform-card h3{font-size:17px}
.platform-card small{display:block;color:var(--dim);font-size:12px;font-weight:700;margin-top:6px}
@media (max-width:1100px){.platform-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.platform-grid{grid-template-columns:repeat(2,1fr);gap:10px}.platform-card{padding:16px 14px}}

/* ── Каталог ── */
.catalog-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.catalog-tabs .chip{padding:10px 16px}
.catalog-tabs .chip .ptile{--s:22px}
.catalog-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.catalog-layout{display:grid;grid-template-columns:1fr 380px;gap:22px;align-items:start}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.service-card{padding:20px;display:flex;flex-direction:column;gap:12px;cursor:pointer;transition:border-color .25s,transform .35s var(--ease)}
.service-card:hover{border-color:#4d4470;transform:translateY(-3px)}
.service-card.selected{border-color:var(--lime);box-shadow:0 0 0 1px var(--lime),0 20px 60px -30px #c9ff7266}
.service-card h4{font:700 15px var(--body);letter-spacing:0;line-height:1.35}
.service-card p{color:var(--muted);font-size:13px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.service-card .sc-foot{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;gap:12px}
.service-card .price{font:700 22px var(--display);letter-spacing:-.03em}
.service-card .price small{display:block;font:700 11px var(--body);color:var(--dim);letter-spacing:0;margin-bottom:3px}
.service-card .lim{font-size:11px;color:var(--dim);font-weight:700;text-align:right}
.empty-state{grid-column:1/-1;padding:44px 24px;text-align:center;color:var(--muted);border:1px dashed var(--stroke2);border-radius:var(--radius)}
.order-panel{position:sticky;top:96px;padding:24px}
.op-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.op-head h3{font-size:20px}
.op-bolt{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#c9ff7214;animation:float 3s ease-in-out infinite}
.op-empty{color:var(--muted);font-size:14px;padding:30px 4px;text-align:center;border:1px dashed var(--stroke2);border-radius:14px}
.op-service{display:flex;gap:12px;align-items:center;padding:12px;border-radius:14px;background:#0d0b15;border:1px solid var(--stroke);margin-bottom:16px}
.op-service .ptile{--s:36px}
.op-service b{display:block;font-size:14px;line-height:1.3}
.op-service small{color:var(--dim);font-size:12px}
.range{width:100%;margin-top:6px;accent-color:var(--lime)}
.seg{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#0d0b15;border:1px solid var(--stroke2);border-radius:13px;padding:4px}
.seg button{border:0;background:transparent;border-radius:10px;padding:10px;font-weight:800;font-size:13px;color:#cfc8de}
.seg button.active{background:var(--surface3);color:#fff;box-shadow:inset 0 0 0 1px var(--stroke2)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.op-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--stroke);padding:18px 0;margin-top:8px}
.op-total span{color:var(--muted);font-size:14px;font-weight:700}
.op-total strong{font:800 32px var(--display);color:var(--lime);letter-spacing:-.04em}
.op-note{font-size:12px;color:var(--dim);text-align:center;margin-top:12px}
@media (max-width:1060px){.catalog-layout{grid-template-columns:1fr}.order-panel{position:relative;top:0}}
@media (max-width:620px){.service-grid{grid-template-columns:1fr}}

/* ── Шаги ── */
.steps{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.steps-line{position:absolute;left:0;right:0;top:-34px;width:100%;height:40px;fill:none;overflow:visible}
.steps-line path{stroke:#ffffff14;stroke-width:2}
.steps-line .pulse-run{stroke:var(--lime);stroke-width:2.5;stroke-dasharray:90 1400;stroke-dashoffset:1500;filter:drop-shadow(0 0 6px var(--lime));animation:run 4.2s linear infinite}
@keyframes run{to{stroke-dashoffset:0}}
.step{padding:28px}
.step-n{font:700 13px var(--display);color:var(--violet)}
.step h3{font-size:20px;margin:22px 0 10px}
.step p{color:var(--muted);font-size:14px}
@media (max-width:820px){.steps{grid-template-columns:1fr}.steps-line{display:none}}

/* ── Оплата ── */
.payments{background:radial-gradient(60% 50% at 50% 0%,#9f76ff14,transparent 70%)}
.heleket-word{color:#ff4b4b}
.pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pay-card{padding:30px}
.pay-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}
.pay-card h3{font-size:22px;margin-bottom:10px}
.cryptobot-logo.big{font-size:20px}.cryptobot-logo.big i{width:34px;height:34px;border-radius:10px}.cryptobot-logo.big i svg{width:20px;height:20px}
.heleket-logo{height:30px;width:auto}
.coins{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap}
.coins span{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#0d0b15;border:1px solid var(--stroke);transition:transform .35s var(--ease)}
.coins span:hover{transform:translateY(-4px) rotate(-6deg)}
.coins svg{width:22px;height:22px}
.pay-facts{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pay-facts li{padding:20px 22px;border-radius:18px;border:1px solid var(--stroke);color:var(--muted);font-size:14px}
.pay-facts b{display:block;font:700 26px var(--display);color:#fff;letter-spacing:-.03em;margin-bottom:6px}
@media (max-width:820px){.pay-grid,.pay-facts{grid-template-columns:1fr}}

/* ── Один аккаунт ── */
.sync-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.sync-title{font-size:clamp(30px,3.8vw,50px);margin:14px 0 18px}
.sync-text{max-width:500px;font-size:16px}
.sync-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.sync-visual{position:relative;display:flex;align-items:center;justify-content:center;gap:0;min-height:360px}
.device{background:#13101d;border:1px solid var(--stroke2);box-shadow:var(--shadow)}
.device.browser{width:300px;border-radius:16px;overflow:hidden}
.device .bar{display:flex;align-items:center;gap:6px;padding:10px 12px;background:#1a1627;border-bottom:1px solid var(--stroke)}
.device .bar i{width:9px;height:9px;border-radius:50%;background:#3a3354}
.device .bar span{margin-left:8px;font-size:11px;color:var(--dim)}
.dv-body{padding:18px}
.dv-body small{font-size:11px;color:var(--dim);font-weight:700}
.dv-body strong{display:block;font:700 30px var(--display);margin:6px 0 16px;letter-spacing:-.03em}
.dv-line{height:9px;border-radius:9px;background:#221d33;margin-bottom:8px}.dv-line.short{width:60%}
.device.phone{width:190px;border-radius:30px;padding:10px;margin-left:-30px;z-index:2;transform:rotate(4deg)}
.device.phone .notch{width:70px;height:16px;border-radius:12px;background:#000;margin:2px auto 8px}
.device.phone .dv-body{padding:8px}
.bubble{background:#1d1930;border-radius:14px 14px 14px 4px;padding:9px 11px;font-size:12px;margin-top:8px}
.bubble.me{background:#2b5278;border-radius:14px 14px 4px 14px;margin-left:30px}
.sync-beam{position:absolute;left:50%;top:50%;width:120px;height:2px;margin-left:-60px;background:linear-gradient(90deg,transparent,#c9ff7255,transparent);z-index:3}
.sync-beam i{position:absolute;top:-4px;width:10px;height:10px;border-radius:50%;background:var(--lime);box-shadow:0 0 18px var(--lime);animation:beam 2.2s var(--ease) infinite}
@keyframes beam{0%{left:0;opacity:0}20%{opacity:1}80%{opacity:1}100%{left:110px;opacity:0}}
@media (max-width:900px){.sync-grid{grid-template-columns:1fr;gap:40px}.sync-visual{min-height:300px}.device.browser{width:250px}.device.phone{width:160px}}

/* ── Рефералы ── */
.ref-section{padding-top:0}
.ref-band{padding:40px 44px;display:flex;justify-content:space-between;align-items:center;gap:30px;background:radial-gradient(120% 140% at 0% 0%,#c9ff7224,transparent 50%),linear-gradient(135deg,#1a1529,#120f1b);overflow:hidden}
.ref-band h2{font-size:clamp(28px,3.6vw,46px);margin:12px 0 10px}
.ref-band p{max-width:560px}
@media (max-width:760px){.ref-band{flex-direction:column;align-items:flex-start;padding:30px 24px}}

/* ── FAQ ── */
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}
.faq-title{font-size:clamp(30px,3.6vw,48px);margin:14px 0 18px}
.faq details{border-bottom:1px solid var(--stroke);padding:4px 0}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-weight:800;font-size:17px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";font:400 26px/1 var(--display);color:var(--lime);transition:transform .3s var(--ease)}
.faq details[open] summary:after{transform:rotate(45deg)}
.faq details p{color:var(--muted);padding:0 40px 22px 0;animation:toastIn .4s var(--ease)}
@media (max-width:860px){.faq-grid{grid-template-columns:1fr;gap:20px}}

/* ── CTA ── */
.cta-section{padding-top:20px}
.cta{position:relative;overflow:hidden;padding:80px 40px;text-align:center;background:linear-gradient(135deg,#a585ff,#6e3bdd 55%,#4a20b5);border:0}
.cta-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.55}
.cta h2{position:relative;font-size:clamp(30px,4.4vw,58px);color:#fff}
.cta p{position:relative;color:#ece6ff;margin:16px 0 30px;font-size:17px}
.cta-actions{position:relative;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.cta .btn-ghost{border-color:#ffffff66;background:#ffffff14}

@media (max-width:400px){.kinetic{font-size:30px}}
