/* ════════════════════════════════════════════════════════════════════════
   GEOEngine · Landing — Liquid Glass design system (собран с нуля)
   Принципы: лёгкий blur + saturate (не «морозное стекло 2020»),
   направленный блик (свет сверху-слева), концентрические радиусы,
   ≤6 поверхностей с backdrop-filter в кадре, фо-стекло для остальных.
   ════════════════════════════════════════════════════════════════════════ */

/* ── токены ── */
:root{
  --bg-base:#07090f;
  --ink:#f2f5ff;
  --ink-soft:rgba(235,240,255,.72);
  --ink-mute:rgba(235,240,255,.45);
  --acc-blue:#5b8cff;
  --acc-violet:#9d6bff;
  --acc-pink:#ff6bcb;
  --grad-brand:linear-gradient(92deg,#5b8cff 0%,#9d6bff 52%,#ff6bcb 100%);

  --r-pill:999px;
  --r-hero:32px;
  --r-card:24px;
  --r-inner:16px;

  --ease-spring:cubic-bezier(.34,1.56,.64,1);
  --ease-out:cubic-bezier(.22,1,.36,1);
  --dur-fast:200ms;--dur-med:350ms;--dur-slow:700ms;

  --shadow-card:0 1px 2px rgba(0,0,0,.35),0 16px 48px rgba(3,6,16,.5);
  --shadow-nav:0 12px 40px rgba(3,5,12,.55);
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
[id]{scroll-margin-top:96px}
body{
  font-family:var(--font);background:var(--bg-base);color:var(--ink);
  line-height:1.6;overflow-x:hidden;
  text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
ul{list-style:none}
img,svg{display:block}
.container{max-width:1140px;margin-inline:auto;padding-inline:24px}
@media(max-width:480px){.container{padding-inline:16px}}

/* ════════════ ФОН: аврора, которую преломляет стекло ════════════ */
.lg-bg{position:fixed;inset:0;z-index:-1;overflow:hidden;
  background:
    radial-gradient(1100px 700px at 12% -8%,rgba(91,140,255,.2),transparent 60%),
    radial-gradient(900px 650px at 88% 12%,rgba(157,107,255,.16),transparent 62%),
    radial-gradient(1000px 800px at 50% 118%,rgba(255,107,203,.12),transparent 60%),
    linear-gradient(180deg,#0a0d17 0%,#07090f 55%,#080a12 100%);
}
.lg-bg__orb{position:absolute;border-radius:50%;will-change:transform}
.lg-bg__orb--blue{width:62vw;height:62vw;top:-22vw;left:-14vw;
  background:radial-gradient(circle at 35% 35%,rgba(91,140,255,.38),rgba(91,140,255,.1) 45%,transparent 70%)}
.lg-bg__orb--violet{width:48vw;height:48vw;top:14vh;right:-16vw;
  background:radial-gradient(circle at 60% 40%,rgba(157,107,255,.34),rgba(157,107,255,.08) 48%,transparent 70%)}
.lg-bg__orb--pink{width:44vw;height:44vw;bottom:-18vw;left:22vw;
  background:radial-gradient(circle at 50% 50%,rgba(255,107,203,.26),rgba(255,107,203,.06) 50%,transparent 72%)}
@media(prefers-reduced-motion:no-preference){
  .lg-bg__orb--blue{animation:orbA 38s var(--ease-out) infinite alternate}
  .lg-bg__orb--violet{animation:orbB 46s ease-in-out infinite alternate}
  .lg-bg__orb--pink{animation:orbC 52s ease-in-out infinite alternate}
  @keyframes orbA{to{transform:translate(9vw,7vh) scale(1.12)}}
  @keyframes orbB{to{transform:translate(-7vw,10vh) scale(.92)}}
  @keyframes orbC{to{transform:translate(6vw,-8vh) scale(1.08)}}
}
.lg-bg__noise{position:absolute;inset:0;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}

/* ════════════ СТЕКЛО: три уровня + фо-стекло ════════════ */
/* общая анатомия: тонировка + линза (backdrop-filter) + блик (::after) */
.glass-nav,.glass-card,.glass-btn,.glass-faux{position:relative;isolation:isolate}
.glass-nav::after,.glass-card::after,.glass-btn::after,.glass-faux::after{
  content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:1}

/* уровень 1 — навигация */
.glass-nav{
  background:rgba(13,17,32,.46);
  -webkit-backdrop-filter:blur(14px) saturate(170%) brightness(1.05);
  backdrop-filter:blur(14px) saturate(170%) brightness(1.05);
  border:1px solid rgba(255,255,255,.09);
  border-radius:var(--r-pill);
  box-shadow:var(--shadow-nav);
}
.glass-nav::after{box-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset 0 -1px 0 rgba(255,255,255,.04),inset 0 0 12px 1px rgba(255,255,255,.03)}

/* уровень 2 — стеклянные карточки (демо, callout, главный тариф) */
.glass-card{
  background:rgba(17,21,38,.4);
  -webkit-backdrop-filter:blur(8px) saturate(160%) brightness(1.04);
  backdrop-filter:blur(8px) saturate(160%) brightness(1.04);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:var(--shadow-card);
}
.glass-card::after{box-shadow:
  inset 1.5px 1.5px 1px -1px rgba(255,255,255,.3),
  inset -1px -1px 1px -1px rgba(255,255,255,.12),
  inset 0 0 16px 2px rgba(255,255,255,.035)}

/* уровень 3 — стеклянные кнопки */
.glass-btn{
  -webkit-backdrop-filter:blur(4px) saturate(180%) brightness(1.1);
  backdrop-filter:blur(4px) saturate(180%) brightness(1.1);
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--r-pill);
}
.glass-btn::after{box-shadow:
  inset 1px 1px 1px -.5px rgba(255,255,255,.5),
  inset -1px -1px 1px -.5px rgba(255,255,255,.2)}

/* фо-стекло: выглядит так же, не тратит бюджет backdrop-filter */
.glass-faux{
  background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.015) 60%),rgba(15,19,34,.62);
  border:1px solid rgba(255,255,255,.07);
  box-shadow:var(--shadow-card);
}
.glass-faux::after{box-shadow:
  inset 1.5px 1.5px 1px -1px rgba(255,255,255,.21),
  inset -1px -1px 1px -1px rgba(255,255,255,.08),
  inset 0 0 16px 2px rgba(255,255,255,.025)}

/* фолбэки доступности и старых браузеров */
@supports not (backdrop-filter:blur(1px)){
  .glass-nav{background:rgba(13,17,32,.92)}
  .glass-card{background:rgba(17,21,38,.92)}
  .glass-btn{background:rgba(30,38,66,.92)}
}
@media(prefers-reduced-transparency:reduce){
  .glass-nav,.glass-card,.glass-btn{-webkit-backdrop-filter:none;backdrop-filter:none}
  .glass-nav{background:rgba(13,17,32,.96)}
  .glass-card{background:rgba(17,21,38,.96)}
  .glass-btn{background:rgba(30,38,66,.96)}
}

/* ════════════ ТИПОГРАФИКА ════════════ */
.h1{font-size:clamp(2.5rem,4.5vw + 1.1rem,4.5rem);font-weight:700;line-height:1.06;letter-spacing:-.03em}
.h2{font-size:clamp(1.875rem,2.6vw + .8rem,2.875rem);font-weight:700;line-height:1.12;letter-spacing:-.02em}
.h3{font-size:1.25rem;font-weight:600;line-height:1.3}
.grad-text{background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}
.section-head{text-align:center;margin-bottom:56px}
.section-sub{color:var(--ink-soft);max-width:60ch;margin:14px auto 0;font-size:1.0625rem}
.eyebrow{display:block;color:var(--acc-blue);font-weight:700;font-size:.8125rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}

section{padding-block:clamp(88px,11vw,144px)}

/* ════════════ НАВИГАЦИЯ — плавающая стеклянная капсула ════════════ */
.nav{position:fixed;top:16px;left:0;right:0;z-index:50;display:flex;justify-content:center;padding-inline:16px}
.nav__inner{width:min(1100px,100%);height:60px;display:flex;align-items:center;gap:32px;padding:0 10px 0 24px}
.nav__logo{font-weight:700;font-size:1.0625rem;letter-spacing:-.02em}
.nav__logo span{background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}
.nav__links{display:flex;gap:28px;margin-inline:auto}
.nav__link{font-size:.9375rem;color:var(--ink-soft);position:relative;transition:color var(--dur-fast)}
.nav__link::after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--grad-brand);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform var(--dur-fast)}
.nav__link:hover{color:var(--ink)}
.nav__link:hover::after{transform:scaleX(1)}
.nav__login{font-size:.9375rem;color:var(--ink-soft);margin-right:14px;transition:color var(--dur-fast)}
.nav__login:hover{color:var(--ink)}
.nav__cta{display:inline-flex;align-items:center;height:40px;padding-inline:20px;border-radius:var(--r-pill);
  background:var(--grad-brand);color:#fff;font-weight:600;font-size:.9375rem;
  transition:transform var(--dur-med) var(--ease-spring),filter var(--dur-fast)}
.nav__cta:hover{transform:translateY(-1px) scale(1.04);filter:brightness(1.1)}
.nav__cta:active{transform:scale(.97)}
@media(max-width:860px){.nav__links,.nav__login{display:none}.nav__inner{justify-content:space-between}}

/* ════════════ КНОПКИ ════════════ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding-inline:28px;
  border-radius:var(--r-pill);font-weight:600;font-size:1rem;color:#fff;white-space:nowrap;
  transition:transform var(--dur-med) var(--ease-spring),filter var(--dur-fast),background-color var(--dur-fast)}
.btn:hover{transform:translateY(-1px) scale(1.04)}
.btn:active{transform:scale(.97)}
.btn--primary{background:rgba(91,140,255,.34);box-shadow:0 4px 14px rgba(0,0,0,.25),0 8px 28px rgba(91,140,255,.18)}
@supports (background:color-mix(in oklab,red 1%,blue)){
  .btn--primary{background:color-mix(in oklab,var(--acc-blue) 38%,transparent)}
}
.btn--primary:hover{filter:brightness(1.12)}
.btn--ghost{background:rgba(255,255,255,.08)}
.btn--ghost:hover{background:rgba(255,255,255,.12)}
/* фо-кнопка: вид стеклянной, без backdrop-filter (боковые тарифы) */
.btn--faux{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);position:relative;isolation:isolate}
.btn--faux::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  box-shadow:inset 1px 1px 1px -.5px rgba(255,255,255,.4),inset -1px -1px 1px -.5px rgba(255,255,255,.15)}
.btn--faux:hover{background:rgba(255,255,255,.12)}

/* ════════════ HERO ════════════ */
.hero{padding-top:clamp(140px,18vh,200px);padding-bottom:clamp(64px,8vw,96px)}
.hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
@media(max-width:1024px){.hero__grid{grid-template-columns:1fr}.hero__right{max-width:560px}}
.hero__badge{display:inline-flex;align-items:center;gap:8px;height:34px;padding-inline:16px;
  border-radius:var(--r-pill);font-size:.8125rem;color:var(--ink-soft);margin-bottom:24px}
.hero__badge .dot{width:7px;height:7px;border-radius:50%;background:var(--acc-blue);box-shadow:0 0 8px var(--acc-blue)}
.hero__sub{font-size:1.1875rem;color:var(--ink-soft);max-width:52ch;margin-top:22px}
.hero__actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:34px}

/* вход hero при загрузке */
@media(prefers-reduced-motion:no-preference){
  .hero [data-enter]{animation:enter var(--dur-slow) var(--ease-out) both;animation-delay:calc(var(--i,0) * 90ms)}
  @keyframes enter{from{opacity:0;transform:translateY(18px)}}
  .nav{animation:navin .4s ease both}
  @keyframes navin{from{opacity:0}}
}

/* ════════════ ДЕМО-КАРТОЧКА: живая проверка сайта ════════════ */
.demo-card{width:100%;max-width:520px;margin-left:auto;padding:32px;border-radius:var(--r-hero);contain:layout paint}
@media(max-width:1024px){.demo-card{margin-left:0}}
@media(min-width:1024px){
  .demo-card{transform:rotate(-1.2deg);transition:transform var(--dur-med) var(--ease-out)}
  .demo-card:hover{transform:rotate(0) translateY(-4px)}
}
/* подвижный блик-ободок и шин, следящие за курсором */
.demo-card .rim{position:absolute;inset:0;border-radius:inherit;pointer-events:none;padding:1px;z-index:2;
  background:conic-gradient(from var(--ang,210deg),rgba(255,255,255,.55),transparent 70deg,rgba(255,255,255,.18) 160deg,transparent 260deg,rgba(255,255,255,.55) 360deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;opacity:.6}
.demo-card .sheen{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:.5;z-index:2;
  background:radial-gradient(220px 220px at var(--mx,30%) var(--my,20%),rgba(255,255,255,.1),transparent 70%)}
.demo-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}
.demo-card__url{display:inline-flex;align-items:center;height:32px;padding-inline:14px;border-radius:var(--r-pill);
  font-size:.8125rem;color:var(--ink-soft);font-variant-numeric:tabular-nums;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.07)}
.demo-card__live{display:inline-flex;align-items:center;gap:7px;font-size:.8125rem;color:var(--ink-mute)}
.demo-card__live i{width:8px;height:8px;border-radius:50%;background:var(--acc-blue)}
@media(prefers-reduced-motion:no-preference){
  .demo-card__live i{animation:pulse 2s ease-in-out infinite}
  @keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
}
.score{display:flex;gap:24px;align-items:center;margin-bottom:26px}
.score__ring{width:120px;height:120px;flex-shrink:0}
.score__ring circle{fill:none;stroke-width:8}
.score__ring .track{stroke:rgba(255,255,255,.08)}
.score__ring .prog{stroke:url(#scoreGrad);stroke-linecap:round;transform:rotate(-90deg);transform-origin:center}
.score__txt .score__num{font-size:2.5rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}
.score__txt .score__num small{font-size:1.125rem;font-weight:500;color:var(--ink-mute)}
.score__txt .score__cap{font-size:.9375rem;color:var(--ink-soft)}
.demo-card__bars{display:flex;flex-direction:column;gap:16px}
.bar__head{display:flex;justify-content:space-between;font-size:.9375rem;color:var(--ink-soft);margin-bottom:6px}
.bar__head b{font-weight:500}
.bar__head span{color:var(--ink-mute);font-variant-numeric:tabular-nums}
.bar__track{height:8px;border-radius:var(--r-pill);background:rgba(255,255,255,.07);overflow:hidden}
.bar__fill{display:block;height:100%;border-radius:inherit;background:var(--grad-brand);width:0;
  transition:width .9s var(--ease-out);transition-delay:calc(var(--bi,0) * 80ms)}
.demo-card.is-in .bar__fill{width:var(--w,0%)}
@media(prefers-reduced-motion:reduce){.bar__fill{width:var(--w,0%) !important;transition:none}}

/* ════════════ MARQUEE ════════════ */
.marquee{padding-block:40px;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.marquee__track{display:flex;gap:48px;width:max-content;align-items:center}
.marquee__item{display:flex;align-items:center;gap:48px;font-size:.9375rem;font-weight:600;color:var(--ink-mute);white-space:nowrap}
.marquee__item::after{content:'';width:4px;height:4px;border-radius:50%;background:var(--acc-violet);opacity:.6}
@media(prefers-reduced-motion:no-preference){
  .marquee__track{animation:drift 32s linear infinite}
  @keyframes drift{to{transform:translateX(-50%)}}
  .marquee:hover .marquee__track{animation-play-state:paused}
}
@media(prefers-reduced-motion:reduce){.marquee__track{flex-wrap:wrap;width:auto}}

/* ════════════ FEATURES ════════════ */
.features{background:linear-gradient(180deg,rgba(7,9,15,.35),rgba(7,9,15,.55))}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:1024px){.feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.feature-grid{grid-template-columns:1fr}}
.feature-card{padding:24px;border-radius:var(--r-card);
  transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med),box-shadow var(--dur-med)}
.feature-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.14);box-shadow:0 24px 64px rgba(3,6,16,.6)}
.feature-card__icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;margin-bottom:16px;
  background:rgba(91,140,255,.16);color:var(--acc-blue)}
.feature-card:nth-child(3n+2) .feature-card__icon{background:rgba(157,107,255,.16);color:var(--acc-violet)}
.feature-card:nth-child(3n) .feature-card__icon{background:rgba(255,107,203,.14);color:var(--acc-pink)}
.feature-card p{font-size:.9375rem;color:var(--ink-soft);margin-top:8px}

/* ════════════ STATS ════════════ */
.stats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-block:64px;
  border-block:1px solid rgba(255,255,255,.06)}
@media(max-width:860px){.stats__grid{grid-template-columns:repeat(2,1fr)}}
.stat{text-align:center}
.stat__num{font-size:clamp(2.75rem,4vw + 1rem,4rem);font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.stat__label{font-size:.875rem;color:var(--ink-mute);margin-top:6px}

/* ════════════ STEPS ════════════ */
.steps__list{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
@media(max-width:1024px){.steps__list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.steps__list{grid-template-columns:1fr}}
.step{position:relative}
.step__num{width:56px;height:56px;border-radius:var(--r-pill);display:grid;place-items:center;
  font-size:1.25rem;font-weight:700;margin-bottom:18px;
  background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.015) 60%),rgba(15,19,34,.62);
  border:1px solid rgba(255,255,255,.07);
  box-shadow:inset 1px 1px 1px -.5px rgba(255,255,255,.2)}
.step__num span{background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}
.step:not(:last-child) .step__num::after{content:'';position:absolute;left:72px;top:28px;right:-8px;height:1px;
  background:rgba(255,255,255,.08)}
@media(max-width:1024px){.step .step__num::after{display:none}}
.step p{font-size:.9375rem;color:var(--ink-soft);margin-top:8px}

/* ════════════ CALLOUT «честно о сроках» ════════════ */
.callout{border-radius:var(--r-hero);padding:40px 48px;background-color:rgba(24,20,38,.42)}
@media(max-width:640px){.callout{padding:28px 24px}}
.callout::before{content:'';position:absolute;left:0;top:24px;bottom:24px;width:3px;border-radius:2px;
  background:var(--grad-brand)}
.callout__title{display:flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:600;margin-bottom:10px}
.callout__text{color:var(--ink-soft);max-width:70ch}
.callout__text b{color:var(--ink)}

/* ════════════ PRICING ════════════ */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}
@media(max-width:960px){.price-grid{grid-template-columns:1fr}.price-card--featured{order:-1}}
.price-card{padding:32px;border-radius:var(--r-card);display:flex;flex-direction:column;
  transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med),box-shadow var(--dur-med)}
.price-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.14);box-shadow:0 24px 64px rgba(3,6,16,.6)}
.price-card--featured{position:relative}
@media(min-width:960px){.price-card--featured{transform:scale(1.03)}
  .price-card--featured:hover{transform:scale(1.03) translateY(-4px)}}
.price-card__flag{position:absolute;top:-13px;right:24px;height:26px;display:inline-flex;align-items:center;
  padding-inline:14px;border-radius:var(--r-pill);background:var(--grad-brand);color:#fff;
  font-size:.75rem;font-weight:700}
.price-card__name{font-size:1.25rem;font-weight:600}
.price-card__tagline{font-size:.875rem;color:var(--ink-mute);margin-top:2px}
.price-card__price{font-size:2.5rem;font-weight:700;font-variant-numeric:tabular-nums;margin-top:18px;letter-spacing:-.02em}
.price-card__per{font-size:1rem;font-weight:500;color:var(--ink-mute)}
.price-card__list{display:flex;flex-direction:column;gap:12px;margin:24px 0 28px}
.price-card__list li{display:flex;gap:10px;align-items:flex-start;font-size:.9375rem;color:var(--ink-soft)}
.price-card__list li svg{flex-shrink:0;margin-top:3px;color:var(--acc-blue)}
.price-card__list li.no{color:var(--ink-mute);opacity:.6}
.price-card__list li.no svg{color:var(--ink-mute)}
.price-card .btn{margin-top:auto;width:100%}

/* ════════════ FINAL CTA ════════════ */
.cta-final{position:relative}
.cta-final::before{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(760px,90vw);height:340px;pointer-events:none;
  background:radial-gradient(600px 300px at 50% 50%,rgba(157,107,255,.22),transparent 70%)}
.cta-final__panel{position:relative;border-radius:var(--r-hero);padding:clamp(48px,7vw,80px);text-align:center}
.cta-final__panel .section-sub{margin-bottom:34px}

/* ════════════ FOOTER ════════════ */
.footer{border-top:1px solid rgba(255,255,255,.06);padding-block:40px}
.footer__inner{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.footer__copy{font-size:.8125rem;color:var(--ink-mute)}
.footer__links{display:flex;gap:24px;font-size:.8125rem;color:var(--ink-mute)}
.footer__links a:hover{color:var(--ink)}

/* ════════════ SCROLL REVEALS ════════════ */
@media(prefers-reduced-motion:no-preference){
  html.js .reveal{opacity:0;transform:translateY(24px);
    transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);transition-delay:var(--d,0ms)}
  html.js .reveal.is-in{opacity:1;transform:none}
  /* стаггер детей сеток — через nth-child, без JS */
  html.js .feature-grid>:nth-child(3n+2),html.js .steps__list>:nth-child(2),html.js .price-grid>:nth-child(2),html.js .stats__grid>:nth-child(2){--d:60ms}
  html.js .feature-grid>:nth-child(3n),html.js .steps__list>:nth-child(3),html.js .price-grid>:nth-child(3),html.js .stats__grid>:nth-child(3){--d:120ms}
  html.js .feature-grid>:nth-child(n+4){--d:180ms}
  html.js .steps__list>:nth-child(4),html.js .stats__grid>:nth-child(4){--d:180ms}
}

/* ════════════ REDUCED MOTION — финальный блок ════════════ */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
  html{scroll-behavior:auto}
  .reveal{opacity:1 !important;transform:none !important}
}
