/* ============================================================
   IMPULSE 100 — B2B product page (loads on top of style.css)
   ============================================================ */

/* ---------- hero ---------- */
.imp-hero{padding-block:clamp(14px,2.5vw,28px) clamp(36px,6vw,72px)} /* сверху — вдвое меньше: крошки ближе к шапке */
.imp-hero__grid{
  display:grid;grid-template-columns:1.05fr 1fr;
  gap:clamp(28px,5vw,64px);align-items:center;
}
.imp-hero__media .ph{aspect-ratio:1200/705;min-height:220px}
.imp-hero__title{margin-top:10px}
.imp-hero__sub{margin-top:6px;font-size:clamp(17px,2vw,21px);color:var(--c-olive-3);font-weight:500}
.imp-hero__lead{margin-top:18px;max-width:56ch}
.imp-hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;align-items:center}
.imp-hero__chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:26px}
.imp-hero__chips .chip{padding:7px 13px;font-size:11.5px}
@media (max-width:900px){
  .imp-hero__grid{grid-template-columns:1fr}
  .imp-hero__media{order:-1}
}

/* маркер производителя */
.imp-maker{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--c-forest);color:var(--c-bg);
  border-radius:var(--radius-pill);padding:8px 16px;
  font-size:12.5px;font-weight:500;letter-spacing:.02em;
}
.imp-maker svg{width:15px;height:15px;color:var(--c-brass)}

/* ---------- универсальная секция ---------- */
.imp-sec{padding-block:clamp(40px,6vw,80px)}
.imp-sec--tint{background:var(--c-sage-1)}

/* ---------- 3 механизма / 3 сегмента ---------- */
.imp-cards{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(14px,2vw,22px);margin-top:clamp(24px,3vw,40px);
}
@media (max-width:860px){.imp-cards{grid-template-columns:1fr}}
.imp-card{
  background:var(--c-white);border:1px solid var(--c-sage-3);
  border-radius:var(--radius-l);padding:clamp(20px,2.4vw,30px);
}
.imp-card__n{font-size:12.5px;color:var(--c-olive-3);letter-spacing:.1em;font-weight:500}
.imp-card__t{font-size:clamp(17px,1.9vw,20px);font-weight:500;margin-top:10px;line-height:1.25}
.imp-card__d{margin-top:12px;color:var(--c-forest-3);font-size:14.5px;line-height:1.6}
/* списки в карточках — с точкой-маркером, как в карточках услуг на главной */
.imp-card ul{margin:14px 0 0;padding-left:0;display:grid;gap:7px;color:var(--c-forest-3);font-size:14px;line-height:1.5}
.imp-card ul li{position:relative;padding-left:18px}
.imp-card ul li::before{
  content:"";position:absolute;left:0;top:.5em;
  width:6px;height:6px;border-radius:50%;background:var(--c-olive-2);
}

/* ---------- таблица характеристик ---------- */
.imp-specs{
  margin-top:clamp(24px,3vw,40px);
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 clamp(24px,4vw,56px);
}
@media (max-width:760px){.imp-specs{grid-template-columns:1fr}}
.imp-spec{
  display:flex;justify-content:space-between;gap:16px;
  padding:13px 0;border-bottom:1px solid var(--c-sage-3);
  font-size:14.5px;
}
.imp-spec dt{color:var(--c-forest-3)}
.imp-spec dd{margin:0;font-weight:500;text-align:right}

/* ---------- список-чеклист ---------- */
.imp-list{margin-top:clamp(20px,3vw,32px);display:grid;gap:10px;max-width:900px}
.imp-list li{
  list-style:none;display:flex;gap:12px;align-items:flex-start;
  background:var(--c-white);border:1px solid var(--c-sage-3);
  border-radius:var(--radius-m);padding:14px 18px;font-size:14.5px;line-height:1.5;
}
.imp-list svg{width:17px;height:17px;flex:0 0 auto;color:var(--c-olive-3);margin-top:2px}

/* ---------- результаты (плейсхолдеры до/после) ---------- */
.imp-results{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(12px,1.6vw,18px);margin-top:clamp(24px,3vw,40px);
}
@media (max-width:860px){.imp-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.imp-results{grid-template-columns:1fr}}
.imp-result .ph{aspect-ratio:4/3}
.imp-result__cap{margin-top:9px;font-size:13.5px;color:var(--c-forest-3)}

/* ---------- финальный CTA ---------- */
.imp-cta{
  background:var(--c-forest);color:var(--c-bg);
  border-radius:var(--radius-l);
  padding:clamp(28px,4vw,52px);
  display:grid;grid-template-columns:1.2fr auto;gap:clamp(20px,3vw,40px);align-items:center;
}
@media (max-width:820px){.imp-cta{grid-template-columns:1fr}}
.imp-cta h2{color:var(--c-bg)}
.imp-cta p{margin-top:12px;color:var(--c-sage-2);max-width:52ch}
.imp-cta__btns{display:flex;flex-wrap:wrap;gap:12px}
.imp-cta .btn{background:var(--c-bg);color:var(--c-forest);border-color:var(--c-bg)}
.imp-cta .btn--ghost{background:transparent;color:var(--c-bg);border-color:var(--c-sage-3)}

/* ---------- хлебные крошки ---------- */
.imp-crumbs{font-size:13px;color:var(--c-forest-3);padding-top:18px}
.imp-crumbs a{color:var(--c-olive-3)}

/* ---------- результаты: подблоки по услугам ---------- */
.imp-case{margin-top:clamp(28px,4vw,46px)}
.imp-case:first-of-type{margin-top:clamp(20px,3vw,34px)}
.imp-case__head{
  display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;
  padding-bottom:12px;border-bottom:1px solid var(--c-sage-3);
}
.imp-case__t{font-size:clamp(17px,2vw,21px);font-weight:500;color:var(--c-ink);margin:0}
.imp-case__n{font-size:12.5px;color:var(--c-olive-3);letter-spacing:.08em}
.imp-case .imp-results{margin-top:clamp(14px,2vw,20px)}

/* ---------- мост для B2C-трафика (полоса над hero) ---------- */
.imp-bridge{background:var(--c-sage-2);border-bottom:1px solid var(--c-sage-3)}
.imp-bridge__in{
  display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;
  padding-block:11px;font-size:14px;color:var(--c-forest-3);text-align:center;
}
.imp-bridge__in a{
  color:var(--c-forest);font-weight:500;text-decoration:none;
  border-bottom:1.5px solid var(--c-olive-2);
}
.imp-bridge__in a:hover{border-color:var(--c-forest)}

/* ненавязчивая пометка «для кого страница» */
.imp-audience{margin-top:10px;font-size:13px;color:var(--c-forest-3);opacity:.85}

/* хвост блока результатов: дисклеймер + выход на запись */
.imp-outro{
  margin-top:clamp(26px,4vw,42px);
  display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  padding-top:clamp(18px,2.5vw,26px);border-top:1px solid var(--c-sage-3);
}
.imp-note{font-size:13px;color:var(--c-forest-3);max-width:62ch;margin:0}
.imp-case .imp-results-live{margin-top:clamp(14px,2vw,20px)}
/* лид-блок: после секции того же фона не удваиваем отступ — сверху и снизу одинаково */
.imp-sec:not(.imp-sec--tint) + .imp-sec--cta{padding-top:0}
/* якорь #request из шапки: карточка не уходит под липкую шапку */
.imp-sec--cta{scroll-margin-top:96px}
/* вертикальное фото в первом экране (страница Elos) */
.imp-hero__media .ph.imp-hero__ph--portrait{aspect-ratio:3/4;max-width:480px;margin-left:auto}
@media (max-width:900px){.imp-hero__media .ph.imp-hero__ph--portrait{max-width:420px;margin-inline:auto}}
/* десктоп: вертикальное фото по высоте экрана, текст — по центру фото, весь первый экран помещается целиком */
@media (min-width:901px){
  .imp-hero--elos .imp-hero__grid{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .imp-hero--elos .imp-hero__media .ph.imp-hero__ph--portrait{
    height:clamp(420px,calc(100svh - 190px),680px);width:auto;max-width:none;min-height:0;margin:0}
  .imp-hero--elos .imp-crumbs{padding-top:6px;margin-bottom:14px}
}
/* страницы услуг: длинный H1 — на ступень мельче, чтобы вставал в 2–3 строки */
.imp-hero--svc .imp-hero__title{font-size:clamp(32px,4.4vw,54px)}

/* ---------- страницы услуг: текст, сравнение методов, курс ---------- */
.imp-prose{margin-top:clamp(18px,2.4vw,28px);max-width:72ch;display:grid;gap:14px;
  font-size:clamp(15px,1.4vw,16.5px);line-height:1.7;color:var(--c-forest-3)}
.imp-prose p{margin:0}

.imp-cmp-wrap{margin-top:clamp(22px,3vw,36px)}
.imp-cmp{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;
  background:var(--c-white);border:1px solid var(--c-sage-3);border-radius:var(--radius-l);overflow:hidden;
  font-size:14.5px;line-height:1.55;color:var(--c-forest-3)}
.imp-cmp th,.imp-cmp td{padding:15px 20px;text-align:left;vertical-align:top;border-top:1px solid var(--c-sage-3)}
.imp-cmp thead th{border-top:0;font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--c-olive-3);padding-block:14px}
.imp-cmp thead th:first-child{width:22%}
.imp-cmp tbody th{font-weight:500;color:var(--c-ink)}
.imp-cmp .imp-cmp__us,.imp-cmp thead th:nth-child(2){background:var(--c-sage)}
.imp-cmp .imp-cmp__us{color:var(--c-forest)}
@media (max-width:720px){
  .imp-cmp,.imp-cmp tbody,.imp-cmp tr,.imp-cmp th,.imp-cmp td{display:block;width:auto}
  .imp-cmp{border:0;background:none;border-radius:0;overflow:visible}
  .imp-cmp thead{display:none}
  .imp-cmp tr{background:var(--c-white);border:1px solid var(--c-sage-3);border-radius:var(--radius-m);overflow:hidden}
  .imp-cmp tr + tr{margin-top:10px}
  .imp-cmp th,.imp-cmp td{border-top:0;padding:12px 16px}
  .imp-cmp tbody th{padding-bottom:4px;font-size:15px}
  .imp-cmp td{border-top:1px solid var(--c-sage-3)}
  .imp-cmp .imp-cmp__na{display:none}
  .imp-cmp td::before{content:attr(data-l);display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--c-olive-3);margin-bottom:3px}
}
.imp-alt{margin-top:clamp(16px,2vw,22px);max-width:72ch;padding:16px 20px;border-left:3px solid var(--c-olive);
  background:var(--c-white);border-radius:0 var(--radius-s) var(--radius-s) 0;font-size:14.5px;line-height:1.6;color:var(--c-forest-3)}
.imp-alt strong{color:var(--c-ink);font-weight:500}
.imp-alt + .imp-note{margin-top:12px}

.imp-cases{margin-top:clamp(28px,4vw,44px)}
.imp-cases__t{font-size:clamp(17px,2vw,21px);font-weight:500;color:var(--c-ink);margin:0}
.imp-cases__d{margin-top:6px;font-size:14px;color:var(--c-forest-3)}
.imp-cases [data-cases-inline]{margin-top:clamp(14px,2vw,20px)}
.imp-cta p.imp-cta__addr{font-size:13px;opacity:.8;margin-top:10px}
