/* ===================================================================
   ПЕРЕХОДНЫЙ СЛОЙ — стили секций старой темы BONPET CHINT (бывший main.css).
   Переменные старой палитры смотрят на токены дизайн-системы (site.css): те же синий и тушь,
   углы 2 px, вместо теней — линейка 1 px. Страница переведена на дизайн-систему — её правила
   отсюда удаляются (PLAN.md). Новые стили сюда не добавлять.
   =================================================================== */

:root{
  --blue-500:var(--c-accent); --blue-600:var(--c-accent-deep); --blue-700:var(--c-accent-deep); --blue-800:var(--c-accent-deep);
  --blue-50:var(--c-accent-wash); --blue-100:var(--c-accent-wash); --blue-200:#b9cfeb; --blue-300:#8fb0dd;
  --navy-900:#0e2138; --navy-950:#081625;
  --paper:var(--c-paper); --surface:var(--c-paper-2); --card:var(--c-photo);
  --border:var(--c-rule); --border-strong:var(--c-rule-strong);
  --ink:var(--c-ink); --ink-soft:var(--c-ink-2); --ink-muted:var(--c-muted); --ink-invert:var(--c-on-accent);
  --instrument:#101c2b;
  --ok:#067647; --ok-bg:#ecfdf3; --ok-bd:#abefc6; --ok-on:#3ddc97;
  --warn:#b54708; --warn-bg:#fffaeb; --warn-bd:#fedf89; --warn-on:#fdb022;
  --bad:#b42318; --bad-bg:#fef3f2; --bad-bd:#fecdca; --bad-on:#fda29b;
  --radius:2px; --radius-sm:2px; --radius-lg:2px; --radius-pill:2px;
  --shadow:0 0 0 1px var(--c-rule);
  --shadow-card:0 0 0 1px var(--c-rule);
  --maxw:1200px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:var(--font-body);
  font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased;
}
img{max-width:100%; height:auto; display:block}
a{color:var(--blue-700); text-decoration:none}
a:hover{text-decoration:underline}
a:focus-visible,button:focus-visible,.bch-btn:focus-visible,.bch-chip:focus-visible,.bch-gnav:focus-visible,
.bch-prodcard:focus-visible,.bch-burger:focus-visible,input:focus-visible,textarea:focus-visible,
input[type=checkbox]:focus-visible{outline:2px solid var(--blue-500); outline-offset:2px}
main:focus{outline:none}
h1,h2,h3{margin:0; line-height:1.15; letter-spacing:-.01em; font-weight:700}
::selection{background:var(--blue-500); color:#fff}

.bch-container{max-width:var(--maxw); margin:0 auto; padding:0 24px}
.bch-skip{position:absolute; left:-999px}
.bch-skip:focus{left:16px; top:16px; background:#fff; padding:8px 14px; border-radius:2px; z-index:200}

/* ---------- Кнопки ---------- */
.bch-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font-weight:600; font-size:14px; line-height:1; cursor:pointer;
  padding:12px 22px; border-radius:var(--radius-pill); border:1.5px solid transparent;
  transition:background .18s ease,border-color .18s ease,transform .12s ease; text-decoration:none;
}
.bch-btn:hover{text-decoration:none}
.bch-btn--lg{padding:15px 28px; font-size:15px}
.bch-btn--primary{background:var(--blue-500); color:var(--ink-invert); border-color:var(--blue-500)}
.bch-btn--primary:hover{background:var(--blue-600); border-color:var(--blue-600)}
.bch-btn--ghost{background:transparent; color:var(--ink-invert); border-color:rgba(252,252,252,.4)}
.bch-btn--ghost:hover{background:rgba(252,252,252,.1)}
.bch-btn--outline{background:transparent; color:var(--blue-700); border-color:var(--blue-200)}
.bch-btn--outline:hover{background:var(--blue-50)}

.bch-eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--font-mono);
  font-size:12px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--blue-700); font-weight:600; margin:0 0 12px;
}
.bch-eyebrow::before{content:""; width:26px; height:2px; background:var(--blue-500); border-radius:2px; flex:none}
.bch-section__title{font-size:clamp(23px,3vw,34px); color:var(--ink)}

/* ---------- Шапка ---------- */
.bch-header{position:sticky; top:0; z-index:100; background:rgba(252,252,252,.92); -webkit-backdrop-filter:saturate(140%) blur(8px); backdrop-filter:saturate(140%) blur(8px); border-bottom:1px solid var(--border); transition:background .3s ease,box-shadow .3s ease,border-color .3s ease}
.bch-header__inner{display:flex; align-items:center; justify-content:space-between; gap:16px; padding-top:12px; padding-bottom:12px}
/* Логотип-капсула: акцент на CHINT (белый логотип на фирменно-синей капсуле #345b9f), под ним мелко дистрибьютор. */
.bch-brand{display:inline-flex; flex-direction:column; align-items:flex-start; gap:3px; line-height:1.05; text-decoration:none; border-radius:var(--radius-pill); padding:9px 22px; background:#345b9f; color:#fff}
.bch-brand__logo{display:block}
.bch-brand .bch-logo{display:block; height:23px; width:auto}
.bch-brand__chint-accent{display:none}
/* В шапке логотип CHINT центрируем внутри капсулы; в подвале (см. ниже) капсулы нет. */
.bch-header .bch-brand{align-items:center}
/* Главная: пилюли «плавают» над тёмным героем (без белой полосы); при скролле — закреплённая белая полоса */
body.home .bch-header{position:fixed; left:0; right:0; background:transparent; -webkit-backdrop-filter:none; backdrop-filter:none; border-bottom-color:transparent; box-shadow:none}
body.home .bch-header:not(.is-scrolled) .bch-nav{background:var(--card); border:1px solid var(--border); box-shadow:var(--shadow-card)}
body.home .bch-header.is-scrolled{background:rgba(252,252,252,.92); -webkit-backdrop-filter:saturate(150%) blur(12px); backdrop-filter:saturate(150%) blur(12px); box-shadow:var(--shadow-card)}
body.admin-bar .bch-header{top:32px}
/* На мобильных админ-бар WP = position:absolute (уезжает при скролле), поэтому фикс-шапку НЕ смещаем — иначе сверху зазор. */
@media(max-width:782px){body.admin-bar .bch-header{top:0}}
.bch-brand:hover{text-decoration:none}
.bch-brand__name{font-weight:800; letter-spacing:.02em; color:#fff; font-size:18px}
.bch-brand__rel{font-size:10.5px; font-weight:500; color:rgba(255,255,255,.82)}
.bch-brand__rel b{font-weight:700; color:#fff}
.bch-nav{position:relative; display:flex; align-items:center; gap:2px; border-radius:var(--radius-pill); padding:6px 8px}
/* лупа слева от пунктов меню: клик раскрывает поиск поверх пунктов */
.bch-nav__lens{display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; flex:none; border:0; border-radius:50%; background:transparent; color:var(--ink-soft); cursor:pointer; transition:background .15s ease, color .15s ease}
.bch-nav__lens:hover{background:var(--blue-50); color:var(--blue-700)}
.bch-nav__lens[aria-expanded="true"]{background:var(--blue-50); color:var(--blue-700)}
.bch-nav__find{position:absolute; inset:4px; z-index:5; display:flex; align-items:center; gap:8px; padding:0 6px 0 14px; background:var(--card); border:1px solid var(--border-strong); border-radius:var(--radius-pill); box-shadow:var(--shadow-card); transition:border-color .15s ease, box-shadow .15s ease}
.bch-nav__find[hidden]{display:none}
/* фокус показываем на всей пилюле, а не рамкой вокруг поля (иначе «кнопка в кнопке») */
.bch-nav__find:focus-within{border-color:var(--blue-300); box-shadow:0 0 0 3px var(--blue-50)}
.bch-nav__find-ic{flex:none; color:var(--ink-muted)}
.bch-nav__input{flex:1 1 auto; min-width:0; border:0; background:none; font:inherit; font-size:14px; color:var(--ink); outline:none}
.bch-nav__input:focus,.bch-nav__input:focus-visible{outline:none}
.bch-nav__input::-webkit-search-cancel-button{display:none}
.bch-nav__find-go{flex:none; border:0; border-radius:var(--radius-pill); background:var(--blue-500); color:var(--ink-invert); font:inherit; font-size:13px; font-weight:700; padding:7px 15px; cursor:pointer; transition:background .15s ease}
.bch-nav__find-go:hover{background:var(--blue-600)}
.bch-nav__find-close{flex:none; display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border:0; border-radius:50%; background:transparent; color:var(--ink-muted); cursor:pointer; transition:background .15s ease, color .15s ease}
.bch-nav__find-close:hover{background:var(--blue-50); color:var(--ink)}
.bch-nav.is-search .bch-nav__list{visibility:hidden}
.bch-nav.is-search .bch-nav__lens{visibility:hidden}
.bch-nav__list,.bch-mobile__list,.bch-footer__list{list-style:none; margin:0; padding:0; display:flex; gap:6px}
.bch-nav__list a{display:inline-block; padding:8px 14px; border-radius:var(--radius-pill); color:var(--ink-soft); font-size:14px; font-weight:500}
.bch-nav__list a:hover{color:var(--ink); background:var(--blue-50); text-decoration:none}
.bch-nav__list .current-menu-item a,.bch-nav__list .current_page_item a{color:var(--blue-700); background:var(--blue-50)}
.bch-header__actions{display:flex; align-items:center; gap:12px}
.bch-header__mail{display:inline-flex; align-items:center; gap:8px; padding:14px 16px; border-radius:var(--radius-pill); background:var(--card); border:1px solid var(--border); box-shadow:var(--shadow-card); color:var(--blue-700); font-weight:700; font-size:14px; white-space:nowrap; transition:background .2s ease,border-color .2s ease,color .2s ease}
.bch-header__mail:hover{background:var(--blue-50); border-color:var(--blue-200); color:var(--blue-700); text-decoration:none}
.bch-header__mail-ic{color:var(--blue-600); flex:0 0 auto}
.bch-mobile__mail{display:inline-flex; align-items:center; gap:9px; margin-top:12px; padding:13px 14px; border-radius:2px; background:var(--blue-50); color:var(--blue-700); font-weight:700; font-size:15px}
.bch-mobile__mail:hover{background:var(--blue-100,#e3edfb); text-decoration:none}
.bch-mobile__mail-ic{color:var(--blue-600); flex:0 0 auto}
.bch-burger{display:none; width:42px; height:42px; border:1px solid var(--border); background:#fff; border-radius:2px; cursor:pointer; flex-direction:column; align-items:center; justify-content:center; gap:4px}
.bch-burger span{width:18px; height:2px; background:var(--ink); border-radius:2px; transition:transform .25s ease,opacity .2s ease; transform-origin:center}
.bch-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.bch-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.bch-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.bch-mobile{border-top:1px solid var(--border); background:var(--paper); padding:12px 24px 18px}
.bch-mobile__list{flex-direction:column; gap:2px}
.bch-mobile__list a{display:block; padding:12px 8px; color:var(--ink-soft); font-weight:500; border-radius:2px}
.bch-mobile__cta{margin-top:10px; width:100%}

/* ---------- Герой ---------- */
.bch-hero{position:relative; overflow:hidden; background:linear-gradient(160deg,var(--navy-900),var(--navy-950)); color:var(--ink-invert)}
.bch-hero__poster{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0}
.bch-hero__video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; opacity:0; transition:opacity .5s ease}
.bch-hero__video.is-playing{opacity:1}
.bch-hero__scrim{position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg,rgba(8,22,37,.30),rgba(14,33,56,.20) 40%,rgba(8,22,37,.78)),
             linear-gradient(90deg,rgba(8,22,37,.62),rgba(8,22,37,0) 62%)}
/* Крупные слова-мотив (Проект / Подбор / Поставка) поверх видео */
/* Крупные слова-мотив ПРОЕКТ/ПОДБОР/ПОСТАВКА — яркие, оверсайз, поверх аппаратов */
.bch-hero__words{position:absolute; inset:0; z-index:1; margin:0; pointer-events:none; text-transform:uppercase; font-weight:800; line-height:.9; letter-spacing:-.03em; background:radial-gradient(58% 46% at 82% 46%,rgba(8,22,37,.56),rgba(8,22,37,0) 72%),radial-gradient(46% 28% at 12% 16%,rgba(8,22,37,.42),rgba(8,22,37,0) 74%),radial-gradient(50% 26% at 16% 93%,rgba(8,22,37,.42),rgba(8,22,37,0) 74%); color:rgba(252,252,252,.9)}
.bch-hero__word{position:absolute; display:block; font-size:clamp(46px,10vw,140px); text-shadow:0 2px 34px rgba(8,22,37,.5)}
.bch-hero__word--1{top:14%;   left:max(24px,calc((100% - 1200px)/2 + 24px))}
.bch-hero__word--2{top:45%;   right:max(24px,calc((100% - 1320px)/2 + 24px))}
.bch-hero__word--3{bottom:6%; left:max(24px,calc((100% - 1200px)/2 + 24px))}
.bch-hero__inner{position:relative; z-index:2; padding:clamp(88px,12vw,150px) 24px clamp(176px,25vh,262px); max-width:1200px; margin:0 auto; display:flex; align-items:flex-end; min-height:clamp(560px,82vh,860px)}
.bch-hero::after{content:""; position:absolute; left:0; right:0; bottom:0; height:130px; z-index:1; pointer-events:none; background:linear-gradient(transparent,var(--paper))}
.bch-hero__card{background:rgba(8,22,37,.5); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); border:1px solid rgba(252,252,252,.16); border-radius:var(--radius-lg); padding:clamp(20px,3vw,30px); max-width:470px; box-shadow:0 24px 60px rgba(8,22,37,.5),inset 0 1px 0 rgba(252,252,252,.12)}
.bch-hero__subline{font-size:clamp(15px,1.6vw,18px); line-height:1.55; color:rgba(252,252,252,.92); margin:0 0 22px}
.bch-hero__cta{display:flex; flex-wrap:wrap; gap:12px}
/* Планшет/мобайл (≤1024): единый ЧИСТЫЙ вертикальный стек как на десктопе по духу —
   слова слева под шапкой (без зигзага), затем читаемая карточка; десктопный разброс (>1024) не трогаем. */
@media(max-width:1024px){
  .bch-hero__words{position:static; inset:auto; display:flex; flex-direction:column; align-items:flex-start; gap:clamp(2px,1vw,8px); padding:clamp(86px,14vw,128px) clamp(20px,5vw,44px) 0; background:none}
  .bch-hero__word{position:static; font-size:clamp(44px,12vw,108px); text-shadow:0 2px 20px rgba(8,22,37,.5)}
  .bch-hero__word--2{align-self:flex-end}
  .bch-hero__inner{position:relative; z-index:2; min-height:0; padding:clamp(22px,4vw,34px) clamp(20px,5vw,44px) clamp(64px,10vw,90px); align-items:stretch; max-width:none}
  .bch-hero__card{max-width:540px; background:rgba(8,22,37,.74)}
  .bch-hero::after{height:60px}
}

/* Низкие десктопные экраны (высота < 800, ширина > 1024): уплотняем герой, чтобы карточка не наезжала на слово «ПРОЕКТ». Высокие экраны и мобайл не трогаем. */
@media (min-width:1025px) and (max-height:850px){
  .bch-hero__word{font-size:clamp(34px,4.8vw,66px)}
  .bch-hero__word--1{top:12%}
  .bch-hero__word--3{bottom:12%}
  .bch-hero__inner{min-height:clamp(520px,86vh,760px); padding-top:0; padding-bottom:0; align-items:center}
}

/* ---------- Этапы ---------- */
.bch-stages{padding:clamp(56px,8vw,96px) 0; background:var(--paper)}
.bch-stages__grid{position:relative; display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:20px; margin-top:36px}
.bch-stages__grid::before{content:""; position:absolute; left:6%; right:6%; top:54px; height:2px; background:linear-gradient(90deg,transparent,var(--border-strong),transparent); z-index:0}
.bch-stage{position:relative; z-index:1; background:var(--card); border:1px solid var(--border); border-radius:var(--radius-lg); padding:28px; box-shadow:var(--shadow-card); transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease}
.bch-stage__n{display:inline-flex; width:52px; height:52px; align-items:center; justify-content:center;
  background:var(--blue-500); color:var(--ink-invert); border-radius:50%; font-weight:700; font-size:16px; margin-bottom:16px; box-shadow:0 6px 16px rgba(38,92,164,.28)}
@media(max-width:700px){.bch-stages__grid::before{display:none}}
.bch-stage__t{font-size:19px; color:var(--ink); margin-bottom:8px}
.bch-stage__d{font-size:14.5px; color:var(--ink-muted); margin:0}

/* ---------- Форма-заявка ---------- */
.bch-lead{padding:clamp(56px,8vw,96px) 0; background:var(--paper)}
.bch-lead__grid{display:grid; grid-template-columns:1fr 1.15fr; gap:48px; align-items:start}
.bch-lead__title{font-size:clamp(22px,3vw,32px); color:var(--ink); margin:0 0 14px; max-width:16ch}
.bch-lead__text{color:var(--ink-muted); margin:0 0 18px}
.bch-lead__list{list-style:none; margin:0; padding:0; display:grid; gap:10px}
.bch-lead__list li{position:relative; padding-left:26px; color:var(--ink-soft); font-size:14.5px}
.bch-lead__list li::before{content:""; position:absolute; left:0; top:7px; width:14px; height:14px; border-radius:50%;
  background:var(--blue-50); border:1px solid var(--blue-200)}
.bch-form{background:var(--card); border:1px solid var(--border); border-radius:var(--radius); padding:28px; box-shadow:var(--shadow)}
.bch-form__row{display:grid; grid-template-columns:1fr 1fr; gap:16px}
.bch-field{display:block; margin-bottom:16px}
.bch-field>span{display:block; font-size:13px; font-weight:600; color:var(--ink-soft); margin-bottom:6px}
.bch-field em{color:var(--blue-600); font-style:normal}
.bch-field input,.bch-field textarea{
  width:100%; font:inherit; font-size:15px; color:var(--ink); background:var(--surface);
  border:1px solid var(--border-strong); border-radius:var(--radius-sm); padding:11px 14px; transition:.15s}
.bch-field input:focus,.bch-field textarea:focus{outline:none; border-color:var(--blue-400,#5485c6); background:#fff; box-shadow:0 0 0 3px rgba(38,92,164,.14)}
.bch-field.has-error input,.bch-field.has-error textarea{border-color:#d8473c; background:#fdf2f1}
.bch-error{display:block; color:#b3261e; font-size:12px; margin-top:5px}
.bch-lead__intro,.bch-form{min-width:0}
.bch-file{display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:12px 14px; border:1px dashed var(--border-strong); border-radius:var(--radius-sm); margin-bottom:16px; cursor:pointer; color:var(--ink-muted); font-size:13.5px}
.bch-file input{font-size:13px; min-width:0; max-width:100%}
.bch-hp{position:absolute; left:-9999px; width:1px; height:1px; opacity:0}
.bch-consent{display:flex; gap:10px; align-items:flex-start; font-size:12.5px; color:var(--ink-muted); margin-bottom:18px}
.bch-consent input{margin-top:3px}
.bch-consent.has-error{color:#b3261e}
.bch-form__submit{width:100%}
.bch-form__status{margin:14px 0 0; font-size:14px; min-height:1em}
.bch-form__status.is-ok{color:#1a7a50}
.bch-form__status.is-err{color:#b3261e}
.bch-form.is-sent .bch-form__row,.bch-form.is-sent .bch-field,.bch-form.is-sent .bch-file,.bch-form.is-sent .bch-consent,.bch-form.is-sent .bch-form__submit{display:none}

/* ---------- Подвал ---------- */
.bch-footer{background:var(--navy-900); color:var(--ink-invert); padding:48px 0 28px}
.bch-footer__inner{display:grid; grid-template-columns:minmax(260px,1.8fr) repeat(auto-fit,minmax(150px,1fr)); gap:40px; padding-bottom:28px; border-bottom:1px solid rgba(252,252,252,.12)}
.bch-footer__brand{display:flex; flex-direction:column; align-items:flex-start}
/* В подвале капсулы нет: логотип CHINT + «официальный дистрибьютор» прижаты влево заподлицо с подписью ниже. */
.bch-footer__brand .bch-brand{background:transparent; padding:0; border-radius:0}
.bch-footer__capsule{align-self:flex-start; background:rgba(252,252,252,.06); border:1px solid rgba(252,252,252,.14); border-radius:var(--radius-lg); padding:14px 18px}
.bch-chint-chip{display:inline-block; background:#fff; color:var(--navy-900); font-weight:800; font-size:9px; text-transform:uppercase; letter-spacing:.06em; padding:2px 6px; border-radius:2px; vertical-align:middle; margin-left:2px}
.bch-footer__note{color:rgba(252,252,252,.6); font-size:13.5px; max-width:42ch; margin:16px 0 0}
/* Rutube — без капсулы: просто кликабельный фирменный логотип, прижат влево заподлицо с подписью выше. */
.bch-footer__rutube{display:inline-flex; align-items:center; margin-top:18px; color:var(--ink-invert); transition:opacity .2s ease}
.bch-footer__rutube:hover{opacity:.78; text-decoration:none}
.bch-footer__rutube .bch-rutube-logo{height:20px; width:auto; display:block}
@media(max-width:680px){
  .bch-footer__inner{grid-template-columns:1fr; gap:26px}
  .bch-footer__col{min-width:0}
}
.bch-footer__cta{margin-top:18px}
.bch-footer__head{font-size:11px; text-transform:uppercase; letter-spacing:.12em; color:rgba(252,252,252,.5); margin:0 0 14px}
.bch-footer__list{flex-direction:column; gap:8px}
.bch-footer__list a{color:rgba(252,252,252,.72); font-size:14px}
.bch-footer__list a:hover{color:#fff}
.bch-footer__copy{padding-top:20px; color:rgba(252,252,252,.5); font-size:12.5px}

/* ---------- Страницы / записи ---------- */
.bch-page{padding:48px 24px 72px}
.bch-page__title{font-size:clamp(26px,4vw,40px); margin-bottom:24px}
.bch-postlist{display:grid; gap:20px}
.bch-postcard{position:relative; background:var(--card); border:1px solid var(--border); border-radius:var(--radius-lg); padding:0; overflow:hidden; box-shadow:var(--shadow-card)}
.bch-postcard--media{display:grid; grid-template-columns:minmax(0,220px) 1fr}
.bch-postcard__media{display:block; overflow:hidden; background:var(--surface)}
.bch-postcard__media img{width:100%; height:100%; object-fit:cover; display:block; aspect-ratio:4/3; transition:transform .4s ease}
.bch-postcard__body{padding:24px}
.bch-postcard__title{font-size:clamp(18px,2vw,22px); line-height:1.25; margin:0 0 8px}
.bch-postcard__title a{color:var(--ink); text-decoration:none}
.bch-postcard__title a:hover{color:var(--blue-700)}
.bch-postcard__excerpt{color:var(--ink-muted); font-size:15px; line-height:1.55}
.bch-postcard__more{display:inline-flex; align-items:center; gap:6px; margin-top:14px; color:var(--blue-700); font-weight:600; font-size:14px; text-decoration:none}
.bch-postcard__more:hover{text-decoration:none}
.bch-postcard__more i{font-style:normal}
.bch-single__cover{margin:0 0 26px; border-radius:var(--radius-lg); overflow:hidden}
.bch-single__cover img{width:100%; height:auto; display:block}
@media(max-width:560px){.bch-postcard--media{grid-template-columns:1fr} .bch-postcard__media img{aspect-ratio:16/9}}

/* Постраничная навигация (Статьи): «1 2 Далее» под стиль темы. */
.bch-pagination{margin-top:36px; display:flex; justify-content:center}
.bch-pagination .nav-links{display:flex; flex-wrap:wrap; gap:8px; align-items:center}
.bch-pagination .page-numbers{display:inline-flex; align-items:center; justify-content:center; min-width:44px; height:44px; padding:0 15px; border-radius:var(--radius-pill); border:1px solid var(--border-strong); background:#fff; color:var(--ink-soft); font-weight:600; font-size:14px; text-decoration:none; transition:background .2s ease,border-color .2s ease,color .2s ease}
.bch-pagination a.page-numbers:hover{background:var(--blue-50); border-color:var(--blue-200); color:var(--blue-700)}
.bch-pagination .page-numbers.current{background:var(--blue-500); border-color:var(--blue-500); color:#fff}
.bch-pagination .page-numbers.dots{border:0; background:transparent; min-width:auto; padding:0 4px}
.bch-pagination .screen-reader-text{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap}

/* ---------- Каталог ---------- */
.bch-catalog__head{padding:48px 0 8px; background:var(--paper)}
.bch-catalog__head--plain{padding-bottom:clamp(28px,4vw,44px)}
.bch-catalog__title{max-width:24ch}
.bch-catalog__intro{color:var(--ink-muted); max-width:60ch; margin:14px 0 22px}
.bch-chips{display:flex; flex-wrap:wrap; gap:8px}
.bch-chip{display:inline-block; padding:8px 16px; border-radius:var(--radius-pill); border:1px solid var(--border-strong);
  background:#fff; color:var(--ink-soft); font-size:14px; font-weight:500; text-decoration:none}
.bch-chip:hover{background:var(--blue-50); border-color:var(--blue-200); text-decoration:none}
.bch-chip.is-active{background:var(--blue-500); border-color:var(--blue-500); color:var(--ink-invert)}
/* Категория: чипы — одна аккуратная строка с прокруткой, отступ от заголовка */
.bch-catalog__head .bch-chips{margin-top:24px; flex-wrap:nowrap; overflow-x:auto; padding-bottom:8px; -webkit-overflow-scrolling:touch; scrollbar-width:thin; scrollbar-color:var(--border-strong) transparent; cursor:grab}
.bch-catalog__head .bch-chips.is-grabbing{cursor:grabbing; user-select:none; scroll-behavior:auto}
.bch-catalog__head .bch-chips.is-grabbing .bch-chip{pointer-events:none}
.bch-catalog__head .bch-chips::-webkit-scrollbar{height:6px}
.bch-catalog__head .bch-chips::-webkit-scrollbar-thumb{background:var(--border-strong); border-radius:2px}
.bch-catalog__head .bch-chips::-webkit-scrollbar-track{background:transparent}
.bch-catalog__head .bch-chip{flex:none; white-space:nowrap; padding:8px 15px; font-size:13px}
@media (pointer:coarse){.bch-catalog__head .bch-chip{min-height:44px; display:inline-flex; align-items:center; padding:10px 16px}}
.bch-catalog{padding:32px 0 80px; background:var(--paper)}
.bch-prodgrid{display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr)); gap:22px}
.bch-empty{text-align:center; padding:60px 20px; color:var(--ink-muted); display:grid; gap:18px; justify-items:center}
/* Карточки категорий каталога (под фото) */
.bch-catgrid{display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,278px),1fr)); gap:22px; margin-top:8px}
.bch-catcard{position:relative; display:flex; flex-direction:column; min-height:clamp(280px,26vw,340px); background:var(--card); border:1px solid var(--border); border-radius:var(--radius-lg); padding:28px 28px 24px; box-shadow:var(--shadow-card); text-decoration:none; color:inherit; overflow:hidden}
.bch-catcard:hover{text-decoration:none}
.bch-catcard__title{font-size:clamp(20px,2vw,25px); font-weight:800; color:var(--ink); margin:0; min-height:2.3em; line-height:1.15; letter-spacing:-.01em}
.bch-catcard__media{position:relative; flex:1; margin:16px 0; display:flex; align-items:center; justify-content:center; min-height:120px}
.bch-catcard__media img{max-width:88%; max-height:216px; width:auto; height:auto; object-fit:contain; transition:transform .4s ease}
.bch-catcard__media.is-empty{align-items:center; justify-content:center; background:linear-gradient(135deg,var(--blue-50),#fff); border:1px solid var(--blue-100); border-radius:var(--radius)}
.bch-catcard__ph{color:var(--blue-600); font-size:13px}
.bch-catcard__more{display:inline-flex; align-items:center; gap:7px; margin-top:auto; font-size:14px; font-weight:600; color:var(--blue-700)}
.bch-catcard__more i{font-style:normal}
/* Хлебные крошки — в стиле эйбрау (бар + путь) */
.bch-crumbs{flex-wrap:wrap; gap:8px}
.bch-crumbs a{color:inherit; text-decoration:none}
.bch-crumbs a:hover{color:var(--blue-500); text-decoration:none}
.bch-crumbs__sep{opacity:.45; font-weight:400}
.bch-eyebrow__link{color:inherit; text-decoration:none}
.bch-eyebrow__link:hover{color:var(--blue-500); text-decoration:none}

.bch-prodcard{position:relative; display:flex; flex-direction:column; background:var(--card); border:1px solid var(--border);
  border-radius:var(--radius-lg); overflow:hidden; text-decoration:none; color:inherit; box-shadow:var(--shadow-card)}
.bch-prodcard:hover{text-decoration:none}
.bch-prodcard__media{position:relative; aspect-ratio:1/1; background:#fff; border-bottom:1px solid var(--border); display:flex; align-items:center; justify-content:center; overflow:hidden}
.bch-prodcard__media img{position:absolute; inset:0; width:100%; height:100%; object-fit:contain; padding:14px; transition:transform .4s ease}
.bch-prodcard__placeholder{color:var(--blue-600); font-size:13px}
.bch-prodcard__series{position:absolute; top:10px; left:10px; font-size:11px; font-weight:600; color:var(--blue-700);
  background:rgba(252,252,252,.78); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); border:1px solid rgba(255,255,255,.8); box-shadow:var(--shadow-card); padding:4px 10px; border-radius:var(--radius-pill)}
.bch-prodcard__body{padding:16px 18px 18px; display:flex; flex-direction:column; gap:4px; flex:1}
.bch-prodcard__type{font-size:11px; letter-spacing:.04em; color:var(--ink-muted)}
.bch-prodcard__title{font-size:clamp(18px,1.4vw,20px); color:var(--ink); letter-spacing:-.01em}
.bch-prodcard__summary{font-size:13.5px; color:var(--ink-muted); margin:2px 0 0}
.bch-prodcard__more{margin-top:auto; padding-top:12px; color:var(--blue-700); font-weight:600; font-size:14px}
.bch-prodcard__more:hover{text-decoration:none}
.bch-prodcard__more i{font-style:normal}

/* Бегущая обводка карточек (Каталог, серии, Статьи): по рамке идёт сегмент синего conic-градиента,
   поворачивается за курсором. Слой внутри карточки (у всех трёх overflow:hidden), кольцо рамки
   вырезано парой масок; угол (--bch-glow-a) и видимость (--bch-glow-on) ведёт JS (initCardGlow). */
.bch-gl{position:absolute; inset:0; z-index:3; border-radius:inherit; pointer-events:none; opacity:var(--bch-glow-on,0); transition:opacity .3s ease; border:2px solid transparent;
  background:conic-gradient(from calc((var(--bch-glow-a,0) - 55)*1deg), rgba(38,92,164,0) 0deg, #4d8fe0 40deg, var(--blue-500) 55deg, #4d8fe0 70deg, rgba(38,92,164,0) 110deg) border-box;
  -webkit-mask:linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); -webkit-mask-composite:xor;
  mask:linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); mask-composite:exclude}

/* ---------- Карточка товара ---------- */
.bch-product{background:var(--paper)}
.bch-product__top{padding:28px 24px 0}
.bch-back{color:var(--ink-muted); font-size:14px; font-weight:500}
.bch-back:hover{color:var(--blue-700)}
.bch-crumbs-bar{padding-top:clamp(40px,5vw,52px)}
.bch-prodhero{position:relative; overflow:hidden; margin-top:14px; margin-bottom:clamp(30px,4.5vw,48px); display:grid; grid-template-columns:1.15fr 1fr; gap:40px; align-items:center; padding:clamp(24px,3vw,36px); background:#fff; border:1px solid var(--border); border-radius:var(--radius-lg); box-shadow:var(--shadow-card)}
.bch-prodhero::before{display:none}
.bch-prodhero__info,.bch-prodhero__media{position:relative; z-index:1}
.bch-prodhero__info{min-width:0; align-self:stretch; display:flex; flex-direction:column}
/* Спейсер сверху + auto-отступ у кнопки: свободное место делится поровну — текст в центре (как был), кнопка у нижней границы. */
.bch-prodhero__info::before{content:""; margin-top:auto}
.bch-badge{display:inline-block; font-size:12px; font-weight:600; color:var(--blue-700);
  background:var(--blue-50); border:1px solid var(--blue-100); padding:5px 12px; border-radius:var(--radius-pill); margin-bottom:14px}
.bch-prodhero__title{font-size:clamp(26px,3.6vw,42px); color:var(--ink); margin:0 0 10px; line-height:1.12}
.bch-prodhero__type{font-size:15px; color:var(--blue-700); font-weight:600; margin:0 0 12px}
.bch-prodhero__summary{font-size:16px; color:var(--ink-muted); margin:0 0 24px; max-width:46ch}
.bch-prodhero__cta{margin-top:auto; padding-top:18px} /* прижата к низу инфо-колонки — по нижней границе фото */
.bch-prodhero__cta{display:flex; flex-wrap:wrap; gap:12px}
.bch-prodhero__media{position:relative; align-self:center; display:flex; align-items:center; justify-content:center; min-height:0; background:transparent}
.bch-prodhero__media img{position:relative; z-index:1; width:auto; height:auto; max-width:100%; max-height:280px; object-fit:contain; padding:0; filter:none}
.bch-prodhero__placeholder{color:var(--ink-muted); font-size:14px}
.bch-prodhero__placeholder{position:relative; z-index:1; color:var(--blue-600); font-size:14px}

.bch-prodsection{padding:0 24px 48px; max-width:calc(var(--maxw) + 48px)}
.bch-prodsection__title{font-size:22px; color:var(--ink); margin:0 0 18px}
.bch-prose{color:var(--ink-soft); line-height:1.7}
.bch-spectable{width:100%; border-collapse:collapse; background:var(--card); border:1px solid var(--border); border-radius:var(--radius); overflow:hidden}
.bch-spectable th,.bch-spectable td{text-align:left; padding:13px 18px; font-size:14.5px; border-bottom:1px solid var(--border); vertical-align:top}
.bch-spectable tr:last-child th,.bch-spectable tr:last-child td{border-bottom:0}
.bch-spectable th{color:var(--ink-muted); font-weight:500; width:46%}
.bch-spectable td{color:var(--ink); font-weight:500}
.bch-spectable tr:nth-child(even){background:var(--surface)}
.bch-docs{list-style:none; margin:0; padding:0; display:grid; gap:10px}
.bch-doc{display:flex; align-items:center; justify-content:space-between; gap:16px; background:var(--card);
  border:1px solid var(--border); border-radius:var(--radius); padding:14px 18px; box-shadow:var(--shadow-card); transition:border-color .2s ease, box-shadow .2s ease}
.bch-doc__main{display:flex; align-items:center; gap:12px; min-width:0}
.bch-doc__badge{font-size:10px; font-weight:700; letter-spacing:.05em; color:var(--blue-700); background:var(--blue-50); border:1px solid var(--blue-100); padding:5px 7px; border-radius:2px; flex:none}
.bch-doc__title{font-size:14.5px; color:var(--ink); font-weight:500}
.bch-doc__link{font-size:13px; font-weight:600; color:var(--blue-700); background:var(--blue-50);
  border:1px solid var(--blue-100); padding:6px 14px; border-radius:var(--radius-pill); text-decoration:none}
.bch-doc__link:hover{background:var(--blue-100); text-decoration:none}
.bch-prodcta{background:var(--surface); border-top:1px solid var(--border); margin-top:8px; padding:44px 0}
.bch-prodcta__inner{display:flex; align-items:center; justify-content:space-between; gap:28px; flex-wrap:wrap}
.bch-prodcta__title{font-size:clamp(20px,2.6vw,28px); color:var(--ink); margin:0 0 6px; max-width:22ch}
.bch-prodcta__text{color:var(--ink-muted); margin:0; max-width:50ch}

/* ---------- Статичные страницы ---------- */
.bch-pagehero{background:var(--surface); border-bottom:1px solid var(--border); padding:48px 0 clamp(40px,6vw,72px)}
.bch-pagehero__title{font-size:clamp(28px,4.4vw,46px); color:var(--ink); margin:8px 0 0; max-width:22ch}
.bch-pagehero__subtitle{color:var(--ink-muted); font-size:clamp(15px,1.6vw,18px); margin:14px 0 0; max-width:62ch}
.bch-pagehero--lead{padding-bottom:clamp(34px,5vw,52px)}
.bch-404{padding:48px 0 clamp(56px,8vw,92px)}
.bch-404__top{max-width:700px}
.bch-404__h1{font-size:clamp(26px,4vw,42px); font-weight:800; line-height:1.12; letter-spacing:-.01em; margin:8px 0 22px; color:var(--ink)}
.bch-404__find{position:relative; display:flex; gap:10px; max-width:560px}
.bch-404__find-ic{position:absolute; left:16px; top:50%; transform:translateY(-50%); color:var(--ink-muted); pointer-events:none}
.bch-404__find-ic svg{width:18px; height:18px}
.bch-404__input{flex:1; min-width:0; padding:13px 14px 13px 44px; border:1px solid var(--border-strong); border-radius:var(--radius-pill); background:var(--card); font:inherit; font-size:15px; color:var(--ink)}
.bch-404__input:focus{outline:none; border-color:var(--blue-300); box-shadow:0 0 0 3px var(--blue-50)}
.bch-404__find .bch-btn{flex:none}
.bch-404__cards{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; margin:clamp(28px,4vw,40px) 0 0}
.bch-404__card{display:flex; align-items:center; gap:14px; padding:18px 20px; background:var(--card); border:1px solid var(--border); border-radius:var(--radius-lg); box-shadow:var(--shadow-card); text-decoration:none; color:var(--ink); transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}
.bch-404 a:hover{text-decoration:none}
.bch-404__cic{flex:none; width:44px; height:44px; display:grid; place-items:center; background:var(--blue-50); border:1px solid var(--blue-100); border-radius:var(--radius); color:var(--blue-600)}
.bch-404__cic svg{width:22px; height:22px}
.bch-404__ct{font-weight:700; font-size:15px; flex:1}
.bch-404__arr{color:var(--blue-300); font-size:18px; transition:transform .2s ease, color .2s ease}
.bch-404__pop{margin-top:clamp(26px,4vw,38px)}
.bch-404__pop-label{font-size:13px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--ink-muted); margin:0 0 12px}
.bch-404__pop-links{display:flex; flex-wrap:wrap; gap:10px}
.bch-404__pop-link{display:inline-block; padding:9px 16px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-pill); font-size:13.5px; font-weight:600; color:var(--blue-700); text-decoration:none; transition:background .2s ease, border-color .2s ease}
.bch-404__pop-link:hover{background:var(--blue-50); border-color:var(--blue-200)}
.bch-pagehero__cta{margin-top:24px}
.bch-pagebody{padding:clamp(40px,6vw,64px) 24px}

/* Типографика контента редактора (SiteOrigin / Gutenberg) */
.bch-prose{color:var(--ink-soft); font-size:16px; line-height:1.7}
.bch-prose > *:first-child{margin-top:0}
.bch-prose p{margin:0 0 1.1em}
.bch-prose h2{font-size:clamp(22px,2.8vw,30px); color:var(--ink); margin:1.8em 0 .6em; line-height:1.2}
.bch-prose h3{font-size:clamp(18px,2.2vw,22px); color:var(--ink); margin:1.5em 0 .5em; line-height:1.25}
.bch-prose h4{font-size:17px; color:var(--ink); margin:1.3em 0 .4em}
.bch-prose a{color:var(--blue-700); text-decoration:underline; text-underline-offset:2px}
.bch-prose a:hover{color:var(--blue-600)}
.bch-prose strong{color:var(--ink); font-weight:700}
.bch-prose ul,.bch-prose ol{margin:0 0 1.1em; padding-left:1.3em}
.bch-prose li{margin:.35em 0}
.bch-prose ul li::marker{color:var(--blue-500)}
.bch-prose blockquote{margin:1.4em 0; padding:14px 20px; background:var(--blue-50); border:1px solid var(--blue-100); border-radius:var(--radius-sm); color:var(--ink-soft)}
.bch-prose blockquote p:last-child{margin-bottom:0}
.bch-prose img,.bch-prose figure{max-width:100%; height:auto; border-radius:var(--radius-sm); margin:1.2em 0}
.bch-prose figure{margin:1.4em 0}
.bch-prose figcaption{font-size:13px; color:var(--ink-muted); margin-top:8px; text-align:center}
.bch-prose hr{border:0; border-top:1px solid var(--border); margin:2em 0}
.bch-prose code{background:var(--surface); border:1px solid var(--border); border-radius:2px; padding:2px 6px; font-size:.92em}
/* Таблицы вписываются по ширине контейнера; длинные заголовки переносятся на 2-ю строку — на десктопе
   нет бокового скролла. Специфичнее дефолта Gutenberg (table.has-fixed-layout) → перебиваем table-layout. */
.bch-prose .bch-table-wrap{overflow-x:auto; -webkit-overflow-scrolling:touch; max-width:100%; margin:1.4em 0; border:1px solid var(--border); border-radius:var(--radius)}
.bch-prose .wp-block-table{margin:0}
.bch-prose .bch-table-wrap table{width:100%; max-width:100%; table-layout:auto; border-collapse:collapse; margin:0}
.bch-prose .bch-table-wrap th,.bch-prose .bch-table-wrap td{padding:10px 14px; border-bottom:1px solid var(--border); border-right:1px solid var(--border); text-align:left; font-size:14px; line-height:1.4; vertical-align:top; overflow-wrap:anywhere; word-break:break-word; hyphens:auto}
.bch-prose .bch-table-wrap th:last-child,.bch-prose .bch-table-wrap td:last-child{border-right:0}
.bch-prose .bch-table-wrap tr:last-child th,.bch-prose .bch-table-wrap tr:last-child td{border-bottom:0}
.bch-prose .bch-table-wrap th{background:var(--surface); color:var(--ink); font-weight:600; white-space:normal}

/* Карточка товара: контент во всю ширину секции (таблицы/артикулы не зажаты в узкую текстовую колонку). */
.bch-product .bch-prose{max-width:none}
.bch-product .bch-prose>p,.bch-product .bch-prose>ul,.bch-product .bch-prose>ol{max-width:92ch}
/* Таблицы артикулов — ровно по 2 в ряд (на узких — 1). Внутри карточки таблица влезает по ширине. */
.bch-prose .bch-skugrid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 22px; margin:1.6em 0; align-items:start}
.bch-prose .bch-skucard{min-width:0; margin:0}
.bch-prose .bch-skucard>h2,.bch-prose .bch-skucard>h3,.bch-prose .bch-skucard>h4{margin:0 0 8px; font-size:15px; line-height:1.3}
.bch-prose .bch-skucard .bch-table-wrap{margin:0}
.bch-prose .bch-skucard .bch-table-wrap table{width:100%; min-width:0}
.bch-prose .bch-skucard .bch-table-wrap td{white-space:normal}
@media(max-width:720px){.bch-prose .bch-skugrid{grid-template-columns:1fr}}

/* Галереи в контенте (габаритные чертежи, схемы, ВТХ): по 2 в ряд — детальные чертежи читаются.
   КРИТИЧНО: в is-cropped-галереях ядро Gutenberg задаёт img{height:100%;object-fit:cover;flex:1}
   с большей специфичностью — в нашей grid-раскладке это СХЛОПЫВАЕТ картинку (фото «пропадает»,
   остаётся подпись). Поэтому ниже перебиваем !important: показываем фото целиком, подпись — снизу. */
.bch-prose .wp-block-gallery{display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 22px; align-items:start; margin:1.6em 0}
.bch-prose .wp-block-gallery .wp-block-image,
.bch-prose .wp-block-gallery.is-cropped .wp-block-image{display:block !important; flex:none !important; width:auto !important; height:auto !important; margin:0}
.bch-prose .wp-block-gallery figure{margin:0}
/* Картинка целиком, пропорционально; кап по ширине/высоте — низкоинформативные фото не раздуваются. */
.bch-prose .wp-block-gallery .wp-block-image img,
.bch-prose .wp-block-gallery.is-cropped .wp-block-image img{display:block !important; width:100% !important; height:auto !important; flex:none !important; max-width:640px; max-height:760px; object-fit:contain !important; margin:0 auto; background:#fff; border:1px solid var(--border); border-radius:var(--radius-sm)}
/* Подпись — ПОД фото, а не поверх (перебиваем абсолютное позиционирование ядра Gutenberg). */
.bch-prose .wp-block-gallery .wp-block-image figcaption{position:static !important; max-width:none; width:auto; inset:auto; margin:8px auto 0; padding:0; background:none !important; color:var(--ink-muted); font-size:13px; line-height:1.4; text-align:center}
@media(max-width:640px){.bch-prose .wp-block-gallery{grid-template-columns:1fr}}
/* Одиночные крупные изображения не разрастаются на пол-экрана. */
.bch-prose>figure.wp-block-image img,.bch-prose>p>img{max-height:540px; width:auto; margin-inline:auto}
.bch-prose .wp-block-button__link,.bch-prose .wp-element-button{display:inline-block; background:var(--blue-500); color:var(--ink-invert);
  padding:12px 22px; border-radius:var(--radius-pill); font-weight:600; text-decoration:none}
.bch-prose .wp-block-button__link:hover{background:var(--blue-600)}

/* ---------- Секции страниц (паттерны) ---------- */
.bch-pgsection{padding:clamp(48px,7vw,80px) 0}
.bch-pgsection--alt{background:var(--surface); border-top:1px solid var(--border); border-bottom:1px solid var(--border)}
.bch-pgsection__intro{color:var(--ink-muted); max-width:64ch; margin:14px 0 0}
.bch-features{display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:20px; margin-top:36px}
.bch-feature{background:var(--card); border:1px solid var(--border); border-radius:var(--radius); padding:24px; box-shadow:var(--shadow)}
.bch-feature__ico{width:40px; height:40px; border-radius:2px; background:var(--blue-50); border:1px solid var(--blue-100);
  display:flex; align-items:center; justify-content:center; color:var(--blue-600); margin-bottom:14px; font-weight:700}
.bch-feature__title{font-size:17px; color:var(--ink); margin:0 0 6px}
.bch-feature__text{font-size:14px; color:var(--ink-muted); margin:0}
.bch-faq{margin-top:32px; display:grid; gap:12px}
.bch-faq__item{background:var(--card); border:1px solid var(--border); border-radius:var(--radius); padding:20px 24px}
.bch-faq__q{font-size:16px; color:var(--ink); font-weight:600; margin:0 0 6px}
.bch-faq__a{font-size:14.5px; color:var(--ink-muted); margin:0}

/* ---------- Карточка каталога: действия ---------- */
.bch-prodcard__link{display:flex; flex-direction:column; flex:1; text-decoration:none; color:inherit}
.bch-prodcard__link:hover{text-decoration:none}
.bch-prodcard__actions{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 18px 16px; margin-top:auto}
.bch-prodcard__actions .bch-prodcard__more{margin:0; padding:0; color:var(--blue-700); font-weight:600; font-size:14px; white-space:nowrap}
.bch-prodcard__actions .bch-prodcard__more i{font-style:normal}

/* ---------- Спец-билдер ---------- */
.bch-spec-toggle{display:inline-flex; align-items:center; gap:7px; background:var(--blue-50); color:var(--blue-700);
  border:1px solid var(--blue-100); border-radius:var(--radius-pill); padding:8px 14px; font:inherit; font-size:13px; font-weight:600; cursor:pointer; transition:background .15s}
.bch-spec-toggle:hover{background:var(--blue-100)}
.bch-spec-toggle__badge{display:inline-flex; min-width:18px; height:18px; align-items:center; justify-content:center;
  background:var(--blue-500); color:#fff; border-radius:2px; font-size:11px; font-weight:700; padding:0 5px}
.bch-spec-add{display:inline-flex; align-items:center; justify-content:center; gap:6px; cursor:pointer; white-space:nowrap;
  background:#fff; color:var(--blue-700); border:1px solid var(--blue-200); border-radius:var(--radius-pill);
  font:inherit; font-size:13px; font-weight:600; padding:9px 16px; transition:.15s}
.bch-spec-add:hover{background:var(--blue-50)}
.bch-spec-add.is-added{background:var(--blue-500); color:var(--ink-invert); border-color:var(--blue-500)}
.bch-spec-add.is-flash{animation:bch-flash .6s ease}
@keyframes bch-flash{0%{transform:scale(1)}30%{transform:scale(1.06)}100%{transform:scale(1)}}

.bch-noscroll{overflow:hidden}
.bch-drawer{position:fixed; inset:0; z-index:1000}
.bch-drawer__backdrop{position:absolute; inset:0; background:rgba(8,22,37,.5); opacity:0; transition:opacity .25s}
.bch-drawer.is-open .bch-drawer__backdrop{opacity:1}
.bch-drawer__panel{position:absolute; top:0; right:0; height:100%; width:min(420px,92vw); background:var(--paper);
  box-shadow:-12px 0 40px rgba(20,32,46,.18); display:flex; flex-direction:column; transform:translateX(100%); transition:transform .28s cubic-bezier(.16,1,.3,1)}
.bch-drawer.is-open .bch-drawer__panel{transform:none}
.bch-drawer__head{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 22px; border-bottom:1px solid var(--border); background:var(--surface)}
.bch-drawer__head>div{flex:1; min-width:0}
.bch-drawer__icon{display:inline-flex; width:38px; height:38px; align-items:center; justify-content:center; background:var(--blue-50); color:var(--blue-700); border:1px solid var(--blue-100); border-radius:2px; flex:none}
.bch-drawer__icon svg{width:18px; height:18px}
.bch-drawer__title{font-size:17px; color:var(--ink); margin:0}
.bch-drawer__sub{font-size:12px; color:var(--ink-muted)}
.bch-drawer__close{border:0; background:none; font-size:26px; line-height:1; color:var(--ink-muted); cursor:pointer; padding:0 4px}
.bch-drawer__body{flex:1; overflow-y:auto; padding:6px 22px}
.bch-drawer__empty{padding:36px 24px; color:var(--ink-muted); font-size:14px; line-height:1.6; text-align:center}
.bch-drawer__medallion{display:inline-flex; width:58px; height:58px; align-items:center; justify-content:center; background:var(--blue-50); color:var(--blue-600); border-radius:50%; margin:0 auto 16px}
.bch-drawer__medallion svg{width:26px; height:26px}
.bch-drawer__empty-title{font-weight:700; color:var(--ink); font-size:16px; margin:0 0 6px}
.bch-drawer__total{font-size:12px; color:var(--ink-muted); text-align:center; margin-bottom:4px}
.bch-drawer__foot{padding:18px 22px; border-top:1px solid var(--border); display:grid; gap:10px}
.bch-specrow{display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--border)}
.bch-specrow:last-child{border-bottom:0}
.bch-specrow__name{flex:1; font-size:14px; color:var(--ink); line-height:1.3}
.bch-specrow__qty{display:flex; align-items:center; gap:6px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-pill); padding:3px 6px}
.bch-specrow__qty button{border:0; background:none; cursor:pointer; font-size:16px; color:var(--blue-700); width:22px; height:22px; line-height:1}
.bch-specrow__qty span{font-size:13px; font-weight:600; min-width:16px; text-align:center; color:var(--ink)}
.bch-specrow__del{border:0; background:none; cursor:pointer; font-size:18px; color:var(--ink-muted)}
.bch-specrow__del:hover{color:#b3261e}
.bch-specrow__badge{display:inline-block; font-size:10px; font-weight:700; color:var(--blue-700); background:var(--blue-50); border:1px solid var(--blue-100); padding:2px 6px; border-radius:2px; flex:none}
.bch-form__spec{background:var(--blue-50); border:1px solid var(--blue-100); border-radius:var(--radius-sm); padding:10px 14px; font-size:13px; color:var(--blue-700)}

/* ---------- Карточка товара: метрики / схема / табы ---------- */
.bch-metrics{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:14px}
.bch-metric{background:var(--card); border:1px solid var(--border); border-radius:var(--radius); padding:16px 18px; box-shadow:var(--shadow-card)}
.bch-metric__label{display:block; font-size:11px; letter-spacing:.04em; text-transform:uppercase; color:var(--ink-muted); margin-bottom:6px}
.bch-metric__value{display:block; font-size:18px; font-weight:800; color:var(--ink); line-height:1.25}

.bch-hotspot__hint{font-size:13px; color:var(--ink-muted); margin:-6px 0 18px}
.bch-hotspot__grid{display:grid; grid-template-columns:1.3fr 1fr; gap:28px; align-items:start}
.bch-hotspot__stage{position:relative; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; max-width:360px; width:100%; justify-self:center}
.bch-hotspot__img{display:block; width:100%; height:auto; aspect-ratio:400/480}
.bch-hotspot__dot{position:absolute; transform:translate(-50%,-50%); width:28px; height:28px; border-radius:50%;
  background:var(--blue-500); color:var(--ink-invert); border:2px solid #fff; box-shadow:0 2px 8px rgba(20,32,46,.25); cursor:pointer;
  font-size:13px; font-weight:700; display:flex; align-items:center; justify-content:center; transition:transform .15s ease, background .15s ease}
.bch-hotspot__dot:hover,.bch-hotspot__dot.is-active{background:var(--blue-700)}
.bch-hotspot__dot::after{content:""; position:absolute; inset:-6px; border-radius:50%; border:2px solid var(--blue-500); opacity:0; transition:opacity .2s}
.bch-hotspot__dot.is-active::after{opacity:.5}
.bch-hotspot__panel{position:relative}
/* Все узлы видны списком (и без JS); активный подсвечен синхронно с точкой на схеме. */
.bch-hotspot__info{display:block; padding:14px 16px; border:1px solid transparent; border-radius:var(--radius); margin-bottom:8px; transition:background .2s ease, border-color .2s ease}
.bch-hotspot__info:hover{border-color:var(--blue-200)}
.bch-hotspot__info.is-active{background:var(--blue-50); border-color:var(--blue-100)}
.bch-hotspot__num{display:inline-flex; width:30px; height:30px; align-items:center; justify-content:center; background:#fff; color:var(--blue-700); border:1px solid var(--blue-100); border-radius:50%; font-weight:700; font-size:14px; margin-bottom:10px; transition:background .2s ease, color .2s ease, border-color .2s ease}
.bch-hotspot__info.is-active .bch-hotspot__num{background:var(--blue-500); color:#fff; border-color:var(--blue-500)}
.bch-hotspot__title{font-size:17px; color:var(--ink); margin:0 0 6px}
.bch-hotspot__text{font-size:14px; color:var(--ink-muted); margin:0; line-height:1.6}

.bch-tabs__nav{display:flex; gap:6px; border-bottom:1px solid var(--border); margin-bottom:22px; flex-wrap:wrap}
.bch-tabs__btn{border:0; background:none; cursor:pointer; font:inherit; font-size:15px; font-weight:600; color:var(--ink-muted);
  padding:10px 4px; margin-bottom:-1px; border-bottom:2px solid transparent; transition:.15s}
.bch-tabs__btn:hover{color:var(--ink)}
.bch-tabs__btn.is-active{color:var(--blue-700); border-bottom-color:var(--blue-500)}
.bch-tabs.is-ready .bch-tabs__panel[hidden]{display:none}
.bch-tabs__panel{animation:bch-in .3s ease both}
.bch-prodcard.is-hidden{display:none}

/* ---------- Почему мы (статистика) ---------- */
.bch-why{position:relative; overflow:hidden; padding:clamp(48px,7vw,88px) 0; background-color:var(--surface); background-image:radial-gradient(rgba(20,32,46,.04) 1px,transparent 1px); background-size:24px 24px; border-bottom:1px solid var(--border)}
.bch-why::before{content:""; position:absolute; top:-12%; right:-6%; width:460px; height:460px; border-radius:50%; background:radial-gradient(circle,var(--blue-100),transparent 68%); opacity:.6; filter:blur(36px); pointer-events:none; z-index:0}
.bch-why>.bch-container{position:relative; z-index:1}
.bch-stats__grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:36px}
@media(max-width:860px){.bch-stats__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.bch-stats__grid{grid-template-columns:1fr}}
.bch-stat{position:relative; display:flex; flex-direction:column; justify-content:flex-start; min-height:168px; background:var(--card); border:1px solid var(--border); border-radius:var(--radius-lg); padding:30px 28px; box-shadow:var(--shadow-card); transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease}
.bch-stat__pre{display:block; margin-bottom:8px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--blue-600)}
.bch-stat__value{display:flex; align-items:baseline; flex-wrap:wrap; gap:4px 10px; line-height:1}
.bch-stat__num{font-size:clamp(46px,6vw,70px); font-weight:800; color:var(--blue-500); letter-spacing:-.02em; font-variant-numeric:tabular-nums; line-height:.95}
.bch-stat__suffix{font-size:clamp(17px,2.2vw,24px); font-weight:700; color:var(--ink)}
.bch-stat__label{font-size:14.5px; color:var(--ink-muted); margin-top:12px; line-height:1.5}
.bch-stat__lead{position:relative; padding-top:20px; font-size:clamp(20px,2.3vw,28px); font-weight:800; color:var(--ink); letter-spacing:-.01em; line-height:1.18}
.bch-stat__lead::before{content:""; position:absolute; top:0; left:0; width:30px; height:3px; border-radius:2px; background:var(--blue-500)}
.bch-stat--feat .bch-stat__label{margin-top:10px}

/* ---------- Области и опыт применения (карточки с фото) ---------- */
.bch-apps{padding:clamp(48px,7vw,88px) 0; background-color:var(--paper); background-image:radial-gradient(rgba(20,32,46,.045) 1px,transparent 1px); background-size:24px 24px}
.bch-apps__hint{display:flex; align-items:center; gap:8px; margin:14px 0 0; max-width:74ch; color:var(--ink-muted); font-size:clamp(15px,1.6vw,17px); line-height:1.6}
.bch-apps__hint-ic{flex:none; color:var(--blue-600)}
.bch-hint--touch{display:none}
@media (hover:none),(pointer:coarse){.bch-hint--hover{display:none}.bch-hint--touch{display:inline}}

/* листалка-раскрытие «товар → щит»: панели одинакового размера, при наведении одна разворачивается крупно */
.bch-reveal{position:relative; margin-top:30px}
.bch-reveal__viewport{overflow:hidden; padding:8px 0; margin:-8px 0}
.bch-reveal__track{display:flex; transition:transform .6s cubic-bezier(.4,0,.2,1)}
.bch-reveal__page{flex:0 0 100%; min-width:0; display:flex; gap:12px; height:clamp(400px,45vw,560px)}
.bch-reveal__panel{position:relative; flex:1 1 0%; min-width:0; max-width:calc((100% - 36px)/4); border-radius:var(--radius-lg); overflow:hidden; background:var(--card); border:1px solid var(--border); box-shadow:var(--shadow-card); cursor:pointer; transition:flex-grow .45s cubic-bezier(.25,1,.5,1), height .45s cubic-bezier(.25,1,.5,1), opacity .45s cubic-bezier(.25,1,.5,1), box-shadow .4s ease, border-color .4s ease}
.bch-reveal__panel:focus-visible{outline:2px solid var(--blue-500); outline-offset:3px}

.bch-reveal__scene{position:absolute; inset:0; opacity:0; transition:opacity .42s ease}
.bch-reveal__scene img{width:100%; height:100%; object-fit:cover; transform:scale(1.06); transition:transform .7s cubic-bezier(.16,1,.3,1)}
.bch-reveal__scene::after{content:""; position:absolute; inset:0; background:linear-gradient(185deg,rgba(8,22,37,0) 38%,rgba(8,22,37,.55) 72%,rgba(8,22,37,.88) 100%)}

.bch-reveal__product{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; padding:13% 11% 21%; background:radial-gradient(125% 90% at 50% 18%,#fff 0%,var(--surface) 100%); transition:transform .5s cubic-bezier(.4,0,.2,1), opacity .38s ease}
.bch-reveal__product img{max-width:100%; max-height:100%; width:auto; object-fit:contain; filter:drop-shadow(0 16px 26px rgba(20,32,46,.16))}

.bch-reveal__bar{position:absolute; left:0; right:0; bottom:0; display:flex; align-items:flex-end; justify-content:flex-end; padding:16px 16px 18px; z-index:2; pointer-events:none; transition:opacity .4s ease}
.bch-reveal__name{writing-mode:vertical-rl; transform:rotate(180deg); text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:700; color:var(--ink-soft); white-space:nowrap}

.bch-reveal__cap{position:absolute; left:0; right:0; bottom:0; padding:22px 24px 24px; color:#fff; z-index:3; opacity:0; transform:translateY(16px); pointer-events:none; transition:opacity .55s ease .14s, transform .7s cubic-bezier(.4,0,.2,1) .14s}
.bch-reveal__t{margin:0; color:#fff; font-size:clamp(19px,2.2vw,26px); line-height:1.18}
.bch-reveal__sub{display:block; margin-top:7px; font-size:11px; letter-spacing:.03em; color:rgba(217,231,250,.78)}
.bch-reveal__d{margin:10px 0 0; max-width:54ch; font-size:15px; line-height:1.5; color:rgba(236,243,251,.92)}
.bch-reveal__go{display:inline-flex; align-items:center; gap:7px; margin-top:12px; font-size:13.5px; font-weight:700; color:#fff}
.bch-reveal__go i{font-style:normal; transition:transform .2s ease}
.bch-reveal__panel.is-active[data-url]:hover .bch-reveal__go i{transform:translateX(3px)}

/* активная панель (JS: .is-active на панели, .has-active на контейнере) — клавиатура и тач */
.bch-reveal.has-active .bch-reveal__panel{flex-grow:.0001; min-width:0; opacity:.15; pointer-events:none; will-change:opacity}
.bch-reveal.has-active .bch-reveal__panel.is-active{flex-grow:15; max-width:none; opacity:1; pointer-events:auto; box-shadow:var(--shadow-float); border-color:var(--blue-200)}
.bch-reveal.has-active .bch-reveal__page{gap:0}
/* дочерние элементы карточки не перехватывают курсор — раскрытие/переключение идёт по самой карточке (устраняет дёрганье и переключение при движении внутри раскрытого фото) */
.bch-reveal__panel>*{pointer-events:none}
.bch-reveal__panel.is-active .bch-reveal__scene{opacity:1}
.bch-reveal__panel.is-active .bch-reveal__scene img{transform:scale(1)}
.bch-reveal__panel.is-active .bch-reveal__product{transform:translateY(104%); opacity:0}
.bch-reveal__panel.is-active .bch-reveal__bar{opacity:0}
.bch-reveal__panel.is-active .bch-reveal__cap{opacity:1; transform:none}
/* у узких карточек во время раскрытия прячем фото товара — остаются только подписи */
.bch-reveal.has-active .bch-reveal__panel:not(.is-active) .bch-reveal__product{opacity:0}
.bch-reveal.has-active .bch-reveal__panel:not(.is-active) .bch-reveal__bar{top:0; align-items:center; justify-content:center; padding:24px 6px}
.bch-reveal.has-active .bch-reveal__panel:not(.is-active) .bch-reveal__name{color:var(--blue-700); font-size:12px; letter-spacing:.12em}

/* Наведение мышью раскрывает карточку через JS (initApps): класс .is-active ставится
   с короткой задержкой-намерением, поэтому при проводке курсора сквозь узкие полоски
   раскладка не «убегает». Все визуальные состояния — выше, на .is-active / .has-active. */

/* кнопки листалки по бокам крайних карточек */
.bch-reveal__nav{position:absolute; top:50%; transform:translateY(-50%); z-index:6; width:48px; height:48px; border-radius:50%; background:#fff; border:1px solid var(--border-strong); box-shadow:var(--shadow-float); color:var(--blue-700); display:grid; place-items:center; cursor:pointer; transition:background .2s ease, color .2s ease, transform .15s ease, opacity .2s ease}
.bch-reveal__nav:hover{background:var(--blue-500); color:#fff; border-color:var(--blue-500)}
.bch-reveal__nav--prev{left:-10px}
.bch-reveal__nav--next{right:-10px}
.bch-reveal__nav[disabled]{opacity:.3; pointer-events:none; box-shadow:var(--shadow-card)}
/* при раскрытой карточке стрелки листания прячутся, при сворачивании — возвращаются */
.bch-reveal.has-active .bch-reveal__nav{opacity:0; visibility:hidden; pointer-events:none; transition:opacity .25s ease, visibility 0s linear .25s}
.bch-reveal__nav[hidden]{display:none}

@media (max-width:900px), (pointer:coarse){
  .bch-reveal__track{display:block; transform:none !important}
  .bch-reveal__page{display:flex; flex-direction:column; align-items:center; gap:16px; height:auto}
  .bch-reveal__page + .bch-reveal__page{margin-top:16px}
  /* Карточки ограничены по ширине и по центру — портретное фото товара не теряется в широкой полосе. */
  .bch-reveal__panel{flex:0 0 auto; width:100%; max-width:440px; margin:0 auto; height:clamp(320px,86vw,400px)}
  .bch-reveal__product{padding:8% 12% 11%}
  .bch-reveal.has-active .bch-reveal__panel{flex-grow:0; opacity:1; pointer-events:auto}
  .bch-reveal.has-active .bch-reveal__page{gap:16px}
  .bch-reveal.has-active .bch-reveal__panel.is-active{flex-grow:0; height:clamp(340px,92vw,440px)}
  .bch-reveal__nav{display:none}
}

/* reduced-motion отключение всей анимации — единым глобальным правилом ниже (см. *{transition:none!important}) */

/* ---------- Появление при скролле + вход героя (только html.bch-js) ---------- */
html.bch-js .bch-stage, html.bch-js .bch-feature, html.bch-js .bch-prodcard,
html.bch-js .bch-faq__item, html.bch-js .bch-prodhero__media, html.bch-js .bch-doc,
html.bch-js .bch-reveal, html.bch-js .bch-stat, html.bch-js .bch-calc__panel{opacity:0; transform:translateY(18px)}
html.bch-js .is-in{opacity:1 !important; transform:none !important; transition:opacity .6s cubic-bezier(.16,1,.3,1), transform .6s cubic-bezier(.16,1,.3,1)}
html.bch-js .bch-hero__word--1{animation:bch-in .7s .05s both cubic-bezier(.16,1,.3,1)}
html.bch-js .bch-hero__word--2{animation:bch-in .7s .16s both cubic-bezier(.16,1,.3,1)}
html.bch-js .bch-hero__word--3{animation:bch-in .7s .27s both cubic-bezier(.16,1,.3,1)}
html.bch-js .bch-hero__card{animation:bch-in .7s .38s both cubic-bezier(.16,1,.3,1)}
@keyframes bch-in{from{opacity:0; transform:translateY(20px)}to{opacity:1; transform:none}}

/* ---------- Проектный калькулятор ---------- */
.bch-calc{padding:clamp(48px,7vw,84px) 0; background-color:var(--surface); background-image:radial-gradient(rgba(20,32,46,.04) 1px,transparent 1px); background-size:24px 24px; border-top:1px solid var(--border); border-bottom:1px solid var(--border)}
.bch-calc__panel{margin-top:24px; max-width:760px; background:var(--card); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); padding:clamp(20px,3vw,32px)}
.bch-calc__head{display:flex; align-items:baseline; justify-content:space-between; gap:16px; flex-wrap:wrap}
.bch-calc__label{font-weight:600; color:var(--ink)}
.bch-calc__budget{font-size:clamp(20px,3vw,28px); font-weight:800; color:var(--ink); font-variant-numeric:tabular-nums}
.bch-calc__range{-webkit-appearance:none; appearance:none; width:100%; height:6px; border-radius:2px; margin:18px 0 8px; background:linear-gradient(90deg,var(--blue-500) var(--pct,45%),var(--blue-100) var(--pct,45%)); cursor:pointer}
.bch-calc__range::-webkit-slider-thumb{-webkit-appearance:none; appearance:none; width:24px; height:24px; border-radius:50%; background:var(--blue-500); border:3px solid #fff; box-shadow:0 1px 4px rgba(8,22,37,.3); transition:transform .15s ease, box-shadow .15s ease}
.bch-calc__range::-moz-range-thumb{width:24px; height:24px; border:3px solid #fff; border-radius:50%; background:var(--blue-500); box-shadow:0 1px 4px rgba(8,22,37,.3); transition:transform .15s ease, box-shadow .15s ease}
.bch-calc__range:hover::-webkit-slider-thumb,.bch-calc__range:focus-visible::-webkit-slider-thumb,.bch-calc__range:active::-webkit-slider-thumb{transform:scale(1.18); box-shadow:0 2px 12px rgba(38,92,164,.5)}
.bch-calc__range:hover::-moz-range-thumb,.bch-calc__range:focus-visible::-moz-range-thumb,.bch-calc__range:active::-moz-range-thumb{transform:scale(1.18); box-shadow:0 2px 12px rgba(38,92,164,.5)}
.bch-calc__scale{display:flex; justify-content:space-between; font-size:12px; color:var(--ink-muted)}
.bch-calc__cards{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:22px 0}
.bch-calc__card{background:var(--surface); border:1px solid var(--border); border-radius:2px; padding:16px 18px; display:flex; flex-direction:column; gap:4px}
.bch-calc__card--accent{background:var(--blue-50); border-color:var(--blue-100)}
.bch-calc__card-label{font-size:12px; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-muted)}
.bch-calc__benefit{font-size:clamp(20px,2.5vw,27px); font-weight:800; color:var(--blue-700); font-variant-numeric:tabular-nums; white-space:nowrap}
.bch-calc__static{font-size:clamp(20px,2.6vw,26px); font-weight:800; color:var(--ink)}
.bch-calc__card-sub{font-size:13px; color:var(--ink-muted)}
.bch-calc__note{font-size:13px; color:var(--ink-muted); line-height:1.5; margin:0 0 20px}
.bch-calc__cta{width:100%; justify-content:center}
@media(max-width:560px){.bch-calc__cards{grid-template-columns:1fr}}

/* ---------- Калькулятор: раскладка с карточками-преимуществами ---------- */
.bch-calc__layout{display:grid; grid-template-columns:1.05fr 1fr; gap:28px; align-items:stretch; margin-top:30px}
.bch-calc__main .bch-calc__panel{margin-top:0; max-width:none}
.bch-calc__main:only-child{grid-column:1/-1}
.bch-calc__main:only-child .bch-calc__panel{max-width:760px}
.bch-calc__adv{display:grid; grid-template-columns:1fr 1fr; gap:16px}
@media(min-width:921px){.bch-calc__adv{grid-template-rows:1fr 1fr}}
.bch-advcard{position:relative; background:var(--card); border:1px solid var(--border); border-radius:var(--radius-lg); padding:22px 20px; box-shadow:var(--shadow-card); transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease}
.bch-advcard__n{display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:2px; background:var(--blue-50); border:1px solid var(--blue-100); color:var(--blue-600); font-weight:800; font-size:13px; margin-bottom:14px}
.bch-advcard__t{font-size:16px; color:var(--ink); margin:0}
.bch-advcard__d{font-size:13.5px; color:var(--ink-muted); margin:8px 0 0; line-height:1.5}
@media(max-width:920px){.bch-calc__layout{grid-template-columns:1fr}}
@media(max-width:460px){.bch-calc__adv{grid-template-columns:1fr}}

/* ---------- Витрина продуктов: карусель (Проектные продажи) ---------- */
.bch-showcase{padding:48px 0 clamp(48px,7vw,84px); background-color:var(--surface); background-image:radial-gradient(rgba(20,32,46,.04) 1px,transparent 1px); background-size:24px 24px; border-bottom:1px solid var(--border)}
.bch-showcase__layout{display:grid; grid-template-columns:1fr 1.05fr; gap:clamp(28px,4vw,56px); align-items:center; margin-top:18px}
@media(max-width:880px){.bch-showcase__layout{grid-template-columns:1fr; gap:26px}}
.bch-showcase__hud{min-width:0}
.bch-showcase__super{font-size:clamp(12px,1.4vw,14px); font-weight:700; text-transform:uppercase; letter-spacing:.07em; color:var(--ink-muted); margin:0}
/* Слайды стопкой в одной grid-ячейке → высота = самый высокий слайд, ничего не «прыгает» */
.bch-showcase__slides{display:grid; margin-top:4px}
.bch-showcase__slide{grid-area:1/1; opacity:0; transform:translateY(10px); transition:opacity .5s cubic-bezier(.16,1,.3,1), transform .5s cubic-bezier(.16,1,.3,1); pointer-events:none}
.bch-showcase__slide.is-active{opacity:1; transform:none; pointer-events:auto}
.bch-showcase__name{font-size:clamp(30px,4.2vw,48px); font-weight:800; color:var(--ink); letter-spacing:-.02em; line-height:1.04; margin:14px 0 0}
.bch-showcase__text{font-size:clamp(14px,1.5vw,16px); color:var(--ink-soft); line-height:1.6; margin:16px 0 0}
.bch-showcase__feats{list-style:none; margin:18px 0 0; padding:0; display:grid; gap:10px}
.bch-showcase__feats li{position:relative; padding-left:30px; font-size:14px; color:var(--ink-soft); line-height:1.4}
.bch-showcase__feats li::before{content:""; position:absolute; left:0; top:-1px; width:20px; height:20px; border-radius:2px; background:var(--blue-50); border:1px solid var(--blue-100)}
.bch-showcase__feats li::after{content:""; position:absolute; left:6px; top:5px; width:8px; height:5px; border-left:2px solid var(--blue-600); border-bottom:2px solid var(--blue-600); transform:rotate(-45deg)}
.bch-showcase__cta{display:flex; flex-wrap:wrap; gap:12px; margin-top:28px}
.bch-showcase__media{position:relative; height:clamp(300px,42vh,460px)}
.bch-showcase__glow{position:absolute; left:50%; top:48%; width:62%; height:62%; transform:translate(-50%,-50%); background:radial-gradient(circle,var(--blue-100),transparent 68%); filter:blur(34px); opacity:.7; pointer-events:none}
.bch-showcase__shot{position:absolute; inset:0; margin:0; display:flex; align-items:center; justify-content:center; opacity:0; transform:translateX(26px) scale(.95); transition:opacity .55s ease, transform .6s cubic-bezier(.16,1,.3,1); pointer-events:none}
.bch-showcase__shot.is-active{opacity:1; transform:none}
.bch-showcase__shot img{max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; filter:drop-shadow(0 26px 46px rgba(8,22,37,.22))}
.bch-showcase__shot .bch-shprod__ph{color:var(--blue-600); font-size:13px}
/* нижняя панель: слева кнопки+счётчик (под HUD), справа точки (по центру под фото) */
.bch-showcase__nav{display:none; grid-template-columns:1fr 1.05fr; gap:clamp(28px,4vw,56px); align-items:center; margin-top:30px}
.bch-showcase.is-ready .bch-showcase__nav{display:grid}
.bch-showcase__controls{display:flex; align-items:center; gap:16px}
.bch-showcase__arrow{display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; flex:none; border-radius:50%; border:1px solid var(--border-strong); background:#fff; color:var(--blue-700); cursor:pointer; padding:0; box-shadow:var(--shadow-card); transition:background .18s, border-color .18s, color .18s, transform .12s}
.bch-showcase__arrow svg{width:20px; height:20px; display:block}
.bch-showcase__arrow:hover{background:var(--blue-500); border-color:var(--blue-500); color:#fff}
.bch-showcase__count{font-size:15px; color:var(--ink-muted); min-width:48px; text-align:center}
.bch-showcase__count b{color:var(--ink); font-weight:800}
.bch-showcase__dots{display:flex; justify-content:center; gap:8px}
.bch-showcase__dot{width:9px; height:9px; border-radius:50%; border:0; background:var(--border-strong); cursor:pointer; padding:0; transition:width .2s, background .2s}
.bch-showcase__dot.is-active{width:28px; border-radius:2px; background:var(--blue-500)}
@media(max-width:880px){.bch-showcase__media{height:clamp(240px,46vw,340px); order:-1}
  .bch-showcase.is-ready .bch-showcase__nav{grid-template-columns:1fr; gap:18px; justify-items:center}}

/* ---------- Слайдер готовых щитов (3D-coverflow, без автопрокрутки) ----------
   Позиции слайдов считает JS (initCabinets) и кладёт в CSS-переменные: активный по центру крупно,
   соседние отъезжают вбок с поворотом по Y, уменьшением, затемнением и уходом по Z. */
.bch-cabinets{padding:clamp(44px,6vw,80px) 0; background:var(--paper); overflow:hidden}
.bch-cab__stage{position:relative; margin-top:30px; height:clamp(320px,44vw,580px); perspective:1700px}
.bch-cab__track{position:relative; width:100%; height:100%; transform-style:preserve-3d}
/* Карточка «обнимает» фото по его пропорции (фото портретные) — без белых полей по краям/сверху-снизу.
   Ширину фигуры задаёт само фото (width:auto от высоты), поэтому coverflow-смещения (% от ширины) остаются согласованными. */
.bch-cab__slide{position:absolute; top:50%; left:50%; width:auto; max-width:min(86%,900px); height:100%; margin:0; display:flex; flex-direction:column; align-items:center; justify-content:center;
	transform:translate(-50%,-50%) translateX(var(--cab-x,0)) translateZ(var(--cab-z,0)) rotateY(var(--cab-ry,0)) scale(var(--cab-s,1));
	opacity:var(--cab-o,0); filter:saturate(var(--cab-sat,1)) brightness(var(--cab-b,1)); z-index:var(--cab-zi,0);
	transition:transform .7s cubic-bezier(.2,.82,.18,1), opacity .55s ease, filter .7s ease; will-change:transform,opacity; pointer-events:none}
.bch-cab__slide.is-side{pointer-events:auto; cursor:pointer}
.bch-cab__slide.is-active{pointer-events:auto}
.bch-cab__slide img{width:auto; height:auto; max-width:100%; max-height:calc(100% - 48px); object-fit:contain; background:#fff; border:1px solid var(--border); border-radius:var(--radius-lg); box-shadow:0 30px 70px rgba(8,22,37,.28); display:block}
.bch-cab__slide figcaption{margin-top:12px; text-align:center; font-size:14px; color:var(--ink-muted)}
.bch-cab__slide.is-active figcaption{color:var(--ink)}
/* Кнопки перелистывания — тот же стиль, что в блоке «Решения…» на главной (.bch-reveal__nav): белый круг, синяя стрелка, при наведении синий фон. */
.bch-cab__arrow{position:absolute; top:50%; transform:translateY(-50%); z-index:30; width:48px; height:48px; border-radius:50%; border:1px solid var(--border-strong); background:#fff; color:var(--blue-700); display:grid; place-items:center; cursor:pointer; box-shadow:var(--shadow-float); transition:background .2s ease, color .2s ease, border-color .2s ease, transform .15s ease}
.bch-cab__arrow:hover{background:var(--blue-500); color:#fff; border-color:var(--blue-500)}
.bch-cab__arrow svg{width:22px; height:22px}
.bch-cab__arrow--prev{left:clamp(4px,4vw,40px)}
.bch-cab__arrow--next{right:clamp(4px,4vw,40px)}
.bch-cab__dots{display:flex; justify-content:center; gap:9px; margin-top:24px}
.bch-cab__dot{width:9px; height:9px; border-radius:50%; border:0; background:var(--border-strong); cursor:pointer; padding:0; transition:width .25s, background .25s}
.bch-cab__dot.is-active{width:30px; border-radius:2px; background:var(--blue-500)}
@media(max-width:680px){
  .bch-cab__stage{height:clamp(300px,82vw,460px); perspective:1100px}
  .bch-cab__slide{max-width:92%}
  .bch-cab__arrow{width:42px; height:42px}
}

/* ---------- Процесс по проекту: анимированные шаги ---------- */
.bch-proc{padding:clamp(48px,7vw,84px) 0; background-color:var(--surface); background-image:radial-gradient(rgba(20,32,46,.04) 1px,transparent 1px); background-size:24px 24px; border-top:1px solid var(--border); border-bottom:1px solid var(--border)}
.bch-proc__grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:34px}
@media(max-width:900px){.bch-proc__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.bch-proc__grid{grid-template-columns:1fr}}
.bch-procstep{display:flex; flex-direction:column; background:var(--card); border:1px solid var(--border); border-radius:var(--radius-lg); padding:22px; box-shadow:var(--shadow-card); transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease}
.bch-procfx{height:clamp(150px,15vw,178px); display:flex; align-items:center; justify-content:center; background:radial-gradient(120% 100% at 50% 16%,#fff,var(--blue-50)); border:1px solid var(--blue-100); border-radius:var(--radius); overflow:hidden; margin-bottom:18px}
.bch-procfx svg{width:clamp(128px,13vw,152px); height:auto; color:var(--blue-500)}
.bch-procstep__n{font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--blue-600)}
.bch-procstep__t{font-size:16px; color:var(--ink); margin:8px 0 0; line-height:1.25}
.bch-procstep__d{font-size:13px; color:var(--ink-muted); margin:10px 0 0; line-height:1.55}
/* статичные базовые состояния (видны без JS и при prefers-reduced-motion) */
.bch-fx--docs .doc2{opacity:.6}
/* анимации шагов (отключаются глобальным правилом prefers-reduced-motion ниже) */
/* пауза, пока секция вне зоны видимости (JS ставит data-fx-paused) — экономия CPU/батареи */
.bch-proc[data-fx-paused] *{animation-play-state:paused !important}
@keyframes bch-fx-suck{0%{transform:translateY(-28px) scaleY(1); opacity:0} 13%{opacity:1} 52%{transform:translateY(10px) scaleY(1); opacity:1} 80%{transform:translateY(10px) scaleY(0); opacity:1} 100%{transform:translateY(10px) scaleY(0); opacity:0}}
.bch-fx--docs .doc{transform-box:fill-box; transform-origin:bottom; animation:bch-fx-suck 3.8s ease-in-out infinite}
.bch-fx--docs .doc2{animation-delay:1.9s}
@keyframes bch-fx-swap-rot{0%,16%{transform:rotate(0)} 50%,66%{transform:rotate(180deg)} 100%{transform:rotate(360deg)}}
.bch-fx--swap .swap{transform-box:fill-box; transform-origin:center; animation:bch-fx-swap-rot 3.6s ease-in-out infinite}
@keyframes bch-fx-pulse{0%,100%{opacity:.45} 50%{opacity:1}}
.bch-fx--swap .chip--new{animation:bch-fx-pulse 3.6s ease-in-out infinite}
.bch-fx--swap .chip--old{animation:bch-fx-pulse 3.6s ease-in-out infinite reverse}
@keyframes bch-fx-stamp{0%{transform:translateY(-30px) scale(1.6) rotate(-14deg); opacity:0} 22%{opacity:1} 44%{transform:translateY(0) scale(.9) rotate(0)} 56%{transform:translateY(0) scale(1) rotate(0); opacity:1} 86%{transform:translateY(0) scale(1) rotate(0); opacity:1} 100%{transform:translateY(0) scale(1) rotate(0); opacity:0}}
.bch-fx--stamp .stamp{transform-box:fill-box; transform-origin:center; animation:bch-fx-stamp 3.4s ease-in-out infinite}
@keyframes bch-fx-drive{0%{transform:translateX(-26px)} 55%{transform:translateX(16px)} 100%{transform:translateX(-26px)}}
.bch-fx--truck .truck{animation:bch-fx-drive 3.4s ease-in-out infinite}
@keyframes bch-fx-roll{from{transform:rotate(0)} to{transform:rotate(360deg)}}
.bch-fx--truck .wheel{transform-box:fill-box; transform-origin:center; animation:bch-fx-roll 1.1s linear infinite}
@keyframes bch-fx-speed{0%{opacity:0; transform:translateX(8px)} 40%{opacity:.85} 100%{opacity:0; transform:translateX(-14px)}}
.bch-fx--truck .speed{animation:bch-fx-speed 1.2s linear infinite}

/* ---------- Адаптив ---------- */
@media (max-width:1000px){
  .bch-nav,.bch-header__cta,.bch-header__mail{display:none}
  .bch-burger{display:flex}
}
@media (max-width:900px){
  .bch-lead__grid{grid-template-columns:minmax(0,1fr); gap:28px}
  .bch-prodhero{grid-template-columns:1fr; gap:28px; padding-bottom:40px}
  .bch-prodhero__media{order:-1; max-width:420px}
  .bch-hotspot__grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  .bch-form__row{grid-template-columns:1fr}
  .bch-spec-toggle__txt{display:none}
}

@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto !important; transition:none !important; animation:none !important}
  .bch-hero__video{display:none}
}

/* ---------- AI-подбор по схеме: оформление виджета (#konergy-ai) под старую тему ----------
   Виджет (бандл ai-match.js) сам рендерит весь блок: бейдж «Нейросеть», заголовок, описание,
   две мини-колонки и СОВМЕЩЁННЫЙ аплоадер (drag-n-drop + кнопка). Бандл без CSS — оформляем по его
   классам-хешам. NB: классы привязаны к этой сборке; идеал — companion-стейлшит из vantage-child. */
#konergy-ai:empty{display:none}
#konergy-ai .CjCIx9h5ASCiy15bhkPq{width:100%}
#konergy-ai .wVX27pfJDtKSmCRv0QEs{display:flex; flex-wrap:wrap; gap:clamp(22px,3.5vw,48px); align-items:stretch}
/* левая колонка: текст сверху + две мини-колонки снизу */
#konergy-ai .Lc3lhRg2Q4VF4QHwdsLV{flex:1.4 1 340px; display:flex; flex-direction:column; gap:clamp(22px,3vw,34px)}
#konergy-ai .FSr43a_Hd0fL2NGW8f4P{display:flex; flex-direction:column; gap:14px}
#konergy-ai .T1s3iazFcjqTYqzjfwwr{align-self:flex-start; padding:5px 13px; border:1px solid var(--blue-200); border-radius:var(--radius-pill); color:var(--blue-700); font-size:12px; font-weight:700; letter-spacing:.02em}
#konergy-ai h2.nrbIrtGG_iXeCA1usnDr{margin:0; font-size:clamp(26px,3.4vw,40px); font-weight:800; letter-spacing:-.02em; line-height:1.12; color:var(--ink)}
#konergy-ai .CUJ0HxAXREa17y9hIgP_{margin:0; font-size:15px; line-height:1.55; color:var(--ink-muted)}
/* две мини-колонки (1. Загрузка / 2. Список компонентов) — внизу левой колонки */
#konergy-ai .sAO3YJe6erjXSLd6U4Ml{margin-top:auto; padding-top:4px}
#konergy-ai .sAO3YJe6erjXSLd6U4Ml .wVX27pfJDtKSmCRv0QEs{gap:clamp(16px,2vw,28px)}
#konergy-ai .vy9Am601mu2Z7wzGoaVs{flex:1 1 150px; display:flex; flex-direction:column; gap:7px}
/* .title (общий класс): по умолчанию крупный (заголовки «Схема»/«Компоненты»), а подзаголовки 1./2. внутри benefits — мельче */
#konergy-ai div.nrbIrtGG_iXeCA1usnDr{font-size:clamp(21px,2.6vw,28px); font-weight:800; letter-spacing:-.01em; line-height:1.15; color:var(--ink)}
#konergy-ai .sAO3YJe6erjXSLd6U4Ml div.nrbIrtGG_iXeCA1usnDr{font-size:17px; line-height:1.25}
/* правая колонка — совмещённый аплоадер (drag-n-drop + кнопка «Выбрать файл со схемой») */
#konergy-ai .huo3sx4jgVY9nYl7apJW{flex:1 1 300px; align-self:stretch; position:relative; display:flex; align-items:center; justify-content:center;
  min-height:280px; background:var(--blue-50); border:1.5px dashed var(--blue-200); border-radius:var(--radius-lg);
  padding:clamp(26px,4vw,40px) clamp(20px,3vw,30px); transition:border-color .2s ease, background .2s ease}
#konergy-ai .huo3sx4jgVY9nYl7apJW:hover{border-color:var(--blue-500); background:#e8f1fc}
#konergy-ai .EhlnQzPJJ16XwgmB_WSA{display:flex; flex-direction:column; align-items:center; gap:16px; text-align:center}
#konergy-ai .EhlnQzPJJ16XwgmB_WSA::before{content:""; width:48px; height:48px; opacity:.92;
  background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%231f4d8a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 16V4M8 8l4-4 4 4'/%3E%3Cpath d='M4 14v3a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3v-3'/%3E%3C/svg%3E")}
#konergy-ai .EhlnQzPJJ16XwgmB_WSA button{cursor:pointer; border:0; border-radius:var(--radius-pill); background:var(--blue-500); color:#fff;
  font-family:inherit; font-weight:700; font-size:15px; padding:13px 26px; transition:background .18s ease, transform .1s ease}
#konergy-ai .EhlnQzPJJ16XwgmB_WSA button:hover{background:var(--blue-600)}
#konergy-ai .EhlnQzPJJ16XwgmB_WSA button:active{transform:scale(.97)}
#konergy-ai .EhlnQzPJJ16XwgmB_WSA .CUJ0HxAXREa17y9hIgP_{font-size:13.5px; max-width:32ch}
/* --- экран результата: «Схема» (распознанная однолинейка) + «Компоненты» (таблица с ценами) --- */
#konergy-ai .wQBqv1oaemlSryATjZQJ{margin-top:clamp(22px,3vw,36px)}
#konergy-ai .mA_kF9HmCvaW6yZR8_Zn{align-self:flex-start}
#konergy-ai ._tA09lgVsZxP8eTGvi4c{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--card); padding:16px; box-shadow:var(--shadow-card); overflow:auto}
#konergy-ai ._tA09lgVsZxP8eTGvi4c img{display:block; max-width:100%; height:auto; margin:0 auto}
#konergy-ai .qftNf3k8dHEyYJg2fnNC{display:flex; flex-direction:column}
#konergy-ai .yFu66Jl95sbWIxluTrxn{display:flex; align-items:center; gap:14px; padding:12px 0; border-bottom:1px solid var(--border)}
#konergy-ai .yFu66Jl95sbWIxluTrxn:last-child{border-bottom:0}
#konergy-ai .yFu66Jl95sbWIxluTrxn>a{flex:1 1 auto; min-width:0; display:flex; align-items:center; gap:14px; color:inherit; text-decoration:none}
#konergy-ai .yFu66Jl95sbWIxluTrxn>a:hover .cDvj3yKiPEantpjVgXlW{color:var(--blue-700)}
/* миниатюра товара — фикс «гигантских» фото */
#konergy-ai .iZwpouO1hFTPULFdr3uQ{flex:0 0 auto; width:56px; height:56px; display:flex; align-items:center; justify-content:center}
#konergy-ai .iZwpouO1hFTPULFdr3uQ img{max-width:56px; max-height:56px; width:auto; height:auto; object-fit:contain; display:block}
#konergy-ai .cDvj3yKiPEantpjVgXlW{flex:1 1 auto; min-width:0; font-size:14px; line-height:1.4; color:var(--ink)}
#konergy-ai .GhNf050qkMbqp94ClOR1{flex:0 0 auto; font-size:14px; color:var(--ink-muted); white-space:nowrap}
#konergy-ai .TnbaZ9ym9vkaLXeqKFHw{flex:0 0 auto; min-width:88px; text-align:right; font-size:14px; color:var(--ink-muted); white-space:nowrap}
#konergy-ai .W1eIvddEck78fgBfr3i5{flex:0 0 auto; min-width:88px; text-align:right; font-size:14px; font-weight:700; color:var(--ink); white-space:nowrap}
#konergy-ai .NzVpsB5FHB6nBPhtyfVP{margin-top:14px; text-align:right; font-size:clamp(16px,2vw,19px); font-weight:800; color:var(--ink)}
@media(max-width:560px){
  #konergy-ai .yFu66Jl95sbWIxluTrxn{flex-wrap:wrap}
  #konergy-ai .yFu66Jl95sbWIxluTrxn>a{flex-basis:100%}
  #konergy-ai .TnbaZ9ym9vkaLXeqKFHw,#konergy-ai .W1eIvddEck78fgBfr3i5{min-width:0}
}
@media(max-width:760px){
  #konergy-ai .huo3sx4jgVY9nYl7apJW{flex-basis:100%; min-height:0}
  #konergy-ai h2.nrbIrtGG_iXeCA1usnDr{font-size:clamp(24px,7vw,30px)}
}

/* ===================== Страница «Проектировщикам» ===================== */
/* hero использует стандартный .bch-pagehero (eyebrow + .bch-pagehero__title — как на других страницах) */
.bch-pr-hero__slogan{margin:14px 0 0; font-size:clamp(30px,5vw,52px); font-weight:800; line-height:1.08; letter-spacing:-.015em; color:var(--ink)}
.bch-pr-hero__accent{color:var(--blue-500)}
.bch-pr-hero__lead{margin:18px 0 0; font-size:clamp(15px,1.6vw,17px); line-height:1.6; color:var(--ink-muted)}
.bch-pr-tasks{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:clamp(24px,3vw,36px)}
.bch-pr-task{display:flex; flex-direction:column; gap:6px; padding:20px; border-radius:var(--radius-lg); background:var(--card); border:1px solid var(--border); box-shadow:var(--shadow-card); color:var(--ink); text-decoration:none; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}
.bch-pr-task__ic{width:42px; height:42px; display:grid; place-items:center; border-radius:2px; background:var(--blue-50); color:var(--blue-600)}
.bch-pr-task__ic svg{width:22px; height:22px}
.bch-pr-task__t{font-size:17px; font-weight:800; color:var(--ink)}
.bch-pr-task__d{font-size:13.5px; color:var(--ink-muted); line-height:1.45}
@media(max-width:760px){.bch-pr-tasks{grid-template-columns:1fr}}

.bch-pr-sec{padding:clamp(44px,6vw,80px) 0}
.bch-pr-sec--alt{background:var(--surface); border-top:1px solid var(--border); border-bottom:1px solid var(--border)}
.bch-pr-intro{margin:14px 0 0; font-size:clamp(15px,1.6vw,17px); line-height:1.6; color:var(--ink-muted)}
.bch-chip--static{padding:0; border:0; border-radius:0; background:none; font-size:13px; font-weight:600; font-variant-numeric:tabular-nums; color:var(--blue-700); cursor:default}
.bch-chip--static:hover{background:none}

/* каталоги по уровням */
.bch-pr-cat__find{margin-top:22px}
.bch-pr-cat__find-label{display:block; font-size:13.5px; color:var(--ink-muted); margin-bottom:8px}
.bch-pr-cat__more-series{align-self:center; font-size:12px; color:var(--ink-muted)}
.bch-pr-cat__search{position:relative; max-width:460px; margin:0 0 6px}
.bch-pr-cat__search-ic{position:absolute; left:14px; top:50%; transform:translateY(-50%); color:var(--ink-muted)}
.bch-pr-cat__search-ic svg{width:18px; height:18px}
.bch-pr-cat__input{width:100%; padding:12px 14px 12px 42px; border:1px solid var(--border-strong); border-radius:var(--radius-pill); background:var(--card); font:inherit; font-size:15px; color:var(--ink)}
.bch-pr-cat__input:focus{outline:none; border-color:var(--blue-300); box-shadow:0 0 0 3px var(--blue-50)}
.bch-pr-cat__grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:18px; margin-top:18px}
.bch-pr-cat{display:flex; flex-direction:column; gap:12px; padding:22px; border-radius:var(--radius-lg); background:var(--card); border:1px solid var(--border); box-shadow:var(--shadow-card)}
.bch-pr-cat[hidden]{display:none}
.bch-pr-cat__head{display:flex; align-items:center; justify-content:space-between; gap:10px}
.bch-pr-cat__lvl{font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; color:var(--blue-600); background:var(--blue-50); padding:4px 10px; border-radius:var(--radius-pill)}
.bch-pr-cat__pages{font-size:12.5px; color:var(--ink-muted)}
.bch-pr-cat__title{margin:0; font-size:19px; font-weight:800; color:var(--ink); line-height:1.2; min-height:2.4em; display:flex; align-items:flex-start}
.bch-pr-cat__when{margin:0; font-size:13.5px; line-height:1.5; color:var(--ink-muted)}
.bch-pr-cat__series{display:flex; flex-wrap:wrap; gap:6px}
.bch-pr-cat__details{border-top:1px solid var(--border); padding-top:10px}
.bch-pr-cat__details summary{cursor:pointer; font-size:13.5px; font-weight:700; color:var(--blue-700); list-style:none}
.bch-pr-cat__details summary::-webkit-details-marker{display:none}
.bch-pr-cat__details summary::after{content:"+"; float:right; color:var(--ink-muted); font-weight:700}
.bch-pr-cat__details[open] summary::after{content:"\2013"}
.bch-pr-cat__details p{margin:10px 0 0; font-size:13.5px; line-height:1.5; color:var(--ink-soft)}
.bch-pr-cat__inside{color:var(--ink-muted) !important}
.bch-pr-cat__actions{display:flex; flex-wrap:wrap; gap:10px; margin-top:auto; padding-top:6px}
.bch-pr-cat__actions .bch-btn{padding:9px 16px; font-size:14px}
.bch-pr-cat__empty{grid-column:1 / -1; color:var(--ink-muted); padding:18px 0}
.bch-pr-more{margin-top:22px; font-size:14.5px; color:var(--ink-muted)}

/* документ-вьюер (селективность) */
.bch-pr-doc{margin-top:24px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; padding:clamp(18px,2.5vw,26px); border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--card); box-shadow:var(--shadow-card)}
.bch-pr-doc__main{display:flex; align-items:flex-start; gap:14px; flex:1 1 360px; min-width:0}
.bch-pr-doc__ic{flex:0 0 auto; color:var(--blue-600)}
.bch-pr-doc__ic svg{width:26px; height:26px}
.bch-pr-doc__name{margin:0 0 4px; font-weight:800; font-size:16px; color:var(--ink)}
.bch-pr-doc__desc{margin:0; font-size:13.5px; line-height:1.5; color:var(--ink-muted)}
.bch-pr-doc__actions{display:flex; flex-wrap:wrap; gap:10px; flex:0 0 auto}

/* три типа координации */
.bch-pr-coord{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:24px}
.bch-pr-coord__card{padding:20px; border-radius:var(--radius-lg); background:var(--card); border:1px solid var(--border); box-shadow:var(--shadow-card)}
.bch-pr-coord__card h3{margin:0 0 8px; font-size:17px; font-weight:800; color:var(--ink)}
.bch-pr-coord__card p{margin:0; font-size:13.5px; line-height:1.55; color:var(--ink-muted)}
@media(max-width:820px){.bch-pr-coord{grid-template-columns:1fr}}

.bch-pr-howto{margin:0 0 16px; font-size:13.5px; line-height:1.55; color:var(--ink-muted); max-width:none}
.bch-pr-howto b{color:var(--ink)}

/* «Селективность и координация» — интерактивный инструмент */
.bch-tool{margin-top:24px; border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--card); box-shadow:var(--shadow-card)}
.bch-tool__tabs{display:flex; flex-wrap:wrap; gap:4px; padding:8px; background:var(--surface); border-bottom:1px solid var(--border)}
.bch-tool__tab{flex:1 1 0; min-width:150px; text-align:center; padding:11px 16px; border:0; border-radius:var(--radius); background:transparent; font:inherit; font-size:14px; font-weight:700; color:var(--ink-soft); cursor:pointer; transition:background .15s,color .15s}
.bch-tool__tab:hover{background:var(--blue-50); color:var(--ink)}
.bch-tool__tab.is-active{background:var(--blue-500); color:var(--ink-invert)}
.bch-tool__loading{padding:24px; font-size:14px; color:var(--ink-muted)}
.bch-tool__panel{padding:clamp(18px,2.4vw,26px)}
.bch-tool__panel[hidden]{display:none}
.bch-tool__controls{display:grid; grid-template-columns:1fr 1fr; gap:16px}
.bch-tool__controls label{display:flex; flex-direction:column; gap:6px; font-size:13px; font-weight:700; color:var(--ink-soft)}
.bch-tool__controls select{padding:11px 12px; border:1px solid var(--border-strong); border-radius:var(--radius); background:var(--card); font:inherit; font-size:15px; color:var(--ink); max-width:100%}
.bch-tool__controls select:disabled{background:var(--surface); color:var(--ink-muted); cursor:not-allowed}
.bch-tool__volt{display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:16px; font-size:13px; font-weight:700; color:var(--ink-soft)}
.bch-tool__voltbtn{padding:8px 16px; border:1px solid var(--border-strong); border-radius:var(--radius-pill); background:var(--card); font:inherit; font-size:13px; font-weight:700; color:var(--ink-soft); cursor:pointer}
.bch-tool__voltbtn.is-active{background:var(--blue-500); border-color:var(--blue-500); color:var(--ink-invert)}
.bch-tool__result{margin-top:18px}
.bch-tool__hint{margin:0; font-size:14px; color:var(--ink-muted)}
/* результат — светлая карточка, статус через цветную точку у заголовка */
.bch-tool__out{position:relative; box-sizing:border-box; display:flex; flex-direction:column; padding:20px; border-radius:var(--radius); background:var(--surface); border:1px solid var(--border); color:var(--ink); overflow:hidden}
.bch-tool__out-head{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:2px}
.bch-tool__badge{display:inline-flex; align-items:center; gap:8px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--ink-muted)}
.bch-tool__badge::before{content:""; width:9px; height:9px; border-radius:50%; background:var(--ink-muted); flex:none}
.bch-tool__out.is-full .bch-tool__badge::before{background:var(--ok)}
.bch-tool__out.is-partial .bch-tool__badge::before{background:var(--warn)}
.bch-tool__out.is-none .bch-tool__badge::before{background:var(--bad)}
.bch-tool__mult{font-size:12.5px; font-weight:800; color:var(--blue-700); background:var(--card); border:1px solid var(--border); border-radius:var(--radius-pill); padding:3px 10px; white-space:nowrap}
.bch-tool__big{font-size:clamp(34px,5vw,46px); font-weight:800; color:var(--ink); line-height:1.05; letter-spacing:-.02em; font-variant-numeric:tabular-nums; margin-top:6px}
.bch-tool__echo{margin:12px 0 0; font-size:12.5px; font-weight:600; color:var(--ink-soft); font-variant-numeric:tabular-nums}
.bch-tool__note{margin:8px 0 0; font-size:13px; line-height:1.5; color:var(--ink-muted)}
.bch-tool__cascade{display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin-top:10px}
.bch-tool__cascade>div span{display:block; font-size:12px; color:var(--ink-muted)}
.bch-tool__cascade strong{font-size:20px; font-weight:800; color:var(--ink); font-variant-numeric:tabular-nums}
.bch-tool__cascade .bch-tool__big{font-size:28px; margin-top:0}
.bch-tool__arrow{font-size:22px; color:var(--ink-muted)}
.bch-tool__meta{margin:14px 0 0; padding:14px 16px; list-style:none; display:grid; gap:6px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius)}
.bch-tool__meta:empty{display:none}
.bch-tool__meta li{font-size:12.5px; color:var(--ink-soft); padding-left:16px; position:relative}
.bch-tool__meta li::before{content:"\25B8"; position:absolute; left:0; color:var(--blue-500)}
.bch-tool__spec{margin:0; display:grid; gap:0}
.bch-tool__spec>div{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); gap:12px; padding:9px 0; border-bottom:1px dashed var(--border)}
.bch-tool__spec>div:last-child{border-bottom:0}
.bch-tool__spec dt{margin:0; font-size:12.5px; color:var(--ink-muted)}
.bch-tool__spec dd{margin:0; font-size:14px; font-weight:700; color:var(--ink)}
@media(max-width:620px){.bch-tool__controls{grid-template-columns:1fr}}

/* инструмент: выбор аппарата + кнопки токов/способностей, дерево сборки */
.bch-tool select{width:100%; max-width:100%; padding:11px 12px; border:1px solid var(--border-strong); border-radius:var(--radius); background:var(--card); font:inherit; font-size:15px; color:var(--ink)}
/* кастомный дропдаун калькулятора — список открывается строго под полем */
.bch-csel{position:relative}
.bch-csel__native{display:none}
.bch-csel__btn{width:100%; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 14px; border:1px solid var(--border-strong); border-radius:var(--radius); background:var(--card); font:inherit; font-size:15px; line-height:1.2; color:var(--ink); text-align:left; cursor:pointer; transition:border-color .2s, background .2s, box-shadow .2s}
.bch-csel__btn:hover{border-color:var(--blue-300); background:var(--blue-50)}
.bch-csel__btn:disabled{background:var(--surface); color:var(--ink-muted); cursor:not-allowed}
.bch-csel__btn::after{content:""; flex:none; width:11px; height:11px; background:no-repeat center/contain; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b6b7f' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); transition:transform .2s}
.bch-csel.is-open .bch-csel__btn{border-color:var(--blue-300); box-shadow:0 0 0 3px var(--blue-50)}
.bch-csel.is-open .bch-csel__btn::after{transform:rotate(180deg)}
.bch-csel__lbl{min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
/* Панель всегда в DOM: раскрытие анимируется сдвигом сверху + проявлением (0.2 s), закрытая не ловит клики. */
.bch-csel__list{position:absolute; z-index:40; top:calc(100% + 6px); left:0; right:0; max-height:264px; overflow:auto; display:flex; flex-direction:column; gap:2px; padding:4px; background:var(--card); border:1px solid var(--border-strong); border-radius:2px; box-shadow:0 8px 20px rgba(20,32,46,.10), 0 24px 60px rgba(20,32,46,.14); opacity:0; transform:translateY(-10px); pointer-events:none; transition:opacity .2s ease, transform .2s ease}
.bch-csel.is-open .bch-csel__list{opacity:1; transform:none; pointer-events:auto}
.bch-csel__opt{display:block; width:100%; flex:none; text-align:left; padding:9px 12px; border:0; border-radius:2px; background:none; font:inherit; font-size:14px; color:var(--ink-soft); cursor:pointer; transition:background .15s}
.bch-csel__opt:hover{background:var(--blue-100); color:var(--ink)}
.bch-csel__opt.is-sel{background:var(--blue-50); color:var(--blue-700); font-weight:700}
.bch-csel__opt:disabled{opacity:.4; cursor:not-allowed}
.bch-tool__pair{display:grid; grid-template-columns:1fr 1fr; gap:16px}
.bch-tool__dev{position:relative; padding:18px; padding-top:30px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius)}
.bch-tool__devtag{position:absolute; top:0; right:0; font-size:10px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; padding:4px 11px; border-radius:0 0 0 2px}
.bch-tool__dev--up .bch-tool__devtag{background:var(--blue-50); color:var(--blue-700)}
.bch-tool__dev--down .bch-tool__devtag{background:var(--ink); color:var(--ink-invert)}
.bch-tool__dev>label{display:flex; flex-direction:column; gap:6px; font-size:13px; font-weight:700; color:var(--ink-soft); margin-bottom:14px}
.bch-tool__field{margin-top:2px}
.bch-tool__fieldlbl{display:block; font-size:12px; font-weight:600; color:var(--ink-muted); margin-bottom:8px}
.bch-tool__btns{display:grid; grid-template-columns:repeat(auto-fill,minmax(58px,1fr)); gap:7px}
.bch-tool__btns[data-cc-up-caps],.bch-tool__btns[data-cc-down-caps]{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}
.bch-tool__btns[data-vf-eco-comp]{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.bch-tool__btns--wrap{grid-template-columns:repeat(auto-fill,minmax(78px,1fr)); max-height:230px; overflow:auto; padding:8px; background:var(--card); border:1px solid var(--border); border-radius:var(--radius)}
.bch-tool__inbtn{padding:7px 8px; border:1px solid var(--border-strong); border-radius:2px; background:var(--card); font:inherit; font-size:13px; font-weight:600; font-variant-numeric:tabular-nums; text-align:center; color:var(--ink-soft); cursor:pointer; transition:background .12s,border-color .12s,color .12s}
.bch-tool__inbtn:hover{border-color:var(--blue-200); color:var(--ink)}
.bch-tool__inbtn.is-active{background:var(--blue-500); border-color:var(--blue-500); color:var(--ink-invert)}
.bch-tool__dev--down .bch-tool__inbtn.is-active{background:var(--ink); border-color:var(--ink)}
.bch-tool__asmsel{display:flex; flex-direction:column; gap:6px; font-size:13px; font-weight:700; color:var(--ink-soft); margin-bottom:6px}
.bch-tool__cur{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 18px; margin-bottom:16px; background:var(--blue-50); border:1px solid var(--blue-100); border-radius:var(--radius)}
.bch-tool__cur span{font-size:13px; font-weight:600; color:var(--ink-soft)}
.bch-tool__cur strong{font-size:24px; font-weight:800; color:var(--blue-700); font-variant-numeric:tabular-nums; white-space:nowrap}
.bch-tool__tree{padding:18px 20px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius)}
.bch-tool__tree-h{font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-muted); margin-bottom:16px}
.bch-tool__tline{list-style:none; margin:0; padding:0 0 0 28px; position:relative}
.bch-tool__tline::before{content:""; position:absolute; left:7px; top:6px; bottom:18px; border-left:2px dashed var(--border-strong)}
.bch-tool__tnode{position:relative; padding-bottom:18px}
.bch-tool__tnode:last-child{padding-bottom:0}
.bch-tool__tdot{position:absolute; left:-28px; top:2px; width:16px; height:16px; border-radius:50%; background:var(--card); border:2px solid var(--blue-500); box-sizing:border-box}
.bch-tool__tnode.is-km .bch-tool__tdot{border-color:var(--ink-soft)}
.bch-tool__tnode.is-kk .bch-tool__tdot{border-color:var(--warn)}
.bch-tool__tnode.is-motor .bch-tool__tdot{background:var(--ok); border-color:var(--ok)}
.bch-tool__tstep{font-size:12px; font-weight:600; color:var(--ink-muted)}
.bch-tool__tval{font-size:15px; font-weight:800; color:var(--ink); margin-top:2px}
.bch-tool__tmeta{font-size:12px; color:var(--ink-soft); margin-top:2px}
.bch-tool__tnode.is-kk .bch-tool__tmeta{color:var(--warn)}
.bch-tool__tmotor{color:var(--ok)}
/* двухколоночная раскладка: устройства слева стопкой, результат справа; координация — мета+мощности и ток+дерево в строку */
.bch-tool__cols{display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); grid-template-rows:auto auto; gap:16px 18px; align-items:stretch}
.bch-tool__cols .bch-tool__dev--up{grid-column:1; grid-row:1}
.bch-tool__cols .bch-tool__dev--down{grid-column:1; grid-row:2}
.bch-tool__cols .bch-tool__side{grid-column:2; grid-row:1}
.bch-tool__side{display:flex; flex-direction:column; gap:14px; min-width:0}
.bch-tool__side .bch-tool__result{margin-top:0; flex:1 1 auto; display:flex; flex-direction:column}
.bch-tool__side .bch-tool__out{flex:1 1 auto; justify-content:flex-start}
.bch-tool__cols--coord{grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr)}
.bch-tool__cols--coord .bch-tool__meta{margin:0; align-self:start}
.bch-tool__coordout{display:grid; grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr); gap:16px; align-items:start}
.bch-tool__coordleft{display:grid; gap:14px; align-content:start; min-width:0}
.bch-tool__coordleft .bch-tool__meta{margin:0}
.bch-tool__coordout .bch-tool__cur{margin-bottom:0; flex-direction:column; align-items:flex-start; gap:4px}
/* недоступные (нет данных) кнопки и опции — серым */
.bch-tool__inbtn:disabled{opacity:.45; cursor:not-allowed; background:var(--surface); color:var(--ink-muted); border-color:var(--border); box-shadow:none}
.bch-tool select option:disabled{color:var(--ink-muted)}
@media(max-width:620px){.bch-tool__pair{grid-template-columns:1fr}}
@media(max-width:860px){
  .bch-tool__cols,.bch-tool__cols--coord,.bch-tool__coordout{grid-template-columns:1fr}
  .bch-tool__cols{grid-template-rows:none}
  .bch-tool__cols .bch-tool__dev--up,.bch-tool__cols .bch-tool__dev--down,.bch-tool__cols .bch-tool__side{grid-column:1; grid-row:auto}
}

/* подбор ПЧ */
.bch-vfd__motor{display:grid; grid-template-columns:1fr auto 1fr; gap:10px; align-items:end; margin-bottom:14px}
.bch-vfd__motor:has(> .bch-vfd__num:nth-child(3):last-child){grid-template-columns:1fr 1fr 1fr; align-items:end}
.bch-vfd__or{padding-bottom:12px; font-size:12px; color:var(--ink-muted)}
.bch-vfd__num{display:flex; flex-direction:column; gap:6px; font-size:13px; font-weight:700; color:var(--ink-soft)}
.bch-vfd__num input{width:100%; padding:11px 12px; border:1px solid var(--border-strong); border-radius:var(--radius); background:var(--card); font:inherit; font-size:15px; font-variant-numeric:tabular-nums; color:var(--ink)}
.bch-vfd__num input:focus{outline:none; border-color:var(--blue-300); box-shadow:0 0 0 3px var(--blue-50)}
.bch-vfd__modes{display:grid; gap:8px}
.bch-vfd__mode{display:block; cursor:pointer}
.bch-vfd__mode input{position:absolute; opacity:0; pointer-events:none}
.bch-vfd__mode span{display:flex; flex-direction:column; gap:2px; padding:11px 14px; border:1px solid var(--border-strong); border-radius:var(--radius); background:var(--card); transition:border-color .12s, background .12s, box-shadow .12s}
.bch-vfd__mode b{font-size:14px; color:var(--ink)}
.bch-vfd__mode i{font-style:normal; font-size:12px; color:var(--ink-muted)}
.bch-vfd__mode:hover span{border-color:var(--blue-200)}
.bch-vfd__mode input:checked + span{border-color:var(--blue-500); background:var(--blue-50); box-shadow:inset 0 0 0 1px var(--blue-500)}
.bch-vfd__mode input:checked + span b{color:var(--blue-700)}
.bch-vfd__mode input:focus-visible + span{outline:2px solid var(--blue-500); outline-offset:2px}
.bch-vfd__adv{margin-top:14px; border-top:1px solid var(--border); padding-top:10px}
.bch-vfd__adv summary{cursor:pointer; font-size:13.5px; font-weight:700; color:var(--blue-700); list-style:none}
.bch-vfd__adv summary::-webkit-details-marker{display:none}
.bch-vfd__adv summary::after{content:"+"; float:right; color:var(--ink-muted); font-weight:700}
.bch-vfd__adv[open] summary::after{content:"\2013"}
.bch-vfd__advbody{display:grid; gap:12px; margin-top:12px}
.bch-vfd__check{display:flex; align-items:center; gap:9px; font-size:13.5px; color:var(--ink-soft); cursor:pointer}
.bch-vfd__check input{width:16px; height:16px; accent-color:var(--blue-500); flex:none}
.bch-vfd__shares{display:grid; gap:6px; margin-top:8px}
.bch-vfd__share{display:grid; grid-template-columns:64px 1fr 44px; gap:10px; align-items:center; font-size:12.5px; color:var(--ink-muted); font-variant-numeric:tabular-nums}
.bch-vfd__share b{text-align:right; color:var(--ink-soft)}
.bch-vfd__share input[type=range]{width:100%; accent-color:var(--blue-500)}
[data-vf-eco-loadwrap] input[type=range]{width:100%; accent-color:var(--blue-500); margin-top:6px}
.bch-tool__big--model{font-size:clamp(19px,2.6vw,26px); letter-spacing:0; word-break:break-word}
.bch-tool__out .bch-btn{margin-top:14px; align-self:flex-start; font-size:14px; padding:10px 18px}
/* функции ПО в результате подбора */
.bch-vfd__fns{display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-top:16px; padding-top:14px; border-top:1px solid var(--border)}
.bch-vfd__fns-t{flex:0 0 100%; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-muted); margin-bottom:2px}
.bch-vfd__fn{font-size:12px; font-weight:600; color:var(--ink-soft); background:var(--card); border:1px solid var(--border); border-radius:2px; padding:4px 9px}
.bch-vfd__fn--more{background:none; border-color:transparent; color:var(--ink-muted)}
/* отличия функций в альтернативах */
.bch-vfd__diff{grid-column:1 / -1; display:flex; flex-wrap:wrap; gap:5px 6px; padding-top:2px}
.bch-vfd__diff-add,.bch-vfd__diff-del,.bch-vfd__diff-same{font-size:11.5px; font-weight:600; border-radius:2px; padding:3px 8px}
.bch-vfd__diff-add{color:var(--ok); background:var(--ok-bg); border:1px solid var(--ok-bd)}
.bch-vfd__diff-del{color:var(--ink-muted); background:var(--card); border:1px solid var(--border)}
.bch-vfd__diff-same{color:var(--ink-muted)}
.bch-vfd__alts,.bch-vfd__extras{margin-top:16px; padding:16px 18px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius)}
.bch-vfd__alts .bch-tool__fieldlbl,.bch-vfd__extras .bch-tool__fieldlbl{margin-bottom:10px}
.bch-vfd__alt{display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1.2fr) minmax(0,1fr); gap:8px 16px; padding:9px 0; border-top:1px dashed var(--border-strong); font-size:13px; color:var(--ink-muted)}
.bch-vfd__alt:first-of-type{border-top:0}
.bch-vfd__alt b{font-size:13.5px; color:var(--ink); font-variant-numeric:tabular-nums}
.bch-vfd__note{margin:10px 0 0; font-size:13px; line-height:1.5; color:var(--warn)}
.bch-vfd__charts{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:18px}
.bch-vfd__chart{padding:16px 18px 12px; background:var(--card); border:1px solid var(--border); border-radius:var(--radius)}
.bch-vfd__chart h3{margin:0 0 10px; font-size:13px; font-weight:700; color:var(--ink-soft)}
.bch-vfd__chart canvas{width:100% !important; height:230px !important}
@media(max-width:860px){
  .bch-vfd__charts{grid-template-columns:1fr}
  .bch-vfd__motor{grid-template-columns:1fr}
  .bch-vfd__or{padding:0; text-align:center}
  .bch-vfd__alt{grid-template-columns:1fr}
}

/* сертификаты — реестр-таблица */
.bch-pr-cert__filters{display:flex; flex-direction:column; gap:10px; margin:22px 0 14px}
.bch-pr-cert__bar{display:flex; align-items:center; flex-wrap:wrap; gap:14px; margin:0 0 12px; min-height:22px}
.bch-pr-cert__count{margin:0; font-size:13px; color:var(--ink-muted)}
.bch-pr-cert__count b{color:var(--ink); font-weight:700; font-variant-numeric:tabular-nums}
.bch-pr-cert__reset{appearance:none; cursor:pointer; font:inherit; font-size:13px; font-weight:700; color:var(--blue-600); background:none; border:0; padding:0; text-decoration:underline; text-underline-offset:2px}
.bch-pr-cert__reset:hover{color:var(--blue-700)}
.bch-pr-cert__reset[hidden]{display:none}

.bch-pr-cert__grid{border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--card); box-shadow:var(--shadow-card); overflow:hidden}
.bch-pr-cert__thead{display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1.3fr) minmax(0,1fr) 56px; gap:18px; align-items:center; padding:11px 18px; background:var(--surface); border-bottom:1px solid var(--border); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-muted)}
.bch-pr-cert__thead span:last-child{justify-self:end}
.bch-pr-cert{position:relative; display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1.3fr) minmax(0,1fr) 56px; grid-template-areas:"main type status dl"; gap:18px; align-items:center; padding:12px 18px; border-bottom:1px solid var(--border)}
.bch-pr-cert:last-of-type{border-bottom:0}
.bch-pr-cert[hidden]{display:none}
.bch-pr-cert:hover{background:var(--blue-50)}
.bch-pr-cert__rail{position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--blue-500)}
.bch-pr-cert.is-deklar .bch-pr-cert__rail{background:var(--blue-300)}
.bch-pr-cert.is-fire .bch-pr-cert__rail{background:var(--warn)}
.bch-pr-cert.is-deny .bch-pr-cert__rail{background:var(--bad)}
.bch-pr-cert.is-deny{background:var(--bad-bg)}
.bch-pr-cert.is-deny:hover{background:#fde7e5}
.bch-pr-cert__main{grid-area:main; min-width:0}
.bch-pr-cert__num{font-size:13.5px; font-weight:700; color:var(--ink); font-variant-numeric:tabular-nums; letter-spacing:.01em; line-height:1.3; word-break:break-word}
.bch-pr-cert.is-deny .bch-pr-cert__num{color:var(--bad)}
.bch-pr-cert__tags{margin-top:4px; font-size:12px; color:var(--ink-muted); font-variant-numeric:tabular-nums; line-height:1.4}
.bch-pr-cert__tagmore{color:var(--ink-muted)}
.bch-pr-cert__type{grid-area:type; font-size:12.5px; font-weight:600; color:var(--ink-soft); line-height:1.35}
.bch-pr-cert__status{grid-area:status; justify-self:start; font-size:12.5px; font-weight:600; white-space:nowrap; font-variant-numeric:tabular-nums; color:var(--ink-soft)}
.bch-pr-cert__status.is-ok{color:var(--ok)}
.bch-pr-cert__status.is-soon{color:var(--warn)}
.bch-pr-cert__status.is-exp{color:var(--ink-muted)}
.bch-pr-cert__status.is-deny{color:var(--bad)}
.bch-pr-cert__dl{grid-area:dl; justify-self:end; display:inline-flex; align-items:center; gap:5px; font-size:12.5px; font-weight:700; color:var(--blue-600); white-space:nowrap}
.bch-pr-cert__dl svg{width:14px; height:14px}
.bch-pr-cert__dl:hover{color:var(--blue-700); text-decoration:none}
.bch-pr-cert.is-deny .bch-pr-cert__dl{color:var(--bad)}
.bch-pr-cert__empty{padding:26px 18px; color:var(--ink-muted)}
.bch-pr-cert__empty[hidden]{display:none}
.bch-pr-cert__morewrap{display:flex; justify-content:center; margin-top:18px}
.bch-pr-cert__more[hidden]{display:none}
@media(max-width:720px){
  .bch-pr-cert__thead{display:none}
  .bch-pr-cert{grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"main status" "type dl"; gap:6px 14px; padding:14px 18px 14px 20px}
  .bch-pr-cert__status{justify-self:end}
  .bch-pr-cert__dl{justify-self:end}
}

/* подбор аналогов */
.bch-analog{display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:24px}
.bch-analog__col{padding:20px; border-radius:var(--radius-lg); background:var(--card); border:1px solid var(--border); box-shadow:var(--shadow-card); min-width:0}
.bch-analog__title{margin:0 0 12px; font-size:18px; font-weight:800; color:var(--blue-700)}
.bch-analog__search{position:relative; margin-bottom:12px}
.bch-analog__search-ic{position:absolute; left:0; top:50%; transform:translateY(-50%); color:var(--ink-muted)}
.bch-analog__search-ic svg{width:20px; height:20px}
.bch-analog__input{width:100%; padding:8px 8px 10px 32px; border:0; border-bottom:1px solid var(--border-strong); background:transparent; font:inherit; font-size:clamp(18px,2.2vw,24px); font-weight:600; color:var(--ink)}
.bch-analog__input:focus{outline:none; border-bottom-color:var(--blue-500)}
.bch-analog__input::placeholder{color:#b3b3b3}
.bch-analog__head{display:flex; gap:12px; padding:10px 0; font-size:12px; font-weight:700; color:var(--ink-muted); border-bottom:1px solid var(--border)}
.bch-analog__rows{display:flex; flex-direction:column}
.bch-analog__row{display:flex; gap:12px; padding:10px 0; font-size:13.5px; border-bottom:1px solid var(--border); color:var(--ink)}
.bch-analog__row:last-child{border-bottom:0}
.bch-analog__c-id{width:24%; flex:0 0 auto; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.bch-analog__c-brand{width:18%; flex:0 0 auto; color:var(--ink-muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.bch-analog__c-name{flex:1 1 auto; min-width:0}
.bch-analog__col--chint .bch-analog__c-id{width:30%}
.bch-analog__row a{color:var(--blue-700); font-weight:600}
.bch-analog__msg{padding:14px 0; color:var(--ink-muted); font-size:14px}
.bch-pr-note{margin-top:14px; font-size:13px; color:var(--ink-muted)}
@media(max-width:820px){.bch-analog{grid-template-columns:1fr}}

/* по запросу + техподдержка */
.bch-pr-request{display:flex; flex-wrap:wrap; gap:24px; align-items:center; justify-content:space-between}
.bch-pr-request__text{flex:1 1 420px}
.bch-pr-list{margin:16px 0 0; padding-left:20px; color:var(--ink-muted); font-size:14.5px; line-height:1.6}
.bch-pr-list li{margin-bottom:6px}
.bch-pr-request__cta{flex:0 0 auto}

/* ---------- Калькулятор АВР (страница «Проектировщикам»): перенесено из инлайнового <style> page-proektirovshhikam.php один-в-один ---------- */
.bav-calc{display:grid;grid-template-columns:400px 1fr;gap:22px;align-items:start;margin-top:20px}
@media(max-width:900px){.bav-calc{grid-template-columns:1fr}}
.bav-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:24px}
.bav-f{margin-bottom:18px}
.bav-f .bav-t{display:block;font-size:13px;font-weight:700;margin-bottom:8px;color:var(--ink)}
.bav-seg{display:flex;background:var(--blue-50,#eff4fb);border-radius:2px;padding:4px;gap:4px}
.bav-seg button{flex:1;border:0;background:transparent;padding:9px 8px;border-radius:2px;font:600 13.5px/1 inherit;color:var(--ink-muted);cursor:pointer;transition:.2s;white-space:nowrap}
.bav-seg button.on{background:#fff;color:var(--blue-500);box-shadow:0 1px 4px rgba(22,33,46,.12)} /* тень: не совпало с токеном */
.bav-panel input[type=number]{width:100%;padding:11px 13px;border:1px solid var(--border);border-radius:2px;font:600 15px inherit;color:var(--ink);background:#fff;outline:none;height:46px} /* radius 12px: не совпало с токеном (10/14) */
.bav-panel input[type=number]:focus{border-color:var(--blue-200);box-shadow:0 0 0 3px rgba(38,92,164,.12)} /* фокус-кольцо: токена нет */
.bav-hint{font-size:12.5px;color:var(--ink-muted);margin-top:6px}
.bav-itog{background:var(--blue-50,#eff4fb);border-radius:2px;padding:12px 14px;margin-bottom:14px;font-size:14px;display:none} /* radius 12px: не совпало с токеном (10/14) */
.bav-itog b{color:var(--blue-500)}
.bav-res{display:grid;gap:14px}
.bav-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:18px 20px;transition:box-shadow .25s ease,border-color .25s ease}
.bav-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bav-tag{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 10px;border-radius:2px;background:var(--blue-500);color:#fff}
.bav-tag--gray{background:#eef1f5;color:var(--ink-muted)} /* #eef1f5: не совпало с токеном */
.bav-name{font-size:18px;font-weight:800;margin-left:2px}
.bav-sub{color:var(--ink-muted);font-size:13.5px;margin:8px 0 12px;line-height:1.5}
.bav-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.bav-chip{background:var(--blue-50,#eff4fb);border-radius:var(--radius-sm);padding:6px 12px;font-size:13px;color:var(--ink)}
.bav-chip b{color:var(--blue-500);font-size:14px}
.bav-arts table{width:100%;border-collapse:collapse;font-size:13.5px}
.bav-arts td{padding:7px 4px;border-top:1px solid var(--border)}
.bav-arts td:last-child{text-align:right;font-weight:700;color:var(--blue-500);white-space:nowrap}
.bav-note{font-size:12.5px;color:#a05a00;margin-top:8px} /* #a05a00: не совпало с токеном (--warn #b54708) */
details.bav-scheme{margin-top:12px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
details.bav-scheme summary{list-style:none;cursor:pointer;padding:11px 14px;font:700 13.5px inherit;color:var(--blue-500);display:flex;align-items:center;justify-content:space-between;background:var(--blue-50,#eff4fb)}
details.bav-scheme summary::-webkit-details-marker{display:none}
details.bav-scheme summary::after{content:"+";font-size:18px;line-height:1;transition:transform .2s}
details.bav-scheme[open] summary::after{transform:rotate(45deg)}
details.bav-scheme .bav-schemebody{padding:14px;overflow-x:auto}
details.bav-scheme svg{display:block;margin:0 auto;max-width:100%}
.bav-empty{padding:36px;text-align:center;color:var(--ink-muted);background:var(--card);border:1px dashed var(--border);border-radius:var(--radius-lg)}
.bav-ctawrap{margin-top:14px}
