/**
 * Nahlebnik Bar — перезапись стилей Hello Elementor
 * Фикс красных кнопок и прочих дефолтов темы.
 *
 * @package NahlebnikBarChild
 * @version 1.0.0
 */

/* ───────────────────────────────────────────
 * Сброс цветов ссылок и кнопок Hello Elementor
 * ─────────────────────────────────────────── */
body a,
body a:hover,
body a:focus,
body a:active,
body a:visited {
    color: inherit;
    text-decoration: none;
}

/* Кнопки — сброс красного hover/active */
body .elementor-button,
body .elementor-button:hover,
body .elementor-button:focus,
body .elementor-button:active,
body button,
body input[type="button"],
body input[type="submit"],
body .wp-block-button__link,
body .woocommerce a.button,
body .woocommerce button.button,
body .woocommerce input.button {
    transition: all 0.3s ease;
}

/* ───────────────────────────────────────────
 * Базовая типографика (Futura PT Book)
 * ─────────────────────────────────────────── */
/* Селектор с [class*="elementor-kit-"] — не прихоть: Elementor вешает
   .elementor-kit-N прямо на body и задаёт там свой font-family. Голый
   body по весу проигрывает, шрифт набора перебивал бы наш. */
body,
body[class*="elementor-kit-"],
body .elementor-widget-text-editor,
body .elementor-widget-heading {
    font-family: var(--nbc-font-body);
}

/* Заголовки — Demi. Набор Elementor задаёт их как «.elementor-kit-N h1»,
   поэтому здесь тот же вес селектора. */
body h1, body h2, body h3, body h4, body h5, body h6,
body[class*="elementor-kit-"] h1,
body[class*="elementor-kit-"] h2,
body[class*="elementor-kit-"] h3,
body[class*="elementor-kit-"] h4 {
    font-family: var(--nbc-font-head);
}

/* ───────────────────────────────────────────
 * WooCommerce — сброс стилей, которые
 * могут конфликтовать с нашим каталогом
 * ─────────────────────────────────────────── */
.woocommerce .products,
.woocommerce ul.products {
    /* Сбрасываем дефолтную WC-сетку,
       каталог управляется нашим шорткодом */
}

/* Фикс Hello Elementor — убираем паддинги и лишнюю ширину на мобильном */
@media (max-width: 575px) {
   body:not([class*="elementor-page-"]) .site-main {
        padding-inline-start: 0 !important;
        padding-inline-end: 0 !important;
        width: auto !important;
    }
}

/* Скрываем стандартный футер Hello Elementor */
.site-footer { display: none !important; }

/* Скрываем дефолтную шапку/заголовок Hello Elementor + WooCommerce */
.site-header { display: none !important; }
.page-header { display: none !important; }
.entry-header { display: none !important; }
.woocommerce-products-header { display: none !important; }

/* ───────────────────────────────────────────
 * Правовые страницы (обработка ПДн и прочее)
 * ─────────────────────────────────────────── */
.nbc-legal {
    max-width: 860px;
    margin: 0 auto;
    padding: 48px 20px 72px;
    font-family: var(--nbc-font-body);
    font-size: 15px;
    line-height: 1.65;
    color: #2B2520;
}

.nbc-legal__title {
    margin: 0 0 28px;
    font-family: var(--nbc-font-head);
    font-size: clamp(26px, 3vw, 36px);
    font-weight: 400;
    line-height: 1.2;
    color: #5C2F10;
}

.nbc-legal__h {
    margin: 36px 0 14px;
    font-family: var(--nbc-font-body);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .02em;
    color: #5C2F10;
}

.nbc-legal p  { margin: 0 0 12px; }
.nbc-legal ul { margin: 0 0 14px; padding-left: 20px; }
.nbc-legal li { margin-bottom: 6px; }

.nbc-legal a {
    color: #E09B3F;
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 575px) {
    .nbc-legal { padding: 32px 16px 56px; font-size: 14px; }
}

/* ───────────────────────────────────────────
 * Горизонтальные меню Elementor
 *
 * На старой главной полосе разделов Elementor включил горизонтальную
 * прокрутку: шесть пунктов с полями по 44px требуют 1291px, а строка
 * шириной 1165px. Внизу висел серый скроллбар, «Спецзаказ» уезжал за край.
 *
 * Прокрутку убираем, поля делаем резиновыми — на широком экране остаются
 * прежними, на узком сжимаются. Ниже 1100px строка переносится: две ровных
 * строки читаются лучше, чем полоса прокрутки.
 * ─────────────────────────────────────────── */

.elementor-nav-menu--layout-horizontal .elementor-nav-menu {
    overflow: visible !important;
}

/* Полоса разделов — виджет на всю ширину; верхнее меню (width-auto) не трогаем */
.elementor-widget-nav-menu.elementor-widget__width-initial .elementor-nav-menu--layout-horizontal .elementor-nav-menu {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: 100%;
}
.elementor-widget-nav-menu.elementor-widget__width-initial .elementor-nav-menu--layout-horizontal .elementor-nav-menu > li {
    flex: 0 1 auto;
    min-width: 0;
}
.elementor-widget-nav-menu.elementor-widget__width-initial .elementor-nav-menu--layout-horizontal .elementor-nav-menu > li > a.elementor-item {
    padding-left:  clamp(6px, 1.3vw, 44px) !important;
    padding-right: clamp(6px, 1.3vw, 44px) !important;
    white-space: nowrap;
}

@media (max-width: 1100px) {
    .elementor-widget-nav-menu.elementor-widget__width-initial .elementor-nav-menu--layout-horizontal .elementor-nav-menu {
        flex-wrap: wrap;
        justify-content: center;
        row-gap: 2px;
    }
}

/* ───────────────────────────────────────────
 * Горизонтальные меню — вписываем в окно
 *
 * Строки меню собраны на flex без переноса: пункты не влезали в узкое
 * окно, вылезали за край и внизу страницы появлялась полоса прокрутки.
 * Ниже — три слоя: пунктам разрешён перенос, промежутки и кегль сжимаются
 * вместе с окном, а странице запрещено ездить вбок.
 * ─────────────────────────────────────────── */

/* ── Меню в шапке темы ──
 *
 * Раньше в шапке стояли разделы каталога — семь длинных названий, и строку
 * приходилось переносить, а кегль ужимать до 9,5px. 05.10 разделы переехали
 * в отдельную полосу под шапкой, в меню осталось четыре коротких пункта:
 * перенос и мелкий кегль больше не нужны. Размеры пунктов — в nbc-header.css,
 * блоком «ШуChef — шапка и полоса разделов».
 */

.nbc-header-inner {
    gap: 16px;
    /* Поля ужимаются на узком окне, иначе они съедают место у меню */
    padding-inline: clamp(14px, 2.6vw, 40px);
}
.nbc-header-logo,
.nbc-header-contacts,
.nbc-header-actions { flex: 0 0 auto; }

/* min-width: 0 обязателен: без него flex-элемент не сжимается меньше
   своего содержимого и выпирает наружу вместе с длинным меню. */
.nbc-header-links {
    flex: 1 1 auto;
    min-width: 0;
}
.nbc-header-menu {
    column-gap: clamp(10px, 1.5vw, 28px);
    max-width: 100%;
}
.nbc-header-menu > li > a { white-space: nowrap; }

/* ── Круглые иконки разделов в каталоге ── */

/* Было nowrap + flex-shrink: 0 — семь разделов в узкое окно не помещались. */
.nbc-category-cards {
    flex-wrap: wrap;
    row-gap: 10px;
    column-gap: clamp(8px, 1.2vw, 16px);
    flex-shrink: 1;
    min-width: 0;
    max-width: 100%;
}

/* Полоса разделов Elementor разобрана выше, здесь не повторяем. */

/* ── Общий предохранитель ──
 * clip, а не hidden: hidden на body ломает «липкие» элементы внутри.
 * Это страховка от одиночного широкого блока, а не замена правкам выше. */
html { overflow-x: clip; }
body { overflow-x: clip; max-width: 100%; }

/* ───────────────────────────────────────────
 * Фирменный фон страницы — ровный бежевый
 *
 * Картинка со старой витрины (bgr-shuchef.jpg) выключена по просьбе
 * заказчика: нужен ровный бежевый без треугольников. Файл остался в теме
 * (iiko/img/bg-shuchef.jpg), вернуть — расскомментировать четыре строки.
 *
 * Цвет #EDE1BC снят с боевого opt.shuchef.ru. Сама картинка там включена,
 * но стоит со сдвигом 0 -586px и background-attachment: fixed — в кадр
 * попадает её нижняя, почти ровная часть, и фигуры едва различимы. При
 * сдвиге 0 0 и scroll (так было с 05.10) в кадр выезжает верх картинки с
 * яркими треугольниками.
 * ─────────────────────────────────────────── */

/* Селектор с [class*="elementor-kit-"] — набор Elementor задаёт свой фон
   прямо на body и по весу выигрывает у голого body. */
html body,
html body[class*="elementor-kit-"] {
    background-color: #EDE1BC;
    background-image: none;
    /* Картинка как на боевом:
    background-image: url('../img/bg-shuchef.jpg');
    background-repeat: no-repeat;
    background-position: 0 -586px;
    background-size: 100% auto;
    background-attachment: fixed;
    */
}

/* Витрина и главная были залиты сплошным кремовым и перекрывали фон */
.nbc-catalog-wrapper,
.nbc-home--shuchef { background: transparent; }
