/* ───────── tokens ───────── */
:root{
  --bg:#FFFFFF;
  --bg-soft:#FFF6EE;
  --bg-ink:#141210;
  --bg-card:#FFFFFF;
  --ink:#111111;
  --ink-2:#2E2A27;
  --ink-soft:#5E5953;
  --ink-muted:#8E8983;
  --line:#ECE7DF;
  --line-soft:#F3EFE9;
  --line-ink:#2A2421;
  --rasp:#FF6A00;
  --rasp-dark:#E25A00;
  --rasp-tint:#FFDCC2;
  --rasp-faint:#FFF1E6;
  --green:#17924F;
  --green-dark:#137040;
  --green-faint:#E9F6EE;
  --forest:#C9540F;
  --gold:#D98A2B;

  --r-xs:6px;
  --r-sm:10px;
  --r-md:18px;
  --r-lg:28px;
  --r-xl:40px;

  --shadow-1:0 1px 0 rgba(20,17,15,.04), 0 8px 24px -12px rgba(20,17,15,.12);
  --shadow-2:0 1px 0 rgba(20,17,15,.06), 0 24px 60px -24px rgba(20,17,15,.22);

  --pad-x:clamp(20px, 4vw, 56px);
  --pad-y:clamp(56px, 8vw, 120px);

  --display:'Montserrat', 'PT Sans', system-ui, sans-serif;
  --body:'Manrope', 'PT Sans', system-ui, sans-serif;
  --mono:'JetBrains Mono', 'Menlo', monospace;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--body);
  background:var(--bg);
  color:var(--ink);
  font-size:16px;
  line-height:1.5;
  overflow-x:clip;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}

a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
button{font:inherit;cursor:pointer;border:0;background:0}

/* ───────── grain overlay (atmosphere) ───────── */
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:1000;
  opacity:.35;
  mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.13 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}

/* ───────── layout primitives ───────── */
.wrap{max-width:1600px;margin:0 auto;padding-inline:var(--pad-x)}
.section{padding-block:var(--pad-y);position:relative}
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--mono);font-size:16px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--ink-soft);
}
.eyebrow::before{
  content:"";width:6px;height:6px;background:var(--rasp);border-radius:50%;
  box-shadow:0 0 0 4px var(--rasp-faint);
}
/* H1/H2/H3 размеры по образцу himchistkamebeli.ru/himchistka-divanov.html */
.h-display{
  font-family:var(--display);font-weight:700;letter-spacing:-.02em;
  color:var(--ink);
}
.h1{font-size:clamp(26px,5vw,48px);line-height:1.2}
.h2{font-size:clamp(23px,3.6vw,38px);font-family:var(--display);font-weight:700;letter-spacing:-.015em;line-height:1.18}
.h3{font-size:clamp(20px,3vw,32px);font-family:var(--display);font-weight:600;letter-spacing:-.01em;line-height:1.2}
h1,h2,h3,h4,.h1,.h2,.h3,.prose__h2{overflow-wrap:break-word;word-break:normal}

@media(max-width:960px){
  .h1{font-size:32px;line-height:1.2}
}
@media(max-width:768px){
  .h1{font-size:24px;line-height:1.25}
}

/* ───────── topbar (адрес / часы / телефон — коммерческий фактор) ───────── */
.topbar{
  background:var(--bg-ink);color:#A8A09A;
  border-bottom:1px solid #2A2421;
  font-size:16px;
}
.topbar__row{
  display:flex;align-items:center;justify-content:center;gap:36px;
  padding-block:10px;flex-wrap:wrap;
}
@media(max-width:880px){.topbar__row{justify-content:flex-start;gap:14px 20px;padding-block:12px}}
.topbar__item{
  display:inline-flex;align-items:flex-start;gap:8px;
  color:#A8A09A;text-decoration:none;line-height:1.3;
  transition:color .15s;
}
.topbar__item:hover{color:#fff}
.topbar__item svg{width:14px;height:14px;flex:none;color:var(--rasp);stroke-width:2;margin-top:1px}
.topbar__txt{min-width:0}
.topbar__item b{color:#fff;font-weight:600}
@media(max-width:560px){
  .topbar{font-size:13px}
  .topbar__row{flex-direction:column;align-items:flex-start;gap:7px;padding-block:10px}
  .topbar__item--phone{display:none}
}

/* ───────── header (solid colour bar, uppercase, dropdowns) ───────── */
.hdr{
  position:sticky;top:0;z-index:50;
  background:var(--rasp);
  color:#fff;
  box-shadow:0 1px 0 rgba(0,0,0,.04);
}
.hdr__row{
  display:flex;align-items:center;justify-content:space-between;
  padding-block:14px;gap:24px;
}
.brand{
  display:flex;align-items:center;gap:10px;
  font-family:var(--display);font-weight:800;font-size:22px;
  letter-spacing:.06em;text-transform:uppercase;color:#fff;
  flex:none;
}
.logo-mark{flex:none;display:block}
.brand .o-acc{color:#111}
.ftr__brand .o-acc{color:var(--rasp)}
.brand__name{white-space:nowrap}
.brand-o{display:inline-block;vertical-align:baseline;margin:0 .01em}
.brand-o svg{display:block;width:100%;height:100%}
/* шапка — заглавные: глиф крупнее под высоту прописных */
.brand .brand-o{width:1.02em;height:1.02em;transform:translateY(.2em)}
/* футер — строчные: глиф под высоту строчной «о» */
.ftr__brand .brand-o{width:.78em;height:.78em;transform:translateY(.12em)}






.hdr__nav{display:flex;gap:28px;align-items:center}
.hdr__nav > a,
.hdr__nav .has-sub > a{
  font-size:16px;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;color:#fff;
  padding:8px 0;position:relative;
  transition:opacity .15s ease;
}
.hdr__nav > a:hover,
.hdr__nav .has-sub > a:hover{opacity:.75}
/* «Цены» — зелёная пилюля */
.hdr__nav > a[href="/price.html"]{background:var(--green);color:#fff;padding:7px 15px;border-radius:99px;line-height:1}
.hdr__nav > a[href="/price.html"]:hover{background:var(--green-dark);opacity:1}
.hdr__nav > a[href="/price.html"]::after{display:none}
.hdr__mobile a[href="/price.html"]{display:inline-block;background:var(--green);color:#fff;padding:7px 16px;border-radius:99px}
.hdr__nav .has-sub{position:static}
.hdr__nav .has-sub > a::after{
  content:"";display:inline-block;width:6px;height:6px;margin-left:7px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:translateY(-2px) rotate(45deg);transition:transform .2s;
}
.hdr__nav .has-sub:hover > a::after{transform:translateY(0) rotate(225deg)}

/* Mega-menu panel — full-width row под шапкой */
.hdr__nav .has-sub{padding-bottom:14px;margin-bottom:-14px}
.hdr__sub{
  position:absolute;top:100%;left:0;right:0;
  padding-top:14px;
  opacity:0;pointer-events:none;transform:translateY(-4px);
  transition:opacity .18s, transform .18s;
  z-index:60;
}
.hdr__nav .has-sub.open .hdr__sub,
.hdr__nav .has-sub:focus-within .hdr__sub{
  opacity:1;pointer-events:auto;transform:translateY(0);
}
.hdr__nav .has-sub.open > a::after{transform:translateY(0) rotate(225deg)}
.hdr__sub__inner{
  background:#fff;color:var(--ink);
  border-radius:0 0 var(--r-md) var(--r-md);
  padding:32px clamp(20px, 4vw, 56px);
  max-width:1600px;margin:0 auto;
  box-shadow:0 32px 60px -24px rgba(20,17,15,.28);
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 320px;gap:40px;align-items:start;
}
@media(max-width:1080px){.hdr__sub__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.hdr__sub__promo{grid-column:1/-1}}
/* компактная выпадашка «Откосы» — просто список из 4 ссылок (не мега-меню) */
.has-sub.has-sub--simple{position:relative}
.hdr__sub--simple{right:auto}
.hdr__sub--simple .hdr__sub__inner{display:block;min-width:300px;max-width:none;margin:0;padding:12px}

.hdr__sub__col__title{
  font-family:var(--mono);font-size:16px;letter-spacing:.08em;
  color:var(--ink-muted);text-transform:uppercase;
  margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line);
}
.hdr__sub__col{display:flex;flex-direction:column;gap:2px}
.hdr__sub__col a{
  display:block;
  padding:9px 12px;font-size:16px;color:var(--ink);
  font-weight:500;letter-spacing:0;text-transform:none;
  border-radius:var(--r-sm);
  transition:background .12s, color .12s, padding-left .15s;
}
.hdr__sub__col a:hover{
  background:var(--rasp-faint);color:var(--rasp);
  padding-left:16px;
}

.hdr__sub__promo{
  background:var(--rasp-faint);
  border-radius:var(--r-md);
  padding:24px 22px;
  display:flex;flex-direction:column;gap:12px;
  align-self:stretch;
}
.hdr__sub__promo__price{
  font-family:var(--display);font-weight:800;
  font-size:32px;color:var(--rasp);letter-spacing:-.02em;line-height:1;
}
.hdr__sub__promo__price small{
  display:block;font-size:16px;font-weight:500;color:var(--ink-2);
  margin-top:4px;letter-spacing:0;font-family:var(--body);
}
.hdr__sub__promo__sub{
  font-size:16px;color:var(--ink-2);line-height:1.45;
}
.hdr__sub__promo__cta{
  margin-top:auto;
  background:var(--ink);color:#fff;
  padding:12px 18px;border-radius:999px;
  font-weight:600;font-size:16px;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  text-transform:none;letter-spacing:0;
  text-decoration:none;
  transition:background .15s;
}
.hdr__sub__promo__cta:hover{background:var(--rasp)}
.hdr__sub__promo__cta svg{width:14px;height:14px;stroke-width:2.4}

.hdr__cta{display:flex;align-items:center;gap:14px;flex:none}
.phone{
  font-weight:700;font-size:16px;
  color:#fff;letter-spacing:.01em;
  display:inline-flex;align-items:center;gap:9px;
  transition:opacity .15s;
}
.phone:hover{opacity:.8}
.phone::before{
  content:"";width:8px;height:8px;border-radius:50%;background:#A6F3C0;
  box-shadow:0 0 0 4px rgba(166,243,192,.25);
  animation:pulse 2s ease-in-out infinite;flex:none;
}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(166,243,192,0)}}

.hdr__burger{
  display:none;width:40px;height:40px;color:#fff;
  align-items:center;justify-content:center;
  border-radius:var(--r-sm);transition:background .15s;
}
.hdr__burger:hover{background:rgba(255,255,255,.12)}
.hdr__burger svg{width:24px;height:24px;stroke-width:2.2}

.hdr__mobile{
  display:none;background:var(--rasp-dark);
  border-top:1px solid rgba(255,255,255,.18);
  padding:18px 0 22px;
}
.hdr__mobile.open{display:block;max-height:calc(100vh - 130px);max-height:calc(100dvh - 130px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.hdr__mobile a{
  display:block;padding:12px 0;font-size:16px;font-weight:600;
  text-transform:uppercase;letter-spacing:.04em;color:#fff;
}
.hdr__mobile a + a{border-top:1px solid rgba(255,255,255,.1)}
.hdr__mobile__sub{padding-left:14px;font-size:16px !important;text-transform:none !important;letter-spacing:0 !important;font-weight:500 !important;opacity:.85}
.hdr__mobile__label{
  font-family:var(--mono);font-size:16px;letter-spacing:.08em;
  text-transform:uppercase;color:rgba(255,255,255,.55);
  padding:14px 0 4px;border-top:1px solid rgba(255,255,255,.1);
}

@media (max-width:1120px){
  .hdr__nav{display:none}
  .phone span{display:none}
  .hdr__burger{display:inline-flex}
}

.btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 22px;border-radius:999px;
  font-weight:600;font-size:16px;letter-spacing:-.005em;
  transition:transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
  white-space:nowrap;
}




.btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn--ghost:hover{border-color:var(--ink);background:var(--bg-soft)}

.btn svg{width:16px;height:16px;stroke-width:2.2}

@media (max-width:880px){
  .hdr__nav{display:none}
  .phone span{display:none}
}

/* ───────── HERO (page-header style: prop + калькулятор справа) ───────── */
.hero{
  position:relative;
  padding-block:clamp(40px,5vw,72px) clamp(40px,5vw,72px);
  background:
    radial-gradient(60% 90% at 95% 10%, rgba(200,31,79,.07), transparent 60%),
    radial-gradient(50% 80% at 0% 100%, rgba(31,61,45,.04), transparent 60%),
    var(--bg);
}
.hero__grid{
  display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:clamp(28px,4vw,56px);
  align-items:start;
}
@media(max-width:1080px){.hero__grid{grid-template-columns:minmax(0,1fr);align-items:start}}

.hero__title{margin-bottom:8px;font-size:clamp(28px,5vw,48px);line-height:1.2}
.hero__title b,
.hero__subtitle b{color:var(--rasp);font-weight:700}
.hero__subtitle{
  margin:0 0 24px;
  font-family:var(--display);font-weight:700;
  font-size:48px;line-height:1.3;
  letter-spacing:-.02em;color:var(--ink);
}
@media(max-width:960px){
  .hero__title, .hero__subtitle{font-size:32px;line-height:1.2}
}
@media(max-width:768px){
  .hero__title, .hero__subtitle{font-size:24px;line-height:1.25}
}
.hero__lead{
  margin-bottom:32px;color:var(--ink-2);
  font-size:21px;max-width:54ch;line-height:1.5;
}
.hero__lead b{color:var(--ink);font-weight:600}

/* список из 5 гарантий с иконками */
.hero__benefits{
  display:flex;flex-direction:column;gap:16px;
  border-top:1px solid var(--line-soft);padding-top:24px;
}
.hero__bullet{
  display:flex;align-items:center;gap:18px;
  font-size:18px;color:var(--ink-2);line-height:1.4;
}
.hero__bullet__icon{
  width:60px;height:60px;flex:none;border-radius:50%;
  background:var(--rasp-faint);
  display:grid;place-items:center;
}
.hero__bullet__icon::after{
  content:"";display:block;width:32px;height:32px;
  background:var(--rasp);
  mask-size:contain;mask-position:center;mask-repeat:no-repeat;
  -webkit-mask-size:contain;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;
}
.hero__bullet--clock   .hero__bullet__icon::after{mask-image:url(/images/form/ico-clock.svg);-webkit-mask-image:url(/images/form/ico-clock.svg)}
.hero__bullet--rub     .hero__bullet__icon::after{mask-image:url(/images/form/ico-rub.svg);-webkit-mask-image:url(/images/form/ico-rub.svg)}
.hero__bullet--block   .hero__bullet__icon::after{mask-image:url(/images/form/ico-block.svg);-webkit-mask-image:url(/images/form/ico-block.svg)}
.hero__bullet--sale    .hero__bullet__icon::after{mask-image:url(/images/form/ico-sale.svg);-webkit-mask-image:url(/images/form/ico-sale.svg)}
.hero__bullet--picture .hero__bullet__icon::after{mask-image:url(/images/form/ico-picture.svg);-webkit-mask-image:url(/images/form/ico-picture.svg)}
.hero__bullet--taimer  .hero__bullet__icon::after{mask-image:url(/images/form/ico-taimer.svg);-webkit-mask-image:url(/images/form/ico-taimer.svg)}
.hero__bullet b{color:var(--ink);font-weight:700}

/* реквизиты внизу левой колонки */
.hero__requisites{
  margin-top:24px;padding-top:18px;
  border-top:1px dashed var(--line);
  display:flex;flex-wrap:wrap;gap:14px 24px;
  font-family:var(--mono);font-size:16px;color:var(--ink-muted);
  letter-spacing:.04em;text-transform:uppercase;
}

/* ───────── calc card (правая колонка hero) ───────── */
.hero__calc{
  background:#fff;
  border:1px solid var(--line-soft);
  border-radius:var(--r-lg);
  padding:clamp(18px,2vw,24px);
  box-shadow:var(--shadow-2);
  display:flex;flex-direction:column;gap:13px;
  position:relative;
}
.hero__calc__top{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding-bottom:13px;border-bottom:1px solid var(--line-soft);
}
.hero__calc__title{
  font-family:var(--display);font-size:clamp(18px,1.6vw,22px);font-weight:700;
  letter-spacing:-.01em;line-height:1.15;max-width:22ch;
}
.hero__calc__title b{color:var(--rasp)}
.hero__calc__timer{
  font-family:var(--mono);font-size:12.5px;color:var(--ink-muted);
  letter-spacing:.05em;text-transform:uppercase;text-align:right;flex:none;
}
.hero__calc__timer b{display:block;color:var(--rasp);font-size:16px;font-family:var(--display);font-weight:700;letter-spacing:-.02em;margin-bottom:1px}

.hero__calc__label{
  font-family:var(--mono);font-size:12.5px;letter-spacing:.09em;
  color:var(--ink-muted);text-transform:uppercase;margin-bottom:7px;
}
.hero__calc__types{
  display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:9px;
}
@media(max-width:540px){.hero__calc__types{grid-template-columns:repeat(2, minmax(0,1fr))}}
.hero__calc__type{
  position:relative;
}
.hero__calc__type input{position:absolute;opacity:0;pointer-events:none}
.hero__calc__type label{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:6px;padding:10px 6px;border:1px solid var(--line);
  border-radius:var(--r-sm);cursor:pointer;text-align:center;
  font-size:14px;letter-spacing:-.01em;color:var(--ink-2);line-height:1.2;
  transition:border-color .15s, background .15s, color .15s;
  min-height:72px;
}
.hero__calc__type svg{width:40px;height:30px;color:var(--ink-soft);stroke-width:1.4;transition:color .15s}
.hero__calc__type .duo-f{fill:var(--rasp-tint);stroke:none;transition:fill .15s}
.hero__calc__type .duo-s{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.hero__calc__type input:checked + label{
  border-color:var(--rasp);background:var(--rasp-faint);color:var(--ink);
}
.hero__calc__type input:checked + label svg{color:var(--rasp)}
.hero__calc__type input:checked + label .duo-f{fill:#FFC59E}
.hero__calc__type label:hover{border-color:var(--ink-soft)}

.hero__calc__row{display:flex;flex-wrap:wrap;gap:6px}
.hero__calc__chip{position:relative}
.hero__calc__chip input{position:absolute;opacity:0;pointer-events:none}
.hero__calc__chip label{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 11px;border:1px solid var(--line);border-radius:999px;
  cursor:pointer;font-size:14.5px;color:var(--ink-2);
  transition:border-color .15s, background .15s, color .15s;
}
.hero__calc__chip label::before{
  content:"";width:11px;height:11px;border-radius:50%;
  border:1.5px solid var(--line);transition:all .15s;flex:none;
}
.hero__calc__chip input:checked + label{
  border-color:var(--rasp);background:var(--rasp-faint);color:var(--ink);
}
.hero__calc__chip input:checked + label::before{
  background:var(--rasp);border-color:var(--rasp);
  box-shadow:inset 0 0 0 3px #fff;
}

/* uploader фото мебели */
.hero__upload{
  display:flex;flex-direction:column;gap:10px;
}
.hero__upload__drop{
  display:flex;align-items:center;justify-content:center;gap:10px;
  padding:18px;border:1px dashed var(--line);border-radius:var(--r-sm);
  background:var(--bg-soft);
  font-size:16px;color:var(--ink-soft);font-weight:600;
  cursor:pointer;text-align:center;
  transition:background .15s, color .15s, border-color .15s;
}
.hero__upload__drop:hover,
.hero__upload__drop.is-drag{
  background:var(--rasp-faint);color:var(--rasp);border-color:var(--rasp);
}
.hero__upload__drop svg{width:22px;height:22px;stroke-width:1.6;flex:none}
.hero__upload__drop b{color:var(--ink);font-weight:700}
.hero__upload__list{
  display:grid;grid-template-columns:repeat(auto-fill, minmax(72px, 1fr));gap:8px;
}
.hero__upload__list:empty{display:none}
.hero__upload__thumb{
  position:relative;aspect-ratio:1;border-radius:var(--r-xs);overflow:hidden;
  background:var(--bg-soft);border:1px solid var(--line-soft);
}
.hero__upload__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.hero__upload__thumb__del{
  position:absolute;top:4px;right:4px;
  width:22px;height:22px;border-radius:50%;
  background:rgba(20,17,15,.78);color:#fff;
  display:grid;place-items:center;font-size:16px;line-height:1;
  cursor:pointer;border:0;padding:0;
  transition:background .15s;
}
.hero__upload__thumb__del:hover{background:var(--rasp)}

/* messenger CTA-пара вместо submit-кнопки */
/* лид-блок в форме героя: имя+телефон и кнопка (появляется при заполненном телефоне) */
.hero__calc__lead{display:flex;flex-direction:column;gap:10px}
.hero__calc__lead__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:420px){.hero__calc__lead__row{grid-template-columns:1fr}}
.hero__calc__lead__in{appearance:none;width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 15px;font-family:var(--body);font-size:15.5px;color:var(--ink);background:#fff;transition:.16s}
.hero__calc__lead__in::placeholder{color:var(--ink-muted)}
.hero__calc__lead__in:focus{outline:none;border-color:var(--rasp);box-shadow:0 0 0 4px var(--rasp-faint)}
.hero__calc__btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--green);color:#fff;border:0;border-radius:13px;padding:0 18px;height:0;opacity:0;overflow:hidden;font-family:var(--body);font-weight:800;font-size:16px;line-height:1;cursor:pointer;pointer-events:none;transition:height .3s cubic-bezier(.2,.8,.2,1),opacity .22s,background .16s}
.hero__calc.is-ready .hero__calc__btn{height:54px;opacity:1;pointer-events:auto}
.hero__calc__btn:hover{background:var(--green-dark)}
.hero__calc__btn:disabled{background:#A8A09A;cursor:default}
.hero__calc__or{text-align:center;font-family:var(--mono);font-size:13px;letter-spacing:.03em;color:var(--ink-muted);margin:2px 0}

.hero__calc__messengers{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:6px;
}
@media(max-width:560px){.hero__calc__messengers{grid-template-columns:minmax(0,1fr)}}

/* мессенджеры: жёлтый MAX + голубой Telegram */
.msgr-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:14px;
  padding:18px 22px;border-radius:14px;
  font-weight:700;font-size:16px;letter-spacing:-.005em;
  text-decoration:none;
  transition:opacity .15s ease, transform .15s ease, box-shadow .2s ease;
}
.msgr-btn:hover{opacity:.92;transform:translateY(-1px);box-shadow:0 14px 28px -14px rgba(20,17,15,.35)}
.msgr-btn:active{transform:translateY(0)}

.msgr-btn--max{background:var(--rasp);color:#fff}
.msgr-btn--tg{background:var(--ink);color:#fff}

.msgr-btn__icon{
  width:32px;height:32px;flex:none;display:grid;place-items:center;
}
.msgr-btn__icon svg{width:32px;height:32px;display:block;border-radius:8px}
.msgr-btn__icon--tg svg{border-radius:50%}

.hero__calc__note{
  font-size:13.5px;color:var(--ink-muted);text-align:center;line-height:1.45;margin-top:0;
}
.hero__calc__note b{color:var(--rasp);font-weight:700}

/* блок «сейчас на связи» — компактная одна строка */
.hero__online{
  margin-top:4px;
  background:var(--bg-soft);border:1px solid var(--line-soft);
  border-radius:var(--r-md);padding:9px 12px;
  display:flex;align-items:center;gap:10px;
}
.hero__online .ava--photo{width:32px;height:32px;border-radius:50%;overflow:hidden;flex:none;border:2px solid var(--bg)}
.hero__online .ava--photo img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.hero__online__live{width:8px;height:8px;border-radius:50%;background:#22C55E;box-shadow:0 0 0 4px rgba(34,197,94,.2);animation:pulse 2s ease-in-out infinite;flex:none}
.hero__online__text{margin:0;font-size:13.5px;line-height:1.3;color:var(--ink-soft);display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.hero__online__text b{color:var(--ink);font-weight:700}

/* ───────── hero advantage strip (4 преимуществ под hero) ───────── */
.hero__adv{
  padding-block:32px;
  border-block:1px solid var(--line);
  background:var(--bg-soft);
}
.hero__adv__grid{
  display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:24px;
}
@media(max-width:880px){.hero__adv__grid{grid-template-columns:repeat(2, minmax(0,1fr))}}
@media(max-width:480px){.hero__adv__grid{grid-template-columns:minmax(0,1fr)}}
.hero__adv__item{
  display:flex;align-items:center;gap:14px;
  font-size:16px;color:var(--ink-2);line-height:1.4;
}
.hero__adv__item__icon{
  width:44px;height:44px;flex:none;border-radius:var(--r-sm);
  background:#fff;border:1px solid var(--line-soft);
  display:grid;place-items:center;
}
.hero__adv__item__icon::after{
  content:"";display:block;width:24px;height:24px;
  background:var(--rasp);
  mask-size:contain;mask-position:center;mask-repeat:no-repeat;
  -webkit-mask-size:contain;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;
}
.hero__adv__item--people .hero__adv__item__icon::after{mask-image:url(/images/form/ico-people.svg);-webkit-mask-image:url(/images/form/ico-people.svg)}
.hero__adv__item--shild  .hero__adv__item__icon::after{mask-image:url(/images/form/ico-shild.svg);-webkit-mask-image:url(/images/form/ico-shild.svg)}
.hero__adv__item--hz     .hero__adv__item__icon::after{mask-image:url(/images/form/ico-hz.svg);-webkit-mask-image:url(/images/form/ico-hz.svg)}
.hero__adv__item--hand   .hero__adv__item__icon::after{mask-image:url(/images/form/ico-hand.svg);-webkit-mask-image:url(/images/form/ico-hand.svg)}
.hero__adv__item b{color:var(--ink);font-weight:600}

/* ───────── marquee ───────── */




@keyframes marquee{to{transform:translateX(-50%)}}

/* ───────── SERVICES ───────── */
.svc__head{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:32px;align-items:end;
  margin-bottom:48px;
}
@media(max-width:760px){.svc__head{grid-template-columns:minmax(0,1fr);gap:18px}}
.svc__title{max-width:none}
.svc__meta{
  font-family:var(--mono);font-size:16px;color:var(--ink-soft);
  letter-spacing:.06em;text-transform:uppercase;text-align:right;
}
@media(max-width:760px){.svc__meta{text-align:left}}




/* каталог 8 карточек (стиль «Каталог») */
.cat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media(max-width:900px){.cat-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:480px){.cat-grid{grid-template-columns:minmax(0,1fr)}}
.catcard{position:relative;display:block;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5;box-shadow:var(--shadow-1);isolation:isolate;transition:.25s}
.catcard:hover{transform:translateY(-5px);box-shadow:var(--shadow-2)}
.catcard__img{position:absolute;inset:0;display:block}
.catcard__img img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.catcard:hover .catcard__img img{transform:scale(1.07)}
.catcard::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(20,17,15,.9) 0%,rgba(20,17,15,.38) 40%,rgba(20,17,15,.04) 62%,transparent 80%);transition:opacity .3s}
.catcard:hover::after{background:linear-gradient(to top,rgba(226,90,0,.92) 0%,rgba(180,60,0,.45) 44%,rgba(20,17,15,.1) 70%,transparent 88%)}
.catcard__body{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:20px 20px 22px;display:flex;flex-direction:column;gap:14px;color:#fff}
.catcard__title{font-family:var(--display);font-weight:800;font-size:19px;line-height:1.18;letter-spacing:-.01em;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.25)}
.catcard__row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.catcard__price{font-family:var(--display);font-weight:700;font-size:18px;color:#fff;white-space:nowrap}
.catcard__more{width:42px;height:42px;border-radius:50%;background:var(--rasp);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;transition:.2s;box-shadow:0 8px 20px -6px rgba(226,90,0,.7)}
.catcard:hover .catcard__more{background:#fff;color:var(--rasp);transform:translateX(3px)}
.catcard__more svg{width:18px;height:18px;stroke-width:2.4;fill:none}

/* ───────── Карточки услуг (откосы) — богатые, как у подоконников ───────── */
.svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
@media(max-width:980px){.svc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.svc-grid{grid-template-columns:1fr}}
.scard{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;text-decoration:none;color:inherit;transition:.25s}
.scard:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--rasp-tint)}
.scard__img{position:relative;aspect-ratio:16/10;overflow:hidden}
.scard__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.scard:hover .scard__img img{transform:scale(1.05)}
.scard__pill{position:absolute;top:14px;left:14px;background:#fff;color:var(--ink);box-shadow:var(--shadow-1);border-radius:99px;padding:5px 12px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.04em}
.scard__body{display:flex;flex-direction:column;flex:1;padding:20px 22px 22px}
.scard__name{font-family:var(--display);font-weight:800;font-size:21px;letter-spacing:-.02em;margin:0 0 12px;color:var(--ink)}
.scard__specs{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:9px}
.scard__specs li{display:flex;align-items:center;gap:10px;font-size:14.5px;color:var(--ink-soft)}
.scard__specs li::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--rasp);transform:rotate(45deg);flex:none}
.scard__row{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.scard__price{font-family:var(--display);font-weight:800;font-size:21px;letter-spacing:-.02em;color:var(--ink);line-height:1}
.scard__price span{display:block;font-size:12px;font-weight:500;color:var(--ink-muted);margin-top:4px}
.scard__more{display:inline-flex;align-items:center;gap:7px;height:42px;padding:0 18px;border-radius:var(--r-sm);background:var(--rasp);color:#fff;font-family:var(--display);font-weight:700;font-size:13.5px;white-space:nowrap;transition:.2s}
.scard__more svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
/* ── инверсия «низа» карточки на ховере ── */
.scard__body{position:relative;background:#fff;transition:background-color .3s ease}
.scard__body>*{position:relative;z-index:1}
.scard__body::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(80% 70% at 100% 0,rgba(255,106,0,.18),transparent 58%);pointer-events:none;opacity:0;transition:opacity .3s ease}
.scard__name,.scard__specs li,.scard__price,.scard__price span,.scard__row,.scard__more{transition:color .3s ease,background-color .25s ease,border-color .3s ease}
.scard--dark{background:var(--bg-ink);border-color:transparent;color:#fff}
.scard--dark .scard__pill{background:var(--rasp);color:#fff;box-shadow:none}

/* тёмный низ = ламинированная по умолчанию И любая светлая на ховере */
.scard--dark .scard__body,
.scard:not(.scard--dark):hover .scard__body{background:var(--bg-ink)}
.scard--dark .scard__body::before,
.scard:not(.scard--dark):hover .scard__body::before{opacity:1}
.scard--dark .scard__name,
.scard:not(.scard--dark):hover .scard__name{color:#fff}
.scard--dark .scard__specs li,
.scard:not(.scard--dark):hover .scard__specs li{color:rgba(255,255,255,.86)}
.scard--dark .scard__row,
.scard:not(.scard--dark):hover .scard__row{border-top-color:rgba(255,255,255,.14)}
.scard--dark .scard__price,
.scard:not(.scard--dark):hover .scard__price{color:#fff}
.scard--dark .scard__price span,
.scard:not(.scard--dark):hover .scard__price span{color:rgba(255,255,255,.55)}
.scard--dark .scard__more,
.scard:not(.scard--dark):hover .scard__more{background:#fff;color:var(--ink)}

/* светлый низ = ламинированная инвертируется обратно на ховере */
.scard--dark:hover .scard__body{background:#fff}
.scard--dark:hover .scard__body::before{opacity:0}
.scard--dark:hover .scard__name{color:var(--ink)}
.scard--dark:hover .scard__specs li{color:var(--ink-soft)}
.scard--dark:hover .scard__row{border-top-color:var(--line)}
.scard--dark:hover .scard__price{color:var(--ink)}
.scard--dark:hover .scard__price span{color:var(--ink-muted)}
.scard--dark:hover .scard__more{background:var(--rasp);color:#fff}

/* ───────── Прайс-лист (страница цен) ───────── */
.prc-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media(max-width:760px){.prc-grid{grid-template-columns:1fr}}
.prc-cat{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;transition:.2s}
.prc-cat:hover{box-shadow:var(--shadow-1)}
.prc-cat--wide{grid-column:1/-1}
.prc-cat__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 22px;background:var(--bg-soft);border-bottom:1px solid var(--line)}
.prc-cat__name{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.01em;color:var(--ink)}
.prc-cat__link{font-family:var(--mono);font-size:12px;color:var(--rasp);text-decoration:none;white-space:nowrap;transition:.15s}
.prc-cat__link:hover{opacity:.65}
.prc-tbl{width:100%;border-collapse:collapse}
.prc-tbl th{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);text-align:left;padding:12px 22px;font-weight:600}
.prc-tbl th:last-child{text-align:right}
.prc-tbl td{padding:13px 22px;font-size:15px;color:var(--ink-2);border-top:1px solid var(--line)}
.prc-tbl td:last-child{text-align:right;font-family:var(--display);font-weight:700;color:var(--ink);white-space:nowrap}
.prc-tbl tr.is-hot td{background:var(--green-faint)}
.prc-tbl tr.is-hot td:first-child{font-weight:600;color:var(--ink)}
.prc-tbl tr.is-hot td:last-child{color:var(--green-dark)}
.prc-tbl tr.is-hot td:first-child::after{content:"чаще всего";display:inline-block;margin-left:8px;font-family:var(--mono);font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--green);border-radius:99px;padding:2px 7px;vertical-align:middle}
.prc-notes{list-style:none;margin:34px 0 0;padding:24px 26px;background:var(--bg-soft);border-radius:var(--r-lg);display:grid;gap:12px}
.prc-notes li{position:relative;padding-left:26px;font-size:15px;color:var(--ink-soft);line-height:1.45}
.prc-notes li::before{content:"";position:absolute;left:0;top:6px;width:9px;height:9px;border-radius:2px;background:var(--rasp);transform:rotate(45deg)}
.prc-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:24px;padding:26px 30px;border-radius:var(--r-lg);background:var(--bg-ink);color:#fff;position:relative;overflow:hidden}
.prc-cta::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 90% at 8% 30%,rgba(255,106,0,.2),transparent 60%);pointer-events:none}
.prc-cta__t{position:relative;z-index:1}
.prc-cta__t b{font-family:var(--display);font-weight:800;font-size:21px;letter-spacing:-.02em;display:block;margin-bottom:4px}
.prc-cta__t span{color:rgba(255,255,255,.7);font-size:14.5px}
.prc-cta .btn{position:relative;z-index:1;flex:none}

/* ───────── SEO-текст с оглавлением (на всю ширину сетки) ───────── */
.seo__grid{display:grid;grid-template-columns:264px minmax(0,1fr);gap:54px;align-items:start}
.seo__toc{position:sticky;top:92px;border-left:2px solid var(--line);padding-left:18px;display:flex;flex-direction:column;gap:2px}
.seo__toc__t{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:10px}
.seo__toc a{text-decoration:none;color:var(--ink-soft);font-size:14.5px;padding:7px 0;line-height:1.35;transition:color .15s,padding .15s}
.seo__toc a:hover{color:var(--rasp);padding-left:4px}
.prose{color:var(--ink-2);font-size:17px;line-height:1.72}
.prose>*:first-child{margin-top:0}
.prose__h2{font-family:var(--display);font-weight:800;font-size:clamp(26px,3vw,34px);line-height:1.2;letter-spacing:-.02em;color:var(--ink);margin:0 0 22px}
.prose h3{font-family:var(--display);font-weight:700;font-size:23px;line-height:1.25;letter-spacing:-.01em;color:var(--ink);margin:42px 0 14px;padding-left:16px;position:relative;scroll-margin-top:92px}
.prose h3::before{content:"";position:absolute;left:0;top:.18em;bottom:.18em;width:4px;border-radius:4px;background:var(--rasp)}
.prose p{margin:0 0 18px}
.prose a{color:var(--rasp);font-weight:700;text-decoration:none;border-bottom:1px solid var(--rasp-tint)}
.prose a:hover{border-color:var(--rasp)}
.prose strong{color:var(--ink);font-weight:700}
.prose__list{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:10px}
.prose__list li{position:relative;padding-left:30px}
.prose__list li::before{content:"";position:absolute;left:4px;top:.55em;width:9px;height:9px;border-radius:2px;background:var(--rasp);transform:rotate(45deg)}
.prose__list--plain li{padding-left:24px}
.prose__list--plain li::before{width:7px;height:7px;border-radius:50%;background:var(--rasp-tint);border:1.5px solid var(--rasp);top:.5em;transform:none}
.prose__cta{margin-top:26px;padding:22px 24px;background:var(--bg-soft);border:1px solid var(--rasp-tint);border-radius:16px;max-width:none}
@media(max-width:880px){.seo__grid{grid-template-columns:minmax(0,1fr);gap:24px}.seo__toc{position:static;border-left:0;border-top:1px solid var(--line);padding:18px 0 0;flex-direction:row;flex-wrap:wrap;gap:8px 18px}.seo__toc__t{width:100%;margin:0}.prose p,.prose__list{max-width:none}}
































/* ───────── PRICING (асимметричное бенто с фотофоном) ───────── */
.pricing{background:var(--bg-soft)}
.pricing__head{margin-bottom:36px}




















/* доплаты — отдельная сетка под бенто */











/* блоки «Условия и гарантии» — стиль «Крупный акцент» */
.cond-grid{margin-top:14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media(max-width:860px){.cond-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:560px){.cond-grid{grid-template-columns:minmax(0,1fr)}}
.cond{background:var(--bg-soft);border:1px solid var(--rasp-tint);border-radius:var(--r-lg);padding:26px;transition:.18s}
.cond:hover{transform:translateY(-2px);box-shadow:0 18px 36px -24px rgba(255,106,0,.45)}
.cond__val{font-family:var(--display);font-weight:800;font-size:30px;line-height:1;color:var(--rasp);letter-spacing:-.02em;margin-bottom:14px}
.cond__t{font-family:var(--display);font-weight:700;font-size:18px;margin:0 0 8px;line-height:1.25}
.cond__d{margin:0;color:var(--ink-soft);font-size:14.5px;line-height:1.55}

/* ───────── преимущества материала (ItemList) ───────── */
.benefits-intro{max-width:90ch;color:var(--ink-2);font-size:18px;line-height:1.6;margin:14px 0 34px}
.benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media(max-width:880px){.benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.benefits-grid{grid-template-columns:minmax(0,1fr)}}
.benefit{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;transition:.18s}
.benefit:hover{border-color:var(--rasp);transform:translateY(-2px);box-shadow:0 18px 36px -24px rgba(17,17,17,.4)}
.benefit__ic{width:48px;height:48px;border-radius:13px;background:var(--rasp-faint);color:var(--rasp);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.benefit__ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.benefit h3{font-family:var(--display);font-weight:700;font-size:19px;line-height:1.25;margin:0 0 8px}
.benefit p{margin:0;color:var(--ink-soft);font-size:15px;line-height:1.6}
.benefits-cta{margin-top:26px;padding:22px 26px;background:var(--bg-soft);border:1px solid var(--rasp-tint);border-radius:16px;font-size:17px;color:var(--ink-2)}
.benefits-cta a{color:var(--rasp);font-weight:700;text-decoration:none;border-bottom:1px solid var(--rasp-tint)}
.benefits-cta a:hover{border-color:var(--rasp)}

/* VK галерея — ленты по категориям */
.glr-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
.glr-chip{font-family:var(--body);font-weight:600;font-size:14.5px;color:var(--ink-2);background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:9px 17px;cursor:pointer;transition:.15s;white-space:nowrap}
.glr-chip:hover{border-color:var(--rasp);color:var(--rasp)}
.glr-chip.on{background:var(--rasp);border-color:var(--rasp);color:#fff}
.glr-chip i{font-style:normal;opacity:.6;font-weight:500;margin-left:5px;font-size:13px}
.glr-chip.on i{opacity:.85}
.glr-lane{margin-bottom:30px}
.glr-lane__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.glr-lane__title{font-family:var(--display);font-weight:700;font-size:18px;display:flex;align-items:center;gap:10px}
.glr-lane__title b{font-family:var(--mono);font-size:12px;color:var(--ink-muted);font-weight:500}
.glr-lane__nav{display:flex;gap:8px}
.glr-lane__btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s;flex:none}
.glr-lane__btn:hover{background:var(--rasp);border-color:var(--rasp);color:#fff}
.glr-lane__btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2}
.glr-track{display:grid;grid-auto-flow:column;grid-auto-columns:280px;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}
.glr-track::-webkit-scrollbar{display:none}
@media(max-width:560px){.glr-track{grid-auto-columns:100%}}
.glr-ph{position:relative;display:block;border:0;padding:0;margin:0;border-radius:14px;overflow:hidden;cursor:zoom-in;background:var(--bg-soft);width:100%;aspect-ratio:4/3;scroll-snap-align:start}
.glr-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s,opacity .4s;opacity:0}
.glr-ph.is-loaded img{opacity:1}
.vid.is-hidden{display:none}
.vgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.vgrid .vid{width:auto}
@media(max-width:980px){.vgrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.vgrid{grid-template-columns:repeat(2,1fr);gap:12px}}
@media(max-width:420px){.vgrid{grid-template-columns:1fr}}
.glr-ph:hover img{transform:scale(1.05)}
/* лайтбокс */
.lb{position:fixed;inset:0;z-index:200;background:rgba(17,17,17,.92);display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.lb.open{display:flex}
.lb__img{max-width:92vw;max-height:86vh;border-radius:8px;box-shadow:0 30px 80px -20px rgba(0,0,0,.6);object-fit:contain}
.lb__btn{position:absolute;background:rgba(255,255,255,.1);border:0;color:#fff;width:54px;height:54px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s}
.lb__btn:hover{background:var(--rasp)}
.lb__btn svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.4}
.lb__prev{left:24px;top:50%;transform:translateY(-50%)}
.lb__next{right:24px;top:50%;transform:translateY(-50%)}
.lb__close{top:22px;right:24px;width:46px;height:46px}
.lb__count{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);color:#fff;font-family:var(--mono);font-size:13px;background:rgba(0,0,0,.4);padding:6px 14px;border-radius:999px}
@media(max-width:620px){.lb__prev{left:8px}.lb__next{right:8px}.lb__btn{width:44px;height:44px}}





/* ───────── PROCESS ───────── */
.process{background:var(--bg-soft);position:relative}
.process::before{
  content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--line);
}
.proc__grid{
  display:grid;grid-template-columns:repeat(5, minmax(0,1fr));
  gap:0;margin-top:48px;position:relative;
}
.proc__grid::before{
  content:"";position:absolute;top:38px;left:5%;right:5%;height:1px;
  background:linear-gradient(to right, transparent, var(--line) 8%, var(--line) 92%, transparent);
}
@media(max-width:880px){.proc__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 24px}.proc__grid::before{display:none}}
@media(max-width:480px){.proc__grid{grid-template-columns:minmax(0,1fr)}}

.proc__step{
  display:flex;flex-direction:column;align-items:flex-start;gap:16px;
  padding:0 16px;position:relative;
}
.proc__step:nth-child(odd){padding-top:0}
.proc__dot{
  width:76px;height:76px;border-radius:50%;
  background:var(--bg);border:1px solid var(--line);
  display:grid;place-items:center;
  position:relative;z-index:2;
}
.proc__step:nth-child(3) .proc__dot{background:var(--rasp);border-color:var(--rasp);color:#fff}
.proc__dot svg{width:30px;height:30px;stroke-width:1.6;color:var(--ink)}
.proc__step:nth-child(3) .proc__dot svg{color:#fff}
.proc__num{
  font-family:var(--mono);font-size:16px;letter-spacing:.1em;
  color:var(--ink-muted);text-transform:uppercase;
}
.proc__name{font-family:var(--display);font-size:18px;font-weight:600;letter-spacing:-.005em;line-height:1.2}
.proc__desc{font-size:16px;color:var(--ink-soft);line-height:1.5;max-width:24ch}

/* ───────── NUMBERS (dark) ───────── */


















/* ───────── ADVANTAGES ───────── */















/* ───────── BEFORE/AFTER comparison slider ───────── */
.ba__head{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:36px;flex-wrap:wrap}





.ba__pair{
  position:relative;aspect-ratio:4/3;
  border-radius:var(--r-md);overflow:hidden;
  background:#0F0F0F;
  cursor:ew-resize;user-select:none;touch-action:none;
  --pos:50%;
  box-shadow:var(--shadow-1);
}













/* ───────── FAQ (нативный <details>/<summary>) ───────── */
.faq__head{margin-bottom:36px;text-align:center}
.faq-list{
  display:flex;flex-direction:column;
  max-width:960px;margin:0 auto;
  border-top:1px solid var(--line);
}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{
  list-style:none;cursor:pointer;
  padding:22px 56px 22px 0;position:relative;
  font-family:var(--display);font-weight:600;font-size:20px;
  letter-spacing:-.005em;line-height:1.35;color:var(--ink);
  transition:color .15s;
}
.faq-item summary h3{margin:0;display:inline;font:inherit;color:inherit;letter-spacing:inherit}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:"";position:absolute;right:12px;top:50%;
  width:12px;height:12px;
  border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);
  transform:translateY(-70%) rotate(45deg);
  transition:transform .25s ease, border-color .15s;
}
.faq-item[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq-item summary:hover{color:var(--rasp)}
.faq-item summary:hover::after{border-color:var(--rasp)}
.faq-item summary:focus-visible{outline:2px solid var(--rasp);outline-offset:4px;border-radius:4px}

.faq-answer{
  padding:0 56px 24px 0;
  font-size:17px;color:var(--ink-2);line-height:1.65;
}
.faq-answer p{margin:0}
.faq-item[open] .faq-answer{animation:faq-fade .3s ease-out}
@keyframes faq-fade{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

/* ───────── REVIEWS & MEDIA ───────── */






.yt-facade{position:absolute;inset:0;cursor:pointer;overflow:hidden}
.yt-facade img{
  width:100%;height:100%;object-fit:cover;display:block;
  transform:scale(1.06);transform-origin:center;
  transition:transform .35s ease;
}
.yt-facade:hover img{transform:scale(1.1)}


@keyframes yt-pulse{
  0%{transform:scale(1);opacity:.8}
  100%{transform:scale(1.35);opacity:0}
}


.yt-facade.on iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-facade.on img,.yt-facade.on .yt-facade__play{display:none}















/* лента TV-каналов */







@keyframes media-scroll{to{transform:translateX(-50%)}}

/* ───────── FORM ───────── */
.form-sec{position:relative}
.form-sec__inner{
  max-width:1200px;margin:0 auto;text-align:center;
}
.form-sec__title{
  font-family:var(--display);font-size:clamp(23px,3.6vw,38px);font-weight:700;
  letter-spacing:-.015em;line-height:1.18;margin-bottom:18px;overflow-wrap:break-word;
}
.form-sec__title em{font-style:italic;font-family:'Cormorant Garamond', serif;color:var(--rasp);font-weight:500}
.form-sec__lead{font-size:17px;color:var(--ink-2);margin-bottom:30px;max-width:50ch;margin-inline:auto}
.form-amps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:940px;margin:0 auto 34px;text-align:left}
.form-amp{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:13px 15px}
.form-amp__ic{width:42px;height:42px;border-radius:12px;background:var(--rasp-faint);color:var(--rasp);display:flex;align-items:center;justify-content:center;flex:none}
.form-amp__ic svg{width:22px;height:22px;stroke-width:2;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.form-amp b{display:block;font-family:var(--display);font-weight:700;font-size:16px;line-height:1.15}
.form-amp span{font-size:13px;color:var(--ink-soft);line-height:1.3}
@media(max-width:880px){.form-amps{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:460px){.form-amps{grid-template-columns:minmax(0,1fr)}}
.form{
  background:#fff;border:1px solid var(--line-soft);
  border-radius:var(--r-lg);padding:32px;text-align:left;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;
  box-shadow:var(--shadow-1);
}
@media(max-width:680px){.form{grid-template-columns:minmax(0,1fr);padding:22px}}
.form__field{display:flex;flex-direction:column;gap:6px}
.form__field--full{grid-column:1 / -1}
.form__label{font-size:16px;color:var(--ink-soft);font-weight:500;text-transform:uppercase;letter-spacing:.04em;font-family:var(--mono)}
.form__input,.form__select{
  border:1px solid var(--line);background:var(--bg);
  padding:14px 16px;border-radius:var(--r-sm);
  font:inherit;color:var(--ink);
  transition:border-color .15s, background .15s;
}
.form__input:focus,.form__select:focus{outline:0;border-color:var(--ink);background:#fff}
.form__submit{
  grid-column:1 / -1;margin-top:8px;
  display:flex;flex-direction:column;align-items:center;gap:14px;
}
.form__submit__btn{
  background:var(--green);color:#fff;padding:18px 36px;border-radius:999px;
  font-weight:700;font-size:16px;
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  white-space:nowrap;flex-shrink:0;
  transition:background .2s, transform .2s, box-shadow .2s;
  box-shadow:0 12px 24px -10px rgba(19,112,64,.5);
}
.form__submit__btn:hover{background:var(--green-dark);transform:translateY(-1px)}
.form__submit__btn svg{width:18px;height:18px;flex:none;stroke-width:2.2}
.form__legal{font-size:16px;color:var(--ink-muted);max-width:48ch;line-height:1.5;text-align:center}

/* Мессенджер-кнопки под формой (тот же стиль что в hero-калькуляторе) */
.form-sec__messengers{
  margin-top:32px;
  text-align:center;
}
.form-sec__messengers__label{
  display:block;
  font-family:var(--mono);font-size:16px;letter-spacing:.04em;
  color:var(--ink-soft);text-transform:uppercase;
  margin-bottom:14px;
}
.form-sec__messengers__row{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;
  max-width:780px;margin:0 auto;
}
@media(max-width:560px){.form-sec__messengers__row{grid-template-columns:minmax(0,1fr)}}

/* ───────── TAGS ───────── */
.tags{padding-block:64px}
.tags__title{font-family:var(--mono);font-size:16px;letter-spacing:.08em;color:var(--ink-soft);text-transform:uppercase;margin-bottom:18px}
.tags__row{display:flex;flex-wrap:wrap;gap:8px}
.tags__chip{
  font-size:16px;color:var(--ink-2);
  padding:8px 14px;border-radius:999px;
  background:var(--bg-soft);border:1px solid var(--line-soft);
  transition:background .15s, color .15s, border-color .15s;
}
.tags__chip:hover{background:var(--ink);color:#fff;border-color:var(--ink)}

/* ───────── YANDEX REVIEWS WIDGET ───────── */




















/* ───────── FOOTER ───────── */
.ftr{
  background:var(--bg-ink);color:#A8A09A;padding-block:64px 32px;
}
.ftr__top{
  display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.9fr) minmax(0,1fr) minmax(0,1.15fr);gap:40px;
  padding-bottom:36px;border-bottom:1px solid #2A2421;
}
@media(max-width:980px){.ftr__top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}}
@media(max-width:520px){.ftr__top{grid-template-columns:minmax(0,1fr)}}

.ftr__brand{
  color:#fff;font-family:var(--display);font-weight:800;font-size:28px;
  letter-spacing:-.02em;margin-bottom:18px;text-decoration:none;
  display:inline-flex;align-items:center;gap:12px;
}
.ftr__brand:hover{color:var(--rasp)}
.ftr__lead{font-size:16px;color:#A8A09A;max-width:36ch;line-height:1.6;margin-bottom:22px}
.ftr__rating{
  display:inline-flex;align-items:baseline;gap:10px;
  padding:12px 16px;border-radius:var(--r-sm);
  background:#221E1A;border:1px solid #2A2421;
}
.ftr__rating__num{
  font-family:var(--display);font-weight:800;font-size:24px;
  color:#fff;letter-spacing:-.02em;line-height:1;
}
.ftr__rating__stars{color:#FFB400;font-size:16px;letter-spacing:.05em;line-height:1}
.ftr__rating__src{font-size:16px;color:#A8A09A;line-height:1}

.ftr__col h4{
  color:#fff;font-family:var(--display);font-weight:600;
  font-size:16px;letter-spacing:.04em;text-transform:uppercase;
  margin-bottom:14px;
}
.ftr__col ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.ftr__col a{font-size:16px;color:#A8A09A;text-decoration:none;transition:color .15s}
.ftr__col a:hover{color:var(--rasp)}

/* подвал: каталог в 2 колонки (откосы | подоконники) */
.ftr__catalog{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px}
@media(max-width:980px){.ftr__catalog{gap:8px 20px}}
@media(max-width:420px){.ftr__catalog{grid-template-columns:1fr;gap:8px}}

.ftr__phone{
  font-family:var(--display);font-size:24px;font-weight:700;
  color:#fff;letter-spacing:-.02em;margin-bottom:6px;
  display:block;text-decoration:none;
}
.ftr__phone:hover{color:var(--rasp)}
.ftr__hours{font-size:16px;color:#A8A09A;line-height:1.5;margin-bottom:18px}

.ftr__msgrs{display:flex;gap:10px;flex-wrap:wrap}
.ftr__msgr{
  width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  overflow:hidden;transition:transform .15s ease, box-shadow .15s ease;
  background:#0F0F0F;
}
.ftr__msgr:hover{transform:translateY(-2px);box-shadow:0 8px 18px -8px rgba(0,0,0,.6)}
.ftr__msgr svg{width:44px;height:44px;display:block;border-radius:50%}

.ftr__requisites{
  display:flex;flex-wrap:wrap;gap:14px 32px;
  padding-block:18px;border-bottom:1px solid #2A2421;
  font-family:var(--mono);font-size:16px;letter-spacing:.04em;
  color:#666057;text-transform:uppercase;
}

.ftr__bottom{
  padding-top:24px;
  display:flex;align-items:center;justify-content:space-between;
  gap:24px;flex-wrap:wrap;
  font-family:var(--mono);font-size:16px;letter-spacing:.04em;
  color:#666057;text-transform:uppercase;
}
.ftr__legal{display:flex;gap:24px;flex-wrap:wrap}
.ftr__legal a{color:#A8A09A;text-decoration:none;transition:color .15s}
.ftr__legal a:hover{color:var(--rasp)}

/* ───────── reveal animation ───────── */
[data-r]{opacity:0;transform:translateY(20px);transition:opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1)}
[data-r].on{opacity:1;transform:none}
.reveal-stagger > * + *{transition-delay:.07s}

/* ───────── utility ───────── */



/* ───────── about / video / sliders (Откосик) ───────── */
.about__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);gap:48px;align-items:center;margin-top:32px}
.about__copy p{color:var(--ink-soft);margin:0 0 16px;font-size:17px;line-height:1.7}
.about__copy p b{color:var(--ink)}
.about__points{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:28px}
.about__point{padding:18px 20px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-card)}
.about__point b{display:block;font-family:var(--display);font-weight:700;font-size:17px;margin-bottom:6px}
.about__point b::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--rasp);margin-right:9px;vertical-align:middle}
.about__point span{color:var(--ink-soft);font-size:14.5px;line-height:1.55}
.about__media{position:relative}
.about__media img{width:100%;border-radius:var(--r-lg);display:block;border:1px solid var(--line)}
.about__badge{position:absolute;left:-18px;bottom:24px;background:var(--rasp);color:#fff;border-radius:var(--r-md);padding:14px 20px;box-shadow:0 16px 36px -16px rgba(255,106,0,.6)}
.about__badge b{display:block;font-family:var(--display);font-weight:800;font-size:26px;line-height:1}
.about__badge span{font-size:13px;opacity:.92}
@media(max-width:880px){.about__grid{grid-template-columns:minmax(0,1fr);gap:28px}.about__points{grid-template-columns:minmax(0,1fr)}.about__badge{left:16px}}

.sl__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.sl__nav{display:flex;gap:10px;flex:none}
.sl__btn{width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:var(--bg-card);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.18s}
.sl__btn:hover{background:var(--rasp);border-color:var(--rasp);color:#fff}
.sl__btn svg{width:22px;height:22px;stroke-width:2.2;fill:none}
.sl{display:grid;grid-auto-flow:column;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:8px;scrollbar-width:none}
.sl::-webkit-scrollbar{display:none}
.sl>*{scroll-snap-align:start}
.vid{position:relative;display:block;width:340px;aspect-ratio:16/10;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line)}
.vid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.vid:hover img{transform:scale(1.04)}
.vid__play{position:absolute;inset:0;margin:auto;width:62px;height:62px;border-radius:50%;background:rgba(255,106,0,.94);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.3)}
.vid__play svg{width:24px;height:24px;margin-left:3px}


@media(max-width:560px){.sl{grid-auto-columns:100%}.vid{width:auto}}

/* ───────── reviews (Яндекс, парсинг) ───────── */
.rev-agg{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:8px}
.rev-agg__score{font-family:var(--display);font-weight:800;font-size:46px;line-height:1;color:var(--ink)}
.rev-agg__stars{color:var(--rasp);font-size:20px;letter-spacing:2px}
.rev-agg__meta{font-size:14px;color:var(--ink-soft);font-family:var(--mono);letter-spacing:.02em}
.rev-agg__ya{display:inline-flex;align-items:center;gap:7px;font-weight:600;color:var(--ink)}
.rev-agg__ya b{display:inline-flex;width:20px;height:20px;border-radius:5px;background:#FC3F1D;color:#fff;align-items:center;justify-content:center;font-family:var(--display);font-size:14px}
.rev-sl{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:8px;scrollbar-width:none;align-items:stretch}
.rev-sl::-webkit-scrollbar{display:none}
.rev{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:13px;overflow:hidden}
.rev-sl > .rev{flex:0 0 calc((100% - 3*18px)/4);scroll-snap-align:start}
@media(max-width:1024px){.rev-sl > .rev{flex-basis:calc((100% - 2*18px)/3)}}
@media(max-width:760px){.rev-sl > .rev{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:520px){.rev-sl > .rev{flex-basis:100%}}
.rev__head{display:flex;align-items:center;gap:12px}
.rev__ava{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:none;background:var(--rasp-faint)}
.rev__ava--ini{display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;color:var(--rasp);font-size:18px;background:var(--rasp-faint)}
.rev__name{font-family:var(--display);font-weight:700;font-size:16px;line-height:1.2}
.rev__date{font-size:13px;color:var(--ink-muted);font-family:var(--mono);margin-top:3px}
.rev__stars{color:var(--rasp);font-size:15px;letter-spacing:2px}
.rev__stars i{color:var(--line);font-style:normal}
.rev__text{font-size:15px;line-height:1.6;color:var(--ink-2);margin:0;
  display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}


@media(max-width:560px){.rev{width:300px}}


/* ═══════════ внутренние страницы (контент, A3-цены, крошки, FAQ) ═══════════ */
.prose--lead{max-width:none}
.pd-block{margin:30px 0 50px}
.pd-block__h{font-family:var(--display);font-weight:700;font-size:clamp(23px,2.6vw,29px);line-height:1.2;letter-spacing:-.01em;color:var(--ink);margin:0 0 8px;padding-left:16px;position:relative;scroll-margin-top:92px}
.pd-block__h::before{content:"";position:absolute;left:0;top:.16em;bottom:.16em;width:4px;border-radius:4px;background:var(--rasp)}
.pd-block__lead{color:var(--ink-2);font-size:17px;line-height:1.6;margin:0 0 18px}
.crumbs{border-bottom:1px solid var(--line);background:#fff}
.crumbs .wrap{display:flex;gap:9px;align-items:center;padding:12px var(--pad-x);font-size:13.5px;flex-wrap:wrap}
.crumbs a{color:var(--ink-soft);text-decoration:none}
.crumbs a:hover{color:var(--rasp)}
.crumbs [itemprop="name"]{color:var(--ink-muted)}
.crumbs a [itemprop="name"]{color:var(--ink-soft)}
.crumbs__sep{color:var(--rasp);opacity:.6}
.prose__note{margin:0 0 18px;padding:16px 18px;background:var(--bg-soft);border:1px solid var(--rasp-tint);border-radius:14px;font-size:14.5px;color:var(--ink-soft);line-height:1.55}
.pd-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:80px 0 80px}
@media(max-width:980px){.pd-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pd-grid{grid-template-columns:1fr}}
.pd-grid meta,.pd-meta{display:none}
.va{position:relative;display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px 20px 22px;transition:.25s}
.va:hover{box-shadow:var(--shadow-2);transform:translateY(-4px);border-color:var(--rasp-tint)}
.va--hot{border-color:var(--rasp);box-shadow:0 0 0 1px var(--rasp), var(--shadow-1)}
.va__tag{position:absolute;top:-11px;left:20px;background:var(--rasp);color:#fff;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:5px 11px;border-radius:99px}
.va__num{font-family:var(--display);font-weight:800;letter-spacing:-.03em;font-size:clamp(28px,3vw,38px);line-height:1;color:var(--ink)}
.va__num small{font-size:18px;font-weight:700;color:var(--ink-soft)}
.va__unit{font-size:13.5px;color:var(--ink-muted);margin:7px 0 16px}
.va__list{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:9px}
.va__list li{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;color:var(--ink-2);line-height:1.4}
.va__list svg{flex:0 0 16px;width:16px;height:16px;margin-top:1px;color:var(--rasp)}
.va__btn{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:8px;height:46px;border-radius:var(--r-sm);border:1px solid var(--line-ink);background:transparent;color:var(--ink);font-family:var(--display);font-weight:700;font-size:14.5px;text-decoration:none;transition:.2s;cursor:pointer}
.va__btn:hover{background:var(--ink);color:#fff}
.va--hot .va__btn{background:var(--rasp);border-color:var(--rasp);color:#fff}
.va--hot .va__btn:hover{background:var(--rasp-dark);border-color:var(--rasp-dark)}
.rul{position:relative;height:40px}
.rul__bar{position:absolute;top:8px;left:0;right:0;height:7px;border-radius:99px;background:var(--line)}
.rul__fill{position:absolute;top:8px;height:7px;border-radius:99px;background:linear-gradient(90deg,var(--gold),var(--rasp));box-shadow:0 0 0 4px var(--rasp-faint)}
.rul__scale{position:absolute;left:0;right:0;top:22px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--ink-muted)}
.rul__scale span{position:relative}
.rul__scale span::before{content:"";position:absolute;top:-7px;left:0;width:1px;height:5px;background:var(--line)}
.a3{padding-top:0}
.a3 .strip{margin:0 -20px 16px;padding:18px 20px 14px;background:var(--bg-soft);border-bottom:1px solid var(--line);border-radius:calc(var(--r-lg) - 1px) calc(var(--r-lg) - 1px) 0 0}
.a3--hot .strip{background:#FFE3CE;border-bottom-color:var(--rasp-tint)}
.a3 .strip .rul{height:34px}
.a3 .strip__d{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-.02em;margin-bottom:12px;color:var(--ink)}
.a3 .strip__d span{color:var(--rasp)}

/* ═══════════ арочные ═══════════ */
@media(max-width:880px){.prose p,.prose__list{max-width:none}}
@media(max-width:880px){.seo__grid{grid-template-columns:minmax(0,1fr);gap:24px}.seo__toc{position:static;border-left:0;border-top:1px solid var(--line);padding:18px 0 0;flex-direction:row;flex-wrap:wrap;gap:8px 18px}.seo__toc__t{width:100%;margin:0}}


/* ═══════════ Сетка городов (фото-хаб + перелинковка регионов) ═══════════ */
.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:1100px){.city-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.city-grid{grid-template-columns:1fr}}
.citycard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;transition:.25s}
.citycard:hover{box-shadow:var(--shadow-2);transform:translateY(-4px);border-color:var(--rasp-tint)}
.citycard__img{aspect-ratio:16/10;overflow:hidden}
.citycard__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.citycard:hover .citycard__img img{transform:scale(1.05)}
.citycard__body{padding:18px 18px 16px;display:flex;flex-direction:column;gap:4px}
.citycard__eyebrow{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}
.citycard__city{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:-.01em;color:var(--ink)}
.citycard__row{margin-top:12px;display:flex;align-items:center;justify-content:space-between}
.citycard__meta{font-size:13px;color:var(--ink-soft);font-weight:600}
.citycard__more{width:36px;height:36px;border-radius:50%;background:var(--rasp-faint);color:var(--rasp);display:grid;place-items:center;transition:.18s;flex:none}
.citycard:hover .citycard__more{background:var(--rasp);color:#fff}
.citycard__more svg{width:18px;height:18px;stroke-width:2.2;fill:none}

/* ═══════════ Блок-пример проекта со сметой (региональные страницы) ═══════════ */
.prjcase{display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-1)}
@media(max-width:860px){.prjcase{grid-template-columns:1fr}}
.prjcase__media{display:flex;flex-direction:column;background:var(--bg-soft)}
.prjcase__gallery{position:relative;flex:1;min-height:300px;overflow:hidden}
.prjcase__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(26px) saturate(1.15);transform:scale(1.25)}
.prjcase__main{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1}
.prjcase__badge{position:absolute;top:16px;left:16px;z-index:2;background:var(--rasp);color:#fff;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:99px}
.prjcase__thumbs{display:flex;gap:8px;padding:10px;background:#fff;border-top:1px solid var(--line)}
.prjcase__thumb{flex:1;aspect-ratio:4/3;border:2px solid transparent;border-radius:9px;overflow:hidden;padding:0;cursor:pointer;background:none;transition:border-color .15s,transform .15s}
.prjcase__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.prjcase__thumb.is-active{border-color:var(--rasp)}
.prjcase__thumb:not(.is-active):hover{border-color:var(--rasp-tint);transform:translateY(-1px)}
.prjcase__est{padding:34px 36px;display:flex;flex-direction:column}
.prjcase__eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--rasp);margin-bottom:9px}
.prjcase__title{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.02em;line-height:1.16;margin:0 0 6px}
.prjcase__sub{color:var(--ink-soft);font-size:16px;margin-bottom:24px}
.prjcase__lines{list-style:none;margin:0 0 20px;padding:0}
.prjcase__line{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:15px 0;border-bottom:1px dashed var(--line)}
.prjcase__name{font-size:17px;color:var(--ink-2);font-weight:500}
.prjcase__name small{display:block;color:var(--ink-muted);font-size:13.5px;font-weight:400;margin-top:3px}
.prjcase__val{font-family:var(--mono);font-weight:600;font-size:19px;color:var(--ink);white-space:nowrap}
.prjcase__total{display:flex;align-items:baseline;justify-content:space-between;margin-top:auto;padding-top:20px}
.prjcase__total__l{font-family:var(--display);font-weight:700;font-size:19px}
.prjcase__total__v{font-family:var(--display);font-weight:800;font-size:33px;letter-spacing:-.02em;color:var(--rasp)}
.prjcase__cta{margin-top:22px;height:54px;border-radius:var(--r-sm);background:var(--rasp);color:#fff;font-family:var(--display);font-weight:700;font-size:16px;display:flex;align-items:center;justify-content:center;gap:9px;transition:.2s;text-decoration:none}
.prjcase__cta:hover{background:var(--rasp-dark)}

/* простые списки/таблицы из [[*content]] MODX (старая вёрстка ресурсов) */
.prose ul{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:10px}
.prose ul li{position:relative;padding-left:30px}
.prose ul li::before{content:"";position:absolute;left:4px;top:.55em;width:9px;height:9px;border-radius:2px;background:var(--rasp);transform:rotate(45deg)}
.prose h2{font-family:var(--display);font-weight:800;font-size:clamp(22px,2.6vw,28px);line-height:1.2;letter-spacing:-.015em;color:var(--ink);margin:34px 0 12px}
.prose img{max-width:100%;height:auto;border-radius:var(--r-md);margin:8px 0 18px}
.prose table{width:100%;border-collapse:collapse;margin:6px 0 18px;font-size:15px}
.prose table td,.prose table th{border:1px solid var(--line);padding:10px 13px;text-align:left}

/* ═══════════ Подоконники: 2 акцентные карточки брендов (Moeller / Витраж VPL) ═══════════ */
.pdk-brands{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media(max-width:820px){.pdk-brands{grid-template-columns:1fr}}
.pdk-brands--3{grid-template-columns:repeat(3,1fr)}
@media(max-width:980px){.pdk-brands--3{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.pdk-brands--3{grid-template-columns:1fr}}
@media(max-width:560px){.pdkcard__row{flex-wrap:wrap;gap:12px}.pdkcard__btn{width:100%}.pdkcard__price{font-size:24px}}

/* грид преимуществ Moeller */
.mfeat{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:880px){.mfeat{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.mfeat{grid-template-columns:1fr}}
.mfeat__item{background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-md);padding:24px 22px;box-shadow:var(--shadow-2)}
.mfeat__num{font-family:var(--display);font-weight:800;font-size:34px;line-height:1;color:var(--rasp);letter-spacing:-.02em}
.mfeat__num small{font-size:15px;font-weight:700;margin-left:3px}
.mfeat__t{margin-top:12px;font-weight:800;font-size:17px;color:var(--ink)}
.mfeat__d{margin:7px 0 0;font-size:14.5px;line-height:1.5;color:var(--ink-soft)}

/* О компании: «что ставим» / «гарантии» — 2 колонки */
.abt2{display:grid;grid-template-columns:1fr 1fr;gap:32px}
@media(max-width:760px){.abt2{grid-template-columns:1fr;gap:24px}}
.abt2__col{background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-md);padding:26px 28px;box-shadow:var(--shadow-2)}
.abt2__h{margin:0 0 16px;font-family:var(--display);font-weight:800;font-size:19px;color:var(--ink)}
.abt2__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.abt2__list li{position:relative;padding-left:26px;font-size:15.5px;line-height:1.5;color:var(--ink-2)}
.abt2__list li::before{content:"";position:absolute;left:0;top:7px;width:14px;height:8px;border-left:2.5px solid var(--rasp);border-bottom:2.5px solid var(--rasp);transform:rotate(-45deg)}
.abt2__list a{color:var(--ink);font-weight:700;text-decoration:none;border-bottom:1px solid var(--rasp)}
.abt2__list a:hover{color:var(--rasp)}

/* ───────── Архив статей (legacy-хаб): список pdoPage + пагинация вниз ───────── */
#pdopage{display:flex;flex-direction:column;gap:30px}
#pdopage .rows{order:1}
#pdopage .pagination{order:2}
/* список статей — карточки в 2 колонки */
.prose .rows{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}
@media(max-width:680px){.prose .rows{grid-template-columns:1fr}}
.prose .rows p{margin:0;padding:14px 18px;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);font-size:15px;line-height:1.45;color:var(--ink-muted);transition:border-color .15s,box-shadow .15s}
.prose .rows p:hover{border-color:var(--rasp);box-shadow:var(--shadow-2)}
.prose .rows p a{color:var(--ink);font-weight:600;border-bottom:0;margin-left:5px}
.prose .rows p a:hover{color:var(--rasp)}
/* пагинация (Bootstrap-классы pdoPage → стиль редизайна; #pdopage — перебить старый all.min.css) */
#pdopage .pagination{list-style:none!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap;align-items:center;gap:6px;justify-content:center;margin:0;padding:0}
#pdopage .pagination li,#pdopage .pagination .page-item{margin:0;padding:0;width:auto;float:none;list-style:none}
#pdopage .pagination li::before{display:none}
#pdopage .pagination .page-link{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 13px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink-2);font-weight:600;font-size:15px;line-height:1;text-decoration:none;box-shadow:none;transition:.15s}
#pdopage .pagination .page-link:hover{border-color:var(--rasp);color:var(--rasp);background:#fff}
#pdopage .pagination .page-item.active .page-link{background:var(--rasp);border-color:var(--rasp);color:#fff}
#pdopage .pagination .page-item.disabled .page-link{opacity:.4;pointer-events:none}
.pdkcard{position:relative;border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:.25s;color:inherit;text-decoration:none}
.pdkcard:hover{transform:translateY(-4px)}
.pdkcard--prem{background:var(--bg-ink);color:#fff}
.pdkcard--prem::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 60% at 100% 0,rgba(255,106,0,.16),transparent 55%);z-index:1;pointer-events:none}
.pdkcard--prac{background:#fff;border:1px solid var(--line)}
.pdkcard--prac:hover{box-shadow:var(--shadow-2);border-color:var(--rasp-tint)}
.pdkcard__img{position:relative;aspect-ratio:16/8;overflow:hidden}
.pdkcard__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pdkcard:hover .pdkcard__img img{transform:scale(1.04)}
.pdkcard__pill{position:absolute;top:16px;left:16px;z-index:2;border-radius:99px;padding:6px 13px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.04em}
.pdkcard__pill--prem{background:var(--rasp);color:#fff}
.pdkcard__pill--prac{background:#fff;color:var(--ink);box-shadow:var(--shadow-1)}
.pdkcard__body{position:relative;z-index:2;padding:26px 26px 28px;display:flex;flex-direction:column;flex:1}
.pdkcard__top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:4px}
.pdkcard__name{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.02em}
.pdkcard__flag{font-family:var(--mono);font-size:11.5px;opacity:.7}
.pdkcard--prac .pdkcard__flag{color:var(--ink-muted)}
.pdkcard__tag{font-size:15px;margin:0 0 20px}
.pdkcard--prem .pdkcard__tag{color:rgba(255,255,255,.72)}
.pdkcard--prac .pdkcard__tag{color:var(--ink-soft)}
.pdkcard__specs{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:11px}
.pdkcard__specs li{display:flex;align-items:center;gap:11px;font-size:15px}
.pdkcard--prem .pdkcard__specs li{color:rgba(255,255,255,.9)}
.pdkcard__specs li::before{content:"";width:9px;height:9px;border-radius:2px;background:var(--rasp);transform:rotate(45deg);flex:none}
.pdkcard__row{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding-top:18px;border-top:1px solid}
.pdkcard--prem .pdkcard__row{border-color:rgba(255,255,255,.14)}
.pdkcard--prac .pdkcard__row{border-color:var(--line)}
.pdkcard__price{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.02em;line-height:1}
.pdkcard--prem .pdkcard__price{color:#fff}.pdkcard--prac .pdkcard__price{color:var(--ink)}
.pdkcard__price span{display:block;font-size:12.5px;font-weight:500;margin-top:5px}
.pdkcard--prem .pdkcard__price span{color:rgba(255,255,255,.55)}.pdkcard--prac .pdkcard__price span{color:var(--ink-muted)}
.pdkcard__btn{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 22px;border-radius:var(--r-sm);font-family:var(--display);font-weight:700;font-size:14px;transition:.2s;white-space:nowrap}
.pdkcard__btn--light{background:#fff;color:var(--ink)}.pdkcard__btn--light:hover{background:var(--rasp);color:#fff}
.pdkcard__btn--rasp{background:var(--rasp);color:#fff}.pdkcard__btn--rasp:hover{background:var(--rasp-dark)}

/* ── инверсия низа карточек подоконников на ховере (Moeller↔Витраж) ── */
.pdkcard--prem,.pdkcard--prac{transition:transform .25s ease,background-color .3s ease,box-shadow .25s ease,border-color .3s ease,color .3s ease}
.pdkcard__name,.pdkcard__flag,.pdkcard__tag,.pdkcard__specs li,.pdkcard__row,.pdkcard__price,.pdkcard__price span,.pdkcard__btn{transition:color .3s ease,background-color .25s ease,border-color .3s ease}
.pdkcard--prem::before{opacity:1;transition:opacity .3s ease}
.pdkcard--prac::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(70% 60% at 100% 0,rgba(255,106,0,.16),transparent 55%);pointer-events:none;opacity:0;transition:opacity .3s ease}
/* Витраж (светлая) → тёмный низ на ховере */
.pdkcard--prac:hover{background:var(--bg-ink);border-color:transparent;color:#fff;box-shadow:var(--shadow-2)}
.pdkcard--prac:hover::before{opacity:1}
.pdkcard--prac:hover .pdkcard__flag{color:rgba(255,255,255,.7)}
.pdkcard--prac:hover .pdkcard__tag{color:rgba(255,255,255,.72)}
.pdkcard--prac:hover .pdkcard__specs li{color:rgba(255,255,255,.9)}
.pdkcard--prac:hover .pdkcard__row{border-color:rgba(255,255,255,.14)}
.pdkcard--prac:hover .pdkcard__price{color:#fff}
.pdkcard--prac:hover .pdkcard__price span{color:rgba(255,255,255,.55)}
.pdkcard--prac:hover .pdkcard__btn--rasp{background:#fff;color:var(--ink)}
/* Moeller (тёмная) → светлый низ на ховере */
.pdkcard--prem:hover{background:#fff;color:var(--ink);border:1px solid var(--line)}
.pdkcard--prem:hover::before{opacity:0}
.pdkcard--prem:hover .pdkcard__flag{color:var(--ink-muted)}
.pdkcard--prem:hover .pdkcard__tag{color:var(--ink-soft)}
.pdkcard--prem:hover .pdkcard__specs li{color:var(--ink-2)}
.pdkcard--prem:hover .pdkcard__row{border-color:var(--line)}
.pdkcard--prem:hover .pdkcard__price{color:var(--ink)}
.pdkcard--prem:hover .pdkcard__price span{color:var(--ink-muted)}
.pdkcard--prem:hover .pdkcard__btn--light{background:var(--rasp);color:#fff}

/* ─── Таблица сравнения брендов (характеристики в строках) ─── */
.cmp{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-1)}
.cmp__head{display:grid;grid-template-columns:1.1fr 1fr 1fr}
.cmp__hcell{padding:24px 24px 22px}
.cmp__hcell:first-child{background:var(--bg-soft)}
.cmp__hcell--prem{background:var(--bg-ink);color:#fff;position:relative}
.cmp__hcell--prem::after{content:"Премиум";position:absolute;top:18px;right:20px;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;background:var(--rasp);color:#fff;padding:4px 9px;border-radius:99px}
.cmp__hcell--prac{background:#fff;border-left:1px solid var(--line)}
.cmp__brand{font-family:var(--display);font-weight:800;font-size:23px;letter-spacing:-.02em}
.cmp__country{font-family:var(--mono);font-size:11.5px;opacity:.65;margin-top:4px}
.cmp__lead{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}
.cmp__row{display:grid;grid-template-columns:1.1fr 1fr 1fr;border-top:1px solid var(--line)}
.cmp__cell{padding:15px 24px;font-size:15px;display:flex;align-items:center}
.cmp__cell:first-child{background:#FCFAF7;font-weight:600;color:var(--ink-2);font-size:14px}
.cmp__cell--prac{border-left:1px solid var(--line)}
.cmp__cell b{font-family:var(--display);font-weight:700}
.cmp__cell .dash{color:var(--ink-muted)}
.cmp__foot{display:grid;grid-template-columns:1.1fr 1fr 1fr;border-top:1px solid var(--line);background:#fff}
.cmp__fcell{padding:20px 24px}
.cmp__fcell--prac{border-left:1px solid var(--line)}
.cmp__price{font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:-.02em}
.cmp__price small{display:block;font-size:12px;color:var(--ink-muted);font-weight:500;margin-top:3px}
.cmp__fcell .btn{margin-top:12px;width:100%}
@media(max-width:760px){
  .cmp__head,.cmp__row,.cmp__foot{grid-template-columns:1fr 1fr}
  .cmp__lead{font-size:10px}
  .cmp__cell:first-child,.cmp__hcell:first-child,.cmp__fcell:first-child{grid-column:1/-1;border-top:1px solid var(--line)}
  .cmp__hcell:first-child{display:none}
  .cmp__cell:first-child{padding:11px 20px;font-size:13px;background:var(--bg-soft);justify-content:flex-start}
  .cmp__fcell:first-child{display:none}
  .cmp__cell{font-size:14px;padding:13px 18px}
  .cmp__fcell{padding:14px 13px}
  .cmp__price{font-size:18px}
  .cmp__price small{font-size:10.5px}
  .cmp__fcell .btn{margin-top:10px;font-size:12.5px;padding:12px 8px}
}

/* ═══════════ Тёмный херо (страница подоконников) ═══════════ */
.hero--dark{background:var(--bg-ink)}
.hero--dark::after{content:"";position:absolute;inset:0;background:radial-gradient(55% 80% at 6% 28%,rgba(255,106,0,.17),transparent 60%);pointer-events:none;z-index:0}
.hero--dark .hero__grid{position:relative;z-index:1}
.hero--dark .hero__title{color:#fff}
.hero--dark .hero__title b,.hero--dark .hero__subtitle b{color:var(--rasp)}
.hero--dark .hero__subtitle{color:rgba(255,255,255,.9)}
.hero--dark .hero__lead{color:rgba(255,255,255,.72)}
.hero--dark .hero__lead b{color:#fff}
.hero--dark .hero__bullet{color:#fff}
.hero--dark .hero__bullet b{color:#FFC396}
.hero--dark .hero__requisites{color:rgba(255,255,255,.5)}
.hero--dark .hero__requisites span{border-color:rgba(255,255,255,.16)!important;color:rgba(255,255,255,.55)}
.hero--dark .hero__brands{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 4px}
.hero--dark .hero__brand{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:99px;padding:8px 15px;font-family:var(--display);font-weight:700;font-size:14px;color:#fff}
.hero--dark .hero__brand small{font-weight:500;opacity:.7;font-size:12px}

/* ═══════════ Блог (лента кейсов) ═══════════ */
.blg-hero{position:relative;background:var(--bg-ink);color:#fff;overflow:hidden;padding:64px 0 70px}
.blg-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(50% 80% at 12% 20%,rgba(255,106,0,.2),transparent 60%);pointer-events:none}
.blg-hero__in{position:relative;z-index:1}
.blg-hero__eye{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--rasp);margin:0 0 18px}
.blg-hero__h1{font-family:var(--display);font-weight:800;font-size:clamp(32px,5vw,52px);line-height:1.05;letter-spacing:-.025em;margin:0 0 18px;color:#fff;max-width:18ch}
.blg-hero__h1 b{color:var(--rasp)}
.blg-hero__lead{font-size:18px;line-height:1.55;color:rgba(255,255,255,.72);max-width:620px;margin:0}
.blg-hero__stats{display:flex;gap:34px;margin-top:34px;flex-wrap:wrap}
.blg-hero__stat b{display:block;font-family:var(--display);font-weight:800;font-size:30px;letter-spacing:-.02em}
.blg-hero__stat span{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.blg{padding:60px 0 90px}
.blg__bar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:34px;flex-wrap:wrap}
.blg__title{font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:-.02em;margin:0}
.blg__chips{display:flex;gap:8px;flex-wrap:wrap}
.blg__chip{font-family:var(--mono);font-size:12px;letter-spacing:.03em;border:1px solid var(--line);border-radius:99px;padding:8px 15px;color:var(--ink-soft);background:#fff;cursor:pointer;transition:.18s}
.blg__chip.on,.blg__chip:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.blg__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
@media(max-width:980px){.blg__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.blg__grid{grid-template-columns:1fr}}
.art{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s,border-color .25s}
.art:hover{transform:translateY(-5px);box-shadow:var(--shadow-2);border-color:var(--rasp-tint)}
.art__media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--bg-ink)}
.art__media img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.art:hover .art__media img{transform:scale(1.06)}
.art__media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(20,17,15,.5),transparent 50%)}
.art__play{position:absolute;left:0;right:0;top:0;bottom:0;margin:auto;width:58px;height:58px;border-radius:50%;background:rgba(255,106,0,.95);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 28px rgba(0,0,0,.34);transition:transform .2s;z-index:2}
.art:hover .art__play{transform:scale(1.08)}
.art__play svg{width:22px;height:22px;margin-left:3px;fill:currentColor}
.art__loc{position:absolute;top:13px;left:13px;z-index:2;background:rgba(255,255,255,.95);color:var(--ink);font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.03em;border-radius:99px;padding:5px 11px;box-shadow:var(--shadow-1)}
.art__dur{position:absolute;bottom:13px;right:13px;z-index:2;background:rgba(20,17,15,.82);color:#fff;font-family:var(--mono);font-size:11px;border-radius:6px;padding:3px 8px}
.art__body{display:flex;flex-direction:column;flex:1;padding:20px 22px 22px}
.art__meta{font-family:var(--mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:11px;display:flex;align-items:center;gap:9px}
.art__meta i{width:5px;height:5px;border-radius:50%;background:var(--rasp);display:inline-block}
.art__title{font-family:var(--display);font-weight:700;font-size:19px;line-height:1.25;letter-spacing:-.01em;margin:0 0 10px;color:var(--ink);transition:color .18s}
.art:hover .art__title{color:var(--rasp-dark)}
.art__excerpt{font-size:14.5px;line-height:1.5;color:var(--ink-soft);margin:0 0 18px}
.art__more{margin-top:auto;display:inline-flex;align-items:center;gap:7px;font-family:var(--display);font-weight:700;font-size:14px;color:var(--rasp)}
.art__more svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;transition:transform .2s}
.art:hover .art__more svg{transform:translateX(4px)}

/* ═══════════ Статья блога (кейс) ═══════════ */
.bp-wrapn{max-width:820px;margin:0 auto;padding:0 24px}
.bp-crumbs2{padding:20px 0 0}
.bp-head{padding:28px 0 22px;text-align:center}
.bp-meta{display:inline-flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:18px}
.bp-meta .cat{background:var(--rasp-faint);color:var(--rasp-dark);border-radius:99px;padding:5px 13px;font-weight:600}
.bp-meta i{width:4px;height:4px;border-radius:50%;background:var(--line)}
.bp-title{font-family:var(--display);font-weight:800;font-size:clamp(28px,4.4vw,44px);line-height:1.08;letter-spacing:-.025em;color:var(--ink);margin:0 0 16px}
.bp-lead{font-size:19px;line-height:1.55;color:var(--ink-soft);margin:0 auto;max-width:680px}
.bp-content{padding:10px 0 6px;font-size:17px;line-height:1.7;color:var(--ink-2)}
.bp-content p{margin:0 0 18px}
.bp-content h2{font-family:var(--display);font-weight:800;font-size:25px;letter-spacing:-.02em;color:var(--ink);margin:34px 0 14px}
.bp-content h3{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:-.01em;color:var(--ink);margin:28px 0 12px}
.bp-content ul{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:10px}
.bp-content ul li{position:relative;padding-left:26px;line-height:1.55}
.bp-content ul li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:9px;border-radius:2px;background:var(--rasp);transform:rotate(45deg)}
.bp-content ol{margin:0 0 20px;padding-left:22px}
.bp-content ol li{margin-bottom:8px;line-height:1.55}
.bp-content a{color:var(--rasp-dark);text-decoration:underline;text-underline-offset:2px}
.bp-content img{max-width:100%;height:auto;border-radius:var(--r-md);margin:10px 0 22px;display:block}
.bp-content iframe,.bp-content video,.bp-content .video,.bp-content embed{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:var(--r-lg);margin:12px 0 24px;box-shadow:var(--shadow-1);background:var(--bg-ink)}
.bp-content table{width:100%;border-collapse:collapse;margin:0 0 22px;font-size:15.5px}
.bp-content th,.bp-content td{border:1px solid var(--line);padding:10px 14px;text-align:left}
.bp-content th{background:var(--bg-soft);font-family:var(--display);font-weight:700}
.bp-cta-wide{position:relative;overflow:hidden;background:var(--bg-ink);color:#fff;border-radius:var(--r-lg);padding:34px 34px;margin:40px auto 0;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.bp-cta-wide::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 90% at 6% 20%,rgba(255,106,0,.22),transparent 60%);pointer-events:none}
.bp-cta-wide__t{position:relative;z-index:1}
.bp-cta-wide__t b{display:block;font-family:var(--display);font-weight:800;font-size:23px;letter-spacing:-.02em;margin-bottom:6px}
.bp-cta-wide__t span{color:rgba(255,255,255,.72);font-size:15px}
.bp-cta-wide .btn{position:relative;z-index:1;flex:none}
.bp-back{text-align:center;padding:30px 0 72px}

/* ── видео-фасад в статьях блога (VideoObject) ── */
.bp-video{position:relative;margin:14px 0 24px}
.bp-video__btn{display:block;width:100%;position:relative;aspect-ratio:16/9;border:0;padding:0;border-radius:var(--r-lg);overflow:hidden;cursor:pointer;background:var(--bg-ink);box-shadow:var(--shadow-1)}
.bp-video__btn img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.bp-video__btn:hover img{transform:scale(1.04)}
.bp-video__btn::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(20,17,15,.4),transparent 55%)}
.bp-video__play{position:absolute;inset:0;margin:auto;width:74px;height:74px;border-radius:50%;background:rgba(255,106,0,.96);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 40px rgba(0,0,0,.4);z-index:2;transition:transform .2s}
.bp-video__btn:hover .bp-video__play{transform:scale(1.08)}
.bp-video__play svg{width:28px;height:28px;margin-left:4px;fill:currentColor}
.bp-video__dur{position:absolute;right:14px;bottom:14px;z-index:2;background:rgba(20,17,15,.82);color:#fff;font-family:var(--mono);font-size:12px;border-radius:6px;padding:4px 9px}
.bp-video.is-playing .bp-video__btn{display:none}
.bp-video iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:var(--r-lg);box-shadow:var(--shadow-1)}

/* ── бейджи длительности и даты на карточках видео-ленты ── */
.vid__dur{position:absolute;right:10px;bottom:10px;z-index:2;background:rgba(20,17,15,.82);color:#fff;font-family:var(--mono);font-size:11px;border-radius:6px;padding:3px 8px;line-height:1}
.vid__date{position:absolute;left:10px;bottom:10px;z-index:2;background:rgba(20,17,15,.82);color:#fff;font-family:var(--mono);font-size:11px;border-radius:6px;padding:3px 8px;line-height:1}

/* ═══════════ Хаб услуг (сетка карточек) ═══════════ */
.usl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:900px){.usl-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.usl-grid{grid-template-columns:1fr}}
.uslcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s,border-color .25s}
.uslcard:hover{transform:translateY(-5px);box-shadow:var(--shadow-2);border-color:var(--rasp-tint)}
.uslcard__icon{width:62px;height:62px;border-radius:16px;background:var(--rasp-faint);color:var(--rasp);display:grid;place-items:center;margin-bottom:20px;transition:.2s}
.uslcard:hover .uslcard__icon{background:var(--rasp);color:#fff}
.uslcard__icon svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.uslcard__title{font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-.01em;margin:0 0 9px;color:var(--ink)}
.uslcard__desc{font-size:14.5px;color:var(--ink-soft);line-height:1.5;margin:0 0 18px;flex:1}
.uslcard__more{margin-top:auto;display:inline-flex;align-items:center;gap:7px;font-family:var(--display);font-weight:700;font-size:14px;color:var(--rasp)}
.uslcard__more svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;transition:transform .2s}
.uslcard:hover .uslcard__more svg{transform:translateX(4px)}

/* картинка в SEO-тексте: адаптивная, по центру, с подписью */
.bp-content figure{margin:16px 0 26px;text-align:center}
.bp-content figure img{margin:0 auto;border:1px solid var(--line)}
.bp-content figcaption{font-family:var(--mono);font-size:12.5px;color:var(--ink-muted);text-align:center;margin-top:10px;line-height:1.4}

/* ───────── СТРАНИЦА КОНТАКТОВ ───────── */
/* список контактов в hero */
.cnt__list{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}
.cnt__row{display:flex;align-items:flex-start;gap:15px;padding:13px 0;border-bottom:1px solid var(--line-soft)}
.cnt__row:last-child{border-bottom:0}
.cnt__ico{flex:0 0 auto;width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:var(--bg-soft);color:var(--rasp)}
.cnt__ico svg{width:22px;height:22px;stroke-width:1.8}
.cnt__body{display:flex;flex-direction:column;gap:3px;min-width:0;padding-top:2px}
.cnt__label{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.cnt__val{font-size:21px;font-weight:700;color:var(--ink);letter-spacing:-.01em;text-decoration:none;line-height:1.25}
a.cnt__val:hover{color:var(--rasp)}
.cnt__val--sm{font-size:16px;font-weight:600;line-height:1.4;color:var(--ink-2)}

/* кнопки-мессенджеры на странице контактов */
.cnt__msgrs{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.cnt__msgr{display:inline-flex;align-items:center;gap:10px;padding:11px 18px 11px 13px;border:1px solid var(--line);border-radius:14px;background:#fff;font-weight:700;font-size:15px;color:var(--ink);text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s}
.cnt__msgr svg{width:26px;height:26px;border-radius:7px}
.cnt__msgr:hover{border-color:var(--rasp);transform:translateY(-2px);box-shadow:var(--shadow-2)}

/* карта + боковая колонка */
.cnt__mapgrid{display:grid;grid-template-columns:1.7fr 1fr;gap:24px;align-items:start}
.cnt__map{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-2);min-height:440px}
.cnt__map iframe{display:block;width:100%;height:440px;border:0}
.cnt__side{display:flex;flex-direction:column;gap:18px}
.cnt__sidecard{background:#fff;border:1px solid var(--line-soft);border-radius:var(--r-md);padding:24px;box-shadow:var(--shadow-2)}
.cnt__sidecard__t{margin:0 0 16px;font-family:var(--font-head,inherit);font-size:18px;font-weight:800;color:var(--ink)}
.cnt__req{margin:0;display:flex;flex-direction:column;gap:13px}
.cnt__req>div{display:flex;flex-direction:column;gap:3px}
.cnt__req dt{font-family:var(--mono);font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted)}
.cnt__req dd{margin:0;font-size:15.5px;font-weight:600;color:var(--ink-2);line-height:1.45}
.cnt__pay{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:11px}
.cnt__pay li{position:relative;padding-left:26px;font-size:15.5px;color:var(--ink-2);line-height:1.45}
.cnt__pay li::before{content:"";position:absolute;left:0;top:7px;width:14px;height:8px;border-left:2.5px solid var(--rasp);border-bottom:2.5px solid var(--rasp);transform:rotate(-45deg)}

@media (max-width:860px){
  .cnt__mapgrid{grid-template-columns:1fr}
  .cnt__map,.cnt__map iframe{min-height:340px;height:340px}
}

/* ═══════════ КАЛЬКУЛЯТОР — тёмная панель (calc.html) ═══════════ */
#calc-sec .wrap{max-width:1200px}
.cdeck{background:var(--bg-ink);border-radius:var(--r-lg);overflow:hidden;color:#EFE9E2;position:relative;box-shadow:var(--shadow-2)}
.cdeck::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:30px 30px;pointer-events:none}
.cdeck__grid{display:grid;grid-template-columns:1.5fr 1fr;position:relative}
.cdeck__ctrl{padding:clamp(24px,3vw,40px)}
.cdeck__head{display:flex;align-items:center;gap:12px;margin-bottom:26px}
.cdeck__dot{width:9px;height:9px;border-radius:50%;background:var(--rasp);box-shadow:0 0 0 4px rgba(255,106,0,.18);animation:cpulse 2s infinite}
@keyframes cpulse{50%{box-shadow:0 0 0 8px rgba(255,106,0,0)}}
.cdeck__title{font-family:var(--mono);font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:#A8A09A}
.cgrp{margin-bottom:22px}
.cgrp:last-child{margin-bottom:0}
.cgrp__l{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#7C746C;margin-bottom:11px}
.cseg{display:flex;flex-wrap:wrap;gap:4px;background:#0D0B09;border:1px solid #2A2421;border-radius:13px;padding:4px}
.cseg .copt{flex:1 1 28%;background:transparent;border:0;color:#B8B0A8;padding:11px 8px;border-radius:9px;font-size:13.5px;text-align:center;cursor:pointer;font-family:var(--body);font-weight:600;transition:.16s;white-space:nowrap}
.cseg .copt:hover{color:#fff}
.cseg .copt.on{background:var(--rasp);color:#fff;box-shadow:0 6px 18px -6px rgba(255,106,0,.6)}
.cchips{display:flex;flex-wrap:wrap;gap:8px}
.cchips .copt{background:#0D0B09;border:1px solid #2A2421;color:#B8B0A8;padding:9px 15px;border-radius:99px;font-size:13.5px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-family:var(--body);font-weight:600;transition:.16s}
.cchips .copt:hover{color:#fff;border-color:var(--rasp)}
.cchips .copt.on{background:var(--rasp);border-color:var(--rasp);color:#fff}
.csw{width:14px;height:14px;border-radius:4px;border:1px solid rgba(255,255,255,.25)}
.cdims{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.cdims label{display:block}
.cdims .clbl{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#7C746C;margin-bottom:7px;display:block}
.cfld{appearance:none;font-family:var(--mono);font-weight:600;color:#fff;background:#0D0B09;border:1px solid #2A2421;border-radius:12px;padding:12px 14px;font-size:16px;width:100%;transition:.16s}
.cfld:focus{outline:none;border-color:var(--rasp);box-shadow:0 0 0 4px rgba(255,106,0,.15)}
/* правая «смета» */
.cdeck__out{background:linear-gradient(180deg,#1B1713,#141210);border-left:1px solid #2A2421;padding:clamp(24px,3vw,40px);display:flex;flex-direction:column;position:relative}
.cdeck__out::after{content:"";position:absolute;left:-7px;top:0;bottom:0;width:14px;background:radial-gradient(circle at left,transparent 6px,#141210 6.5px) 0 0/14px 24px repeat-y}
.crcap{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#7C746C;margin-bottom:16px}
.crrow{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:11px 0;border-bottom:1px dashed #2A2421;font-size:14px}
.crrow span:first-child{color:#A8A09A}
.crrow b{font-family:var(--mono);font-weight:600;color:#EFE9E2;white-space:nowrap}
.crtot{margin-top:auto;padding-top:22px}
.crtot__l{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#7C746C}
.crtot__v{font-family:var(--display);font-weight:900;font-size:clamp(38px,5.5vw,58px);line-height:1;color:#fff;letter-spacing:-.03em;margin-top:6px;text-shadow:0 0 40px rgba(255,106,0,.35)}
.crtot__v em{color:var(--rasp);font-style:normal}
.crtot__note{font-size:12.5px;color:#7C746C;margin-top:10px;line-height:1.5}
.crcta{margin-top:18px;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--rasp);color:#fff;border:0;border-radius:13px;padding:16px;font-family:var(--body);font-weight:800;font-size:15.5px;cursor:pointer;text-decoration:none;transition:.16s}
.crcta:hover{background:var(--rasp-dark);transform:translateY(-2px)}
@media(max-width:820px){.cdeck__grid{grid-template-columns:1fr}.cdeck__out{border-left:0;border-top:1px solid #2A2421}.cdeck__out::after{display:none}}

/* ═══════════ Cookie-плашка (на всех страницах) ═══════════ */
.ckbar{position:fixed;left:0;right:0;bottom:0;z-index:300;background:#fff;border-top:1px solid var(--line);box-shadow:0 -10px 34px -14px rgba(20,17,15,.22);transform:translateY(115%);transition:transform .34s cubic-bezier(.2,.8,.2,1)}
.ckbar.is-on{transform:translateY(0)}
.ckbar__in{max-width:1280px;margin:0 auto;padding:15px var(--pad-x);display:flex;align-items:center;gap:24px}
.ckbar__t{margin:0;font-size:14.5px;line-height:1.5;color:var(--ink-soft)}
.ckbar__t a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:2px;text-decoration-color:var(--rasp-tint)}
.ckbar__t a:hover{color:var(--rasp);text-decoration-color:var(--rasp)}
.ckbar__btn{flex:0 0 auto;background:var(--rasp);color:#fff;border:0;border-radius:11px;padding:13px 30px;font-family:var(--body);font-weight:800;font-size:14px;letter-spacing:.02em;cursor:pointer;transition:.16s}
.ckbar__btn:hover{background:var(--rasp-dark);transform:translateY(-1px)}
@media(max-width:640px){.ckbar__in{flex-direction:column;align-items:stretch;gap:13px;text-align:center}.ckbar__btn{width:100%}}

/* ═══════════ Плавающие кнопки (MAX/Telegram/наверх) ═══════════ */
.floats{position:fixed;right:14px;bottom:22px;z-index:90;display:flex;flex-direction:column;gap:11px;opacity:0;transform:translateX(26px);pointer-events:none;transition:opacity .28s ease,transform .28s cubic-bezier(.2,.8,.2,1)}
.floats.is-on{opacity:1;transform:none;pointer-events:auto}
.floats__btn{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;overflow:hidden;cursor:pointer;border:0;padding:0;background:#fff;box-shadow:0 10px 26px -8px rgba(20,17,15,.42);transition:transform .15s,box-shadow .15s}
.floats__btn:hover{transform:translateY(-3px);box-shadow:0 14px 30px -8px rgba(20,17,15,.5)}
.floats__btn svg{width:100%;height:100%;display:block}
.floats__btn--up{background:var(--ink);color:#fff}
.floats__btn--up svg{width:24px;height:24px}
.floats__btn--up:hover{background:var(--rasp)}
@media(max-width:560px){.floats{right:10px;bottom:16px;gap:9px}.floats__btn{width:46px;height:46px}}
