/* EFIMOV DEV - дизайн-система v2 (редизайн 10.2026). Токены - из «Дизайн-система.dc.html».
   Брейкпоинты: 1440 (макет) → 1280 → 1024 → 768 → 390 (мобильный макет). */

/* ---------- шрифты: свои файлы, кириллица + латиница; файлы переменные - один файл на семейство и алфавит ---------- */
@font-face{font-family:'Unbounded';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/v2/fonts/unbounded-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Unbounded';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/v2/fonts/unbounded-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/v2/fonts/golos-cyrillic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/v2/fonts/golos-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- токены ---------- */
:root{
  --ink:#0F1115;--white:#fff;--blue:#2F5BFF;--blue-l:#9DB2FF;--blue-l2:#7F9BFF;--tint:#E8EDFF;--soft:#F3F5FB;
  --card-d:#1C2030;--img-d:#23283A;--code:#171A24;--t2:#3A3F4B;--t3:#6B7080;--td2:#B4BAC8;--td3:#9AA0B0;
  --line:#E6E8EE;--line2:#E1E5EE;--ok:#1FB66A;--err:#E5484D;--tg:#26A5E4;--wa:#25D366;
  --max:linear-gradient(135deg,#2F9BFF 0%,#6E4BFF 100%);
  --f-d:'Unbounded','Arial Black',system-ui,sans-serif;--f-t:'Golos Text',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --f-m:ui-monospace,Menlo,Consolas,monospace;
  --ease:cubic-bezier(.2,.8,.2,1);--pad:48px;--gap:12px;
  --sh-btn:0 14px 30px rgba(47,91,255,.32);--sh-pop:0 30px 80px rgba(15,17,21,.16),0 0 0 1px #E6E8EE;
  /* переменные старого сайта: ими красятся чат (chat.js) и плашка cookie (t.js) */
  --acc:#2F5BFF;--paper:#fff;--card:#F3F5FB;--mut:#6B7080;--dsp:var(--f-d);--txt:var(--f-t);--mono:var(--f-m)
}

/* ---------- база ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.5 var(--f-t);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}
img,svg,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3,p,ul,ol,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
input,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wrap{width:100%;max-width:1440px;margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.m{display:none}
.num{font-family:var(--f-d);font-weight:600;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.num b{font-weight:inherit}

/* типографика */
.h1{font-family:var(--f-d);font-weight:600;font-size:clamp(33px,4.58vw,66px);line-height:1.04;letter-spacing:-.045em;text-wrap:balance}
.h2{font-family:var(--f-d);font-weight:600;font-size:clamp(28px,3.9vw,56px);line-height:1.02;letter-spacing:-.045em}
.h2--52{font-size:clamp(27px,3.62vw,52px)}
.h2--48{font-size:clamp(28px,3.34vw,48px)}
.h2--44{font-size:clamp(24px,3.06vw,44px);line-height:1.06}
.h2--76{font-size:clamp(36px,5.28vw,76px);line-height:1;letter-spacing:-.05em}
.h3{font-family:var(--f-d);font-weight:600;font-size:clamp(22px,2.78vw,40px);line-height:1.05;letter-spacing:-.045em}

/* метка секции */
.lbl{align-self:flex-start;display:inline-flex;font-size:13px;font-weight:600;line-height:1.2;padding:7px 14px;border-radius:999px;background:var(--soft);color:var(--blue);white-space:nowrap}
.lbl--d{background:var(--card-d);color:var(--blue-l)}
.lbl--w{background:#fff;color:var(--blue)}
.lbl--b{background:rgba(255,255,255,.16);color:#fff}

/* кнопки: 62 / 56 / 48 (+ промежуточные из макета) и «подлёт» при наведении */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;height:56px;padding:0 24px;border-radius:999px;font-weight:600;font-size:16px;line-height:1.1;white-space:nowrap;text-align:center;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-color .2s,opacity .25s}
.btn:hover{transform:translateY(-3px)}
.btn:active{transform:translateY(-1px)}
.btn--62{height:62px;padding:0 28px;font-size:17px}
.btn--60{height:60px}.btn--58{height:58px}.btn--56{height:56px}.btn--52{height:52px;padding:0 20px;font-size:15px}.btn--48{height:48px;padding:0 20px;font-size:15px}
.btn--full{width:100%}
.btn--blue{background:var(--blue);color:#fff}
.btn--blue:hover{box-shadow:var(--sh-btn)}
.btn--white{background:#fff;color:var(--ink)}
.btn--soft{background:var(--soft);color:var(--ink)}
.btn--dark{background:var(--ink);color:#fff}
.btn--card{background:var(--card-d);color:#fff}
.btn--tg{background:var(--tg);color:#fff}
.pill{font-size:12px;padding:4px 8px;border-radius:999px;background:rgba(15,17,21,.16);font-weight:600}

/* плитки */
.tile{border-radius:28px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;transition:transform .25s var(--ease)}
.tile--dark{background:var(--ink);color:#fff}
.tile--soft{background:var(--soft)}
.tile--blue{background:var(--blue);color:#fff}
.dark{background:var(--ink);color:#fff}

/* поля, чипы, согласие */
.fld{width:100%;height:56px;border:0;border-radius:18px;background:var(--soft);padding:0 18px;font-size:16px;color:var(--ink);outline:none;-webkit-appearance:none;appearance:none;transition:box-shadow .2s,background-color .2s}
.fld::placeholder{color:var(--t3);opacity:1}
.fld:focus{box-shadow:inset 0 0 0 1.5px var(--blue);background:#fff}
.fld--54{height:54px;border-radius:16px;padding:0 16px}
textarea.fld{height:auto;min-height:64px;padding:14px 18px;resize:vertical;line-height:1.45}
.bad .fld,.fld.bad{box-shadow:inset 0 0 0 1.5px var(--err);background:#FFF5F5}
.pills,.chips{display:flex;flex-wrap:wrap;gap:6px}
.pills button,.chips button{height:42px;padding:0 16px;border-radius:999px;background:var(--soft);color:var(--ink);font-size:14px;font-weight:600;
  transition:transform .25s var(--ease),background-color .2s,color .2s}
.pills button:hover,.chips button:hover{transform:translateY(-3px)}
.pills button.on,.chips button.on{background:var(--blue);color:#fff}
.ok{display:flex;gap:10px;align-items:center;font-size:13px;line-height:1.4;color:var(--t2);cursor:pointer;position:relative}
.ok input{position:absolute;opacity:0;width:22px;height:22px;margin:0;cursor:pointer}
.ok__b{pointer-events:none;flex:none;width:22px;height:22px;border-radius:7px;border:1.5px solid var(--blue);background:#fff;display:grid;place-items:center;transition:background-color .2s}
.ok__b::after{content:"✓";color:#fff;font-size:13px;line-height:1;opacity:0}
.ok input:checked+.ok__b{background:var(--blue)}
.ok input:checked+.ok__b::after{opacity:1}
.ok input:focus-visible+.ok__b{outline:2px solid var(--blue);outline-offset:2px}
.ok a{text-decoration:underline;text-underline-offset:2px}
.bad .ok__b,.ok.bad .ok__b{border-color:var(--err);background:#FFF5F5}
.ticks{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}
.ticks li{display:flex;gap:10px;font-size:14px;line-height:1.45}
.ticks li::before{content:"✓";color:var(--blue);flex:none}

/* круглые знаки мессенджеров */
.ch{flex:none;width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-family:var(--f-d);font-weight:700;font-size:12px;letter-spacing:-.02em}
.ch .ico{width:50%;height:50%;fill:currentColor}
.ch--tg{background:var(--tg)}.ch--wa{background:var(--wa)}.ch--max{background:var(--max)}.ch--call{background:var(--ink)}
/* MAX: официальная иконка (max.ru) в круге. «Облачко» на иконке крупнее знаков Telegram/WhatsApp, поэтому иконку чуть
   уменьшаем, а край растворяем в фоне круга - градиент подобран по краям самой иконки (бирюзовый - синий - фиолетовый) */
.ch--max{overflow:hidden;background:linear-gradient(45deg,#0DAAF5 12%,#4B49FE 52%,#9607F4 92%)}
.ch--max img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;transform:scale(.72);
  -webkit-mask-image:radial-gradient(circle closest-side,#000 82%,transparent 100%);mask-image:radial-gradient(circle closest-side,#000 82%,transparent 100%)}
.ch--s{width:38px;height:38px;font-size:10px}
.ch--l{width:48px;height:48px;font-size:12px}
.dot{flex:none;width:8px;height:8px;border-radius:50%;background:#B0B4BF;display:inline-block}
.dot.on{background:var(--ok);animation:edPulse 1.8s infinite}
@keyframes edPulse{0%{box-shadow:0 0 0 0 rgba(31,182,106,.55)}70%{box-shadow:0 0 0 9px rgba(31,182,106,0)}100%{box-shadow:0 0 0 0 rgba(31,182,106,0)}}

/* полосы-таймеры автопереключения */
.segs{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px}
.seg{height:14px;display:flex;align-items:center;cursor:pointer}
.seg i{position:relative;display:block;width:100%;height:3px;border-radius:2px;background:rgba(255,255,255,.3);overflow:hidden}
.seg i::after{content:"";position:absolute;inset:0;background:#fff;border-radius:2px;transform:scaleX(0);transform-origin:0 50%}
.seg.past i::after{transform:none}
.seg.on i::after{animation:edFill var(--dur,3.2s) linear forwards}
.paused .seg.on i::after{animation-play-state:paused}
@keyframes edFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* ---------- верхняя плашка оффера ---------- */
.tbar{position:relative;background:var(--ink);color:#fff;font-size:14px}
.tbar__a{display:flex;align-items:center;justify-content:center;gap:16px;min-height:40px;padding:6px 56px;text-align:center}
.tbar__a b{font-weight:600}
.tbar__p{color:var(--td2)}
.tbar__p::before{content:"·";margin-right:16px;color:var(--td3)}
.tbar__go{color:var(--blue-l);font-weight:600;white-space:nowrap}
.tbar__s{display:none}
.tbar__x{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;color:var(--td2);font-size:13px;transition:background-color .2s,color .2s}
.tbar__x:hover{background:var(--card-d);color:#fff}

/* ---------- шапка ---------- */
.hdr{position:sticky;top:0;z-index:40}
.hdr__util{height:44px;background:var(--soft);font-size:13px;color:var(--t2);white-space:nowrap}
.hdr__util-in{height:100%;display:flex;align-items:center;gap:24px}
.st{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-weight:600}
.hdr__msk{font-family:var(--f-d);font-size:11px;font-variant-numeric:tabular-nums;color:var(--ink)}
.hdr__msk b{font-weight:400}
.hdr__hours{margin-left:auto}
.hdr__ph{font-weight:700;color:var(--ink)}
.lang{display:flex;border-radius:999px;background:#fff;padding:3px;font-size:12px;font-weight:600}
.lang a{padding:4px 10px;border-radius:999px}
.lang a.on{background:var(--ink);color:#fff}
.hdr__main{height:72px;background:#fff;border-bottom:1px solid var(--line)}
.hdr__main-in{height:100%;display:flex;align-items:center;gap:28px}
.hdr__logo{flex:none;transition:transform .25s var(--ease)}
.hdr__logo:hover{transform:translateY(-2px)}
.hdr__logo img,.hdr__logo svg{height:32px;width:auto}
.hdr__nav{display:flex;gap:26px;font-family:var(--f-d);font-size:14px;font-weight:500;white-space:nowrap}
.hdr__nav a{display:flex;gap:4px;padding:10px 0;transition:color .2s}
.hdr__nav a:hover,.hdr__nav a.on{color:var(--blue)}
.hdr__nav sup{font-size:10px;color:var(--blue);top:-.2em}
.hdr__nav .car{width:0;height:0;margin-left:5px;align-self:center;border-left:3.5px solid transparent;border-right:3.5px solid transparent;border-top:5px solid currentColor}
.hdr__act{margin-left:auto;display:flex;align-items:center;gap:8px}
.hdr__lang{background:var(--soft);margin-left:4px}
.hdr__ct{height:48px;padding:0 6px 0 16px;display:flex;align-items:center;gap:10px;border-radius:999px;background:var(--soft);font-weight:600;font-size:15px;white-space:nowrap;transition:transform .25s var(--ease)}
.hdr__ct:hover,.hdr__ct[aria-expanded="true"]{transform:translateY(-3px)}
.trio{display:flex;padding-left:12px}
.trio .ch{border:2px solid var(--soft);margin-left:-12px}
.hdr__cta{padding:0 22px}
.hdr__cta-m,.hdr__burger{display:none}
.hdr__cta-m{height:40px;padding:0 14px;align-items:center;background:var(--blue);color:#fff;border-radius:999px;font-weight:600;font-size:13px;white-space:nowrap}
.hdr__burger{width:44px;height:44px;border-radius:50%;background:var(--soft);flex-direction:column;align-items:center;justify-content:center;gap:5px}
.hdr__burger span{width:18px;height:2px;border-radius:2px;background:var(--ink);transition:transform .35s var(--ease)}
.hdr__burger[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.hdr__burger[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}

/* мега-меню и выбор канала */
.mm{position:absolute;left:0;right:0;top:100%;padding:0 var(--pad);pointer-events:none;opacity:0;transform:translateY(-8px);visibility:hidden;transition:opacity .25s,transform .35s var(--ease),visibility 0s .35s}
.mm.on{pointer-events:auto;opacity:1;transform:none;visibility:visible;transition:opacity .25s,transform .35s var(--ease)}
.mm__in{max-width:1344px;margin:12px auto 0;background:#fff;border-radius:28px;box-shadow:var(--sh-pop);padding:24px;display:grid;gap:16px}
.mm--w .mm__in{grid-template-columns:repeat(5,minmax(0,1fr)) 240px}
.mm--s .mm__in{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.mm__case{display:flex;flex-direction:column;gap:10px;transition:transform .25s var(--ease)}
.mm__case:hover{transform:translateY(-4px)}
.mm__im{aspect-ratio:16/10;border-radius:14px;overflow:hidden;background:#E9ECF3;border:1px solid var(--line)}
.mm__im img{width:100%;height:100%;object-fit:cover;object-position:50% 0}
.mm__case b,.mm__sv b{font-family:var(--f-d);font-size:15px;font-weight:600}
.mm__case>span:last-child{font-size:13px;line-height:1.4;color:var(--t3)}
.mm__case .nw{white-space:nowrap}
.mm__more{background:var(--soft);border-radius:18px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;gap:12px}
.mm__more>span{font-size:14px;line-height:1.5;color:var(--t2)}
.mm__more>span a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
.mm__more>a{font-family:var(--f-d);font-size:15px;font-weight:600;color:var(--blue)}
.mm__sv{background:var(--soft);border-radius:18px;padding:18px 20px;display:flex;flex-direction:column;gap:8px;transition:transform .25s var(--ease),background-color .2s}
.mm__sv:hover{transform:translateY(-3px);background:var(--tint)}
.mm__sv span{font-size:13px;color:var(--blue);font-weight:600}
.mm__sv--cta,.mm__sv--cta:hover{background:var(--blue);color:#fff}
.mm__sv--cta span{color:#fff;font-weight:400}
.ctm{position:absolute;top:calc(100% - 4px);right:max(300px,calc((100% - 1440px)/2 + 300px));width:380px;background:#fff;border-radius:24px;box-shadow:0 30px 80px rgba(15,17,21,.18),0 0 0 1px var(--line);padding:14px;display:flex;flex-direction:column;gap:4px;animation:edDrop .35s var(--ease)}
.ctm[hidden]{display:none}
@keyframes edDrop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.ctm__st{display:flex;align-items:center;gap:8px;padding:8px 10px 10px;font-size:13px;color:var(--t2)}
.ctm__i{display:flex;align-items:center;gap:14px;padding:10px;border-radius:16px;transition:background-color .2s,transform .25s var(--ease)}
.ctm__i:hover{background:var(--soft);transform:translateX(4px)}
.ctm__i>span:nth-child(2){display:flex;flex-direction:column;gap:2px}
.ctm__i b{font-size:15px}
.ctm__i>span>span{font-size:13px;color:var(--t3)}
.ctm__i i{margin-left:auto;font-style:normal;color:var(--t3)}
.ctm__n{padding:8px 10px 4px;font-size:12px;color:var(--t3)}

/* меню на телефоне */
.mnav{position:fixed;inset:0;z-index:95;background:#fff;display:flex;flex-direction:column;overflow-y:auto;animation:edFade .25s ease}
.mnav[hidden]{display:none}
@keyframes edFade{from{opacity:0}to{opacity:1}}
.mnav__top{height:64px;flex:none;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.mnav__top img{height:26px;width:auto}
.mnav__x{width:44px;height:44px;border-radius:50%;background:var(--soft)}
.mnav__l{padding:16px;display:flex;flex-direction:column;gap:4px}
.mnav__l a{padding:14px 4px;line-height:1.1;display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid #F0F2F6;font-family:var(--f-d);font-size:24px;font-weight:600;letter-spacing:-.04em;
  animation:edStep .45s var(--ease) both}
.mnav__l a.hot{color:var(--blue)}
.mnav__l a span{font-size:12px;color:var(--blue);letter-spacing:0}
.mnav__l a:nth-child(2){animation-delay:40ms}.mnav__l a:nth-child(3){animation-delay:80ms}.mnav__l a:nth-child(4){animation-delay:120ms}.mnav__l a:nth-child(5){animation-delay:160ms}
.mnav__l a:nth-child(6){animation-delay:200ms}.mnav__l a:nth-child(7){animation-delay:240ms}.mnav__l a:nth-child(8){animation-delay:280ms}.mnav__l a:nth-child(9){animation-delay:320ms}
@keyframes edStep{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
.mnav__b{margin-top:auto;padding:16px 16px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px}
.mnav__st{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--t2)}
.mnav__ph{font-family:var(--f-d);font-size:22px;font-weight:600;letter-spacing:-.03em}
.mnav__lang{display:flex;gap:6px}
.mnav__lang a{padding:8px 14px;border-radius:999px;background:var(--soft);font-size:13px;font-weight:600}
.mnav__lang a.on{background:var(--ink);color:#fff}
html.mn-open{overflow:hidden}

/* ---------- общие шапки секций ---------- */
section[id]{scroll-margin-top:90px}
.sh{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.sh__l{display:flex;flex-direction:column;gap:16px}
.sh__sub{font-size:17px;line-height:1.5;color:var(--t2);max-width:420px}

/* ---------- первый экран ---------- */
.hero{padding-top:16px;padding-bottom:48px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto 200px;gap:var(--gap)}
.hero__card{grid-column:1/9;grid-row:1/3;background:var(--soft);border-radius:32px;padding:44px;display:flex;flex-direction:column;gap:28px}
.eyebrow{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--t2)}
.eyebrow i{flex:none;width:8px;height:8px;border-radius:50%;background:var(--blue)}
.hero__sub{font-size:19px;line-height:1.5;color:var(--t2);max-width:560px;text-wrap:pretty}
.hero__btns{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:auto}
.hero__btns .btn--white{padding:0 24px}
.hero__ph{grid-column:9/13;grid-row:1/4;position:relative;min-height:640px;border-radius:32px;overflow:hidden;background:var(--tint)}
.hph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0;opacity:0;transition:opacity .8s ease}
.hph.on{opacity:1;z-index:1}
.hero__ov{position:absolute;inset:auto 0 0 0;z-index:5;padding:60px 24px 24px;background:linear-gradient(to top,rgba(15,17,21,.92),rgba(15,17,21,0));color:#fff;display:flex;flex-direction:column;gap:14px}
.hero__now{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.hero__now>div{display:flex;flex-direction:column;gap:4px}
.hero__fresh{font-size:12px;opacity:.8}
.hero__now b{font-family:var(--f-d);font-size:26px;font-weight:600;letter-spacing:-.02em;line-height:1.1}
.hero__now [data-w-type]{font-size:14px;opacity:.85}
.hero__go{flex:none;width:48px;height:48px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;font-size:18px;transition:transform .25s var(--ease)}
.hero__go:hover{transform:translateY(-3px)}
.hero__t1{grid-column:1/4;grid-row:3}
.hero__t1:hover{transform:translateY(-4px) rotate(-1deg)}
.hero__t1 .num{font-size:56px}
.hero__t1>span:not(.num){font-size:15px;line-height:1.35}
.hero__t2{grid-column:4/7;grid-row:3}
.hero__t2:hover,.hero__t3:hover{transform:translateY(-4px)}
.hero__rt{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.hero__rt .num{font-size:56px}
.hero__rs{font-size:14px;line-height:1.4;color:var(--t2)}
.hero__t3{grid-column:7/9;grid-row:3;font-size:15px;line-height:1.35}
.hero__vt b{display:block;font-family:var(--f-d);font-weight:600}
.hero__vt .sep{display:none}
.play{flex:none;width:56px;height:56px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center}
.play::after{content:"";width:0;height:0;border-left:13px solid var(--blue);border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:4px}
/* рейтинг Профи.ру: дробная заливка звёзд (--p), как в site_extras */
.pfst{position:relative;display:inline-block;letter-spacing:2px;line-height:1;color:rgba(47,91,255,.22);white-space:nowrap}
.pfst::before{content:"★★★★★";position:absolute;inset:0;width:var(--p,100%);overflow:hidden;color:var(--blue);white-space:nowrap}

/* ---------- портфолио «Сцена» ---------- */
.works{padding-top:40px;padding-bottom:40px}
.works__box{border-radius:40px;padding:40px;display:grid;grid-template-columns:360px 1fr;gap:32px;overflow:hidden}
.works__l{display:flex;flex-direction:column;gap:18px;min-width:0}
.works__h{font-size:40px;line-height:1.04}
.works__meta{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.works__n{font-size:13px;color:var(--td3)}
.works__name{font-family:var(--f-d);font-size:30px;font-weight:600;letter-spacing:-.04em;line-height:1}
.works__task{font-size:15px;line-height:1.55;color:var(--td2);min-height:4.65em}
.segs--works{margin-top:auto}
.segs--works .seg i{background:rgba(255,255,255,.18)}
.works__btns{display:flex;gap:8px}
.works__btns .btn--card{padding:0 18px}
.works__stage{position:relative;height:480px;overflow:hidden;border-radius:24px}
.sc{position:absolute;left:50%;top:50%;width:620px;margin-left:-310px;margin-top:-206px;transform:translateX(0) scale(.6);opacity:0;z-index:0;
  transition:transform .7s var(--ease),opacity .6s;cursor:pointer;will-change:transform}
.sc__f{display:block;background:var(--card-d);border-radius:24px;padding:10px}
.sc__f img{width:100%;aspect-ratio:16/10;height:auto;object-fit:cover;object-position:50% 0;border-radius:16px;background:var(--img-d)}
.sc.p0{transform:translateX(0) scale(1);opacity:1;z-index:3}
.sc.p1{transform:translateX(330px) scale(.74);opacity:.4;z-index:2}
.sc.pm{transform:translateX(-330px) scale(.74);opacity:.4;z-index:2}

/* ---------- услуги ---------- */
.svc{padding-top:72px;padding-bottom:96px;display:flex;flex-direction:column;gap:36px}
.svc__tiles{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-bottom:-20px}
.svc__t{aspect-ratio:1/1.05;border-radius:24px;background:var(--soft);color:var(--ink);padding:18px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;
  transition:transform .25s var(--ease),background-color .25s,color .25s}
.svc__t:hover{transform:translateY(-4px)}
.svc__t.on{background:var(--blue);color:#fff}
.svc__i{font-size:13px;opacity:.75}
.svc__t b{font-family:var(--f-d);font-size:17px;font-weight:600;letter-spacing:-.03em;line-height:1.15}
.svc__tt{font-size:12px;font-weight:600;opacity:.85}
.svc__box{background:var(--soft);border-radius:36px;padding:40px}
.svc__p{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;animation:edFade .35s ease}
.svc__p[hidden]{display:none}
.svc__l{display:flex;flex-direction:column;gap:18px}
.svc__l>p{font-size:17px;line-height:1.6;color:var(--t2)}
.svc__r{background:#fff;border-radius:28px;padding:30px;display:flex;flex-direction:column;gap:14px}
.svc__rc{display:contents}
.svc__lab{font-size:13px;color:var(--t3)}
.svc__term{font-family:var(--f-d);font-size:48px;font-weight:600;letter-spacing:-.05em;color:var(--blue);line-height:1}
.svc__note{font-size:14px;line-height:1.5;color:var(--t2)}
.svc__r .btn{margin-top:auto}
.svc__more{order:9;text-align:center;font-size:14px;font-weight:600;color:var(--blue)}

/* ---------- бесплатный макет ---------- */
.pr{padding-top:24px;padding-bottom:96px}
.pr__box{border-radius:44px;padding:56px;display:flex;flex-direction:column;gap:36px}
.pr__top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.pr__h{display:flex;flex-direction:column;gap:18px}
.pr__inc{display:flex;flex-wrap:wrap;gap:8px;max-width:520px;justify-content:flex-end}
.pr__inc li{font-size:13px;padding:9px 14px;border-radius:999px;background:var(--card-d)}
.pr__grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:12px}
.qf{background:#fff;color:var(--ink);border-radius:32px;padding:30px;display:flex;flex-direction:column;gap:14px}
.qf__h{display:flex;justify-content:space-between;align-items:center}
.qf__h>span:first-child{font-family:var(--f-d);font-size:14px;font-weight:600;color:var(--blue)}
.qf__here{font-size:12px;color:var(--t3)}
.qf__two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.qf__l{font-size:13px;color:var(--t2)}
.qf__err{display:none;margin:0;font-size:13px;line-height:1.4;color:var(--err)}
.qf__err.on{display:block}
.qf.sending .qf__send{opacity:.6;pointer-events:none}
.pr__st{background:var(--card-d);border-radius:32px;padding:30px;display:flex;flex-direction:column;gap:14px}
.pr__si{font-family:var(--f-d);font-size:14px;font-weight:600;color:var(--blue-l)}
.pr__st b{font-family:var(--f-d);font-size:24px;font-weight:600;letter-spacing:-.03em;line-height:1.1}
.pr__st p{font-size:15px;line-height:1.5;color:var(--td2)}
.pr__note{font-size:14px;color:var(--td3)}

/* ---------- отзывы ---------- */
.rv{padding-top:24px;padding-bottom:96px;display:flex;flex-direction:column;gap:28px}
.rv__card{display:flex;align-items:center;gap:18px;background:var(--ink);color:#fff;border-radius:28px;padding:18px 24px;transition:transform .25s var(--ease)}
.rv__card:hover{transform:translateY(-3px)}
.rv__num{font-size:48px;letter-spacing:-.05em}
.rv__cc{display:flex;flex-direction:column;gap:4px;font-size:13px;line-height:1.35;color:var(--td2)}
.rv__cc .pfst{color:rgba(127,155,255,.3)}
.rv__cc .pfst::before{color:var(--blue-l2)}
.mq{display:flex;flex-direction:column;gap:12px;overflow:hidden;margin:0 calc(-1 * var(--pad));padding:4px 0;
  -webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent)}
.mq__row{display:flex;width:max-content;animation:edMarquee 70s linear infinite}
.mq__row--b{animation:edMarqueeR 80s linear infinite}
.mq:hover .mq__row,.mq.hold .mq__row{animation-play-state:paused}
.mq__set{display:flex;gap:12px;padding-right:12px}
@keyframes edMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes edMarqueeR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.rvc{width:440px;flex:none;background:var(--soft);border-radius:28px;padding:24px;display:flex;flex-direction:column;gap:14px;transition:transform .25s var(--ease),background-color .2s,border-color .2s}
.rvc:hover{transform:translateY(-4px);background:var(--tint)}
.rvc--b{background:#fff;border:1px solid var(--line)}
.rvc--b:hover{background:#fff;border-color:var(--blue)}
.rvc blockquote{font-size:15px;line-height:1.55}
.rvc figcaption{margin-top:auto;display:flex;align-items:center;gap:12px}
.rvc__av{flex:none;width:40px;height:40px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--f-d);font-weight:600;font-size:14px}
.rvc--b .rvc__av{background:var(--ink)}
.rvc__w{display:flex;flex-direction:column;flex:1}
.rvc__w b{font-size:14px}
.rvc__w span{font-size:12px;color:var(--t3)}
.rvc__src{font-size:12px;font-weight:600;color:var(--blue);white-space:nowrap}
.rv__btns{display:flex;justify-content:center;gap:10px}

/* ---------- процесс ---------- */
.ps{padding-top:24px;padding-bottom:96px;display:flex;flex-direction:column;gap:32px}
.ps__w{position:relative;padding-top:34px;--cw:calc((100% - 60px) / 6)}
.ps__free{position:absolute;top:0;left:calc(var(--cw) / 2);width:calc(2 * (var(--cw) + 12px));display:flex;flex-direction:column;align-items:center;gap:6px}
.ps__free span{font-size:12px;font-weight:600;color:var(--blue);white-space:nowrap}
.ps__free i{width:100%;height:6px;border:1.5px solid var(--blue-l);border-bottom:0;border-radius:6px 6px 0 0}
.ps__line{position:absolute;top:56px;left:calc(var(--cw) / 2);right:calc(var(--cw) / 2);height:4px;border-radius:2px;background:var(--line)}
.ps__line i{position:absolute;inset:0;background:var(--blue);border-radius:2px;transform:scaleX(0);transform-origin:0 50%;transition:transform .8s var(--ease)}
.ps__grid{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.ps__s{display:flex;flex-direction:column;align-items:center;gap:14px;cursor:pointer;outline-offset:6px}
.ps__dot{width:48px;height:48px;border-radius:50%;background:#fff;color:var(--t3);border:4px solid #fff;box-shadow:0 0 0 1px var(--line2);display:flex;align-items:center;justify-content:center;
  font-family:var(--f-d);font-size:12px;font-weight:600;transition:background-color .4s,color .4s,box-shadow .4s}
.ps__s.done .ps__dot{background:var(--blue);color:#fff;box-shadow:0 0 0 1px var(--blue)}
.ps__c{width:100%;background:var(--soft);color:var(--ink);border-radius:24px;padding:20px;display:grid;grid-template-areas:"t" "n" "d";align-content:start;gap:10px;min-height:190px;
  transition:background-color .4s,color .4s,transform .3s var(--ease)}
.ps__s--last .ps__c{background:var(--ink);color:#fff}
.ps__s.on .ps__c{background:var(--blue);color:#fff;transform:translateY(-6px)}
.ps__t{grid-area:t;font-size:12px;font-weight:600;opacity:.8}
.ps__n{grid-area:n;font-family:var(--f-d);font-size:19px;font-weight:600;letter-spacing:-.03em;line-height:1.1}
.ps__c p{grid-area:d;font-size:14px;line-height:1.5;opacity:.85}
.ps__chip{display:none}

/* ---------- технологии и SEO ---------- */
.stk{padding-top:24px;padding-bottom:96px;display:flex;flex-direction:column;gap:32px}
.stk__box{border-radius:44px;padding:48px;display:grid;grid-template-columns:1fr 1.1fr;gap:48px}
.stk__l{display:flex;flex-direction:column;gap:22px;min-width:0}
.stk__lm,.stk__hintm{display:none}
.stk__t{font-family:var(--f-d);font-size:clamp(25px,2.78vw,40px);font-weight:600;letter-spacing:-.045em;line-height:1.05}
.stk__t span{color:var(--blue-l)}
.stk__hint{font-size:16px;line-height:1.55;color:var(--td2)}
.stk__info{background:var(--code);border-radius:24px;padding:22px;min-height:120px;display:flex;flex-direction:column;gap:8px}
.stk__k{font-size:12px;font-weight:600;color:var(--blue-l2);text-transform:uppercase;letter-spacing:.06em}
.stk__v{font-size:17px;line-height:1.5}
.stk__tech{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.stk__tech li{font-family:var(--f-d);font-size:13px;font-weight:600;padding:9px 13px;border-radius:12px;background:var(--card-d);transition:transform .25s var(--ease),background-color .2s}
.stk__tech li:hover{transform:translateY(-3px);background:var(--blue)}
.stk__code{background:var(--code);border-radius:28px;padding:14px 0;font-family:var(--f-m);font-size:14px;line-height:1.5;min-width:0;align-self:start}
.stk__bar{display:flex;align-items:center;gap:6px;padding:0 20px 12px}
.stk__bar i{width:10px;height:10px;border-radius:50%;background:#2A2F3D}
.stk__bar span{margin-left:10px;font-size:12px;color:var(--t3)}
.cl{display:grid;grid-template-columns:44px 1fr;padding:6px 20px 6px 0;transition:background-color .2s;cursor:default;outline-offset:-2px}
.cl.on{background:var(--img-d)}
.cl__no{color:#4A5063;text-align:right;padding-right:14px}
.cl code{font:inherit;white-space:pre;overflow:hidden;text-overflow:ellipsis}

/* ---------- вопросы (чат) ---------- */
.fq{padding-top:24px;padding-bottom:96px}
.fq__grid{display:grid;grid-template-columns:400px 1fr;gap:40px;align-items:stretch}
.fq__l{display:flex;flex-direction:column;gap:18px}
.fq__sub{font-size:16px;line-height:1.55;color:var(--t2)}
.fq__own{margin-top:auto;display:flex;flex-direction:column;gap:10px}
.fq__own>span{font-size:14px;color:var(--t3)}
.fq__chs{display:flex;gap:6px;align-items:center}
.fq__chl{transition:transform .25s var(--ease)}
.fq__chl:hover{transform:translateY(-3px)}
.fq__chl .ch{width:52px;height:52px;font-size:11px}
.fq__chs .btn{margin-left:6px;font-size:14px}
.fq__chat{background:var(--soft);border-radius:40px;padding:14px;display:flex;flex-direction:column;height:640px;min-width:0}
.fq__head{flex:none;height:64px;padding:0 18px;display:flex;align-items:center;gap:12px;background:#fff;border-radius:28px}
.fq__head img{width:40px;height:40px;border-radius:12px}
.fq__head>div{display:flex;flex-direction:column}
.fq__head b{font-size:15px}
.fq__head .st{font-size:12px;color:var(--ok);font-weight:400;gap:6px}
.fq__msgs{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:18px 10px;scrollbar-width:none;overscroll-behavior:contain}
.fq__msgs::-webkit-scrollbar{display:none}
.fq__msgs>:first-child{margin-top:auto}
.fq__pair{display:flex;flex-direction:column;gap:10px;animation:edPop .45s var(--ease)}
.fq__pair[hidden]{display:none}
@keyframes edPop{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}
.fq__q{align-self:flex-end;max-width:70%;background:var(--blue);color:#fff;border-radius:22px 22px 6px 22px;padding:14px 18px;font-size:15px;line-height:1.45;font-weight:500}
.fq__a{align-self:flex-start;max-width:78%;background:#fff;border-radius:22px 22px 22px 6px;padding:16px 20px;font-size:15px;line-height:1.6}
.fq__ty{display:none;align-self:flex-start;gap:5px;background:#fff;border-radius:22px 22px 22px 6px;padding:16px 20px}
.fq__ty i{width:7px;height:7px;border-radius:50%;background:var(--blue);animation:edDot 1s infinite}
.fq__ty i:nth-child(2){animation-delay:.15s}.fq__ty i:nth-child(3){animation-delay:.3s}
@keyframes edDot{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}
.fq__pair.typing .fq__ty{display:flex}
.fq__pair.typing .fq__a{display:none}
.fq__pick{flex:none;background:#fff;border-radius:28px;padding:14px;display:flex;flex-direction:column;gap:10px}
.fq__left{font-size:12px;color:var(--t3);padding:0 6px}
.fq__left b{font-weight:400}
.fq__chips{display:flex;flex-wrap:wrap;gap:6px;max-height:86px;overflow:hidden}
.fq__chip{height:40px;padding:0 14px;display:flex;align-items:center;border-radius:999px;background:var(--soft);font-size:14px;font-weight:500;white-space:nowrap;
  transition:transform .25s var(--ease),background-color .2s}
.fq__chip:hover{transform:translateY(-3px);background:var(--tint)}
.fq__end{height:40px;padding:0 16px;display:flex;align-items:center;border-radius:999px;background:var(--blue);color:#fff;font-size:14px;font-weight:600}
.fq__end[hidden]{display:none}

/* ---------- о студии ---------- */
.ab{padding-top:24px;padding-bottom:96px;display:flex;flex-direction:column;gap:12px}
.ab__grid{display:grid;grid-template-columns:480px 1fr;gap:12px}
.ab__photo{position:relative;height:600px;border-radius:40px;overflow:hidden;background:var(--tint)}
.ab__img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.ab__ph0{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-bottom:80px;
  background:radial-gradient(circle at 30% 25%,#fff 0,rgba(255,255,255,0) 55%),linear-gradient(160deg,var(--tint),#D9E1FF)}
.ab__ph0 img{width:38%;height:auto;opacity:.95}
.ab__name{position:absolute;left:16px;right:16px;bottom:16px;background:#fff;border-radius:24px;padding:16px 20px;display:flex;justify-content:space-between;align-items:center}
.ab__name>div{display:flex;flex-direction:column;gap:2px}
.ab__name b{font-family:var(--f-d);font-size:18px;font-weight:600}
.ab__name>div span{font-size:13px;color:var(--t3)}
.ab__city{font-size:12px;font-weight:600;color:var(--blue)}
.ab__card{background:var(--soft);border-radius:40px;padding:48px;display:flex;flex-direction:column;gap:24px}
.ab__text{font-size:17px;line-height:1.6;color:var(--t2);max-width:680px}
.ab__cnt{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:auto}
.ab__cnt>div{background:#fff;border-radius:24px;padding:20px;display:flex;flex-direction:column;gap:6px}
.ab__cnt .num{font-size:40px;color:var(--blue)}
.ab__cnt>div>span:not(.num){font-size:13px;color:var(--t2)}
.ab__foot{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:20px;border-top:1px solid var(--line2)}
.ab__foot>span{font-size:13px;line-height:1.5;color:var(--t3)}
.ab__more{padding:0 22px}
.ab__g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.gu{background:var(--ink);color:#fff;border-radius:28px;padding:24px;display:flex;flex-direction:column;gap:12px;transition:transform .25s var(--ease)}
.gu:hover{transform:translateY(-4px)}
.gu__i{width:40px;height:40px;border-radius:12px;background:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:700}
.gu b{font-family:var(--f-d);font-size:18px;font-weight:600;letter-spacing:-.03em;line-height:1.2}
.gu p{font-size:14px;line-height:1.5;color:var(--td2)}

/* ---------- контакты ---------- */
.ct{padding-top:24px;padding-bottom:64px}
.ct__box{background:var(--blue);color:#fff;border-radius:48px;padding:56px;display:grid;grid-template-columns:1fr 520px;gap:48px}
.ct__l{display:flex;flex-direction:column;gap:24px;min-width:0}
.ct__text{font-size:18px;line-height:1.55;max-width:560px}
.ct__ch{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}
.ct__c{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.12);border-radius:24px;padding:14px 16px;transition:transform .25s var(--ease),background-color .2s}
.ct__c:hover{transform:translateY(-3px);background:rgba(255,255,255,.2)}
.ct__c .ch{box-shadow:0 0 0 2px rgba(255,255,255,.4)}
.ct__c>span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.ct__c b{font-size:16px}
.ct__c>span>span{font-size:13px;opacity:.85}
.ct__hours{font-size:14px;opacity:.9}
.ct__form{border-radius:36px;padding:32px}
.qf__t{font-family:var(--f-d);font-size:24px;font-weight:600;letter-spacing:-.035em;line-height:1.15}
.ct__form .qf__l{margin-top:4px}
.ct__form .chips button{height:38px;padding:0 13px;font-size:13px}
.pills--eq{flex-wrap:nowrap}
.pills--eq button{flex:1;height:40px;padding:0 6px;font-size:13px}
.ct__form .ok{font-size:12px;margin-top:4px}

/* ---------- подвал ---------- */
.ft{padding-bottom:24px}
.ft .wrap{display:flex;flex-direction:column;gap:12px}
.ft__box{background:var(--soft);border-radius:36px;padding:36px;display:grid;grid-template-columns:1fr 1fr 1fr auto;grid-template-rows:auto 1fr;gap:0 32px;align-items:start}
.ft__logo{grid-column:1;grid-row:1}.ft__col--nav{grid-column:1;grid-row:2}.ft__col--sv{grid-column:2;grid-row:1/3}.ft__col--soc{grid-column:3;grid-row:1/3}.ft__box>.ft__up{grid-column:4;grid-row:1/3}
.ft__col{display:flex;flex-direction:column;gap:10px;font-size:15px}
.ft__col a{transition:color .2s;align-self:flex-start}
.ft__col a:hover{color:var(--blue)}
.ft__logo{margin-bottom:20px}
.ft__logo img{height:32px;width:auto}
.ft__h{font-size:12px;color:var(--t3);text-transform:uppercase;letter-spacing:.08em;margin:8px 0 6px}
.ft__h--m{display:none}
.ft__col .v{color:var(--t3)}
.ft__col .m{display:none}
.ft__up{width:120px;height:120px;border-radius:50%;background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-weight:600;font-size:14px;
  transition:transform .3s var(--ease),background-color .2s}
.ft__up span{font-size:24px;line-height:1}
.ft__up:hover{transform:translateY(-6px);background:var(--blue)}
.ft__up--m{display:none}
.ft__legal{display:flex;justify-content:space-between;gap:24px;padding:0 12px;font-size:12px;line-height:1.6;color:var(--t3)}
.ft__legal a{text-decoration:underline;text-underline-offset:2px}

/* ---------- плашка «Пройти квиз» ---------- */
.lfb{position:fixed;left:50%;bottom:24px;z-index:60;display:flex;align-items:center;gap:16px;background:var(--ink);color:#fff;border-radius:999px;padding:10px 10px 10px 24px;
  box-shadow:0 20px 50px rgba(15,17,21,.3);transform:translate(-50%,24px);opacity:0;transition:transform .5s var(--ease),opacity .4s;max-width:calc(100vw - 32px)}
.lfb.on{transform:translate(-50%,0);opacity:1}
.lfb[hidden]{display:none}
.lfb__t{font-size:15px;white-space:nowrap;cursor:pointer}
.lfb__t b{font-weight:600}
.lfb__go{height:48px;padding:0 22px;display:flex;align-items:center;background:var(--blue);border-radius:999px;font-weight:600;font-size:15px;white-space:nowrap;transition:transform .25s var(--ease)}
.lfb__go:hover{transform:translateY(-3px)}
.lfb__x{flex:none;width:40px;height:40px;border-radius:50%;background:var(--card-d);font-size:14px}

/* ---------- нижняя панель связи (телефон) ---------- */
.dock{display:none}

/* ---------- окно видео ---------- */
.vmod{position:fixed;inset:0;z-index:90;background:rgba(15,17,21,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;animation:edFade .3s ease}
.vmod[hidden]{display:none}
.vmod__box{width:min(960px,100%);display:flex;flex-direction:column;gap:14px;animation:edPop .5s var(--ease)}
.vmod__h,.vmod__f{display:flex;justify-content:space-between;align-items:center;gap:16px;color:#fff}
.vmod__h b{font-family:var(--f-d);font-size:20px;font-weight:600}
.vmod__x{flex:none;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;transition:background-color .2s}
.vmod__x:hover{background:rgba(255,255,255,.28)}
.vmod__v{position:relative;aspect-ratio:16/9;border-radius:28px;overflow:hidden;background:repeating-linear-gradient(135deg,#171A24 0 14px,#1C2030 14px 28px)}
.vmod video{width:100%;height:100%;object-fit:contain;background:#000}
.vmod.v .vmod__box{width:auto}
.vmod.v .vmod__v{aspect-ratio:9/16;height:min(70svh,calc((100vw - 40px) * 16 / 9));margin:0 auto}
.vmod__f span{font-size:15px;color:var(--td2)}
.vmod__end{position:absolute;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:rgba(15,17,21,.82);text-align:center;padding:20px}
.vmod__end.on{display:flex}
.vmod__end p{color:#fff;font-family:var(--f-d);font-weight:600;font-size:clamp(22px,3vw,34px);letter-spacing:-.04em;line-height:1.1}
.vmod__rep{color:var(--td2);font-size:14px;font-weight:600}
html.v-open{overflow:hidden}

/* ---------- окно заявки и квиз ---------- */
.lf{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,17,21,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:edFade .3s ease}
.lf[hidden]{display:none}
html.lf-open{overflow:hidden}
.lf__box{position:relative;width:min(720px,100%);max-height:calc(100vh - 40px);max-height:calc(100svh - 40px);background:#fff;color:var(--ink);border-radius:40px;padding:36px 36px 30px;
  display:flex;flex-direction:column;gap:20px;box-shadow:0 40px 100px rgba(15,17,21,.3);animation:edPop .5s var(--ease)}
.lf__grip{display:none}
.lf__head{display:flex;justify-content:space-between;align-items:center;gap:16px}
.lf__head>div{display:flex;flex-direction:column;gap:4px}
.lf__head h2{font-family:var(--f-d);font-size:24px;font-weight:600;letter-spacing:-.035em;line-height:1.15}
.lf__step{font-size:13px;color:var(--t3)}
.lf__x{flex:none;width:44px;height:44px;border-radius:50%;background:var(--soft);font-size:15px;transition:background-color .2s}
.lf__x:hover{background:var(--line)}
@keyframes lfHint{0%,100%{transform:none}20%{transform:scale(1.18)}40%{transform:rotate(-12deg) scale(1.1)}60%{transform:rotate(10deg) scale(1.1)}80%{transform:rotate(-6deg)}}
.lf__x.hint{animation:lfHint .6s ease;background:var(--ink);color:#fff}
#lfForm{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;gap:16px}
.lf__scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:16px;margin:0 -8px;padding:2px 8px}
.lf__bar{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.lf__bar i{height:4px;border-radius:2px;background:var(--line);transition:background-color .4s}
.lf[data-step="1"] .lf__bar i:nth-child(-n+1),.lf[data-step="2"] .lf__bar i:nth-child(-n+2),.lf[data-step="3"] .lf__bar i:nth-child(-n+3),.lf[data-step="4"] .lf__bar i{background:var(--blue)}
.lf[data-flow="direct"] .lf__bar{display:none}
.lf__q{display:flex;flex-direction:column;gap:14px;animation:edStep .45s var(--ease)}
.lf__q[hidden]{display:none}
.lf__q [data-g]{display:flex;flex-direction:column;gap:14px}
.lf__q [data-g][hidden]{display:none}
.lf__qt{font-family:var(--f-d);font-size:30px;font-weight:600;letter-spacing:-.04em;line-height:1.1}
.lf__opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lf__opt{min-height:60px;padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:20px;background:var(--soft);font-weight:600;font-size:16px;line-height:1.25;text-align:left;
  transition:transform .25s var(--ease),background-color .2s,color .2s}
.lf__opt:hover{transform:translateY(-3px)}
.lf__opt.on{background:var(--blue);color:#fff}
.lf__opt i{font-style:normal;flex:none}
.lf__lead{font-size:14px;line-height:1.5;color:var(--t2);margin-top:-6px}
.lf__sum{font-size:13px;color:var(--t3);margin-top:-4px}
.lf__edit{margin-left:8px;color:var(--blue);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.lf__two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lf__two .fld{height:58px}
.lf__l{display:block;font-size:13px;color:var(--t2);margin-bottom:-6px}
.lf__f .lf__l{margin-bottom:8px}
.lf__seg{flex-wrap:nowrap}
.lf__seg button{flex:1;height:46px;padding:0 6px}
.lf__chips button{height:38px;padding:0 13px;font-size:13px}
.lf__f[hidden]{display:none}
.lf__err{display:none;margin:6px 0 0;font-size:13px;line-height:1.4;color:var(--err)}
.lf .bad .lf__err{display:block}
.lf__f[data-f="contact"]{position:relative}
.lf__f[data-f="contact"].ok::after{content:"✓";position:absolute;right:16px;top:19px;font-weight:700;color:var(--ok);pointer-events:none}
.lf__more{font-size:14px;color:var(--t3);font-weight:600;border-bottom:1px dashed var(--line2);padding:2px 0}
.lf__more:hover{color:var(--ink)}
.lf__more[hidden],.lf textarea[hidden]{display:none}
.lf__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0;overflow:hidden}
.lf__promo{font-size:13px;line-height:1.45;padding:10px 14px;border-radius:14px;background:var(--tint);color:var(--ink)}
.lf__skip{display:none!important}
.lf__back{align-self:flex-start;font-size:14px;font-weight:600;color:var(--t3)}
.lf__back[hidden]{display:none}
.lf:not([data-step="4"]) .lf__foot{display:none}
.lf__foot{display:flex;flex-direction:column;gap:10px}
.lf__netErr{display:none;font-size:14px;color:var(--err)}
.lf__alt{text-align:center;font-size:13px;color:var(--t3)}
.lf__alt a{text-decoration:underline;text-underline-offset:2px}
.lf__ok{display:none;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:12px 0 8px;animation:edPop .5s var(--ease)}
.lf.done .lf__ok{display:flex}
.lf.done #lfForm,.lf.done .lf__head h2,.lf.done .lf__step{display:none}
.lf.done .lf__head{justify-content:flex-end}
.lf__okI{width:88px;height:88px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-size:40px}
.lf__ok b{font-family:var(--f-d);font-size:30px;font-weight:600;letter-spacing:-.04em;line-height:1.1}
.lf__ok p{font-size:16px;line-height:1.55;color:var(--t2);max-width:480px}
.lf__gift a{color:var(--blue);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.lf__gift[hidden]{display:none}
.lf__row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}

/* ---------- чат с ИИ (chat.js): вид под новый дизайн, логика не тронута ---------- */
body .ec-btn{width:auto;height:68px;padding:0 22px 0 10px;border-radius:24px;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border:1px solid var(--line);box-shadow:0 14px 36px rgba(15,17,21,.12);display:flex;align-items:center;gap:12px;right:24px;bottom:24px;z-index:70;
  transition:transform .35s var(--ease),box-shadow .35s,bottom .4s var(--ease)}
body .ec-btn:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(15,17,21,.16)}
body .ec-btn .ec-disc{position:relative;inset:auto;flex:none;width:48px;height:48px;border-radius:14px;border:0;box-shadow:none;background:url(/assets/v2/logo/app-icon.svg) center/cover no-repeat;transform:none!important}
body .ec-btn .ec-disc::before{display:none}
body .ec-btn .ec-ring,body .ec-btn .ec-core{display:none}
body .ec-btn .ec-live{left:47px;right:auto;bottom:10px;width:14px;height:14px;border:2.5px solid #fff;background:var(--ok)}
body .ec-btn .ec-live::after{display:none}
body .ec-btn::after{content:"Есть вопрос?\A помощник ответит сразу";white-space:pre;text-align:left;font:600 15px/1.35 var(--f-t);color:var(--ink);letter-spacing:-.01em}
html[lang="en"] body .ec-btn::after{content:"Got a question?\A the assistant replies now"}
body .ec-tip{display:none!important}
body .ec{right:24px;bottom:24px;width:380px;height:min(560px,calc(100vh - 120px));border-radius:32px;border:0;overflow:hidden;background:#fff;
  box-shadow:0 30px 80px rgba(15,17,21,.22),0 0 0 1px var(--line);font-family:var(--f-t)}
body .ec.on{animation:edPop .45s var(--ease)}
body .ec-h{background:#fff;color:var(--ink);padding:18px 20px;gap:12px;border-bottom:1px solid var(--line)}
body .ec-h>div>b{font:600 15px/1.2 var(--f-t);text-transform:none;letter-spacing:0}
body .ec-h>div>span{color:var(--ok)}
body .ec-av{flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:url(/assets/v2/logo/app-icon.svg) center/cover no-repeat}
body .ec-av svg{display:none}
body .ec-av::after{border-color:#fff;background:var(--ok)}
body .ec-x{width:36px;height:36px;border-radius:50%;border:0;background:var(--soft);color:var(--ink);font-size:13px}
body .ec-x:hover{background:var(--line);color:var(--ink)}
body .ec-b{background:#F7F8FB;padding:16px}
body .ec-m{border:0;font-size:14px;line-height:1.55;padding:11px 14px}
body .ec-m.a{background:#fff;border-radius:18px 18px 18px 6px;border:0}
body .ec-m.u{background:var(--blue);color:#fff;border-radius:18px 18px 6px 18px}
body .ec-m a{color:var(--blue)}
body .ec-typing{background:#fff;border:0;border-radius:18px 18px 18px 6px}
body .ec-typing i{background:var(--blue)}
body .ec-g{background:#fff;border:0;border-radius:18px}
body .ec-g input[type=text],body .ec-g input[type=tel]{border:0;border-radius:14px;background:var(--soft);height:46px}
body .ec-g label input{accent-color:var(--blue)}
body .ec-go{border-radius:999px;background:var(--blue);font:600 14px/1 var(--f-t);letter-spacing:0;text-transform:none;height:46px}
body .ec-go:hover{background:var(--ink)}
body .ec-chips button{border:0;border-radius:999px;background:var(--soft);height:34px;padding:0 12px;font-size:13px;font-weight:500}
body .ec-chips button:hover{color:var(--ink);background:var(--tint)}
body .ec-f{background:#fff;border-top:1px solid var(--line);padding:12px;align-items:center}
body .ec-f textarea{border:0;border-radius:24px;background:var(--soft);padding:13px 16px;height:48px}
body .ec-f button{width:42px;height:42px;flex:none;border-radius:50%;background:var(--ink)}
body .ec-f button:hover{background:var(--blue)}
body .ec-mgr{border:1px dashed var(--line2);border-radius:999px;margin:0 12px 8px}
body .ec-mgr:hover{border-color:var(--blue);background:var(--soft)}
body .ec-cancel{color:var(--t3)}
/* баннер cookie (t.js) */
body .ck{border-radius:24px;border:0;box-shadow:0 20px 50px rgba(15,17,21,.18),0 0 0 1px var(--line);background:#fff;font-family:var(--f-t)}
body .ck-btn{border-radius:999px;font-family:var(--f-t);letter-spacing:0;text-transform:none;font-weight:600;font-size:13px}

/* ---------- появление секций ---------- */
.js .rvs>*{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.js .rvs.in>*{opacity:1;transform:none}
.rvs>:nth-child(2){transition-delay:90ms}.rvs>:nth-child(3){transition-delay:180ms}.rvs>:nth-child(4){transition-delay:270ms}
.rvs>:nth-child(5){transition-delay:360ms}.rvs>:nth-child(6){transition-delay:450ms}
.js.rv-off .rvs>*{opacity:1;transform:none}

/* ================= адаптив ================= */
@media (max-width:1280px){
  :root{--pad:32px}
  .tbar__p .tbar__l{display:none}.tbar__p .tbar__s{display:inline}
  .hdr__main-in{gap:24px}
  .hdr__nav{gap:20px}
  .hdr__ct .trio{display:none}
  .hdr__cta .pill{display:none}
  .mm--w .mm__in{grid-template-columns:repeat(5,minmax(0,1fr)) 210px;gap:14px}
  .mm__case b{font-size:14px}
  .hero__card{padding:36px}
  .works__box{grid-template-columns:300px 1fr}
  .sc{width:540px;margin-left:-270px;margin-top:-180px}
  .sc.p1{transform:translateX(290px) scale(.74)}.sc.pm{transform:translateX(-290px) scale(.74)}
  .svc__t b{font-size:15px}
  .ct__box{grid-template-columns:1fr 460px}
  .fq__grid{grid-template-columns:340px 1fr}
}
@media (max-width:1180px){
  .hdr__nav{display:none}
  .hdr__burger{display:flex}
  .ctm{right:var(--pad)}
  .hero__t1 .num,.hero__rt .num{font-size:44px}
  .ab__grid{grid-template-columns:400px 1fr}
  .ab__card{padding:36px}
}
@media (max-width:1024px){
  .hdr__util{display:none}
  section[id]{scroll-margin-top:90px}
  .hero{grid-template-rows:auto;grid-template-columns:repeat(12,minmax(0,1fr))}
  .hero__card{grid-column:1/13;grid-row:auto}
  .hero__ph{grid-column:1/7;grid-row:2/5;min-height:600px}
  .hero__t1,.hero__t2,.hero__t3{grid-column:7/13;grid-row:auto;min-height:190px}
  .hero__t1{grid-row:2}.hero__t2{grid-row:3}.hero__t3{grid-row:4}
  .works__box{grid-template-columns:1fr;padding:32px}
  .works__stage{height:420px}
  .segs--works{margin-top:6px}
  .works__task{min-height:0}
  .svc__tiles{grid-template-columns:repeat(4,minmax(0,1fr))}
  .svc__t{aspect-ratio:auto;min-height:150px}
  .svc__tiles{margin-bottom:0}
  .svc__p{grid-template-columns:1fr;gap:24px}
  .pr__box{padding:40px}
  .pr__top{flex-direction:column;align-items:flex-start;gap:24px}
  .pr__inc{justify-content:flex-start;max-width:none}
  .pr__grid{grid-template-columns:1fr 1fr}
  .pr__form{grid-column:1/3}
  .sh{flex-direction:column;align-items:flex-start;gap:16px}
  .rv .sh{flex-direction:row;align-items:flex-end;flex-wrap:wrap}
  /* процесс: вертикальная шкала, как в мобильном макете */
  .ps__w{padding-top:0}
  .ps__free{display:none}
  .ps__line{top:24px;bottom:24px;left:23px;right:auto;width:3px;height:auto}
  .ps__line i{transform:scaleY(0);transform-origin:50% 0}
  .ps__grid{grid-template-columns:1fr;gap:10px}
  .ps__s{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:start}
  .ps__dot{margin:0;width:48px;height:48px}
  .ps__c{min-height:0;grid-template-areas:"n t" "d d" "c c";grid-template-columns:1fr auto;gap:6px 10px;padding:16px 20px;border-radius:20px}
  .ps__s.on .ps__c{transform:none}
  .ps__s--last .ps__c{background:var(--soft);color:var(--ink)}
  .ps__s--last.on .ps__c{background:var(--blue);color:#fff}
  .ps__t{align-self:baseline;white-space:nowrap;opacity:.85}
  .ps__chip{display:inline-flex;grid-area:c;justify-self:start;font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px;background:var(--tint);color:var(--blue)}
  .ps__s.on .ps__chip{background:rgba(255,255,255,.2);color:#fff}
  .stk__box{grid-template-columns:1fr;padding:40px}
  .fq__grid{grid-template-columns:1fr;gap:24px}
  .fq__own{margin-top:6px}
  .ab__grid{grid-template-columns:1fr 1fr}
  .ab__photo{height:auto;min-height:520px}
  .ab__cnt .num{font-size:32px}
  .ab__foot{flex-direction:column;align-items:flex-start}
  .ab__g{grid-template-columns:1fr 1fr}
  .ct__box{grid-template-columns:1fr;padding:40px;gap:32px}
  .ft__box{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;gap:24px}
  .ft__logo{grid-column:1;grid-row:1}.ft__col--nav{grid-column:1;grid-row:2}.ft__col--sv{grid-column:2;grid-row:2}.ft__col--soc{grid-column:1/3;grid-row:3}
  .ft__box>.ft__up{grid-column:2;grid-row:1;justify-self:end;width:96px;height:96px}
  .ft__legal{flex-direction:column;gap:4px}
  .mm{display:none}
}

/* ---------- телефон: мобильный макет 390 ---------- */
@media (max-width:768px){
  :root{--pad:16px}
  section[id]{scroll-margin-top:76px}
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .d{display:none}
  .m{display:inline}
  br.d{display:none}
  .tbar{font-size:13px}
  .tbar__a{min-height:36px;padding:4px 44px 4px 16px;gap:8px;white-space:nowrap}
  .tbar__l,.tbar__p{display:none}
  .tbar__s{display:inline}
  .tbar__x{right:6px}
  .hdr__main{height:64px;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
  .hdr__logo img,.hdr__logo svg{height:26px}
  .hdr__ct,.hdr__cta{display:none}
  .hdr__cta-m{display:flex}
  .hdr__act{gap:8px}
  .ctm{display:none!important}
  .lbl{font-size:12px;padding:6px 12px}
  .h2{font-size:28px;line-height:1.05}
  .sh__sub{font-size:14px;color:var(--t2)}
  /* первый экран */
  .hero{display:flex;flex-direction:column;gap:10px;padding-top:12px;padding-bottom:24px}
  .hero__card{border-radius:28px;padding:24px 20px;gap:18px}
  .eyebrow{font-size:12px;gap:8px}
  .eyebrow i{width:7px;height:7px}
  .h1{font-size:clamp(28px,8.46vw,33px);line-height:1.08}
  .h1 br{display:none}
  .hero__sub{font-size:15px;line-height:1.55}
  .hero__btns{flex-direction:column;align-items:stretch;gap:10px;margin-top:0}
  .hero__btns .btn--blue{height:56px;font-size:16px}
  .hero__btns .btn--white{height:52px;font-size:15px}
  .hero__ph{height:480px;min-height:0;border-radius:28px}
  .hero__ov{padding:50px 18px 18px;gap:12px}
  .hero__now b{font-size:20px}
  .hero__now [data-w-type]{font-size:13px}
  .hero__fresh{font-size:11px}
  .hero__go{width:44px;height:44px}
  .hero__t1,.hero__t2{min-height:130px;border-radius:24px;padding:18px;gap:14px}
  .hero__t1 .num,.hero__rt .num{font-size:40px}
  .hero__t1>span:not(.num){font-size:12px}
  .hero__t1{order:3}.hero__t2{order:4}
  .hero__t3{order:5;flex-direction:row;align-items:center;justify-content:flex-start;gap:14px;min-height:0;padding:14px 18px;border-radius:24px;font-size:14px}
  .hero__t3 .play{width:48px;height:48px}
  .hero__t3 .play::after{border-left-width:12px;border-top-width:7px;border-bottom-width:7px;margin-left:3px}
  .hero__vt b{display:inline}
  .hero__vt .sep{display:inline}
  .hero{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:none}
  .hero__card,.hero__ph,.hero__t3{grid-column:1/3}
  .hero__card{grid-row:1}.hero__ph{grid-row:2}.hero__t1,.hero__t2{grid-row:3}.hero__t3{grid-row:4}
  .hero__t1{grid-column:1}.hero__t2{grid-column:2}
  .hero__rt{flex-direction:column;align-items:flex-start;gap:14px}
  .hero__rt .pfst{display:none}
  .hero__rs{font-size:12px}
  .hero__rs::before{content:"★★★★★";display:block;color:var(--blue);letter-spacing:2px}
  /* портфолио */
  .works{padding:8px 12px 24px}
  .works__box{border-radius:32px;padding:24px 16px 20px;display:flex;flex-direction:column;gap:16px}
  .works__l{display:contents}
  .works .lbl{order:1}
  .works__h{order:2;font-size:28px;line-height:1.05}
  .works__stage{order:3;height:auto;aspect-ratio:16/10;border-radius:18px;background:var(--img-d)}
  .segs--works{order:4;margin-top:0;gap:5px}
  .works__meta{order:5;margin-top:0;gap:6px}
  .works__btns{order:6;display:grid;grid-template-columns:1fr auto}
  .works__btns .btn{height:50px;font-size:14px}
  .works__n{font-size:12px}
  .works__name{font-size:22px}
  .works__task{font-size:14px}
  .sc,.sc.p0,.sc.p1,.sc.pm{left:0;top:0;width:100%;height:100%;margin:0;transform:none;opacity:0;transition:opacity .6s ease}
  .sc.p0{opacity:1}
  .sc__f{padding:0;border-radius:0;height:100%;background:none}
  .sc__f img{height:100%;border-radius:0}
  /* услуги */
  .svc{padding-top:24px;padding-bottom:32px;gap:16px}
  .svc .sh__sub{display:none}
  .svc__tiles{display:flex;overflow-x:auto;gap:8px;margin:0 -16px;padding:2px 16px 4px;scrollbar-width:none}
  .svc__tiles::-webkit-scrollbar{display:none}
  .svc__t{flex:none;aspect-ratio:auto;min-height:0;height:44px;padding:0 16px;border-radius:999px;flex-direction:row;align-items:center}
  .svc__t:hover{transform:none}
  .svc__t b{font-family:var(--f-t);font-size:14px;letter-spacing:0;white-space:nowrap}
  .svc__i,.svc__tt{display:none}
  .svc__box{border-radius:28px;padding:22px 20px}
  .svc__p{gap:14px}
  .svc__l{gap:14px}
  .svc__l .h3{font-size:22px;letter-spacing:-.04em;line-height:1.1}
  .svc__l>p{font-size:15px;line-height:1.55}
  .ticks{grid-template-columns:1fr;gap:8px}
  .svc__r{background:none;padding:0;border-radius:0;gap:14px}
  .svc__rc{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;background:#fff;border-radius:20px;padding:16px}
  .svc__lab{font-size:12px}
  .svc__term{grid-row:2;font-size:22px;letter-spacing:-.03em}
  .svc__note{display:none}
  .svc__more{grid-column:2;grid-row:1/3;font-size:13px;white-space:nowrap}
  .svc__r .btn{height:54px;font-size:15px}
  /* бесплатный макет */
  .pr{padding:8px 12px 32px}
  .pr__box{border-radius:32px;padding:26px 16px 20px;gap:16px}
  .pr__top{gap:16px}
  .pr__h{gap:16px}
  .h2--52{font-size:27px;line-height:1.06}
  .pr__inc{gap:6px}
  .pr__inc li{font-size:12px;padding:8px 12px}
  .pr__grid{grid-template-columns:1fr;gap:16px}
  .pr__form{grid-column:auto}
  .qf{border-radius:24px;padding:20px;gap:12px}
  .qf__here{display:none}
  .qf__h>span:first-child{font-size:13px}
  .qf__two{grid-template-columns:1fr;gap:12px}
  .qf .fld{height:52px;border-radius:16px;padding:0 16px}
  .pr__form .qf__l{display:none}
  .pr__form .pills{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .pr__form .pills button{height:42px;font-size:13px}
  .qf .ok{font-size:12px}
  .qf__send{height:54px!important;font-size:15px}
  .pr__st{border-radius:24px;padding:18px 20px;gap:8px}
  .pr__si{font-size:12px}
  .pr__st b{font-size:18px}
  .pr__st p{font-size:14px}
  .pr__note{display:none}
  /* отзывы */
  .rv{padding:24px 0 32px;gap:16px}
  .rv .sh{padding:0 16px;flex-direction:column;align-items:stretch;gap:14px}
  .rv__card{border-radius:22px;padding:14px 18px;gap:14px}
  .rv__num{font-size:36px}
  .rv__cc{font-size:12px;gap:2px}
  .rv__cc .pfst{font-size:13px}
  .mq{margin:0;-webkit-mask-image:none;mask-image:none;padding:2px 0}
  .mq__row--b{display:none}
  .mq__row{animation-duration:60s;padding-left:16px}
  .mq__set{gap:10px;padding-right:10px}
  .rvc{width:290px;border-radius:24px;padding:18px;gap:12px}
  .rvc blockquote{font-size:14px;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
  .rvc__av{width:36px;height:36px;font-size:13px}
  .rvc__w b{font-size:13px}.rvc__w span,.rvc__src{font-size:11px}
  .rv__btns{padding:0 16px}
  .rv__btns .btn{width:100%;height:52px;font-size:14px}
  .rv__btns .btn--blue{display:none}
  /* процесс */
  .ps{padding-top:24px;padding-bottom:32px;gap:18px}
  .ps .sh{gap:18px}
  .ps__dot{width:40px;height:40px;margin:4px;border:0;box-shadow:0 0 0 4px #fff,0 0 0 5px var(--line2)}
  .ps__s.done .ps__dot{box-shadow:0 0 0 4px #fff,0 0 0 5px var(--blue)}
  .ps__n{font-size:16px}
  .ps__t{font-size:12px}
  .ps__c{padding:14px 16px}
  .ps__c p{font-size:13px}
  /* технологии */
  .stk{padding:8px 12px 32px}
  .sh--stk{display:none}
  .stk__box{border-radius:32px;padding:26px 16px 18px;display:flex;flex-direction:column;gap:16px}
  .stk__l{display:contents}
  .stk__lm{display:inline-flex;order:1}
  .stk__t{order:2;font-size:25px;line-height:1.08}
  .stk__hint{display:none}
  .stk__info{order:3;border-radius:20px;padding:16px;min-height:104px;gap:6px}
  .stk__k{font-size:11px}
  .stk__v{font-size:15px}
  .stk__code{order:4;border-radius:20px;padding:8px 0;font-size:11.5px;line-height:1.45;width:100%}
  .stk__bar{display:none}
  .cl{grid-template-columns:30px 1fr;padding:7px 12px 7px 0;cursor:pointer}
  .cl__no{padding-right:10px}
  .cl code{white-space:nowrap}
  .stk__hintm{display:block;order:5;font-size:12px;color:var(--td3)}
  .stk__tech{order:6;gap:6px}
  .stk__tech li{font-size:11px;padding:8px 11px;border-radius:10px}
  /* вопросы */
  .fq{padding-top:24px;padding-bottom:32px}
  .fq__grid{gap:16px}
  .fq__l{gap:16px}
  .fq__sub,.fq__own{display:none}
  .fq__chat{border-radius:28px;padding:10px;height:560px}
  .fq__head{height:56px;padding:0 12px;gap:10px;border-radius:20px}
  .fq__head img{width:36px;height:36px;border-radius:10px}
  .fq__head b{font-size:14px;text-transform:lowercase}
  .fq__head .st{font-size:11px}
  .fq__msgs{padding:12px 4px;gap:8px}
  .fq__pair{gap:8px}
  .fq__q{max-width:82%;border-radius:18px 18px 6px 18px;padding:11px 14px;font-size:14px}
  .fq__a{max-width:88%;border-radius:18px 18px 18px 6px;padding:12px 14px;font-size:14px;line-height:1.55}
  .fq__ty{border-radius:18px;padding:13px 16px}
  .fq__pick{border-radius:20px;padding:10px;gap:8px}
  .fq__left{font-size:11px;padding:0 4px}
  .fq__chips{flex-wrap:nowrap;overflow-x:auto;max-height:none;scrollbar-width:none}
  .fq__chips::-webkit-scrollbar{display:none}
  .fq__chip{flex:none;height:38px;padding:0 13px;font-size:13px}
  .fq__end{flex:none;white-space:nowrap}
  /* о студии */
  .ab{padding:24px 12px 32px;gap:10px}
  .ab__grid{grid-template-columns:1fr;gap:10px}
  .ab__photo{height:420px;min-height:0;border-radius:28px}
  .ab__name{left:12px;right:12px;bottom:12px;border-radius:18px;padding:12px 16px}
  .ab__name b{font-size:15px}
  .ab__name>div span{font-size:12px}
  .ab__city{font-size:11px}
  .ab__card{border-radius:28px;padding:22px 18px;gap:14px}
  .h2--44{font-size:24px;line-height:1.1}
  .ab__text{font-size:14px}
  .ab__cnt{gap:6px}
  .ab__cnt>div{border-radius:16px;padding:12px;gap:4px}
  .ab__cnt .num{font-size:24px;letter-spacing:-.03em}
  .ab__cnt>div>span:not(.num){font-size:11px}
  .ab__foot{padding-top:0;border:0}
  .ab__foot>span{font-size:11px}
  .ab__more{display:none}
  .ab__g{gap:10px}
  .gu{border-radius:22px;padding:16px;gap:8px}
  .gu__i{width:32px;height:32px;border-radius:10px;font-size:14px}
  .gu b{font-size:13px;letter-spacing:-.02em}
  .gu p{font-size:12px;line-height:1.45}
  /* контакты */
  .ct{padding:8px 12px 24px}
  .ct__box{border-radius:32px;padding:26px 16px 16px;gap:16px}
  .ct__l{gap:16px}
  .h2--76{font-size:36px;line-height:1.02}
  .ct__text{font-size:14px}
  .ct__ch{gap:8px;margin-top:0}
  .ct__c{border-radius:18px;padding:10px 12px;gap:10px}
  .ct__c .ch{width:38px;height:38px;font-size:11px}
  .ct__c b{font-size:13px}
  .ct__c>span>span{display:none}
  .ct__hours{display:none}
  .ct__form{border-radius:24px;padding:18px;gap:10px}
  .qf__t{font-size:17px;letter-spacing:-.03em}
  .ct__form .qf__l--svc,.ct__form .qf__svc{display:none}
  .pills--eq{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .pills--eq button{height:42px}
  /* подвал */
  .ft{padding-bottom:24px}
  .ft .wrap{padding:8px 12px 0;gap:10px}
  .ft__box{border-radius:28px;padding:22px 18px;grid-template-columns:1fr 1fr;grid-template-rows:none;gap:20px 18px}
  .ft__col{font-size:14px;gap:9px}
  .ft__logo{grid-column:1/3;grid-row:1;display:flex;justify-content:space-between;align-items:center;margin:0}
  .ft__col--nav{grid-column:1;grid-row:2}.ft__col--sv{grid-column:2;grid-row:2}.ft__col--soc{grid-column:1/3;grid-row:3}
  .ft__logo img{height:26px}
  .ft__up--m{display:flex;width:52px;height:52px;border-radius:50%;background:var(--ink);color:#fff;align-items:center;justify-content:center;font-size:18px}
  .ft__up{display:none}
  .ft__up.ft__up--m{display:flex}
  .ft__h{font-size:11px;margin:0}
  .ft__h--m{display:block}
  .ft__col .d{display:none}.ft__col .m{display:inline}
  .ft__col--soc a{align-self:stretch;display:flex;justify-content:space-between;gap:10px}
  .ft__legal{padding:0 8px;font-size:11px}
  /* плавающие */
  .lfb{left:12px;right:12px;bottom:calc(84px + env(safe-area-inset-bottom));transform:translateY(24px);border-radius:22px;padding:10px 10px 10px 16px;gap:10px;max-width:none}
  .lfb.on{transform:none}
  .lfb__t{font-size:13px;line-height:1.35;flex:1;white-space:normal}
  .lfb__go{height:42px;padding:0 14px;font-size:13px}
  .lfb__x{width:34px;height:34px;font-size:12px}
  .dock{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:50;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));
    background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line)}
  .dock__i{height:56px;border-radius:16px;background:var(--soft);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:11px;font-weight:600}
  .dock .ch{width:28px;height:28px;font-size:8px}
  html.lf-open .dock,html.mn-open .dock,html.ec-open .dock{display:none}
  body .ec-btn{width:64px;height:64px;padding:0;border-radius:20px;justify-content:center;right:16px!important;bottom:calc(92px + env(safe-area-inset-bottom))!important}
  body .ec-btn::after{display:none}
  body .ec-btn .ec-disc{width:44px;height:44px;border-radius:13px}
  body .ec-btn .ec-live{left:auto;right:8px;top:8px;bottom:auto;width:12px;height:12px;border-width:2px}
  html.bar-on body .ec-btn{bottom:calc(166px + env(safe-area-inset-bottom))!important}
  body:has(.ck) .ec-btn{bottom:calc(188px + env(safe-area-inset-bottom))!important}
  body .ec{left:0;right:0;bottom:0;width:auto;height:78vh;height:78svh;border-radius:28px 28px 0 0}
  body .ck{bottom:calc(84px + env(safe-area-inset-bottom))}
  .vmod{background:rgba(15,17,21,.88);padding:16px;-webkit-backdrop-filter:none;backdrop-filter:none}
  .vmod__h b{font-size:15px}
  .vmod__x{width:40px;height:40px}
  .vmod__v{border-radius:20px}
  .vmod__f{flex-direction:column;align-items:stretch}
  .vmod__f span{display:none}
  .vmod__f .btn{height:54px}
  /* окно заявки - шторка снизу */
  .lf{align-items:flex-end;padding:0;background:rgba(15,17,21,.55);-webkit-backdrop-filter:none;backdrop-filter:none}
  .lf__box{width:100%;max-height:92vh;max-height:92svh;border-radius:28px 28px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom));gap:16px;animation:lfSheet .45s var(--ease)}
  @keyframes lfSheet{from{transform:translateY(40%);opacity:0}to{transform:none;opacity:1}}
  .lf__grip{display:block;width:40px;height:4px;border-radius:2px;background:var(--line2);align-self:center;margin:-6px 0 -4px}
  .lf__head h2{font-size:19px;letter-spacing:-.03em}
  .lf__step{font-size:12px}
  .lf__x{width:40px;height:40px}
  .lf__bar{gap:5px}
  .lf__qt{font-size:22px}
  .lf__opts{grid-template-columns:1fr}
  .lf__opt{min-height:54px;border-radius:18px;padding:8px 18px;font-size:15px}
  .lf__two{grid-template-columns:1fr;gap:10px}
  .lf__two .fld{height:54px;border-radius:16px}
  .lf__seg{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .lf__seg button{height:44px;font-size:14px}
  .lf__send{height:56px!important;font-size:16px}
  .lf__okI{width:72px;height:72px;font-size:32px}
  .lf__ok b{font-size:22px}
  .lf__ok p{font-size:14px}
  .lf__row{flex-direction:column;align-self:stretch}
  .lf__row .btn{width:100%;height:54px}
}
@media (max-width:380px){
  .h1{font-size:28px}
  .hero__t1 .num,.hero__rt .num{font-size:34px}
  .ab__cnt .num{font-size:21px}
  .dock__i{font-size:10px}
}

/* ---------- reduced motion: без автопрокрутки, лент и появления ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .mq__row{animation:none!important}
  .mq{overflow-x:auto}
  .js .rvs>*{opacity:1;transform:none}
}

/* плашка «1-2 дня» на кнопке шапки - только где хватает ширины */
@media (max-width:1500px){.hdr__cta .pill{display:none}}

/* первый экран целиком в окне ноутбука (1366×768, 1536×864): ужимаем по высоте экрана, не по ширине */
@media (min-width:1025px) and (max-height:900px){
  .hero{grid-template-rows:auto auto clamp(150px,21vh,200px);padding-top:12px}
  .hero__card{padding:clamp(28px,4.4vh,44px);gap:clamp(16px,2.8vh,28px)}
  .h1{font-size:clamp(33px,min(4.58vw,7.3vh),66px)}
  .hero__sub{font-size:clamp(16px,2.1vh,19px)}
  .hero__ph{min-height:0}
  .hero__t1 .num,.hero__rt .num{font-size:clamp(40px,6vh,56px)}
}

/* «Есть вопрос?» - только после первого экрана (класс ставит site.js), открытый чат виден всегда */
body .ec-btn{transition:opacity .3s var(--ease),translate .35s var(--ease),visibility 0s,transform .25s var(--ease),box-shadow .25s var(--ease)}
html:not(.ec-show):not(.ec-open) body .ec-btn{opacity:0;translate:0 16px;visibility:hidden;pointer-events:none;transition:opacity .2s,translate .2s,visibility 0s .2s}

/* куки - компактная карточка: одна строка текста и две небольшие кнопки */
body .ck{left:auto;right:16px;bottom:16px;max-width:340px;padding:14px 16px;border-radius:18px;font-size:13px;line-height:1.45}
body .ck .ck-h,body .ck .ck-b,body .ck .ck-row .ck-more,body .ck .ck-btn b{display:none}
body .ck .ck-s{display:block;margin:0 0 10px;color:var(--t2)}
body .ck .ck-s .ck-more{margin:0;padding:0;font:inherit;letter-spacing:0;text-transform:none;color:var(--t2)}
body .ck .ck-btn i{display:inline;font-style:normal}
body .ck .ck-row{gap:8px;flex-wrap:nowrap}
body .ck .ck-btn{flex:1;height:36px;padding:0 12px;font-size:13px;text-align:center}
body .ck .ck-d{margin-top:10px;padding-top:10px;max-height:40vh;overflow:auto}
/* пока висит плашка куки, кнопка чата стоит над ней */
@media (min-width:769px){html body:has(.ck) .ec-btn{bottom:144px!important}}
@media (max-width:1180px){.hdr__lang{display:none}}
@media (max-width:768px){
  body .ck{left:12px;right:12px;max-width:none;bottom:calc(84px + env(safe-area-inset-bottom));padding:12px 14px;border-radius:18px;border-width:0}
}

/* ---------- телефон: плитки «Свежие работы» на первом экране нет - кейсы ниже, в «Наших работах».
   Её картинки не качаются: первая - в <picture> с пустым источником для ≤768, остальные site.js не грузит ---------- */
@media (max-width:768px){
  .hero__ph{display:none}
  .hero__t1,.hero__t2{grid-row:2}.hero__t3{grid-row:3}
}

/* ---------- скелетоны загрузки (класс .sk ставит site.js, снимает по load/error) ---------- */
@keyframes skSh{from{background-position:150% 0}to{background-position:-50% 0}}
@keyframes skIn{from{opacity:0}to{opacity:1}}
@keyframes skSpin{to{transform:rotate(360deg)}}
html img.sk{color:transparent;background-color:var(--sk,#E9EDF6);background-image:linear-gradient(100deg,transparent 30%,var(--skh,rgba(255,255,255,.7)) 50%,transparent 70%);background-size:200% 100%;background-repeat:no-repeat}
html img.sk.sk-a{animation:skSh 1.4s linear infinite}
html img.sk-in{animation:skIn .45s var(--ease) both}
/* тёмные блоки - тёмная заглушка */
.dark,.tile--dark,.fact--dark,.next2,.lb,.vmod{--sk:#23283A;--skh:rgba(255,255,255,.08)}
/* видео «Как мы работаем»: заглушка до постера и индикатор, пока ролик не готов (canplay) */
.vmod.ld video{background:#1C2030 linear-gradient(100deg,transparent 30%,rgba(255,255,255,.07) 50%,transparent 70%) no-repeat;background-size:200% 100%;animation:skSh 1.4s linear infinite}
.vmod__v::after,.lb__body::after{content:"";position:absolute;left:50%;top:50%;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,visibility 0s .2s}
.vmod.ld .vmod__v::after,.lb.ld .lb__body::after{opacity:1;visibility:visible;transition:opacity .2s .15s;animation:skSpin .8s linear infinite}
.lb.ld .lb__img{opacity:.35;transition:opacity .2s}
@media (prefers-reduced-motion:reduce){
  html img.sk.sk-a,html img.sk-in,.vmod.ld video,.vmod.ld .vmod__v::after,.lb.ld .lb__body::after{animation:none}
  html img.sk{background-image:none}
}

/* ---------- «живой» сайт (10.2026): прокрутка кейсов, первый экран за курсором, сборка логотипа, блик кнопки.
   Всё выключено при prefers-reduced-motion; прокрутка и параллакс - только ПК (pointer:fine), логика - site.js ---------- */
/* 1. кейс «листается» при наведении: высокий кадр (data-full) поверх обложки, едет transform'ом (site.js) */
.sc__f{position:relative}
.hsc{position:absolute;inset:0;z-index:1;overflow:hidden;border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .3s var(--ease);background:var(--img-d)}
.sc__f>.hsc{inset:10px;border-radius:16px}
.pfc__im>.hsc{background:#E3E7F1}
.hsc.on{opacity:1}
.hsc>img{display:block;width:100%!important;height:auto!important;max-width:none;aspect-ratio:auto!important;object-fit:fill!important;border-radius:0!important;transform:translate3d(0,0,0);will-change:transform;backface-visibility:hidden}
.pfc__im>.pfc__n{z-index:2}

/* 2. первый экран за курсором: наклон и сдвиг плиток пишет site.js в style.transform (класс .px на #hero);
   подъём при наведении - отдельными свойствами translate/rotate, чтобы не спорить с наклоном */
.hero.px .hero__ph,.hero.px .tile{transition:translate .25s var(--ease),rotate .25s var(--ease),box-shadow .25s var(--ease);will-change:transform;backface-visibility:hidden}
.hero.px .hero__t1:hover,.hero.px .hero__t2:hover,.hero.px .hero__t3:hover{transform:none;translate:0 -4px}
.hero.px .hero__t1:hover{rotate:-1deg}

/* 3. знак собирается из двух половин (как в начале ролика), слово проявляется шторкой; один раз за сессию (класс .lg-a) */
.hdr__logo svg{overflow:visible}
@keyframes lgL{from{transform:translateX(-84px);opacity:0}45%{opacity:1}to{transform:none;opacity:1}}
@keyframes lgR{from{transform:translateX(84px);opacity:0}45%{opacity:1}to{transform:none;opacity:1}}
@keyframes lgW{from{transform:translateX(-36px);opacity:0;clip-path:inset(-10% 100% -10% 0)}30%{opacity:1}to{transform:none;opacity:1;clip-path:inset(-10% 0 -10% 0)}}
@media (prefers-reduced-motion:no-preference){
  .lg-a .hdr__logo .lg__l{animation:lgL .6s var(--ease) backwards}
  .lg-a .hdr__logo .lg__r{animation:lgR .6s var(--ease) backwards}
  .lg-a .hdr__logo .lg__w{animation:lgW .55s cubic-bezier(.65,0,.35,1) .15s backwards}
}

/* 4. блик на главной кнопке: полоса света раз в 10 с (проход ~0,8 с); пауза на hover и в скрытой вкладке (.tab-h) */
.shn{position:relative;overflow:hidden;isolation:isolate}
@keyframes shn{0%{transform:translateX(-110%) skewX(-20deg)}8%,100%{transform:translateX(260%) skewX(-20deg)}}
@media (prefers-reduced-motion:no-preference){
  .shn::after{content:"";position:absolute;top:0;bottom:0;left:0;width:42%;pointer-events:none;
    background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.34) 50%,rgba(255,255,255,0));
    transform:translateX(-110%) skewX(-20deg);animation:shn 10s cubic-bezier(.45,0,.25,1) 3s infinite both;transition:opacity .2s}
  .hero__btns .shn::after{animation-delay:3.35s}
  .shn:hover::after,.tab-h .shn::after{animation-play-state:paused}
  .shn:hover::after{opacity:0}
}
@media (prefers-reduced-motion:reduce){.hsc{display:none}}
