/* ============================================================
   МОБИЛЬНАЯ ШАПКА для НОВОЙ версии (флаг ?newmobile=1).
   Только узкий экран (<=991px). Десктоп не затронут (@media).
   Первый проход: компактная строка + спрятать тесную полосу филиалов.
   ============================================================ */
@media (max-width: 991px) {
    /* зелёная полоса филиалов: 3 адреса в строку не влезают.
       Прячем — адреса есть в нижней панели и на /contacts/. */
    .lot-sticky-header .top-stores { display: block !important; }

    /* компактная строка: бургер слева, логотип по центру */
    .lot-sticky-header .navbar-top { background: #fff !important; margin: 0 !important; border-bottom: 1px solid #e8eaed; }
    .lot-sticky-header .navbar-top > .container { padding: 0 10px !important; }
    .lot-sticky-header .navbar-header { position: relative !important; display: flex !important; align-items: center !important; min-height: 54px !important; }
    .lot-sticky-header .navbar-toggle { margin: 0 !important; padding: 8px 6px !important; float: none !important; border: 0 !important; background: transparent !important; }
    .lot-sticky-header .navbar-toggle .icon-bar { background: #304351 !important; width: 24px !important; height: 3px !important; }
    .lot-sticky-header .navbar-brand { position: absolute !important; left: 50% !important; transform: translateX(-50%) !important; padding: 0 !important; margin: 0 !important; height: auto !important; }
    .lot-sticky-header .navbar-brand img { height: 36px !important; width: auto !important; }
}

/* ── Меню в бургере = вертикальный АККОРДЕОН (мобилка) ── */
@media (max-width: 991px) {
    .lot-sticky-header .navbar-nav-menu { float:none !important; margin:0 !important; width:100% !important; }
    .lot-sticky-header .navbar-nav-menu > li { float:none !important; display:block !important; position:static !important; border-bottom:1px solid #eef0f2 !important; }
    .lot-sticky-header .navbar-nav-menu > li > a { display:block !important; padding:15px 16px !important; font-size:16px !important; color:#243 !important; }
    .lot-sticky-header .navbar-nav-menu > li > a .menu-caret { float:right !important; transition:transform .2s !important; display:inline-block !important; opacity:.6; }
    .lot-sticky-header .navbar-nav-menu > li.lot-open > a { color:#0a8a48 !important; font-weight:700 !important; }
    .lot-sticky-header .navbar-nav-menu > li.lot-open > a .menu-caret { transform:rotate(180deg) !important; opacity:1; color:#0a8a48 !important; }
    .lot-sticky-header .navbar-nav-menu > li > ul { display:none !important; position:static !important; float:none !important; background:#f6f8f9 !important; box-shadow:none !important; border:0 !important; width:auto !important; min-width:0 !important; padding:0 !important; }
    .lot-sticky-header .navbar-nav-menu > li.lot-open > ul { display:block !important; }
    .lot-sticky-header .navbar-nav-menu > li > ul > li { float:none !important; display:block !important; border-bottom:1px solid #eef0f2 !important; }
    .lot-sticky-header .navbar-nav-menu > li > ul > li > a { display:block !important; padding:12px 16px 12px 32px !important; font-size:15px !important; color:#3a4a55 !important; }
}

/* фикс ширины меню в бургере: убрать flex, подменю на всю ширину */
@media (max-width: 991px) {
    .lot-sticky-header .navbar-nav-menu { display: block !important; }
    .lot-sticky-header .navbar-nav-menu > li > ul { width: 100% !important; min-width: 100% !important; left: 0 !important; }
}

/* Филиалы на мобилке: адреса в столбик, время по центру. Бургер — отступ слева. */
@media (max-width: 991px) {
    .lot-sticky-header .top-stores > .container { display: block !important; padding: 8px 14px !important; }
    .lot-sticky-header .top-stores__item { display: block !important; padding: 3px 0 !important; font-size: 13px !important; line-height: 1.4 !important; }
    .lot-sticky-header .top-stores__hours { display: block !important; text-align: center !important; margin-top: 6px !important; padding-top: 6px !important; border-top: 1px solid rgba(255,255,255,.28) !important; font-size: 12px !important; }
    .lot-sticky-header .navbar-toggle { margin-left: 8px !important; }
}

/* Ротатор «Акция»: воздух. Карусель: видимые стрелки для тапа. */
@media (max-width: 991px) {
    .lot-rotator { padding: 12px 0 !important; }
    .lot-rotator > .container { padding-left: 16px !important; padding-right: 16px !important; }

    #carousel .carousel-control { display: flex !important; align-items: center !important; justify-content: center !important; width: 42px !important; opacity: .92 !important; background: rgba(0,0,0,.18) !important; text-shadow: none !important; }
    #carousel .carousel-control.left { border-radius: 0 6px 6px 0; }
    #carousel .carousel-control.right { border-radius: 6px 0 0 6px; }
    #carousel .carousel-control .glyphicon { font-size: 22px !important; color: #fff !important; }
}

/* Карусель: один баннер на всю ширину (а не два рядом) */
@media (max-width: 991px) {
    #carousel .carousel-inner.sale-block { display: block !important; }
    #carousel .carousel-inner .item { display: none !important; width: 100% !important; float: none !important; }
    #carousel .carousel-inner .item.active { display: block !important; }
    #carousel .carousel-inner .item img { width: 100% !important; height: auto !important; }
}

/* Убрать дублирующий список «Каталог товаров» (есть нижняя кнопка + бургер + плитки) */
@media (max-width: 991px) {
    .col-md-pull-9 .catalog-menu { display: none !important; }
}
/* Выровнять «Найти строителя» под ширину баннеров + ровные зазоры (как на легаси) */
@media (max-width: 991px) {
    .features-index .catalog-team { margin-left: 10px !important; margin-right: 10px !important; }
    .features-index .col-md-3 { margin-bottom: 10px !important; }
    .features-index .col-md-9 .col-md-6 { margin-bottom: 10px !important; }
    .features-index .col-md-9 .col-md-6:last-child { margin-bottom: 0 !important; }
}

/* Поиск — наверх бургер-меню (а не в самый низ к филиалам), на всю ширину */
@media (max-width: 991px) {
    .lot-sticky-header #navbar.in { display: flex !important; flex-direction: column !important; }
    .lot-sticky-header #navbar .header-info-row { order: 1 !important; padding: 12px 14px !important; margin: 0 !important; }
    .lot-sticky-header #navbar .navbar-nav-menu { order: 2 !important; }
    .lot-sticky-header #navbar .header-slogan { display: none !important; }
    .lot-sticky-header #navbar .header-search-wrap { width: 100% !important; padding: 0 !important; }
    .lot-sticky-header #navbar .header-search-wrap .search-form,
    .lot-sticky-header #navbar .header-search-wrap form { width: 100% !important; display: flex !important; gap: 0 !important; position: relative !important; }
    .lot-sticky-header #navbar .header-search-wrap input[type="text"],
    .lot-sticky-header #navbar .header-search-wrap input[name="q"] { width: 100% !important; padding: 12px 44px 12px 14px !important; border: 1px solid #d7dbe0 !important; border-radius: 8px !important; font-size: 16px !important; height: auto !important; }
}

/* ── ЛЁГКАЯ мобильная главная: плитки каталога — звезда ──
   Убрать промо-карусель и второстепенные блоки, чтобы плитки встали
   сразу под ротатор. Ротатор и время работы оставляем. */
@media (max-width: 991px) {
    #carousel { display: none !important; }
    .features-section, .features-index { display: none !important; }
}

/* Пока бургер-меню открыто — полосу филиалов прячем (внутри меню она лишняя и наезжает на «Контакты») */
@media (max-width: 991px) {
    .lot-sticky-header:has(#navbar.collapsing) .top-stores,
    .lot-sticky-header:has(#navbar.in) .top-stores { display: none !important; }
}

/* Поиск убран с мобилки (мешал) */
@media (max-width: 991px) {
    .lot-sticky-header #navbar .header-info-row { display: none !important; }
}

/* ── Меню = выезжающая ПАНЕЛЬ поверх контента (не двигает страницу) ──
   Лечит корявую перерисовку/наложение от бутстрап-аккордеона по высоте. */
@media (max-width: 991px) {
    .lot-sticky-header #navbar.in {
        position: fixed !important;
        top: 55px !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
        display: block !important;
        width: auto !important; height: auto !important; max-height: none !important;
        background: #fff !important;
        z-index: 1100 !important;
        overflow-y: auto !important;
        margin: 0 !important; padding: 0 0 24px 0 !important;
        box-shadow: none !important; border: 0 !important;
        -webkit-overflow-scrolling: touch;
    }
    /* во время сворачивания Bootstrap анимирует высоту — гасим прыжок */
    .lot-sticky-header #navbar.collapsing { height: auto !important; transition: none !important; }
}

/* Убрать transition:all с меню — иначе панель «съезжает» при открытии (анимация позиции) */
@media (max-width: 991px) {
    .lot-sticky-header #navbar,
    .lot-sticky-header .navbar-nav-menu,
    .lot-sticky-header .navbar-nav-menu > li { transition: none !important; }
}

/* Панель fixed уже в момент открытия (.collapsing), а не только .in — иначе «съезд влево» */
@media (max-width: 991px) {
    .lot-sticky-header #navbar.collapsing {
        position: fixed !important;
        top: 55px !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
        display: block !important;
        width: auto !important; height: auto !important; max-height: none !important;
        background: #fff !important;
        z-index: 1100 !important;
        overflow: hidden !important;
        margin: 0 !important;
    }
}

/* Оставляем отступ 15px по бокам и при .collapsing, и при .in — позиция одинаковая (нет съезда) + нравится отступ */
@media (max-width: 991px) {
    .lot-sticky-header #navbar.in,
    .lot-sticky-header #navbar.collapsing { padding-left: 15px !important; padding-right: 15px !important; }
}

/* Пункты меню: убрать залипающий тёмный hover-фон и лаг перекрашивания (тач) */
@media (max-width: 991px) {
    .lot-sticky-header .navbar-nav-menu > li > a { transition: none !important; -webkit-tap-highlight-color: transparent !important; }
    .lot-sticky-header .navbar-nav-menu > li > a:hover,
    .lot-sticky-header .navbar-nav-menu > li > a:focus,
    .lot-sticky-header .navbar-nav-menu > li > a:active { background: transparent !important; background-color: transparent !important; }
}

/* Убить десктопный тёмный градиент-hover на пунктах меню (на тач он залипает) — выше специфичность */
@media (max-width: 991px) {
    .lot-sticky-header .navbar-top .navbar-nav > li > a,
    .lot-sticky-header .navbar-top .navbar-nav > li > a:hover,
    .lot-sticky-header .navbar-top .navbar-nav > li > a:focus,
    .lot-sticky-header .navbar-top .navbar-nav > li > a:active { background: none !important; transition: none !important; }
    .lot-sticky-header .navbar-top .navbar-nav > li > a:hover,
    .lot-sticky-header .navbar-top .navbar-nav > li > a:focus { color: #243 !important; }
    .lot-sticky-header .navbar-top .navbar-nav > li.lot-open > a { color: #0a8a48 !important; }
}

/* Возвращаем фирменный зелёный ПРАВИЛЬНО под тач: на нажатии (:active) и на открытом разделе (.lot-open),
   но НЕ на :hover (он залипал). Мгновенно, белый текст. */
@media (max-width: 991px) {
    .lot-sticky-header .navbar-top .navbar-nav > li > a:active,
    .lot-sticky-header .navbar-top .navbar-nav > li.lot-open > a {
        background: linear-gradient(145deg, #1d3d37 0%, #244b43 52%, #2b5850 100%) !important;
        color: #fff !important;
        transition: none !important;
    }
    .lot-sticky-header .navbar-top .navbar-nav > li.lot-open > a .menu-caret { color: #fff !important; opacity: 1 !important; }
}

/* Зелёный (выше специфичность — с #navbar, чтобы перебить десктопное #304351): нажатие + открытый раздел */
@media (max-width: 991px) {
    .lot-sticky-header #navbar .navbar-nav-menu > li > a:active,
    .lot-sticky-header #navbar .navbar-nav-menu > li.lot-open > a {
        background: linear-gradient(145deg, #1d3d37 0%, #244b43 52%, #2b5850 100%) !important;
        color: #fff !important;
        transition: none !important;
    }
    .lot-sticky-header #navbar .navbar-nav-menu > li.lot-open > a .menu-caret { color: #fff !important; opacity: 1 !important; }
}

/* Стрелочки-карет ▾ — фирменный оранжевый (на открытом разделе JS делает их белыми) */
@media (max-width: 991px) {
    .lot-sticky-header #navbar .navbar-nav-menu .menu-caret { color: #ff5a1f !important; opacity: 1 !important; }
}

/* iOS safe-area: зелёная нижняя панель до самого низа (не «висит») + запас контенту снизу */
@media (max-width: 991px) {
    .mobile-fixed { padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important; }
    body { padding-bottom: calc(70px + env(safe-area-inset-bottom, 0px)) !important; }
}
/* Открытое меню: блокируем прокрутку фона (чтобы страница не листалась под панелью) */
@media (max-width: 991px) {
    html:has(.lot-sticky-header #navbar.in),
    body:has(.lot-sticky-header #navbar.in) { overflow: hidden !important; }
    /* фоллбэк для старого iOS Safari (<15.4) без :has() — класс вешает JS */
    html.lot-menu-open, body.lot-menu-open { overflow: hidden !important; }
    .lot-sticky-header #navbar.in { overscroll-behavior: contain !important; }
}

/* Каретка ▾ как на десктопе: всегда оранжевая, БЕЗ поворота (даже на открытом разделе) */
@media (max-width: 991px) {
    .lot-sticky-header #navbar .navbar-nav-menu .menu-caret,
    .lot-sticky-header #navbar .navbar-nav-menu > li.lot-open > a .menu-caret {
        color: #ff5a1f !important;
        opacity: 1 !important;
        transform: none !important;
    }
}

/* Заголовок внутренних страниц (корзина и т.п.) был приклеен к зелёной полосе —
   даём воздух сверху на мобилке */
@media (max-width: 991px) {
    .page-inner .page-heading { margin-top: 20px !important; }
}
