/* Инженерка от первого лица — графит, тёплая бумага, медь; крупные фото на весь экран. */
@font-face{font-family:Golos;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/golos-text-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Golos;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/golos-text-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Golos;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/golos-text-cyrillic-600-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Golos;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/golos-text-cyrillic-700-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Golos;font-style:normal;font-weight:400 500;font-display:swap;src:url(../fonts/golos-text-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2190-2199}
@font-face{font-family:Golos;font-style:normal;font-weight:600 700;font-display:swap;src:url(../fonts/golos-text-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2190-2199}
@font-face{font-family:Lora;font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/lora-cyrillic-500-italic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Lora;font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/lora-latin-500-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2190-2199}
@font-face{font-family:Lora;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/lora-cyrillic-500-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

:root{
	--paper:#f3f0ea;--paper-2:#e8e2d8;--ink:#121519;--ink-2:#1a1e23;--text:#1f2329;--muted:#6b6f73;
	--accent:#c47a45;--accent-2:#ad6634;--accent-l:#e3a06d;
	--line:rgba(18,21,25,.13);--line-light:rgba(255,255,255,.15);
	--sans:Golos,"Segoe UI",Arial,sans-serif;--serif:Lora,Georgia,serif;
	--side:clamp(16px,4vw,64px);--head:80px;--r:10px;
	--ease:cubic-bezier(.22,.8,.2,1);
}
*,*:before,*:after{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--text);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg,video{display:block;max-width:100%}
picture{display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
p{margin:0 0 1em}
::selection{background:var(--accent);color:#fff}
body.is-modal,body.is-menu{overflow:hidden}
.he-wrap{width:100%;max-width:1320px;margin:0 auto;padding:0 var(--side)}
.he-progress{position:fixed;z-index:1300;top:0;left:0;height:2px;width:100%;background:var(--accent);transform:scaleX(var(--sp,0));transform-origin:0 50%}

/* Прелоадер: дом рисуется линией */
.he-pre{position:fixed;z-index:3000;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;color:#fff;background:var(--ink);transition:opacity .8s var(--ease),visibility .8s}
.he-pre.is-hidden{opacity:0;visibility:hidden}
.he-pre__house{width:120px;height:100px}
.he-pre__house path{fill:none;stroke:var(--accent-l);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:400;stroke-dashoffset:400;animation:heDraw 1.4s var(--ease) forwards}
.he-pre__house .he-pre__bolt{stroke:#fff;animation-delay:.7s}
@keyframes heDraw{to{stroke-dashoffset:0}}
.he-pre__brand{font-size:clamp(22px,3vw,40px);font-weight:700;letter-spacing:-.02em}
.he-pre__brand span{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--accent-l);margin-left:6px}
.he-pre__bar{width:180px;height:2px;background:rgba(255,255,255,.12);border-radius:2px;overflow:hidden}
.he-pre__bar i{display:block;height:100%;width:var(--pp,0%);background:var(--accent-l);transition:width .2s}

/* Шапка */
.he-head{position:fixed;z-index:1200;inset:0 0 auto;display:flex;align-items:center;gap:32px;height:var(--head);padding:0 0 0 var(--side);color:#fff;border-bottom:1px solid var(--line-light);transition:background .45s,color .45s,border-color .45s,transform .45s var(--ease)}
.he-head.is-solid{color:var(--ink);background:rgba(243,240,234,.93);border-color:var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.he-head.is-hidden{transform:translateY(-105%)}
.he-brand{display:flex;align-items:center;gap:12px;margin-right:auto}
.he-brand__mark{width:38px;height:38px;color:var(--accent-l)}
.he-head.is-solid .he-brand__mark{color:var(--accent)}
.he-brand__txt{display:flex;flex-direction:column;line-height:1.05}
.he-brand__txt b{font-size:19px;font-weight:700;letter-spacing:-.02em}
.he-brand__txt small{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--accent-l)}
.he-head.is-solid .he-brand__txt small{color:var(--accent)}
.he-topnav{display:flex;gap:28px;font-size:15px;font-weight:500}
.he-topnav a{position:relative;padding:6px 0;opacity:.85;transition:opacity .3s}
.he-topnav a:hover{opacity:1}
.he-topnav a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.he-topnav a:hover:after{transform:none}
.he-head__cta{display:flex;align-items:center;height:44px;padding:0 22px;border-radius:var(--r);background:var(--accent);color:#fff;font-size:14px;font-weight:600;transition:background .3s}
.he-head__cta:hover{background:var(--accent-2)}
.he-burger{position:relative;width:var(--head);height:var(--head);border:0;border-left:1px solid var(--line-light);background:transparent;cursor:pointer;display:none}
.he-head.is-solid .he-burger{border-color:var(--line)}
.he-burger i{position:absolute;left:30%;right:30%;height:1.5px;background:currentColor}
.he-burger i:first-child{top:44%}.he-burger i:last-child{top:56%}

/* Меню на весь экран (мобильные) */
.he-menu{position:fixed;z-index:2000;inset:0;display:flex;flex-direction:column;padding:26px var(--side);color:#fff;background:var(--ink);transform:translateY(-102%);transition:transform .7s var(--ease);visibility:hidden}
.he-menu.is-open{transform:none;visibility:visible}
.he-menu__top{display:flex;justify-content:space-between;align-items:center;font-weight:600}
.he-menu__close{border:1px solid var(--line-light);border-radius:var(--r);background:transparent;padding:10px 16px;cursor:pointer;font-size:14px}
.he-menu__close span{color:var(--accent-l);margin-left:6px;font-size:16px}
.he-menu__nav{margin:auto 0;display:flex;flex-direction:column}
.he-menu__nav a{display:flex;justify-content:space-between;align-items:center;padding:clamp(10px,2vh,16px) 0;border-bottom:1px solid var(--line-light);font-size:clamp(26px,5vw,48px);font-weight:600;letter-spacing:-.03em;transition:padding .4s var(--ease),color .3s}
.he-menu__nav a i{font-style:normal;color:var(--accent-l);font-size:.6em}
.he-menu__nav a:hover{padding-left:16px;color:var(--accent-l)}
.he-menu__foot{display:flex;flex-wrap:wrap;gap:12px 32px;font-size:14px;color:rgba(255,255,255,.7)}

/* Общие */
.he-sec{position:relative;padding:clamp(80px,10vw,150px) var(--side)}
.he-sec--dark{color:#fff;background:var(--ink)}
.he-sec--sand{background:var(--paper-2)}
.he-label{display:flex;align-items:center;gap:12px;margin-bottom:clamp(36px,5vw,70px);font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.he-label span{color:var(--accent);font-family:var(--serif);font-style:italic;font-size:18px;letter-spacing:0;text-transform:none}
.he-label span:after{content:"";display:inline-block;width:34px;height:1px;margin-left:12px;vertical-align:middle;background:currentColor}
.he-label--light span{color:var(--accent-l)}
.he-kicker{margin:0 0 20px;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.he-sec--dark .he-kicker,.he-contact .he-kicker{color:rgba(255,255,255,.6)}
.he-kicker--accent{color:var(--accent-l)!important}
.he-eyebrow{display:inline-block;margin:0 0 16px;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.he-eyebrow--light{color:var(--accent-l)}
.he-h2{margin:0;font-size:clamp(38px,5.8vw,96px);line-height:.95;font-weight:700;letter-spacing:-.045em;text-transform:uppercase}
.he-h2 span{display:block}
.he-h2 em,.he-h1 em,.he-row h2 em,.he-cta h2 em{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--accent);text-transform:none;letter-spacing:-.02em}
.he-h2 em{display:block;font-size:.84em;line-height:1.1}
.he-sec--dark .he-h2 em,.he-contact .he-h2 em,.he-pain .he-h2 em{color:var(--accent-l)}
.he-h1{margin:0 0 20px;font-size:clamp(40px,6vw,96px);line-height:1;font-weight:700;letter-spacing:-.045em}
.he-h1--post{font-size:clamp(30px,4vw,58px);line-height:1.08;letter-spacing:-.03em}
.he-lead{font-size:clamp(18px,1.5vw,23px);line-height:1.5;color:var(--ink)}
.he-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:clamp(36px,5vw,60px)}
.he-row h2{font-size:clamp(30px,3.6vw,52px);line-height:1.05;letter-spacing:-.03em}
.he-empty{max-width:640px;font-size:18px;color:var(--muted)}
.he-ph{width:100%;height:100%;min-height:240px;background-color:var(--ink-2);background-image:linear-gradient(rgba(196,122,69,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(196,122,69,.16) 1px,transparent 1px);background-size:40px 40px}
.he-tag{position:absolute;left:22px;bottom:22px;padding:8px 14px;border-radius:999px;color:#fff;background:rgba(18,21,25,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:12px;letter-spacing:.06em}

/* Кнопки */
.he-btn{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:56px;padding:12px 14px 12px 24px;border:1px solid transparent;border-radius:var(--r);background:transparent;cursor:pointer;overflow:hidden;font-size:15px;font-weight:600;transition:color .35s,border-color .35s,background .35s,transform .3s var(--ease)}
.he-btn:hover{transform:translateY(-2px)}
.he-btn span,.he-btn i{position:relative;z-index:1}
.he-btn i{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;font-style:normal;font-size:16px;transition:transform .35s var(--ease)}
.he-btn:hover i{transform:translateX(3px)}
.he-btn--light{color:var(--ink);background:#fff}
.he-btn--light:hover{background:var(--paper)}
.he-btn--light i{color:#fff;background:var(--accent)}
.he-btn--dark{color:#fff;background:var(--ink)}
.he-btn--dark:hover{background:#000}
.he-btn--dark i{color:#fff;background:var(--accent)}
.he-btn--accent{color:#fff;background:var(--accent)}
.he-btn--accent:hover{background:var(--accent-2)}
.he-btn--accent i{background:rgba(255,255,255,.18)}
.he-btn--line{color:var(--ink);border-color:var(--line)}
.he-btn--line:hover{border-color:var(--ink)}
.he-btn--line-light{color:#fff;border-color:rgba(255,255,255,.45)}
.he-btn--line-light:hover{background:rgba(255,255,255,.1)}
.he-btn--sm{min-height:42px;padding:8px 18px}
.he-btn:disabled{opacity:.6;cursor:default;transform:none}
.he-arrow,.he-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:600;color:var(--accent);transition:gap .35s var(--ease),color .3s}
.he-arrow i,.he-link span{font-style:normal;font-size:16px}
.he-arrow:hover,.he-link:hover{gap:20px;color:var(--accent-2)}
.he-link--sm{font-size:13px}

/* Первый экран */
.he-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:#fff;background:#0f1114;overflow:hidden}
.he-hero__media,.he-hero__overlay{position:absolute;inset:0}
.he-hero__img,.he-hero__img img,.he-hero__media .he-ph{width:100%;height:100%;object-fit:cover;object-position:72% 50%}
.he-hero__img img{transform:scale(1.08);animation:heZoom 16s ease-out forwards}
@keyframes heZoom{to{transform:scale(1)}}
.he-hero__overlay{background:linear-gradient(95deg,rgba(12,14,17,.9) 0%,rgba(12,14,17,.6) 42%,rgba(12,14,17,.1) 100%),linear-gradient(0deg,rgba(12,14,17,.75),transparent 50%)}
.he-hero__content{position:relative;z-index:2;width:100%;padding:calc(var(--head) + 40px) var(--side) clamp(40px,7vh,80px)}
.he-hero__eyebrow{display:flex;flex-wrap:wrap;gap:8px 28px;margin-bottom:4vh;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.he-hero__eyebrow span:last-child{color:var(--accent-l)}
.he-hero__title{margin:0 0 5vh;font-size:clamp(52px,9vw,168px);line-height:.88;font-weight:700;letter-spacing:-.055em;text-transform:uppercase}
.he-line{display:block;overflow:hidden;padding-bottom:.06em}
.he-line i{display:block;font-style:normal;transform:translateY(110%);animation:heUp 1.1s var(--ease) forwards}
.he-line:nth-child(2) i{animation-delay:.14s}
.he-line--accent i{color:var(--accent-l);font-family:var(--serif);font-style:italic;font-size:.62em;font-weight:500;text-transform:none;letter-spacing:-.02em}
@keyframes heUp{to{transform:none}}
.he-hero__bottom{display:grid;grid-template-columns:minmax(0,600px) auto;align-items:end;justify-content:space-between;gap:30px 60px}
.he-hero__bottom p{margin:0;font-size:clamp(16px,1.25vw,19px);line-height:1.6;color:rgba(255,255,255,.85)}
.he-hero__btns{display:flex;flex-wrap:wrap;gap:12px}
.he-split{opacity:0;transform:translateY(22px);animation:heFade .8s .5s var(--ease) forwards}
@keyframes heFade{to{opacity:1;transform:none}}
.he-hero__down{position:absolute;z-index:2;left:50%;bottom:22px;width:26px;height:42px;margin-left:-13px;border:1.5px solid rgba(255,255,255,.5);border-radius:14px}
.he-hero__down span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:#fff;animation:heWheel 1.8s infinite}
@keyframes heWheel{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(14px)}}

/* Цена ошибок */
.he-pain{position:relative;padding:clamp(70px,8vw,120px) var(--side);color:#fff;background:linear-gradient(180deg,#0f1114,var(--ink))}
.he-pain__head{margin-bottom:clamp(36px,5vw,64px)}
.he-pain__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line-light);border:1px solid var(--line-light);border-radius:var(--r);overflow:hidden}
.he-pain__item{padding:32px 28px 30px;background:var(--ink);transition:background .35s}
.he-pain__item:hover{background:#1c2026}
.he-pain__item strong{display:block;font-size:clamp(34px,3.2vw,52px);font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--accent-l)}
.he-pain__item b{display:block;margin:10px 0 14px;font-weight:600}
.he-pain__item p{margin:0;font-size:15px;color:rgba(255,255,255,.62)}

/* О подходе */
.he-about{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 clamp(16px,2vw,32px)}
.he-about .he-label,.he-about__title{grid-column:1/-1}
.he-about__title{margin-bottom:clamp(50px,6vw,90px)}
.he-about__media{position:relative;grid-column:1/7;min-height:640px;overflow:hidden;border-radius:var(--r)}
.he-about__media picture,.he-about__media img,.he-about__media .he-ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.he-about__cap{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:20px;padding:18px 22px;color:#fff;background:linear-gradient(0deg,rgba(0,0,0,.8),transparent);font-size:13px}
.he-about__cap b{color:var(--accent-l)}
.he-about__copy{grid-column:8/13;align-self:center}
.he-stats{display:grid;grid-template-columns:1fr 1fr;margin:36px 0;border-top:1px solid var(--line)}
.he-stats article{padding:22px 18px 22px 0;border-bottom:1px solid var(--line)}
.he-stats article:nth-child(odd){border-right:1px solid var(--line)}
.he-stats article:nth-child(even){padding-left:22px}
.he-stats strong{display:block;font-size:clamp(36px,3.4vw,56px);font-weight:700;letter-spacing:-.05em;line-height:1;color:var(--ink)}
.he-stats span{display:block;margin-top:10px;font-size:14px;color:var(--muted)}

/* Принципы */
.he-adv{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 clamp(16px,2vw,32px)}
.he-adv .he-label{grid-column:1/-1}
.he-adv__head{grid-column:1/8;margin-bottom:clamp(50px,6vw,90px)}
.he-adv__visual{position:relative;grid-column:1/6;min-height:560px;overflow:hidden;border-radius:var(--r)}
.he-adv__visual picture,.he-adv__visual img,.he-adv__visual .he-ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.he-adv__list{grid-column:7/13;border-top:1px solid var(--line-light)}
.he-adv__item{display:grid;grid-template-columns:56px 1fr;gap:20px;padding:30px 20px 30px 0;border-bottom:1px solid var(--line-light);transition:padding .45s var(--ease),background .35s}
.he-adv__item:hover{padding-left:18px;background:rgba(255,255,255,.035)}
.he-adv__item>span{color:var(--accent-l);font-family:var(--serif);font-style:italic;font-size:20px}
.he-adv__item h3{margin:0 0 10px;font-size:clamp(24px,2.1vw,36px);font-weight:700;letter-spacing:-.03em;text-transform:uppercase}
.he-adv__item p{margin:0;max-width:520px;color:rgba(255,255,255,.66)}

/* Услуги */
.he-services{background:var(--paper)}
.he-services__intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 clamp(16px,2vw,32px);padding-bottom:clamp(50px,6vw,90px)}
.he-services__intro .he-label{grid-column:1/-1}
.he-services__head{grid-column:1/9}
.he-services__lead{grid-column:9/13;align-self:end;margin:0;color:var(--muted)}
.he-svc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:660px;border-top:1px solid var(--line);background:#fff}
.he-svc--rev .he-svc__media{order:2}
.he-svc__media{position:relative;min-height:660px;overflow:hidden;background:var(--ink-2)}
.he-svc__media picture,.he-svc__media img,.he-svc__media .he-ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.he-svc:hover .he-svc__media img{transform:scale(1.05)}
.he-svc__media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,11,10,.5),transparent 45%);pointer-events:none}
.he-svc__media>span{position:absolute;z-index:1;left:26px;bottom:24px;padding:7px 14px;border-radius:999px;background:rgba(18,21,25,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:13px;font-weight:500}
.he-svc__content{display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,6vw,100px)}
.he-svc__top{display:flex;justify-content:space-between;margin-bottom:auto;padding-bottom:40px;font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.he-svc__top span{color:var(--accent);font-family:var(--serif);font-style:italic;font-size:20px;letter-spacing:0}
.he-svc__top b{font-weight:600;color:var(--muted)}
.he-svc h3{margin:0 0 26px;font-size:clamp(36px,4.2vw,72px);line-height:.95;font-weight:700;letter-spacing:-.045em;text-transform:uppercase}
.he-svc h3 em{font-family:var(--serif);font-weight:500;font-style:italic;text-transform:none;letter-spacing:-.02em;color:var(--accent);font-size:.78em}
.he-svc p{max-width:560px;color:var(--muted)}
.he-svc ul{margin:10px 0 36px;padding:0;list-style:none;border-top:1px solid var(--line);max-width:560px}
.he-svc li{position:relative;padding:14px 0 14px 28px;border-bottom:1px solid var(--line);font-weight:500}
.he-svc li:before{content:"";position:absolute;left:2px;top:50%;width:9px;height:9px;margin-top:-4.5px;border-radius:50%;border:2px solid var(--accent)}
.he-svc__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;max-width:560px;margin-bottom:auto}
.he-svc__foot strong{font-size:clamp(24px,2vw,32px);font-weight:700;letter-spacing:-.03em}

/* Этапы */
.he-steps__head{margin-bottom:clamp(50px,6vw,90px)}
.he-steps__list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.he-step{position:relative;min-height:300px;padding:26px 24px;border-radius:var(--r);background:var(--paper);border:1px solid var(--line);transition:background .4s,color .4s,transform .45s var(--ease)}
.he-step:hover{color:#fff;background:var(--ink);transform:translateY(-10px)}
.he-step b{display:block;color:var(--accent);font-family:var(--serif);font-style:italic;font-weight:500;font-size:22px}
.he-step span{display:block;margin:90px 0 12px;font-size:clamp(20px,1.6vw,28px);font-weight:700;letter-spacing:-.03em;text-transform:uppercase}
.he-step p{margin:0;font-size:14px;color:var(--muted);transition:color .4s}
.he-step:hover p{color:rgba(255,255,255,.7)}

/* География */
.he-region{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,6vw,100px);align-items:center}
.he-region .he-h2{font-size:clamp(36px,4.6vw,80px)}
.he-region__content p{max-width:560px;margin:30px 0 40px;color:rgba(255,255,255,.7)}
.he-region__media{position:relative;min-height:540px;overflow:hidden;border-radius:var(--r)}
.he-region__media picture,.he-region__media img,.he-region__media .he-ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* Карточки статей */
.he-articles .he-wrap{padding:0}
.he-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,30px)}
.he-card{display:flex;flex-direction:column;border-radius:var(--r);background:#fff;border:1px solid var(--line);overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s}
.he-card:hover{transform:translateY(-8px);box-shadow:0 30px 60px -30px rgba(18,21,25,.35)}
.he-card__img{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:var(--ink-2)}
.he-card__img img,.he-card__img picture,.he-card__img .he-ph{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.he-card:hover .he-card__img img{transform:scale(1.05)}
.he-card__body{display:flex;flex-direction:column;flex:1;padding:22px 24px 24px}
.he-card time{font-size:13px;font-weight:600;color:var(--accent)}
.he-card h3{margin:8px 0 10px;font-size:20px;line-height:1.28;font-weight:700;letter-spacing:-.015em}
.he-card h3 a:hover{color:var(--accent)}
.he-card p{flex:1;color:var(--muted);font-size:15px}
.he-pager{display:flex;justify-content:center;gap:8px;margin-top:50px}
.he-pager .page-numbers{display:grid;place-items:center;min-width:44px;height:44px;border-radius:var(--r);border:1px solid var(--line);font-weight:600}
.he-pager .current,.he-pager a:hover{background:var(--ink);color:#fff}

/* Заявка */
.he-contact{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:clamp(30px,6vw,100px);padding:clamp(90px,10vw,160px) var(--side);color:#fff;overflow:hidden}
.he-contact__media,.he-contact__overlay{position:absolute;inset:0}
.he-contact__media picture,.he-contact__media img,.he-contact__media .he-ph{width:100%;height:100%;object-fit:cover}
.he-contact__overlay{background:linear-gradient(90deg,rgba(12,14,17,.95),rgba(12,14,17,.8))}
.he-contact__content,.he-contact__form{position:relative;z-index:1}
.he-contact__content>p{max-width:520px;margin:30px 0;color:rgba(255,255,255,.75)}
.he-cdata{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:620px}
.he-ccard{display:block;padding:16px 18px;border-radius:var(--r);background:rgba(255,255,255,.06);border:1px solid var(--line-light);transition:background .3s}
a.he-ccard:hover{background:rgba(196,122,69,.2)}
.he-ccard small{display:block;font-size:12px;color:var(--accent-l)}
.he-ccard b{display:block;margin-top:4px;font-weight:600;word-break:break-word}

/* Форма */
.he-form{padding:clamp(26px,3vw,40px);border-radius:14px;color:var(--ink);background:var(--paper)}
.he-form__row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.he-field{display:block;margin-bottom:16px}
.he-field span{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--muted)}
.he-field input,.he-field select,.he-field textarea{display:block;width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:var(--r);background:#fff;font-size:16px;outline:none;transition:border-color .3s,box-shadow .3s}
.he-field select{appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23c47a45' stroke-width='1.6'/%3E%3C/svg%3E") right 14px center no-repeat;padding-right:36px}
.he-field textarea{resize:vertical;min-height:90px}
.he-field input:focus,.he-field select:focus,.he-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(196,122,69,.18)}
.he-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.he-check{position:relative;display:flex;gap:12px;align-items:flex-start;margin:0 0 10px;font-size:13px;line-height:1.45;color:var(--muted);cursor:pointer}
.he-check input{position:absolute;opacity:0;width:18px;height:18px;margin:0}
.he-check i{flex:none;width:18px;height:18px;margin-top:1px;border-radius:5px;border:1.5px solid var(--ink);background:#fff;transition:background .2s}
.he-check input:checked+i{background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4 9l3.5 3.5L14 6' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") center/100% no-repeat;border-color:var(--accent)}
.he-check input:focus-visible+i{outline:2px solid var(--accent);outline-offset:2px}
.he-check a{color:var(--ink);border-bottom:1px solid var(--line)}
.he-form .he-btn{width:100%;margin-top:10px;justify-content:center}
.he-form__msg{min-height:1.4em;margin:12px 0 0;font-size:14px}
.he-form__msg.is-err{color:#b3261e}.he-form__msg.is-ok{color:#2e7d32}

/* Внутренние страницы */
.he-pagehead{position:relative;padding:calc(var(--head) + clamp(60px,8vw,120px)) var(--side) clamp(50px,6vw,90px);color:#fff;background:var(--ink);overflow:hidden}
.he-pagehead:after{content:"";position:absolute;right:-160px;top:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(196,122,69,.25),transparent 65%);pointer-events:none}
.he-pagehead__in{position:relative;z-index:1;max-width:1320px;margin:0 auto}
.he-pagehead p{max-width:640px;color:rgba(255,255,255,.72);font-size:18px}
.he-pagehead .he-h1 em{color:var(--accent-l)}
.he-pagehead--post .he-pagehead__in{text-align:center}
.he-narrow{max-width:820px;margin-left:auto;margin-right:auto}
.he-back{display:inline-block;margin-bottom:24px;font-size:14px;font-weight:600;color:var(--accent-l)}
.he-meta{font-size:14px;color:rgba(255,255,255,.6)!important;margin:0 auto!important}
.he-articles{padding:clamp(70px,8vw,120px) var(--side)}
.he-content{padding:clamp(40px,6vw,80px) var(--side);font-size:18px;line-height:1.72;color:var(--text)}
.he-content.he-narrow{padding-left:max(var(--side),calc((100% - 820px)/2));padding-right:max(var(--side),calc((100% - 820px)/2));max-width:none}
.he-content h2{margin:1.8em 0 .6em;font-size:clamp(24px,2.4vw,32px);line-height:1.2;font-weight:700;letter-spacing:-.025em;color:var(--ink)}
.he-content h3{margin:1.5em 0 .5em;font-size:22px;font-weight:700}
.he-content a{color:var(--accent-2);border-bottom:1px solid rgba(196,122,69,.4)}
.he-content ul,.he-content ol{padding-left:1.2em}
.he-content li{margin-bottom:.4em}
.he-content li::marker{color:var(--accent)}
.he-content figure{margin:2em 0}
.he-content img{height:auto;width:100%;border-radius:var(--r)}
.he-content figcaption{font-size:13px;color:var(--muted);margin-top:8px}
.he-content blockquote{margin:2em 0;padding:4px 0 4px 24px;border-left:3px solid var(--accent);font-family:var(--serif);font-style:italic;font-size:21px;line-height:1.5;color:var(--ink)}
.he-content table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:15px}
.he-content th,.he-content td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.he-content th{font-size:13px;color:var(--muted)}
.he-cover{margin:0 0 2em}
.he-content .he-social-line{margin-top:2.4em;padding-top:1.4em;border-top:1px solid var(--line);font-size:15px;color:var(--muted)}
.he-doc{font-size:16px}
.he-cta{padding:clamp(60px,8vw,110px) var(--side);color:#fff;background:var(--ink);text-align:center}
.he-cta h2{margin:0 0 16px;font-size:clamp(28px,3.4vw,48px);line-height:1.08;font-weight:700;letter-spacing:-.03em}
.he-cta p{max-width:620px;margin:0 auto 30px;color:rgba(255,255,255,.72)}
.he-cta .he-btn{justify-content:center}

/* Подвал */
.he-foot{position:relative;color:#fff;background:#0c0e11;padding:clamp(60px,7vw,100px) var(--side) 30px}
.he-foot__top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:30px;padding-bottom:40px;border-bottom:1px solid var(--line-light)}
.he-foot__brand{display:flex;align-items:center;gap:16px}
.he-foot__brand span{display:grid;place-items:center;width:52px;height:52px;border-radius:12px;background:var(--accent);color:#fff;font-family:var(--serif);font-style:italic;font-size:26px}
.he-foot__brand b{font-size:clamp(20px,2vw,28px);font-weight:700;letter-spacing:-.02em}
.he-foot__brand em{font-family:var(--serif);font-weight:500;color:var(--accent-l)}
.he-foot__nav{display:flex;flex-wrap:wrap;gap:12px 30px;font-size:15px;font-weight:500}
.he-foot__nav a:hover,.he-foot__mid a:hover{color:var(--accent-l)}
.he-foot__mid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding:40px 0;border-bottom:1px solid var(--line-light)}
.he-foot__mid b{display:block;margin-bottom:16px;font-size:14px;color:var(--accent-l)}
.he-foot__mid p{max-width:460px;color:rgba(255,255,255,.6);font-size:15px}
.he-foot__mid a{display:block;margin-bottom:8px;color:rgba(255,255,255,.82);font-size:15px}
.he-foot__mail{font-size:18px!important;color:#fff!important;font-weight:600}
.he-foot__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 40px;padding-top:24px;font-size:13px;color:rgba(255,255,255,.45)}

/* Плавающие */
.he-fab{position:fixed;z-index:1100;right:22px;bottom:22px;display:grid;place-items:center;width:56px;height:56px;border-radius:16px;color:#fff;background:var(--accent);box-shadow:0 14px 30px -10px rgba(0,0,0,.45);transition:transform .3s var(--ease),background .3s}
.he-fab svg{width:26px;height:26px}
.he-fab:hover{transform:translateY(-3px);background:var(--accent-2)}
.he-cookie{position:fixed;z-index:1150;left:16px;bottom:16px;display:flex;align-items:center;gap:20px;max-width:560px;padding:16px 18px;border-radius:14px;color:#fff;background:var(--ink);border:1px solid var(--line-light);box-shadow:0 20px 40px -20px rgba(0,0,0,.5)}
.he-cookie p{margin:0;font-size:13px;color:rgba(255,255,255,.75)}
.he-cookie a{color:var(--accent-l)}
.he-cookie .he-btn{flex:none;white-space:nowrap}
.he-ty{position:fixed;z-index:2500;inset:0;display:grid;place-items:center;padding:16px;background:rgba(10,11,13,.7);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.he-ty__box{position:relative;max-width:520px;width:100%;padding:44px 34px 34px;border-radius:16px;background:var(--paper);text-align:center}
.he-ty__x{position:absolute;top:12px;right:14px;border:0;background:none;font-size:28px;line-height:1;cursor:pointer;color:var(--muted)}
.he-ty__ok{display:block;width:64px;height:64px;margin:0 auto 18px;color:var(--accent)}
.he-ty h3{margin:0 0 12px;font-size:28px;font-weight:700;letter-spacing:-.03em}
.he-ty p{color:var(--muted)}
.he-ty p a{color:var(--accent-2)}
.he-ty__btns{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px}

/* Появление */
.js [data-reveal]{opacity:0;transform:translateY(36px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--d,0) * .08s)}
.js [data-reveal].he-img-reveal{opacity:1;transform:none;clip-path:inset(12% 12% 12% 12% round 10px);transition:clip-path 1.2s var(--ease)}
html.js [data-reveal].is-in{opacity:1;transform:none;clip-path:inset(0 round 10px)}
html.is-still *,html.is-still *:before,html.is-still *:after{animation:none!important;transition:none!important}
html.is-still [data-reveal]{opacity:1!important;transform:none!important;clip-path:none!important}
html.is-still .he-line i,html.is-still .he-split{transform:none!important;opacity:1!important}
html.is-still .he-pre{display:none}
html.is-still .he-hero{min-height:900px}
@media (max-width:640px){html.is-still .he-hero{min-height:760px}}
@media (prefers-reduced-motion:reduce){
	*,*:before,*:after{animation:none!important;transition:none!important}
	.js [data-reveal]{opacity:1;transform:none;clip-path:none}
	.he-line i,.he-split{transform:none;opacity:1}
	.he-pre{display:none}
}

/* Адаптив */
@media (max-width:1200px){
	.he-topnav{gap:20px}
	.he-about__media{min-height:560px}
	.he-steps__list{grid-template-columns:repeat(3,minmax(0,1fr))}
	.he-pain__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:1020px){
	:root{--head:68px}
	.he-topnav{display:none}
	.he-burger{display:block}
	.he-head{gap:0}
	.he-head__cta{margin-right:12px;height:40px;padding:0 16px;font-size:13px}
	.he-hero__bottom{grid-template-columns:1fr}
	.he-about__media,.he-about__copy,.he-adv__head,.he-adv__visual,.he-adv__list,.he-services__head,.he-services__lead{grid-column:1/-1}
	.he-about__copy{margin-top:40px}
	.he-adv__visual{min-height:380px;margin-bottom:40px}
	.he-services__lead{margin-top:24px}
	.he-svc{grid-template-columns:1fr;min-height:0}
	.he-svc--rev .he-svc__media{order:0}
	.he-svc__media{min-height:360px}
	.he-steps__list{grid-template-columns:1fr 1fr}
	.he-step{min-height:200px}
	.he-step span{margin-top:44px}
	.he-region{grid-template-columns:1fr}
	.he-region__media{min-height:340px}
	.he-cards{grid-template-columns:1fr 1fr}
	.he-contact{grid-template-columns:1fr}
	.he-foot__mid{grid-template-columns:1fr 1fr}
	.he-foot__mid>div:first-child{grid-column:1/-1}
}
@media (max-width:640px){
	body{font-size:15px}
	.he-brand__txt b{font-size:16px}
	.he-brand__txt small{font-size:13px}
	.he-brand__mark{width:32px;height:32px}
	.he-head__cta{display:none}
	.he-hero__title{font-size:clamp(44px,13.5vw,70px)}
	.he-hero__eyebrow{font-size:11px}
	.he-btn{width:100%}
	.he-pain__grid{grid-template-columns:1fr}
	.he-about__media{min-height:380px}
	.he-stats strong{font-size:34px}
	.he-steps__list{grid-template-columns:1fr}
	.he-cards{grid-template-columns:1fr}
	.he-form__row{grid-template-columns:1fr;gap:0}
	.he-cdata{grid-template-columns:1fr}
	.he-foot__mid{grid-template-columns:1fr}
	.he-cookie{right:16px;flex-direction:column;align-items:stretch;gap:12px}
	.he-fab{width:50px;height:50px;right:16px;bottom:16px}
	.he-content{font-size:17px}
	.he-svc__content{padding:36px var(--side) 48px}
	.he-svc__top{padding-bottom:24px}
	.he-hero__down{display:none}
}
