/* Блок контактов перед подвалом на всех страницах (EPIC-043, образец smextenej.ru).
   Разметку вставляет kontakty-blok.py между метками KONTAKTY:START/END - править там.
   Цвета свои, чтобы блок одинаково выглядел на любой странице. */
.kb{--kb-bg:#050607; --kb-ink:#f3f5f8; --kb-muted:#8b95a1; --kb-line:rgba(255,255,255,.14);
  --kb-red:#d92b21; --kb-teal:#34e6c8;
  display:grid; grid-template-columns:1fr 1fr; width:100%; align-self:stretch; margin:0; padding:0; position:relative; z-index:2;
  background:var(--kb-bg); color:var(--kb-ink); border-top:1px solid var(--kb-line);
  font-family:Manrope,system-ui,-apple-system,sans-serif; text-align:center}
.kb *{box-sizing:border-box}
.kb-l{container-type:inline-size; display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:clamp(44px,6vw,90px) clamp(16px,5vw,72px)}
.kb .kb-q{margin:0; font-family:Oswald,Impact,sans-serif; font-weight:700; text-transform:uppercase;
  font-size:clamp(30px,4.2vw,54px); line-height:1.05; letter-spacing:.01em; color:var(--kb-ink)}
.kb-dn{display:flex; flex-wrap:wrap; justify-content:center; gap:14px; width:100%; margin-top:28px}
.kb-btn{display:inline-flex; align-items:center; justify-content:center; min-height:54px; padding:0 28px;
  border-radius:8px; font-family:Oswald,Impact,sans-serif; font-weight:600; font-size:15px;
  text-transform:uppercase; letter-spacing:.08em; text-decoration:none; cursor:pointer; transition:transform .2s}
.kb-btn:hover{transform:translateY(-2px)}
.kb-da{background:var(--kb-red); color:#fff}
.kb-no{background:#fff; color:#0a0a0a; list-style:none}
.kb-no::-webkit-details-marker{display:none}
.kb-net[open]{flex-basis:100%}
.kb-offer{margin-top:16px; padding:22px 24px; text-align:left; border:1px solid rgba(52,230,200,.35);
  border-radius:12px; background:rgba(30,200,216,.06)}
.kb-offer p{margin:0 0 14px; color:var(--kb-muted); font-size:15px; line-height:1.55}
.kb-offer a{color:var(--kb-teal); font-weight:700}
.kb-lab{margin-top:40px; color:var(--kb-muted); font-size:14px}
.kb-big{display:inline-block; margin-top:6px; color:var(--kb-ink); text-decoration:none; font-weight:600;
  font-size:clamp(20px,3.3vw,44px); font-size:clamp(20px,7.4cqi,44px); line-height:1.15; letter-spacing:-.01em; overflow-wrap:anywhere}
.kb-big:hover{color:var(--kb-teal)}
.kb-ico{display:flex; justify-content:center; gap:14px; margin-top:40px}
.kb-ico a{display:flex; flex-direction:column; align-items:center; gap:8px; color:var(--kb-muted);
  font-size:12px; text-decoration:none}
.kb-ico i{display:flex; align-items:center; justify-content:center; width:60px; height:60px;
  border:1px solid var(--kb-line); border-radius:10px; color:var(--kb-ink); font-style:normal; transition:border-color .2s}
.kb-ico a:hover i{border-color:var(--kb-teal)}
.kb-ico b{font-family:Oswald,Impact,sans-serif; font-size:20px; letter-spacing:.02em}
.kb-pol{margin-top:40px; font-size:13px}
.kb-pol a{color:var(--kb-muted)}
.kb-r{position:relative; min-height:440px; overflow:hidden}
.kb-r img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 35%;
  filter:grayscale(1) contrast(1.08)}  /* чёрно-белое как в образце; цветное - убрать filter */
@media(max-width:820px){
  .kb{grid-template-columns:1fr}
  .kb-r{order:-1; min-height:0; aspect-ratio:1/1; max-height:440px}
}
/* Телефон: ссылки, в которые трудно попасть пальцем, - до 44 px (проверка 01.10.2026).
   Файл подключён на всех страницах, поэтому шапки страниц правим тоже здесь. */
@media(max-width:700px){
  .kb-big{padding:8px 0}
  .kb-offer a{display:inline-flex; align-items:center; min-height:44px}
  a.brandmark, a.logo, a.back, a.topcall{display:inline-flex; align-items:center; min-height:44px}
  .kb-pol a, .crumbs a{display:inline-flex; align-items:center; min-height:44px}
  .toc li a{display:inline-block; padding:10px 0}
  /* телефон и почта внутри строки текста: площадь касания больше, межстрочье прежнее */
  p a[href^="tel:"], p a[href^="mailto:"]{display:inline-block; padding:11px 0; margin:-11px 0}
}
