@font-face{font-family:"Golos";src:url("assets/fonts/GolosText-400.ttf");font-weight:400;font-display:swap}
@font-face{font-family:"Golos";src:url("assets/fonts/GolosText-500.ttf");font-weight:500;font-display:swap}
@font-face{font-family:"Golos";src:url("assets/fonts/GolosText-600.ttf");font-weight:600;font-display:swap}
@font-face{font-family:"Golos";src:url("assets/fonts/GolosText-700.ttf");font-weight:700;font-display:swap}
@font-face{font-family:"Golos";src:url("assets/fonts/GolosText-800.ttf");font-weight:800;font-display:swap}
@font-face{font-family:"Mono";src:url("assets/fonts/JetBrainsMono-500.ttf");font-weight:500;font-display:swap}

:root{
  --dark:#0b0e13;--dark2:#10141b;--dcard:#161b24;--dline:rgba(255,255,255,.09);
  --light:#f4f6f9;--white:#fff;--lline:#e4e8ee;
  --ink:#0f1318;--ink2:#3d4552;--mut:#6b7482;--dmut:#9aa3b2;
  --green:#3fbf6f;--green-d:#2c9a56;--green-l:#e6f6ec;--gold:#e0b84a;
  --ease:cubic-bezier(.32,.72,0,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--light);color:var(--ink);font-family:"Golos",-apple-system,BlinkMacSystemFont,sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
h1,h2,h3{margin:0;letter-spacing:-.025em;line-height:1.08;font-weight:800}
h1{font-size:clamp(38px,5.2vw,66px)}
h2{font-size:clamp(30px,3.6vw,46px)}
h3{font-size:19px;line-height:1.3;letter-spacing:-.01em;font-weight:700}
p{margin:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.mono{font-family:"Mono",monospace;letter-spacing:.2em;text-transform:uppercase;font-size:11px}
.kicker{display:block;color:var(--green-d);margin-bottom:14px}
.dark .kicker{color:var(--green)}
.accent{color:var(--green)}
section{padding:104px 0}
.dark{background:var(--dark);color:#f3f5f8}
.dark .mut{color:var(--dmut)}
.mut{color:var(--mut)}
.center{text-align:center}
.center .lead{margin-left:auto;margin-right:auto}
.lead{font-size:clamp(17px,1.4vw,19px);color:var(--mut);max-width:620px;margin-top:18px}
.dark .lead{color:var(--dmut)}
.head{margin-bottom:56px}

/* Шапка */
.nav{position:fixed;top:0;left:0;right:0;z-index:40;transition:background .6s var(--ease),border-color .6s var(--ease)}
.nav .in{display:flex;align-items:center;gap:28px;height:72px}
.nav .brand{flex:0 0 auto}
.nav .brand img{height:24px;width:auto;max-width:none}
.nav .links{display:flex;gap:4px;margin-left:auto}
.nav .links a{padding:8px 12px;border-radius:999px;font-size:14px;color:#c9d0da;white-space:nowrap;transition:color .4s var(--ease),background .4s var(--ease)}
.nav .btn{flex:0 0 auto}
.nav .links a:hover{color:#fff;background:rgba(255,255,255,.08)}
.nav.solid{background:rgba(11,14,19,.86);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--dline)}

/* Кнопки */
.btn{display:inline-flex;align-items:center;gap:12px;padding:12px 12px 12px 22px;border-radius:999px;font-weight:600;font-size:15px;border:1px solid transparent;cursor:pointer;white-space:nowrap;
  transition:transform .6s var(--ease),background .6s var(--ease),border-color .6s var(--ease),color .6s var(--ease)}
.btn:active{transform:scale(.98)}
.btn .ic{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;transition:transform .6s var(--ease)}
.btn:hover .ic{transform:translate(2px,-1px)}
.btn-primary{background:var(--green);color:#06130b}
.btn-primary .ic{background:rgba(0,0,0,.14)}
.btn-primary:hover{background:#4ccb7b}
.btn-ghost{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#fff}
.btn-ghost .ic{background:rgba(255,255,255,.1)}
.btn-ghost:hover{background:rgba(255,255,255,.11)}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark .ic{background:rgba(255,255,255,.14)}
.btn-dark:hover{background:#242a33}
.btn-sm{padding:9px 9px 9px 16px;font-size:14px}
.btn-sm .ic{width:26px;height:26px;font-size:12px}

/* Бейджи сторов */
.stores{display:flex;flex-wrap:wrap;gap:12px}
.store{display:flex;align-items:center;gap:12px;padding:10px 18px 10px 14px;border-radius:14px;background:#fff;color:var(--ink);border:1px solid rgba(0,0,0,.08);transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.store:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.25)}
.store svg{width:26px;height:26px;flex:0 0 auto}
.store .t{display:flex;flex-direction:column;line-height:1.15}
.store .t small{font-size:11px;color:var(--mut)}
.store .t b{font-size:15px;font-weight:700}

/* Рамка телефона: все размеры в em от font-size рамки, поэтому масштабируется целиком.
   10px = пропорции iPhone шириной ~320px; .sm = 7.7px; на телефоне font-size задается в vw */
.device{position:relative;font-size:10px;background:#0a0b0e;border-radius:5.2em;padding:1.1em;
  box-shadow:0 0 0 .15em #1a1d22,0 0 0 .55em #3d424b,0 0 0 .7em #23262c,0 6em 10em -3em rgba(0,0,0,.65),0 2em 4em -2em rgba(0,0,0,.5)}
.device:before{content:"";position:absolute;inset:-.7em;border-radius:5.9em;pointer-events:none;
  background:linear-gradient(160deg,rgba(255,255,255,.55) 0%,rgba(255,255,255,.08) 18%,rgba(255,255,255,0) 40%,rgba(255,255,255,0) 60%,rgba(255,255,255,.12) 85%,rgba(255,255,255,.35) 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;padding:.55em}
.device .screen{position:relative;border-radius:4.2em;overflow:hidden;background:#000}
.device .screen img{width:100%}
.device .screen:after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.10) 0%,rgba(255,255,255,.03) 28%,rgba(255,255,255,0) 45%)}
.device:after{content:"";position:absolute;left:50%;top:2.2em;width:9.2em;height:2.7em;margin-left:-4.6em;border-radius:2em;background:#000;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.device .isl{position:absolute;left:50%;top:2.2em;width:9.2em;height:2.7em;margin-left:-4.6em;z-index:2;pointer-events:none}
.device .isl:after{content:"";position:absolute;right:.9em;top:.8em;width:1.1em;height:1.1em;border-radius:50%;
  background:radial-gradient(circle at 40% 40%,#2b3340 0%,#0b0e14 55%,#000 100%);box-shadow:0 0 0 1px rgba(255,255,255,.06)}
.device .k{position:absolute;width:.3em;border-radius:.15em 0 0 .15em;background:linear-gradient(180deg,#444951,#2a2e35 30%,#23262c);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),-1px 0 0 rgba(0,0,0,.35)}
.device .k.a{left:-.95em;top:11.8em;height:2.6em}
.device .k.vu{left:-.95em;top:16.6em;height:5em}
.device .k.vd{left:-.95em;top:22.8em;height:5em}
.device .k.p{right:-.95em;left:auto;top:19em;height:8.2em;border-radius:0 .15em .15em 0;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),1px 0 0 rgba(0,0,0,.35)}
.device.sm{font-size:7.7px}

/* Первый экран */
.hero{position:relative;padding:168px 0 0;overflow:hidden}
.hero .bg{position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(900px 560px at 18% 0%,rgba(63,191,111,.18),transparent 60%),radial-gradient(700px 500px at 100% 70%,rgba(63,191,111,.08),transparent 60%)}
.hero .grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end}
.hero .copy{padding-bottom:104px}
.hero h1 .accent{display:block}
.hero .lead{max-width:540px}
.hero .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.hero .stores{margin-top:30px}
.hero .shot{position:relative;display:flex;justify-content:center;align-items:flex-end;height:620px}
.hero .shot .device{width:320px;transform:translateY(60px) rotate(-6deg);transform-origin:bottom center}
.hero .shot .device.second{position:absolute;right:0;bottom:0;width:260px;transform:translateY(120px) rotate(8deg)}

/* Что такое */
.about .grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.about .phones{display:flex;gap:20px;justify-content:center;align-items:flex-end}
.about .phones .device{width:230px}
.about .phones .device:first-child{transform:translateY(-36px)}
.cards{display:flex;flex-direction:column;gap:14px}
.card{background:var(--white);border:1px solid var(--lline);border-radius:20px;padding:24px 26px;box-shadow:0 14px 40px -24px rgba(15,19,24,.25)}
.card h3{margin-bottom:8px}
.card p{color:var(--mut);font-size:15.5px}
.card b{color:var(--ink)}

/* Возможности с иконками */
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.feat{background:var(--white);border:1px solid var(--lline);border-radius:20px;padding:26px 26px 28px;display:flex;flex-direction:column;gap:14px;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.feat:hover{transform:translateY(-3px);box-shadow:0 24px 50px -28px rgba(15,19,24,.35)}
.feat .ico{width:52px;height:52px;border-radius:16px;background:var(--light);border:1px solid var(--lline);display:flex;align-items:center;justify-content:center}
.feat .ico svg{width:30px;height:30px;overflow:visible}
.feat p{color:var(--mut);font-size:15px}

/* Что вы получаете */
.gets{position:relative;overflow:hidden}
.gets .bg{position:absolute;inset:0;pointer-events:none;background:radial-gradient(700px 420px at 85% 30%,rgba(63,191,111,.14),transparent 60%)}
.gets .wrap{position:relative}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;position:relative}
.steps:before{content:"";position:absolute;left:28px;right:28px;top:28px;border-top:1px dashed rgba(255,255,255,.18)}
.step{position:relative}
.step .n{width:56px;height:56px;border-radius:50%;background:var(--dark);border:1.5px solid var(--green);color:var(--green);font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;margin-bottom:22px;position:relative}
.step h3{margin-bottom:10px;color:#fff}
.step p{color:var(--dmut);font-size:15px}

/* Детальные блоки с экранами */
.show{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:36px 0}
.show+.show{border-top:1px solid var(--lline)}
.show .pic{display:flex;justify-content:center;gap:20px;align-items:flex-end}
.show .pic .device{width:250px}
.show .pic .device+.device{transform:translateY(34px)}
.show.rev .pic{order:2}
.show .list{display:flex;flex-direction:column;gap:12px;margin-top:22px}
.show .list div{display:flex;gap:12px;align-items:flex-start;color:var(--ink2);font-size:16px}
.show .list i{flex:0 0 auto;width:24px;height:24px;display:flex;align-items:center;justify-content:center;margin-top:1px}
.show .list i svg{width:24px;height:24px;overflow:visible}

/* Клиенты */
.clients .row{display:flex;justify-content:center;gap:64px;flex-wrap:wrap;align-items:center}
.clients .c{display:flex;flex-direction:column;align-items:center;gap:14px;color:var(--ink2);font-weight:600;font-size:15px}
.clients .c .lg{width:150px;height:110px;display:flex;align-items:center;justify-content:center;background:var(--dark);border-radius:24px;padding:20px}
.clients .c .lg img{max-height:70px;max-width:110px}

/* SEO-текст */
.seo{padding:72px 0;background:var(--white);border-top:1px solid var(--lline);border-bottom:1px solid var(--lline)}
.seo .grid{display:grid;grid-template-columns:1fr 1.3fr;gap:48px;align-items:start}
.seo .txt p{color:var(--ink2);font-size:16px;line-height:1.6}
.seo .txt p+p{margin-top:12px}
@media(max-width:980px){.seo .grid{grid-template-columns:1fr;gap:20px}}

/* FAQ */
.faq{max-width:820px;margin:0 auto}
.faq details{border-bottom:1px solid var(--lline);padding:6px 0}
.faq summary{list-style:none;cursor:pointer;display:flex;gap:16px;align-items:center;padding:16px 0;font-weight:600;font-size:17px}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{flex:0 0 auto;width:26px;height:26px;display:flex;align-items:center;justify-content:center;transition:transform .5s var(--ease)}
.faq summary i svg{width:26px;height:26px;overflow:visible}
.faq details[open] summary i{transform:rotate(45deg)}
.faq .a{padding:0 0 18px 42px;color:var(--mut);font-size:16px}

/* Контакты и форма */
.contact .grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.contact .lead{max-width:460px}
.contacts{display:flex;flex-direction:column;gap:10px;margin-top:30px}
.contacts a{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-radius:16px;border:1px solid var(--dline);background:rgba(255,255,255,.04);transition:border-color .6s var(--ease),background .6s var(--ease)}
.contacts a:hover{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.07)}
.contacts a .k{color:var(--dmut);font-size:14px}
.contacts a .v{font-weight:600}
.form{background:var(--white);color:var(--ink);border-radius:24px;padding:28px}
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}
.field label{font-size:13px;color:var(--mut)}
.field input,.field textarea{font:inherit;color:var(--ink);background:var(--light);border:1px solid var(--lline);border-radius:12px;padding:13px 15px;outline:none;transition:border-color .5s var(--ease),box-shadow .5s var(--ease)}
.field input:focus,.field textarea:focus{border-color:var(--green-d);box-shadow:0 0 0 3px rgba(63,191,111,.18)}
.field textarea{min-height:100px;resize:vertical}
.field.hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.form{position:relative}
.form .hint{color:var(--mut);font-size:13px;margin-top:12px}
.consent{display:flex;gap:12px;align-items:flex-start;margin:4px 0 18px;font-size:14px;color:var(--ink2);line-height:1.45;cursor:pointer}
.consent input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0;accent-color:var(--green-d)}
.consent a{color:var(--green-d);font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* Подвал */
footer{background:var(--dark);color:var(--dmut);padding:32px 0 40px;border-top:1px solid var(--dline);font-size:14px}
footer .row{display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center;justify-content:space-between}
footer nav{display:flex;gap:22px}
footer nav a:hover{color:#fff}
footer img{height:20px;opacity:.9}

/* Появление */
.rv{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* Адаптив */
@media(max-width:980px){
  .hero .grid{grid-template-columns:1fr;gap:0}
  .hero .copy{padding-bottom:56px}
  .hero .shot{height:460px}
  .hero .shot .device{width:250px;font-size:7.8px;transform:translateY(40px) rotate(-4deg)}
  .hero .shot .device.second{display:none}
  .about .grid,.show,.contact .grid{grid-template-columns:1fr}
  .show.rev .pic{order:0}
  .features{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr;gap:36px 24px}
  .steps:before{display:none}
}
@media(max-width:1080px){
  .nav .links{display:none}
}
@media(max-width:640px){
  body{font-size:16px}
  section{padding:72px 0}
  .wrap{padding:0 18px}
  .nav .links{display:none}
  .nav .in{height:64px}
  .hero{padding-top:120px}
  .hero .copy{padding-bottom:40px}
  .hero .shot{height:auto;padding:10px 0 32px}
  .hero .shot .device{width:72vw;font-size:2.25vw;transform:none}
  .features,.steps{grid-template-columns:1fr}
  .about .phones{gap:4vw}
  .about .phones .device{width:45%;font-size:1.4vw}
  .about .phones .device:first-child{transform:translateY(-16px)}
  .show .pic{gap:4vw}
  .show .pic .device{width:45%;font-size:1.4vw}
  .show .pic .device+.device{transform:translateY(16px)}
  .clients .row{gap:28px}
  .form{padding:20px}
}
