/* inzgeoservis.ru — дизайн 2026.
   Цвета фирмы: тёмно-синий #181938 и золото #D0A873. Заголовки Tektur, текст Golos Text.
   Фирменный элемент — геологический разрез со шкалой глубины (класс .strata). */

@font-face{font-family:Tektur;font-weight:700;font-display:swap;src:url(../fonts/tektur-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:Tektur;font-weight:700;font-display:swap;src:url(../fonts/tektur-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20BD,U+2212}
@font-face{font-family:Tektur;font-weight:800;font-display:swap;src:url(../fonts/tektur-cyrillic-800-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Tektur;font-weight:800;font-display:swap;src:url(../fonts/tektur-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20BD,U+2212}
@font-face{font-family:"Golos Text";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 Text";font-weight:400;font-display:swap;src:url(../fonts/golos-text-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20BD,U+2212}
@font-face{font-family:"Golos Text";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 Text";font-weight:500;font-display:swap;src:url(../fonts/golos-text-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20BD,U+2212}
@font-face{font-family:"Golos Text";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 Text";font-weight:600;font-display:swap;src:url(../fonts/golos-text-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20BD,U+2212}

:root{
  --navy:#181938;      /* ночь — фирменный тёмно-синий */
  --navy-2:#22244a;
  --navy-3:#33366a;
  --gold:#d0a873;      /* золото — акцент на тёмном */
  --gold-2:#e2c193;
  --ochre:#8a6630;     /* охра — золото для текста на светлом, контраст 5:1 */
  --ink:#1d1e2c;
  --text:#34353f;
  --muted:#636674;
  --line:#d9dbe2;
  --stone:#eef0f3;     /* известняк — светлый фон секций */
  --white:#fff;
  --sand:#c9b48a; --loam:#9c8a6b; --gravel:#6e6a64; --rock:#3b3d52; /* слои разреза */
  --ok:#1f7a45; --err:#b3261e;
  --r-btn:12px; --r-img:8px; --r-panel:16px;
  --wrap:1240px; --gut:clamp(16px,4vw,32px);
  --head:Tektur,"Arial Narrow",Arial,sans-serif;
  --body:"Golos Text",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --hdr:72px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--hdr) + 16px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;font:400 17px/1.6 var(--body);color:var(--text);background:var(--white);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
figure{margin:0}
a{color:var(--navy);text-decoration-color:color-mix(in srgb,var(--gold) 70%,transparent);text-decoration-thickness:2px;text-underline-offset:3px}
a:hover{color:var(--ochre)}
h1,h2,h3,h4{font-family:var(--head);color:var(--ink);line-height:1.15;margin:0 0 .55em;font-weight:700;letter-spacing:-.005em}
p{margin:0 0 1em}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.small{font-size:14px;color:var(--muted)}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.skip{position:absolute;left:-9999px;top:8px;z-index:200;background:var(--gold);color:var(--navy);padding:10px 16px;border-radius:8px}
.skip:focus{left:16px}

/* Кнопки */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:12px 24px;border-radius:var(--r-btn);border:2px solid transparent;font:600 16px/1.2 var(--body);text-decoration:none;cursor:pointer;transition:background .15s,color .15s,border-color .15s;text-align:center}
.btn--gold{background:var(--gold);color:var(--navy)}
.btn--gold:hover{background:var(--gold-2);color:var(--navy)}
.btn--navy{background:var(--navy);color:#fff}
.btn--navy:hover{background:var(--navy-3);color:#fff}
.btn--ghost{border-color:rgba(255,255,255,.4);color:#fff;background:transparent}
.btn--ghost:hover{border-color:var(--gold);color:var(--gold)}
.btn--line{border-color:var(--navy);color:var(--navy);background:transparent}
.btn--line:hover{background:var(--navy);color:#fff}
.btn--sm{min-height:42px;padding:8px 18px;font-size:15px}
.btn--wide{width:100%}
.btn:disabled{opacity:.6;cursor:wait}

/* Шапка */
.hdr{position:sticky;top:0;z-index:60;background:var(--navy);color:#fff}
.hdr__in{display:flex;align-items:center;gap:24px;height:var(--hdr)}
.logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;flex-shrink:0}
.logo:hover{color:#fff}
.logo__mark{display:block;flex-shrink:0;background:#fff;border-radius:8px;overflow:hidden}
.logo__mark img{display:block;width:44px;height:44px}
.logo__name{font:800 19px/1 var(--head);letter-spacing:.01em}
.nav{flex:1;min-width:0}
.nav__ul{display:flex;gap:2px;list-style:none;margin:0;padding:0;justify-content:center}
.nav__ul>li{position:relative;display:flex;align-items:center}
.nav__ul>li>a{color:#e8e7f2;text-decoration:none;font:500 15px var(--body);padding:10px 12px;border-radius:8px;white-space:nowrap}
.nav__ul>li>a:hover,.nav__ul>li>a[aria-current]{color:var(--gold)}
.nav__mob{display:none}
.sub-tg{width:22px;height:30px;margin-left:-8px;border:0;background:none;cursor:pointer;position:relative}
.sub-tg::after{content:"";position:absolute;left:6px;top:11px;width:7px;height:7px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(45deg)}
.sub,.mega{position:absolute;top:calc(100% + 6px);left:0;z-index:70;opacity:0;visibility:hidden;transition:opacity .12s,visibility .12s}
.sub{list-style:none;margin:0;padding:8px;min-width:250px;background:#fff;border-radius:var(--r-panel);box-shadow:0 18px 40px rgba(24,25,56,.18)}
.sub a{display:block;padding:8px 12px;border-radius:8px;color:var(--text);text-decoration:none;font-size:15px}
.sub a:hover{background:var(--stone);color:var(--navy)}
.has-mega{position:static!important}
.mega{left:0;right:0;top:var(--hdr);background:#fff;box-shadow:0 24px 48px rgba(24,25,56,.18);border-top:3px solid var(--gold)}
.mega__in{max-width:var(--wrap);margin:0 auto;padding:28px var(--gut) 32px;display:grid;grid-template-columns:repeat(5,1fr);gap:28px}
.mega__t{font:700 15px var(--head);color:var(--ochre);margin:0 0 10px}
.mega ul{list-style:none;margin:0;padding:0}
.mega a{display:block;padding:6px 0;color:var(--text);text-decoration:none;font-size:15px;line-height:1.35}
.mega a:hover,.mega a[aria-current]{color:var(--navy);text-decoration:underline}
.has-sub:hover>.sub,.has-sub:focus-within>.sub,.has-sub.is-open>.sub,.has-sub:hover>.mega,.has-sub:focus-within>.mega,.has-sub.is-open>.mega{opacity:1;visibility:visible}
.hdr__tel{color:#fff;text-decoration:none;font:700 18px var(--head);white-space:nowrap}
.hdr__tel:hover{color:var(--gold)}
.burger{display:none;width:46px;height:46px;border:0;background:none;cursor:pointer;position:relative;margin-right:-10px}
.burger span,.burger span::before,.burger span::after{position:absolute;left:12px;width:22px;height:2px;background:var(--gold);transition:transform .2s,top .2s}
.burger span{top:22px}
.burger span::before,.burger span::after{content:"";left:0}
.burger span::before{top:-7px}
.burger span::after{top:7px}
.burger[aria-expanded="true"] span{background:transparent}
.burger[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}
.burger[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}

/* Разрез грунта */
.strata{position:relative;height:44px;overflow:hidden;background:var(--navy)}
.strata--tall{height:132px}
.strata__svg{position:absolute;inset:0;width:100%;height:100%}
.strata .l1{fill:var(--sand)}
.strata .l2{fill:var(--loam)}
.strata .l3{fill:var(--gravel)}
.strata .l4{fill:var(--rock)}
.strata__wrap{position:relative;height:100%;display:flex;gap:28px}
.strata__gauge{flex-shrink:0;overflow:visible}
.strata__bore{stroke:var(--gold);stroke-width:4}
.strata__tick line{stroke:var(--navy);stroke-width:2}
.strata__tick text{font:600 11px var(--body);fill:#fff;stroke:rgba(24,25,56,.75);stroke-width:3px;paint-order:stroke}
.strata__labels{list-style:none;margin:0;padding:0;display:grid;grid-template-rows:repeat(4,1fr);height:100%;font:500 13px/1 var(--body);color:var(--navy)}
.strata__labels li{display:flex;align-items:center;padding-left:4px}
.strata__labels li:nth-child(3),.strata__labels li:nth-child(4){color:#f1efe9}
.strata__labels li{text-shadow:0 1px 0 rgba(255,255,255,.25)}
.strata__labels li:nth-child(3),.strata__labels li:nth-child(4){text-shadow:none}

/* Первый экран */
.hero{background:var(--navy);color:#e9e8f3;position:relative}
.hero__grid{display:grid;grid-template-columns:1fr;gap:40px;padding-top:28px;padding-bottom:48px}
.hero--photo .hero__grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center}
.crumbs{display:flex;flex-wrap:wrap;gap:4px 0;font-size:14px;margin-bottom:22px;color:#a9a8c2}
.crumbs a{color:#cfcee0;text-decoration:none}
.crumbs a:hover{color:var(--gold)}
.crumbs a::after{content:"/";margin:0 8px;color:#6f6f92}
.hero__title{color:#fff;font:800 clamp(30px,4.4vw,54px)/1.08 var(--head);margin:0 0 18px;max-width:17em;text-wrap:balance}
.hero__lead{font-size:clamp(17px,1.5vw,19px);color:#d6d5e6;max-width:36em;margin-bottom:22px}
.hero__list{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:9px;max-width:38em}
.hero__list li{position:relative;padding-left:28px}
.hero__list li::before{content:"";position:absolute;left:2px;top:.62em;width:12px;height:12px;border:3px solid var(--gold);border-radius:50%}
.hero__price{font:700 20px/1.3 var(--head);color:var(--gold);margin:0 0 22px}
.hero__act{display:flex;flex-wrap:wrap;gap:12px}
.hero__photo{position:relative}
.hero__photo img{width:100%;aspect-ratio:4/3.2;object-fit:cover;border-radius:var(--r-img)}
.hero__photo::after{content:"";position:absolute;left:-14px;top:22px;bottom:22px;width:4px;background:var(--gold);border-radius:2px}

/* Секции */
.s{padding:clamp(56px,7vw,96px) 0}
.s--tight{padding:clamp(36px,4.5vw,56px) 0}
.s--stone{background:var(--stone)}
.s--dark{background:var(--navy);color:#dcdbe9}
.s--dark h2,.s--dark h3{color:#fff}
.s--dark a{color:var(--gold)}
.s--light+.s--light{padding-top:0}
.h2{font:700 clamp(26px,3vw,40px)/1.12 var(--head);max-width:22em;margin-bottom:28px;text-wrap:balance}
.h3{font:700 22px/1.2 var(--head)}
.intro{font-size:19px;max-width:42em;margin-bottom:32px;color:var(--text)}
.after{margin:32px 0 0}

/* Текст */
.prose{max-width:46em}
.prose>*:last-child{margin-bottom:0}
.prose h2,.prose h3{margin-top:1.5em}
.prose h3{font-size:22px}
.prose h4{font-size:18px;margin-top:1.2em}
.prose ul,.prose ol{padding-left:1.3em;margin:0 0 1em}
.prose li{margin:.35em 0}
.prose li::marker{color:var(--ochre)}
.prose figure{margin:1.5em 0}
.prose img{border-radius:var(--r-img)}
.prose table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:16px}
.prose td:last-child{white-space:nowrap;font-weight:600;color:var(--ink)}
.prose th,.prose td{padding:11px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.prose th{font-weight:600;color:var(--ink);background:var(--stone)}
.prose blockquote{margin:1.5em 0;padding:4px 0 4px 20px;border-left:4px solid var(--gold);font-size:19px}
.s--dark .prose th{background:var(--navy-2);color:#fff}

/* Текст с фото */
.split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,72px);align-items:center}
.split--rev .split__photo{order:-1}
.split__photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-img)}

/* Цифры */
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:0;gap:0}
.fact{padding:6px 24px 6px 0}
.fact+.fact{border-left:1px solid var(--line);padding-left:24px}
.fact dt{font:800 clamp(28px,3vw,38px)/1.05 var(--head);color:var(--navy);margin-bottom:6px}
.fact dd{margin:0;font-size:15px;color:var(--muted);max-width:16em}
.s--dark .fact dt{color:var(--gold)}
.s--dark .fact dd{color:#bdbcd2}
.s--dark .fact+.fact{border-color:var(--navy-3)}

/* Преимущества: список с золотой чертой сверху, без карточек-клонов */
.feats{list-style:none;margin:0;padding:0;display:grid;gap:36px 40px}
.feats--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.feats--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.feats--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.feat{border-top:3px solid var(--gold);padding-top:16px}
.feat h3{font-size:19px;margin-bottom:8px}
.feat p{margin:0;font-size:16px;color:var(--muted)}
.feat a{text-decoration:none;color:inherit;display:block}
.feat a:hover h3{color:var(--ochre)}
.s--dark .feat p{color:#bdbcd2}

/* Что входит */
.checkwrap{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:40px;align-items:start}
.checkwrap--full{grid-template-columns:1fr}
.check{list-style:none;margin:0;padding:0;columns:2 300px;column-gap:40px}
.checkwrap:not(.checkwrap--full) .check{columns:1}
.check li{break-inside:avoid;position:relative;padding:12px 0 12px 34px;border-bottom:1px solid var(--line)}
.check li::before{content:"";position:absolute;left:4px;top:19px;width:14px;height:8px;border-left:3px solid var(--ochre);border-bottom:3px solid var(--ochre);transform:rotate(-45deg)}
.s--dark .check li{border-color:var(--navy-3)}
.s--dark .check li::before{border-color:var(--gold)}
.note{background:var(--navy);color:#e3e2ef;border-radius:var(--r-panel);padding:24px 26px;font-size:16px}

/* Таблицы цен и характеристики */
.table{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-panel);background:#fff}
.table table{width:100%;border-collapse:collapse;min-width:560px;font-size:16px}
.table th,.table td{padding:13px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.table thead th{font:600 14px var(--body);color:var(--muted);background:#fff}
.t-group th{background:var(--stone);color:var(--ink);font:700 16px var(--head)}
.t-unit{color:var(--muted);white-space:nowrap}
.t-price{white-space:nowrap;font-weight:600;color:var(--ink)}
.table tbody tr:last-child td{border-bottom:0}
.specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 32px;margin:0}
.specs>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.specs dt{color:var(--muted)}
.specs dd{margin:0;font-weight:600;color:var(--ink);text-align:right}
.specs--col{grid-template-columns:1fr;margin-bottom:20px}

/* Карточка проекта */
.proj{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:40px;align-items:start}
.proj__main img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--r-img)}
.proj__thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:8px}
.proj__thumbs img{aspect-ratio:1;object-fit:cover;border-radius:6px}
.proj__info{position:sticky;top:calc(var(--hdr) + 20px);display:grid;gap:10px}
.proj__info .h3{margin-bottom:4px}

/* Этапы по глубине скважины */
.bore{list-style:none;margin:0;padding:0 0 0 0;position:relative;display:grid;gap:0;max-width:880px}
.bore::before{content:"";position:absolute;left:66px;top:6px;bottom:6px;width:4px;background:linear-gradient(var(--sand) 0 25%,var(--loam) 25% 50%,var(--gravel) 50% 75%,var(--rock) 75%);border-radius:2px}
.bore__step{display:grid;grid-template-columns:56px 1fr;gap:40px;padding:0 0 26px;position:relative}
.bore__step::after{content:"";position:absolute;left:61px;top:5px;width:14px;height:14px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px var(--navy)}
.s--light .bore__step::after,.s--stone .bore__step::after{box-shadow:0 0 0 4px #fff}
.bore__depth{font:700 14px/24px var(--head);color:var(--gold);text-align:right}
.bore__step h3{font-size:19px;margin:0 0 4px}
.bore__step p{margin:0;color:#bdbcd2;font-size:16px;max-width:40em}
.s--light .bore__step p,.s--stone .bore__step p{color:var(--muted)}
.s--light .bore__depth,.s--stone .bore__depth{color:var(--ochre)}

/* Объекты */
.cases{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px 24px}
.case a{text-decoration:none;color:inherit;display:block}
.case figure{overflow:hidden;border-radius:var(--r-img);background:var(--stone)}
.case img,.case__ph{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .35s}
.case__ph{display:block;background:var(--navy-2)}
.case a:hover img{transform:scale(1.03)}
.case__cap{padding:14px 2px 0}
.case h3{font:600 17px/1.35 var(--body);color:var(--ink);margin:0 0 4px}
.case a:hover h3{color:var(--ochre)}
.case p{margin:0;font-size:15px;color:var(--muted)}

/* Галерея и логотипы */
.gal{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.gal--few{grid-template-columns:repeat(3,1fr)}
.gal li:first-child{grid-column:span 2;grid-row:span 2}
.gal--few li:first-child{grid-column:auto;grid-row:auto}
.gal a{display:block;height:100%}
.gal img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px}
.logos__t{color:var(--muted);font:600 16px var(--body)}
.logos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:20px 28px;align-items:center}
.logos img{max-height:64px;width:auto;margin:0 auto;object-fit:contain;filter:grayscale(1);opacity:.8;transition:filter .2s,opacity .2s}
.logos li:hover img{filter:none;opacity:1}

/* Вопросы */
.faqwrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:48px;align-items:start}
.faqs{display:grid;gap:0;border-top:1px solid var(--line)}
.faq{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:20px 48px 20px 0;font:600 18px/1.4 var(--body);color:var(--ink);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:8px;top:26px;width:12px;height:12px;border-right:2px solid var(--ochre);border-bottom:2px solid var(--ochre);transform:rotate(45deg);transition:transform .2s}
.faq[open] summary::after{transform:rotate(-135deg);top:31px}
.faq .prose{padding:0 0 22px;color:var(--text)}

/* Заявка */
.b-cta{background:var(--navy)}
.cta{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,440px);gap:clamp(32px,6vw,88px);align-items:start}
.cta__text p{font-size:18px;color:#cfcee0;max-width:30em}
.cta__ways{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:14px}
.cta__ways li{display:flex;flex-direction:column}
.cta__ways a{font:700 20px var(--head);color:#fff;text-decoration:none}
.cta__ways a:hover{color:var(--gold)}
.cta__ways span{font-size:14px;color:#a9a8c2}
.form{display:grid;gap:14px;background:#fff;color:var(--text);padding:26px;border-radius:var(--r-panel)}
.field span{display:block;font-size:14px;font-weight:600;color:var(--ink);margin-bottom:6px}
.field i{font-style:normal;font-weight:400;color:var(--muted)}
.field input,.field textarea{width:100%;font:17px var(--body);padding:12px 14px;border:1.5px solid #c6c9d3;border-radius:10px;background:#fff;color:var(--ink)}
.field input:focus,.field textarea:focus{border-color:var(--navy);outline:3px solid rgba(208,168,115,.45);outline-offset:0}
.consent{display:flex;gap:10px;font-size:13px;line-height:1.45;color:var(--muted);align-items:flex-start}
.consent input{margin-top:2px;width:18px;height:18px;flex-shrink:0;accent-color:var(--navy)}
.form a{color:var(--navy)}
.form__msg{margin:0;font-size:15px;min-height:1.2em}
.form__msg.is-ok{color:var(--ok);font-weight:600}
.form__msg.is-err{color:var(--err)}

/* Квиз */
.quiz{display:flex;justify-content:space-between;align-items:center;gap:24px 40px;flex-wrap:wrap;border-left:4px solid var(--gold);padding-left:24px}
.quiz .h3{margin-bottom:6px}
.quiz p{margin:0;color:var(--muted);max-width:40em}

/* Смежные услуги и записи */
.lnks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0 32px}
.lnk{display:block;padding:16px 28px 16px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;position:relative}
.lnk::after{content:"";position:absolute;right:6px;top:24px;width:9px;height:9px;border-top:2px solid var(--ochre);border-right:2px solid var(--ochre);transform:rotate(45deg);transition:right .15s}
.lnk:hover::after{right:2px}
.lnk__t{display:block;font-weight:600;color:var(--ink)}
.lnk:hover .lnk__t{color:var(--ochre)}
.lnk__d{display:block;font-size:15px;color:var(--muted);margin-top:2px}
.cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:28px 24px}
.card a{display:block;text-decoration:none;color:inherit}
.card figure{overflow:hidden;border-radius:var(--r-img);background:#dde0e7}
.card img,.card__ph{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .35s}
.card a:hover img{transform:scale(1.03)}
.card__t{display:block;font-weight:600;color:var(--ink);margin-top:12px;line-height:1.35}
.card a:hover .card__t{color:var(--ochre)}
.card__m{display:block;font-size:14px;color:var(--muted);margin-top:4px}

/* Видео */
.vids{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.vid__play{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:var(--r-img);background:var(--navy-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='180' viewBox='0 0 320 180'%3E%3Cg fill='none' stroke='%23d0a873' stroke-opacity='.22' stroke-width='1.2'%3E%3Cpath d='M-10 150c40-30 80-40 120-25s90 10 120-20 70-30 100-20'/%3E%3Cpath d='M-10 125c40-28 85-36 122-22s86 8 116-20 72-28 102-18'/%3E%3Cpath d='M-10 100c42-26 88-32 124-20s82 6 112-20 74-26 104-16'/%3E%3Cpath d='M-10 75c44-24 90-28 126-18s78 4 108-20 76-24 106-14'/%3E%3Cpath d='M-10 50c46-22 92-24 128-16s74 2 104-20 78-22 108-12'/%3E%3Cpath d='M-10 25c48-20 94-20 130-14s70 0 100-20 80-20 110-10'/%3E%3C/g%3E%3C/svg%3E") center/cover;cursor:pointer;overflow:hidden;color:#fff}
.vid__play::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,25,56,.1),rgba(24,25,56,.55))}
.vid__icon{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:var(--gold)}
.vid__icon::after{content:"";position:absolute;left:26px;top:20px;border-left:18px solid var(--navy);border-top:12px solid transparent;border-bottom:12px solid transparent}
.vid__label{position:absolute;left:16px;bottom:12px;font:600 15px var(--body)}
.vid iframe,.vid video{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:var(--r-img);background:#000}
.vid figcaption{font-size:15px;margin-top:8px;color:var(--muted)}

/* Отзывы, карта */
.reviewlab{min-height:240px}
.map{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:stretch}
.map__dl{margin:0;display:grid;gap:14px}
.map__dl dt{font-size:14px;color:var(--muted)}
.map__dl dd{margin:0;font-weight:600;color:var(--ink)}
.map__frame{min-height:340px;border-radius:var(--r-panel);background:#dde0e7;display:flex;align-items:center;justify-content:center;overflow:hidden}
.map__frame iframe,.map__frame ymaps{width:100%!important;height:100%!important;min-height:340px}

/* Главная: с чего начать */
.paths{list-style:none;margin:0;padding:0;border-top:2px solid var(--navy)}
.path{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) 210px;gap:24px;align-items:baseline;padding:22px 48px 22px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;position:relative}
.path::after{content:"";position:absolute;right:8px;top:50%;width:12px;height:12px;margin-top:-6px;border-top:2px solid var(--ochre);border-right:2px solid var(--ochre);transform:rotate(45deg);transition:right .15s}
.path:hover::after{right:2px}
.path__sit{font:700 clamp(19px,1.8vw,23px)/1.25 var(--head);color:var(--ink)}
.path:hover .path__sit{color:var(--ochre)}
.path__ans{color:var(--muted)}
.path__price{font-weight:600;color:var(--ink);text-align:right}

/* Главная: каталог услуг */
.dir{display:grid;grid-template-columns:repeat(auto-fit,minmax(196px,1fr));gap:36px 28px}
.dir__g h3{font-size:18px;padding-bottom:10px;border-bottom:3px solid var(--gold);margin-bottom:4px}
.dir ul{list-style:none;margin:0;padding:0}
.dir a{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--text);font-size:16px;line-height:1.35}
.dir a:hover span{color:var(--ochre);text-decoration:underline}
.dir em{font-style:normal;color:var(--muted);font-size:14px;white-space:nowrap}

/* Главная: первый экран */
.is-home .hero__grid{padding-top:56px;padding-bottom:64px}
.home-hero__photos{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:auto auto;gap:12px}
.home-hero__photos figure:first-child{grid-row:span 2}
.home-hero__photos img{width:100%;height:100%;object-fit:cover;border-radius:var(--r-img)}
.home-hero__photos figure{position:relative;overflow:hidden;border-radius:var(--r-img)}
.home-hero__photos figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 12px 10px;font-size:13px;line-height:1.35;color:#fff;background:linear-gradient(transparent,rgba(16,17,42,.85))}
.home-hero__photos figure:first-child img{aspect-ratio:3/4}
.home-hero__photos figure:not(:first-child) img{aspect-ratio:4/3}
.hero__note{margin:26px 0 0;font-size:15px;color:#a9a8c2}
.hero__note b{color:#fff;font-weight:600}

/* Подвал */
.ftr{background:#10112a;color:#b9b8cf;font-size:15px}
.ftr .strata{background:#10112a}
.ftr__in{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px;padding-top:52px;padding-bottom:40px}
.ftr__brand p{max-width:26em}
.ftr__contacts{display:grid;gap:6px}
.ftr__contacts a:first-child{font:700 20px var(--head);color:#fff}
.ftr a{color:#d9d8e8;text-decoration:none}
.ftr a:hover{color:var(--gold)}
.ftr__t{font:700 15px var(--head);color:var(--gold);margin:0 0 12px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.ftr__legal{display:flex;flex-wrap:wrap;gap:8px 24px;border-top:1px solid #26284a;padding-top:18px;padding-bottom:96px;font-size:13px;color:#8f8ea6}
.ftr__legal a{color:#8f8ea6}

/* Панель связи: на телефоне снизу */
.bar{display:none}

/* Окно заявки и просмотр фото */
.modal,.lb{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(16,17,42,.78)}
.modal[hidden],.lb[hidden]{display:none}
.modal__box{position:relative;background:#fff;border-radius:var(--r-panel);padding:28px 24px 8px;max-width:440px;width:100%;max-height:92vh;overflow:auto}
.modal__box .form{padding:12px 0 0}
.modal__t{font:800 26px var(--head);color:var(--ink);margin:0 0 4px}
.modal__x,.lb__x{position:absolute;right:8px;top:6px;border:0;background:none;font-size:32px;line-height:1;cursor:pointer;color:var(--muted);padding:8px}
.lb img{max-width:min(1400px,92vw);max-height:86vh;width:auto;border-radius:6px}
.lb__x{color:#fff;position:fixed;right:12px;top:10px}
.lb__prev,.lb__next{position:fixed;top:50%;margin-top:-28px;width:56px;height:56px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:34px;cursor:pointer}
.lb__prev{left:12px}.lb__next{right:12px}
body.lock{overflow:hidden}

/* Адаптив */
@media (max-width:1180px){
  .nav__ul>li>a{padding:10px 8px;font-size:14px}
  .hdr__tel{font-size:16px}
  .mega__in{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:1020px){
  .burger{display:block;margin-left:auto}
  .hdr__cta{display:none}
  .hdr__tel{margin-left:auto}
  .nav{position:fixed;inset:var(--hdr) 0 0 0;background:var(--navy);overflow:auto;padding:12px var(--gut) 120px;display:none}
  .nav.is-open{display:block}
  .nav__ul{flex-direction:column;align-items:stretch}
  .nav__ul>li{flex-wrap:wrap}
  .nav__ul>li>a{flex:1;font-size:18px;padding:14px 0;border-bottom:1px solid var(--navy-3);border-radius:0}
  .sub-tg{width:48px;height:48px;margin:0;border-bottom:1px solid var(--navy-3)}
  .sub-tg::after{left:18px;top:18px}
  .sub,.mega{position:static;opacity:1;visibility:visible;display:none;box-shadow:none;background:var(--navy-2);border-radius:10px;width:100%;margin:6px 0 10px;border:0}
  .has-sub.is-open>.sub,.has-sub.is-open>.mega{display:block}
  .has-sub:hover>.sub,.has-sub:hover>.mega{display:none}
  .has-sub.is-open:hover>.sub,.has-sub.is-open:hover>.mega{display:block}
  .mega__in{grid-template-columns:1fr;gap:16px;padding:16px}
  .sub a,.mega a{color:#e3e2ef;padding:8px 4px}
  .sub a:hover,.mega a:hover{background:none;color:var(--gold)}
  .mega__t{color:var(--gold)}
  .nav__mob{display:grid;gap:14px;margin-top:24px}
  .nav__mob a{font:700 22px var(--head);color:#fff;text-decoration:none}
  .hero--photo .hero__grid,.split,.cta,.proj,.faqwrap,.map,.checkwrap{grid-template-columns:minmax(0,1fr)}
  .hero__photo::after{display:none}
  .proj__info{position:static}
  .feats--3,.feats--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ftr__in{grid-template-columns:1fr 1fr}
  .path{grid-template-columns:1fr;gap:4px}
  .path__price{text-align:left}
  .bar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--navy);border-top:1px solid var(--navy-3);padding-bottom:env(safe-area-inset-bottom)}
  .bar a,.bar button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 4px 10px;color:#fff;text-decoration:none;font:600 12px var(--body);background:none;border:0;cursor:pointer}
  .bar svg{width:22px;height:22px;fill:var(--gold)}
  .bar button{background:var(--gold);color:var(--navy)}
  .bar button svg{fill:var(--navy)}
}
@media (max-width:640px){
  body{font-size:16px}
  :root{--hdr:62px}
  .logo__name{font-size:17px}
  .hdr__tel{display:none}
  .hero__grid{padding-top:18px;padding-bottom:36px;gap:28px}
  .hero__act .btn{flex:1 1 100%}
  .home-hero__photos{grid-template-columns:1fr 1fr}
  .home-hero__photos figure:first-child{grid-row:auto;grid-column:span 2}
  .home-hero__photos figure:first-child img{aspect-ratio:4/3}
  .feats--2,.feats--3,.feats--4{grid-template-columns:1fr}
  .fact+.fact{border-left:0;padding-left:0}
  .fact{padding:12px 0;border-bottom:1px solid var(--line)}
  .facts{grid-template-columns:1fr 1fr;gap:0 20px}
  .gal{grid-template-columns:1fr 1fr}
  .bore::before{left:52px}
  .bore__step{grid-template-columns:42px 1fr;gap:30px}
  .bore__step::after{left:47px}
  .ftr__in{grid-template-columns:1fr}
  .strata--tall{height:96px}
  .strata__labels{font-size:11px}
  .table th,.table td{padding:11px 12px}
  .form{padding:20px}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

/* Конструктор */
.is-edit [data-block]{outline:1px dashed transparent;outline-offset:-1px}
.is-edit [data-block]:hover{outline-color:rgba(208,168,115,.8)}
.is-edit [data-block].is-selected{outline:2px solid var(--gold)}
.is-edit [data-f]{cursor:text;border-radius:3px}
.is-edit [data-f]:hover{background:rgba(208,168,115,.14)}
.is-edit [data-f]:focus{outline:2px solid var(--gold);background:rgba(208,168,115,.12)}
.is-edit .bar{display:none}

/* Рубрики и каталог */
.chips{list-style:none;margin:0 0 32px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chips a{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1.5px solid var(--line);border-radius:999px;text-decoration:none;color:var(--text);font-size:15px;background:#fff}
.chips a:hover{border-color:var(--navy);color:var(--navy)}
.chips a[aria-current]{background:var(--navy);border-color:var(--navy);color:#fff}
.chips span{font-size:13px;color:var(--muted)}
.chips a[aria-current] span{color:var(--gold)}
.pager{display:flex;flex-wrap:wrap;gap:6px;margin-top:40px}
.pager a,.pager span{min-width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1.5px solid var(--line);text-decoration:none;color:var(--ink);font-weight:600}
.pager a:hover{border-color:var(--navy)}
.pager span{background:var(--navy);border-color:var(--navy);color:#fff}

/* Этапы с фото */
.steps--photo{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:start}
.steps__photo{position:sticky;top:calc(var(--hdr) + 24px)}
.steps__photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r-img)}
.steps__photo figcaption{font-size:14px;color:#a9a8c2;margin-top:10px}
@media (max-width:1020px){.steps--photo{grid-template-columns:1fr}.steps__photo{position:static}.steps__photo img{aspect-ratio:16/10}}

/* Статья */
.art{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(32px,6vw,88px);align-items:start}
.prose--art{max-width:44em;font-size:18px;line-height:1.7}
.prose--art h2{font-size:clamp(22px,2.2vw,28px);margin-top:1.8em}
.art__aside{position:sticky;top:calc(var(--hdr) + 24px);display:grid;gap:28px}
.art__card{background:var(--navy);color:#dcdbe9;border-radius:var(--r-panel);padding:24px;display:grid;gap:10px}
.art__card .small{color:#b9b8cf;margin:0}
.art__t{font:700 20px/1.25 var(--head);color:#fff;margin:0}
.art__tel{font:700 22px var(--head);color:var(--gold)!important;text-decoration:none;margin:6px 0}
.art__navt{font:700 16px var(--head);color:var(--ink);margin:0 0 8px}
.art__nav ul{list-style:none;margin:0;padding:0}
.art__nav a{display:block;padding:9px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--text);font-size:15px}
.art__nav a:hover{color:var(--ochre)}
@media (max-width:1020px){.art{grid-template-columns:minmax(0,1fr)}.art__aside{position:static}.art__nav{display:none}}

@media (min-width:1200px){.b-catalog .cards{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media (max-width:640px){
  .cases{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 calc(var(--gut) * -1);padding:0 var(--gut) 8px;scrollbar-width:none}
  .cases::-webkit-scrollbar{display:none}
  .case{flex:0 0 82%;scroll-snap-align:start}
  .cards{grid-template-columns:1fr 1fr;gap:20px 12px}
  .card__t{font-size:14px}
  .prose table{font-size:14px}
  .prose th,.prose td{padding:9px 8px}
  .prose td:last-child{white-space:normal}
}

.prose{overflow-wrap:break-word}
.tbl{overflow-x:auto;margin:1.5em 0;-webkit-overflow-scrolling:touch}
.tbl table{margin:0;min-width:520px}

/* Калькуляторы старого сайта */
.embed iframe{display:block;width:100%;min-height:900px;border:0;background:#fff}
.embed--ph{padding:40px 20px;border:2px dashed var(--line,#ddd);border-radius:12px;text-align:center;color:var(--muted,#666)}
.pcalc{max-width:560px;margin:24px 0}
.pcalc__svcs{display:grid;gap:8px;margin:4px 0 12px}
.pcalc__svcs label{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.4;cursor:pointer}
.pcalc__svcs input{margin-top:3px;flex-shrink:0}
.pcalc__sum{font-size:18px;margin:8px 0 16px}
.pcalc__t{font-weight:700;margin:0 0 8px}
.catalog__empty{margin:8px 0 0;color:var(--muted,#666);font-size:17px}
/* Четвёртое фото на главной — во всю ширину под остальными */
.home-hero__photos figure:nth-child(4){grid-column:1 / -1}
.home-hero__photos figure:nth-child(4) img{aspect-ratio:16/8}
