/* ============================================================
   ШАПКА - ПОЛНЫЙ АДАПТИВ ПОД ВСЕ БРАУЗЕРЫ И ЭКРАНЫ
   Версия 2026-06-14 v3 - фикс перекрытия "Контакты" телефоном
   Применяется поверх layout.css. Не править исходник.
   ============================================================ */

/* --- БАЗА: ширина >= 1400px (десктоп с полным меню) --- */

.header-row {
  display: flex !important;
  align-items: center;
  gap: 10px;
  flex-wrap: nowrap;
  width: 100%;
  min-width: 0;
}

/* Логотип-плашка: не сжимается */
.header-row .brand {
  flex: 0 0 auto;
  padding: 12px 18px 12px 14px;
}

/* Навигация - резиновая, но без overflow:hidden (он обрезал «Контакты») */
.header-row .nav {
  flex: 1 1 auto;
  min-width: 0;
  padding: 12px 14px;
  overflow: visible;
}

.header-row .nav ul {
  display: flex !important;
  flex-wrap: nowrap;
  gap: 14px;
  justify-content: space-between;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  align-items: center;
}

.header-row .nav a {
  white-space: nowrap;
  font-size: 14px;
  padding: 4px 2px;
}

/* Правый блок: телефон + кнопка - не сжимаются */
.header-row .phone-ico,
.header-row .header-phone,
.header-row .btn-primary {
  flex: 0 0 auto;
}

/* --- 1600-1750px: чуть жмём шрифт меню --- */
@media (max-width: 1750px) {
  .header-row .nav ul { gap: 12px; }
  .header-row .nav a { font-size: 13.5px; }
}

/* --- 1400-1600px: уплотняем правый блок и меню --- */
@media (max-width: 1600px) {
  .header-row { gap: 8px; }
  .header-row .nav { padding: 10px 12px; }
  .header-row .nav ul { gap: 10px; }
  .header-row .nav a { font-size: 13px; }
  .header-row .header-phone { padding: 10px 14px; }
  .header-row .header-phone .num { font-size: 15px; }
  .header-row .header-phone .schedule { font-size: 12px; }
  .header-row .phone-ico { width: 52px; height: 52px; }
  .header-row .btn-primary { padding: 12px 16px; font-size: 13px; }
}

/* --- 1280-1400px: ещё компактнее, label у лого скрыт --- */
@media (max-width: 1400px) {
  .header-row .nav { padding: 8px 10px; }
  .header-row .nav ul { gap: 8px; }
  .header-row .nav a { font-size: 12.5px; }
  .header-row .brand { padding: 10px 12px 10px 10px; gap: 10px; }
  .header-row .brand-logo { width: 38px !important; height: 38px !important; }
  .header-row .brand-text .name,
  .header-row .brand-text .sub { font-size: 13px; }
  .header-row .brand-text .label { display: none; }
  .header-row .header-phone { padding: 8px 12px; }
  .header-row .header-phone .num { font-size: 14px; }
  .header-row .header-phone .schedule { font-size: 11px; }
  .header-row .phone-ico { width: 46px; height: 46px; }
  .header-row .btn-primary { padding: 10px 14px; font-size: 12.5px; }
}

/* --- 1100-1280px: меню скрываем, показываем бургер --- */
@media (max-width: 1280px) {
  .header-row .nav { display: none !important; }
  .m-burger { display: inline-flex !important; }
  .header-row .brand-text .label { display: block; }
  .header-row > .brand { margin-right: auto; }
}

/* --- 900-1100px: уменьшаем плашку телефона --- */
@media (max-width: 1100px) {
  .header-row .header-phone { padding: 8px 14px; }
  .header-row .header-phone .num { font-size: 14px; }
  .header-row .header-phone .schedule { font-size: 11px; }
  .header-row .phone-ico { width: 44px; height: 44px; }
  .header-row .btn-primary { padding: 10px 14px; font-size: 12px; }
}

/* --- 760-900px: сворачиваем расписание --- */
@media (max-width: 900px) {
  .header-row .header-phone .schedule { display: none; }
  .header-row .header-phone .num { font-size: 13px; }
  .header-row .brand-text .label { display: none; }
}

/* --- 560-760px: компактный режим --- */
@media (max-width: 760px) {
  .header-row { gap: 6px; padding: 8px 0; }
  .header-row .brand { padding: 8px 10px; gap: 8px; }
  .header-row .brand-logo { width: 32px !important; height: 32px !important; }
  .header-row .brand-text .name,
  .header-row .brand-text .sub { font-size: 12px; }
  .header-row .header-phone { padding: 6px 10px; }
  .header-row .phone-ico { display: none; }
}

/* --- меньше 560px: микро-режим --- */
@media (max-width: 560px) {
  .header-row .brand-text { display: none !important; }
  .header-row .brand { padding: 6px 8px; }
  .header-row .brand-logo { width: 28px !important; height: 28px !important; }
  .header-row .header-phone .num { font-size: 12px !important; }
}

/* --- меньше 380px (узкие телефоны) --- */
@media (max-width: 380px) {
  .header-row { gap: 4px; }
  .header-row .brand { padding: 4px 6px; }
  .header-row .header-phone { padding: 4px 8px; }
  .header-row .header-phone .num { font-size: 11px !important; }
  .header-row .btn-primary {
    width: 36px !important; height: 36px !important;
    min-width: 36px !important;
  }
  .m-burger { width: 36px !important; height: 36px !important; }
}
