/*
Theme Name: Theme Child
Template: theme
Version: 1.0.0
Description: Дочерняя тема для baby-trend.ru. Все кастомные правки CSS и PHP — только здесь.
Author: Baby Trend
*/

/* === Логотип: белый на тёмной шапке, оригинальный на светлой === */
#header a.logo__holder img.logo {
    filter: brightness(0) invert(1);
    transition: filter .3s ease;
    max-width: 100px !important;
    min-width: auto !important;
    padding: 4px !important;
}

/* === Пункты меню: белые на тёмной шапке, тёмные на светлой === */
#header:not(.painted) .menu-search-wrapper .menu__holder li a,
#header:not(.painted) .menu-search-wrapper .menu__holder li > a {
    color: #fff !important;
    transition: color .3s ease, opacity .2s ease;
}
#header:not(.painted) .menu-search-wrapper .menu__holder li a:hover {
    color: #fff !important;
    opacity: .75;
}
#header.painted .menu-search-wrapper .menu__holder li a,
#header.painted .menu-search-wrapper .menu__holder li > a {
    color: #1a1a1a !important;
    transition: color .3s ease;
}
#header.painted .menu-search-wrapper .menu__holder li a:hover {
    color: #00695c !important;
}

/* === Улучшение блоков категорий в шапке === */
#header .topmenucats .nav-menu-element {
    border: 1.5px solid #e0e0e0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    border-radius: 12px;
}

#header .topmenucats .nav-menu-element:hover {
    background: #fff;
    transform: translateY(-3px);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.11);
    border-color: #c8e6b0;
}

#header .topmenucats .nav-menu-element a {
    color: #444;
    font-weight: 600;
}

#header .topmenucats .nav-menu-element:hover a {
    color: #3a7d1e;
}

/* === Улучшение шапки: группировка контактов и кнопок === */

/* Главный flex-ряд шапки: больше отступов между секциями */
#header > .container {
    gap: 32px;
    align-items: center;
    padding: 12px 20px;
}

/* Поиск + меню занимают оставшееся место */
#header .menu-search-wrapper {
    flex: 1;
    min-width: 0;
}

/* Правый блок: контакты + кнопки — единый flex-столбик */
.container-contacts {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
    flex-shrink: 0;
}

/* Полоска контактов: убираем серый фон и фиксированную высоту */
#header .container.topline {
    background: transparent;
    height: auto;
    padding: 0;
    width: auto;
    max-width: none;
    gap: 18px;
    justify-content: flex-end;
}

/* Внутренний контейнер topline — не растягиваться на всю ширину */
#header .container.topline > .container {
    width: auto;
    max-width: none;
    padding: 0;
    gap: 18px;
    justify-content: flex-end;
}

/* Кнопки в ряд с нормальным зазором */
.phone-info-wrapper {
    display: flex;
    align-items: center;
}

.button-holder-header {
    gap: 10px;
}

/* Убираем избыточный margin у кнопок */
.button-holder-header .btn {
    width: 148px;
    font-size: 15px;
}

/* Кнопка "Получить прайс" — цвет в стиле Сотрудничество */
.button-holder-header .blue-btn {
    background: linear-gradient(135deg,#00695c,#00897b) !important;
    border-color: #00695c !important;
}
.button-holder-header .blue-btn:hover {
    background: linear-gradient(135deg,#004d40,#00695c) !important;
    border-color: #004d40 !important;
}

/* Цена товара — единый бирюзово-зелёный цвет */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.right-side .price,
.right-side .price-pack,
.woocommerce ul.products li.product .price,
.woocommerce-Price-amount.amount bdi,
.woocommerce-Price-amount.amount .rur,
.woocommerce-Price-amount.amount {
    color: #00695c !important;
}

/* WhatsApp кнопка в шапке — синий стиль */
#header .whatsapp {
    background: url('/wp-content/themes/theme-child/assets/images/whatsapp-custom.svg') no-repeat center center !important;
    background-size: contain !important;
    width: 36px !important;
    height: 36px !important;
}

/* ===== Шапка — контакты в одну строку ===== */

/* Скрываем старые блоки */
#header .container.topline { display:none !important; }
#header .phone-info-wrapper { display:none !important; }

/* Контейнер контактов — убираем ограничение ширины */
#header .container-contacts {
    width: auto !important;
    max-width: none !important;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
}

/* Блок контактов в одну строку */
.bt-header-contacts {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}
.bt-header-contacts .email a,
.bt-header-contacts .phone > a {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    color: #3eb133;
    font-weight: 500;
    white-space: nowrap;
    text-decoration: none;
}
.bt-header-contacts .phone {
    display: flex;
    align-items: center;
    gap: 8px;
}
.bt-header-divider {
    width: 1px;
    height: 22px;
    background: #e0e0e0;
    flex-shrink: 0;
}
.bt-header-contacts .blue-btn {
    padding: 8px 16px !important;
    font-size: 13px !important;
    height: auto !important;
    white-space: nowrap;
    flex-shrink: 0;
}

/* ── Единый pill-стиль кнопки «Получить прайс» — все 3 места ── */

/* Иконка-кружок внутри pill */
.bpp-ico {
    width: 32px; height: 32px; border-radius: 50%;
    background: rgba(255,255,255,.2);
    display: inline-flex; align-items: center; justify-content: center;
    flex-shrink: 0; margin-right: 8px;
}
.bpp-txt { padding-right: 14px; }

/* 1. Шапка */
.bt-search-price {
    height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 6px !important;
    gap: 0 !important;
    font-size: 14px !important;
    white-space: nowrap !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg,#00695c,#00897b) !important;
    color: #fff !important;
    font-weight: 700 !important;
    border: none !important;
    cursor: pointer !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    box-shadow: 0 4px 18px rgba(0,137,123,.3) !important;
    transition: box-shadow .2s, transform .15s !important;
}
.bt-search-price:hover {
    opacity: 1 !important;
    box-shadow: 0 6px 24px rgba(0,137,123,.45) !important;
    transform: translateY(-1px) !important;
}

/* Скрытый MagnificPopup триггер */
.bt-zayvka-trigger {
    position: absolute !important;
    left: -9999px !important;
    top: 0 !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/* Убираем старую кнопку */
#header .container-contacts .blue-btn,
#header .phone-info-wrapper { display: none !important; }

/* ===== ТОЛЬКО ДЕСКТОП (≥1026px): Grid-сетка шапки ===== */
@media (min-width: 1026px) {

    /* Внешняя сетка: row1=44px (меню/контакты), row2=44px (поиск/кнопка) */
    #header .container.bt-header-grid {
        display: grid !important;
        grid-template-columns: auto 1fr auto auto !important;
        grid-template-rows: 44px 44px !important;
        column-gap: 20px !important;
        row-gap: 0 !important;
        align-items: center !important;
        padding: 8px 20px !important;
        max-width: 1230px;
        margin: 0 auto;
        box-sizing: border-box;
    }

    /* Логотип — обе строки, по центру */
    .bt-grid-logo {
        grid-column: 1 !important;
        grid-row: 1 / 3 !important;
        align-self: center !important;
    }

    /* Контакты — строка 2, кол 3-4 */
    .bt-grid-contacts {
        grid-column: 3 / 5 !important;
        grid-row: 2 !important;
        align-self: center !important;
        width: auto !important;
        max-width: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
    }

    /* Бургер — строка 2 (скрыт на десктопе) */
    .bt-grid-burger {
        grid-column: 4 !important;
        grid-row: 2 !important;
        align-self: center !important;
    }

    /* Меню + поиск — кол 2, строки 1-2: обе строки 44px = outer grid */
    .menu-search-wrapper.bt-grid-menu {
        grid-column: 2 !important;
        grid-row: 1 / 3 !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: 44px 44px !important;
        row-gap: 0 !important;
        align-items: start !important;
        flex: none !important;
        min-width: 0 !important;
    }
    .menu-search-wrapper.bt-grid-menu > ul.menu__holder {
        grid-column: 1 !important;
        grid-row: 1 !important;
        height: 44px !important;
        display: flex !important;
        align-items: center !important;
    }
    .menu-search-wrapper.bt-grid-menu > .dgwt-wcas-search-wrapp {
        grid-column: 1 !important;
        grid-row: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    /* WB + OZON + Кнопка — строка 1, кол 3-4 */
    .bt-price-wrapper {
        grid-column: 3 / 5 !important;
        grid-row: 1 !important;
        align-self: center !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 8px !important;
        padding: 0 !important;
        height: 44px !important;
    }
    #header .bt-price-wrapper .bt-search-price {
        flex: 1 !important;
        width: auto !important;
        display: flex !important;
        justify-content: center !important;
    }

    /* Пункты меню: равномерно на всю ширину */
    #header .menu-search-wrapper #menu-glavnoe.menu__holder {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        column-gap: 16px !important;
        width: 100% !important;
        margin: 0 !important;
    }
    #header .menu-search-wrapper #menu-glavnoe.menu__holder > li {
        flex: 0 0 auto !important;
    }

    /* Высота поля поиска = высоте кнопки (44px) — все уровни вложенности fibosearch */
    #header .menu-search-wrapper .dgwt-wcas-search-wrapp,
    #header .menu-search-wrapper .dgwt-wcas-search-form-wrapp,
    #header .menu-search-wrapper .dgwt-wcas-search-form,
    #header .menu-search-wrapper .dgwt-wcas-sf-wrapp,
    #header .menu-search-wrapper .dgwt-wcas-search-input,
    #header .menu-search-wrapper .dgwt-wcas-search-submit {
        height: 44px !important;
        box-sizing: border-box !important;
    }

    /* Email скрывается при 1026–1100px */
    @media (max-width: 1100px) {
        .bt-header-contacts .email,
        .bt-header-contacts .bt-header-divider:first-child { display: none !important; }
    }
}

/* ===== МОБИЛЬНЫЙ/ПЛАНШЕТ (<1026px): кнопка прайса скрыта, тема управляет шапкой ===== */
@media (max-width: 1025px) {
    .bt-price-wrapper { display: none !important; }
}

/* two-office fix */
.subfooter{min-height:0}
.subfooter .contacts-block{position:relative !important;top:auto !important;left:auto !important;transform:none !important;width:88% !important;max-width:960px !important;z-index:auto !important;margin:0 auto}
.subfooter .contacts-block-wrpr{padding:20px 24px}.subfooter iframe{display:block;margin-top:0}
.subfooter .contacts-block-wrpr .hdr{margin-bottom:8px}
.subfooter .contacts-block-wrpr .dscr{margin-bottom:5px}
.subfooter .contacts-block-wrpr .mpopup_div{margin-top:10px;margin-bottom:5px}

/* callback button in contacts block */
.contacts-block--two .btn.mpopup_div{background:linear-gradient(135deg,#00695c,#00897b) !important;color:#fff !important;border:none !important;border-radius:8px !important;padding:10px 22px !important;font-weight:600 !important;font-size:14px !important}
.contacts-block--two .btn.mpopup_div:hover{opacity:.88 !important}

/* contacts block variant A dark premium */
.contacts-block--two{background:linear-gradient(135deg,#004d40,#00695c) !important}
.contacts-block--two .contacts-block-wrpr{background:linear-gradient(135deg,#00574f,#006e61) !important;border:1px solid rgba(167,222,96,.3) !important;box-shadow:0 8px 32px rgba(0,40,30,.35)}
.contacts-block--two .hdr{color:#A7DE60 !important;font-size:18px !important;padding-bottom:10px !important;border-bottom:1px solid rgba(167,222,96,.3);margin-bottom:14px !important;text-align:center !important}
.contacts-block--two .cb-office-label{color:#A7DE60 !important}
.contacts-block--two .dscr{color:#e0f2f1 !important}
.contacts-block--two .dscr span{color:#fff !important}
.contacts-block--two .dscr a{color:#fff !important;font-weight:600 !important;text-decoration:none !important}
.contacts-block--two .dscr a:hover{color:#A7DE60 !important;text-decoration:underline !important}
.contacts-block--two .cb-divider{background:rgba(167,222,96,.25) !important}
.contacts-block--two .btn.mpopup_div{background:#fff !important;color:#004d40 !important;font-weight:700 !important;display:inline-block !important;width:auto !important;min-width:200px;border:2px solid #fff !important;box-shadow:0 4px 18px rgba(0,0,0,.2) !important;transition:background .2s,box-shadow .2s,transform .15s !important}
.contacts-block--two .btn.mpopup_div:hover{opacity:1 !important;background:#f0faf8 !important;box-shadow:0 6px 24px rgba(0,0,0,.3) !important;transform:translateY(-2px) !important}

/* ═══ ФИКС 1: одиночная НОВОСТЬ — клиренс заголовка под фикс-шапку ═══ */
/* Новости идут в fallback-макет (не «akczii-i-skidki») → своего отступа не имели */
/* Десктоп+планшет: полная шапка с чипами ~165px → 170px. Моб ≤767: бургер-шапка → 150px (как shop в mobile.css). */
body.single-post #primary { padding-top:170px !important; }
@media (max-width:767px) { body.single-post #primary { padding-top:150px !important; } }

/* ═══ ФИКС 1b: СИСТЕМНЫЙ клиренс контента под фикс-шапку (десктоп) ═══ */
/* Причина: parent theme/assets/css/main.css (грузится последней) задаёт
   body:not(.home) .site-main{ padding-top:100px !important } — калибровка под старую шапку.
   Новая фикс-шапка = 141px (146px в состоянии .painted при прокрутке) → заголовок страницы
   .page__title (сидит на y=100) уходил ПОД шапку на всех обычных страницах, CPT-архивах
   (/news/, /prodazha/, /rasprodazha/) и Политике. Точечные display:none лечили лишь часть.
   Клиренс поднимаем на КАЖДОМ брейкпоинте под реальную высоту шапки. Селектор main.site-main (0,2,2)
   перебивает parent .site-main (0,2,1)!important и на всех размерах. Кастом-герои (about/преимущества)
   свой отступ имеют и .site-main НЕ используют — их правки не затрагивают. */
@media (min-width: 1026px) {
    /* Десктоп: шапка 141px (146 painted). main.site-main ловит и #primary, и #main (поиск: main#main.site-main.search-page);
       .error-page — шаблон 404 (свой контейнер без .site-main, отступ был 0 → «404» обрезался шапкой). */
    body:not(.home) main.site-main,
    body:not(.home) main.error-page { padding-top: 170px !important; }
}
@media (min-width: 768px) and (max-width: 1025px) {
    /* Планшет: мобильная шапка 215–227px (parent давал 120px → заголовок под шапкой). */
    body:not(.home) main.site-main,
    body:not(.home) main.error-page { padding-top: 235px !important; }
}
@media (max-width: 767px) {
    /* Телефон: мобильная шапка 167–177px (parent давал 90px → заголовок под шапкой). */
    body:not(.home) main.site-main,
    body:not(.home) main.error-page { padding-top: 185px !important; }
}
/* Карточка ТОВАРА: parent WooCommerce-обёртка (woocommerce_before_main_content, активна только в
   single-product.php — в archive-product.php она закомментирована) кладёт ВЛОЖЕННЫЙ
   <main id="main" class="site-main"> внутрь theme <main id="primary" class="site-main"> → клиренс
   применялся ДВАЖДЫ (=340px, огромный разрыв перед крошками). Гасим клиренс у вложенного .site-main —
   отступ остаётся только на внешнем. Спецификой (0,2,3) без @media перебивает клиренс-правила на всех ширинах. */
body:not(.home) main.site-main main.site-main { padding-top: 0 !important; }

/* C5: замена «От 0 ₽/шт.» на нейтральный текст (см. woocommerce_get_price_html в functions.php) */
.bt-price-tbd { color:#888; font-weight:600; font-size:.95em; font-style:italic; }

/* Задача 9/10 (найдено live-аудитом getComputedStyle): родительская тема красит основные
   WooCommerce-кнопки, cookie-баннер и generic .btn (карточка товара «Купить оптом», логин
   my-account, кнопка cookie-баннера, CTA мобильного меню «Получить оптовый прайс») внедрённым
   не-фирменным светло-зелёным linear-gradient(98.02deg,#8cc63e,#28843c) — вместо фирменного тила.
   Селекторы скопированы 1:1 из parent theme/assets/css/main.css (те же правила, что реально
   матчатся — проверено через document.styleSheets/matches() в браузере, не угадано по grep).
   Модификаторы .btn-p/.btn-o/.btn-w/.btn.g на отдельных страницах уже переопределены выше по
   специфичности (некоторые уже в тил) — этот фикс их не задевает, работает только как fallback
   для «голого» .btn/.woocommerce .button без модификатора. */
.woocommerce ul.products li.product .button,
.woocommerce div.product form.cart .button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.cookie_accept,
.btn {
    background: linear-gradient(135deg, #00695c, #00897b) !important;
}

/* ═══ ФИКС 2: блок «Контакты» (subfooter) — сброс остаточной 2-колоночной раскладки ═══ */
.subfooter .contacts-block.contacts-block--two { display:block !important; float:none !important; }
.subfooter .contacts-block--two .contacts-block-wrpr {
    display:flex !important; flex-wrap:wrap !important; gap:24px !important;
    width:100% !important; max-width:none !important; margin:0 !important; box-sizing:border-box !important;
}
.subfooter .contacts-block--two .cb-office { flex:1 1 260px !important; min-width:0 !important; }
@media (max-width:768px){
    .subfooter .contacts-block--two .contacts-block-wrpr { flex-direction:column !important; gap:14px !important; align-items:stretch !important; }
    /* в колонку офисы НЕ растягиваем по высоте — натуральная высота, без пустых отступов */
    .subfooter .contacts-block--two .cb-office { flex:0 0 auto !important; }
    .subfooter .contacts-block--two .cb-divider { display:none !important; }
    .subfooter .contacts-block--two .btn.mpopup_div { width:100% !important; min-width:0 !important; }
}

/* ═══ ФИКС 3: одиночный пост — блок «Контакты» не наезжает на статью ═══ */
/* Причина: незакрытый float в контенте (фото обтекается текстом) → subfooter заезжает вверх.
   Решение: clearfix контента + clear:both на subfooter. */
body.single-post main#primary::after,
body.single-post .content.single-page::after,
body.single-post .sp-wrap::after { content:''; display:block; clear:both; }
body.single-post .subfooter { clear:both !important; margin-top:0 !important; padding-top:24px !important; }
body.single-post .subfooter .contacts-block.contacts-block--two { margin-top:0 !important; }

/* ═══ Чистый макет НОВОСТИ (single, не-акция): заголовок + фото/галерея + текст ═══ */
.np { max-width:800px; margin:0 auto; padding:26px 24px 44px; }
.np .np-crumb { font-size:12px; color:#9aa; margin-bottom:14px; }
.np .np-crumb a { color:#00897b; text-decoration:none; }
.np .np-meta { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.np .np-badge { background:#00897b; color:#fff; font-size:11px; font-weight:800; padding:3px 10px; border-radius:20px; }
.np .np-date { font-size:12.5px; color:#8aa39a; }
.np .np-title { font-size:27px; font-weight:900; color:#1b3a2d; line-height:1.25; margin:0 0 18px; }
/* обложка (1 фото) */
.np .np-cover { width:100%; border-radius:14px; overflow:hidden; background:#f4f8f6; margin-bottom:22px; }
.np .np-cover img { display:block; width:100%; height:auto; }
/* галерея (несколько фото): первое крупно, остальные плиткой */
.np .np-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:22px; }
.np .np-gallery .g { display:block; border-radius:12px; overflow:hidden; aspect-ratio:1/1; background:#eef4f1; }
.np .np-gallery .g img { width:100%; height:100%; object-fit:cover; display:block; }
.np .np-gallery .g.big { grid-column:span 2; grid-row:span 2; aspect-ratio:auto; }
.np .np-gallery.np-gal-2 { grid-template-columns:1fr 1fr; }
.np .np-gallery.np-gal-2 .g.big { grid-column:span 1; grid-row:span 1; }
@media (max-width:520px){
    .np .np-gallery { grid-template-columns:1fr 1fr; }
    .np .np-gallery .g.big { grid-column:span 2; grid-row:span 1; aspect-ratio:16/10; }
}
/* текст */
.np .np-body { font-size:15.5px; line-height:1.7; color:#2b3b34; }
.np .np-body p { margin:0 0 14px; }
.np .np-body img { max-width:100%; height:auto; border-radius:10px; margin:8px 0; }
.np .np-src { margin-top:22px; padding-top:16px; border-top:1px solid #eef2f0; font-size:14px; color:#556a62; }
.np .np-src a { color:#00897b; font-weight:700; text-decoration:none; }
.np .np-src a:hover { text-decoration:underline; }
.np .np-related { margin-top:22px; padding-top:16px; border-top:1px solid #eef2f0; }
.np .np-related-title { font-size:13px; font-weight:700; color:#556a62; margin:0 0 10px; }
.np .np-related-links { display:flex; flex-wrap:wrap; gap:8px; }
.np .np-related-links a { display:inline-block; padding:7px 14px; background:#f4f8f6; border-radius:16px; font-size:13px; color:#00695c; font-weight:600; text-decoration:none; transition:background .15s; }
.np .np-related-links a:hover { background:#e0f2f1; }
@media (max-width:600px){ .np { padding:20px 16px 36px; } .np .np-title { font-size:21px; } }

/* hide form-block section */
#form-block{display:none !important}

/* =====================================================
   АККОРДЕОН-МЕНЮ КАТЕГОРИЙ — ПОЛНЫЙ СБРОС СТИЛЕЙ ТЕМЫ
   ===================================================== */

/* Сбрасываем карточный вид темы для sidebar */
.sidebar .widget_nav_menu .nav-menu-element,
.wccategory .sidebar .widget_nav_menu .menu li,
.sidebar .widget_nav_menu .menu li {
    position: static !important;
    display: block !important;
    height: auto !important;
    max-width: none !important;
    width: auto !important;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    background: none !important;
    font-size: inherit !important;
    color: inherit !important;
}

/* Сбрасываем background-image nth-child стили темы */
.sidebar .widget_nav_menu .menu li:nth-child(1) a,
.sidebar .widget_nav_menu .menu li:nth-child(2) a,
.sidebar .widget_nav_menu .menu li:nth-child(3) a,
.sidebar .widget_nav_menu .menu li:nth-child(4) a,
.sidebar .widget_nav_menu .menu li:nth-child(5) a,
.sidebar .widget_nav_menu .menu li:nth-child(6) a,
.sidebar .widget_nav_menu .menu li:nth-child(7) a,
.sidebar .widget_nav_menu .menu li:nth-child(8) a {
    background-image: none !important;
    background: none !important;
}

/* Сбрасываем position:absolute на ссылках темы */
.sidebar .widget_nav_menu .menu li a,
.sidebar .widget_nav_menu .menu li > a {
    position: static !important;
    display: flex !important;
    width: auto !important;
    padding: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

/* sub-menu — начальное скрытое состояние через CSS (без JS, без мерцания) */
.sidebar .widget_nav_menu .menu .sub-menu {
    display: block !important;     /* Override inline HTML display:none от темы */
    height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: none !important;   /* transition включается только после acc-ready */
    /* Сбрасываем flyout темы */
    position: static !important;
    transform: none !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    box-shadow: none !important;
    border: none !important;
    background: none !important;
    min-width: 0 !important;
    width: auto !important;
    float: none !important;
    z-index: auto !important;
    list-style: none !important;
}
/* Открытое состояние — li.active (тема ставит класс в HTML) или li.acc-open (JS) */
.sidebar .widget_nav_menu .menu li.active > .sub-menu,
.sidebar .widget_nav_menu .menu li.acc-open > .sub-menu {
    height: auto !important;
    overflow: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}
/* Transition включается после первого рендера (JS добавляет acc-ready к body) */
body.acc-ready .sidebar .widget_nav_menu .menu .sub-menu {
    transition: height 0.35s ease, opacity 0.25s ease !important;
}

/* Виджет: ограничиваем по ширине колонки */
.sidebar .widget_nav_menu {
    max-width: 100% !important;
}

/* Базовый контейнер меню */
.sidebar .widget_nav_menu .menu,
.wccategory .sidebar .widget_nav_menu .menu {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-top: 3px solid #2e7d32 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.06) !important;
}
.sidebar .widget_nav_menu .menu li {
    height: auto !important;
    max-width: none !important;
    width: auto !important;
    overflow: visible !important;
    margin-bottom: 0 !important;
    border: none !important;
    border-bottom: 1px solid #f0f0f0 !important;
    border-radius: 0 !important;
    display: block !important;
    position: static !important;
    box-sizing: border-box !important;
}
.sidebar .widget_nav_menu .menu li:last-child {
    border-bottom: none !important;
}
/* has-children нужен position:relative как якорь для абсолютной кнопки-стрелки */
.sidebar .widget_nav_menu .menu li.has-children {
    position: relative !important;
}

/* ── Уровень 1: корневые категории ── */
.sidebar .widget_nav_menu .menu > li > a {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 14px 52px 14px 16px !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    color: #2d2d2d !important;
    letter-spacing: -0.1px !important;
    text-decoration: none !important;
    border-left: 3px solid transparent !important;
    background: none !important;
    transition: background .18s, color .18s, border-color .18s !important;
    cursor: pointer !important;
    position: static !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.sidebar .widget_nav_menu .menu > li > a:hover,
.sidebar .widget_nav_menu .menu > li.acc-open > a,
.sidebar .widget_nav_menu .menu > li.active > a {
    background: #e8f5e9 !important;
    color: #1a6e1a !important;
    border-left-color: #2e7d32 !important;
}
/* chip keeps its own category color when active — no override here */

/* Убираем a::after-шеврон от темы */
.sidebar .widget_nav_menu .menu li.has-children > a::after {
    display: none !important;
    content: none !important;
}

/* ── Кнопка-шеврон: position:absolute — всегда строго по правому краю ── */
/* top:8px = (48px высота строки - 32px кнопка) / 2 — всегда в строке заголовка */
.sidebar .widget_nav_menu .menu .acc-btn {
    position: absolute !important;
    right: 10px !important;
    top: 8px !important;
    transform: none !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 8px !important;
    border: none !important;
    background: #f0f7f0 !important;
    color: #2e7d32 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
    z-index: 1 !important;
    outline: none !important;
}
.sidebar .widget_nav_menu .menu .acc-btn:hover {
    background: #c8e6c9 !important;
}
.sidebar .widget_nav_menu .menu .acc-btn svg {
    transition: transform .22s ease !important;
    pointer-events: none !important;
}
/* Стрелка смотрит вниз когда закрыто, вверх когда открыто */
.sidebar .widget_nav_menu .menu li.acc-open > .acc-btn svg,
.sidebar .widget_nav_menu .menu li.active > .acc-btn svg {
    transform: rotate(180deg) !important;
}
.sidebar .widget_nav_menu .menu li.acc-open > .acc-btn,
.sidebar .widget_nav_menu .menu li.active > .acc-btn {
    background: #c8e6c9 !important;
    color: #1a6e1a !important;
}

/* Активный пункт (текущая страница) — через aria-current, не через JS-класс */
/* Уровень 1 */
.sidebar .widget_nav_menu .menu > li:has(> a[aria-current]) > a {
    background: #e8f5e9 !important;
    color: #1a6e1a !important;
    border-left-color: #1a6e1a !important;
}
/* chip keeps its own category color when page is current — no override */
/* Уровень 2 */
.sidebar .widget_nav_menu .menu > li > ul > li:has(> a[aria-current]) > a {
    background: #f0f9f0 !important;
    color: #1a6e1a !important;
    font-weight: 700 !important;
    border-left-color: #1a6e1a !important;
}
.sidebar .widget_nav_menu .menu > li > ul > li:has(> a[aria-current]) > a::before {
    background: #1a6e1a !important;  /* Точка зеленеет */
}
/* Уровень 3 — только цвет текста и дефис, БЕЗ фона ::before (чтобы не было зелёного квадрата) */
.sidebar .widget_nav_menu .menu > li > ul > li > ul > li:has(> a[aria-current]) > a {
    color: #1a6e1a !important;
    font-weight: 600 !important;
    border-left-color: #1a6e1a !important;
}
.sidebar .widget_nav_menu .menu > li > ul > li > ul > li:has(> a[aria-current]) > a::before {
    color: #1a6e1a !important;  /* Дефис зеленеет */
    background: none !important;
}

/* ── Иконки уровня 1: цветные квадратные чипы с белым SVG внутри ── */
.sidebar .widget_nav_menu .menu > li > a::before {
    content: '' !important;
    display: inline-flex !important;
    width: 36px !important;
    height: 36px !important;
    flex-shrink: 0 !important;
    border-radius: 10px !important;
    background-color: #bdbdbd !important;
    background-repeat: no-repeat !important;
    background-size: 54% !important;
    background-position: center !important;
    background-image: none !important;
    mask-image: none !important;
    -webkit-mask-image: none !important;
    box-shadow: 0 2px 6px rgba(0,0,0,.14) !important;
    transition: opacity .15s !important;
}
.sidebar .widget_nav_menu .menu > li > a:hover::before {
    opacity: .88 !important;
}

/* FOOD — зелёный чип, тарелка белая */
.sidebar .widget_nav_menu .menu > li:has(> a[href*="food"]) > a::before {
    background-color: #2e7d32 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M18.06 22.99h1.66c.84 0 1.53-.64 1.63-1.46L23 5.05h-5V1h-1.97v4.05h-4.97l.3 2.34c1.71.47 3.31 1.32 4.27 2.26 1.44 1.42 2.43 2.89 2.43 5.29v8.05zM1 21.99V21h15.03v.99c0 .55-.45 1-1.01 1H2.01c-.56 0-1.01-.45-1.01-1zm15.03-7c0-4.84-15.03-4.84-15.03 0h15.03zM1.02 17h15v2h-15z'/%3E%3C/svg%3E") !important;
}
/* NON FOOD — синий чип, корзина белая */
.sidebar .widget_nav_menu .menu > li:has(> a[href*="non-food"]) > a::before {
    background-color: #1565c0 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zM1 2v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96C5 16.1 6.1 17 7 17h11v-2H7.42c-.14 0-.25-.11-.25-.25l.03-.12.9-1.63H19c.75 0 1.41-.41 1.75-1.03l3.58-6.49A1 1 0 0 0 23.45 4H5.21l-.94-2H1zm16 16c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2z'/%3E%3C/svg%3E") !important;
}
/* Акции — красный чип, ценник белый */
.sidebar .widget_nav_menu .menu > li:has(> a[href*="on_sale"]) > a::before {
    background-color: #c62828 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58s1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41s-.23-1.06-.59-1.42zM5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7z'/%3E%3C/svg%3E") !important;
}
.sidebar .widget_nav_menu .menu > li:has(> a[href*="on_sale"]) > a { color: #c62828 !important; font-weight: 700 !important; }
.sidebar .widget_nav_menu .menu > li:has(> a[href*="on_sale"]) > a:hover { background: #fff5f5 !important; border-left-color: #c62828 !important; }

/* Распродажа — оранжевый чип, молния белая */
.sidebar .widget_nav_menu .menu > li:has(> a[href*="rasprodazha"]) > a::before {
    background-color: #e65100 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M7 2v11h3v9l7-12h-4l4-8z'/%3E%3C/svg%3E") !important;
}
.sidebar .widget_nav_menu .menu > li:has(> a[href*="rasprodazha"]) > a { color: #e65100 !important; font-weight: 700 !important; }
.sidebar .widget_nav_menu .menu > li:has(> a[href*="rasprodazha"]) > a:hover { background: #fff8f0 !important; border-left-color: #e65100 !important; }

/* Новинки — фиолетовый чип, звезда белая */
.sidebar .widget_nav_menu .menu > li:has(> a[href*="novinka"]) > a::before {
    background-color: #6a1b9a !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E") !important;
}
.sidebar .widget_nav_menu .menu > li:has(> a[href*="novinka"]) > a { color: #6a1b9a !important; font-weight: 700 !important; }
.sidebar .widget_nav_menu .menu > li:has(> a[href*="novinka"]) > a:hover { background: #f9f0ff !important; border-left-color: #6a1b9a !important; }

/* ── Уровень 2: подкатегории ── */
.sidebar .widget_nav_menu .menu > li > ul,
.sidebar .widget_nav_menu .menu > li > .sub-menu {
    background: #f6faf6 !important;
    border: none !important;
    border-radius: 0 !important;
    border-top: 1px solid #e8f0e8 !important;
}
.sidebar .widget_nav_menu .menu > li > ul > li { border-bottom: 1px solid #eaf0ea !important; }
.sidebar .widget_nav_menu .menu > li > ul > li:last-child { border-bottom: none !important; }
.sidebar .widget_nav_menu .menu > li > ul > li > a {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    align-items: center !important;
    padding: 10px 52px 10px 28px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #4a4a4a !important;
    text-decoration: none !important;
    border-left: 3px solid transparent !important;
    background: none !important;
    transition: background .14s, color .14s !important;
    position: static !important;
    width: 100% !important;
    box-sizing: border-box !important;
    gap: 8px !important;
}
.sidebar .widget_nav_menu .menu > li > ul > li > a::before {
    content: '' !important;
    display: inline-block !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 50% !important;
    background: #bbb !important;
    flex-shrink: 0 !important;
    mask-image: none !important;
    -webkit-mask-image: none !important;
    transition: background .14s !important;
}
/* Цветные точки уровня 2 по родительской категории */
.sidebar .widget_nav_menu .menu > li:has(> a[href*="non-food"]) > ul > li > a::before {
    background: #1565c0 !important;
}
.sidebar .widget_nav_menu .menu > li:has(> a[href*="food"]) > ul > li > a::before {
    background: #2e7d32 !important;
}

.sidebar .widget_nav_menu .menu > li > ul > li > a:hover,
.sidebar .widget_nav_menu .menu > li > ul > li.acc-open > a,
.sidebar .widget_nav_menu .menu > li > ul > li.active > a {
    background: #e8f5e9 !important;
    color: #1a6e1a !important;
    border-left-color: #2e7d32 !important;
}
.sidebar .widget_nav_menu .menu > li > ul > li > a:hover::before,
.sidebar .widget_nav_menu .menu > li > ul > li.acc-open > a::before,
.sidebar .widget_nav_menu .menu > li > ul > li.active > a::before {
    background: #2e7d32 !important;
}
/* NON FOOD subcategories: blue hover dot */
.sidebar .widget_nav_menu .menu > li:has(> a[href*="non-food"]) > ul > li > a:hover::before,
.sidebar .widget_nav_menu .menu > li:has(> a[href*="non-food"]) > ul > li.acc-open > a::before,
.sidebar .widget_nav_menu .menu > li:has(> a[href*="non-food"]) > ul > li.active > a::before {
    background: #1565c0 !important;
}

/* ── Уровень 3: подподкатегории ── */
.sidebar .widget_nav_menu .menu > li > ul > li > ul { background: #fefefe !important; border-top: 1px solid #eef4ee !important; }
.sidebar .widget_nav_menu .menu > li > ul > li > ul > li > a {
    display: block !important;
    padding: 8px 14px 8px 42px !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    color: #777 !important;
    text-decoration: none !important;
    border-left: 3px solid transparent !important;
    background: none !important;
    position: static !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: color .14s, background .14s !important;
}
.sidebar .widget_nav_menu .menu > li > ul > li > ul > li > a::before {
    content: '›  ' !important;
    color: #ccc !important;
    background: none !important;
    mask-image: none !important;
    -webkit-mask-image: none !important;
    width: auto !important;
    height: auto !important;
    font-size: 14px !important;
}
.sidebar .widget_nav_menu .menu > li > ul > li > ul > li > a:hover {
    color: #1a6e1a !important;
    background: #f0faf0 !important;
}
.sidebar .widget_nav_menu .menu > li > ul > li > ul > li > a:hover {
    color: #1a6e1a !important;
    background: #f9fff9 !important;
}

/* ── Уровень 4: глубокая вложенность (catch-all) ── */
.sidebar .widget_nav_menu .menu > li > ul > li > ul > li > ul > li > a,
.sidebar .widget_nav_menu .menu li li li li li a {
    display: block !important;
    padding: 5px 14px 5px 62px !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #aaa !important;
    text-decoration: none !important;
    border-left: 3px solid transparent !important;
    background: none !important;
    position: static !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.sidebar .widget_nav_menu .menu > li > ul > li > ul > li > ul > li > a::before,
.sidebar .widget_nav_menu .menu li li li li li a::before {
    content: '· ' !important;
    color: #ddd !important;
    background: none !important;
    mask-image: none !important;
    -webkit-mask-image: none !important;
    width: auto !important;
    height: auto !important;
    display: inline !important;
    border-radius: 0 !important;
    flex-shrink: unset !important;
}
.sidebar .widget_nav_menu .menu > li > ul > li > ul > li > ul > li > a:hover {
    color: #1a6e1a !important;
}

/* advant-block — вариант 1: градиентные шапки */
#advant-block .adv__item::before{display:none !important}
#advant-block .advants__holder{display:none !important}
#advant-block .bt-v1-row{display:flex;gap:0;align-items:stretch}
#advant-block .bt-v1-card{flex:1;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 4px 20px rgba(0,137,123,.1);display:flex;flex-direction:column;transform:translateY(0);opacity:1;transition:box-shadow .3s,transform .3s}
#advant-block .bt-v1-card.bt-animate{transform:translateY(24px);opacity:0;transition:transform .6s cubic-bezier(.22,1,.36,1),opacity .6s ease,box-shadow .3s}
#advant-block .bt-v1-card.bt-animate.bt-visible{transform:translateY(0);opacity:1}
#advant-block .bt-v1-card:hover{box-shadow:0 16px 48px rgba(0,137,123,.25);transform:translateY(-6px) scale(1.02)}
#advant-block .bt-v1-card:nth-child(1){transition-delay:.00s,.00s,0s,0s}
#advant-block .bt-v1-card:nth-child(3){transition-delay:.12s,.12s,0s,0s}
#advant-block .bt-v1-card:nth-child(5){transition-delay:.24s,.24s,0s,0s}
#advant-block .bt-v1-card:nth-child(7){transition-delay:.36s,.36s,0s,0s}
#advant-block .bt-v1-head{padding:24px 18px;display:flex;align-items:center;gap:14px;position:relative;overflow:hidden}
#advant-block .bt-v1-head::after{content:'';position:absolute;top:-50%;right:-30px;width:120px;height:200%;background:rgba(255,255,255,.09);transform:skewX(-20deg);transition:right .5s ease}
#advant-block .bt-v1-card:hover .bt-v1-head::after{right:110%}
#advant-block .bt-v1-num{min-width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.2);border:2px solid rgba(255,255,255,.35);font-size:16px;font-weight:800;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s,background .3s}
#advant-block .bt-v1-card:hover .bt-v1-num{transform:scale(1.15);background:rgba(255,255,255,.35)}
#advant-block .bt-v1-ico svg{width:44px;height:44px;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
#advant-block .bt-v1-card:hover .bt-v1-ico svg{transform:scale(1.2) rotate(-8deg)}
#advant-block .bt-v1-body{padding:18px 18px 22px;font-size:13.5px;color:#555;line-height:1.7;text-align:center;flex:1}
#advant-block .bt-v1-sep{display:flex;align-items:center;padding:0 8px;flex-shrink:0;margin-top:32px;opacity:.45}
#advant-block .bt-v1-sep svg{width:26px;height:26px}
@media(max-width:900px){
  #advant-block .bt-v1-row{flex-wrap:wrap;gap:16px}
  #advant-block .bt-v1-card{flex:1 1 calc(50% - 24px)}
  #advant-block .bt-v1-sep{display:none}
}
@media(max-width:480px){
  #advant-block .bt-v1-card{flex:1 1 100%}
}



/* ═══ БЛОК НАМ ДОВЕРЯЮТ ═══ */
#trust-partners-block{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 4px 24px rgba(0,0,0,.07);margin:0 0 40px}
#trust-partners-block .bt-section-title{border-bottom:1px solid #f0f0f0}
#trust-partners-block .bt-section-title p strong{color:#00897b}
#trust-partners-block .stats-row{display:flex;border-bottom:1px solid #f0f0f0}
#trust-partners-block .stat-item{flex:1;text-align:center;padding:20px 10px;border-right:1px solid #f0f0f0}
#trust-partners-block .stat-item:last-child{border-right:none}
#trust-partners-block .stat-num{font-size:26px;font-weight:900;color:#00897b;line-height:1}
#trust-partners-block .stat-lbl{font-size:11px;color:#bbb;margin-top:5px;font-weight:500}
#trust-partners-block .tp-section{padding:24px 0}
#trust-partners-block .tp-section:not(:last-child){border-bottom:1px solid #f0f0f0}
#trust-partners-block .section-title{display:flex;align-items:center;gap:12px;padding:0 40px 16px}
#trust-partners-block .section-title h3{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#ccc;white-space:nowrap}
#trust-partners-block .section-title::after{content:'';flex:1;height:1px;background:#f0f0f0}
#trust-partners-block .tp-row-wrap{overflow:hidden;position:relative;margin-bottom:8px}
#trust-partners-block .tp-row-wrap::before,#trust-partners-block .tp-row-wrap::after{content:'';position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none}
#trust-partners-block .tp-row-wrap::before{left:0;background:linear-gradient(90deg,#fff,transparent)}
#trust-partners-block .tp-row-wrap::after{right:0;background:linear-gradient(270deg,#fff,transparent)}
#trust-partners-block .tp-row-track{display:flex;width:max-content}
#trust-partners-block .tp-row-track.fwd{animation:tp-fwd 48s linear infinite}
#trust-partners-block .tp-row-track.rev{animation:tp-rev 40s linear infinite}
#trust-partners-block .tp-row-track.slow{animation:tp-fwd 65s linear infinite}
#trust-partners-block .tp-row-track:hover{animation-play-state:paused}
@keyframes tp-fwd{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes tp-rev{0%{transform:translateX(-50%)}100%{transform:translateX(0)}}
#trust-partners-block .mfr-card{flex-shrink:0;width:180px;height:88px;margin:0 8px;border:1.5px solid #f0f0f0;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:10px 14px;text-decoration:none;transition:.25s}
#trust-partners-block .mfr-card:hover{border-color:#00897b;box-shadow:0 4px 16px rgba(0,137,123,.12);transform:translateY(-3px)}
#trust-partners-block .mfr-card .mc-logo{height:36px;display:flex;align-items:center;justify-content:center}
#trust-partners-block .mfr-card .mc-logo img{max-width:120px;max-height:34px;object-fit:contain;filter:grayscale(1);opacity:.5;transition:.25s}
#trust-partners-block .mfr-card:hover .mc-logo img{filter:none;opacity:1}
#trust-partners-block .mfr-card .mc-logo span{font-size:12px;font-weight:800;color:#ccc;text-align:center;transition:.25s}
#trust-partners-block .mfr-card:hover .mc-logo span{color:#00897b}
#trust-partners-block .mfr-card .mc-name{font-size:10px;color:#ccc;font-weight:600;transition:.25s;text-align:center}
#trust-partners-block .mfr-card:hover .mc-name{color:#A7DE60}
#trust-partners-block .bc{flex-shrink:0;width:144px;height:76px;margin:0 6px;border:1.5px solid #f0f0f0;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:8px;cursor:default;transition:.22s;position:relative;overflow:hidden}
#trust-partners-block .bc::after{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(0,137,123,.06) 50%,transparent 60%);transform:translateX(-100%);transition:.4s;pointer-events:none}
#trust-partners-block .bc:hover::after{transform:translateX(100%)}
#trust-partners-block .bc:hover{border-color:#00897b;box-shadow:0 3px 12px rgba(0,137,123,.1);transform:translateY(-2px)}
#trust-partners-block .bc .la{height:34px;display:flex;align-items:center;justify-content:center}
#trust-partners-block .bc img{max-width:106px;max-height:32px;object-fit:contain;filter:grayscale(1);opacity:.5;transition:.25s}
#trust-partners-block .bc:hover img{filter:none;opacity:1}
#trust-partners-block .bc .tl{font-size:11px;font-weight:700;color:#ccc;text-align:center;line-height:1.2;transition:.25s}
#trust-partners-block .bc:hover .tl{color:#00897b}
#trust-partners-block .bc .mt{font-size:9px;color:#ddd;font-weight:500;text-transform:uppercase;letter-spacing:.04em;transition:.25s;text-align:center}
#trust-partners-block .bc:hover .mt{color:#A7DE60}
/* алиасы — HTML в БД использует имена без tp- */
#trust-partners-block .section{padding:24px 0}
#trust-partners-block .section:not(:last-child){border-bottom:1px solid #f0f0f0}
#trust-partners-block .row-wrap{overflow:hidden;position:relative;margin-bottom:8px}
#trust-partners-block .row-wrap::before,#trust-partners-block .row-wrap::after{content:'';position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none}
#trust-partners-block .row-wrap::before{left:0;background:linear-gradient(90deg,#fff,transparent)}
#trust-partners-block .row-wrap::after{right:0;background:linear-gradient(270deg,#fff,transparent)}
#trust-partners-block .row-track{display:flex;width:max-content}
#trust-partners-block .row-track.fwd{animation:tp-fwd 48s linear infinite}
#trust-partners-block .row-track.rev{animation:tp-rev 40s linear infinite}
#trust-partners-block .row-track.slow{animation:tp-fwd 65s linear infinite}
#trust-partners-block .row-track:hover{animation-play-state:paused}

/* 3. Popup CF7 — submit */
#getprice .wpcf7-submit,
#getprice2 .wpcf7-submit {
    width: 100% !important;
    height: 46px !important;
    border-radius: 23px !important;
    background: linear-gradient(135deg,#00695c,#00897b) !important;
    color: #fff !important;
    border: none !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    font-family: inherit !important;
    box-shadow: 0 4px 18px rgba(0,137,123,.3) !important;
    transition: box-shadow .2s, transform .15s !important;
    display: block !important;
}
#getprice .wpcf7-submit:hover,
#getprice2 .wpcf7-submit:hover {
    box-shadow: 0 6px 24px rgba(0,137,123,.45) !important;
    transform: translateY(-1px) !important;
}

/* Кнопки-сабмиты CF7 в модалках («Заказать звонок», «Оформить заказ») — фирменный бирюзовый.
   Целимся прямо в классы кнопки + .mfp-content (попап клонирует содержимое) — макс. специфичность. */
input.wpcf7-submit.submit_btn,
input.submit_btn.btn,
.contactform__modal input[type="submit"],
.mfp-content input.submit_btn,
.mfp-content input[type="submit"] {
    background: linear-gradient(135deg,#00695c,#00897b) !important;
    background-color: #00695c !important;
    color: #fff !important;
    border: none !important;
    box-shadow: 0 4px 14px rgba(0,105,92,.3) !important;
    transition: box-shadow .2s, transform .15s !important;
}
input.wpcf7-submit.submit_btn:hover,
input.submit_btn.btn:hover,
.contactform__modal input[type="submit"]:hover,
.mfp-content input.submit_btn:hover,
.mfp-content input[type="submit"]:hover {
    background: linear-gradient(135deg,#00594e,#00786b) !important;
    box-shadow: 0 8px 22px rgba(0,105,92,.42) !important;
    transform: translateY(-2px) !important;
    opacity: 1 !important;
}

/* Ссылка «обработку» (согласие ПД) в формах — фирменный бирюзовый вместо ярко-зелёного inline #00D31F */
.wpcf7 a[href*="privacy-policy"],
.contactform__modal a[href*="privacy-policy"],
.mfp-content a[href*="privacy-policy"],
#bt-zayvka a[href*="privacy-policy"] {
    color: #00897b !important;
    text-decoration: underline !important;
}
.wpcf7 a[href*="privacy-policy"]:hover,
.contactform__modal a[href*="privacy-policy"]:hover,
.mfp-content a[href*="privacy-policy"]:hover,
#bt-zayvka a[href*="privacy-policy"]:hover {
    color: #00695c !important;
}

/* ── Каталог: центрирование неполных строк ── */
.main-cat-wrapper {
    justify-content: center;
}

/* Убираем разрыв между двумя блоками каталога */
.main-cat + .main-cat {
    margin-top: 0;
    padding-top: 0;
    border-top: 1px solid #ebebeb;
}

/* ══════════════════════════════════════════════════
   Единый заголовок секции — .bt-section-title
   Используется во всех блоках главной страницы
══════════════════════════════════════════════════ */
.bt-section-title {
    text-align: center;
    padding: 60px 48px 40px;
}
/* Первая секция главной опускается ниже фикс-шапки (site-header 141px),
   иначе H1 «...оптом» прячется под верхним меню. */
.bt-home-hero { padding-top: 130px; }
/* Задача 6: планшетный диапазон 768–1025px — шапка тут «мобильного» типа (чипы+бургер), реально
   215–227px, а не 141px как на десктопе. Статичный padding-top:130px (и ещё меньший 44px из
   .bt-section-title{padding:44px 24px 28px} на ≤860px) не хватало — H1 частично или ПОЛНОСТЬЮ
   уходил под шапку (замерено Playwright: overlap 55px на 861–1025, 141px на ≤860 — видна была
   только «ОПТОМ», хвост второй строки). !important — перебить оба конфликтующих правила разом. */
@media (min-width: 768px) and (max-width: 1025px) {
    .bt-home-hero { padding-top: 235px !important; }
}
/* Пустой дубль-H1 из родительской archive.php (single_cat_title() пуст на product_cat) */
body.tax-product_cat .page__title,
body.tax-product_tag .page__title,
body.woocommerce-shop .page__title { display: none !important; }

/* Заголовок single-поста (новости и пр., дефолтная ветка шаблона) — адаптив под мобилу.
   По умолчанию размер огромный (родительская тема), на телефоне ломался по словам. */
@media (max-width: 768px) {
    body.single-post .page__title {
        font-size: 22px !important;
        line-height: 1.3 !important;
        padding: 0 16px !important;
        margin-bottom: 10px !important;
        word-break: break-word;
    }
    body.single-post .content.single-page { padding-left: 16px !important; padding-right: 16px !important; }
}
@media (max-width: 480px) {
    body.single-post .page__title { font-size: 20px !important; }
}

.bt-section-title h2,
.bt-section-title h1 {
    font-size: 34px;
    font-weight: 900;
    color: #111;
    letter-spacing: -0.5px;
    line-height: 1.2;
    margin-bottom: 10px;
}
.bt-section-title p {
    font-size: 16px;
    color: #999;
    line-height: 1.7;
    max-width: 520px;
    margin: 0 auto;
}
@media (max-width: 860px) {
    .bt-section-title { padding: 44px 24px 28px; }
    .bt-section-title h2,
    .bt-section-title h1 { font-size: 26px; }
}

/* ══════════════════════════════════════════════════
   Блок «Почему работать с нами выгодно» [bt_why_us]
══════════════════════════════════════════════════ */
#why-us-block { background: #fff; }

#why-us-block .bt-section-title {
    border-bottom: 1px solid #f2f2f2;
}

#why-us-block .why-rows { max-width: 1100px; margin: 0 auto; }

#why-us-block .why-row {
    display: grid; grid-template-columns: 1fr 1fr;
    align-items: center; padding: 60px 48px; gap: 24px;
    border-bottom: 1px solid #f5f5f5;
}
#why-us-block .why-row:last-child { border-bottom: none; }
#why-us-block .why-row.rev .why-vis  { order: 2; }
#why-us-block .why-row.rev .why-copy { order: 1; }

#why-us-block .why-vis {
    display: flex; align-items: center; justify-content: center; padding: 24px;
}
#why-us-block .why-blob {
    width: 240px; height: 240px;
    border-radius: 62% 38% 46% 54% / 60% 44% 56% 40%;
    display: flex; align-items: center; justify-content: center;
    flex-direction: column; gap: 10px;
    transition: border-radius .6s ease;
}
#why-us-block .why-blob:hover { border-radius: 45% 55% 60% 40% / 55% 45% 55% 45%; }
#why-us-block .why-blob.bl1 { background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%); }
#why-us-block .why-blob.bl2 { background: linear-gradient(135deg, #e8f0fe 0%, #c5cae9 100%); }
#why-us-block .why-blob.bl3 { background: linear-gradient(135deg, #fff8e1 0%, #ffecb3 100%); }
#why-us-block .why-blob.bl4 { background: linear-gradient(135deg, #fce4ec 0%, #f8bbd0 100%); }
#why-us-block .blob-icon  { font-size: 60px; line-height: 1; user-select: none; }
#why-us-block .blob-badge {
    font-size: 11px; font-weight: 800; letter-spacing: 1px;
    text-transform: uppercase; padding: 4px 12px; border-radius: 20px;
    background: rgba(255,255,255,.75); color: #333;
}

#why-us-block .why-copy { padding: 0 24px; }
#why-us-block .why-row.rev .why-copy { padding: 0 24px; }

#why-us-block .copy-tag {
    display: inline-flex; align-items: center; gap: 6px;
    background: #f0f7f0; color: #2e7d32;
    font-size: 11px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase;
    padding: 5px 14px; border-radius: 20px; margin-bottom: 18px;
}
#why-us-block .copy-tag .dot {
    width: 5px; height: 5px; border-radius: 50%; background: #2e7d32; display: block;
}
#why-us-block .why-copy h3 {
    font-size: 26px; font-weight: 900; color: #111;
    line-height: 1.28; letter-spacing: -.3px; margin-bottom: 12px;
}
#why-us-block .why-copy > p {
    font-size: 15px; color: #777; line-height: 1.78; margin-bottom: 20px;
}
#why-us-block .copy-list { list-style: none; display: flex; flex-direction: column; gap: 9px; padding: 0; }
#why-us-block .copy-list li {
    font-size: 14px; color: #555; line-height: 1.55;
    padding-left: 22px; position: relative;
}
#why-us-block .copy-list li::before {
    content: ''; position: absolute; left: 0; top: 6px;
    width: 8px; height: 8px; border-radius: 50%;
    background: #2e7d32; opacity: .5;
}

#why-us-block .why-cta {
    background: #f7fdf7; border-top: 1px solid #e8f5e9;
    padding: 48px; display: flex; align-items: center;
    justify-content: space-between; gap: 32px; flex-wrap: wrap;
}
#why-us-block .cta-text h3 { font-size: 20px; font-weight: 800; color: #111; margin-bottom: 5px; }
#why-us-block .cta-text p  { font-size: 14px; color: #888; }
/* 2. Блок «Почему с нами» */
#why-us-block .cta-btn {
    display: inline-flex; align-items: center; gap: 0;
    height: 44px; padding: 0 6px;
    background: linear-gradient(135deg,#00695c,#00897b);
    color: #fff; border-radius: 22px;
    font-size: 14px; font-weight: 700; text-decoration: none; white-space: nowrap;
    box-shadow: 0 4px 18px rgba(0,137,123,.3);
    transition: box-shadow .2s, transform .15s;
    flex-shrink: 0;
}
#why-us-block .cta-btn:hover {
    box-shadow: 0 6px 24px rgba(0,137,123,.45);
    transform: translateY(-1px);
}

@media (max-width: 860px) {
    #why-us-block .why-head { padding: 44px 24px 36px; }
    #why-us-block .why-head h2 { font-size: 26px; }
    #why-us-block .why-row {
        grid-template-columns: 1fr; padding: 36px 24px; gap: 28px;
    }
    #why-us-block .why-row.rev .why-vis,
    #why-us-block .why-row.rev .why-copy { order: unset; }
    #why-us-block .why-copy,
    #why-us-block .why-row.rev .why-copy { padding: 0; }
    #why-us-block .why-blob { width: 180px; height: 180px; }
    #why-us-block .blob-icon { font-size: 44px; }
    #why-us-block .why-cta { flex-direction: column; align-items: flex-start; padding: 32px 24px; }
}

/* ── Сайдбар: виджет «Категории» (id=nav_menu-2) — pill-стиль, вариант A ── */
@keyframes sidebar-shine { 0%{left:-80%} 100%{left:120%} }

#nav_menu-2 .widget-title {
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .1em !important;
    text-transform: uppercase !important;
    color: #004d40 !important;
    border-bottom: 2px solid #00897b !important;
    padding-bottom: 6px !important;
    margin-bottom: 10px !important;
}

#nav_menu-2 ul.menu {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}

#nav_menu-2 ul.menu > li.nav-menu-element {
    position: relative !important;  /* нужен для .acc-btn position:absolute */
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    height: auto !important;
}

#nav_menu-2 ul.menu > li.nav-menu-element > a {
    display: flex !important;
    align-items: center !important;
    height: 44px !important;
    border-radius: 22px !important;
    padding: 0 14px 0 6px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    color: #fff !important;
    background: linear-gradient(135deg, #00695c, #00897b) !important;
    box-shadow: 0 4px 14px rgba(0,137,123,.22) !important;
    position: relative !important;
    overflow: hidden !important;
    transition: box-shadow .2s, transform .15s !important;
}
#nav_menu-2 ul.menu > li.nav-menu-element > a::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: -80% !important;
    width: 40% !important; height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.16), transparent) !important;
    transform: skewX(-20deg) !important;
    pointer-events: none !important;
}
#nav_menu-2 ul.menu > li.nav-menu-element > a:hover::after {
    animation: sidebar-shine .5s ease forwards !important;
}
#nav_menu-2 ul.menu > li.nav-menu-element > a:hover {
    transform: translateX(3px) !important;
    box-shadow: 0 6px 20px rgba(0,137,123,.4) !important;
    color: #fff !important;
    text-decoration: none !important;
}

/* иконка через ::before */
#nav_menu-2 ul.menu > li.nav-menu-element > a::before {
    content: '' !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 50% !important;
    background-color: rgba(255,255,255,.18) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 17px 17px !important;
    flex-shrink: 0 !important;
    margin-right: 8px !important;
    display: block !important;
}

/* иконки по nth-child: FOOD=1, Новинки=2, NON FOOD=3, Акция=4, Распродажа=5 */
#nav_menu-2 ul.menu > li:nth-child(1) > a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M18 3H6a3 3 0 00-3 3v2h18V6a3 3 0 00-3-3zM3 10v8a3 3 0 003 3h12a3 3 0 003-3v-8H3zm6 6H7v-4h2v4zm4 0h-2v-4h2v4zm4 0h-2v-4h2v4z'/%3E%3C/svg%3E") !important;
}
#nav_menu-2 ul.menu > li:nth-child(2) > a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Ccircle cx='12' cy='12' r='5'/%3E%3Cpath d='M12 1v3M12 20v3M4.22 4.22l2.12 2.12M17.66 17.66l2.12 2.12M1 12h3M20 12h3M4.22 19.78l2.12-2.12M17.66 6.34l2.12-2.12' stroke='%23fff' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}
#nav_menu-2 ul.menu > li:nth-child(3) > a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M19 7h-3V6a4 4 0 00-8 0v1H5a1 1 0 00-1 1l-1 12a1 1 0 001 1h16a1 1 0 001-1L20 8a1 1 0 00-1-1zm-9-1a2 2 0 014 0v1h-4V6zm-5 5a1 1 0 112 0 1 1 0 01-2 0zm10 0a1 1 0 112 0 1 1 0 01-2 0z'/%3E%3C/svg%3E") !important;
}
#nav_menu-2 ul.menu > li:nth-child(4) > a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M21.41 11.58l-9-9A2 2 0 0011 2H4a2 2 0 00-2 2v7a2 2 0 00.59 1.42l9 9A2 2 0 0013 22a2 2 0 001.41-.59l7-7A2 2 0 0022 13a2 2 0 00-.59-1.42zM5.5 7a1.5 1.5 0 110-3 1.5 1.5 0 010 3z'/%3E%3C/svg%3E") !important;
}
#nav_menu-2 ul.menu > li:nth-child(5) > a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'%3E%3Cpath d='M12 2l2.4 7.4H22l-6.2 4.5 2.4 7.4L12 17l-6.2 4.3 2.4-7.4L2 9.4h7.6L12 2z'/%3E%3C/svg%3E") !important;
}

/* скрываем иконки плагина (img внутри ссылок меню) */
#nav_menu-2 ul.menu > li > a img,
#nav_menu-2 ul.menu > li > a span.cat-icon,
#nav_menu-2 ul.menu > li > a .menu-icon { display: none !important; }

/* порядок пунктов: FOOD, NON FOOD, Распродажа, Акция, Новинки */
/* HTML-порядок: 1=FOOD 2=Новинки 3=NON FOOD 4=Акция 5=Распродажа */
#nav_menu-2 ul.menu > li:nth-child(1) { order: 1 !important; } /* FOOD */
#nav_menu-2 ul.menu > li:nth-child(3) { order: 2 !important; } /* NON FOOD */
#nav_menu-2 ul.menu > li:nth-child(5) { order: 3 !important; } /* Распродажа */
#nav_menu-2 ul.menu > li:nth-child(4) { order: 4 !important; } /* Акция */
#nav_menu-2 ul.menu > li:nth-child(2) { order: 5 !important; } /* Новинки */

/* ── Подкатегории (sub-menu): тёмный текст на светлом фоне ── */
#nav_menu-2 .sub-menu li > a {
    display: flex !important;
    align-items: center !important;
    padding: 0 48px 0 16px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #1b4f40 !important;
    background: rgba(0,137,123,.07) !important;
    border-radius: 10px !important;
    margin: 2px 0 !important;
    height: 38px !important;
    box-shadow: none !important;
    position: relative !important;
    overflow: visible !important;
    transition: background .15s !important;
}
#nav_menu-2 .sub-menu li > a::before { display: none !important; }
#nav_menu-2 .sub-menu li > a::after { display: none !important; }
#nav_menu-2 .sub-menu li > a:hover {
    background: rgba(0,137,123,.14) !important;
    color: #004d40 !important;
    transform: none !important;
}

/* ── Вложенные уровни — чуть темнее ── */
#nav_menu-2 .sub-menu .sub-menu li > a {
    padding-left: 28px !important;
    font-size: 12px !important;
    background: rgba(0,137,123,.05) !important;
    color: #2e7d60 !important;
}
#nav_menu-2 .sub-menu .sub-menu li > a:hover {
    background: rgba(0,137,123,.12) !important;
    color: #004d40 !important;
}

/* ── Кнопка-стрелка на пилюлях верхнего уровня ── */
/* top:50% от <li> ломается когда <li> растягивается при открытии.
   Фиксируем px: (44px pill − 32px btn) / 2 = 6px */
#nav_menu-2 ul.menu > li > .acc-btn {
    top: 6px !important;
    transform: none !important;
    background: rgba(255,255,255,.22) !important;
    color: #fff !important;
    border-radius: 50% !important;
}
#nav_menu-2 ul.menu > li > .acc-btn:hover {
    background: rgba(255,255,255,.38) !important;
}
#nav_menu-2 ul.menu > li > .acc-btn svg {
    stroke: #fff !important;
}
#nav_menu-2 ul.menu > li.acc-open > .acc-btn svg,
#nav_menu-2 ul.menu > li.active > .acc-btn svg {
    transform: rotate(180deg) !important;
}

/* ── Кнопка-стрелка на подкатегориях ── */
/* (38px item − 28px btn) / 2 = 5px */
#nav_menu-2 .sub-menu .acc-btn {
    top: 5px !important;
    transform: none !important;
    background: rgba(0,137,123,.12) !important;
    color: #00695c !important;
    border-radius: 8px !important;
    width: 28px !important;
    height: 28px !important;
    right: 6px !important;
}
#nav_menu-2 .sub-menu .acc-btn:hover {
    background: rgba(0,137,123,.22) !important;
}
#nav_menu-2 .sub-menu .acc-btn svg {
    stroke: #00695c !important;
}
/* Стрелка ▲ только когда acc-open (кликнули), НЕ когда просто active */
#nav_menu-2 .sub-menu li.acc-open > .acc-btn svg {
    transform: rotate(180deg) !important;
}
#nav_menu-2 ul.menu > li.active:not(.acc-open) > .acc-btn svg {
    transform: none !important;
}
#nav_menu-2 .sub-menu li.active:not(.acc-open) > .acc-btn svg {
    transform: none !important;
}
/* Мгновенный отклик — без transition на стрелке */
#nav_menu-2 .acc-btn svg {
    transition: none !important;
}

/* ── Место для кнопки-стрелки: только верхний уровень ── */
#nav_menu-2 ul.menu > li.has-children > a {
    padding-right: 50px !important;
}

/* ═══════════════════════════════════════
   Блок «Контакты» #bt-contacts
═══════════════════════════════════════ */
#bt-contacts { font-family: inherit; }
#bt-contacts .btc-wrap { max-width: 1100px; margin: 0 auto; padding: 0 28px; }

/* Hero */
#bt-contacts .btc-hero {
  background: #111;
  padding: 56px 0 48px;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
#bt-contacts .btc-badge {
  display: inline-block;
  background: rgba(0,137,123,.2);
  border: 1px solid rgba(0,137,123,.4);
  border-radius: 20px;
  padding: 4px 14px;
  font-size: 12px; font-weight: 700; color: #4db6ac;
  letter-spacing: 1px; margin-bottom: 18px;
}
#bt-contacts .btc-hero h2 {
  font-size: 32px; font-weight: 900; color: #fff;
  line-height: 1.15; margin-bottom: 12px; white-space: nowrap;
}
#bt-contacts .btc-hero h2 span { color: #4db6ac; }
#bt-contacts .btc-hero p { font-size: 15px; color: rgba(255,255,255,.5); }

/* Полоса */
#bt-contacts .btc-bar {
  border-bottom: 1px solid #e8e8e8;
  background: #fff;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
#bt-contacts .btc-bar-inner { display: flex; }
#bt-contacts .btc-bar-item {
  flex: 1; padding: 22px 28px;
  display: flex; align-items: center; gap: 14px;
  border-right: 1px solid #f0f0f0;
}
#bt-contacts .btc-bar-item:last-child { border-right: none; }
#bt-contacts .btc-bar-ico {
  width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0;
  background: #f5f5f5;
  display: flex; align-items: center; justify-content: center;
}
#bt-contacts .btc-bar-lbl {
  font-size: 11px; color: #aaa; font-weight: 600;
  letter-spacing: 1px; text-transform: uppercase; margin-bottom: 3px;
}
#bt-contacts .btc-bar-val { font-size: 15px; font-weight: 700; color: #111; }
#bt-contacts .btc-bar-val a { color: #111; text-decoration: none; }
#bt-contacts .btc-bar-val a:hover { color: #00695c; }

/* Тело */
#bt-contacts .btc-body {
  padding: 48px 0 56px;
  background: #fff;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
#bt-contacts .btc-grid {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 40px;
  align-items: start;
}

/* Форма */
#bt-contacts .btc-form-side h2 { font-size: 24px; font-weight: 800; color: #111; margin-bottom: 6px; }
#bt-contacts .btc-form-side > p { font-size: 14px; color: #999; margin-bottom: 20px; }
#bt-contacts .btc-form-side .wpcf7-form p { margin-bottom: 14px; }
#bt-contacts .btc-form-side .wpcf7-form input[type="text"],
#bt-contacts .btc-form-side .wpcf7-form input[type="email"],
#bt-contacts .btc-form-side .wpcf7-form input[type="tel"],
#bt-contacts .btc-form-side .wpcf7-form textarea {
  width: 100% !important; border: 1.5px solid #e8e8e8 !important;
  border-radius: 10px !important; padding: 10px 14px !important;
  font-size: 14px !important; font-family: inherit !important; color: #333 !important;
  outline: none !important; transition: border-color .2s !important;
  box-shadow: none !important; background: #fff !important;
}
#bt-contacts .btc-form-side .wpcf7-form input[type="text"]:focus,
#bt-contacts .btc-form-side .wpcf7-form input[type="email"]:focus,
#bt-contacts .btc-form-side .wpcf7-form input[type="tel"]:focus,
#bt-contacts .btc-form-side .wpcf7-form textarea:focus { border-color: #00897b !important; }
#bt-contacts .btc-form-side .wpcf7-form input[type="submit"] {
  width: 100% !important; height: 46px !important; border-radius: 23px !important;
  background: linear-gradient(135deg,#00695c,#00897b) !important;
  color: #fff !important; border: none !important;
  font-size: 15px !important; font-weight: 700 !important; cursor: pointer !important;
  font-family: inherit !important; box-shadow: 0 4px 18px rgba(0,137,123,.3) !important;
  transition: box-shadow .2s, transform .15s !important;
}
#bt-contacts .btc-form-side .wpcf7-form input[type="submit"]:hover {
  box-shadow: 0 6px 24px rgba(0,137,123,.45) !important;
  transform: translateY(-1px) !important;
}

/* Два офиса */
#bt-contacts .btc-offices { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 20px; }
#bt-contacts .btc-office {
  border: 1.5px solid #f0f0f0; border-radius: 14px;
  padding: 20px; position: relative; overflow: hidden;
}
#bt-contacts .btc-office::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg,#00695c,#00897b);
}
#bt-contacts .btc-office-tag { font-size: 10px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; color: #00695c; margin-bottom: 6px; }
#bt-contacts .btc-office-name { font-size: 14px; font-weight: 800; color: #111; margin-bottom: 10px; }
#bt-contacts .btc-office-addr { display: flex; align-items: flex-start; gap: 7px; }
#bt-contacts .btc-office-addr svg { flex-shrink: 0; margin-top: 2px; }
#bt-contacts .btc-office-addr span { font-size: 13px; color: #555; line-height: 1.5; }

/* Менеджер */
#bt-contacts .btc-manager {
  background: linear-gradient(135deg,#f0faf0,#e8f5e9);
  border-radius: 14px; padding: 22px; border: 1px solid #c8e6c9;
  display: flex; align-items: center; gap: 16px; margin-bottom: 16px;
}
#bt-contacts .btc-mgr-ava {
  width: 52px; height: 52px; border-radius: 50%; flex-shrink: 0;
  background: linear-gradient(135deg,#00695c,#00897b);
  display: flex; align-items: center; justify-content: center;
  font-size: 16px; font-weight: 800; color: #fff;
}
#bt-contacts .btc-mgr-name { font-size: 15px; font-weight: 800; color: #111; margin-bottom: 2px; }
#bt-contacts .btc-mgr-role { font-size: 12px; color: #888; margin-bottom: 6px; }
#bt-contacts .btc-mgr-phone { font-size: 14px; font-weight: 700; color: #00695c; text-decoration: none; }

/* Emails */
#bt-contacts .btc-emails { border: 1.5px solid #f0f0f0; border-radius: 14px; overflow: hidden; }
#bt-contacts .btc-email-row { display: flex; align-items: center; gap: 14px; padding: 14px 18px; border-bottom: 1px solid #f5f5f5; }
#bt-contacts .btc-email-row:last-child { border-bottom: none; }
#bt-contacts .btc-email-ico { width: 36px; height: 36px; border-radius: 8px; flex-shrink: 0; background: #f0faf0; display: flex; align-items: center; justify-content: center; }
#bt-contacts .btc-email-lbl { font-size: 11px; color: #bbb; font-weight: 600; letter-spacing: .5px; margin-bottom: 2px; }
#bt-contacts .btc-email-val { font-size: 14px; font-weight: 700; }
#bt-contacts .btc-email-val a { color: #00695c; text-decoration: none; }
#bt-contacts .btc-email-val a:hover { text-decoration: underline; }

/* Адаптив */
@media (max-width: 768px) {
  #bt-contacts .btc-bar-inner { flex-direction: column; }
  #bt-contacts .btc-bar-item { border-right: none; border-bottom: 1px solid #f0f0f0; padding: 16px 20px; }
  #bt-contacts .btc-bar-item:last-child { border-bottom: none; }
  #bt-contacts .btc-grid { grid-template-columns: 1fr; }
  #bt-contacts .btc-hero h1 { font-size: 26px; }
  #bt-contacts .btc-offices { grid-template-columns: 1fr; }
}

/* На странице контактов скрываем дублирующий subfooter-блок */
.page-id-678 .subfooter { display: none !important; }

/* Кастомное уведомление об успешной отправке */
#bt-contacts .btc-success {
  align-items: center; gap: 12px;
  background: #e8f5e9; border: 1.5px solid #a5d6a7;
  color: #2e7d32; border-radius: 12px;
  padding: 18px 20px; font-size: 15px; font-weight: 600;
  margin-bottom: 20px;
}

/* CF7 validation errors — оставляем видимыми */
#bt-contacts .wpcf7-response-output[aria-hidden="false"] { display: block !important; }
#bt-contacts .wpcf7-response-output {
  margin: 12px 0 0 !important; padding: 12px 16px !important;
  border-radius: 10px !important; font-size: 14px !important;
  border: none !important; font-weight: 600 !important;
}
#bt-contacts .wpcf7-validation-errors,
#bt-contacts .wpcf7-spam-blocked,
#bt-contacts .wpcf7-mail-sent-ng { background: #fff3e0 !important; color: #e65100 !important; }

/* Поля формы */
#bt-contacts .btc-form-fields { display: flex; flex-direction: column; gap: 0; }
#bt-contacts .opt-form { color: #333; }

/* Метка поля над инпутом */
#bt-contacts .btc-fl {
  display: flex; flex-direction: column; gap: 5px;
  margin-bottom: 14px;
}
/* Заголовок поля (текст + * в одной строке) */
#bt-contacts .btc-fl-hdr {
  display: block;
  font-size: 12px; font-weight: 700; color: #888; letter-spacing: .4px; text-transform: uppercase;
}
#bt-contacts .btc-fl .wpcf7-form-control-wrap { display: block; }
#bt-contacts .btc-req { color: #e53935; font-size: 13px; font-weight: 700; margin-left: 1px; }

/* Строка чекбокса согласия — CF7 оборачивает в <p>, flex ставим на него */
#bt-contacts .btc-policy-row { margin-bottom: 6px; }
#bt-contacts .btc-policy-row > p {
  display: flex !important; align-items: flex-start !important; gap: 14px !important;
  margin: 0 !important; flex-wrap: nowrap !important;
}
#bt-contacts .btc-policy-row .wpcf7-form-control-wrap {
  flex-shrink: 0 !important; display: inline-flex !important;
}
#bt-contacts .btc-policy-row .wpcf7-form-control { display: inline-flex !important; }
#bt-contacts .btc-policy-row .wpcf7-list-item { margin: 0 !important; display: inline-flex !important; }
#bt-contacts .btc-policy-row .wpcf7-list-item label { margin: 0; display: inline-flex !important; }
#bt-contacts .btc-policy-row input[type="checkbox"] {
  width: 16px !important; height: 16px !important;
  margin-top: 2px !important;
  cursor: pointer; flex-shrink: 0; accent-color: #00897b;
}
#bt-contacts .btc-policy-row .wpcf7-list-item-label { display: none !important; }
#bt-contacts .btc-policy-txt {
  font-size: 13px; color: #555; line-height: 1.5; cursor: pointer; flex: 1;
}

/* Капча */
#bt-contacts .btc-captcha-row { margin-bottom: 14px; }
#bt-contacts .btc-captcha-lbl {
  font-size: 12px !important; font-weight: 700 !important; color: #888 !important;
  letter-spacing: .4px; text-transform: uppercase;
  display: flex !important; flex-direction: column; gap: 10px; margin-bottom: 0 !important;
}
/* Весь блок капчи — question + input в одну строку */
#bt-contacts .dscf7captcha {
  display: flex !important; flex-wrap: wrap; align-items: center; gap: 12px; font-size: 15px;
}
#bt-contacts .dscf7captcha br { display: none !important; }
#bt-contacts .dscf7captcha img { border-radius: 6px; }
#bt-contacts .dscf7captcha input[type="text"] {
  width: 80px !important;
  height: 36px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-align: center !important;
  border-radius: 8px !important;
  border: 1.5px solid #ddd !important;
  padding: 0 !important;
}

/* ═══════════════════════════════════════════════════════════
   КАСТОМНЫЙ ФИЛЬТР КАТАЛОГА (.bt-filter)
═══════════════════════════════════════════════════════════ */
.bt-filter { font-family: inherit; color: #1a1a1a; }
.woof_redraw_zone.bt-filter-active .woof_container_product_cat,
.woof_redraw_zone.bt-filter-active .woof_container_product_tag,
.woof_redraw_zone.bt-filter-active .woof_price_filter { display:none!important; }

/* Поле текстового поиска внутри bt-filter */
.bt-filter .woof_text_search_container {
    display:block !important;
    width:100% !important;
    float:none !important;
    margin-bottom:14px !important;
    padding:0 !important;
}
.bt-filter .woof_container_overlay_item { display:none; }
.bt-filter .woof_container_inner {
    position:relative;
    width:100% !important;
    padding:0 !important;
}
.bt-filter .woof_text_search_go { display:none; }
.bt-filter .woof_husky_txt-input {
    width:100%; box-sizing:border-box;
    padding:8px 10px;
    border:1.5px solid #d4e8d4; border-radius:9px;
    font-size:12px; font-family:inherit; color:#333;
    background:#fff;
    outline:none; transition:border-color .18s,box-shadow .18s;
    -webkit-appearance:none; appearance:none;
}
.bt-filter .woof_husky_txt-input::placeholder { color:#aaa; }
.bt-filter .woof_husky_txt-input:focus {
    border-color:#00897b;
    box-shadow:0 0 0 3px rgba(0,137,123,.1);
}
.btf-type-toggle { display:flex; border-radius:10px; overflow:hidden; border:1.5px solid #00897b; margin-bottom:14px; }
.btf-type-btn { flex:1; display:flex; align-items:center; justify-content:center; gap:6px; padding:9px 6px; border:none; background:#fff; color:#00695c; font-size:11.5px; font-weight:700; cursor:pointer; transition:background .15s,color .15s; font-family:inherit; line-height:1; }
.btf-type-btn:not(:last-child) { border-right:1.5px solid #00897b; }
.btf-type-btn svg { width:15px; height:15px; flex-shrink:0; }
.btf-type-btn.btf-all { font-size:11px; max-width:52px; }
.btf-type-btn.active { background:#00695c; color:#fff; }
.btf-type-btn:hover:not(.active) { background:#e8f5e9; }
.btf-section { margin-bottom:11px; }
.btf-label { display:flex; align-items:center; gap:6px; font-size:11px; font-weight:700; color:#444; text-transform:uppercase; letter-spacing:.05em; margin-bottom:5px; }
.btf-num { width:17px; height:17px; border-radius:50%; background:#00695c; color:#fff; font-size:10px; font-weight:800; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.btf-select { width:100%; padding:8px 30px 8px 10px; border:1.5px solid #d4e8d4; border-radius:9px; font-size:12px; font-family:inherit; color:#333; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2300695c' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 9px center; -webkit-appearance:none; appearance:none; cursor:pointer; outline:none; transition:border-color .18s,box-shadow .18s; }
.btf-select:focus { border-color:#00897b; box-shadow:0 0 0 3px rgba(0,137,123,.1); }
.btf-select:disabled { background-color:#f5f5f5; color:#aaa; cursor:not-allowed; }
.btf-coming { display:flex; align-items:center; gap:6px; padding:7px 10px; background:#f9f9f9; border:1.5px dashed #d0d0d0; border-radius:9px; font-size:11px; color:#aaa; }
.btf-coming svg { width:13px; height:13px; flex-shrink:0; color:#bbb; }
.btf-price-row { display:flex; align-items:center; gap:6px; }
.btf-price-inp { flex:1; padding:7px 8px; border:1.5px solid #d4e8d4; border-radius:8px; font-size:12px; font-family:inherit; text-align:center; outline:none; -moz-appearance:textfield; min-width:0; transition:border-color .18s; }
.btf-price-inp::-webkit-outer-spin-button,.btf-price-inp::-webkit-inner-spin-button { -webkit-appearance:none; }
.btf-price-inp:focus { border-color:#00897b; }
.btf-price-sep { color:#bbb; font-size:14px; flex-shrink:0; }
.btf-price-unit { font-size:11px; color:#999; flex-shrink:0; }
.btf-checks { display:flex; flex-direction:column; gap:6px; padding:9px 10px; background:#f0fff4; border-radius:9px; border:1px solid #c8e6c9; }
.btf-check-label { display:flex; align-items:center; gap:7px; font-size:12px; font-weight:600; cursor:pointer; user-select:none; padding:1px 0; }
.btf-check-label input[type="checkbox"] { width:15px; height:15px; accent-color:#00897b; cursor:pointer; flex-shrink:0; }
.btf-check-label svg { width:14px; height:14px; flex-shrink:0; }
.btf-check-label.btf-new { color:#1b5e20; }
.btf-check-label.btf-sale { color:#b71c1c; }
.btf-check-label.btf-disc { color:#e65100; }
.btf-actions { display:flex; gap:7px; margin-top:12px; }
.btf-apply { flex:1; padding:10px; background:linear-gradient(135deg,#00695c,#00897b); color:#fff; border:none; border-radius:9px; font-size:13px; font-weight:700; font-family:inherit; cursor:pointer; transition:opacity .18s,transform .12s; box-shadow:0 2px 8px rgba(0,137,123,.3); }
.btf-apply:hover { opacity:.88; transform:translateY(-1px); }
.btf-reset { padding:10px 13px; background:#f0f0f0; color:#666; border:none; border-radius:9px; font-size:12px; font-family:inherit; cursor:pointer; transition:background .15s,color .15s; }
.btf-reset:hover { background:#ffe8e8; color:#c62828; }
.btf-active-tags { display:flex; flex-wrap:wrap; gap:4px; margin-top:10px; }
.btf-active-tags:empty { display:none; }
.btf-tag { display:inline-flex; align-items:center; gap:3px; padding:3px 8px; background:#e8f5e9; border:1px solid #a5d6a7; border-radius:10px; font-size:10px; font-weight:600; color:#1b5e20; }
.btf-tag button { border:none; background:none; cursor:pointer; color:#888; font-size:12px; line-height:1; padding:0; margin-left:1px; }

/* ── WOOF-фильтр: кнопка «Сброс» в фирменный цвет сайта ── */
.woof_redraw_zone .button.woof_reset_search_form,
.woof_reset_search_form,
input.woof_reset_search_form,
button.woof_reset_search_form {
    background: linear-gradient(135deg,#00695c,#00897b) !important;
    background-color: #00695c !important;
    color: #fff !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(0,137,123,.3) !important;
    text-shadow: none !important;
    transition: opacity .18s, transform .12s !important;
}
.woof_reset_search_form:hover {
    opacity: .9 !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
}

/* ═══════════════════════════════════════════════════════════
   B2B TELEGRAM — чип в шапке (Вариант A) + кнопка в моб.меню
   Маркетплейсы компактнее, «Получить прайс» остаётся доминантой
═══════════════════════════════════════════════════════════ */
#header .bt-mp-chip {
    height: 40px !important;
    width: auto !important;
    min-width: 56px !important;
    padding: 0 13px !important;
    gap: 5px !important;
    font-size: 12px !important;
    border-radius: 20px !important;
}
#header .bt-mp-chip svg { flex-shrink: 0; }
#header .bt-mp-tg {
    background: linear-gradient(135deg, #0088cc, #229ED9) !important;
    box-shadow: 0 4px 18px rgba(34,158,217,.3) !important;
}
#header .bt-mp-tg:hover {
    box-shadow: 0 6px 24px rgba(34,158,217,.5) !important;
}

/* Кнопка B2B в мобильном меню */
#mobile-mnu .mob-b2b-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    margin: 14px 20px 8px !important;
    padding: 13px !important;
    background: linear-gradient(135deg, #2e7d32, #1b5e20) !important;
    color: #fff !important;
    border-radius: 10px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    border: none !important;
}
#mobile-mnu .mob-b2b-btn svg { flex-shrink: 0; }
/* Кнопка B2B в мобильном меню: разрешаем перенос текста (иначе «…в Telegram» обрезается).
   Таргетим класс напрямую — работает независимо от контейнера #mobile-mnu. */
.mob-b2b-btn { white-space: normal !important; text-align: center !important; line-height: 1.3 !important; }

/* ═══════════════════════════════════════════════════════════
   GLASSMORPHISM HEADER — Вариант 7
   Тёмно-зелёный градиент-фон + стеклянная grid-карточка
═══════════════════════════════════════════════════════════ */

/* 1. Фон шапки — зелёный градиент (мобилка + база; десктоп переопределён ниже) */
#header.site-header {
    background: linear-gradient(135deg, #1b5e20 0%, #004d40 55%, #006064 100%);
}

/* 1b. Десктоп: сплошной фон шапки → белый. Зелёным остаётся только
       блок меню (grid-карточка, см. п.2), логотип на мобилке белый —
       поэтому смена фона только ≥1026px. */
@media (min-width: 1026px) {
    #header.site-header {
        background: #fff !important;
    }
}

/* 2. Grid-контейнер — зелёная карточка меню (раньше стекло: зелёный
      просвечивал сквозь фон; теперь фон белый → красим карточку сами) */
@media (min-width: 1026px) {
    #header .container.bt-header-grid {
        background: linear-gradient(135deg, #1b5e20 0%, #004d40 55%, #006064 100%) !important;
        border: 1px solid rgba(255,255,255,.12) !important;
        border-radius: 14px !important;
        margin-top: 10px !important;
        margin-bottom: 10px !important;
        box-shadow: 0 6px 24px rgba(0,77,64,.18) !important;
    }

    /* Contacts-ячейка растягивается на col 3–4 — та же ширина что и кнопка прайса */
    .bt-grid-contacts {
        grid-column: 3 / 5 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
    }
    /* Бургер остаётся в col 4, поверх contacts (z-index) */
    .bt-grid-burger {
        position: relative !important;
        z-index: 3 !important;
    }
}

/* 3. Пункты главного меню — белые + green underline при hover */
#header .menu-search-wrapper .menu__holder > li.nav-menu-element > a {
    color: rgba(255,255,255,.82) !important;
    position: relative !important;
}
#header .menu-search-wrapper .menu__holder > li.nav-menu-element > a::after {
    content: '' !important;
    position: absolute !important;
    bottom: 4px !important;
    left: 14px !important;
    right: 14px !important;
    height: 1.5px !important;
    background: #a5d6a7 !important;
    border-radius: 2px !important;
    transform: scaleX(0) !important;
    transition: transform .25s ease !important;
}
#header .menu-search-wrapper .menu__holder > li.nav-menu-element > a:hover {
    color: #fff !important;
}
#header .menu-search-wrapper .menu__holder > li.nav-menu-element > a:hover::after,
#header .menu-search-wrapper .menu__holder > li.current-menu-item > a::after,
#header .menu-search-wrapper .menu__holder > li.current-menu-ancestor > a::after {
    transform: scaleX(1) !important;
}
#header .menu-search-wrapper .menu__holder > li.current-menu-item > a,
#header .menu-search-wrapper .menu__holder > li.current-menu-ancestor > a {
    color: #fff !important;
    font-weight: 600 !important;
}

/* 4. Контакты — glass-пилюля + белый текст, высота = кнопке прайса */
.bt-header-contacts {
    background: rgba(255,255,255,.18) !important;
    border: 1px solid rgba(255,255,255,.3) !important;
    border-radius: 22px !important;
    height: 40px !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
    align-items: center !important;
    flex-shrink: 0 !important;
    width: 100% !important;       /* растягиваем на всю ширину ячейки */
}
.bt-header-contacts .email a,
.bt-header-contacts .phone > a {
    color: rgba(255,255,255,.9) !important;
}
.bt-header-contacts .email a:hover,
.bt-header-contacts .phone > a:hover {
    color: #a5d6a7 !important;
}
.bt-header-divider {
    background: rgba(255,255,255,.28) !important;
}

/* 5. Бургер — белые полоски */
#header .burger span {
    background: #fff !important;
}

/* 6. WhatsApp — оставляем оригинальный зелёный SVG, никаких фильтров */
#header .whatsapp {
    filter: none !important;
    opacity: 1 !important;
}

/* 7. Кнопка «Получить прайс» — glass, та же высота что и contacts pill */
#header .bt-search-price {
    background: rgba(255,255,255,.18) !important;
    border: 1px solid rgba(255,255,255,.35) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12) !important;
    color: #fff !important;
    height: 40px !important;
}
#header .bt-search-price:hover {
    background: rgba(255,255,255,.28) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 18px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.15) !important;
}
#header .bt-search-price .bpp-ico {
    background: rgba(255,255,255,.2) !important;
}

/* Контейнер кнопки: центрируем pill вертикально в 44px-строке */
#header .bt-price-wrapper {
    align-items: center !important;
}

/* 8. Полоса категорий topmenucats */
#header .topmenucats {
    border-top: 1px solid rgba(255,255,255,.15) !important;
    background: rgba(0,0,0,.12) !important;
}

/* Скрыть полосу категорий на всех страницах */
#header .topmenucats { display: none !important; }

/* 9. Поле поиска fibosearch — glass */
#header .dgwt-wcas-sf-wrapp {
    background: rgba(255,255,255,.14) !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    border-radius: 22px !important;
}
#header .dgwt-wcas-search-input {
    background: transparent !important;
    color: #fff !important;
    border: none !important;
}
#header .dgwt-wcas-search-input::placeholder {
    color: rgba(255,255,255,.5) !important;
}
#header .dgwt-wcas-search-input:focus {
    outline: none !important;
    box-shadow: none !important;
}
#header .dgwt-wcas-search-submit {
    background: transparent !important;
    color: rgba(255,255,255,.7) !important;
    border: none !important;
}
#header .dgwt-wcas-search-submit:hover {
    color: #fff !important;
}
#header .dgwt-wcas-search-form,
#header .dgwt-wcas-search-form-wrapp,
#header .dgwt-wcas-search-wrapp {
    border: none !important;
    box-shadow: none !important;
}

/* ═══════════════════════════════════════════════════════════
   КАРТОЧКА ТОВАРА — Vertical Dark (btc-card)
   Шаблон: woocommerce/content-product.php
═══════════════════════════════════════════════════════════ */

/* Сетка: 3 колонки — независимо от columns-N класса WooCommerce/Saphali */
ul.products {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    align-items: stretch !important;
    /* Сбрасываем float-layout который WooCommerce использует по умолчанию */
    overflow: visible !important;
}
ul.products::after { display: none !important; }

ul.products li.product.btc-card {
    float: none !important;
    clear: none !important;
    width: calc(33.333% - 14px) !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: #fff !important;
    border: 1px solid #e4ede4 !important;
    box-shadow: 0 2px 12px rgba(27,58,47,.08) !important;
    transition: transform .22s, box-shadow .22s !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
}
ul.products li.product.btc-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 32px rgba(27,58,47,.13) !important;
}

/* Ссылка-overlay: вся карточка кликабельна */
.btc-card-cover {
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: 18px;
}

/* Тёмная зона с фото */
.btc-top {
    background: linear-gradient(160deg, #1b3a2f 0%, #00695c 100%);
    height: 185px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    flex-shrink: 0;
}
.btc-top img,
.btc-top .attachment-woocommerce_thumbnail,
.btc-top .size-woocommerce_thumbnail {
    max-width: 140px !important;
    max-height: 145px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    filter: drop-shadow(0 6px 18px rgba(0,0,0,.4));
}

/* SVG-волна */
.btc-wave {
    display: block;
    width: 100%;
    flex-shrink: 0;
    margin-top: -1px;
}

/* Белое тело */
.btc-body {
    padding: 16px 18px 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* Название товара */
.btc-name {
    display: block;
    font-size: 13px;
    color: #1a1a1a;
    font-weight: 600;
    line-height: 1.45;
    margin-bottom: 10px;
    text-decoration: none;
    position: relative;
    z-index: 2;
}
.btc-name:hover { color: #00695c; }

/* Производитель и бренд */
.btc-meta { margin-bottom: 14px; }
.btc-meta-row {
    display: flex;
    align-items: baseline;
    gap: 5px;
    line-height: 1.6;
}
.btc-meta-k { font-size: 12px; color: #aaa; flex-shrink: 0; }
.btc-meta-v {
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}
.btc-mfr   { color: #1b3a2f; }
.btc-brand { color: #00897b; }

/* Цена */
.btc-price-from { font-size: 12px; color: #aaa; margin-bottom: 2px; }
.btc-price {
    font-size: 26px;
    font-weight: 900;
    color: #1b3a2f;
    line-height: 1;
    margin-bottom: 10px;
}
.btc-price-cur { font-size: 18px; }
.btc-price-per { font-size: 12px; color: #aaa; font-weight: 400; }

/* ── Акция: значок −% + старая/новая цена ── */
.btc-sale-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 3;
    background: linear-gradient(135deg, #e53935, #ff5722);
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    padding: 6px 11px;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(229,57,53,.4);
    letter-spacing: .3px;
    line-height: 1;
}
.btc-price-old {
    font-size: 14px;
    color: #b0bec5;
    text-decoration: line-through;
    font-weight: 600;
    margin-bottom: 1px;
    line-height: 1;
}
.btc-price.btc-price--sale { color: #e53935; }

/* Коробка */
.btc-pack {
    font-size: 12px;
    color: #555;
    background: #f4f8f4;
    border-left: 3px solid #00897b;
    padding: 6px 11px;
    border-radius: 0 7px 7px 0;
    margin-bottom: 10px;
}

/* Остаток */
.btc-stock {
    font-size: 12px;
    color: #2e7d32;
    font-weight: 600;
    margin-bottom: 14px;
    flex: 1;
}

/* Кнопка «Купить оптом» */
.btc-btn {
    display: block;
    width: 100%;
    padding: 11px;
    text-align: center;
    background: linear-gradient(135deg, #00695c, #00897b);
    color: #fff !important;
    border: none;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(0,105,92,.28);
    transition: box-shadow .2s, transform .15s;
    position: relative;
    z-index: 2;
}
.btc-btn:hover {
    box-shadow: 0 6px 20px rgba(0,105,92,.38);
    transform: translateY(-1px);
    color: #fff !important;
    text-decoration: none;
}

/* Скрываем стандартные WooCommerce элементы внутри карточки */
.btc-card .star-rating,
.btc-card .button.add_to_cart_button,
.btc-card .added_to_cart { display: none !important; }

/* === Скрываем «Нет продуктов в этой категории» на страницах с шорткодом WC === */
.woocommerce-no-products-found,
ul.products + .woocommerce-info {
    display: none !important;
}

/* === Каталог: отступ сверху + зазор между сайдбаром и контентом === */
.woocommerce-page #primary > .content {
    margin-top: 40px;
}
/* Сайдбар сужаем на 20px, column-gap добавляет ровно эти 20px визуального зазора.
   Карточкам достаётся то же пространство — 3 колонки сохраняются. */
.content.wccategory .sidebar {
    min-width: 280px !important;
    max-width: 280px;
}
.content.wccategory {
    column-gap: 20px;
}

/* === Кнопка «Загрузить еще» (плагин Load More Products) — в цвет сайта === */
/* Плагин красит кнопку синим inline-стилем; перекрываем фирменным зелёным. */
.lmp_load_more_button {
    text-align: center !important;
    margin: 28px 0 8px !important;
}
.lmp_load_more_button a.lmp_button {
    display: inline-block !important;
    padding: 13px 40px !important;
    background: linear-gradient(135deg, #00695c, #00897b) !important;
    background-color: #00695c !important;
    color: #fff !important;
    border: none !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(0,105,92,.28) !important;
    transition: box-shadow .2s, transform .15s !important;
}
/* :hover — селектор с .br_lmp_button_settings, чтобы перекрыть inline-<style> плагина */
.lmp_load_more_button.br_lmp_button_settings a.lmp_button:hover {
    background: linear-gradient(135deg, #00897b, #009e8c) !important;
    color: #fff !important;
    box-shadow: 0 6px 20px rgba(0,105,92,.38) !important;
    transform: translateY(-1px) !important;
}

/* ═══════════════════════════════════════════════════════════
   СТРАНИЦА «СОТРУДНИЧЕСТВО» — Page ID 1174
═══════════════════════════════════════════════════════════ */

/* Снимаем ограничения контейнера для этой страницы */
.page-id-1174 .content > .content {
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
.page-id-1174 .page__title { display: none !important; }
.page-id-1174 .breadcrumb { padding: 8px 48px; }

/* ── HERO ── */
.pn-hero {
  background: linear-gradient(135deg, #1b5e20 0%, #004d40 58%, #006064 100%);
  padding: 56px 48px;
  display: grid;
  grid-template-columns: 1fr 390px;
  gap: 48px;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.pn-hero::before {
  content: '';
  position: absolute; right: -100px; top: -100px;
  width: 500px; height: 500px; border-radius: 50%;
  background: radial-gradient(circle, rgba(38,198,218,.12), transparent 70%);
  pointer-events: none;
}
.pn-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.2);
  border-radius: 20px; padding: 6px 16px;
  font-size: 11px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase;
  color: rgba(255,255,255,.8); margin-bottom: 22px;
}
.pn-badge svg { width: 12px; height: 12px; }
.pn-hero h1 {
  font-size: 42px !important; font-weight: 900 !important; color: #fff !important;
  line-height: 1.1 !important; letter-spacing: -1px !important; margin-bottom: 16px !important;
  padding: 0 !important;
}
.pn-hero h1 span { color: #26c6da; }
.pn-hero-sub {
  font-size: 16px; color: rgba(255,255,255,.65);
  line-height: 1.75; margin-bottom: 32px; max-width: 460px;
}
.pn-stats { display: flex; gap: 32px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.14); }
.pn-stat { display: flex; flex-direction: column; gap: 3px; }
.pn-stat-n { font-size: 28px; font-weight: 900; color: #fff; line-height: 1; }
.pn-stat-n em { color: #26c6da; font-style: normal; font-size: 16px; }
.pn-stat-l { font-size: 11px; color: rgba(255,255,255,.45); }

/* Hero card */
.pn-hero-card {
  background: rgba(255,255,255,.1);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 20px; padding: 28px 24px;
  position: relative; z-index: 1;
}
.pn-hero-card h3 { font-size: 17px !important; font-weight: 800 !important; color: #fff !important; margin-bottom: 6px !important; padding: 0 !important; }
.pn-hero-card > p { font-size: 13px; color: rgba(255,255,255,.55); line-height: 1.65; margin-bottom: 20px; }
.pn-form-note { font-size: 11px; color: rgba(255,255,255,.3); text-align: center; margin-top: 8px; }

/* CF7 внутри hero-card */
.pn-hero-card .opt-form {
  background: none !important; padding: 0 !important; border: none !important;
  box-shadow: none !important; color: rgba(255,255,255,.65) !important;
  font-size: 13px !important; font-style: normal !important;
  margin-bottom: 12px !important;
}
.pn-hero-card .opt-form > p { color: #fff !important; }
.pn-hero-card .opt-form .flex { flex-direction: column !important; gap: 0 !important; font-size: 14px !important; }
.pn-hero-card .opt-form label { width: 100% !important; display: block !important; }
.pn-hero-card .wpcf7-form input[type="text"],
.pn-hero-card .wpcf7-form input[type="email"],
.pn-hero-card .wpcf7-form input[type="tel"] {
  width: 100% !important; height: 44px !important;
  border-radius: 11px !important; margin-bottom: 10px !important;
  background: rgba(255,255,255,.12) !important; border: 1px solid rgba(255,255,255,.2) !important;
  color: #fff !important; font-size: 14px !important; padding: 0 16px !important;
  box-sizing: border-box !important;
}
.pn-hero-card .wpcf7-form input[type="text"]::placeholder,
.pn-hero-card .wpcf7-form input[type="email"]::placeholder,
.pn-hero-card .wpcf7-form input[type="tel"]::placeholder { color: rgba(255,255,255,.4) !important; }
/* Кнопка Отправить — белая */
.pn-hero-card .wpcf7-form input[type="submit"],
.pn-hero-card .wpcf7-form .wpcf7-submit {
  width: 100% !important; height: 46px !important; border-radius: 11px !important;
  background: #fff !important;
  color: #004d40 !important; font-size: 15px !important; font-weight: 700 !important;
  border: none !important; cursor: pointer !important; margin-top: 4px !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.18) !important;
}
/* Согласие — белый текст, "обработку" — цвет акцента */
.pn-hero-card .policy-error,
.pn-hero-card .wpcf7-list-item { display: none !important; }
.pn-hero-card .checkbox-label {
  display: block !important; font-size: 12px !important;
  color: rgba(255,255,255,.65) !important; line-height: 1.55 !important;
  margin-bottom: 10px !important; margin-top: 4px !important;
}
.pn-hero-card .checkbox-label a { color: #26c6da !important; text-decoration: underline !important; }
.pn-hero-card .wpcf7-response-output {
  color: #fff !important; border-color: rgba(255,255,255,.3) !important;
  margin-top: 8px !important; font-size: 13px !important; border-radius: 8px !important;
}
.pn-hero-card .wpcf7-not-valid-tip { color: #ff8a80 !important; font-size: 12px !important; }

/* ── STATS BAR ── */
.pn-bars {
  background: #fff; border-bottom: 1px solid #eef2ee;
  box-shadow: 0 2px 10px rgba(0,0,0,.05);
  display: flex;
}
.pn-bar-item {
  flex: 1; display: flex; align-items: center; gap: 14px;
  padding: 18px 24px; border-right: 1px solid #f0f4f0;
}
.pn-bar-item:last-child { border-right: none; }
.pn-bar-ico {
  width: 40px; height: 40px; border-radius: 10px; flex-shrink: 0;
  background: linear-gradient(135deg, #e8f5e9, #c8e6c9);
  display: flex; align-items: center; justify-content: center;
}
.pn-bar-ico svg { width: 20px; height: 20px; stroke: #2e7d32; stroke-width: 2; fill: none; stroke-linecap: round; stroke-linejoin: round; }
.pn-bar-txt strong { font-size: 13px; font-weight: 700; color: #111; display: block; }
.pn-bar-txt span { font-size: 11px; color: #bbb; }

/* ── ФОРМАТЫ ── */
.pn-formats { display: grid; grid-template-columns: 1fr 1fr; }
.pn-fmt-dark {
  background: linear-gradient(145deg, #004d40, #00695c);
  padding: 44px 48px; display: flex; flex-direction: column; gap: 16px;
  position: relative; overflow: hidden;
}
.pn-fmt-dark::after {
  content: ''; position: absolute; right: -60px; top: -60px;
  width: 220px; height: 220px; border-radius: 50%;
  background: rgba(38,198,218,.07); pointer-events: none;
}
.pn-fmt-light {
  background: #fff; padding: 44px 48px;
  display: flex; flex-direction: column; gap: 16px;
  border-left: 1px solid #eef2ee;
}
.pn-fmt-badge {
  display: inline-flex; align-items: center; gap: 7px; border-radius: 8px;
  padding: 5px 12px; font-size: 10px; font-weight: 700;
  letter-spacing: 1.5px; text-transform: uppercase; width: fit-content;
}
.pn-fmt-dark .pn-fmt-badge { background: rgba(255,255,255,.13); color: rgba(255,255,255,.8); }
.pn-fmt-dark .pn-fmt-badge svg { width: 12px; height: 12px; stroke: #26c6da; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.pn-fmt-light .pn-fmt-badge { background: #e8f5e9; color: #2e7d32; }
.pn-fmt-light .pn-fmt-badge svg { width: 12px; height: 12px; stroke: #2e7d32; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.pn-fmt-dark h3 { font-size: 24px !important; font-weight: 900 !important; color: #fff !important; line-height: 1.2 !important; margin: 0 !important; }
.pn-fmt-light h3 { font-size: 24px !important; font-weight: 900 !important; color: #111 !important; line-height: 1.2 !important; margin: 0 !important; }
.pn-fmt-dark > p { font-size: 14px; color: rgba(255,255,255,.6); line-height: 1.75; }
.pn-fmt-light > p { font-size: 14px; color: #888; line-height: 1.75; }
.pn-features { list-style: none !important; display: flex; flex-direction: column; gap: 10px; margin: 4px 0 !important; padding: 0 !important; }
.pn-features li { font-size: 13px !important; display: flex !important; align-items: center !important; gap: 10px !important; padding: 0 !important; }
.pn-features li::before { display: none !important; }
.pn-fmt-dark .pn-features li { color: rgba(255,255,255,.8); }
.pn-fmt-light .pn-features li { color: #555; }
.pn-feat-ico {
  width: 20px; height: 20px; border-radius: 50%; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
}
.pn-fmt-dark .pn-feat-ico { background: rgba(38,198,218,.18); }
.pn-fmt-light .pn-feat-ico { background: #e8f5e9; }
.pn-feat-ico svg { width: 11px; height: 11px; fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.pn-fmt-dark .pn-feat-ico svg { stroke: #26c6da; }
.pn-fmt-light .pn-feat-ico svg { stroke: #2e7d32; }
.pn-fmt-btn {
  height: 48px !important; border-radius: 12px !important; font-size: 15px !important; font-weight: 700 !important;
  border: none !important; cursor: pointer; margin-top: 6px !important;
  display: flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important;
  transition: all .2s; text-decoration: none !important;
}
.pn-fmt-dark .pn-fmt-btn {
  background: #fff !important;
  color: #00695c !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.18);
}
.pn-fmt-light .pn-fmt-btn {
  background: #1a1a1a !important;
  color: #fff !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.18);
}
.pn-fmt-dark .pn-fmt-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 22px rgba(0,0,0,.28);
  color: #00695c !important;
}
.pn-fmt-light .pn-fmt-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 22px rgba(0,0,0,.28);
  color: #fff !important;
}
.pn-fmt-btn svg { width: 16px; height: 16px; fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.pn-fmt-dark .pn-fmt-btn svg { stroke: #00695c; }
.pn-fmt-light .pn-fmt-btn svg { stroke: #fff; }

/* ── ПРЕИМУЩЕСТВА ── */
.pn-adv { background: #f8fdf8; padding: 52px 48px; border-top: 1px solid #eef4ee; }
.pn-sec-tag {
  display: inline-flex; align-items: center; gap: 7px;
  background: #e0f0e0; color: #2e7d32; border-radius: 20px;
  padding: 5px 14px; font-size: 10px; font-weight: 700;
  letter-spacing: 1.5px; text-transform: uppercase; margin-bottom: 12px;
}
.pn-sec-tag svg { width: 10px; height: 10px; stroke: #2e7d32; fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.pn-adv h2 { font-size: 26px !important; font-weight: 900 !important; color: #111 !important; margin: 0 0 28px !important; }
.pn-adv-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.pn-adv-card {
  background: #fff; border-radius: 14px; padding: 22px 18px;
  border: 1.5px solid #e4eee4;
  display: flex; flex-direction: column; gap: 12px;
  transition: all .25s;
}
.pn-adv-card:hover { transform: translateY(-4px); box-shadow: 0 8px 24px rgba(0,137,123,.1); border-color: #a5d6a7; }
.pn-adv-ico {
  width: 48px; height: 48px; border-radius: 14px;
  background: linear-gradient(135deg, #e8f5e9, #c8e6c9);
  display: flex; align-items: center; justify-content: center;
}
.pn-adv-ico svg { width: 24px; height: 24px; stroke: #2e7d32; stroke-width: 1.8; fill: none; stroke-linecap: round; stroke-linejoin: round; }
.pn-adv-t { font-size: 14px; font-weight: 800; color: #111; line-height: 1.3; }
.pn-adv-d { font-size: 12px; color: #999; line-height: 1.65; }

/* ── ПРОЦЕСС ── */
.pn-process { background: #fff; padding: 52px 48px; border-top: 1px solid #eef0ee; }
.pn-process h2 { font-size: 26px !important; font-weight: 900 !important; color: #111 !important; margin: 0 0 36px !important; }
.pn-steps { display: grid; grid-template-columns: repeat(5, 1fr); position: relative; }
.pn-steps::before {
  content: ''; position: absolute;
  top: 26px; left: 10%; right: 10%; height: 2px;
  background: linear-gradient(90deg, #a5d6a7, #26c6da); z-index: 0;
}
.pn-step { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 14px; position: relative; z-index: 1; padding: 0 12px; }
.pn-step-num {
  width: 52px; height: 52px; border-radius: 50%;
  background: linear-gradient(135deg, #004d40, #00897b); color: #fff;
  font-size: 17px; font-weight: 900;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 16px rgba(0,137,123,.4); flex-shrink: 0;
}
.pn-step-t { font-size: 13px; font-weight: 800; color: #111; }
.pn-step-d { font-size: 12px; color: #aaa; line-height: 1.6; }

/* ── CTA ── */
.pn-cta {
  background: linear-gradient(135deg, #004d40, #006064);
  padding: 52px 48px;
  display: grid; grid-template-columns: 1fr auto;
  gap: 40px; align-items: center;
}
.pn-cta h3 { font-size: 26px !important; font-weight: 900 !important; color: #fff !important; margin: 0 0 8px !important; line-height: 1.2 !important; }
.pn-cta > div > p { font-size: 15px; color: rgba(255,255,255,.55); line-height: 1.65; }
.pn-cta-contacts { display: flex; flex-direction: column; gap: 14px; align-items: flex-end; }
.pn-cta-row { display: none !important; }
.pn-cta-row { display: flex; align-items: center; gap: 12px; }
.pn-cta-ico {
  width: 38px; height: 38px; border-radius: 10px;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18);
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.pn-cta-ico svg { width: 17px; height: 17px; stroke: rgba(255,255,255,.85); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.pn-cta-row a { color: #fff !important; font-size: 16px; font-weight: 700; }
.pn-cta-row span { font-size: 11px; color: rgba(255,255,255,.4); display: block; margin-top: 1px; }
.pn-cta-btn {
  margin-top: 6px; height: 50px; padding: 0 32px; border-radius: 25px;
  background: #fff !important; color: #00695c !important; font-size: 15px !important; font-weight: 700 !important;
  border: none !important; cursor: pointer; white-space: nowrap;
  box-shadow: 0 4px 20px rgba(0,0,0,.25);
  transition: all .2s; display: inline-flex !important; align-items: center; gap: 8px;
  text-decoration: none !important;
}
.pn-cta-btn svg { width: 16px; height: 16px; stroke: #00695c; fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.pn-cta-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(0,0,0,.35); background: #fff !important; color: #00695c !important; }

/* ===== /prodazha/ («Станьте партнёром») — мобильная адаптация ===== */
@media (max-width: 980px) {
  .pn-hero { grid-template-columns: 1fr !important; padding: 40px 26px; gap: 30px; }
  .pn-hero h1 { font-size: 32px !important; }
  .pn-formats { grid-template-columns: 1fr !important; }
  .pn-fmt-light { border-left: none; border-top: 1px solid #eef2ee; }
  .pn-adv-grid { grid-template-columns: repeat(3, 1fr) !important; }
  .pn-steps { grid-template-columns: repeat(2, 1fr) !important; gap: 32px 16px; }
  .pn-steps::before { display: none; }
  .pn-cta { grid-template-columns: 1fr !important; gap: 22px; }
  .pn-cta-contacts { align-items: flex-start; }
  .pn-adv, .pn-process, .pn-cta { padding: 44px 26px; }
  .pn-fmt-dark, .pn-fmt-light { padding: 36px 28px; }
}
@media (max-width: 600px) {
  .pn-hero { padding: 32px 16px; gap: 24px; }
  .pn-hero h1 { font-size: 26px !important; }
  .pn-hero-sub { font-size: 14.5px; margin-bottom: 24px; }
  .pn-stats { flex-wrap: wrap; gap: 16px 24px; }
  .pn-stat { flex: 0 0 40%; }
  .pn-hero-card { padding: 22px 18px; }
  .pn-bars { flex-wrap: wrap; }
  .pn-bar-item { flex: 1 1 100%; border-right: none; border-bottom: 1px solid #f0f4f0; padding: 14px 18px; }
  .pn-bar-item:last-child { border-bottom: none; }
  .pn-fmt-dark, .pn-fmt-light { padding: 30px 20px; }
  .pn-fmt-dark h3, .pn-fmt-light h3 { font-size: 21px !important; }
  .pn-adv, .pn-process, .pn-cta { padding: 38px 16px; }
  .pn-adv h2, .pn-process h2 { font-size: 21px !important; }
  .pn-cta h3 { font-size: 21px !important; }
  .pn-adv-grid { grid-template-columns: 1fr 1fr !important; gap: 10px; }
  .pn-adv-card { padding: 18px 14px; }
  .pn-steps { grid-template-columns: 1fr !important; gap: 20px; }
  .pn-step { flex-direction: row; text-align: left; align-items: flex-start; gap: 16px; padding: 0; }
  .pn-step-num { width: 44px; height: 44px; font-size: 15px; }
  .pn-cta-btn { width: 100%; justify-content: center; }
}

/* ── Страница акции: кнопки CTA ── */
.sp-cta { margin:28px 0 0; display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.sp-cta-btn {
    display:inline-flex !important; align-items:center; gap:8px;
    height:48px !important; padding:0 28px !important; border-radius:24px !important;
    background:linear-gradient(135deg,#1b5e20,#00695c) !important;
    color:#fff !important; font-size:15px !important; font-weight:700 !important;
    text-decoration:none !important; border:none !important; cursor:pointer;
    font-family:inherit; line-height:1; box-sizing:border-box !important;
    transition:.18s; width:auto !important; max-width:none !important;
}
.sp-cta-btn:hover { box-shadow:0 6px 20px rgba(0,100,70,.35) !important; color:#fff !important; transform:translateY(-1px); }
.sp-cta-btn-outline {
    display:inline-flex; align-items:center; gap:8px;
    height:48px; padding:0 26px; border-radius:24px;
    background:#fff; color:#2e7d32; font-size:15px; font-weight:700;
    text-decoration:none; border:2px solid #2e7d32; cursor:pointer;
    font-family:inherit; transition:.18s; box-sizing:border-box;
}
.sp-cta-btn-outline:hover { background:#f1f8f2; color:#1b5e20; }

/* ═══════════════════════════════════════════════════════════
   МОБИЛЬНАЯ АДАПТАЦИЯ — ЭТАП 1: ШАПКА
   Планшет : 769–1025px
   Телефон : ≤768px
═══════════════════════════════════════════════════════════ */

/* ── Планшет 769–1025px ── */
@media (min-width: 769px) and (max-width: 1025px) {
    #header .container.bt-header-grid {
        display: grid !important;
        grid-template-columns: auto 1fr auto !important;
        grid-template-rows: auto !important;
        column-gap: 14px !important;
        row-gap: 0 !important;
        align-items: center !important;
        padding: 10px 16px !important;
    }
    .bt-grid-logo {
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: center !important;
    }
    .menu-search-wrapper.bt-grid-menu {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: block !important;
    }
    .menu-search-wrapper.bt-grid-menu > ul.menu__holder { display: none !important; }
    .menu-search-wrapper.bt-grid-menu > .dgwt-wcas-search-wrapp { width: 100% !important; height: 40px !important; }
    #header .menu-search-wrapper .dgwt-wcas-search-wrapp,
    #header .menu-search-wrapper .dgwt-wcas-search-form-wrapp,
    #header .menu-search-wrapper .dgwt-wcas-search-form,
    #header .menu-search-wrapper .dgwt-wcas-sf-wrapp,
    #header .menu-search-wrapper .dgwt-wcas-search-input,
    #header .menu-search-wrapper .dgwt-wcas-search-submit { height: 40px !important; }
    .bt-grid-burger {
        grid-column: 3 !important;
        grid-row: 1 !important;
        align-self: center !important;
        display: flex !important;
    }
    .bt-grid-contacts { display: none !important; }
    .bt-price-wrapper { display: none !important; }
    #header .topmenucats { display: block !important; }
    #header .topmenucats .btc-nav { height: 48px !important; padding: 0 16px !important; }
}

/* ── Телефон ≤768px ── */
@media (max-width: 768px) {
    #header .container.bt-header-grid {
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        grid-template-rows: auto auto !important;
        column-gap: 12px !important;
        row-gap: 8px !important;
        align-items: center !important;
        padding: 10px 14px 8px !important;
    }
    /* Строка 1, кол 1: лого */
    .bt-grid-logo {
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: center !important;
    }
    /* Строка 1, кол 2: бургер */
    .bt-grid-burger {
        grid-column: 2 !important;
        grid-row: 1 !important;
        align-self: center !important;
        display: flex !important;
    }
    /* Строка 2: поиск на всю ширину */
    .menu-search-wrapper.bt-grid-menu {
        grid-column: 1 / 3 !important;
        grid-row: 2 !important;
        display: block !important;
    }
    .menu-search-wrapper.bt-grid-menu > ul.menu__holder { display: none !important; }
    .menu-search-wrapper.bt-grid-menu > .dgwt-wcas-search-wrapp { width: 100% !important; height: 38px !important; }
    #header .menu-search-wrapper .dgwt-wcas-search-wrapp,
    #header .menu-search-wrapper .dgwt-wcas-search-form-wrapp,
    #header .menu-search-wrapper .dgwt-wcas-search-form,
    #header .menu-search-wrapper .dgwt-wcas-sf-wrapp,
    #header .menu-search-wrapper .dgwt-wcas-search-input,
    #header .menu-search-wrapper .dgwt-wcas-search-submit { height: 38px !important; }
    /* Скрываем контакты и прайс-кнопку */
    .bt-grid-contacts { display: none !important; }
    .bt-price-wrapper { display: none !important; }
    /* Лого: нормальный размер */
    #header a.logo__holder img.logo { max-height: 38px !important; width: auto !important; }
    /* Бургер: крупнее для пальца */
    #header .burger {
        width: 36px !important;
        height: 36px !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 5px !important;
        cursor: pointer !important;
        flex-shrink: 0 !important;
    }
    #header .burger span { width: 22px !important; height: 2px !important; }
    /* Чипы FOOD / NON FOOD: показываем и уменьшаем */
    #header .topmenucats { display: block !important; }
    #header .topmenucats .btc-nav {
        height: 44px !important;
        padding: 0 12px !important;
        gap: 5px !important;
    }
    #header .topmenucats .btc-chip {
        height: 32px !important;
        font-size: 11px !important;
        padding: 0 4px !important;
        border-radius: 16px !important;
    }
    #header .topmenucats .btc-ico { width: 26px !important; height: 26px !important; }
    #header .topmenucats .btc-ico svg { width: 14px !important; height: 14px !important; }
    #header .topmenucats .btc-lbl { padding: 0 10px 0 4px !important; }
}

/* ── Мобильное меню #mobile-mnu — выезжает справа ── */
/* На десктопе (>1025px) #mobile-mnu всегда в DOM, но его off-canvas-стили
   живут только в @media (max-width:1025px). Без этого правила меню падало
   в поток без стилей. Скрываем на десктопе. */
@media (min-width: 1026px) {
    #mobile-mnu, #mobile-mnu-overlay { display: none !important; }
}
@media (max-width: 1025px) {
    #mobile-mnu {
        position: fixed !important;
        top: 0 !important;
        right: -100% !important;
        width: 85vw !important;
        max-width: 320px !important;
        height: 100dvh !important;
        background: #fff !important;
        z-index: 9999 !important;
        overflow: hidden !important;
        box-shadow: -8px 0 32px rgba(0,0,0,.2) !important;
        transition: right .3s cubic-bezier(.4,0,.2,1) !important;
        display: flex !important;
        flex-direction: column !important;
        padding: 0 !important;
    }
    #mobile-mnu.is-open {
        right: 0 !important;
    }
    /* Шапка мобильного меню — зелёная */
    #mobile-mnu .logo__holder {
        display: flex !important;
        align-items: center !important;
        flex-shrink: 0 !important;
        padding: 16px 20px !important;
        /* было #1b5e20→#2e7d32 — тот же старый баг-цвет, что чинили на /brands/, отдельное
           правило внутри мобильного меню фикс тогда не задел (найдено внешней проверкой) */
        background: linear-gradient(135deg, #00695c, #00897b) !important;
        text-decoration: none !important;
    }
    #mobile-mnu .logo__holder img.logo {
        max-height: 36px !important;
        width: auto !important;
        filter: brightness(0) invert(1) !important;
    }
    /* Кнопка закрытия */
    #close-mnu {
        position: absolute !important;
        top: 14px !important;
        right: 16px !important;
        width: 30px !important;
        height: 30px !important;
        background: rgba(255,255,255,.2) !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 22px !important;
        color: #fff !important;
        cursor: pointer !important;
        line-height: 1 !important;
        transform: rotate(45deg) !important;
        font-weight: 300 !important;
        z-index: 1 !important;
        user-select: none !important;
    }
    /* ── V3 «Секции»: поиск ── */
    #mobile-mnu .mm-search {
        display: flex !important; align-items: center !important; gap: 9px !important;
        flex-shrink: 0 !important;
        margin: 14px !important; padding: 11px 13px !important;
        background: #f0f3f1 !important; border-radius: 11px !important;
    }
    #mobile-mnu .mm-search svg { width: 17px !important; height: 17px !important; stroke: #0b7a45 !important; fill: none !important; stroke-width: 2 !important; flex-shrink: 0 !important; }
    #mobile-mnu .mm-search input[type="search"] {
        border: none !important; background: none !important; outline: none !important; box-shadow: none !important;
        width: 100% !important; font-size: 16px !important; color: #1c1c1c !important; padding: 0 !important; margin: 0 !important; height: auto !important;
        -webkit-appearance: none !important;
    }
    #mobile-mnu .mm-search input::placeholder { color: #8a908a !important; }

    /* Прокручиваемая область (между шапкой и липким CTA) */
    #mobile-mnu .mm-scroll { flex: 1 1 auto !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; }

    /* Заголовок секции */
    #mobile-mnu .mm-sec-h {
        font-size: 11px !important; font-weight: 800 !important; letter-spacing: .12em !important;
        text-transform: uppercase !important; color: #9aa79e !important; padding: 16px 20px 6px !important;
    }

    /* Пункт меню */
    #mobile-mnu .mm-link {
        display: flex !important; align-items: center !important;
        padding: 14px 20px !important; font-size: 15.5px !important; font-weight: 600 !important;
        color: #1c1c1c !important; text-decoration: none !important;
        border-bottom: 1px solid #f2f4f2 !important; background: none !important;
    }
    #mobile-mnu .mm-link .ch { margin-left: auto !important; color: #c2c8c2 !important; font-size: 18px !important; }
    #mobile-mnu .mm-link:active { background: #f6faf6 !important; }
    #mobile-mnu .mm-link.mm-all { color: #0b7a45 !important; font-weight: 800 !important; }

    /* Связь — три кнопки-иконки */
    #mobile-mnu .mm-contacts { display: flex !important; gap: 8px !important; padding: 8px 16px 4px !important; }
    #mobile-mnu .mm-c {
        flex: 1 !important; display: flex !important; flex-direction: column !important;
        align-items: center !important; gap: 6px !important; padding: 12px 4px !important;
        background: #f2f7f3 !important; border-radius: 12px !important; text-decoration: none !important;
        font-size: 11.5px !important; font-weight: 700 !important; color: #2a382f !important;
    }
    #mobile-mnu .mm-c svg { width: 20px !important; height: 20px !important; stroke: #0b7a45 !important; fill: none !important; stroke-width: 2 !important; }
    #mobile-mnu .mm-c.mm-c-tg svg { stroke: #2aabee !important; }
    #mobile-mnu .mm-c:active { background: #e6f1e9 !important; }

    /* Липкий CTA снизу */
    #mobile-mnu .mm-cta {
        flex-shrink: 0 !important;
        padding: 12px 16px calc(12px + env(safe-area-inset-bottom)) !important;
        border-top: 1px solid #eef2ee !important; background: #fff !important;
    }
    #mobile-mnu .mm-price-btn {
        display: block !important; width: 100% !important; margin: 0 !important; cursor: pointer !important;
        /* было #12a05a→#0b7a45 — 5-й несовпадающий оттенок зелёного (найдено внешней проверкой) */
        background: linear-gradient(135deg, #00695c, #00897b) !important; color: #fff !important;
        text-align: center !important; padding: 15px !important; border-radius: 12px !important;
        font-size: 15px !important; font-weight: 800 !important; border: none !important; text-decoration: none !important;
    }
    #mobile-mnu .mm-price-btn:active { filter: brightness(.95) !important; }
    /* Overlay затемнение за меню */
    #mobile-mnu-overlay {
        display: none;
        position: fixed !important;
        inset: 0 !important;
        background: rgba(0,0,0,.45) !important;
        z-index: 9998 !important;
    }
    #mobile-mnu-overlay.is-open { display: block; }
}

/* ═══════════════════════════════════════════════════════════
   ПОДВАЛ — Вариант 1Б: белый, линия, меню + контакты
═══════════════════════════════════════════════════════════ */
footer#footer.site-footer {
    background: #fff !important;
    border-top: 3px solid #00897b !important;
    padding: 18px 0 14px !important;
}

footer#footer .ft-top-row {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    flex-wrap: nowrap !important;
    /* .container родительской темы сам flex-row (main.css:#footer .container) — без явной
       полной ширины .ft-top-row/.ft-bottom-row держались бы переносом только за счёт своей
       суммарной intrinsic-ширины (хрупко), поэтому фиксируем явно */
    width: 100% !important;
    margin-bottom: 12px !important;
}

/* Меню футера — 3 смысловые группы (Компания / Каталог / Логистика), сетка вместо палочек-разделителей */
footer#footer .footer-menu--grouped {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px 28px !important;
    /* «Два блока»: меню держит свою естественную ширину (не растягивается флекс-гроу),
       контакты пришиты сразу за разделителем, а не отталкиваются в дальний правый край */
    flex: 0 1 480px !important;
    /* мин.ширина 300px (≈83px/колонку) — не даёт заголовкам групп («КОМПАНИЯ»/«ЛОГИСТИКА»)
       схлопнуться теснее их собственной ширины (~67-73px) и наехать друг на друга при сжатии;
       actual пол найден QA — на ≤980px сбрасывается обратно в 0 (там меню уже на 100% ширины) */
    min-width: 300px !important;
    /* родительская тема переопределяет margin/max-width/justify-content для .footer-menu
       на ≤925px (свой дефолтный футер, не наш) — гасим явно, иначе блок схлопывается в 275px */
    margin: 0 !important;
    max-width: none !important;
    justify-content: normal !important;
}

/* Разделитель между меню и блоком контактов */
footer#footer .ft-divider {
    width: 1px !important;
    align-self: stretch !important;
    background: #e3ece9 !important;
    margin: 0 40px !important;
    flex-shrink: 0 !important;
}
footer#footer .fmg-group h3 {
    margin: 0 0 10px !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    letter-spacing: .09em !important;
    text-transform: uppercase !important;
    color: #9fb3ae !important;
}
footer#footer .fmg-links {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

footer#footer a.footer-link {
    color: #00695c !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    line-height: 1.3 !important;
    transition: color .2s !important;
}
footer#footer a.footer-link:hover { color: #00897b !important; }

/* Планшет: 3 колонки становятся тесными — сжимаем до 2, меню и контакты переносятся друг под друга.
   Порог поднят с 760px до 980px (было рассчитано под контакты 220px, три именные плашки магазинов
   шире — 532px — и без переноса пораньше «съедали» место у меню, находка QA на 780px). */
@media (max-width: 980px) {
    footer#footer .ft-top-row { flex-wrap: wrap !important; gap: 28px !important; }
    footer#footer .footer-menu--grouped { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; flex-basis: 100% !important; width: 100% !important; min-width: 0 !important; }
    footer#footer .ft-divider { display: none !important; }
    footer#footer .ft-contacts { flex-basis: 100% !important; width: 100% !important; }
}
/* Мобильный: 1 колонка, группы друг под другом */
@media (max-width: 460px) {
    footer#footer .footer-menu--grouped { grid-template-columns: 1fr !important; }
}

@media (max-width: 900px) {
    /* Контакты: почта и телефон по левому краю → иконки в одну вертикаль */
    footer#footer .ft-contacts { align-items: flex-start !important; }
}

footer#footer .ft-contacts {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    /* было flex:0 0 220px — фикс.ширина под старые кружки-иконки. Плашки магазинов с полным
       названием в один ряд («Наши магазины») шире 220px — блок теперь сам подстраивается под
       контент (auto). shrink:0 — контакты не сжимаются НИКОГДА (email/плашки не умеют красиво
       переноситься при сжатии), при нехватке места сжимается только меню слева — его текст и так
       уже умеет переноситься на 2 строки в узких колонках (проверено ранее). Без shrink:0 контакты
       сжимались вместе с меню и ряд плашек магазинов ломался на 2 строки на ~900px (найдено QA). */
    flex: 0 0 auto !important;
    /* было flex-end: короткая строка телефона (153px) сдвигалась вправо от почты (165px) на 13px,
       иконки не совпадали по левому краю. Правило @media(≤900px) выше по файлу пыталось починить
       flex-start, но стояло РАНЬШЕ этого базового правила → каскад его перебивал на всех ширинах
       (подтверждено live: flex-end было активно даже на 390px). Правим базу — работает везде. */
    align-items: flex-start !important;
}

footer#footer .ft-ci {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    color: #00695c !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: color .2s !important;
}
footer#footer .ft-ci:hover { color: #00897b !important; }

footer#footer .ft-ic {
    width: 26px !important;
    height: 26px !important;
    border-radius: 50% !important;
    background: #e8f5e9 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    color: #00695c !important;
}
footer#footer .ft-ic--wa {
    background: #25d366 !important;
    color: #fff !important;
}

footer#footer .ft-bottom-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-top: 1px solid #f0f0f0 !important;
    padding-top: 10px !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}

footer#footer .ft-bottom-row a.privacy {
    color: #9e9e9e !important;
    font-size: 12px !important;
    text-decoration: none !important;
}
footer#footer .ft-bottom-row a.privacy:hover { color: #00695c !important; }

footer#footer .ft-copy {
    color: #bdbdbd !important;
    font-size: 12px !important;
}

/* /reviews/ — карточки отзывов стали кликабельными (были без ссылки вообще) */
.reviews .blog-item-link { display:block; color:inherit; text-decoration:none; }
.reviews .blog-item-link:hover h2 { text-decoration:underline; }
