
/* Убираем тёмные подложки Elementor/темы между секциями (на мобиле проявляется чёрной полосой) */
html, body { background: #fff !important; }

/* Подавляем «резиновый» bounce-эффект iOS при свайпе сайта (jitter перед остановкой) */
html, body { overscroll-behavior-y: none; }

body a,
body a:hover,
body a:focus,
body a:active,
body a:visited {
    color: inherit;
    text-decoration: none;
}

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;
}

.woocommerce .products,
.woocommerce ul.products {
    }

@media (max-width: 575px) {
   body:not([class*="elementor-page-"]) .site-main {
        padding-inline-start: 0 !important;
        padding-inline-end: 0 !important;
        width: auto !important;
    }
}

.site-footer { display: none !important; }


/* =====================================================================
   БРЕНД «РОДИНА» — фирменный слой (шрифты + палитра)
   ---------------------------------------------------------------------
   Источник: Elementor-JSON (header.json / footer.json / home.json) сети
   «Родина Южной кухни» (Краснодар).
   Дисциплина тиражирования: весь бренд держим ЗДЕСЬ (вне iiko/includes/
   и без правок nbc-header.css / nbc-footer.css / nbc-catalog.css), чтобы
   ядро не расходилось с Нахлебником. Переопределяем CSS-переменные с
   !important — это надёжно перебивает значения из компонентных CSS вне
   зависимости от порядка загрузки.

   Шрифты: Oswald (заголовки/UI) + Source Sans Pro (текст) — те же, что
   реально отдаёт боевой rodina-cafe.ru. Файлы self-hosted в /fonts/
   (woff с кириллицей, взяты с боевого), @font-face ниже. Google Fonts
   не грузим намеренно (CDN в РФ ненадёжен) — как и на боевом (OMGF).
   Палитра: светлые поверхности + красные акценты #D24A43 / #9E2121
            (терракота-красный — основной бренд-цвет Родины), мягкий
            персик #F6D9CE для hover, тёплый светлый фон #F5EFEA.
   ===================================================================== */

/* --- Бренд-токены --- */
:root {
    --rod-red:        #D24A43;   /* основной акцент / CTA */
    --rod-red-dark:   #9E2121;   /* hover / насыщённый акцент */
    --rod-red-bright: #BD3535;
    --rod-peach:      #F6D9CE;   /* мягкий hover на светлом */
    --rod-wine:       #A94967;
    --rod-green:      #244B0D;
    --rod-green-mid:  #6DA949;
    --rod-gold:       #DDA152;
    --rod-ink:        #1a1a1a;
    --rod-bg-warm:    #F5EFEA;   /* тёплый светлый фон шапки/поверхностей */
    --rod-bg-gray:    #EDEDED;   /* светло-серый (футер, как в Elementor) */
}

/* --- Фирменные шрифты (self-hosted, файлы взяты с боевого rodina-cafe.ru) --- */
@font-face { font-family: 'Oswald'; src: url('../../fonts/oswald-300.woff') format('woff'); font-weight: 300; font-style: normal; font-display: swap; }
@font-face { font-family: 'Oswald'; src: url('../../fonts/oswald-500.woff') format('woff'); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'Oswald'; src: url('../../fonts/oswald-600.woff') format('woff'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Oswald'; src: url('../../fonts/oswald-700.woff') format('woff'); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'Source Sans Pro'; src: url('../../fonts/sourcesanspro-300.woff') format('woff'); font-weight: 300; font-style: normal; font-display: swap; }
@font-face { font-family: 'Source Sans Pro'; src: url('../../fonts/sourcesanspro-400.woff') format('woff'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Source Sans Pro'; src: url('../../fonts/sourcesanspro-600.woff') format('woff'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Source Sans Pro'; src: url('../../fonts/sourcesanspro-700.woff') format('woff'); font-weight: 700; font-style: normal; font-display: swap; }

/* --- Текст: Source Sans Pro (вместо Montserrat) --- */
body,
body p, body li, body a, body span, body div,
body input, body textarea, body select,
body .elementor-widget-text-editor,
body .entry-content, body .entry-content *,
body .post, body .post *,
.nbc-catalog-wrapper, .nbc-catalog-wrapper *,
.nbc-pages, .nbc-pages *,
.nbc-footer, .nbc-footer * {
    font-family: 'Source Sans Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* --- Заголовки и UI-акценты: Oswald --- */
body h1, body h2, body h3, body h4, body h5, body h6,
body .elementor-widget-heading, body .entry-title,
.nbc-header, .nbc-header *,
.nbc-mobile-menu-list a,
.nbc-cat-title, .nbc-nav-tab,
.nbc-modal-name, .nbc-modal-price, .nbc-product-price,
.nbc-sidebar-cart-title, .nbc-cart-checkout-btn, .nbc-modal-add-btn,
.nbc-pg-title, .nbc-pg-single-title, .nbc-pg-card-title,
.nbc-footer-card-title, .nbc-footer-card-phone,
.nbc-login-title, .nbc-login-submit {
    font-family: 'Oswald', 'Source Sans Pro', sans-serif !important;
}

/* --- Палитра: красный вместо амбера (переопределяем движковые переменные) --- */
:root,
.nbc-header, .nbc-mobile-menu, .nbc-login-modal {
    --nbc-primary:      var(--rod-red) !important;        /* CTA-заливка */
    --nbc-primary-dark: var(--rod-red-dark) !important;   /* hover CTA / акцент */
}

/* === Шапка === */
/* Светлая панель (как в Elementor: #F2F2F2), не амбер. Текст остаётся тёмным. */
.nbc-header {
    background: var(--rod-bg-warm) !important;
    border-bottom: 1px solid #e7ded7 !important;
}
/* Соцссылки в шапке — мягкий персиковый hover */
.nbc-social-link:hover { background: var(--rod-peach) !important; color: var(--rod-ink) !important; }
/* Пункты меню: без подложек, плотнее друг к другу; акцент — только цвет текста (бренд-красный)
   на hover/active. «Меню» (родитель подменю) ведёт на главную → WP метит его current —
   по дефолту его НЕ подсвечиваем (исключаем .menu-item-has-children). */
.nbc-header-menu { gap: 0 !important; }
.nbc-header-menu a,
.nbc-header-menu .current-menu-item > a {
    background: transparent !important;
    color: var(--rod-ink) !important;
    padding: 8px 10px !important;
}
.nbc-header-menu a:hover,
.nbc-header-menu .menu-item-has-children:hover > a,
.nbc-header-menu .current-menu-item:not(.menu-item-has-children) > a {
    background: transparent !important;
    color: var(--rod-red) !important;
}
/* Кнопка входа — насыщённый красный CTA, белый текст */
.nbc-header-login-btn {
    background: var(--rod-red) !important;
    color: #fff !important;
}
.nbc-header-login-btn:hover { background: var(--rod-red-dark) !important; }
/* «Как нас найти» и hover телефона — бренд-красный */
.nbc-find-us { background: var(--rod-red) !important; }
.nbc-find-us:hover { filter: brightness(1.08); }
.nbc-header-phone:hover { color: var(--rod-red) !important; }
/* Бейдж корзины */
.nbc-header-cart-badge { background: var(--rod-red) !important; }

/* === Мобильное меню (светлый drawer) === */
.nbc-mobile-menu-list .current-menu-item a { color: var(--rod-red) !important; }
.nbc-mobile-phone:hover, .nbc-mobile-profile-link { color: var(--rod-red) !important; }

/* === Модалка входа === */
.nbc-login-submit { color: #fff !important; }
.nbc-login-field input:focus { border-color: var(--rod-red) !important; }
/* Ссылка «Хотите получить карту лояльности?» — ховер бренд-красный */
.nbc-login-card-link:hover { color: var(--rod-red) !important; }

/* === Витрина (каталог) === */
/* CTA: красная заливка → белый текст */
.nbc-cart-checkout-btn,
.nbc-modal-add-btn {
    color: #fff !important;
}
.nbc-cart-checkout-btn:hover,
.nbc-modal-add-btn:hover { color: #fff !important; }
/* Кружки +/- и быстрых кнопок при hover: красный фон → белый глиф */
.nbc-img-add-btn:hover,
.nbc-counter-minus:hover, .nbc-counter-plus:hover,
.nbc-cart-item-minus:hover, .nbc-cart-item-plus:hover,
.nbc-modal-qty-btn:hover,
.nbc-mod-counter button:hover { color: #fff !important; }
/* Активный таб категории — красное подчёркивание (уже через --nbc-primary-dark) */
/* Активный модификатор — лёгкая красная подложка вместо жёлтой */
.nbc-mod-item.nbc-mod-active { background: rgba(210, 74, 67, 0.12) !important; }
/* Плавающая мобильная корзина — красная, белый текст */
.nbc-mobile-cart-btn { background: var(--rod-red) !important; color: #fff !important; }
.nbc-mobile-cart-sum { color: #fff !important; }
.nbc-mobile-cart-btn svg { stroke: #fff !important; }
.nbc-mobile-cart-badge { background: var(--rod-red-dark) !important; }
/* Тост «Закрыто» — бренд-красный */
.nbc-closed-toast { background: var(--rod-red) !important; color: #fff !important; }
/* Точки баннер-карусели */
.nbc-banners-dot.active { background: var(--rod-red) !important; }

/* === Подвал === */
/* Нижний блок: светло-серый (как в Elementor: #EDEDED), текст остаётся тёмным */
.nbc-footer-bottom { background: var(--rod-bg-gray) !important; }
.nbc-footer-links a,
.nbc-footer-menu a:hover,
.nbc-footer-email:hover,
.nbc-footer-card-phone:hover { color: var(--rod-red) !important; }

/* === Страницы «События / О нас» === */
.nbc-pg-blog-tag { background: var(--rod-red) !important; }
.nbc-pg-faq-q[aria-expanded="true"] .nbc-pg-faq-arrow,
.nbc-pg-video-play { color: var(--rod-red) !important; }
.nbc-vac-phone { color: var(--rod-red) !important; }

/* === Бренд-типографика «Родина» === */
/* Меню в шапке — Oswald, аптайтл */
.nbc-header-menu a {
    font-family: 'Oswald', sans-serif !important;
    font-size: 16px !important;
    font-weight: 300 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}
/* Названия блюд на витрине — Oswald, аптайтл */
.nbc-product-name {
    font-family: 'Oswald', sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* === Чекаут / Корзина — бренд === */
/* Кнопка «Оплатить / Оформить заказ» — белый шрифт */
.nbc-checkout-btn,
.nbc-checkout-btn:hover { color: #fff !important; }
/* Ссылки «У меня промокод» / «У меня сертификат» — бренд */
.nbc-promo-toggle { color: var(--rod-red) !important; }
.nbc-promo-toggle:hover { color: var(--rod-red-dark) !important; }
/* Вертикальный отступ между «У меня промокод» и «У меня бонусная карта» */
.nbc-summary-promo .nbc-promo-input-wrap + .nbc-promo-buttons { margin-top: 10px !important; }
/* Прогресс-бар бесплатной доставки: трек серый, заливка — бренд */
.nbc-fdb-fill { background: var(--rod-red) !important; }
.nbc-fdb-fill.nbc-fdb-done { background: var(--rod-red-dark) !important; }

/* Модалка приборов «Нужны приборы?»: кнопка «Перейти к оплате» — красный градиент, белый текст */
.nbc-cutlery-popup-pay {
    background: linear-gradient(135deg, var(--rod-red), var(--rod-red-dark)) !important;
    color: #fff !important;
}

/* Кнопка КБЖУ: по умолчанию — как был ховер (темнее фон, тёмный текст); ховер — бренд-красный + белый */
.nbc-kbzhu-btn { background: var(--nbc-border) !important; color: var(--nbc-text) !important; }
.nbc-kbzhu-btn:hover { background: var(--rod-red) !important; color: #fff !important; }

/* Кнопка «Применить» (промокод/сертификат) — белый текст */
.nbc-promo-apply, .nbc-promo-apply:hover { color: #fff !important; }

/* «Рекомендуем к заказу»: красная кнопка-таблетка с белым + */
.nbc-rec-add {
    background: var(--rod-red) !important; color: #fff !important;
    border: none !important; border-radius: 24px !important;
    font-size: 20px !important; font-weight: 400 !important; line-height: 1 !important;
}
.nbc-rec-add:hover { background: var(--rod-red-dark) !important; }

/* === Личный кабинет — бренд (красный вместо жёлтого) ===
   !important обязателен: nbc-account.css задаёт те же переменные на том же
   селекторе и грузится позже (через шорткод), иначе перебивает наш бренд. */
.nbc-account-wrapper, .nbc-order-modal {
    --nbc-primary: var(--rod-red) !important;
    --nbc-primary-dark: var(--rod-red-dark) !important;
    /* Remarked-модуль внутри ЛК (кнопки «Привязать»/«Проверить»/лояльность) — бренд-красный */
    --rmk-accent: var(--rod-red) !important;
    --rmk-accent-dark: var(--rod-red-dark) !important;
}
/* Активный пункт сайдбара: красный кружок + белая иконка */
.nbc-account-wrapper .nbc-sidebar-item.active .nbc-sidebar-icon { color: #fff; }
.nbc-account-wrapper .nbc-sidebar-item.active .nbc-sidebar-icon svg { stroke: #fff; }
/* Красные кнопки — белый текст */
.nbc-account-wrapper .nbc-sidebar-bottom .nbc-sidebar-item,
.nbc-account-wrapper .nbc-avatar-upload-btn,
.nbc-account-wrapper .nbc-profile-save,
.nbc-account-wrapper .nbc-order-btn-repeat,
.nbc-account-wrapper .nbc-faq-ask,
.nbc-account-wrapper .nbc-page-btn.active,
.nbc-order-modal .nbc-modal-repeat-btn { color: #fff !important; }
.nbc-account-wrapper .nbc-avatar-upload-btn svg { stroke: #fff !important; }
/* «Задать вопрос» теперь ссылка tel: — без подчёркивания */
.nbc-account-wrapper .nbc-sidebar-ask { text-decoration: none !important; }
/* Акцентные ссылки — бренд-красный (вместо золотого) */
.nbc-account-wrapper .nbc-dash-profile-edit,
.nbc-account-login-notice a { color: var(--rod-red) !important; }

/* Иконка Telegram визуально крупнее VK (глиф заполняет весь бокс) — уменьшаем под VK */
.nbc-social-telegram svg { width: 15px !important; height: 15px !important; }           /* шапка */
.nbc-footer-social-telegram svg { width: 18px !important; height: 18px !important; }     /* подвал */

/* === Горизонтальное меню разделов каталога === */
/* Все пункты — Oswald-аптайтл, вес 400 */
.nbc-nav-tab { text-transform: uppercase !important; font-weight: 400 !important; }
/* Активный пункт — бренд-таблетка, белый текст, без подчёркивания (как кнопка «Оформить заказ») */
.nbc-nav-tab.active {
    background: var(--rod-red) !important;
    color: #fff !important;
    border-bottom-color: transparent !important;
    border-radius: 18px !important;
    line-height: 1.2 !important;
    padding: 7px 16px !important;
    align-self: center !important;
}

/* === Иконка входа (гость): без подложки, как у залогиненного — иконка + «Войти» снизу === */
.nbc-header-login-btn,
.nbc-header-login-btn:hover {
    flex-direction: column !important;
    gap: 2px !important;
    background: transparent !important;
    padding: 4px 6px !important;
    font-weight: 500 !important;
    color: var(--rod-ink) !important;
}
.nbc-header-login-btn:hover { color: var(--rod-red) !important; }
.nbc-header-login-btn svg { width: 22px !important; height: 22px !important; }
.nbc-header-login-btn span { display: inline !important; font-size: 10px !important; line-height: 1.1 !important; }

/* === Главная (hero): вернуть Oswald 300 — бренд-правило body выше переключило текст на Source Sans === */
.nbc-home-hero-intro,
.nbc-home-hero-phones a,
.nbc-home-action-l,
.nbc-home-action-sub {
    font-family: 'Oswald', sans-serif !important;
    font-weight: 300 !important;
}

/* === Сайдкорзина на витрине === */
/* «Ещё … до бесплатной доставки» — 16px */
.nbc-fdb-text { font-size: 16px !important; }
/* «Итого … сумма» — на 1px крупнее (17→18) */
.nbc-sidebar-cart-total { font-size: 18px !important; }

/* === ЛК · дашборд: Заказы | Баллы | Сертификат в один ряд (как на рефе);
   в мобиле — каждая плитка на всю ширину блока === */
.nbc-account-wrapper .nbc-dash-tiles { display: grid !important; grid-template-columns: 1fr 1fr 1fr; gap: 16px; align-items: start; }
.nbc-account-wrapper .nbc-tiles-left { display: contents; }
@media (max-width: 991px) {
    .nbc-account-wrapper .nbc-dash-tiles { grid-template-columns: 1fr; }
}

/* === ЛК · строка приветствия + ссылка «Перейти в меню →» (бренд-красная) === */
.nbc-dash-greeting-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 16px; }
.nbc-dash-greeting-row .nbc-dash-greeting { margin: 0 !important; }
.nbc-dash-to-menu { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; text-decoration: none; font-weight: 600; font-size: 15px; color: var(--rod-red) !important; transition: color .2s ease; }
.nbc-dash-to-menu:hover { color: var(--rod-red-dark) !important; }
.nbc-dash-to-menu span { font-size: 19px; line-height: 1; }

/* === ЛК · сертификат: фокус поля и сообщение-успех — в красных тонах (вместо амбера) === */
.nbc-account-wrapper .nbc-cert-dash-form input:focus,
.nbc-account-wrapper .nbc-remarked-cert-apply input:focus {
    border-color: var(--rod-red) !important;
    box-shadow: 0 0 0 3px rgba(210,74,67,.18) !important;
}
.nbc-account-wrapper .nbc-cert-msg-ok,
.nbc-account-wrapper .nbc-cert-dash-msg.nbc-cert-msg-ok {
    background: #FBECE9 !important;
    border-left-color: var(--rod-red) !important;
}

/* === ЛК · «Ваш баланс» (лояльность) — бренд-градиент вместо фиолетового === */
.nbc-account-wrapper .nbc-remarked-balance-card {
    background: linear-gradient(135deg, var(--rod-red), var(--rod-red-dark)) !important;
}
/* Активный месяц календаря — белый шрифт на красном фоне */
.nbc-account-wrapper .nbc-cal-btn.active { color: #fff !important; }
