/* =====================================================================
   CODDY × Deploy-F — промо-лендинг
   Стек: HTML + CSS + JS, без сборщиков. Все ресурсы лежат рядом:
   img/ — картинки, fonts/ — шрифты (Montserrat, Fredoka One, JetBrains Mono)
   ===================================================================== */

/* ---------- шрифты (локально) ---------- */
@font-face{font-family:"Montserrat";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/montserrat-cyrillic-400-normal.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:"Montserrat";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/montserrat-latin-400-normal.woff2") format("woff2");}
@font-face{font-family:"Montserrat";font-weight:500;font-style:normal;font-display:swap;src:url("../fonts/montserrat-cyrillic-500-normal.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:"Montserrat";font-weight:500;font-style:normal;font-display:swap;src:url("../fonts/montserrat-latin-500-normal.woff2") format("woff2");}
@font-face{font-family:"Montserrat";font-weight:600;font-style:normal;font-display:swap;src:url("../fonts/montserrat-cyrillic-600-normal.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:"Montserrat";font-weight:600;font-style:normal;font-display:swap;src:url("../fonts/montserrat-latin-600-normal.woff2") format("woff2");}
@font-face{font-family:"Montserrat";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/montserrat-cyrillic-700-normal.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:"Montserrat";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/montserrat-latin-700-normal.woff2") format("woff2");}
@font-face{font-family:"Montserrat";font-weight:800;font-style:normal;font-display:swap;src:url("../fonts/montserrat-cyrillic-800-normal.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:"Montserrat";font-weight:800;font-style:normal;font-display:swap;src:url("../fonts/montserrat-latin-800-normal.woff2") format("woff2");}
@font-face{font-family:"Montserrat";font-weight:900;font-style:normal;font-display:swap;src:url("../fonts/montserrat-cyrillic-900-normal.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:"Montserrat";font-weight:900;font-style:normal;font-display:swap;src:url("../fonts/montserrat-latin-900-normal.woff2") format("woff2");}
@font-face{font-family:"Fredoka One";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/fredoka-one-latin-400-normal.woff2") format("woff2");}
@font-face{font-family:"JetBrains Mono";font-weight:500;font-style:normal;font-display:swap;src:url("../fonts/jetbrains-mono-cyrillic-500-normal.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:"JetBrains Mono";font-weight:500;font-style:normal;font-display:swap;src:url("../fonts/jetbrains-mono-latin-500-normal.woff2") format("woff2");}
@font-face{font-family:"JetBrains Mono";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/jetbrains-mono-cyrillic-700-normal.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}
@font-face{font-family:"JetBrains Mono";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/jetbrains-mono-latin-700-normal.woff2") format("woff2");}

/* ---------- токены ---------- */
:root{
  --sky-0:#040F1F;  --sky-1:#071A30;  --sky-2:#0B2A47;  --sky-3:#123D60;
  --ink:#04101E;
  --teal:#2BC0D6;   --cyan:#5EEBFF;  --teal-deep:#0E7E99;
  --gold:#FFD46B;   --flame:#FF8A2A;
  --text:#F2F8FC;   --soft:#A9C3D6;   --dim:#6E8FA6;
  --glass:rgba(255,255,255,.055); --glass-2:rgba(255,255,255,.09); --glass-line:rgba(255,255,255,.12);
  --glow:0 0 0 1px rgba(94,235,255,.25), 0 0 26px rgba(43,192,214,.55), 0 0 70px rgba(43,192,214,.28);
  --radius:26px; --radius-lg:36px; --maxw:1200px;
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--sky-1);color:var(--text);font-family:"Montserrat","Helvetica Neue",Arial,sans-serif;font-size:20px;line-height:1.55;font-weight:500;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;}
:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:8px;}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 28px;}
.mono{font-family:"JetBrains Mono",ui-monospace,Menlo,monospace;font-weight:500;}

/* ---------- прогресс скролла ---------- */
.progress{position:fixed;left:0;top:0;height:3px;width:100%;z-index:100;background:transparent;pointer-events:none;}
.progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),var(--cyan));box-shadow:0 0 12px var(--cyan);}

/* ---------- типографика ---------- */
h1,h2,h3{margin:0;font-weight:800;letter-spacing:-.03em;line-height:1.04;text-wrap:balance;}
h1{font-size:clamp(2.2rem,3.65vw,3.5rem);font-weight:900;letter-spacing:-.04em;}
h2{font-size:clamp(2.3rem,4.8vw,4.2rem);}
h3{font-size:clamp(1.35rem,2vw,1.8rem);letter-spacing:-.02em;line-height:1.15;}
p{margin:0;}
.lead{font-size:clamp(1.12rem,1.6vw,1.45rem);line-height:1.55;color:var(--soft);font-weight:500;max-width:60ch;}
.eyebrow{display:inline-flex;align-items:flex-start;gap:12px;font-size:1.02rem;font-weight:600;letter-spacing:0;line-height:1.45;color:var(--cyan);}
.eyebrow i{width:9px;height:9px;margin-top:.5em;border-radius:50%;background:var(--teal);box-shadow:0 0 12px var(--cyan);display:block;flex:none;}
.grad{background:linear-gradient(110deg,#1E9CBF 0%,#2BC0D6 30%,#9AEFFF 50%,#2BC0D6 70%,#1E9CBF 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 6s linear infinite;}
@keyframes shimmer{to{background-position:-220% 0;}}
.section-head{display:flex;flex-direction:column;gap:22px;margin-bottom:clamp(44px,5vw,72px);align-items:flex-start;}
.section-head h2{max-width:18ch;}
.section-head--center{align-items:center;text-align:center;}
.section-head--center .lead{text-align:center;}
.section{position:relative;padding:clamp(80px,9vw,130px) 0;}
.section--deep{background:linear-gradient(180deg,var(--sky-0),var(--sky-1));}
.section--rise{background:linear-gradient(180deg,var(--sky-1),var(--sky-2));}
/* заголовок по словам */
.words .w{display:inline-block;opacity:0;transform:translateY(.6em) rotate(3deg);animation:word .8s var(--ease) forwards;animation-delay:calc(.15s + var(--k)*.07s);}
.no-js .words .w{opacity:1;transform:none;animation:none;}
@keyframes word{to{opacity:1;transform:none;}}

/* ---------- кнопки как на coddyschool.com ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-family:inherit;font-size:1.05rem;font-weight:600;letter-spacing:.005em;padding:0 40px;height:66px;border-radius:999px;border:2px solid var(--teal);cursor:pointer;color:#fff;white-space:nowrap;position:relative;overflow:hidden;transition:transform .22s var(--ease), box-shadow .22s var(--ease), background .22s, filter .22s;}
.btn::after{content:"";position:absolute;inset:0;background:radial-gradient(120px 60px at var(--bx,50%) var(--by,50%),rgba(255,255,255,.35),transparent 70%);opacity:0;transition:opacity .3s;}
.btn:hover::after{opacity:1;}
.btn--primary{background:linear-gradient(180deg,#33CCE0,#22B3CA);box-shadow:var(--glow);animation:breathe 3.2s ease-in-out infinite;}
.btn--primary:hover{transform:translateY(-3px);filter:brightness(1.08);box-shadow:0 0 0 1px rgba(94,235,255,.4),0 0 36px rgba(43,192,214,.8),0 0 90px rgba(43,192,214,.4);}
.btn--outline{background:rgba(43,192,214,.06);box-shadow:0 0 18px rgba(43,192,214,.35), inset 0 0 18px rgba(43,192,214,.08);}
.btn--outline:hover{transform:translateY(-3px);background:rgba(43,192,214,.16);box-shadow:0 0 30px rgba(43,192,214,.6);}
.btn--sm{height:52px;padding:0 28px;font-size:.95rem;}
.btn--lg{height:76px;padding:0 52px;font-size:1.18rem;}
@keyframes breathe{0%,100%{box-shadow:var(--glow);}50%{box-shadow:0 0 0 1px rgba(94,235,255,.35),0 0 34px rgba(43,192,214,.75),0 0 90px rgba(43,192,214,.4);}}

/* ---------- верхняя строка + шапка ---------- */
.topline{background:rgba(3,12,24,.75);border-bottom:1px solid rgba(255,255,255,.06);font-size:.88rem;font-weight:500;color:#D5E6F1;}
.topline__in{display:flex;align-items:center;gap:26px;height:42px;overflow:hidden;}
.topline a{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;}
.topline a svg{color:var(--teal);}
.topline .sep{width:1px;height:18px;background:rgba(255,255,255,.14);}
.topline .push{margin-left:auto;}
@media (max-width:900px){.topline .hide-m,.topline .sep{display:none;} .topline__in{gap:16px;justify-content:space-between;}}
@media (max-width:560px){.topline{font-size:.8rem;} .topline .hide-s{display:none;} .topline__in{height:38px;}}
.topbar{position:sticky;top:0;z-index:60;background:rgba(6,22,40,.62);backdrop-filter:saturate(160%) blur(18px);-webkit-backdrop-filter:saturate(160%) blur(18px);border-bottom:1px solid rgba(255,255,255,.06);}
.topbar__in{display:flex;align-items:center;gap:30px;height:84px;}
.logo{display:block;flex:none;height:70px;width:auto;filter:drop-shadow(0 0 22px rgba(43,192,214,.45));transition:transform .3s var(--ease);}
.logo img{height:100%;width:auto;}
.logo:hover{transform:translateY(-2px) scale(1.04);}
.nav{display:flex;gap:34px;margin-left:auto;font-size:1.02rem;font-weight:500;color:#E3EEF5;}
.nav a{position:relative;padding:6px 0;}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--cyan);transition:right .25s var(--ease);box-shadow:0 0 10px var(--cyan);}
.nav a:hover::after{right:0;}
@media (max-width:900px){.nav{display:none;} .topbar__in{height:72px;gap:14px;} .logo{height:58px;} .topbar .btn{margin-left:auto;height:46px;padding:0 22px;font-size:.9rem;}}

/* ---------- герой ---------- */
.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--sky-0) 0%,var(--sky-1) 45%,var(--sky-2) 80%,var(--sky-3) 100%);min-height:calc(100vh - 126px);display:flex;align-items:center;}
@media (max-width:980px){.hero{max-height:none;min-height:0;}}
#stars{position:absolute;inset:-6%;width:112%;height:112%;pointer-events:none;}
.cursor-glow{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(43,192,214,.16),rgba(43,192,214,0) 65%);pointer-events:none;transform:translate(-50%,-50%);left:70%;top:40%;transition:left .6s var(--ease),top .6s var(--ease);z-index:1;}
.moon{position:absolute;right:6%;top:6%;width:96px;height:96px;animation:moon 9s ease-in-out infinite;z-index:1;filter:drop-shadow(0 0 26px rgba(233,243,248,.55));}
.moon svg{width:100%;height:100%;display:block;}
@keyframes moon{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}
.hero__in{position:relative;z-index:3;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding-top:36px;padding-bottom:265px;}
@media (max-width:980px){.hero__in{grid-template-columns:1fr;padding-bottom:280px;padding-top:40px;} .moon{width:70px;height:70px;right:6%;top:4%;}}
.hero__copy{display:flex;flex-direction:column;gap:22px;align-items:flex-start;}
.hero .lead{font-size:clamp(1.02rem,1.25vw,1.18rem);max-width:50ch;line-height:1.7;}
.hero h1{line-height:1.1;margin:2px 0 0;}
.hero__copy>*{opacity:0;transform:translateY(26px);animation:rise .9s var(--ease) forwards;}
.hero__copy>*:nth-child(1){animation-delay:.1s}.hero__copy>*:nth-child(2){animation-delay:.2s}.hero__copy>*:nth-child(3){animation-delay:.9s}.hero__copy>*:nth-child(4){animation-delay:1.05s}.hero__copy>*:nth-child(5){animation-delay:1.2s}
.no-js .hero__copy>*{opacity:1;transform:none;animation:none;}
@keyframes rise{to{opacity:1;transform:none;}}
.hero h1{max-width:22ch;}
.hero .eyebrow{font-size:.95rem;max-width:44ch;}
.hero__cta{display:flex;flex-wrap:wrap;gap:14px;}
@media (min-width:980px){.hero .hero__cta{flex-wrap:nowrap;}}
.hero__meta{display:flex;align-items:center;gap:12px;color:#DCEBF5;font-size:1rem;font-weight:600;margin-top:4px;}
.pulse{width:11px;height:11px;border-radius:50%;background:#3EE58A;box-shadow:0 0 0 0 rgba(62,229,138,.6);animation:pulse 1.8s infinite;}
@keyframes pulse{to{box-shadow:0 0 0 12px rgba(62,229,138,0);}}

/* ракета */
.launch{position:relative;height:470px;display:flex;justify-content:center;align-items:flex-end;}
@media (max-width:980px){.launch{height:440px;}}
.rocket-wrap{position:relative;width:min(235px,50vw);will-change:transform;animation:launch 2.6s cubic-bezier(.16,.84,.3,1) both, hover 6s ease-in-out 2.6s infinite;}
.no-js .rocket-wrap{animation:hover 6s ease-in-out infinite;}
@keyframes launch{0%{transform:translateY(70vh) scale(.9);opacity:0;}20%{opacity:1;}100%{transform:translateY(0) scale(1);opacity:1;}}
@keyframes hover{0%,100%{transform:translateY(0);}50%{transform:translateY(-14px);}}
.rocket-wrap img{width:100%;height:auto;position:relative;z-index:2;filter:drop-shadow(0 30px 40px rgba(0,0,0,.55));}
.jet{position:absolute;transform:translateX(-50%);z-index:1;pointer-events:none;}
.jet--main{left:50%;top:76%;width:26%;height:46%;}
.jet--l{left:10.8%;top:94%;width:13%;height:28%;}
.jet--r{left:94.6%;top:98%;width:13%;height:28%;}
.jet i{position:absolute;left:50%;bottom:0;width:100%;height:100%;transform:translateX(-50%);border-radius:50% 50% 45% 45% / 30% 30% 70% 70%;background:radial-gradient(60% 50% at 50% 20%, #FFF4C2 0%, #FFC14D 32%, #FF7A1A 60%, rgba(255,90,20,0) 100%);filter:blur(4px);transform-origin:50% 0;animation:flicker .12s ease-in-out infinite alternate;}
.jet i:nth-child(2){width:70%;height:130%;opacity:.7;animation-duration:.17s;filter:blur(10px);}
.jet i:nth-child(3){width:40%;height:80%;opacity:.95;animation-duration:.09s;background:radial-gradient(60% 50% at 50% 20%,#fff 0%,#FFE49A 40%,rgba(255,180,60,0) 100%);}
@keyframes flicker{from{transform:translateX(-50%) scaleY(1) scaleX(1);}to{transform:translateX(-50%) scaleY(1.18) scaleX(.9);}}
.flame-glow{position:absolute;left:50%;top:78%;width:140%;height:60%;transform:translateX(-50%);background:radial-gradient(50% 50% at 50% 50%,rgba(255,140,40,.45),rgba(255,140,40,0) 70%);filter:blur(20px);z-index:0;}
.puffs{position:absolute;left:50%;bottom:-8%;width:0;height:0;z-index:0;}
.puffs i{position:absolute;left:0;top:0;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,rgba(230,240,248,.95),rgba(230,240,248,.4) 55%,rgba(230,240,248,0) 72%);transform:translate(-50%,-50%) scale(.2);opacity:0;animation:puff 2.4s ease-out both;}
.puffs i:nth-child(1){animation-delay:.6s;--dx:-120px}.puffs i:nth-child(2){animation-delay:.75s;--dx:110px}.puffs i:nth-child(3){animation-delay:.9s;--dx:-60px}.puffs i:nth-child(4){animation-delay:1s;--dx:70px}.puffs i:nth-child(5){animation-delay:1.15s;--dx:0px}
@keyframes puff{0%{opacity:0;transform:translate(-50%,-50%) scale(.2);}15%{opacity:.9;}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),-10%) scale(2.6);}}

/* город, колесо, облака */
.city{position:absolute;left:-4%;right:-4%;bottom:0;height:230px;z-index:1;pointer-events:none;}
.city svg{position:absolute;bottom:0;left:0;width:100%;height:100%;}
.city--far{opacity:.55;height:190px;}
.wheel{position:absolute;right:4%;bottom:100px;width:160px;height:160px;z-index:1;opacity:.9;pointer-events:none;}
.wheel svg{width:100%;height:100%;animation:spin 48s linear infinite;transform-origin:50% 50%;}
@keyframes spin{to{transform:rotate(360deg);}}
.wheel .legs{position:absolute;left:50%;bottom:-40px;width:120px;height:130px;transform:translateX(-50%);clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(90deg,transparent 46%,#0F3854 46%,#0F3854 54%,transparent 54%);}
@media (max-width:980px){.wheel{width:130px;height:130px;right:2%;bottom:140px;}}
.clouds{position:absolute;left:-14%;right:-14%;bottom:-50px;height:220px;z-index:2;pointer-events:none;}
.cloud{position:absolute;bottom:0;height:130px;width:420px;border-radius:200px;background:radial-gradient(circle at 30% 40%,#EAF3F9 0,#DCE9F2 40%,rgba(220,233,242,0) 71%),radial-gradient(circle at 70% 60%,#E6F0F7 0,#D3E3EE 45%,rgba(211,227,238,0) 70%);filter:blur(6px);opacity:.95;animation:drift 22s ease-in-out infinite alternate;}
.cloud::before,.cloud::after{content:"";position:absolute;bottom:10px;border-radius:50%;background:#E4EEF6;}
.cloud::before{left:12%;width:180px;height:180px;}
.cloud::after{right:14%;width:230px;height:230px;bottom:-10px;}
.cloud--1{left:-4%;transform:scale(1.2);} .cloud--2{left:22%;animation-duration:27s;transform:scale(.9);} .cloud--3{left:46%;animation-duration:19s;transform:scale(1.3);} .cloud--4{left:70%;animation-duration:24s;} .cloud--5{left:88%;animation-duration:30s;transform:scale(1.1);}
@keyframes drift{from{margin-left:-30px;}to{margin-left:30px;}}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(180deg,rgba(220,235,247,0),#DCEBF7);z-index:3;pointer-events:none;}

/* ---------- живое демо деплоя ---------- */
.demo{margin:-170px auto 80px;position:relative;z-index:5;}
.browser{width:min(1000px,100%);margin:0 auto;background:rgba(9,27,46,.86);border:1px solid var(--glass-line);border-radius:var(--radius-lg);box-shadow:0 40px 90px -30px rgba(0,0,0,.8), 0 0 0 1px rgba(94,235,255,.06);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow:hidden;}
.browser__bar{display:flex;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid var(--glass-line);background:rgba(255,255,255,.03);}
.browser__dots{display:flex;gap:8px;}
.browser__dots i{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.14);display:block;}
.browser__url{flex:1;display:flex;align-items:center;gap:10px;justify-content:center;background:rgba(0,0,0,.28);border:1px solid var(--glass-line);border-radius:999px;padding:11px 18px;font-size:.95rem;color:var(--soft);min-height:46px;}
.browser__url .caret{width:2px;height:18px;background:var(--cyan);animation:blink 1s steps(2) infinite;}
@keyframes blink{50%{opacity:0;}}
.browser__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);min-height:400px;}
@media (max-width:820px){.browser__body{grid-template-columns:minmax(0,1fr);}}
.term,.preview{min-width:0;overflow-wrap:anywhere;}
.term{padding:30px 34px;font-size:.98rem;line-height:1.75;color:#BFD6E5;border-right:1px solid var(--glass-line);}
@media (max-width:820px){.term{border-right:0;border-bottom:1px solid var(--glass-line);}}
.term .l{display:flex;gap:12px;opacity:0;transform:translateX(-8px);transition:all .4s var(--ease);}
.term .l.on{opacity:1;transform:none;}
.term .l b{color:var(--cyan);font-weight:700;}
.term .w{color:#fff;}
.term .ok{color:#3EE58A;font-weight:700;}
.term .bar{height:8px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;margin:10px 0 4px;width:100%;}
.term .bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),var(--cyan));box-shadow:0 0 12px var(--cyan);transition:width 2.2s var(--ease);}
.term .bar.on i{width:100%;}
/* превью проекта — настоящая мини-игра на canvas */
.preview{position:relative;padding:22px 26px 26px;display:flex;flex-direction:column;gap:14px;background:#050D18;}
.app{position:relative;border-radius:18px;overflow:hidden;background:#04101E;border:1px solid rgba(94,235,255,.12);opacity:.25;filter:grayscale(1);transform:scale(.97);transition:all .8s var(--ease);}
.preview.live .app{opacity:1;filter:none;transform:none;}
.app__bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-size:.9rem;font-weight:700;color:var(--cyan);background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.06);}
.app__bar span:last-child{color:var(--gold);}
#game{display:block;width:100%;aspect-ratio:16/9;}
.preview__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.preview__title{font-weight:800;font-size:1.15rem;letter-spacing:-.02em;opacity:.35;transition:opacity .6s;}
.preview__title small{display:block;font-weight:500;color:var(--soft);font-size:.85rem;letter-spacing:0;}
.preview.live .preview__title{opacity:1;}
.preview__badge{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;background:rgba(62,229,138,.14);color:#3EE58A;font-size:.9rem;font-weight:700;opacity:0;transform:scale(.8);transition:all .5s var(--ease);}
.preview.live .preview__badge{opacity:1;transform:none;}
.preview__spinner{position:absolute;left:50%;top:42%;margin-left:-32px;width:64px;height:64px;border-radius:50%;border:4px solid rgba(255,255,255,.1);border-top-color:var(--cyan);animation:spin 1s linear infinite;opacity:0;transition:opacity .3s;z-index:3;}
.preview.building .preview__spinner{opacity:1;}
.copied{position:absolute;right:18px;top:18px;display:inline-flex;align-items:center;gap:8px;background:#fff;color:#04101E;padding:10px 16px;border-radius:999px;font-size:.9rem;font-weight:700;box-shadow:0 10px 30px rgba(0,0,0,.4);opacity:0;transform:translateY(8px) scale(.9);transition:all .4s var(--ease);z-index:4;}
.copied.on{opacity:1;transform:none;}

/* ---------- карточки / reveal / tilt ---------- */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--i,0)*.12s);}
.reveal.in{opacity:1;transform:none;}
.no-js .reveal{opacity:1;transform:none;}
.grid{display:grid;gap:20px;}
.grid--4{grid-template-columns:repeat(4,1fr);}
@media (max-width:1080px){.grid--4{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.grid--4{grid-template-columns:1fr;}}
.card{position:relative;background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--radius);padding:36px 30px 32px;display:flex;flex-direction:column;gap:16px;overflow:hidden;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:border-color .35s,background .35s,box-shadow .35s;transform-style:preserve-3d;}
.card::before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:radial-gradient(400px 200px at var(--mx,50%) var(--my,0%),rgba(94,235,255,.2),transparent 60%);opacity:0;transition:opacity .4s;pointer-events:none;}
.card:hover{border-color:rgba(94,235,255,.35);background:var(--glass-2);box-shadow:0 30px 60px -30px rgba(0,0,0,.7);}
.card:hover::before{opacity:1;}
.card h3{font-size:1.4rem;}
.card p{color:var(--soft);font-size:1.04rem;line-height:1.5;}
.ico{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:rgba(43,192,214,.14);color:var(--cyan);flex:none;box-shadow:inset 0 0 0 1px rgba(94,235,255,.18);transition:transform .4s var(--ease);}
.card:hover .ico{transform:translateY(-4px) rotate(-6deg);}
.ico--gold{background:rgba(255,212,107,.14);color:var(--gold);box-shadow:inset 0 0 0 1px rgba(255,212,107,.25);}

/* ---------- история: ребёнок + WhatsApp ---------- */
.story{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--sky-1),var(--sky-2) 60%,var(--sky-1));}
.story__in{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(30px,4vw,60px);align-items:center;}
@media (max-width:940px){.story__in{grid-template-columns:1fr;}}
.story__copy{display:flex;flex-direction:column;gap:26px;align-items:flex-start;}
.story-quote{font-size:clamp(2rem,4vw,3.5rem);font-weight:900;letter-spacing:-.035em;line-height:1.05;}
.scene{position:relative;min-height:680px;display:flex;align-items:flex-end;justify-content:center;gap:0;}
.scene__glow{position:absolute;left:50%;top:50%;width:560px;height:560px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(43,192,214,.26),rgba(43,192,214,0) 65%);filter:blur(20px);}
.scene__ground{position:absolute;left:50%;bottom:-30px;width:130%;height:180px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at 50% 0,#173F5F,#0B2A47 70%);}
.kid-wrap{position:relative;z-index:3;width:min(215px,36%);margin-left:6px;animation:hover 7s ease-in-out infinite;}
.scene .kid{width:100%;height:auto;filter:drop-shadow(0 30px 40px rgba(0,0,0,.55));}
.scene .orb-wrap{position:absolute;z-index:4;left:2%;top:48%;display:flex;flex-direction:column;align-items:center;gap:8px;transform:translate(-50%,-50%);}
.orb{width:66px;height:66px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fff,var(--cyan) 45%,var(--teal) 75%);box-shadow:0 0 30px 10px rgba(94,235,255,.55),0 0 90px 30px rgba(43,192,214,.35);display:grid;place-items:center;color:#04101E;animation:orb 2.6s ease-in-out infinite;}
@keyframes orb{0%,100%{transform:translateY(0) scale(1);}50%{transform:translateY(-8px) scale(1.06);}}
.orb-tag{background:#fff;color:#04101E;padding:8px 14px;border-radius:999px;font-size:.8rem;font-weight:700;box-shadow:0 10px 30px rgba(0,0,0,.4);white-space:nowrap;}
@media (max-width:560px){.scene .orb-wrap{display:none;}}

/* телефон + WhatsApp (тёмная тема) */
.phone{position:relative;z-index:2;width:min(310px,58%);background:#111;border-radius:44px;padding:12px;box-shadow:0 50px 90px -30px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.08);flex:none;margin-bottom:30px;}
.phone__notch{position:absolute;left:50%;top:12px;width:110px;height:28px;transform:translateX(-50%);background:#111;border-radius:0 0 18px 18px;z-index:5;}
.wa{background:#0B141A;border-radius:34px;overflow:hidden;height:640px;display:flex;flex-direction:column;font-family:-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:14.5px;color:#E9EDEF;position:relative;}
.wa__status{display:flex;justify-content:space-between;align-items:center;padding:14px 22px 4px;font-size:12px;font-weight:600;}
.wa__head{display:flex;align-items:center;gap:10px;padding:8px 12px 10px;background:#202C33;}
.wa__head .back{color:#AEBAC1;display:flex;}
.wa__ava{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#F7C59F,#E8A16A);display:grid;place-items:center;font-weight:700;color:#5A3A1A;flex:none;position:relative;overflow:hidden;}
.wa__ava::after{content:"";position:absolute;left:50%;top:60%;width:34px;height:34px;transform:translateX(-50%);border-radius:50%;background:#F4B183;}
.wa__ava::before{content:"";position:absolute;left:50%;top:14%;width:20px;height:20px;transform:translateX(-50%);border-radius:50%;background:#F6D3B8;z-index:1;}
.wa__name{flex:1;line-height:1.15;}
.wa__name b{display:block;font-weight:600;font-size:15px;}
.wa__name small{color:#8696A0;font-size:12px;display:block;min-height:14px;}
.wa__name small.typing{color:#25D366;}
.wa__icons{display:flex;gap:18px;color:#AEBAC1;}
.wa__chat{flex:1;padding:14px 10px;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;overflow:hidden;position:relative;
  background-color:#0B141A;background-image:radial-gradient(rgba(255,255,255,.035) 1px,transparent 1.5px),radial-gradient(rgba(255,255,255,.025) 1.5px,transparent 2px);background-size:26px 26px,44px 44px;background-position:0 0,13px 13px;}
.wa__day{align-self:center;margin-top:auto;background:#182229;color:#8696A0;font-size:11.5px;padding:5px 12px;border-radius:8px;margin-bottom:6px;}
.msg{position:relative;max-width:82%;padding:6px 8px 7px 9px;border-radius:8px;line-height:1.35;font-size:14.5px;opacity:0;transform:translateY(10px) scale(.96);transition:opacity .35s var(--ease),transform .35s var(--ease);box-shadow:0 1px 1px rgba(0,0,0,.3);}
.msg.on{opacity:1;transform:none;}
.msg--out{align-self:flex-end;background:#005C4B;border-top-right-radius:0;}
.msg--out::before{content:"";position:absolute;right:-8px;top:0;border-width:0 0 10px 8px;border-style:solid;border-color:transparent transparent transparent #005C4B;}
.msg--in{align-self:flex-start;background:#202C33;border-top-left-radius:0;}
.msg--in::before{content:"";position:absolute;left:-8px;top:0;border-width:0 8px 10px 0;border-style:solid;border-color:transparent #202C33 transparent transparent;}
.msg .t{float:right;margin:8px 0 -4px 8px;font-size:11px;color:#8696A0;display:inline-flex;align-items:center;gap:3px;}
.msg--out .t svg{width:16px;height:11px;}
.msg .t .tick{color:#8696A0;}
.msg.read .t .tick{color:#53BDEB;}
.msg .t .clock{display:inline;}
.msg.sent .t .clock,.msg.read .t .clock{display:none;}
.msg .t .tick{display:none;}
.msg.sent .t .tick,.msg.read .t .tick{display:inline;}
.msg--link{padding:4px;}
.msg--link .lp{background:#025144;border-radius:6px;overflow:hidden;display:flex;gap:0;margin-bottom:4px;}
.msg--link .lp__img{width:64px;flex:none;background:linear-gradient(160deg,#0E2E3B,#155E77 60%,#2BC0D6);position:relative;}
.msg--link .lp__img::after{content:"";position:absolute;left:50%;top:40%;width:14px;height:14px;transform:translate(-50%,-50%);border-radius:50%;background:#FFD46B;box-shadow:0 0 12px 4px rgba(255,212,107,.5);}
.msg--link .lp__txt{padding:6px 8px;font-size:12.5px;line-height:1.3;}
.msg--link .lp__txt b{display:block;font-weight:600;color:#E9EDEF;}
.msg--link .lp__txt span{color:#8696A0;display:block;font-size:11.5px;}
.msg--link .url{color:#53BDEB;padding:2px 5px 4px;display:block;font-size:14px;}
.msg--link .t{margin-right:6px;}
.wa__typing{align-self:flex-start;display:flex;gap:4px;padding:10px 12px;background:#202C33;border-radius:8px;border-top-left-radius:0;opacity:0;transition:opacity .3s;}
.wa__typing.on{opacity:1;}
.wa__typing i{width:7px;height:7px;border-radius:50%;background:#8696A0;animation:dots 1s infinite;}
.wa__typing i:nth-child(2){animation-delay:.15s}.wa__typing i:nth-child(3){animation-delay:.3s}
@keyframes dots{0%,80%,100%{transform:translateY(0);opacity:.5}40%{transform:translateY(-5px);opacity:1}}
.wa__input{display:flex;align-items:center;gap:8px;padding:8px 10px 12px;background:#0B141A;}
.wa__field{flex:1;display:flex;align-items:center;gap:10px;background:#2A3942;border-radius:22px;padding:10px 12px;color:#8696A0;font-size:14px;}
.wa__field span{flex:1;}
.wa__mic{width:42px;height:42px;border-radius:50%;background:#00A884;display:grid;place-items:center;color:#fff;flex:none;}
.wa__home{position:absolute;left:50%;bottom:6px;width:120px;height:4px;border-radius:4px;background:rgba(255,255,255,.35);transform:translateX(-50%);}

/* ---------- до / после ---------- */
.compare{display:grid;grid-template-columns:1fr auto 1fr;gap:22px;align-items:stretch;}
@media (max-width:860px){.compare{grid-template-columns:1fr;} .compare__arrow{transform:rotate(90deg);justify-self:center;}}
.compare__arrow{align-self:center;width:64px;height:64px;border-radius:50%;background:var(--teal);color:#03202A;display:grid;place-items:center;box-shadow:var(--glow);animation:breathe 3.2s ease-in-out infinite;}
#compare.section{padding:clamp(60px,7vw,96px) 0;}
#compare .section-head{margin-bottom:36px;}
.panel{border-radius:var(--radius-lg);padding:34px 32px;display:flex;flex-direction:column;gap:18px;position:relative;overflow:hidden;}
.panel--before{background:var(--glass);border:1px solid var(--glass-line);}
.panel--after{background:linear-gradient(160deg,#1E9CBF,#2BC0D6 60%,#5EEBFF);color:#03202A;box-shadow:0 0 60px rgba(43,192,214,.35);}
.panel__label{align-self:flex-start;font-size:.95rem;font-weight:700;padding:7px 16px;border-radius:999px;background:rgba(255,255,255,.1);}
.panel--after .panel__label{background:rgba(3,32,42,.14);}
.panel__quote{font-size:clamp(1.5rem,2.4vw,2.1rem);font-weight:800;letter-spacing:-.025em;line-height:1.12;}
.panel ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;font-size:1.02rem;font-weight:600;}
.panel li{display:flex;gap:14px;align-items:flex-start;opacity:0;transform:translateX(-14px);transition:all .6s var(--ease);transition-delay:calc(.3s + var(--k)*.15s);}
.panel.in li,.no-js .panel li{opacity:1;transform:none;}
.panel li i{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:.9rem;font-weight:800;}
.panel--before li{color:var(--soft);} .panel--before li i{background:rgba(255,255,255,.08);}
.panel--after li i{background:rgba(3,32,42,.16);}
.url-pill{align-self:flex-start;background:rgba(3,32,42,.16);border-radius:999px;padding:12px 20px;font-size:.95rem;font-weight:700;}
.url-pill--none{background:rgba(255,255,255,.08);color:var(--soft);display:inline-flex;align-items:center;gap:10px;font-family:inherit;}
.url-pill--none i{width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.12);display:grid;place-items:center;font-style:normal;font-size:.8rem;}
.panel--before{justify-content:space-between;}

/* ---------- шаги ---------- */
.rail{position:relative;margin:10px 0 40px;height:6px;border-radius:99px;background:rgba(255,255,255,.08);}
.rail i{position:absolute;left:0;top:0;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--teal),var(--cyan));box-shadow:0 0 16px var(--cyan);transition:width 2.6s var(--ease);}
.rail.on i{width:100%;}
.rail .ship{position:absolute;top:50%;left:0;width:44px;height:44px;transform:translate(-50%,-50%) rotate(90deg);transition:left 2.6s var(--ease);filter:drop-shadow(0 0 10px var(--cyan));}
.rail .ship img{width:100%;height:100%;object-fit:contain;}
.rail.on .ship{left:100%;}
@media (max-width:1080px){.rail{display:none;}}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;}
@media (max-width:1080px){.steps{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.steps{grid-template-columns:1fr;}}
.step{background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--radius);padding:30px 24px;display:flex;flex-direction:column;gap:14px;transition:border-color .5s,background .5s,transform .5s var(--ease);}
.step.on{border-color:rgba(94,235,255,.5);background:rgba(43,192,214,.1);transform:translateY(-6px);}
.step__n{font-weight:700;font-size:.95rem;color:var(--dim);transition:color .5s;}
.step.on .step__n{color:var(--cyan);}
.step h3{font-size:1.3rem;}
.step p{color:var(--soft);font-size:1rem;line-height:1.45;}
.callout{margin-top:36px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;background:rgba(43,192,214,.1);border:1px solid rgba(94,235,255,.25);border-radius:var(--radius);padding:28px 32px;font-size:1.12rem;font-weight:600;color:#DCEFF6;}
.callout b{color:#fff;}
.callout--kid{}
.callout__kid{width:150px;height:auto;margin:-70px 0 0 24px;transform:scaleX(-1);filter:drop-shadow(0 20px 30px rgba(11,42,71,.35));flex:none;}
.callout__txt{display:flex;align-items:center;gap:20px;flex:1;flex-wrap:wrap;}
@media (max-width:640px){.callout__kid{display:none;} .callout--kid{padding:0 28px;}}

/* ---------- технологии ---------- */
.marquee{overflow:hidden;position:relative;padding:8px 0;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);}
.marquee__track{display:flex;gap:14px;width:max-content;animation:marquee 34s linear infinite;}
.marquee--rev .marquee__track{animation-direction:reverse;animation-duration:40s;}
.marquee:hover .marquee__track{animation-play-state:paused;}
@keyframes marquee{to{transform:translateX(-50%);}}
.tag{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-line);font-weight:700;font-size:1rem;white-space:nowrap;}
.tag i{width:10px;height:10px;border-radius:50%;background:var(--teal);box-shadow:0 0 10px var(--cyan);}
.tag--gold i{background:var(--gold);box-shadow:0 0 10px var(--gold);}
.tech{display:flex;flex-direction:column;gap:12px;background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--radius);padding:32px 28px;transition:transform .35s var(--ease),border-color .35s;}
.tech:hover{transform:translateY(-6px);border-color:rgba(94,235,255,.35);}
.tech__name{font-weight:800;font-size:1.4rem;letter-spacing:-.02em;color:var(--cyan);}
.tech p{color:var(--soft);font-size:1.02rem;}

/* ---------- партнёрство + цифры ---------- */
.pair{display:flex;align-items:center;gap:clamp(18px,3vw,40px);flex-wrap:wrap;}
.pair img{height:110px;width:auto;filter:drop-shadow(0 0 24px rgba(43,192,214,.4));}
.pair__x{font-size:clamp(2.6rem,5vw,4.2rem);font-weight:300;color:var(--cyan);line-height:1;text-shadow:0 0 30px var(--cyan);}
.pair__df{font-weight:800;letter-spacing:-.04em;font-size:clamp(2.4rem,5vw,4.2rem);line-height:1;}
.pair__df span{color:var(--cyan);}
.pair__sub{font-size:clamp(1.3rem,2vw,1.8rem);color:#fff;}
.offer-check{display:inline-flex;gap:12px;align-items:center;background:rgba(43,192,214,.14);border:1px solid rgba(94,235,255,.3);padding:14px 22px;border-radius:999px;font-weight:700;font-size:1rem;}
.offer-check i{width:26px;height:26px;border-radius:50%;background:var(--teal);color:#03202A;display:grid;place-items:center;font-style:normal;font-weight:800;font-size:.85rem;}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:50px;}
@media (max-width:1080px){.facts{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.facts{grid-template-columns:1fr;}}
.fact{background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--radius);padding:30px 26px;display:flex;flex-direction:column;gap:8px;}
.fact .num{font-size:clamp(2.6rem,4.6vw,4rem);font-weight:900;letter-spacing:-.04em;line-height:1;color:#fff;display:inline-block;transform:scale(.6);opacity:0;transition:transform .8s cubic-bezier(.34,1.56,.64,1),opacity .5s;}
.fact.in .num,.no-js .fact .num{transform:none;opacity:1;}
.fact .num small{font-size:.45em;font-weight:800;color:var(--cyan);margin-left:4px;letter-spacing:0;}
.fact strong{font-size:1.1rem;font-weight:800;letter-spacing:-.01em;}
.fact p{color:var(--soft);font-size:.98rem;}

/* ---------- оффер ---------- */
.offer{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,5vw,70px);align-items:center;}
@media (max-width:880px){.offer{grid-template-columns:1fr;}}
.ticket{position:relative;background:linear-gradient(160deg,#2BC0D6,#1478A0);border-radius:var(--radius-lg);padding:54px 44px;color:#03202A;text-align:center;display:flex;flex-direction:column;gap:8px;box-shadow:0 0 80px rgba(43,192,214,.35);overflow:hidden;}
.ticket::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);background-size:250% 100%;animation:shine 5s ease-in-out infinite;}
@keyframes shine{0%{background-position:150% 0;}60%,100%{background-position:-150% 0;}}
.ticket__n{font-size:clamp(5rem,12vw,9rem);font-weight:900;line-height:.85;letter-spacing:-.06em;display:inline-block;}
.ticket.in .ticket__n{animation:pop 1s cubic-bezier(.34,1.56,.64,1) .3s both;}
@keyframes pop{0%{transform:scale(.3) rotate(-10deg);opacity:0;}100%{transform:none;opacity:1;}}
.ticket__label{font-size:.98rem;font-weight:700;opacity:.75;}
.ticket__cap{font-size:1.2rem;font-weight:800;}

/* ---------- FAQ ---------- */
.faq{display:flex;flex-direction:column;gap:14px;max-width:920px;}
.q{background:var(--glass);border:1px solid var(--glass-line);border-radius:22px;padding:0 28px;transition:border-color .3s,background .3s;}
.q.open{border-color:rgba(94,235,255,.4);background:var(--glass-2);}
.q__btn{width:100%;background:none;border:0;color:inherit;font:inherit;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;text-align:left;font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:700;letter-spacing:-.015em;}
.q__btn .plus{flex:none;width:38px;height:38px;border-radius:50%;background:rgba(43,192,214,.16);color:var(--cyan);display:grid;place-items:center;transition:transform .35s var(--ease),background .3s;}
.q.open .plus{transform:rotate(45deg);background:var(--teal);color:#03202A;}
.q__body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease);}
.q.open .q__body{grid-template-rows:1fr;}
.q__body>div{overflow:hidden;}
.q__body p{padding:0 0 26px;color:var(--soft);font-size:1.04rem;max-width:70ch;}

/* ---------- финал + подвал + наверх ---------- */
.final{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--sky-1),var(--sky-0));text-align:center;padding:clamp(110px,14vw,190px) 0;}
.final__in{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:28px;}
.final h2{font-size:clamp(2.5rem,6vw,5.2rem);max-width:18ch;}
.final .lead{text-align:center;}
#stars2{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.final__rocket{position:absolute;left:4%;bottom:-20%;width:130px;opacity:0;transform:rotate(28deg);filter:drop-shadow(0 0 30px rgba(43,192,214,.4));z-index:1;animation:flyacross 9s ease-in-out 1s infinite;}
@keyframes flyacross{0%{left:2%;bottom:-25%;opacity:0;transform:rotate(28deg) scale(.9);}8%{opacity:1;}45%{left:20%;bottom:40%;opacity:1;transform:rotate(22deg) scale(1);}70%{left:34%;bottom:105%;opacity:0;transform:rotate(18deg) scale(1.05);}100%{left:34%;bottom:105%;opacity:0;}}
@media (max-width:900px){.final__rocket{display:none;}}

.footer{background:var(--ink);color:var(--soft);padding:54px 0;border-top:1px solid rgba(255,255,255,.06);}
.footer__in{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;font-size:.95rem;font-weight:500;}
.footer a:hover{color:var(--cyan);}
.footer .logo{height:64px;filter:none;}
.totop{position:fixed;right:24px;bottom:24px;z-index:70;width:58px;height:58px;border-radius:50%;background:rgba(6,22,40,.8);border:1px solid rgba(94,235,255,.35);box-shadow:0 0 24px rgba(43,192,214,.4);display:grid;place-items:center;cursor:pointer;opacity:0;transform:translateY(20px);transition:opacity .4s,transform .4s var(--ease);}
.totop.show{opacity:1;transform:none;}
.totop img{width:30px;height:auto;transition:transform .5s var(--ease);}
.totop:hover img{transform:translateY(-4px);}
.totop.fly img{animation:fly .9s cubic-bezier(.16,.84,.3,1) forwards;}
@keyframes fly{to{transform:translateY(-120px);opacity:0;}}

@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important;}
  .reveal,.hero__copy>*,.words .w,.panel li,.fact .num{opacity:1;transform:none;}
}

/* ===================== СВЕТЛЫЕ СЕКЦИИ («над облаками») ===================== */
.section--light{--text:#0B2A47;--soft:#4C6A85;--dim:#7F97AB;--glass:#FFFFFF;--glass-2:#FFFFFF;--glass-line:#D6E6F2;
  background:linear-gradient(180deg,#DCEBF7 0%,#F4F9FD 28%,#EEF5FB 100%);color:var(--text);}
.section--light .eyebrow{color:var(--teal-deep);}
.section--light .eyebrow i{box-shadow:none;}
.section--light .grad{background:linear-gradient(110deg,#0B2A47 0%,#0E7E99 40%,#2BC0D6 70%,#7ADCF0 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;}
.section--light .card,.section--light .tech,.section--light .step,.section--light .q{box-shadow:0 14px 34px -22px rgba(11,42,71,.35);backdrop-filter:none;}
.section--light .card:hover,.section--light .tech:hover{border-color:rgba(43,192,214,.6);box-shadow:0 30px 50px -28px rgba(11,42,71,.4);}
.section--light .card::before{background:radial-gradient(400px 200px at var(--mx,50%) var(--my,0%),rgba(43,192,214,.16),transparent 60%);}
.section--light .btn--outline{color:var(--teal-deep);background:rgba(255,255,255,.7);}
.section--light .btn--outline:hover{color:#fff;background:var(--teal);}
.section--light .rail{background:rgba(11,42,71,.1);}
.section--light .step.on{background:#EAF8FB;border-color:var(--teal);}
.section--light .callout{background:#FFFFFF;border-color:#D6E6F2;color:var(--text);box-shadow:0 14px 34px -22px rgba(11,42,71,.35);}
.section--light .callout b{color:var(--teal-deep);}
.section--light .tag{background:#fff;border-color:#D6E6F2;color:var(--text);}
.section--light .tech__name{color:var(--teal-deep);}
.section--light .q.open{background:#fff;border-color:var(--teal);}
.section--light .q__btn .plus{background:#E4F5F9;color:var(--teal-deep);}
.section--light .step__n{color:var(--dim);} .section--light .step.on .step__n{color:var(--teal-deep);}
.sky-clouds{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.sky-clouds .cloud{opacity:.9;filter:blur(3px);}
.cloud--a{left:-6%;top:10%;bottom:auto;transform:scale(.8);animation-duration:26s;}
.cloud--b{right:-4%;left:auto;top:30%;bottom:auto;transform:scale(1.1);animation-duration:31s;}
.cloud--c{left:40%;bottom:-40px;transform:scale(1.3);animation-duration:23s;}

/* ===================== КОСМИЧЕСКИЕ СЕКЦИИ (ночь сайта) ===================== */
.section--space{color:var(--text);overflow:hidden;
  background-color:#0D2F52;
  background-image:
    radial-gradient(1.6px 1.6px at 12% 22%,#fff 50%,transparent 52%),radial-gradient(1.2px 1.2px at 28% 68%,#fff 50%,transparent 52%),
    radial-gradient(1.8px 1.8px at 44% 14%,#CFEFFF 50%,transparent 52%),radial-gradient(1.2px 1.2px at 61% 78%,#fff 50%,transparent 52%),
    radial-gradient(1.5px 1.5px at 73% 30%,#fff 50%,transparent 52%),radial-gradient(1.2px 1.2px at 86% 62%,#CFEFFF 50%,transparent 52%),
    radial-gradient(1.2px 1.2px at 92% 12%,#fff 50%,transparent 52%),radial-gradient(1.4px 1.4px at 8% 84%,#fff 50%,transparent 52%),
    radial-gradient(1.2px 1.2px at 52% 48%,#fff 50%,transparent 52%),radial-gradient(1.2px 1.2px at 36% 90%,#CFEFFF 50%,transparent 52%),
    linear-gradient(180deg,#0B2A47 0%,#10375E 50%,#0B2A47 100%);}
.planet{position:absolute;border-radius:50%;pointer-events:none;z-index:0;}
.planet--small{width:90px;height:90px;background:radial-gradient(circle at 35% 30%,#FFE7A8,#F2A65A 45%,#8A4B2E 80%);box-shadow:0 0 40px rgba(242,166,90,.35);animation:hover 9s ease-in-out infinite;}
.planet--blue{width:220px;height:220px;background:radial-gradient(circle at 35% 30%,#8AE3F5,#2BC0D6 40%,#0E4E6E 75%,#062036);box-shadow:0 0 80px rgba(43,192,214,.3);opacity:.9;animation:hover 11s ease-in-out infinite;}
.planet--ring{width:240px;height:240px;background:radial-gradient(circle at 35% 30%,#FFF1C9,#F2B75A 40%,#B36A2E 75%,#4A2A18);box-shadow:0 0 60px rgba(242,183,90,.25);animation:hover 12s ease-in-out infinite;}
.planet--ring::after{content:"";position:absolute;left:50%;top:50%;width:175%;height:36%;border:14px solid rgba(255,225,170,.45);border-radius:50%;transform:translate(-50%,-50%) rotate(-18deg);}
.planet--far{opacity:.5;transform:scale(.7);}
.hero__planet{left:60%;top:4%;width:64px;height:64px;z-index:1;}
@media (max-width:980px){.hero__planet{display:none;}}
.orbit{position:absolute;width:640px;height:640px;border:1px dashed rgba(94,235,255,.28);border-radius:50%;transform:translate(-50%,-50%);animation:spin 40s linear infinite;pointer-events:none;z-index:0;}
.orbit i{position:absolute;left:50%;top:-7px;width:14px;height:14px;border-radius:50%;background:var(--cyan);box-shadow:0 0 18px var(--cyan);margin-left:-7px;}
.comet{position:absolute;top:18%;left:-20%;width:260px;height:3px;border-radius:3px;background:linear-gradient(90deg,transparent,#fff);transform:rotate(-20deg);animation:comet 11s ease-in 2s infinite;opacity:0;pointer-events:none;z-index:0;}
.comet::after{content:"";position:absolute;right:-6px;top:-5px;width:13px;height:13px;border-radius:50%;background:#fff;box-shadow:0 0 20px 6px rgba(255,255,255,.7);}
.comet--2{animation-delay:6s;top:70%;}
@keyframes comet{0%{left:-20%;top:10%;opacity:0;}4%{opacity:1;}28%{left:110%;top:58%;opacity:0;}100%{left:110%;opacity:0;}}
.section--space .fact .ico{margin-bottom:6px;}
.section--space .story__in,.section--space .compare,.section--space .facts,.section--space .offer,.section--space .section-head{position:relative;z-index:1;}

/* градиент на словах заголовка */
.grad-host .w{background:linear-gradient(110deg,#1E9CBF 0%,#2BC0D6 30%,#9AEFFF 50%,#2BC0D6 70%,#1E9CBF 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:word .8s var(--ease) forwards, shimmer 6s linear infinite;}

/* ===================== МОБИЛЬНАЯ АДАПТАЦИЯ ===================== */
@media (max-width:640px){
  body{font-size:18px;}
  .wrap{padding:0 18px;}
  h2{font-size:clamp(1.9rem,8vw,2.4rem);}
  .section{padding:64px 0;}
  .section-head{margin-bottom:32px;gap:16px;}
  .hero__in{padding-top:28px;padding-bottom:230px;gap:24px;}
  .hero h1{font-size:2.1rem;}
  .hero .lead{font-size:1rem;line-height:1.6;}
  .hero__cta{width:100%;flex-direction:column;}
  .hero__cta .btn{width:100%;}
  .launch{height:300px;}
  .rocket-wrap{width:150px;}
  .wheel{display:none;}
  .city{height:170px;} .city--far{height:140px;} .clouds{height:170px;}
  .demo{margin:-120px auto 50px;}
  .browser{border-radius:24px;}
  .browser__bar{padding:12px 14px;gap:10px;}
  .browser__url{font-size:.8rem;padding:9px 12px;}
  .copied{display:none;}
  .term{padding:20px 18px;font-size:.85rem;line-height:1.6;}
  .preview{padding:16px 16px 20px;}
  /* история: телефон по центру, ребёнок скрыт */
  .scene{min-height:0;flex-direction:column;align-items:center;}
  .phone{width:min(320px,100%);margin-bottom:0;}
  .kid-wrap{display:none;}
  .scene__ground{display:none;}
  .story__in{gap:36px;grid-template-columns:minmax(0,1fr);} .story__copy{min-width:0;}
  .planet,.orbit,.comet,.moon,.hero__planet{display:none;}
  .term .l{display:block;} .term .l b{margin-right:6px;} .term .bar{margin:8px 0 10px;}
  .offer,.compare,.grid,.steps,.facts{grid-template-columns:minmax(0,1fr);}
  /* до/после компактнее */
  .compare{gap:14px;}
  .panel{padding:22px 20px;gap:12px;border-radius:24px;}
  .panel__quote{font-size:1.25rem;}
  .panel ul{gap:8px;font-size:.95rem;}
  .panel li i{width:24px;height:24px;font-size:.8rem;}
  .compare__arrow{width:48px;height:48px;}
  .url-pill{padding:10px 16px;font-size:.85rem;}
  #compare.section{padding:56px 0;}
  .card,.tech,.step{padding:26px 22px;border-radius:22px;}
  .callout{padding:22px;font-size:1rem;}
  .ticket{padding:36px 24px;}
  .final{padding:80px 0;}
  .final .hero__cta .btn{width:100%;}
  .totop{width:48px;height:48px;right:14px;bottom:14px;}
  .footer__in{flex-direction:column;align-items:flex-start;}
}
/* подвал: документы, как на основном сайте */
.footer__docs{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:.9rem;margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);width:100%;}
.footer__legal{font-size:.82rem;color:var(--dim);line-height:1.6;margin-top:16px;width:100%;}

/* ===================== ФОРМА ЗАЯВКИ ===================== */
.leadgrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,70px);align-items:center;}
@media (max-width:900px){.leadgrid{grid-template-columns:1fr;}}
.lead__copy{display:flex;flex-direction:column;gap:22px;align-items:flex-start;}
.lead__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;font-weight:600;font-size:1.02rem;color:var(--text);}
.lead__list li{display:flex;gap:12px;align-items:flex-start;}
.lead__list li i{flex:none;width:26px;height:26px;border-radius:50%;background:var(--teal);color:#fff;display:grid;place-items:center;font-style:normal;font-size:.8rem;font-weight:800;margin-top:2px;}
.form{position:relative;background:#fff;border:1px solid #D6E6F2;border-radius:var(--radius-lg);padding:38px 34px;display:flex;flex-direction:column;gap:16px;box-shadow:0 30px 60px -30px rgba(11,42,71,.35);}
.field{display:flex;flex-direction:column;gap:8px;}
.field__label{font-size:.9rem;font-weight:700;color:var(--soft);}
.field input{font-family:inherit;font-size:1.05rem;font-weight:500;color:var(--text);background:#F3F8FC;border:2px solid #DCE9F2;border-radius:999px;padding:0 22px;height:58px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s;width:100%;}
.field input::placeholder{color:#9AB2C4;}
.field input:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 4px rgba(43,192,214,.18);}
.field__err{display:none;font-size:.85rem;color:#D64545;font-weight:600;padding-left:22px;}
.field.is-invalid input{border-color:#E06565;background:#FFF5F5;}
.field.is-invalid .field__err{display:block;}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:.88rem;color:var(--soft);cursor:pointer;line-height:1.45;}
.consent a{color:var(--teal-deep);text-decoration:underline;text-underline-offset:3px;}
.consent input{position:absolute;opacity:0;width:0;height:0;}
.consent__box{flex:none;width:24px;height:24px;border-radius:8px;border:2px solid #C9DAE6;background:#fff;margin-top:1px;position:relative;transition:all .2s;}
.consent input:checked + .consent__box{background:var(--teal);border-color:var(--teal);}
.consent input:checked + .consent__box::after{content:"";position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(45deg);}
.consent input:focus-visible + .consent__box{box-shadow:0 0 0 4px rgba(43,192,214,.25);}
.consent.is-invalid .consent__box{border-color:#E06565;}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;}
.form__submit{width:100%;margin-top:4px;}
.form__spinner{display:none;width:22px;height:22px;border-radius:50%;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin .8s linear infinite;}
.form.is-sending .form__spinner{display:block;} .form.is-sending .form__label{display:none;} .form.is-sending .form__submit{pointer-events:none;}
.form__note{font-size:.8rem;color:var(--dim);text-align:center;}
.form__done{display:none;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:20px 0 6px;}
.form__done img{width:70px;height:auto;animation:hover 4s ease-in-out infinite;filter:drop-shadow(0 12px 20px rgba(11,42,71,.3));}
.form__done strong{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;}
.form__done p{color:var(--soft);}
.form.is-done>*{display:none;} .form.is-done .form__done{display:flex;}
.form__error{display:none;font-size:.9rem;color:#D64545;font-weight:600;text-align:center;}
.form.is-error .form__error{display:block;} .form__error a{text-decoration:underline;}
@media (max-width:640px){.form{padding:26px 20px;border-radius:26px;} .field input{height:54px;font-size:1rem;} .leadgrid{grid-template-columns:minmax(0,1fr);}}
