/* NOBODY studio — стили сайта. Пустота → тело → свет. */

/* ---------- шрифты ---------- */
@font-face{font-family:"Science Gothic";font-style:normal;font-weight:100 900;font-stretch:50% 200%;font-display:swap;src:url(/assets/fonts/ScienceGothic-cyrillic-ext.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Science Gothic";font-style:normal;font-weight:100 900;font-stretch:50% 200%;font-display:swap;src:url(/assets/fonts/ScienceGothic-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Science Gothic";font-style:normal;font-weight:100 900;font-stretch:50% 200%;font-display:swap;src:url(/assets/fonts/ScienceGothic-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Science Gothic";font-style:normal;font-weight:100 900;font-stretch:50% 200%;font-display:swap;src:url(/assets/fonts/ScienceGothic-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:Geologica;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/Geologica-cyrillic-ext.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:Geologica;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/Geologica-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Geologica;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/Geologica-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Geologica;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/Geologica-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:"Martian Mono";font-style:normal;font-weight:100 800;font-stretch:75% 112.5%;font-display:swap;src:url(/assets/fonts/MartianMono-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Martian Mono";font-style:normal;font-weight:100 800;font-stretch:75% 112.5%;font-display:swap;src:url(/assets/fonts/MartianMono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- токены ---------- */
@property --bg{syntax:"<color>";inherits:true;initial-value:#000}
@property --fg{syntax:"<color>";inherits:true;initial-value:#fff}
@property --muted{syntax:"<color>";inherits:true;initial-value:#8e9199}
@property --line{syntax:"<color>";inherits:true;initial-value:rgba(255,255,255,.14)}
@property --surface{syntax:"<color>";inherits:true;initial-value:#0e0e10}
@property --btn-bg{syntax:"<color>";inherits:true;initial-value:#fff}
@property --btn-fg{syntax:"<color>";inherits:true;initial-value:#000}
@property --focus{syntax:"<color>";inherits:true;initial-value:#6b7bff}

:root{
  --void:#000;--klein:#1f33ff;--klein-deep:#1426d6;--light:#edeef0;--ink:#0b0b0c;
  --ok:#3fd68c;--warn:#ffb224;--danger:#ff5a4e;
  --ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--ease-drawer:cubic-bezier(.32,.72,0,1);
  --pad:clamp(20px,4.2vw,72px);--nav-h:76px;
  --r-pill:999px;--r-slab:28px;--r-media:20px;--r-input:14px;
  --f-display:"Science Gothic","Geologica",system-ui,sans-serif;
  --f-body:"Geologica",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-mono:"Martian Mono",ui-monospace,monospace;
}
html[data-theme="void"]{--bg:#000;--fg:#fff;--muted:#8e9199;--line:rgba(255,255,255,.14);--surface:#0e0e10;--btn-bg:#fff;--btn-fg:#000;--focus:#6b7bff}
html[data-theme="klein"]{--bg:#1f33ff;--fg:#fff;--muted:rgba(255,255,255,.76);--line:rgba(255,255,255,.26);--surface:rgba(255,255,255,.08);--btn-bg:#fff;--btn-fg:#1f33ff;--focus:#fff}
html[data-theme="light"]{--bg:#edeef0;--fg:#0b0b0c;--muted:#5b5e66;--line:rgba(0,0,0,.13);--surface:#fff;--btn-bg:#0b0b0c;--btn-fg:#fff;--focus:#1f33ff}

/* ---------- основа ---------- */
*,*::before,*::after{box-sizing:border-box}
html{background:var(--bg);color:var(--fg);-webkit-text-size-adjust:100%;text-size-adjust:100%;
  transition:--bg .9s var(--ease-in-out),--fg .6s var(--ease-in-out),--muted .6s var(--ease-in-out),--line .6s var(--ease-in-out),--surface .6s var(--ease-in-out),--btn-bg .6s var(--ease-in-out),--btn-fg .6s var(--ease-in-out),--focus .6s}
html.lenis,html.lenis body{height:auto}
body{margin:0;font-family:var(--f-body);font-size:17px;line-height:1.55;font-weight:360;letter-spacing:-.003em;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip;min-height:100vh}
img,svg,canvas,video{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,p,figure,blockquote,dl,dd{margin:0}
h1,h2,h3{font-weight:inherit}
::selection{background:var(--klein);color:#fff}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:6px}
main:focus{outline:none}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:fixed;left:16px;top:16px;z-index:200;padding:12px 18px;border-radius:999px;background:#fff;color:#000;transform:translateY(-200%);transition:transform .3s var(--ease-out)}
.skip:focus{transform:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- типографика разделов ---------- */
section{position:relative;padding:clamp(96px,13vw,200px) var(--pad)}
.section-head{display:grid;gap:22px;margin-bottom:clamp(44px,6.5vw,96px);max-width:1180px}
.section-head--row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px 48px;max-width:none}
.section-head--row .section-lead{max-width:440px}
.section-title{font-family:var(--f-display);font-weight:340;font-stretch:112%;font-size:clamp(46px,7.4vw,128px);line-height:.92;letter-spacing:-.018em;text-wrap:balance}
.section-lead{font-size:clamp(17px,1.35vw,21px);line-height:1.5;color:var(--muted);max-width:560px;text-wrap:pretty}
.link-more{display:inline-flex;align-items:baseline;gap:6px;font-size:18px;padding:10px 0;position:relative}
.link-more::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:currentColor;transform-origin:right;transition:transform .5s var(--ease-out)}
.link-more:hover::after{transform:scaleX(0)}
.link-more sup{font-size:12px;color:var(--muted)}

/* ---------- кнопки ---------- */
.btn{--h:56px;position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:var(--h);padding:0 28px;border:0;border-radius:var(--r-pill);
  font:500 16px/1 var(--f-body);letter-spacing:-.005em;white-space:nowrap;user-select:none;transition:transform .25s var(--ease-out),color .35s var(--ease-out),box-shadow .35s}
.btn::before{content:"";position:absolute;z-index:-1;left:var(--x,50%);top:var(--y,50%);width:var(--d,240px);height:var(--d,240px);margin:calc(var(--d,240px) / -2) 0 0 calc(var(--d,240px) / -2);border-radius:50%;background:var(--klein);transform:scale(0);transition:transform .55s var(--ease-out)}
.btn:hover::before{transform:scale(1)}
.btn:active{transform:scale(.97)}
.btn--primary{background:var(--btn-bg);color:var(--btn-fg)}
.btn--primary:hover{color:#fff}
.btn--ghost{background:transparent;color:inherit;box-shadow:inset 0 0 0 1px var(--line)}
.btn--ghost::before{background:var(--fg)}
.btn--ghost:hover{color:var(--bg)}
.btn--light{background:#fff;color:#000}
.btn--light::before{background:#000}
.btn--light:hover{color:#fff}
html[data-theme="klein"] .btn--primary::before{background:#000}
.btn[disabled]{opacity:.5;pointer-events:none}
.btn.is-loading .btn__label{opacity:0}
.btn.is-loading::after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(1turn)}}
.icon-btn{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;border:0;background:transparent;color:inherit;box-shadow:inset 0 0 0 1px var(--line);transition:background-color .25s,color .25s,transform .2s var(--ease-out)}
.icon-btn:hover{background:var(--fg);color:var(--bg)}
.icon-btn:active{transform:scale(.92)}
.icon-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ---------- навигация ---------- */
.nav{position:fixed;inset:0 0 auto;z-index:60;height:var(--nav-h);display:flex;align-items:center;gap:20px;padding:0 var(--pad);color:var(--fg);transition:transform .55s var(--ease-drawer)}
.nav::before{content:"";position:absolute;inset:0 0 -24px;z-index:-1;background:linear-gradient(var(--bg) 30%,transparent);opacity:0;transition:opacity .4s;pointer-events:none}
.nav.is-scrolled::before{opacity:.92}
.nav.is-hidden{transform:translateY(-105%)}
.nav__logo{display:flex;align-items:baseline;gap:8px;padding:8px 0}
.nav__word{font-family:var(--f-display);font-size:23px;font-weight:620;font-stretch:128%;letter-spacing:-.01em;line-height:1}
.nav__studio{font-size:13px;color:var(--muted)}
.nav__chapter{position:relative;height:20px;overflow:hidden;font-size:14px;color:var(--muted);min-width:120px}
.nav__chapter::before{content:"/";margin-right:8px;opacity:.6}
.nav__chapter-in{display:inline-block;transition:opacity .35s var(--ease-out),filter .35s var(--ease-out),transform .35s var(--ease-out)}
.nav__chapter-in.is-out{opacity:0;filter:blur(6px);transform:translateY(-8px)}
.nav__chapter-in.is-in{opacity:0;filter:blur(6px);transform:translateY(8px);transition:none}
.nav__links{display:flex;gap:4px;margin-left:auto}
.nav__links a{position:relative;padding:10px 12px;font-size:15px;border-radius:999px;transition:color .3s}
.nav__links a::after{content:"";position:absolute;left:12px;right:12px;bottom:6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease-out)}
.nav__links a:hover::after{transform:scaleX(1)}
.nav__cta{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 20px 0 6px;border-radius:999px;background:var(--btn-bg);color:var(--btn-fg);font-size:15px;font-weight:500;transition:transform .25s var(--ease-out)}
.nav__cta:active{transform:scale(.96)}
.nav__cta-text{white-space:nowrap}
@media (max-width:420px){.nav__cta-more{display:none}}
.nav__island{display:inline-flex;align-items:center;height:34px;padding:0 12px;border-radius:999px;background:var(--btn-fg);color:var(--btn-bg);font-size:13px;transition:padding .5s var(--ease-drawer)}
.nav__pulse{position:relative;width:8px;height:8px;border-radius:50%;background:var(--ok);flex:none}
.nav__pulse::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid var(--ok);opacity:0;animation:pulse 2.4s var(--ease-out) infinite}
[data-open="0"] .nav__pulse,[data-open="0"].menu__status .nav__pulse{background:var(--warn)}
[data-open="0"] .nav__pulse::after{border-color:var(--warn)}
@keyframes pulse{0%{opacity:.9;transform:scale(.6)}80%,100%{opacity:0;transform:scale(1.6)}}
.nav__status{display:grid;grid-template-columns:0fr;transition:grid-template-columns .55s var(--ease-drawer),margin .55s var(--ease-drawer)}
.nav__status-in{min-width:0;overflow:hidden;white-space:nowrap;opacity:0;transition:opacity .3s}
.nav__cta:hover .nav__status,.nav__cta:focus-visible .nav__status{grid-template-columns:1fr;margin-left:8px}
.nav__cta:hover .nav__status-in,.nav__cta:focus-visible .nav__status-in{opacity:1;transition-delay:.12s}
.nav__burger{display:none;position:relative;width:46px;height:46px;border:0;border-radius:50%;background:transparent;color:inherit;box-shadow:inset 0 0 0 1px var(--line)}
.nav__burger i{position:absolute;left:14px;right:14px;height:1.5px;background:currentColor;border-radius:2px;transition:transform .45s var(--ease-drawer)}
.nav__burger i:first-child{top:19px}.nav__burger i:last-child{top:26px}
.nav__burger[aria-expanded="true"] i:first-child{transform:translateY(3.5px) rotate(45deg)}
.nav__burger[aria-expanded="true"] i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.progress{position:fixed;inset:0 0 auto;height:2px;z-index:61;pointer-events:none}
.progress i{display:block;height:100%;background:var(--fg);opacity:.55;transform-origin:left;transform:scaleX(0)}

.menu{position:fixed;inset:0;z-index:55;background:var(--klein);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:calc(var(--nav-h) + 24px) var(--pad) 32px;clip-path:circle(0 at var(--cx,90%) var(--cy,36px));transition:clip-path .7s var(--ease-drawer);--focus:#fff}
.menu[hidden]{display:none}
.menu.is-open{clip-path:circle(150% at var(--cx,90%) var(--cy,36px))}
.menu__links{display:grid;gap:4px}
.menu__links a{font-family:var(--f-display);font-size:clamp(40px,11vw,72px);font-stretch:118%;font-weight:340;line-height:1.05;opacity:0;transform:translateY(24px);transition:opacity .5s var(--ease-out),transform .6s var(--ease-out)}
.menu.is-open .menu__links a{opacity:1;transform:none}
.menu.is-open .menu__links a:nth-child(2){transition-delay:.04s}.menu.is-open .menu__links a:nth-child(3){transition-delay:.08s}.menu.is-open .menu__links a:nth-child(4){transition-delay:.12s}.menu.is-open .menu__links a:nth-child(5){transition-delay:.16s}
.menu__foot{display:grid;gap:0;font-size:16px}
.menu__foot a{justify-self:start;padding:11px 0}
.menu__status{margin-bottom:8px}
.menu__status{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.8)}
html.menu-open,html.lb-open{overflow:hidden}
html.menu-open .nav{color:#fff}
html.menu-open .nav::before{opacity:0}
html.menu-open .nav__cta{opacity:0;pointer-events:none}

/* ---------- курсор ---------- */
.cursor{position:fixed;left:0;top:0;z-index:70;pointer-events:none;width:0;height:0}
.cursor__label{position:absolute;left:0;top:0;display:grid;place-items:center;width:96px;height:96px;margin:-48px 0 0 -48px;border-radius:50%;background:var(--klein);color:#fff;font-size:14px;font-weight:500;transform:scale(0);transition:transform .45s var(--ease-out)}
.cursor.is-on .cursor__label{transform:scale(1)}
@media (hover:none){.cursor{display:none}}

/* ---------- герой ---------- */
.hero{min-height:100svh;display:grid;grid-template-rows:1fr auto;padding-top:calc(var(--nav-h) + 20px);padding-bottom:26px;overflow:hidden;isolation:isolate;--lx:50%;--ly:42%;--reveal:0}
.hero__fog{position:absolute;inset:0;width:100%;height:100%;z-index:-2;opacity:0;transition:opacity 1.6s var(--ease-out)}
.hero__fog.is-ready{opacity:1}
.hero::before{content:"";position:absolute;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(60% 55% at var(--lx) var(--ly),rgba(31,51,255,.34),rgba(31,51,255,.08) 45%,transparent 70%)}
.hero:has(.hero__fog.is-ready)::before{opacity:0}
.hero__dots{position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.22) 1px,transparent 1.4px);background-size:26px 26px;background-position:center;
  -webkit-mask-image:radial-gradient(circle at var(--lx) var(--ly),#000 0,rgba(0,0,0,.35) 22%,transparent 52%);mask-image:radial-gradient(circle at var(--lx) var(--ly),#000 0,rgba(0,0,0,.35) 22%,transparent 52%)}
.hero__inner{align-self:center;display:grid;gap:clamp(28px,4.4vw,64px);padding-top:clamp(12px,3vh,40px)}
.hero__title{display:grid;gap:clamp(18px,2.6vw,36px)}
.wordmark{display:grid;font-family:var(--f-display);font-weight:200;font-size:var(--wm-size,clamp(64px,17vw,320px));line-height:.78;letter-spacing:0;user-select:none;margin-left:-.02em}
.wordmark__layer{grid-area:1/1;display:flex;justify-content:space-between;white-space:nowrap}
.wordmark__layer span{display:inline-block;font-stretch:118%}
.wordmark__layer--outline{color:transparent;-webkit-text-stroke:1.2px rgba(255,255,255,.42)}
.wordmark__layer--fill{color:#fff;-webkit-mask-image:radial-gradient(circle at var(--mx,50%) var(--my,50%),#000 0,#000 calc(var(--r,14vw) * .35),transparent var(--r,14vw));mask-image:radial-gradient(circle at var(--mx,50%) var(--my,50%),#000 0,#000 calc(var(--r,14vw) * .35),transparent var(--r,14vw))}
.hero__headline{font-family:var(--f-body);font-weight:300;font-size:clamp(28px,3.6vw,60px);line-height:1.06;letter-spacing:-.03em;max-width:15em;text-wrap:balance}
.hero__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px 48px}
.hero__lead{max-width:540px;font-size:clamp(17px,1.3vw,20px);line-height:1.5;color:var(--muted)}
.hero__actions{display:flex;flex-wrap:wrap;gap:12px}
.hero__foot{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted);padding-top:28px}
.hero__scroll{display:inline-flex;align-items:center;gap:12px}
.hero__scroll i{position:relative;width:1px;height:28px;background:var(--line);overflow:hidden}
.hero__scroll i::after{content:"";position:absolute;inset:0;background:var(--fg);transform-origin:top;animation:drip 2.2s var(--ease-in-out) infinite}
@keyframes drip{0%{transform:scaleY(0)}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.hero__local{font-variant-numeric:tabular-nums}
/* интро: только когда JS готов его проиграть */
.js .intro .wordmark__layer span{font-stretch:50%;opacity:0}
.js .intro .hero__headline,.js .intro .hero__row,.js .intro .hero__foot{opacity:0;transform:translateY(18px)}
.hero__headline,.hero__row,.hero__foot{transition:opacity 1s var(--ease-out),transform 1.1s var(--ease-out)}
.hero__row{transition-delay:.12s}.hero__foot{transition-delay:.24s}

/* ---------- бегущая строка ---------- */
.marquee{overflow:hidden;padding:clamp(22px,3vw,40px) 0;border-block:1px solid var(--line);user-select:none}
.marquee__track{display:flex;align-items:center;gap:clamp(22px,2.8vw,48px);width:max-content;will-change:transform}
.marquee span{font-family:var(--f-display);font-size:clamp(40px,6.6vw,112px);font-stretch:126%;font-weight:260;line-height:1;white-space:nowrap}
.marquee i{flex:none;width:clamp(22px,2.4vw,38px);aspect-ratio:1;background:var(--klein);clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);transform:rotate(var(--rot,0deg))}

/* ---------- манифест ---------- */
.manifesto{padding-top:clamp(110px,15vw,240px)}
.manifesto__text{font-size:clamp(30px,4.6vw,78px);line-height:1.1;letter-spacing:-.03em;font-weight:300;max-width:20em;text-wrap:pretty}
.w{display:inline-grid;vertical-align:top}
.w>span{grid-area:1/1}
.w__ghost{visibility:hidden;font-weight:500}
.w__live{font-weight:var(--g,260);opacity:var(--o,.24)}
.pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(72px,10vw,150px);border-top:1px solid var(--line)}
.pillar{display:grid;gap:12px;align-content:start;padding:28px 24px 0 0}
.pillar+.pillar{padding-left:24px;border-left:1px solid var(--line)}
.pillar__title{font-family:var(--f-display);font-size:clamp(24px,2.3vw,36px);font-weight:400;font-stretch:112%;line-height:1.05;letter-spacing:-.01em}
.pillar__text{font-size:15px;line-height:1.5;color:var(--muted);max-width:22em}
@media (max-width:999px){.pillars{grid-template-columns:1fr 1fr}.pillar:nth-child(3){padding-left:0;border-left:0}.pillar:nth-child(n+3){border-top:1px solid var(--line);margin-top:28px}}
@media (max-width:599px){.pillars{grid-template-columns:1fr}.pillar,.pillar+.pillar{padding:22px 0 0;border-left:0}.pillar+.pillar{border-top:1px solid var(--line);margin-top:22px}.pillar:nth-child(n+3){margin-top:22px}}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:clamp(56px,7vw,110px);border-top:1px solid var(--line)}
.stat{display:grid;gap:10px;align-content:start;padding:28px 24px 0 0}
.stat+.stat{padding-left:24px;border-left:1px solid var(--line)}
.stat__value{font-family:var(--f-display);font-size:clamp(48px,5.6vw,96px);font-stretch:110%;font-weight:300;line-height:.9;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.stat__label{font-size:15px;color:var(--muted);max-width:16em}

/* ---------- услуги ---------- */
.svc-list{border-top:1px solid var(--line);position:relative;z-index:1}
.svc{border-bottom:1px solid var(--line)}
.svc__h{font:inherit}
.svc__row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:clamp(20px,2.3vw,34px) 0;border:0;background:none;text-align:left;color:inherit}
.svc__title{font-family:var(--f-display);font-size:clamp(30px,4.5vw,76px);font-stretch:100%;font-weight:300;line-height:1;letter-spacing:-.015em;transition:font-stretch .6s var(--ease-out),font-weight .6s var(--ease-out),transform .6s var(--ease-out)}
.svc__row:hover .svc__title,.svc.is-open .svc__title{font-stretch:124%;font-weight:420}
.svc__plus{position:relative;flex:none;width:48px;height:48px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line);transition:background-color .3s,transform .5s var(--ease-out)}
.svc__plus::before,.svc__plus::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:1.5px;margin:-.75px 0 0 -8px;background:currentColor;transition:transform .5s var(--ease-out)}
.svc__plus::after{transform:rotate(90deg)}
.svc.is-open .svc__plus{background:#fff;color:var(--klein)}
.svc.is-open .svc__plus::after{transform:rotate(0)}
.svc__body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .6s var(--ease-drawer)}
.svc.is-open .svc__body,.no-js .svc__body{grid-template-rows:1fr}
.svc__inner{overflow:hidden;min-height:0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:8px 48px}
.svc__text{grid-column:1;font-size:clamp(18px,1.5vw,23px);line-height:1.45;max-width:34em;padding-bottom:8px}
.svc__tags{grid-column:1;color:var(--muted);font-size:15px;padding-bottom:20px}
.svc__price{margin-left:auto;flex:none;font-size:clamp(15px,1.25vw,19px);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;transition:color .3s}
.svc__row:hover .svc__price,.svc.is-open .svc__price{color:inherit}
.svc__cta{grid-column:1;padding-bottom:34px}
.svc__scene{grid-column:2;grid-row:1/span 3;justify-self:end;align-self:start;width:min(100%,300px);margin:0 0 30px;border-radius:24px;background:#fff;overflow:hidden}
.svc-float{position:fixed;left:0;top:0;z-index:5;width:340px;pointer-events:none;opacity:0;transform:translate3d(-999px,-999px,0);transition:opacity .3s var(--ease-out)}
.svc-float.is-on{opacity:1}
.svc-float__card{position:relative;aspect-ratio:320/220;border-radius:28px;background:#fff;box-shadow:0 40px 80px -24px rgba(0,0,20,.45),0 12px 24px -12px rgba(0,0,20,.3);overflow:hidden;transform:scale(.6);opacity:0;transition:transform .55s var(--ease-out),opacity .3s}
.svc-float.is-on .svc-float__card{transform:scale(1);opacity:1}
.svc-float__card .scene{position:absolute;inset:0;width:100%;height:100%;opacity:0;transform:scale(.94);transition:opacity .35s,transform .5s var(--ease-out)}
.svc-float__card .scene.is-active{opacity:1;transform:none}
@media (hover:none),(max-width:999px){
  .svc-float{display:none}
  .svc__inner{grid-template-columns:1fr}
  .svc__scene{grid-column:1;grid-row:auto;justify-self:start;width:100%;max-width:520px;margin:4px 0 30px}
  .svc__tags{padding-bottom:14px}
  .svc__cta{padding-bottom:18px}
}
@media (max-width:599px){
  .svc__row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t p" "s p";column-gap:16px;row-gap:8px}
  .svc__title{grid-area:t}
  .svc__price{grid-area:s;margin:0;font-size:15px}
  .svc__plus{grid-area:p;align-self:center}
}

/* мини-сцены: белая карточка, кляйн и чернила */
.scene{width:100%;height:auto;fill:none;stroke-linecap:round;stroke-linejoin:round}
.scene .s-frame{fill:#fff;stroke:#0b0b0c;stroke-width:2}
.scene .s-line{stroke:#0b0b0c;stroke-width:2}
.scene .s-fill{fill:#1f33ff}
.scene .s-soft{fill:#e3e6ff}
.scene .s-card{fill:#fff;stroke:#0b0b0c;stroke-width:2}
.scene .s-sun{fill:#1f33ff;opacity:.16}
.scene .s-dot{fill:#0b0b0c}
.scene .s-draw{stroke:#1f33ff;stroke-width:3;stroke-dasharray:400;stroke-dashoffset:0}
.scene .s-cart{stroke:#0b0b0c;stroke-width:2.5}
.scene .s-note{fill:#0b0b0c}
.scene .s-handle{fill:#fff;stroke:#1f33ff;stroke-width:2}
.scene *{transform-box:fill-box;transform-origin:center}
.scene:not(.is-playing) *{animation-play-state:paused!important}
.scene--web .w1{animation:grow 3.6s var(--ease-out) infinite;transform-origin:left}
.scene--web .w2{animation:grow 3.6s var(--ease-out) .12s infinite;transform-origin:left}
.scene--web .w3{animation:pop 3.6s var(--ease-out) .3s infinite}
.scene--web .c1{animation:rise 3.6s var(--ease-out) .45s infinite}
.scene--web .c2{animation:rise 3.6s var(--ease-out) .55s infinite}
.scene--web .c3{animation:rise 3.6s var(--ease-out) .65s infinite}
.scene--web .s-sun{animation:breathe 3.6s var(--ease-in-out) infinite}
.scene--service .b1{animation:barUp 3.2s var(--ease-out) infinite;transform-origin:bottom}
.scene--service .b2{animation:barUp 3.2s var(--ease-out) .1s infinite;transform-origin:bottom}
.scene--service .b3{animation:barUp 3.2s var(--ease-out) .2s infinite;transform-origin:bottom}
.scene--service .b4{animation:barUp 3.2s var(--ease-out) .3s infinite;transform-origin:bottom}
.scene--service .s-draw{animation:draw 3.2s var(--ease-in-out) infinite}
.scene--mobile .feed{animation:feed 4.8s var(--ease-in-out) infinite;transform-box:view-box;transform-origin:0 0}
.scene--mobile .s-note{animation:notify 4.8s var(--ease-out) infinite}
.scene--telegram .m1{animation:pop 4s var(--ease-out) infinite;transform-origin:left}
.scene--telegram .m2{animation:pop 4s var(--ease-out) .35s infinite;transform-origin:right}
.scene--telegram .m3{animation:pop 4s var(--ease-out) .7s infinite;transform-origin:left}
.scene--telegram .sheet{animation:sheet 4s var(--ease-drawer) infinite;transform-box:view-box}
.scene--ecommerce .item{animation:toCart 3.4s var(--ease-in-out) infinite;transform-box:view-box;transform-origin:146px 172px}
.scene--ecommerce .plus{animation:press 3.4s var(--ease-out) infinite}
.scene--ecommerce .badge{animation:bump 3.4s var(--ease-out) infinite}
.scene--ai .s-draw{stroke-dasharray:140;animation:flow 3s var(--ease-in-out) infinite}
.scene--ai .l2{animation-delay:.15s}.scene--ai .l3{animation-delay:.3s}.scene--ai .l4{animation-delay:.6s}.scene--ai .l5{animation-delay:.75s}
.scene--ai .core{animation:breathe 1.5s var(--ease-in-out) infinite}
.scene--ai .o1{animation:pop 3s var(--ease-out) 1.1s infinite}.scene--ai .o2{animation:pop 3s var(--ease-out) 1.3s infinite}
.scene--design .curve{stroke-dasharray:360;animation:draw 3.8s var(--ease-in-out) infinite}
.scene--design .h1,.scene--design .k1{animation:fadeIn 3.8s var(--ease-out) .6s infinite}
.scene--design .h2,.scene--design .k2{animation:fadeIn 3.8s var(--ease-out) 1s infinite}
.scene--design .sw1{animation:pop 3.8s var(--ease-out) 1.4s infinite}.scene--design .sw2{animation:pop 3.8s var(--ease-out) 1.55s infinite}.scene--design .sw3{animation:pop 3.8s var(--ease-out) 1.7s infinite}
@keyframes grow{0%{transform:scaleX(0)}25%,85%{transform:scaleX(1)}100%{transform:scaleX(1);opacity:0}}
@keyframes pop{0%{transform:scale(0);opacity:0}18%,85%{transform:scale(1);opacity:1}100%{transform:scale(1);opacity:0}}
@keyframes rise{0%{transform:translateY(18px);opacity:0}22%,85%{transform:none;opacity:1}100%{opacity:0}}
@keyframes breathe{0%,100%{transform:scale(.9)}50%{transform:scale(1.12)}}
@keyframes barUp{0%{transform:scaleY(.1)}30%,80%{transform:scaleY(1)}100%{transform:scaleY(.1)}}
@keyframes draw{0%{stroke-dashoffset:400}45%,80%{stroke-dashoffset:0}100%{stroke-dashoffset:-400}}
@keyframes feed{0%,18%{transform:translateY(0)}36%,52%{transform:translateY(-52px)}70%,86%{transform:translateY(-104px)}100%{transform:translateY(0)}}
@keyframes notify{0%,30%{transform:translateY(-60px);opacity:0}40%,70%{transform:none;opacity:1}80%,100%{transform:translateY(-60px);opacity:0}}
@keyframes sheet{0%,40%{transform:translateY(110px)}55%,88%{transform:none}100%{transform:translateY(110px)}}
@keyframes toCart{0%,20%{transform:none;opacity:0}28%{opacity:1}55%{transform:translate(124px,-86px) scale(.6);opacity:1}62%,100%{transform:translate(124px,-86px) scale(0);opacity:0}}
@keyframes press{0%,18%{transform:scale(1)}22%{transform:scale(.82)}30%,100%{transform:scale(1)}}
@keyframes bump{0%,56%{transform:scale(1)}62%{transform:scale(1.35)}72%,100%{transform:scale(1)}}
@keyframes flow{0%{stroke-dashoffset:140}40%,75%{stroke-dashoffset:0}100%{stroke-dashoffset:-140}}
@keyframes fadeIn{0%{opacity:0}15%,85%{opacity:1}100%{opacity:0}}

/* ---------- работы: стопка плит ---------- */
.slabs{display:grid}
.slab{--accent:#1f33ff;--p:0;position:sticky;top:calc(var(--nav-h) + 8px + var(--i,0) * 10px);height:min(80vh,760px);min-height:520px;margin-bottom:6vh;border-radius:var(--r-slab);overflow:hidden;
  background:color-mix(in oklab,var(--accent) 24%,#09090a);color:#fff;transform-origin:50% 0;transform:scale(calc(1 - var(--p) * .06));will-change:transform}
.slab::after{content:"";position:absolute;inset:0;background:#000;opacity:calc(var(--p) * .55);pointer-events:none;border-radius:inherit}
.slab:last-child{margin-bottom:0}
.slab__link{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);height:100%}
.slab__media{position:relative;margin:12px 0 12px 12px;border-radius:calc(var(--r-slab) - 10px);overflow:hidden;background:var(--accent)}
.slab__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.015);transition:transform 1.4s var(--ease-out)}
.slab__link:hover .slab__img{transform:scale(1.06)}
.slab__info{display:flex;flex-direction:column;gap:18px;padding:clamp(24px,3vw,48px);min-width:0}
.slab__top{display:flex;gap:14px;font-size:14px;color:rgba(255,255,255,.72)}
.slab__idx{margin-left:auto;font-variant-numeric:tabular-nums}
.slab__title{font-family:var(--f-display);font-size:clamp(38px,4.2vw,76px);font-stretch:108%;font-weight:400;line-height:.94;letter-spacing:-.02em;text-wrap:balance}
.slab__sum{font-size:17px;line-height:1.5;color:rgba(255,255,255,.8);max-width:32em}
.slab__metrics{margin-top:auto;display:grid;gap:12px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16)}
.slab__metrics li{display:flex;align-items:baseline;gap:14px}
.slab__metrics b{font-family:var(--f-display);font-size:clamp(26px,2.2vw,38px);font-weight:400;font-stretch:105%;min-width:4.2ch;letter-spacing:-.02em}
.slab__metrics span{font-size:15px;color:rgba(255,255,255,.72)}
.slab__more{display:inline-flex;align-self:flex-start;align-items:center;height:44px;padding:0 20px;border-radius:999px;background:#fff;color:#000;font-size:15px;font-weight:500;transition:transform .4s var(--ease-out)}
.slab__link:hover .slab__more{transform:translateX(6px)}
@media (max-width:899px){
  .slab{position:relative;top:auto;height:auto;min-height:0;transform:none;margin-bottom:20px}
  .slab::after{display:none}
  .slab__link{grid-template-columns:1fr}
  .slab__media{aspect-ratio:16/10;margin:10px 10px 0}
  .slab__info{padding:22px 20px 24px}
  .slab__metrics{margin-top:4px}
}

/* ---------- процесс ---------- */
.process{padding:0;height:540vh}
.process__pin{position:sticky;top:0;height:100svh;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto 1fr auto;padding:calc(var(--nav-h) + 28px) var(--pad) 36px;gap:24px}
.process__canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.process__head{grid-column:1;grid-row:1;position:relative;display:grid;gap:18px;max-width:640px}
.steps{grid-column:1;grid-row:2;align-self:end;position:relative;display:grid;max-width:600px}
.step{grid-area:1/1;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:start;opacity:0;filter:blur(10px);transform:translateY(24px);transition:opacity .5s var(--ease-out),filter .6s var(--ease-out),transform .7s var(--ease-out);pointer-events:none}
.step.is-active{opacity:1;filter:none;transform:none;pointer-events:auto}
.step.is-past{transform:translateY(-24px)}
.step__num{font-family:var(--f-display);font-size:clamp(64px,8vw,132px);font-weight:200;font-stretch:120%;line-height:.8;color:transparent;-webkit-text-stroke:1.2px var(--fg)}
.step__title{font-family:var(--f-display);font-size:clamp(32px,3.4vw,56px);font-weight:420;font-stretch:112%;line-height:1;margin-bottom:14px}
.step__text{font-size:clamp(17px,1.35vw,20px);line-height:1.5;color:var(--muted);max-width:30em}
.process__rail{grid-column:1/-1;grid-row:3;position:relative;height:2px;background:var(--line);border-radius:2px;overflow:hidden}
.process__rail i{position:absolute;inset:0;background:var(--fg);transform-origin:left;transform:scaleX(0)}
.reduced .process,.no-js .process{height:auto}
.reduced .process__pin,.no-js .process__pin{position:relative;height:auto;display:block}
.reduced .steps,.no-js .steps{gap:40px;margin-top:48px}
.reduced .step,.no-js .step{grid-area:auto;opacity:1;filter:none;transform:none}
.reduced .process__canvas,.no-js .process__canvas,.reduced .process__rail,.no-js .process__rail{display:none}
@media (max-width:899px){
  .process{height:440vh}
  .process__pin{grid-template-columns:1fr;grid-template-rows:auto 1fr auto auto}
  .steps{grid-row:3;align-self:end}
  .process__rail{grid-row:4}
  .step{grid-template-columns:1fr;gap:10px}
  .step__num{font-size:56px}
}

/* ---------- калькулятор ---------- */
.est{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(28px,4vw,72px);align-items:start}
.est__group{border:0;padding:0;margin:0 0 44px;min-width:0}
.est__legend{padding:0;font-size:15px;color:var(--muted);margin-bottom:16px}
.est__types{display:flex;flex-wrap:wrap;gap:10px}
.opt{position:relative}
.opt input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.opt span{display:inline-flex;align-items:center;height:50px;padding:0 22px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line);font-size:16px;transition:background-color .3s,color .3s,box-shadow .3s,transform .2s var(--ease-out)}
.opt:hover span{box-shadow:inset 0 0 0 1px var(--fg)}
.opt input:checked+span{background:#fff;color:#000;box-shadow:none}
.opt input:active+span{transform:scale(.97)}
.opt input:focus-visible+span{outline:2px solid var(--focus);outline-offset:3px}
.range{position:relative;padding:44px 0 8px}
.range input{position:absolute;left:0;right:0;top:30px;width:100%;height:44px;margin:0;opacity:0;cursor:pointer;z-index:2}
.range__track{position:relative;height:4px;border-radius:4px;background:var(--line);margin:18px 0}
.range__fill{position:absolute;left:0;top:0;bottom:0;width:calc(var(--v,.3) * 100%);background:#fff;border-radius:inherit}
.range__thumb{position:absolute;top:50%;left:calc(var(--v,.3) * 100%);width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;background:#fff;box-shadow:0 4px 18px rgba(0,0,0,.4);transition:transform .25s var(--ease-out)}
.range input:active~.range__track .range__thumb{transform:scale(1.15)}
.range input:focus-visible~.range__track .range__thumb{outline:2px solid var(--focus);outline-offset:4px}
.range__tip{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);white-space:nowrap;font-size:14px;padding:6px 12px;border-radius:999px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}
.range__ends{display:flex;justify-content:space-between;font-size:14px;color:var(--muted)}
.est__extras{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.tog{position:relative;display:flex;align-items:center;gap:14px;min-height:56px;padding:12px 18px;border-radius:18px;box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;font-size:16px;line-height:1.3;transition:box-shadow .3s,background-color .3s}
.tog:hover{box-shadow:inset 0 0 0 1px var(--fg)}
.tog input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.tog__box{position:relative;flex:none;width:22px;height:22px;border-radius:7px;box-shadow:inset 0 0 0 1.5px var(--muted);transition:background-color .25s,box-shadow .25s}
.tog__box::after{content:"";position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid #000;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .3s var(--ease-out)}
.tog input:checked~.tog__box{background:#fff;box-shadow:none}
.tog input:checked~.tog__box::after{transform:rotate(45deg) scale(1)}
.tog:has(input:checked){background:var(--surface)}
.tog input:focus-visible~.tog__box{outline:2px solid var(--focus);outline-offset:3px}
.est__result{position:sticky;top:calc(var(--nav-h) + 20px);display:grid;gap:18px;padding:clamp(24px,3vw,40px);border-radius:var(--r-slab);background:#0e0e10;box-shadow:inset 0 0 0 1px var(--line)}
.est__cur{display:flex;gap:4px;padding:4px;border-radius:999px;background:#18181b;justify-self:start}
.est__cur button{height:38px;min-width:48px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:15px;transition:background-color .3s,color .3s}
.est__cur button[aria-checked="true"]{background:#fff;color:#000}
.est__label{font-size:15px;color:var(--muted);margin-top:8px}
.est__word{white-space:nowrap}
i[class]{font-style:normal}
.est__price{font-family:var(--f-display);font-size:clamp(34px,3.4vw,58px);font-weight:380;font-stretch:100%;line-height:1.02;letter-spacing:-.02em;font-variant-numeric:tabular-nums;min-height:2.1em}
.roll{display:inline-flex;overflow:hidden;height:1.02em;vertical-align:top}
.roll__d{display:inline-flex;flex-direction:column;transition:transform .9s var(--ease-out)}
.roll__d span{height:1.02em;line-height:1.02}
.est__facts{display:grid;grid-template-columns:1fr;gap:12px;padding:18px 0;border-block:1px solid var(--line)}
.est__facts dt{font-size:14px;color:var(--muted)}
.est__facts dd{font-size:20px;margin-top:4px}
.est__note{font-size:14px;color:var(--muted);line-height:1.45}
.est__send{justify-self:start}
@media (max-width:999px){.est{grid-template-columns:1fr}.est__result{position:relative;top:auto}}
@media (max-width:599px){.est__extras{grid-template-columns:1fr}.opt span{height:46px;padding:0 18px;font-size:15px}}

/* ---------- стек: физика ---------- */
.pit{position:relative;height:clamp(480px,66vh,720px);border-radius:var(--r-slab);overflow:hidden;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);user-select:none;-webkit-user-select:none;touch-action:pan-y}
.pit__list{display:flex;flex-wrap:wrap;gap:10px;padding:28px}
.pit__list li{padding:10px 18px;border-radius:999px;background:#fff;color:var(--klein);font-size:16px}
.pit.is-live .pit__list{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pit__hint{position:absolute;left:28px;top:24px;font-size:14px;color:rgba(255,255,255,.76);pointer-events:none;transition:opacity .6s}
.pit.is-touched .pit__hint{opacity:0}
.ball{position:absolute;left:0;top:0;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--klein);font-weight:500;line-height:1.1;text-align:center;padding:10px;cursor:grab;touch-action:none;will-change:transform;user-select:none}
.ball[data-t="ink"]{background:#0b0b0c;color:#fff}
.ball[data-t="void"]{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.9)}
.ball.is-held{cursor:grabbing}

/* ---------- отзывы: колода ---------- */
.deck__nav{display:flex;align-items:center;gap:12px}
.deck__count{min-width:56px;text-align:center;font-size:15px;color:var(--muted);font-variant-numeric:tabular-nums}
.deck{position:relative;height:clamp(400px,42vw,520px);max-width:920px;margin:0 auto}
.vcard{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;gap:28px;padding:clamp(28px,4vw,56px);border-radius:var(--r-slab);background:#f2f2f3;color:#0b0b0c;transform-origin:50% 100%;touch-action:pan-y;cursor:grab;will-change:transform;user-select:none;outline-offset:6px}
.vcard.is-drag{cursor:grabbing}
.js .vcard{filter:brightness(calc(1 - var(--k,0) * .16))}
.vcard__mark{width:44px;fill:var(--klein)}
.vcard__quote{font-size:clamp(21px,2.5vw,36px);line-height:1.28;letter-spacing:-.02em;font-weight:340;text-wrap:pretty}
.vcard__who{display:grid;gap:4px}
.vcard__who b{font-weight:520;font-size:17px}
.vcard__who span{font-size:15px;color:#5b5e66}
.no-js .deck{height:auto;display:grid;gap:16px}
.no-js .vcard{position:relative}

/* ---------- вопросы ---------- */
.qa-list{max-width:1180px;border-top:1px solid var(--line)}
.qa{border-bottom:1px solid var(--line)}
.qa__h{font:inherit}
.qa__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0;border:0;background:none;color:inherit;text-align:left;font-size:clamp(20px,2vw,30px);line-height:1.25;letter-spacing:-.015em;font-weight:360}
.qa__icon{position:relative;flex:none;width:40px;height:40px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line);transition:background-color .3s,color .3s}
.qa__icon::before,.qa__icon::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;margin:-.75px 0 0 -7px;background:currentColor;transition:transform .5s var(--ease-out)}
.qa__icon::after{transform:rotate(90deg)}
.qa__q:hover .qa__icon{background:var(--fg);color:var(--bg)}
.qa.is-open .qa__icon::after{transform:rotate(0)}
.qa__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s var(--ease-drawer)}
.qa.is-open .qa__a,.no-js .qa__a{grid-template-rows:1fr}
.qa__inner{overflow:hidden;min-height:0}
.qa__inner p{max-width:46em;padding:0 64px 30px 0;color:var(--muted);font-size:clamp(17px,1.3vw,19px);line-height:1.6;opacity:0;transform:translateY(-6px);transition:opacity .4s,transform .5s var(--ease-out)}
.qa.is-open .qa__inner p,.no-js .qa__inner p{opacity:1;transform:none}

/* ---------- контакты и заявка ---------- */
.contact__grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(36px,5vw,96px);align-items:start}
.brief{position:relative}
.brief__text{font-size:clamp(22px,2.4vw,38px);line-height:1.62;letter-spacing:-.02em;font-weight:340;text-wrap:pretty}
.blank{position:relative;display:inline-block;max-width:100%;vertical-align:baseline}
.blank input,.blank select,.blank textarea{font:inherit;letter-spacing:inherit;line-height:1.2;color:var(--klein);background:transparent;border:0;border-radius:0;border-bottom:2px solid rgba(31,51,255,.35);padding:0 2px 2px;margin:0;outline:none;transition:border-color .3s,background-color .3s}
.blank input{width:var(--fw,6ch);min-width:4ch;max-width:100%;field-sizing:content}
@supports (field-sizing:content){.blank input,.blank select{width:auto;field-sizing:content}}
.blank input::placeholder,.blank textarea::placeholder{color:rgba(31,51,255,.62);opacity:1}
.blank input:focus,.blank select:focus,.blank textarea:focus{border-bottom-color:var(--klein);background:rgba(31,51,255,.06)}
.blank select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:1.05em;max-width:100%;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%231f33ff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .05em center;background-size:.62em}
.blank select option{color:#0b0b0c;font-size:16px}
.blank--area{display:block;margin:.2em 0 .25em}
.blank textarea{width:100%;resize:none;min-height:1.4em;field-sizing:content;overflow:hidden}
.blank.is-error input,.blank.is-error select,.blank.is-error textarea{border-bottom-color:var(--danger);color:#c8261b}
.blank__err{position:absolute;left:0;top:calc(100% + 4px);z-index:2;white-space:nowrap;font-size:13px;line-height:1.3;letter-spacing:0;font-weight:400;color:#fff;background:#c8261b;padding:5px 10px;border-radius:8px}
.brief__estimate{display:flex;align-items:center;gap:12px;margin-top:20px;padding:12px 12px 12px 18px;border-radius:16px;background:#fff;font-size:15px;box-shadow:inset 0 0 0 1px var(--line)}
.brief__estimate[hidden]{display:none}
.brief__estimate-text{flex:1}
.brief__estimate-x{width:44px;height:44px;flex:none;display:grid;place-items:center;border:0;border-radius:50%;background:transparent}
.brief__estimate-x:hover{background:var(--light)}
.brief__estimate-x svg{width:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.brief__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 32px;margin-top:36px;padding-top:28px;border-top:1px solid var(--line)}
.check{position:relative;display:flex;align-items:flex-start;gap:12px;max-width:460px;font-size:15px;line-height:1.45;color:var(--muted);cursor:pointer}
.check input{position:absolute;opacity:0;width:24px;height:24px;margin:0;cursor:pointer}
.check__box{position:relative;flex:none;width:24px;height:24px;border-radius:8px;box-shadow:inset 0 0 0 1.5px var(--muted);transition:background-color .25s,box-shadow .25s}
.check__box::after{content:"";position:absolute;left:8px;top:4px;width:6px;height:12px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .3s var(--ease-out)}
.check input:checked+.check__box{background:var(--klein);box-shadow:none}
.check input:checked+.check__box::after{transform:rotate(45deg) scale(1)}
.check input:focus-visible+.check__box{outline:2px solid var(--focus);outline-offset:3px}
.check a{color:var(--fg);text-decoration:underline;text-underline-offset:3px}
.check.is-error .check__box{box-shadow:inset 0 0 0 2px var(--danger)}
.brief__error{min-height:1.4em;margin-top:14px;font-size:15px;color:#c8261b}
.brief__done{position:absolute;inset:0;display:grid;align-content:center;gap:18px;background:var(--bg);opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease-out),transform .8s var(--ease-out)}
.brief__done[hidden]{display:none}
.brief__done.is-in{opacity:1;transform:none}
.brief__done-title{font-family:var(--f-display);font-size:clamp(64px,9vw,160px);line-height:.85;font-weight:200;font-stretch:120%;color:transparent;-webkit-text-stroke:1.5px var(--fg);transition:color 1.4s var(--ease-out) .3s,font-weight 1.4s var(--ease-out) .3s}
.brief__done.is-in .brief__done-title{color:var(--fg);font-weight:600}
.brief__done-text{font-size:clamp(18px,1.6vw,24px);max-width:28em;color:var(--muted)}
.contact__side{display:grid;gap:44px}
.clinks{display:grid;border-top:1px solid var(--line)}
.clink{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}
.clink__icon{grid-row:1/3;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line);transition:background-color .3s,color .3s}
.clink__icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.clink__label{font-size:14px;color:var(--muted)}
.clink__value{font-size:clamp(18px,1.5vw,22px);overflow-wrap:anywhere}
.clink:hover .clink__icon{background:var(--klein);color:#fff;box-shadow:none}
.clink .tg-plane,.clink .tg-fold{transition:transform .6s var(--ease-out)}
.clink--tg:hover .tg-plane,.clink--tg:hover .tg-fold{animation:fly .9s var(--ease-in-out)}
.mail-flap{transform-box:fill-box;transform-origin:50% 0;transition:transform .5s var(--ease-out)}
.clink--mail:hover .mail-flap{transform:scaleY(-1) translateY(2px)}
.clink--phone:hover .phone-body{animation:ring .7s var(--ease-in-out);transform-box:fill-box;transform-origin:50% 50%}
.phone-wave{opacity:.0;transition:opacity .3s}
.clink--phone:hover .phone-wave{opacity:1;animation:wave .9s var(--ease-out) infinite}
@keyframes fly{0%{transform:none}45%{transform:translate(14px,-14px);opacity:0}50%{transform:translate(-14px,14px);opacity:0}100%{transform:none;opacity:1}}
@keyframes ring{0%,100%{transform:rotate(0)}20%{transform:rotate(-14deg)}40%{transform:rotate(12deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(5deg)}}
@keyframes wave{0%{opacity:0}40%{opacity:1}100%{opacity:0}}
.remote{padding-top:20px;border-top:1px solid var(--line)}
.remote__title{font-family:var(--f-display);font-size:clamp(22px,2vw,28px);font-weight:400;font-stretch:110%;line-height:1.1;margin-bottom:10px}
.remote__text{font-size:15px;line-height:1.5;color:var(--muted);max-width:26em}
.clocks__title{font-size:14px;color:var(--muted);margin-bottom:10px}
.clocks__list{display:grid}
.clock{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line);font-size:16px}
.clock__time{font-variant-numeric:tabular-nums;font-size:18px}
.clock__state{width:8px;height:8px;border-radius:50%;background:var(--line)}
.clock.is-work .clock__state{background:var(--ok)}
@media (max-width:999px){.contact__grid{grid-template-columns:1fr}}

/* ---------- подвал ---------- */
.footer{position:relative;padding:clamp(80px,10vw,150px) var(--pad) 26px;overflow:hidden}
.footer__top{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:32px}
.footer__claim{font-family:var(--f-display);font-size:clamp(36px,4.2vw,72px);line-height:.98;font-weight:360;font-stretch:112%;letter-spacing:-.015em}
.footer__claim span{color:var(--muted)}
.footer__nav{display:grid;align-content:start;gap:2px;font-size:16px}
.footer__nav a{padding:6px 0;color:var(--muted);transition:color .25s}
.footer__nav a:hover{color:var(--fg)}
.footer__mark{display:flex;justify-content:space-between;margin:clamp(56px,8vw,120px) 0 18px;font-family:var(--f-display);font-size:var(--fm-size,18vw);font-weight:200;line-height:.76;letter-spacing:0;user-select:none;white-space:nowrap}
.footer__mark span{display:inline-grid;transform-origin:50% 100%}
.footer__mark span>*{grid-area:1/1}
.footer__mark i{font-style:normal}
.footer__mark .gh{visibility:hidden;font-weight:800;font-stretch:118%}
.footer__mark .lv{font-weight:var(--g,200);font-stretch:118%;justify-self:center}
.footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding-top:18px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.footer__tools{display:flex;gap:6px}
.footer__btn{display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 16px;border:0;border-radius:999px;background:transparent;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line);transition:color .25s,background-color .25s}
.footer__btn:hover{color:var(--fg)}
.footer__sound-ico{display:inline-flex;align-items:center;gap:2px;height:14px}
.footer__sound-ico i{width:2px;height:4px;border-radius:2px;background:currentColor;transition:height .3s}
.footer__btn[aria-pressed="true"]{color:var(--fg)}
.footer__btn[aria-pressed="true"] .footer__sound-ico i{animation:eq 1s var(--ease-in-out) infinite}
.footer__btn[aria-pressed="true"] .footer__sound-ico i:nth-child(2){animation-delay:.2s}.footer__btn[aria-pressed="true"] .footer__sound-ico i:nth-child(3){animation-delay:.4s}.footer__btn[aria-pressed="true"] .footer__sound-ico i:nth-child(4){animation-delay:.1s}
@keyframes eq{0%,100%{height:4px}50%{height:14px}}
@media (max-width:899px){.footer__top{grid-template-columns:1fr 1fr}.footer__claim{grid-column:1/-1}}

/* ---------- страница работ ---------- */
.works{padding-top:calc(var(--nav-h) + clamp(48px,8vw,120px))}
.works__head{display:grid;gap:28px;margin-bottom:40px}
.works__title{font-family:var(--f-display);font-size:clamp(36px,11.5vw,210px);font-weight:260;font-stretch:122%;line-height:.82;letter-spacing:-.02em}
.works__title sup{font-family:var(--f-body);font-size:.16em;font-weight:400;vertical-align:top;margin-left:.3em;color:var(--muted);letter-spacing:0}
.works__lead{max-width:560px;font-size:clamp(17px,1.4vw,21px);color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(36px,5vw,64px)}
.chip{display:inline-flex;align-items:center;height:44px;padding:0 18px;border:0;border-radius:999px;background:transparent;color:inherit;box-shadow:inset 0 0 0 1px var(--line);font-size:15px;transition:background-color .3s,color .3s,box-shadow .3s}
.chip:hover{box-shadow:inset 0 0 0 1px var(--fg)}
.chip sup{font-size:11px;margin-left:6px;opacity:.6}
.chip.is-on{background:#fff;color:#000;box-shadow:none}
.works__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,3vw,48px) clamp(18px,2vw,32px)}
.wcard{--accent:#1f33ff}
.wcard[hidden]{display:none}
.wcard__link{display:grid;gap:16px}
.wcard__media{position:relative;aspect-ratio:16/11;border-radius:var(--r-slab);overflow:hidden;background:var(--accent)}
.wcard__media::after{content:"";position:absolute;inset:0;background:var(--accent);mix-blend-mode:multiply;opacity:0;transition:opacity .5s}
.wcard__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}
.wcard__link:hover .wcard__img{transform:scale(1.05)}
.wcard__link:hover .wcard__media::after{opacity:.22}
.wcard__info{display:flex;align-items:baseline;gap:14px}
.wcard__title{font-family:var(--f-display);font-size:clamp(26px,2.4vw,40px);font-weight:420;font-stretch:108%;line-height:1;margin-right:auto}
.wcard__cat,.wcard__year{font-size:14px;color:var(--muted);white-space:nowrap}
.wcard__sum{color:var(--muted);max-width:36em}
.empty{color:var(--muted);font-size:20px}
@media (max-width:767px){.works__grid{grid-template-columns:1fr}.wcard__info{flex-wrap:wrap}.wcard__title{flex-basis:100%}}
.band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px;padding-block:clamp(72px,9vw,140px)}
.band__title{font-family:var(--f-display);font-size:clamp(40px,5.4vw,96px);font-weight:340;font-stretch:112%;line-height:.95;max-width:12em;letter-spacing:-.015em}

/* ---------- кейс ---------- */
.case{--accent:#1f33ff;padding:0}
.case__head{padding:calc(var(--nav-h) + clamp(40px,6vw,88px)) var(--pad) clamp(36px,5vw,64px);display:grid;gap:22px}
.case__back{display:inline-flex;align-items:center;gap:6px;justify-self:start;height:44px;padding:0 16px 0 10px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line);font-size:15px;color:var(--muted);transition:color .25s,box-shadow .25s}
.case__back:hover{color:var(--fg);box-shadow:inset 0 0 0 1px var(--fg)}
.case__back svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.case__kicker{display:flex;gap:16px;font-size:15px;color:var(--muted);margin-top:12px}
.case__title{font-family:var(--f-display);font-size:clamp(56px,10.5vw,190px);font-weight:300;font-stretch:116%;line-height:.86;letter-spacing:-.025em;text-wrap:balance}
.case__summary{max-width:880px;font-size:clamp(19px,1.9vw,28px);line-height:1.38;letter-spacing:-.012em;color:var(--muted);text-wrap:pretty}
.case__cover{margin:0 var(--pad);aspect-ratio:16/10;border-radius:var(--r-slab);overflow:hidden;background:var(--accent)}
.case__img{width:100%;height:100%;object-fit:cover;view-transition-name:cover}
.case__layout{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:clamp(32px,6vw,120px);padding:clamp(64px,8vw,128px) var(--pad)}
.facts{position:sticky;top:calc(var(--nav-h) + 24px);align-self:start;display:grid;gap:22px}
.facts dt{font-size:14px;color:var(--muted)}
.facts dd{margin-top:4px;font-size:17px}
.facts a{text-decoration:underline;text-underline-offset:3px}
.tag{display:inline-block;margin:6px 6px 0 0;padding:5px 12px;border-radius:999px;font-size:14px;box-shadow:inset 0 0 0 1px var(--line)}
.case__metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;margin-bottom:clamp(56px,6vw,96px);border-top:1px solid var(--line)}
.case__metrics li{display:grid;gap:10px;padding:26px 20px 0 0}
.case__metrics li+li{padding-left:20px;border-left:1px solid var(--line)}
.case__metrics b{font-family:var(--f-display);font-size:clamp(44px,5vw,84px);font-weight:340;font-stretch:108%;line-height:.9;color:var(--accent);letter-spacing:-.02em}
.case__metrics span{font-size:15px;color:var(--muted)}
.prose{max-width:760px;font-size:clamp(17px,1.3vw,19px);line-height:1.68}
.prose>*+*{margin-top:1.05em}
.prose h2{font-family:var(--f-display);font-size:clamp(28px,2.6vw,42px);font-weight:420;font-stretch:110%;line-height:1.05;margin-top:2.2em;letter-spacing:-.01em}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:22px;font-weight:520;margin-top:1.6em}
.prose p,.prose li{color:color-mix(in srgb,var(--fg) 80%,transparent)}
.prose ul,.prose ol{display:grid;gap:.5em}
.prose ul li{position:relative;padding-left:1.4em}
.prose ul li::before{content:"";position:absolute;left:0;top:.72em;width:.55em;height:2px;background:var(--accent,var(--klein))}
.prose ol{counter-reset:n}
.prose ol li{counter-increment:n;position:relative;padding-left:1.8em}
.prose ol li::before{content:counter(n);position:absolute;left:0;color:var(--muted)}
.prose a{text-decoration:underline;text-underline-offset:3px}
.prose strong{font-weight:560;color:var(--fg)}
.prose blockquote{padding-left:24px;border-left:2px solid var(--accent,var(--klein));font-size:1.2em}
.case__gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.6vw,24px);padding:0 var(--pad) clamp(80px,10vw,160px)}
.shot{display:grid;gap:10px}
.shot--wide{grid-column:1/-1}
.shot__btn{display:block;width:100%;padding:0;border:0;border-radius:var(--r-media);overflow:hidden;background:var(--accent);cursor:zoom-in}
.shot__img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform 1.1s var(--ease-out)}
.shot__btn:hover .shot__img{transform:scale(1.03)}
.shot figcaption{font-size:14px;color:var(--muted)}
.case__next{padding:0 var(--pad) clamp(40px,5vw,72px)}
.next{position:relative;display:grid;grid-template-columns:1fr auto;align-items:end;gap:24px;padding:clamp(28px,4vw,56px);border-radius:var(--r-slab);background:color-mix(in oklab,var(--accent) 22%,#09090a);overflow:hidden;min-height:clamp(260px,30vw,420px)}
.next__label{grid-column:1;align-self:start;font-size:15px;color:rgba(255,255,255,.72)}
.next__title{grid-column:1;font-family:var(--f-display);font-size:clamp(48px,8vw,140px);font-weight:300;font-stretch:116%;line-height:.86;letter-spacing:-.02em;color:#fff;transition:transform .8s var(--ease-out)}
.next__media{grid-column:2;grid-row:1/3;width:clamp(180px,30vw,520px);aspect-ratio:16/10;border-radius:var(--r-media);overflow:hidden;clip-path:inset(18% 0 18% 40% round 20px);transition:clip-path .9s var(--ease-out)}
.next__img{width:100%;height:100%;object-fit:cover}
.next:hover .next__media{clip-path:inset(0 0 0 0 round 20px)}
.next:hover .next__title{transform:translateX(12px)}
@media (max-width:899px){
  .case__layout{grid-template-columns:1fr}
  .facts{position:relative;top:auto;grid-template-columns:1fr 1fr}
  .facts__wide{grid-column:1/-1}
  .case__gallery{grid-template-columns:1fr}
  .case__cover{aspect-ratio:4/3}
  .next{grid-template-columns:1fr}
  .next__media{grid-column:1;grid-row:auto;width:100%;clip-path:none}
}
.lightbox{position:fixed;inset:0;z-index:90;display:grid;place-items:center;--focus:#fff;color:#fff}
.lightbox[hidden]{display:none}
.lightbox__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;transition:opacity .4s}
.lightbox.is-open .lightbox__backdrop{opacity:1}
.lightbox__stage{position:relative;display:grid;gap:12px;justify-items:center;max-width:calc(100vw - 2 * var(--pad));pointer-events:none}
.lightbox__img{max-width:100%;max-height:calc(100svh - 160px);width:auto;border-radius:16px;transform-origin:0 0;will-change:transform;pointer-events:auto;touch-action:pan-y}
.lightbox__cap{font-size:15px;color:rgba(255,255,255,.72);opacity:0;transition:opacity .4s .2s}
.lightbox.is-open .lightbox__cap{opacity:1}
.lightbox__btn{position:absolute;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);background:rgba(0,0,0,.35)}
.lightbox__btn:hover{background:#fff;color:#000}
.lightbox__btn--prev{left:var(--pad);top:50%;margin-top:-24px}
.lightbox__btn--next{right:var(--pad);top:50%;margin-top:-24px}
.lightbox__btn--close{right:var(--pad);top:24px}
.lightbox__count{position:absolute;left:var(--pad);top:36px;font-size:14px;color:rgba(255,255,255,.72);font-variant-numeric:tabular-nums}

/* ---------- юридическое, 404 ---------- */
.legal{display:block;padding:calc(var(--nav-h) + clamp(48px,7vw,110px)) var(--pad) clamp(80px,10vw,160px)}
.legal__head{display:grid;gap:18px;margin-bottom:56px}
.legal__title{font-family:var(--f-display);font-size:clamp(30px,6.4vw,110px);overflow-wrap:break-word;font-weight:320;font-stretch:112%;line-height:.92;letter-spacing:-.02em;max-width:12em}
.legal__meta{color:var(--muted)}
.prose--legal{max-width:820px}
.prose--legal h2{font-size:clamp(24px,2.2vw,34px)}
.lost{min-height:100svh;display:grid;align-content:center;justify-items:start;gap:22px;overflow:hidden;isolation:isolate;--lx:50%;--ly:40%}
.lost__mark{display:grid;font-family:var(--f-display);font-size:clamp(140px,34vw,520px);font-weight:200;font-stretch:130%;line-height:.78;letter-spacing:-.02em;user-select:none;margin-left:-.04em}
.lost__mark>span{grid-area:1/1}
.lost__outline{color:transparent;-webkit-text-stroke:1.2px rgba(255,255,255,.4)}
.lost__fill{color:#fff;-webkit-mask-image:radial-gradient(circle at var(--mx,50%) var(--my,50%),#000 0,transparent var(--r,16vw));mask-image:radial-gradient(circle at var(--mx,50%) var(--my,50%),#000 0,transparent var(--r,16vw))}
.lost__title{font-family:var(--f-display);font-size:clamp(40px,5vw,84px);font-weight:400;font-stretch:112%;line-height:1}
.lost__text{font-size:clamp(18px,1.5vw,22px);color:var(--muted);max-width:30em}
.lost__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}

/* ---------- заголовки «обретают тело» ---------- */
.t-split .w__ghost{font-weight:inherit}
.t-split .w__live{font-weight:150;opacity:.14;transform:translateY(.1em);transition:font-weight 1.3s var(--ease-out) var(--d,0s),opacity 1s var(--ease-out) var(--d,0s),transform 1.2s var(--ease-out) var(--d,0s)}
.t-split.is-in .w__live{font-weight:inherit;opacity:1;transform:none}

/* ---------- переходы между страницами ---------- */
@view-transition{navigation:auto}
::view-transition-old(root){animation:vt-out .32s var(--ease-in-out) both}
::view-transition-new(root){animation:vt-in .5s var(--ease-out) .08s both}
::view-transition-group(cover){animation-duration:.72s;animation-timing-function:var(--ease-drawer)}
::view-transition-old(cover),::view-transition-new(cover){height:100%;object-fit:cover;overflow:clip;animation-duration:.72s}
@keyframes vt-out{to{opacity:0;filter:blur(6px)}}
@keyframes vt-in{from{opacity:0;transform:translateY(16px)}}
@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}

/* ---------- появление при прокрутке ---------- */
.js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease-out),transform 1.1s var(--ease-out);transition-delay:var(--d,0s)}
.js [data-reveal].is-in{opacity:1;transform:none}

/* ---------- адаптив ---------- */
@media (max-width:1180px){.nav__chapter{display:none}}
@media (max-width:999px){
  .nav__links{display:none}
  .nav__burger{display:block}
  .nav__cta{margin-left:auto}
  .hero__row{grid-template-columns:1fr}
}
@media (max-width:599px){
  :root{--nav-h:64px}
  .nav{gap:10px}
  .nav__studio{display:none}
  .nav__cta{height:42px;padding:0 16px 0 5px;font-size:14px}
  .nav__island{height:32px;padding:0 10px}
  .nav__cta:hover .nav__status{grid-template-columns:0fr;margin:0}
  .hero__actions .btn{flex:1 1 auto}
  .stats{grid-template-columns:1fr 1fr}
  .stat:nth-child(3){padding-left:0;border-left:0}
  .stat:nth-child(n+3){border-top:1px solid var(--line);margin-top:24px}
  .svc__plus{width:40px;height:40px}
  .qa__inner p{padding-right:0}
  .footer__top{grid-template-columns:1fr}
  .brief__text{font-size:22px;line-height:1.7}
  .deck{height:460px}
  .legal__title{font-stretch:100%}
  .case__metrics{grid-template-columns:1fr}
  .case__metrics li,.case__metrics li+li{padding:18px 0;border-left:0;border-bottom:1px solid var(--line)}
}

/* ---------- меньше движения ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:.15s!important;scroll-behavior:auto!important}
  .scene *{animation:none!important}
}
.reduced .marquee__track{flex-wrap:wrap;width:auto;justify-content:center;padding:0 var(--pad)}
.works__empty{grid-column:1/-1;padding:clamp(48px,8vw,120px) 0 clamp(24px,4vw,60px);font-family:var(--f-display);font-size:clamp(24px,3vw,44px);font-weight:300;line-height:1.15;color:var(--muted)}
