
/* --- общее для всех направлений: ТЗ-блок копирайтера не идёт в бой,
   в мобильном герое он искажает замер первого экрана --- */
@media (max-width:859px){
  .hero .cw-instruction-box{display:none}
  /* служебные полосы над героем отдают 12 px первому экрану */
  .topbar{padding:5px 0}
  .breadcrumbs{padding:6px 0;font-size:13px}
}

/* Скоуп :has(.quote-card): правки применяются только к героям с формой
   (T5-city-hub, T2-service). T13/T14 используют тот же .hero.split, но формы
   в герое у них нет — там блок целиком не срабатывает и остаётся текущая вёрстка.
   На браузерах без :has() (Android WebView < 105) блок тоже игнорируется —
   деградация в сегодняшний вид, без поломки. */
/* =========================================================
   НАПРАВЛЕНИЕ A · «Заявката е героят»
   Порядок DOM не тронут — переставлен только визуальный поток
   через display:contents + order. h1 остаётся первым.
   ========================================================= */
@media (max-width:859px){
  .hero.split:has(.quote-card){padding-block:10px 22px}
  .hero.split:has(.quote-card) .wrap{display:flex;flex-direction:column;gap:0}
  .hero.split:has(.quote-card) .wrap>div:first-of-type{display:contents}

  /* eyebrow дублирует шапку и стоит 27 px первого экрана */
  .hero.split:has(.quote-card) .eyebrow{display:none}
  .hero.split:has(.quote-card) h1{order:2;font-size:clamp(25px,6.6vw,31px);letter-spacing:-.022em}
  .hero.split:has(.quote-card) .hero-sub{order:3;font-size:14.5px;line-height:1.4;margin:7px 0 12px;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .hero.split:has(.quote-card) .quote-card{order:4}
  .hero.split:has(.quote-card) .hero-cta{order:5;margin:14px 0 4px}
  .hero.split:has(.quote-card) .usp{order:6;margin:16px 0 0}
  .hero.split:has(.quote-card) .trust-row{order:7;margin-top:16px}

  /* дублирующая кнопка «оглед и оферта» ведёт на форму, которая уже выше — не нужна */
  .hero.split:has(.quote-card) .hero-cta .btn-primary{display:none}
  .hero.split:has(.quote-card) .hero-cta .btn-ghost{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.3);
    color:#fff;font-size:17px;min-height:52px}

  /* форма: плотнее на 18%, поля ровно 16px, тап-таргет 46px */
  .hero.split:has(.quote-card) .quote-card{padding:12px 14px 16px;border-radius:16px;border-top:4px solid var(--brand);
    box-shadow:0 18px 44px rgba(4,12,20,.45)}
  .hero.split:has(.quote-card) .quote-card h2{font-size:17.5px;line-height:1.2;margin-bottom:3px}
  .hero.split:has(.quote-card) .quote-card .hint{font-size:12px;margin-bottom:8px}
  /* Име и Телефон в одну строку — экономит 76 px, форма целиком над фолдом */
  .hero.split:has(.quote-card) .quote-card form{display:grid;grid-template-columns:1fr 1fr;column-gap:10px}
  .hero.split:has(.quote-card) .quote-card form>*{grid-column:1/-1}
  .hero.split:has(.quote-card) .quote-card form>.field:nth-of-type(1),
  .hero.split:has(.quote-card) .quote-card form>.field:nth-of-type(2){grid-column:auto}
  .hero.split:has(.quote-card) .quote-card .field{margin-bottom:7px}
  .hero.split:has(.quote-card) .quote-card .field label{font-size:11.5px;line-height:1.2;margin-bottom:3px;letter-spacing:.01em}
  .hero.split:has(.quote-card) .quote-card .field input,.quote-card .field select,.quote-card .field textarea{
    min-height:46px;padding:11px 12px;font-size:16px}
  .hero.split:has(.quote-card) .quote-card .btn-lg{min-height:52px;margin-top:5px}
  .hero.split:has(.quote-card) .quote-card .consent{font-size:11.5px;margin-top:7px;line-height:1.35}
  .hero.split:has(.quote-card) .quote-card .social-row{margin-top:12px}
  .hero.split:has(.quote-card) .quote-card .social-row a{min-height:44px;padding:8px 13px;font-size:13.5px}

  .hero.split:has(.quote-card) .usp li{font-size:12px;padding:6px 10px}
  .hero.split:has(.quote-card) .trust-row{gap:10px 14px;font-size:12px;padding-top:14px}
  .hero.split:has(.quote-card) .trust-row b{font-size:19px}
}
