/* Шаблон mg-nova-dark — оформление VELEES («Тихая легенда») в духе люкс-магазина:
   светлая основа (белый и тёплый беж бренда), чёрная типографика, бронза — тонким акцентом,
   чёрные блоки — только как акцент (верхняя полоса, видео, цитата бренда, подвал).
   Подключается последним (template.php) и перекрывает стили шаблона, компонентов и плагинов.
   Переменные --nd-* используют и остальные CSS-файлы шаблона — палитра меняется здесь в одном месте. */

:root {
    --nd-bg: #ffffff;            /* фон страницы */
    --nd-surface: #ffffff;       /* панели, карточки, окна */
    --nd-surface-2: #f5f2ec;     /* тёплый беж бренда — подложки, поля */
    --nd-surface-3: #e9e3d9;
    --nd-text: #161514;
    --nd-muted: #6f675d;
    --nd-line: rgba(22, 21, 20, .1);
    --nd-line-strong: rgba(22, 21, 20, .28);

    --nd-ink: #141414;           /* чёрные блоки-акценты */
    --nd-on-dark: #efebe4;       /* текст на чёрном и на видео */
    --nd-on-dark-muted: #b3aa9e;
    --nd-bronze: #8a6a43;        /* бронза бренда на светлом */
    --nd-bronze-light: #c2a27a;  /* бронза на тёмном */

    --nd-font: "Jost", "Helvetica Neue", Arial, sans-serif;

    /* Основной цвет шаблона (кнопки, ссылки, отметки) — чёрный, как у люкс-магазинов */
    --main-color: #141414;
}

/* ------------------------------------------------------------------ */
/* Основа                                                              */

html,
body,
.l-body {
    background: var(--nd-bg) !important;
    color: var(--nd-text);
}

body,
button,
input,
select,
textarea,
.l-body {
    font-family: var(--nd-font);
}

body {
    font-weight: 400;
    letter-spacing: .01em;
    -webkit-font-smoothing: antialiased;
}

/* Иконочный шрифт Font Awesome сохраняем */
.fa,
[class^="fa-"],
[class*=" fa-"] {
    font-family: FontAwesome !important;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--nd-text);
    font-family: var(--nd-font);
    font-weight: 400;
    letter-spacing: .02em;
}

a:hover {
    color: var(--nd-bronze);
}

::selection {
    background: var(--nd-ink);
    color: var(--nd-on-dark);
}

/* ------------------------------------------------------------------ */
/* Кнопки: чёрные, прямые углы, разреженные прописные буквы;            */
/* при наведении — бронза                                               */

.button,
.a-button,
.default-btn,
.card__buttons > a,
.checkout-btn,
.js-add-to-cart,
.addToCart,
.product-info,
input[type="submit"].button {
    border: 1px solid var(--nd-ink) !important;
    border-radius: 0 !important;
    background-color: var(--nd-ink) !important;
    color: #fff !important;
    font-family: var(--nd-font);
    font-weight: 500;
    letter-spacing: .16em;
    text-transform: uppercase;
    transition: background-color .3s ease, border-color .3s ease, color .3s ease;
}

.button:hover,
.a-button:hover,
.default-btn:hover,
.card__buttons > a:hover,
.checkout-btn:hover,
.js-add-to-cart:hover,
.addToCart:hover,
.product-info:hover {
    border-color: var(--nd-bronze) !important;
    background-color: var(--nd-bronze) !important;
    color: #fff !important;
}

.button svg,
.a-button svg,
.js-add-to-cart svg {
    fill: currentColor;
}

/* «В корзине» — контурная */
.alreadyInCart,
.alreadyInCart.js-add-to-cart {
    border-color: var(--nd-ink) !important;
    background: transparent !important;
    color: var(--nd-ink) !important;
}

.alreadyInCart:hover {
    background: var(--nd-ink) !important;
    color: #fff !important;
}

.button:disabled,
.checkout-btn:disabled,
.button[disabled] {
    border-color: var(--nd-surface-3) !important;
    background: var(--nd-surface-3) !important;
    color: var(--nd-muted) !important;
}

/* ------------------------------------------------------------------ */
/* Поля форм — тонкая рамка, без скруглений                              */

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
input[type="search"],
textarea,
select {
    border-color: var(--nd-line-strong);
    border-radius: 0 !important;
    background-color: #fff;
    color: var(--nd-text);
}

input:focus,
textarea:focus,
select:focus {
    border-color: var(--nd-ink) !important;
    box-shadow: none !important;
}

input[type="checkbox"],
input[type="radio"] {
    accent-color: var(--nd-ink);
}

/* ------------------------------------------------------------------ */
/* Бегущая строка и верхняя полоса — чёрные, как у Prestige              */

.mg-running-line,
.running-line,
[class*="running-line"] {
    background: var(--nd-ink) !important;
    color: var(--nd-on-dark) !important;
}

.mg-running-line a,
[class*="running-line"] a {
    color: var(--nd-on-dark) !important;
}

.top {
    border-bottom: 0;
    background: var(--nd-ink) !important;
    color: var(--nd-on-dark-muted);
}

.top,
.top a,
.top .back-ring-button,
.top .top__contacts-phone,
.top__links a {
    color: var(--nd-on-dark-muted) !important;
}

.top a:hover,
.top .back-ring-button:hover {
    color: var(--nd-on-dark) !important;
}

.top svg,
.top .fa {
    color: var(--nd-on-dark-muted);
    fill: var(--nd-on-dark-muted);
}

/* ------------------------------------------------------------------ */
/* Шапка: белая, логотип по центру, тонкая линия снизу                   */

.header,
.header__wrapper,
.header__main {
    background: #fff !important;
}

.header {
    border-bottom: 1px solid var(--nd-line);
}

.nd-logo {
    display: inline-flex;
    align-items: center;
}

.nd-logo img {
    display: block;
    width: clamp(120px, 13vw, 180px);
    height: auto;
}

.header svg,
.header .account__image,
.header__search-icon {
    color: var(--nd-text);
    fill: var(--nd-text);
}

.header__info-icon {
    fill: none;
}

/* Меню категорий: прописные буквы с разрядкой, тонкое подчёркивание при наведении */
.header__menu a,
.menu-categories a,
.menu-pages a {
    color: var(--nd-text);
    font-weight: 400;
    letter-spacing: .12em;
}

.header__menu a:hover,
.menu-categories a:hover,
.menu-pages a:hover {
    color: var(--nd-bronze);
}

/* Счётчики корзины / избранного */
.cart__count,
.countsht,
.favorites__count,
.header-favorites__count {
    background: var(--nd-ink) !important;
    color: #fff !important;
}

/* Поиск в шапке */
.search input[type="search"],
.search input[type="text"],
.header .search__input {
    border-color: var(--nd-line-strong) !important;
    background: #fff !important;
}

.search button,
.search__button,
.search .search-button {
    border-color: var(--nd-ink) !important;
    border-radius: 0 !important;
    background: var(--nd-ink) !important;
}

.search button svg,
.search__button svg {
    fill: #fff !important;
}

/* Выпадающие панели */
.account__menu,
.c-cart__dropdown,
.js-mini-cart-dropdown,
.fastResult {
    border-color: var(--nd-line) !important;
    border-radius: 0 !important;
    box-shadow: 0 24px 60px rgba(20, 20, 20, .12) !important;
}

/* ------------------------------------------------------------------ */
/* Заголовок страниц: без фото-баннера шаблона, спокойный беж            */

.title-section,
.title-section__wrapper {
    background-image: none !important;
    background-color: var(--nd-surface-2) !important;
}

.title-section h1,
.title-section__title {
    color: var(--nd-text);
    font-weight: 400;
    letter-spacing: .2em;
    text-transform: uppercase;
}

/* ------------------------------------------------------------------ */
/* Карточки товаров: без рамок и теней, цена — в тонкой рамке             */

.product-wrapper,
.card {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.card__image-box,
.card__gallery {
    border-radius: 0 !important;
    background: var(--nd-surface-2);
}

.card__title,
.card__title a {
    color: var(--nd-text);
    font-weight: 400;
    letter-spacing: .02em;
}

.card__title a:hover {
    color: var(--nd-bronze);
}

.card__price,
.product-price {
    color: var(--nd-text);
    font-weight: 500;
}

.card__old-price,
.product-old-price,
.old-price {
    color: var(--nd-muted) !important;
}

/* Скидка и стикеры — прямоугольные, бронза и чёрный */
.card__discount,
.c-ribbon__sale {
    border-radius: 0 !important;
    background: var(--nd-bronze) !important;
    color: #fff !important;
}

.card__sticker {
    border-radius: 0 !important;
    background: #fff !important;
    color: var(--nd-text) !important;
    letter-spacing: .08em;
}

.card__sticker-hit {
    background: var(--nd-ink) !important;
    color: #fff !important;
}

/* Квадратные кнопки на фото (быстрый просмотр, избранное, сравнение) */
.card__quick-buttons > *,
.quickview,
.quickview__popup {
    border-radius: 0 !important;
    background: rgba(255, 255, 255, .92) !important;
}

/* ------------------------------------------------------------------ */
/* Вкладки, карусели                                                   */

.tabs__item.active,
.tabs__item--active,
.c-tab__link--active,
.tabs__link.active {
    border-color: var(--nd-ink) !important;
    color: var(--nd-text);
}

.owl-dot.active span {
    background: var(--nd-ink) !important;
}

/* ------------------------------------------------------------------ */
/* Подвал — чёрный блок                                                 */

.footer {
    background: var(--nd-ink) !important;
    color: var(--nd-on-dark-muted);
}

.footer a,
.footer p,
.footer li,
.footer span {
    color: var(--nd-on-dark-muted);
}

.footer a:hover {
    color: var(--nd-on-dark) !important;
}

.footer h3,
.footer h4,
.footer__title,
.footer [class*="accordion__title"],
.footer [class*="accordion__btn"] {
    color: var(--nd-on-dark) !important;
    font-weight: 400;
    letter-spacing: .2em;
}

.footer svg {
    fill: var(--nd-on-dark-muted);
}

.footer__copyright {
    border-top: 1px solid rgba(239, 235, 228, .12);
    background: transparent !important;
    color: var(--nd-on-dark-muted);
}

.footer input[type="email"],
.footer input[type="text"] {
    border-color: rgba(239, 235, 228, .3) !important;
    background: transparent !important;
    color: var(--nd-on-dark) !important;
}

.footer .p4-subscribe .title,
.footer .p4-subscribe__text {
    color: var(--nd-on-dark) !important;
}

.footer .p4-subscribe .button,
.footer .p4-subscribe input[type="button"] {
    border-color: var(--nd-on-dark) !important;
    background: var(--nd-on-dark) !important;
    color: var(--nd-ink) !important;
}

.footer .p4-subscribe__box {
    border-color: rgba(239, 235, 228, .45) !important;
    background: transparent !important;
}

/* ------------------------------------------------------------------ */
/* Окна, уведомления                                                   */

.c-modal__content,
.popup__content,
body .wrapper-modal-back-ring,
.p4s-done__box {
    border-radius: 0 !important;
}

.mg-cookies-panel,
.cookie-panel,
[class*="cookie-panel"] {
    background: var(--nd-ink) !important;
    color: var(--nd-on-dark) !important;
}

.mg-cookies-panel a,
[class*="cookie-panel"] a {
    color: var(--nd-on-dark) !important;
}

/* Звёзды рейтинга — чёрные (как и раньше) */

/* Хлебные крошки */
.breadcrumbs,
.breadcrumbs a {
    color: var(--nd-muted);
}

/* ------------------------------------------------------------------ */
/* Ширина: страница на всю ширину окна (как у люкс-магазинов),           */
/* содержимое — в своих контейнерах (.block-wrapper)                     */

.wrapper {
    max-width: none !important;
    width: 100% !important;
    box-shadow: none !important;
}

/* Кнопка «Категории» — чёрная с белым текстом */
.categories__button,
.categories__button span,
.categories__button .fa {
    color: #fff !important;
}

.categories__button {
    border-radius: 0 !important;
    background: var(--nd-ink) !important;
    letter-spacing: .14em;
}

.categories__button:hover {
    background: var(--nd-bronze) !important;
}

/* Поиск в шапке: тонкая рамка, чёрная кнопка с белой лупой */
.c-search__form input[type="search"] {
    border: 1px solid var(--nd-line-strong) !important;
    border-right: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
}

.c-search__form input[type="search"]:focus {
    border-color: var(--nd-ink) !important;
}

.c-search__button {
    border: 1px solid var(--nd-ink) !important;
    border-radius: 0 !important;
    background: var(--nd-ink) !important;
}

.c-search__button:hover {
    border-color: var(--nd-bronze) !important;
    background: var(--nd-bronze) !important;
}

.header .c-search__button svg,
.c-search__icon {
    fill: #fff !important;
}

/* ------------------------------------------------------------------ */
/* Главная: блок «Наши товары» — заголовок по центру, вкладки прописными  */

.product__container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    margin: clamp(64px, 8vw, 110px) 0 28px;
    border: 0 !important;
    text-align: center;
}

.product__title {
    width: 100%;
    margin: 0;
    text-align: center;
    color: var(--nd-text);
    font-size: clamp(28px, 3.4vw, 44px);
    font-weight: 300;
    letter-spacing: .04em;
    text-transform: none;
}

.product__tabs {
    display: flex;
    justify-content: center;
    gap: 28px;
}

.product__tab {
    padding: 6px 0;
    border: 0 !important;
    border-bottom: 1px solid transparent !important;
    background: none !important;
    color: var(--nd-muted) !important;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .2em;
    text-transform: uppercase;
    cursor: pointer;
}

.product__tab._active,
.product__tab:hover {
    border-bottom-color: var(--nd-ink) !important;
    color: var(--nd-text) !important;
}

/* «смотреть все товары» — ссылка со стрелкой по центру */
.c-carousel__title {
    border: 0 !important;
    text-align: center;
}

.c-carousel__title::before,
.c-carousel__title::after {
    display: none !important;
}

.c-carousel__title a,
.c-carousel__title--more {
    color: var(--nd-text) !important;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .2em;
    text-transform: uppercase;
}

.c-carousel__title a:hover .c-carousel__title--more {
    color: var(--nd-bronze) !important;
}

/* Бренды и текст о магазине — заголовки в том же стиле */
.brands-wrapper h2,
.brands-wrapper .title,
.history-section h1,
.history-section h2 {
    font-weight: 300;
    letter-spacing: .04em;
    text-align: center;
}