/* Финальная доработка страницы «Контакты»: иерархия hero, компактная форма,
   FAQ-chevron, компактные карточки и мобильная CTA-панель.
   Общие правила формы действуют и на /quote и «Наличии». */

/* ===== H1: без переносов внутри слов, balance ===== */
body:not(.admin-body).pages.contacts .contact-hero-copy h1 {
  hyphens: none;
  text-wrap: balance;
}
@media (max-width: 767px) {
  /* 26px, а не общие 30: H1 держит две строки — «Контакты компании» и
     «КабЭм в Санкт-Петербурге». При 30px вторая строка не помещается
     и заголовок разъезжается на три. Повтор класса нужен, чтобы обойти
     правило дизайн-системы (пять :not(.admin-body) на main h1). */
  body:not(.admin-body).pages.contacts.contacts.contacts .contact-hero-copy h1,
  body:not(.admin-body).pages.contacts.contacts.contacts .contact-page-hero h1 {
    font-size: 26px;
    line-height: 1.14;
  }
}

/* ===== Адрес: семантический address без курсива ===== */
body:not(.admin-body) .map-contact-row address {
  font-style: normal;
  margin: 0;
  display: inline;
}

/* ===== Hero: порядок на мобильных — текст → преимущества → карточка ===== */
@media (max-width: 767px) {
  body:not(.admin-body).pages.contacts .contact-hero-grid {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }
  body:not(.admin-body).pages.contacts .contact-hero-copy { order: 1; }
}

/* ===== Форма: дропзона и textarea одной высоты на десктопе ===== */
@media (min-width: 1024px) {
 body:not(.admin-body) .quote-form .file-dropzone,
 body:not(.admin-body) .quote-form .file-dropzone {
    min-height: 108px;
    box-sizing: border-box;
  }
 body:not(.admin-body) .quote-form textarea,
 body:not(.admin-body) .quote-form textarea {
    height: 108px;
    min-height: 108px;
  }

  /* Низ формы: кнопка и пояснение одной строкой, почта — компактной второй */
 body:not(.admin-body) .quote-form-actions-row,
 body:not(.admin-body) .quote-form-actions-row {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
  }
}/* ===== FAQ: нормальный SVG-chevron вместо бордер-уголка ===== */
body:not(.admin-body) .contact-faq-item.contact-faq-item.contact-faq-item summary::after {
  content: "";
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  margin-left: 16px;
  border: 0;
  background-color: #1870BD;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center / contain no-repeat;
  transform: none;
  transition: transform var(--mo-hover) cubic-bezier(0.22, 1, 0.36, 1);
}
body:not(.admin-body) .contact-faq-item.contact-faq-item.contact-faq-item[open] summary::after {
  transform: rotate(180deg);
}

@media (prefers-reduced-motion: no-preference) {
  body:not(.admin-body) .contact-faq-item[open] p {
    animation: faq-answer-in var(--mo-hover) cubic-bezier(0.22, 1, 0.36, 1);
  }
}
@keyframes faq-answer-in {
  from { opacity: 0; transform: translateY(-4px); }
  to { opacity: 1; transform: translateY(0); }
}

/* ===== Карта на мобильных: достаточная высота, кнопки навигаторов ===== */
@media (max-width: 767px) {
  body:not(.admin-body).pages.contacts .map-route-buttons {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }
  body:not(.admin-body).pages.contacts .contact-map-section .map-route-button {
    width: 100%;
    min-height: 50px;
    justify-content: center;
    gap: 10px;
    padding-inline: 12px;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
  }
}

/* ===== Реквизиты на мобильных: ИНН/КПП в два столбца, кнопки в колонку ===== */
@media (max-width: 767px) {
  body:not(.admin-body).pages.contacts .contact-requisites-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 16px;
  }
  /* ООО / ИНН / КПП / ОГРН — компактная сетка 2×2, адрес ниже на всю ширину */
  body:not(.admin-body).pages.contacts .contact-requisite-address {
    grid-column: 1 / -1;
  }
  body:not(.admin-body).pages.contacts .contact-requisites-actions {
    display: grid;
    gap: 8px;
  }
  /* На самых узких экранах кнопки не помещаются рядом — ставим в колонку */
  @media (max-width: 374px) {
    body:not(.admin-body).pages.contacts .contact-requisites-actions {
      grid-template-columns: minmax(0, 1fr);
    }
  }
  body:not(.admin-body).pages.contacts .contact-requisites-actions .requisites-action {
    width: 100%;
    min-height: 46px;
    max-height: 48px;
    justify-content: center;
  }
}

/* ===== Reduced motion ===== */

/* ===== Кнопки навигаторов: единая система, фирменный знак 2ГИС ===== */
body:not(.admin-body).pages.contacts .map-route-button {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  min-height: 52px;
  padding: 12px 18px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 12px;
  font-weight: 600;
  color: #10233C;
  transition: background-color var(--mo-fast) ease, border-color var(--mo-fast) ease, box-shadow var(--mo-fast) ease;
}
@media (hover: hover) {
  body:not(.admin-body).pages.contacts .map-route-button:hover {
    background: #F4F8FD;
    border-color: #B9D3EA;
    box-shadow: 0 4px 12px rgba(12, 42, 72, 0.06);
  }
}
body:not(.admin-body).pages.contacts .map-route-button:focus-visible {
  outline: 2px solid #1870BD;
  outline-offset: 2px;
}
body:not(.admin-body).pages.contacts .map-route-logo {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  object-fit: contain;
  display: block;
}

/* ===== Блок отправки файла на «Наличии» стилизуется в 22, здесь ничего ===== */

/* ============================================================
   Полировка по аудиту: быстрые действия в карточке, двухуровневые
   преимущества, «файл или текст», согласие, копирование адреса.
   ============================================================ */

/* Карточка: мини-действия «Позвонить»/«Написать» */
body:not(.admin-body).pages.contacts .contact-line { position: relative; }/* Преимущества: главная строка + подпись */
/* Реквизиты: иконка копирования превращается в галочку */
body:not(.admin-body) .copy-requisites-button.is-copied .requisites-action-ico--copy {
  background-color: #0B6B3A !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4 10-10'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4 10-10'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* Форма: подсказка «файл или текст», подписи в labels, блок после кнопки */
body:not(.admin-body) .quote-either-note {
  grid-column: 1 / -1;
  margin: 4px 0 -6px;
  font-size: 14px;
  font-weight: 400;
  color: #5C6E84;
}

/* Hero: спокойный каскад + приглушение свечения */
@media (prefers-reduced-motion: no-preference) {
  html.motion-ready body:not(.admin-body).pages.contacts .contact-hero-copy h1 { animation: mo-rise-12 var(--mo-reveal) cubic-bezier(0.22, 1, 0.36, 1) both; }
  html.motion-ready body:not(.admin-body).pages.contacts .contact-hero-copy .lead { animation: mo-rise-12 var(--mo-reveal) cubic-bezier(0.22, 1, 0.36, 1) 80ms both; }
  html.motion-ready body:not(.admin-body).pages.contacts .contact-hero-card { animation: mo-slide-x var(--mo-reveal) cubic-bezier(0.22, 1, 0.36, 1) 140ms both; }
}
body:not(.admin-body).pages.contacts .contact-page-hero::before,
body:not(.admin-body).pages.contacts .contact-page-hero::after { opacity: 0.55; }

/* ============================================================
   Точечная доработка: цельная контактная карточка (CTA в потоке),
   зазор до формы, компактные форма/карта/полезные разделы.
   ============================================================ */

/* 2. Hero-сетка и типографика.
   Порог поднят с 1024 до 1200 (16.08.2026): при 1024 колонка карточки
   560px оставляла тексту 336px, и H1 разъезжался на три строки.
   Ниже 1200 первый экран идёт одной колонкой — правило дальше по файлу. */
@media (min-width: 1200px) {
  body:not(.admin-body).pages.contacts .contact-hero-grid {
    display: grid !important;
    /* Колонка карточки — 560px, как у карточки файла на «Наличии»
       (13.08.2026): карточки на двух страницах одного размера */
    grid-template-columns: minmax(0, 1fr) 560px !important;
    /* 8px по вертикали (H1 32px освободил высоту — остаток 3px больше
       не нужен), 64px между колонками — как на «О компании» (аудит К5).
       Первый экран остаётся ≤280: высоту держит карточка. */
    gap: 8px 64px !important;
    align-items: start !important;
    padding-top: 0;
    padding-bottom: 0;
  }
  body:not(.admin-body).pages.contacts .contact-hero-copy { grid-column: 1; grid-row: 1; }
  body:not(.admin-body).pages.contacts .contact-hero-card { grid-column: 2; grid-row: 1 / span 2; }
}
body:not(.admin-body).pages.contacts .contact-hero-copy h1 {
  max-width: 720px;
  font-weight: 600 !important;
}
/* 32, не 42: единый H1 с «О компании» и «Комплексными поставками»
   (аудит «Контактов» К1, 15.08.2026) */
@media (min-width: 768px) {
  body:not(.admin-body).pages.contacts .contact-hero-copy h1 {
    font-size: 32px;
    line-height: 1.2;
  }
}
body:not(.admin-body).pages.contacts .contact-hero-copy .lead {
  max-width: 770px;
  font-size: 18px;
  line-height: 1.55;
}

/* Зазор карточки до формы */
body:not(.admin-body).pages.contacts .contact-form-section { scroll-margin-top: 92px; }

/* 4. Форма: без повторов форматов, поля 54 */
body:not(.admin-body) .quote-form .file-dropzone .file-dropzone-note { display: none; }

/* 5. Карта: 38/62, высота 372, компактные кнопки */
@media (min-width: 1024px) {
  body:not(.admin-body).pages.contacts .contact-map-section .map-panel {
    grid-template-columns: 38% 62%;
    min-height: 300px;
  }
  body:not(.admin-body).pages.contacts .contact-map-section .map-panel-embed { min-height: 300px; }
  body:not(.admin-body).pages.contacts .contact-map-section .map-route-button { min-height: 49px; }
}

/* ===== Добор по корректирующему промпту ===== */

/* Реквизиты: компактнее, кнопки фиксированной ширины */
@media (min-width: 1024px) {
  body:not(.admin-body).pages.contacts .contact-requisites { padding: 26px; border-radius: 16px; }
  body:not(.admin-body).pages.contacts .contact-requisites-grid {
    grid-template-columns: 1.1fr 1fr 1fr 1fr;
    gap: 24px;
  }
  body:not(.admin-body).pages.contacts .contact-requisite:first-child { grid-column: auto; }
  body:not(.admin-body).pages.contacts .contact-requisite-address { grid-column: 1 / -1; }
  body:not(.admin-body).pages.contacts .contact-requisites-actions {
    grid-template-columns: repeat(auto-fit, minmax(220px, 260px));
  }
  body:not(.admin-body).pages.contacts .contact-requisites-actions .requisites-action {
    min-width: 0;
    min-height: 48px;
  }
}

/* FAQ: вопрос 15–16/600 */

/* ===== Плотность формы заявки (10.08.2026): та же сетка, меньше высоты =====
   Из списка селекторов убраны .pages.about, .pages.industries и
   .pages.industry: эти страницы не подключают 23-contacts-final, а формы на
   них нет с 13.08.2026 — сетки .quote-grid в их разметке не существует.
   Общий селектор и .pages.stock остаются: там форма есть. */
body:not(.admin-body) .quote-grid,
body:not(.admin-body).pages.stock .quote-grid {
  gap: 12px 24px;
}

/* Мобильная плотность формы: та же структура, меньше воздуха */

/* Форма: ещё −40px по высоте без наложения строк (10.08.2026) */
@media (min-width: 768px) {
 body:not(.admin-body) .quote-form,
 body:not(.admin-body) .quote-form {
    padding: 16px 24px 20px;
  }
 body:not(.admin-body) .quote-form .quote-grid,
 body:not(.admin-body) .quote-form .quote-grid {
    row-gap: 8px;
  }
 body:not(.admin-body) .quote-form .quote-form-copy,
 body:not(.admin-body) .quote-form .quote-form-copy {
    margin-bottom: 8px;
  }
 body:not(.admin-body) .quote-form .file-dropzone,
 body:not(.admin-body) .quote-form .file-dropzone {
    min-height: 112px;
  }
 body:not(.admin-body) .quote-form textarea,
 body:not(.admin-body) .quote-form textarea {
    height: 112px;
    min-height: 112px;
  }
}

/* Добор −17px: шапка формы и поля чуть плотнее, строки не слипаются */
@media (min-width: 768px) {
 body:not(.admin-body) .quote-form-copy .kicker,
 body:not(.admin-body) .quote-form-copy .kicker {
    margin-bottom: 4px;
  }
 body:not(.admin-body) .quote-form-copy h2,
 body:not(.admin-body) .quote-form-copy h2 {
    font-size: 26px;
    line-height: 1.2;
  }
 body:not(.admin-body) .quote-form input[type="text"],
 body:not(.admin-body) .quote-form input[type="email"],
 body:not(.admin-body) .quote-form input[type="tel"],
 body:not(.admin-body) .quote-form input[type="tel"] {
    height: 46px;
    min-height: 46px;
  }
 body:not(.admin-body) .quote-form .file-dropzone,
 body:not(.admin-body) .quote-form .file-dropzone {
    min-height: 108px;
  }
 body:not(.admin-body) .quote-form textarea,
 body:not(.admin-body) .quote-form textarea {
    height: 108px;
    min-height: 108px;
  }
}

/* Дропзона и textarea одной высоты: 96px, содержимое дропзоны плотнее */
@media (min-width: 768px) {
 body:not(.admin-body) .quote-form .file-dropzone,
 body:not(.admin-body) .quote-form .file-dropzone {
    min-height: 96px;
    height: 96px;
    gap: 4px;
    padding: 12px;
  }
 body:not(.admin-body) .quote-form textarea,
 body:not(.admin-body) .quote-form textarea {
    height: 96px;
    min-height: 96px;
  }
}

body:not(.admin-body) .file-select-button { min-height: 32px; }
/* Тач-цель на телефоне — 44 px (на десктопе кнопка остаётся компактной) */
@media (max-width: 767px) {
  body:not(.admin-body) .file-select-button,
  body:not(.admin-body).pages.contacts .file-select-button,
  body:not(.admin-body).pages.quote .file-select-button {
    min-height: var(--tap-min, 44px);
  }
}

/* Низ формы: кнопка слева, альтернативная почта — по правому краю */
@media (min-width: 768px) {
 body:not(.admin-body) .quote-form-actions,
 body:not(.admin-body) .quote-form-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px 18px;
    margin-top: 4px;
  }
 body:not(.admin-body) .quote-direct-email,
 body:not(.admin-body) .quote-direct-email {
    margin-left: auto;
    text-align: right;
  }
}

/* Ещё −10px высоты блока заявки */
@media (min-width: 768px) {
 body:not(.admin-body) .quote-form,
 body:not(.admin-body) .quote-form {
    padding: 14px 24px 16px;
  }
 body:not(.admin-body) .quote-form .quote-form-copy,
 body:not(.admin-body) .quote-form .quote-form-copy {
    margin-bottom: 8px;
  }
}

/* Ещё −10px высоты блока заявки (10.08.2026) */
@media (min-width: 768px) {
 body:not(.admin-body) .quote-form,
 body:not(.admin-body) .quote-form {
    padding: 12px 24px 14px;
  }
 body:not(.admin-body) .quote-form .quote-grid,
 body:not(.admin-body) .quote-form .quote-grid {
    row-gap: 8px;
  }
}

/* Альтернативная почта на узких телефонах переносится, а не вылезает за экран */
@media (max-width: 479px) {
  body:not(.admin-body) .quote-direct-email {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  /* Подпись и адрес связаны неразрывным пробелом, а ссылка — inline-block:
     перенести строку между ними браузер не мог и адрес уходил за экран на
     9px. На узких экранах адрес встаёт своей строкой (31.08.2026) */
  body:not(.admin-body) .quote-direct-email a {
    display: block;
  }
}

/* ============================================================
   Факты первого экрана «Контактов» — раскладка как на «Наличии»:
   три равные колонки, шаг 28px, отступ от лида 30px, подписи 13px.
   Только от 768px: на телефоне три колонки по 99px не вмещают подписи,
   и текст вылезал за экран — там работает мобильное правило в одну колонку.
   ============================================================ */

/* Карточка «Связаться с нами» — того же размера, что карточка файла
   остатков на «Наличии»: колонка 560px и минимальная высота 296px. */

body:not(.admin-body).pages.contacts .contact-hero-grid > .contact-hero-card,
body:not(.admin-body).pages.contacts .contact-compact.contact-hero-card {
  align-self: start;
  margin-top: 0;
  min-height: 296px;
  border-radius: var(--radius-card);
}

/* На телефоне фиксированная высота 296px оставляла под кнопкой пустую
   полосу в сотню пикселей, а строки контактов растягивались по остатку.
   Карточка идёт по содержимому: снизу столько же, сколько сверху. */
@media (max-width: 767px) {
  body:not(.admin-body).pages.contacts .contact-hero-grid > .contact-hero-card,
  body:not(.admin-body).pages.contacts .contact-compact.contact-hero-card {
    min-height: 0;
    height: auto;
  }
}

/* ============================================================
   КАРТОЧКА «СВЯЗАТЬСЯ С НАМИ» ПО РЕНДЕРУ (13.08.2026)
   Телефон крупной строкой с плашкой-иконкой, под ним линия, ниже пара
   «почта — режим работы» через вертикальный разделитель, внизу кнопка.
   Ширина карточки прежняя — 560px, её задаёт колонка сетки.
   ============================================================ */
@media (min-width: 768px) {
  body:not(.admin-body).pages.contacts .contact-compact.contact-hero-card {
    display: grid;
    align-content: start;
    gap: 18px;
    padding: 24px;
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-title {
    margin: 0;
    font-size: 16px;
    line-height: 22px;
    font-weight: 600;
    color: #10233C;
  }

  /* Плашка иконки 44×44 вместо голого значка 20px. Селектор с .contact-line —
     ровно как в 15-contacts-v3, где иконке снимали фон и размер */
  body:not(.admin-body).pages.contacts .contact-hero-card .contact-line .icon-badge--sm {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border: 0;
    border-radius: 12px;
    background: #EAF2FB;
    color: #1870BD;
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-line .icon-badge--sm::before {
    width: 22px;
    height: 22px;
    background: currentColor;
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-line {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    margin: 0;
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-line--phone .contact-line-value {
    /* 20, не 24: единственный кегль вне шкалы страницы (аудит К3) */
    font-size: 20px;
    line-height: 26px;
    font-weight: 600;
    color: #10233C;
  }

  /* Пара «почта — режим работы» под линией, между ними вертикальный шов */
  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    padding-top: 18px;
    border-top: 1px solid var(--color-border);
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split .contact-line--hours {
    padding-left: 20px;
    border-left: 1px solid var(--color-border);
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split .contact-line-value,
  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split .contact-line-hours {
    /* 16, не 15: жёсткие 15px ушли со страницы (аудит К3) */
    font-size: 16px;
    line-height: 21px;
    font-weight: 400;
    color: #10233C;
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-hero-cta {
    width: 100%;
    min-height: 56px;
    margin-top: 2px;
  }
}

@media (max-width: 767px) {
  /* На телефоне пара разворачивается в две строки — вид прежний */
  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split {
    display: grid;
    gap: 10px;
  }
}

/* Кнопка копирования почты в карточке «Связаться с нами»: тот же механизм
   и вид, что у копирования реквизитов (13.08.2026) */
/* Три колонки: плашка, адрес и кнопка копирования справа от него.
   Только на вебе: на телефоне плашки нет, иконка 20px, и колонка в 44px
   сдвигала адрес правее телефона и режима работы — строки переставали
   выравниваться по одной линии. */
@media (min-width: 768px) {
  body:not(.admin-body).pages.contacts .contact-hero-card .contact-line.contact-line--mail {
    /* Адрес занимает ровно свою ширину, кнопка идёт сразу за ним, а остаток
       колонки — воздух: у правого края карточки кнопка выглядела оторванной */
    grid-template-columns: 44px max-content minmax(0, 1fr);
    align-items: center;
  }
}

/* На телефоне строка почты живёт по общей сетке, кнопка копирования просто
   идёт третьей колонкой по содержимому */
@media (max-width: 767px) {
  body:not(.admin-body).pages.contacts .contact-hero-card .contact-line.contact-line--mail {
    grid-template-columns: 20px max-content auto;
    align-items: center;
  }
}

body:not(.admin-body).pages.contacts .contact-copy {
  justify-self: start;
  margin-left: -4px;
  color: #1870BD;
  width: 28px;
  height: 28px;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: var(--radius-control);
  /* Зона нажатия 44×44 при прежнем виде 28×28 (аудит К7) */
  position: relative;
  background: transparent;
  color: #1870BD;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background var(--mo-fast) var(--mo-ease);
}

body:not(.admin-body).pages.contacts .contact-copy:hover {
  background: #EAF4FD;
}

/* Базовые свойства иконки заданы в файле «Реквизитов», а он на «Контактах»
   не грузится — без них маска не на чем показываться */
body:not(.admin-body).pages.contacts .contact-copy .req-ico {
  display: inline-block;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin: 0;
  background: #1870BD;
}

body:not(.admin-body) .req-ico--copy {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='9' width='13' height='13' rx='2' ry='2'/%3E%3Cpath d='M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='9' width='13' height='13' rx='2' ry='2'/%3E%3Cpath d='M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Зазор «плашка заявки → Полезно перед отправкой» задан в 15-contacts-v3
   там же, где он и жил: наслаивать поверх ещё одно правило значило бы
   плодить слои специфичности (правка 14.08.2026). */

/* ===== Первый экран «Контактов»: высота 314px (просьба 15.08.2026) =====
   Двадцать пикселей сняты с двух внутренних зазоров первого экрана —
   надзаголовок → H1 и H1 → лид. Отступ сверху (28px от крошек до
   надзаголовка) не трогаем: это общее правило сайта, оно действует на всех
   страницах. Правила ограничены «Контактами», чтобы типографика остальных
   первых экранов не поехала. */
@media (min-width: 1024px) {
  /* Пять :not(.admin-body) — ровно та же форма, что у правил ритма в
     09-design-system: они задают 24px и 20px, и обычной записью их не
     перебить. !important не заводим. */
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-page-hero .contact-hero-copy .eyebrow {
    margin-bottom: 10px;
  }

  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-page-hero .contact-hero-copy .lead {
    margin-top: 6px;
    /* Табличный лид 17/26.35 (аудит 26.08, п. 7): страница жила на
       собственных 16/22.4 */
    font-size: 17px;
    line-height: 1.55;
  }

  /* Первый экран 280px (просьба 15.08.2026). Карточка «Связаться с нами»
     занимает оба ряда сетки и заканчивается по нижней линии списка
     преимуществ слева: сверху ничего не менялось, высота снята с
     внутреннего ритма. Состав карточки прежний: телефон, линия, почта
     с режимом работы, кнопка. */
  body:not(.admin-body).pages.contacts .contact-compact.contact-hero-card {
    min-height: 0;
    padding: 16px;
    gap: 10px;
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split {
    padding-top: 11px;
  }
}

/* 1024–1365px: колонка текста уже, подписи преимуществ набирали третью
   строку и выталкивали первый экран за 280 — зазор между пунктами меньше,
   ряд «текст → преимущества» вплотную */
@media (min-width: 1024px) and (max-width: 1365px) {

  body:not(.admin-body).pages.contacts .contact-hero-grid { row-gap: 0 !important; }
}

/* ============================================================
   АУДИТ UI/UX «КОНТАКТЫ» 15.08.2026 (К2, К3, К5, К6, К7, К8)
   Форма не тронута: она утверждена 13.08 и заморожена.
   ============================================================ */

/* Расстояние между блоками страницы — 10px (просьба 16.08.2026;
   аудиторские 48px из К8 отменены заказчиком). Видимый зазор дают
   паддинг секции 10 сверху и нулевые низы, внутренние маргины карточек
   сняты ниже. Последняя секция держит 20px до подвала. */
/* Зазор задаёт общее правило (--section-gap). Здесь остаётся только
   нулевой паддинг, иначе он складывался с ним: 10 + 15 = 25. */
body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts main > section:not(:first-of-type) {
  padding-block: 0;
}

/* К2. Один размер заголовка раздела — 24px, в одну ступень с «О компании»:
   было два (26 у формы и разделов, 20 у карты и реквизитов). */
body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .map-panel-copy h2,
body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-requisites-head h2,
body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .quote-form-copy h2 {
  font-size: 24px;
  /* 1.25 — табличная высота строки H2; 1.2 садила заголовки ниже
     остальных страниц (аудит 26.08, п. 2.2) */
  line-height: 1.25;
}

/* К6. Кнопка карточки «Связаться с нами» — сайтовые 48px, как на
   остальных страницах (была единственная 56px) */
@media (min-width: 768px) {
  body:not(.admin-body).pages.contacts .contact-hero-card .contact-hero-cta--desktop {
    min-height: 48px;
    height: 48px;
  }
}

/* К5. Почта и режим работы в карточке стояли вплотную — зазор по шкале */
@media (min-width: 768px) {
  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split {
    gap: 0 16px;
  }
}

/* К7. Зона нажатия кнопки копирования — 44×44 поверх прежних 28×28 */
body:not(.admin-body).pages.contacts .req-copy::before {
  content: "";
  position: absolute;
  inset: -8px;
}

/* К3 (хвост). Кнопки страницы и значения в карточке — токенные 16px,
   жёсткие 15px ушли (как на «О компании») */
body:not(.admin-body).pages.contacts main .btn {
  font-size: var(--fs-body);
}

/* К4. Панель карты 18 → 16, ссылки-строки 10 → 8: радиусы по шкале */
@media (min-width: 768px) {
  body:not(.admin-body).pages.contacts .map-panel {
    border-radius: var(--radius-card);
  }
}

/* Кнопки навигаторов (просьба 16.08.2026): подпись была 16px — крупно для
   вспомогательной ссылки под адресом, и «Открыть в Яндекс Навигаторе»
   разваливалось на три строки. Кегль 14px, как у таких же подписей на
   телефоне. */
body:not(.admin-body).pages.contacts .map-route-button span {
  font-size: 14px;
  line-height: 1.2;
}

/* Название навигатора неразрывно, поэтому колонке Яндекса нужно чуть больше
   места, чем 2ГИС: 1.12fr против 1fr. Плюс сокращённый паддинг и зазор до
   логотипа — иначе на 1200px строка «Яндекс Навигаторе» шире колонки и
   вылезает за край кнопки. Селектор с .contact-page повторяет форму правила
   дизайн-системы: без него оно сильнее и переопределяет эти значения. */
/* На планшете и узком мониторе колонка панели всего ~310px: в двух столбцах
   «Яндекс Навигаторе» шире кнопки и вылезает за рамку. Там кнопки идут
   друг под другом — каждая подпись помещается в строку. */
@media (min-width: 768px) and (max-width: 1199px) {
  body:not(.admin-body).pages.contacts .contact-page .map-route-buttons,
  body:not(.admin-body).pages.contacts .map-route-buttons {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    gap: 8px;
  }
}

@media (min-width: 1200px) {
  body:not(.admin-body).pages.contacts .contact-page .map-route-buttons,
  body:not(.admin-body).pages.contacts .map-route-buttons {
    grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr);
    gap: 8px;
  }

  body:not(.admin-body).pages.contacts .contact-page .map-route-button,
  body:not(.admin-body).pages.contacts .map-route-button {
    gap: 8px;
    padding-inline: 10px;
  }
}

/* Надзаголовок → заголовок: 8px в блоках реквизитов и формы (просьба
   16.08.2026) — тот же шаг, что в панели «Как нас найти → Адрес компании».
   В реквизитах зазор складывался из gap сетки 10 и нижнего поля
   надзаголовка 6, в форме надзаголовок — строчный span, у которого нижнее
   поле не работало, и оставалось 4px от интерлиньяжа. */
body:not(.admin-body).pages.contacts .contact-requisites-head {
  gap: 8px;
}

body:not(.admin-body).pages.contacts .contact-requisites-head .eyebrow {
  margin-bottom: 0;
}

/* Форма одна на всех страницах — правило без постраничного скоупа,
   иначе на /quote и «Наличии» шаг остался бы прежним */
body:not(.admin-body) .quote-form-copy .kicker {
  display: block;
  margin-bottom: 8px;
}

body:not(.admin-body) .quote-form-copy .kicker + h2 {
  margin-top: 0;
}

@media (max-width: 767px) {
  /* Панели с той же мягкой тенью, что у формы (макет v2) */
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-hero-card,
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .map-panel,
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-requisites {
    box-shadow: 0 14px 34px rgba(11, 35, 64, 0.07);
  }

  /* Форма-карточка по макету Contacts Mobile v2 (26.08.2026): белая
     подложка с мягкой тенью, поля идут свитком */
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-form-wrap .quote-form {
    padding: 18px;
    border: 1px solid var(--color-border);
    border-radius: 20px;
    background: var(--color-bg);
    box-shadow: 0 14px 34px rgba(11, 35, 64, 0.07);
  }
}

@media (max-width: 767px) {
  body:not(.admin-body).pages.contacts .contact-form-section {
    background: linear-gradient(180deg, #F3F8FD 0%, #FFFFFF 100%);
  }

  body:not(.admin-body).pages.contacts .contact-form-wrap {
    width: min(100% - 32px, 430px);
  }

}

@media (max-width: 374px) {

}

/* Верхнее поле блоков — 26px, как в карточке реквизитов (просьба
   16.08.2026): панель карты и форма начинались с 14px, «Полезные
   разделы» — с 24px, и начало текста в соседних блоках не совпадало.
   Форма одна на всех страницах, поэтому её правило без постраничного
   скоупа — иначе на /quote и «Наличии» отступ остался бы прежним. */
body:not(.admin-body).pages.contacts .map-panel-copy {
  padding-top: 26px;
}

/* Повтор класса нужен, чтобы обойти правила формы из 09 и 18 (у них
   .contact-form-wrap .quote-form и .quote-form--compact ×3). На телефоне
   верхнее поле оставляем прежним — там свои 16–20px. */
@media (min-width: 768px) {
  body:not(.admin-body) .quote-form.quote-form.quote-form.quote-form {
    padding-top: 26px;
  }
}

/* ============================================================
   Планшет и узкий ноутбук (768–1199): первый экран в одну колонку.
   Двухколоночная сетка с карточкой min 420px оставляла тексту около
   300px на 820 и 912 — H1 разваливался на пять строк, а три
   преимущества шли в три-четыре строки каждое (скриншоты 16.08.2026).
   Две колонки возвращаются с 1200px, где тексту достаётся 600+.
   ============================================================ */
@media (min-width: 768px) and (max-width: 1199px) {
  body:not(.admin-body).pages.contacts .contact-hero-grid {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "copy" "card" "benefits";
    gap: 16px;
    align-items: start;
  }

  body:not(.admin-body).pages.contacts .contact-hero-card {
    max-width: 560px;
    justify-self: start;
  }

  /* Карта и текст рядом тоже не помещаются: панель идёт колонкой */
  body:not(.admin-body).pages.contacts .map-panel {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* ============================================================
   Мобильный макет «Контакты v2» 26.08.2026 (KabEm Contacts Mobile).
   Только ≤767: десктоп и форма не меняются.
   ============================================================ */
@media (max-width: 767px) {
  /* Карточка «Связаться с нами»: телефон крупно, почта и часы —
     двумя плитками в ряд */
  body:not(.admin-body).pages.contacts .contact-hero-card .contact-line--phone .contact-line-value {
    font-size: 21px;
    font-weight: var(--fw-bold);
    letter-spacing: -0.02em;
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 8px;
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split .contact-line {
    margin: 0;
    padding: 11px 12px;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-control);
    background: var(--color-bg-soft);
    min-width: 0;
  }

  body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split .contact-line-value {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  /* На узком экране две плитки в ряд оставляли почте 182px: кнопка
     копирования вылезала за плитку на 45px, а часы ломались на четыре
     строки. Ниже 480 плитки идут столбцом (мобильный аудит 26.08.2026) */
  @media (max-width: 479px) {
    body:not(.admin-body).pages.contacts .contact-hero-card .contact-card-split {
      grid-template-columns: minmax(0, 1fr);
    }
  }

  /* Реквизиты: пары ключ-значение сеткой 2×2, адрес во всю ширину */
  body:not(.admin-body).pages.contacts .contact-requisites-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  body:not(.admin-body).pages.contacts .contact-requisites-grid > div:last-child {
    grid-column: 1 / -1;
    padding-top: 14px;
    border-top: 1px solid var(--color-border);
  }

  /* «Перед отправкой спецификации» — плитки 2×2 (макет Contacts v3) */
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-links-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-link-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: var(--tap-min);
    padding: 11px 13px;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-control);
    background: var(--color-bg);
  }

  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-link-card h3 {
    margin: 0;
    font-size: 13.5px;
    line-height: 1.3;
  }

  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-link-card p { display: none; }

  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-link-card .icon-badge { display: none; }

  /* В плитке — только название и стрелка (макет v3) */
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-link-card .contact-link-more {
    min-height: 0;
    height: auto;
    gap: 0;
    font-size: 0;
    flex: none;
  }

  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-link-card .contact-link-arrow {
    width: 15px;
    height: 15px;
    flex: none;
  }
}

/* Кнопка копирования почты — 28×28 по виду, зона нажатия 44×44 невидимой
   областью. Раньше расширение стояло только под 767px, и на десктопе цель
   оставалась вдвое меньше нормы (разбор 26.08.2026) */
body:not(.admin-body).pages.contacts .contact-copy::after {
  content: "";
  position: absolute;
  inset: 50% auto auto 50%;
  width: 44px;
  height: 44px;
  transform: translate(-50%, -50%);
}

/* ============================================================
   Мобильный макет «Контакты v3» 27.08.2026 (KabEm Contacts Mobile v3).
   Три отличия от предыдущей раскладки: лида под H1 нет, надзаголовки
   «Как нас найти» и «Реквизиты компании» стоят НАД белой карточкой,
   кнопки навигаторов и реквизитов идут парой в ряд.
   Только ≤767: десктоп не трогаем.
   ============================================================ */
@media (max-width: 767px) {
  /* 1. Лида под H1 в макете нет: на телефоне сразу карточка контактов.
     Текст остаётся в разметке — на десктопе и в выдаче он нужен. */
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-page-hero .contact-hero-copy .lead {
    display: none;
  }

  /* 2. Надзаголовок выходит из карточки наверх. Разметкой его не поднять,
     не переписав десктопную сетку панели, поэтому он выводится из потока
     и встаёт над ней, а панель освобождает под него место сверху. */
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .map-panel,
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-requisites {
    position: relative;
    margin-top: 28px;
    overflow: visible;
  }

  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .map-panel-copy > .eyebrow,
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-requisites-head > .eyebrow {
    position: absolute;
    top: -28px;
    left: 0;
    margin: 0;
  }

  /* Заголовок панели остаётся первой строкой внутри карточки */
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .map-panel-copy > h2,
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-requisites-head > h2 {
    margin-top: 0;
  }

  /* 3. Кнопки навигаторов и реквизитов — парой в ряд (в макете обе
     карточки заканчиваются такой парой) */
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .map-route-buttons,
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-requisites-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-map-section .map-route-button,
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-requisites-actions .requisites-action {
    width: 100%;
    min-height: var(--tap-min);
    max-height: none;
    gap: 8px;
    padding-inline: 10px;
    justify-content: center;
    text-align: center;
  }

  /* В паре помещается только короткая подпись — длинная остаётся десктопу */
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .map-route-label,
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .requisites-action-label {
    display: none;
  }

  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .map-route-label--short,
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .requisites-action-label--short {
    display: inline;
    font-size: 13px;
    line-height: 1.2;
    white-space: nowrap;
  }
}

/* 320–360: в паре кнопки по 114–134px, и «Все реквизиты» пересекали рамку
   (+29px при 320) — кнопки идут колонкой, подпись может переноситься
   (аудит 16.09.2026) */
@media (max-width: 360px) {
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .requisites-action-label--short {
    white-space: normal;
  }

  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-requisites-actions {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Короткие подписи — только для телефона */
@media (min-width: 768px) {
  body:not(.admin-body).pages.contacts .map-route-label--short,
  body:not(.admin-body).pages.contacts .requisites-action-label--short {
    display: none;
  }
}

/* Единое правило мобильного H1 (разбор 26.08.2026): 26px, интерлиньяж 1.16,
   разрядка -0.03em. При прежних кеглях слово «электрооборудование» рвалось
   пополам на Главной, а «Каталог» разрывал слово при 320. */
@media (max-width: 430px) {
  body:not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body):not(.admin-body).pages.contacts .contact-page-hero h1 {
    font-size: 26px;
    line-height: 1.16;
    letter-spacing: -0.03em;
  }
}

/* Второстепенный текст «Контактов» в одном наборе высот (разбор
   26.08.2026: 13/18.2, 14/19.6, 14/20.3 и 16/22 различить на глаз
   невозможно, а правил четыре) */
body:not(.admin-body).pages.contacts.contacts.contacts .map-route-hint {
  font-size: 13px;
  line-height: 18px;
}

body:not(.admin-body).pages.contacts.contacts.contacts .contact-link-card p {
  font-size: 14px;
  line-height: 1.5;
}

/* Подпись карточки — по шкале H3, она и работает заголовком */
body:not(.admin-body).pages.contacts.contacts.contacts .contact-card-title {
  font-size: 17px;
  line-height: 22.1px;
}

/* Та же граница строки в лиде, что на «О компании» и «Наличии» — 60ch */
body:not(.admin-body).pages.contacts.contacts.contacts .contact-hero-copy .lead,
body:not(.admin-body).pages.contacts.contacts.contacts .contact-page-hero .lead {
  max-width: 60ch;
}

/* Карточка «Связаться с нами» заканчивается вровень с плашками слева
   (просьба 28.08.2026): паддинг, зазоры и внутренние отступы поджаты */
@media (min-width: 1024px) {
  body:not(.admin-body).pages.contacts.contacts.contacts .contact-compact.contact-hero-card {
    gap: 4px;
    padding: 10px 16px;
  }

  body:not(.admin-body).pages.contacts.contacts.contacts .contact-hero-card .contact-line-hours {
    line-height: 1.25;
  }

  body:not(.admin-body).pages.contacts.contacts.contacts .contact-hero-card .contact-card-split {
    padding-top: 4px;
  }

  body:not(.admin-body).pages.contacts.contacts.contacts .contact-hero-card .contact-line--phone {
    min-height: 40px;
  }

  body:not(.admin-body).pages.contacts.contacts.contacts .contact-hero-card .contact-hero-cta {
    margin-top: 0;
    min-height: 48px;
  }

  /* Значки в карточке 36 вместо 44: они задавали высоту строк, а карточка
     должна заканчиваться вровень с плашками слева */
  body:not(.admin-body).pages.contacts.contacts.contacts.contacts .contact-hero-card .contact-line .icon-badge--sm,
  body:not(.admin-body).pages.contacts.contacts.contacts.contacts .contact-hero-card .contact-line .icon-badge {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
  }
}

/* Одна высота у вспомогательных кнопок: 46 и 42 давали на одной ширине
   пять разных высот управления (прогон мобильной версии 26.08.2026).
   Кнопка копирования почты остаётся 28 по виду — зона нажатия у неё 44. */
body:not(.admin-body).pages.contacts.contacts.contacts .map-route-button,
body:not(.admin-body).pages.contacts.contacts.contacts .map-load,
body:not(.admin-body).pages.contacts.contacts.contacts .requisites-action {
  min-height: 48px;
}
