/* ==========================================================================
   1. CORE SETTINGS & RESET (Nine Casino Identity)
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');

:root {
  --bg-body: #060e2a;
  --bg-card: #161e3c;
  --bg-element: #242d4a;
  --accent-primary: #ff7a00;
  --accent-hover: #ff9633;
  --accent-gold: #ffbe00;
  --text-main: #ffffff;
  --text-muted: #9ea6b6;
  --border-color: #242d4a;
  --block-radius: 12px;
  --transition: 0.3s ease;
  --container-width: 1240px;
  
  --color-success: #00d1ff;
  --color-error: #ff3045;
}

html, body {
    width: 100%;
    overflow-x: hidden; /* Убирает белую полосу */
    margin: 0;
    padding: 0;
    font-family: 'Montserrat', sans-serif;
    background-color: var(--bg-body);
    color: var(--text-main);
    line-height: 1.6;
}
*, *::before, *::after { box-sizing: border-box; }

a { text-decoration: none; color: inherit; transition: var(--transition); }
ul { list-style: none; padding: 0; margin: 0; }
img { max-width: 100%; display: block; }
button, input, select, textarea { font-family: 'Montserrat', sans-serif; }

/* ГЛАВНЫЙ КОНТЕЙНЕР */
.container {
    width: 100%;
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 0 20px; 
    position: relative;
}

/* 
   ГЛОБАЛЬНОЕ ЦЕНТРИРОВАНИЕ БЛОКОВ 
   width: 94% + margin auto = отступы по краям на всех экранах
*/
.main-offer, .hero-offer, .game-grid, .bonus-grid, .data-table-container, 
.app-download, .footer-column, .reg-steps, .testimonial, 
.author-box, .expert-rating-card, .faq-accordion, .limits-accordion,
.pros-cons, .bonus-calculator, .callout, .quick-deposit, 
.update-banner, .license-rich-card, .security-fairness, 
.awards-recognition, .evidence-box, .onboarding-simulator {
    width: 94%; 
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
}

/* Ограничиваем ширину для текстовых блоков */
.app-download, .author-box, .reg-steps, .testimonial, 
.expert-rating-card, .callout, .quick-deposit, .license-rich-card,
.evidence-box, .security-fairness {
    max-width: 900px; 
}

/* ==========================================================================
   2. BUTTONS
   ========================================================================== */
.button, .main-offer__cta-button, .app-download__button, 
.sticky-cta__button, .bonus-card-v2__cta, .game-grid__more-button,
.hero-offer__cta, .bonus-calculator__button, .onboarding-simulator__button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 12px 24px;
    border-radius: 50px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 14px;
    cursor: pointer;
    border: none;
    transition: var(--transition);
    text-align: center;
    background-color: var(--accent-primary);
    color: #fff !important;
    box-shadow: 0 4px 15px rgba(255, 122, 0, 0.3);
}
.button:hover, .main-offer__cta-button:hover, .game-grid__more-button:hover {
    background-color: var(--accent-hover);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 122, 0, 0.5);
}
.button--secondary {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #fff !important;
    box-shadow: none;
}
.button--secondary:hover {
    border-color: #fff;
    background: rgba(255, 255, 255, 0.1);
}

/* ==========================================================================
   3. HEADER (FIXED)
   ========================================================================== */

.main-header {
    background-color: rgba(6, 14, 42, 0.95);
    border-bottom: 1px solid var(--border-color);
    position: sticky;
    top: 0;
    z-index: 1000;
    width: 100%;
    padding: 6px 0;
}

.main-header .container {
    display: flex;
    align-items: center;
    gap: 16px;
    min-height: 56px;
}

/* ЛОГОТИП */
.main-header__logo {
    flex-shrink: 0;
    width: 150px;
}
.main-header__logo img {
    width: 100%;
    height: auto;
}

/* НАВИГАЦИЯ (общие стили) */
.main-header__nav {
    flex: 1 1 auto;
}

.main-nav__list {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    flex-wrap: nowrap;
}

.main-nav__item {
    position: relative;
}

.main-nav__link {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--text-muted);
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    padding: 6px 0;
}

.main-nav__link:hover {
    color: #fff;
}

/* КНОПКИ СПРАВА */
.main-header__actions {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-left: auto;   /* утапливаем блок вправо */
    flex-shrink: 0;
}

/* БУРГЕР (по умолчанию скрыт) */
.main-header__burger {
    background: rgba(255, 255, 255, 0.06);
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    padding: 6px 7px;
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 4px;
}
.main-header__burger span {
    display: block;
    height: 2px;
    background: #fff;
    width: 18px;
    border-radius: 1px;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

/* ДРОПДАУНЫ (десктоп) */
.main-nav__item--has-submenu > .main-nav__link::after {
    content: "";
    display: inline-block;
    margin-left: 6px;
    border-width: 4px 4px 0 4px;
    border-style: solid;
    border-color: currentColor transparent transparent transparent;
}

.main-nav__submenu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 220px;
    margin: 0;
    padding: 8px 0;
    list-style: none;
    background: #111;
    border-radius: 8px;
    box-shadow: 0 12px 30px rgba(0,0,0,.4);
    display: none;
    z-index: 1000;
}

.main-nav__submenu-link {
    display: block;
    padding: 8px 16px;
    text-decoration: none;
    font-size: 13px;
    color: rgba(255,255,255,0.85);
    white-space: nowrap;
}
.main-nav__submenu-link:hover {
    background: rgba(255,255,255,.06);
    color: #fff;
}

/* Ховер-дропдауны только на десктопе */
@media (min-width: 993px) {
    .main-nav__item--has-submenu:hover > .main-nav__submenu,
    .main-nav__item--has-submenu:focus-within > .main-nav__submenu {
        display: block;
    }
}

/* Чуть ужать меню на средних десктопах */
@media (min-width: 993px) and (max-width: 1200px) {
    .main-nav__list {
        gap: 12px;
    }
    .main-nav__link {
        font-size: 11px;
    }
}



/* МОБИЛЬНАЯ ВЕРСИЯ */
@media (max-width: 992px) {

    body.no-scroll {
        overflow: hidden;
    }

    .main-header {
        padding: 6px 0;
    }

    .main-header .container {
        min-height: 56px;
        gap: 10px;
    }

    .main-header__logo {
        width: 120px;
    }

    .main-header__burger {
        display: flex;
    }

    .main-header__burger.is-active span:nth-child(1) {
        transform: translateY(6px) rotate(45deg);
    }
    .main-header__burger.is-active span:nth-child(2) {
        opacity: 0;
    }
    .main-header__burger.is-active span:nth-child(3) {
        transform: translateY(-6px) rotate(-45deg);
    }

    .main-header__actions .button {
        padding: 7px 14px;
        font-size: 11px;
    }

    .main-header__nav {
        position: fixed;
        inset: 56px 0 0 0;
        background: #060e2a;
        display: none;
        overflow-y: auto;
        padding: 16px 20px 24px;
        z-index: 999;
    }
    .main-header__nav.is-open {
        display: block;
    }

    .main-nav__list {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .main-nav__link {
        font-size: 14px;
        text-transform: none;
        padding: 6px 0;
    }

    .main-nav__submenu {
        position: static;
        box-shadow: none;
        background: transparent;
        padding: 4px 0 8px;
        margin: 0;
        display: none;
    }
    .main-nav__item.is-open > .main-nav__submenu {
        display: block;
    }
    .main-nav__submenu-link {
        padding: 4px 0 4px 16px;
        font-size: 13px;
        color: var(--text-muted);
    }
    .main-nav__submenu-link:hover {
        background: none;
        color: #fff;
    }
}


/* DROPDOWNS – десктоп */

.main-nav__item--has-submenu > .main-nav__link::after {
    content: "";
    display: inline-block;
    margin-left: 6px;
    border-width: 4px 4px 0 4px;
    border-style: solid;
    border-color: currentColor transparent transparent transparent;
}

.main-nav__submenu {
    position: absolute;
    top: 100%;          /* сразу под пунктом, без "дыры" */
    left: 0;
    min-width: 220px;
    margin: 0;          /* важно: убираем margin-top, чтобы не было "мертвого" промежутка */
    padding: 8px 0;
    list-style: none;
    background: #111;
    border-radius: 8px;
    box-shadow: 0 12px 30px rgba(0,0,0,.4);
    display: none;
    z-index: 1000;
}

.main-nav__submenu-item { }

.main-nav__submenu-link {
    display: block;
    padding: 8px 16px;
    text-decoration: none;
    font-size: 13px;
    color: rgba(255,255,255,0.85);
    white-space: nowrap;
}

.main-nav__submenu-link:hover {
    background: rgba(255,255,255,.06);
    color: #fff;
}

/* показываем подменю по ховеру на десктопе */
@media (min-width: 993px) {
    .main-nav__item--has-submenu:hover > .main-nav__submenu,
    .main-nav__item--has-submenu:focus-within > .main-nav__submenu {
        display: block;
    }
}

/* чуть ужимаем шрифт и отступы на средних экранах, чтобы всё влезло */
@media (min-width: 993px) and (max-width: 1200px) {
    .main-nav__list {
        gap: 12px;
    }
    .main-nav__link {
        font-size: 11px;
    }
}

/* ==========================================================================
   4. HERO OFFER (RESTORED)
   ========================================================================== */
.hero-offer {
  text-align: center;
  padding: 60px 20px;
  background-color: var(--bg-element);
  background-image: radial-gradient(circle at center, #1b264f 0%, #060e2a 100%);
  border-radius: var(--block-radius);
  border: 1px solid var(--border-color);
  position: relative;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(0,0,0,0.3);
}
.hero-offer__title { font-size: 36px; font-weight: 900; font-style: italic; margin-bottom: 10px; color: #fff; }
.hero-offer__subtitle { font-size: 22px; color: var(--text-muted); margin-bottom: 30px; text-transform: uppercase; letter-spacing: 1px; }
.hero-offer__main-offer { font-size: 52px; font-weight: 900; color: var(--accent-gold); margin-bottom: 40px; text-shadow: 0 4px 15px rgba(0, 0, 0, 0.5); line-height: 1; }
.hero-offer__cta { font-size: 18px; padding: 16px 40px; margin-bottom: 40px; }
.hero-offer__features { display: flex; flex-direction: column; align-items: center; gap: 10px; font-size: 14px; color: var(--text-muted); }

/* MAIN OFFER (Alternative Hero) */
.main-offer {
    text-align: center; padding: 60px 20px;
    background: radial-gradient(circle at center, #1b264f 0%, #060e2a 100%);
    border-radius: var(--block-radius); border: 1px solid var(--border-color);
    margin-top: 30px; display: flex; flex-direction: column; align-items: center;
}
.main-offer__logo { height: 50px; margin-bottom: 20px; width: auto; }
.main-offer__title { font-size: 32px; font-weight: 900; color: #fff; margin-bottom: 10px; text-transform: uppercase; }
.main-offer__condition { font-size: 16px; color: var(--text-muted); margin-bottom: 30px; }
.main-offer__promo-code { margin-top: 15px; font-family: monospace; color: var(--accent-primary); }

/* ==========================================================================
   5. BONUS GRID
   ========================================================================== */
.bonus-grid__title { text-align: center; font-size: 28px; margin-bottom: 30px; text-transform: uppercase; }
.bonus-grid__container {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 25px;
}
.bonus-card-v2 {
    background: var(--bg-card); border: 1px solid var(--border-color);
    border-radius: var(--block-radius); padding: 25px;
    display: flex; flex-direction: column; position: relative; overflow: hidden;
    min-height: 320px; transition: 0.3s;
}
.bonus-card-v2:hover { transform: translateY(-5px); border-color: var(--accent-primary); }
.bonus-card-v2__content { position: relative; z-index: 2; height: 100%; display: flex; flex-direction: column; justify-content: space-between; }
.bonus-card-v2__header { border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 15px; margin-bottom: 15px; }
.bonus-card-v2__title { font-size: 20px; font-weight: 800; margin-bottom: 8px; color: #fff; }
.bonus-card-v2__tags { display: flex; gap: 8px; }
.bonus-card-v2__tag { background: rgba(255,255,255,0.1); font-size: 11px; padding: 4px 8px; border-radius: 4px; font-weight: 700; color: var(--text-muted); text-transform: uppercase; }
.bonus-card-v2__offer { font-size: 22px; font-weight: 800; color: #ffbe00; margin-bottom: 20px; line-height: 1.3; }
.bonus-card-v2__cta { width: 100%; text-align: center; display: block; }
.bonus-card-v2__visual {
    position: absolute; top: 0; right: 0; width: 100%; height: 100%;
    z-index: 1; opacity: 0.1; display: flex; align-items: center; justify-content: center;
}
.bonus-card-v2__visual img { width: 100%; height: 100%; object-fit: cover; }

/* ==========================================================================
   6. GAMES GRID
   ========================================================================== */
.game-grid { text-align: center; }
.game-grid__title { font-size: 28px; font-weight: 800; margin-bottom: 30px; color: #fff; text-transform: uppercase; }
.game-grid__container {
    display: grid;
    /* auto-fit убирает пустые колонки, а 1fr растягивает текущие карточки на всю ширину */
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); 
    gap: 20px;
    margin-bottom: 30px;
}
.game-card {
    background: var(--bg-card); border-radius: 12px; overflow: hidden; position: relative;
    border: 1px solid var(--border-color); transition: 0.3s;
}
.game-card:hover { transform: translateY(-5px); }
.game-card__image { width: 100%; aspect-ratio: 1/1; object-fit: cover; }
.game-card__title { padding: 10px; font-size: 13px; font-weight: 600; color: var(--text-muted); background: var(--bg-element); }
.game-card__overlay {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(6, 14, 42, 0.9);
    display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 10px;
    opacity: 0; transition: 0.3s;
}
.game-card:hover .game-card__overlay { opacity: 1; }
.game-card__button { padding: 8px 16px !important; font-size: 12px !important; min-width: 100px; margin: 0 !important; }

/* ==========================================================================
   7. RESTORED COMPONENTS (ALL OF THEM)
   ========================================================================== */
.reg-steps { display: flex; flex-direction: column; gap: 30px; }
.reg-steps__item { display: flex; align-items: flex-start; gap: 20px; }
.reg-steps__number {
    flex-shrink: 0; width: 45px; height: 45px; border: 2px solid var(--accent-primary);
    color: var(--accent-primary); border-radius: 50%; display: flex; align-items: center; justify-content: center;
    font-weight: 800; font-size: 20px; background: var(--bg-card); margin-top: -5px;
}
.reg-steps__title { margin: 0 0 10px 0; font-size: 18px; color: #fff; text-transform: uppercase; }
.reg-steps__description { margin: 0; color: var(--text-muted); font-size: 14px; }
.reg-steps__highlight { color: var(--accent-primary); font-weight: 700; }

.expert-rating-card { background-color: var(--bg-card); border-radius: var(--block-radius); padding: 30px; border: 1px solid var(--border-color); }
.expert-rating-card__main { text-align: center; padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid var(--border-color); }
.expert-rating-card__score { font-size: 42px; font-weight: 900; color: var(--accent-gold); }
.expert-rating-card__stars { color: var(--accent-gold); font-size: 20px; }
.rating-item { display: grid; grid-template-columns: 1fr 2fr 1fr; align-items: center; gap: 10px; margin-bottom: 10px; font-size: 14px; }
.rating-item__progress-bar { width: 100%; height: 8px; background-color: #000; border-radius: 10px; overflow: hidden; }
.rating-item__progress { height: 100%; background-color: var(--accent-primary); border-radius: 10px; }

.author-box { background: var(--bg-card); padding: 30px; border-radius: var(--block-radius); text-align: center; border: 1px solid var(--border-color); display: flex; flex-direction: column; align-items: center; }
.author-box__avatar { width: 80px; height: 80px; border-radius: 50%; object-fit: cover; border: 3px solid var(--accent-primary); margin-bottom: 15px; }
.author-box__name { font-size: 20px; font-weight: 700; color: #fff; }
.author-box__title { color: var(--accent-primary); font-size: 14px; margin-bottom: 10px; }
.author-box__bio { color: var(--text-muted); font-size: 14px; }

/* ==========================================================================
   7. RESTORED COMPONENTS (ALL OF THEM)
   ========================================================================== */

/* ... (другие стили) */

.faq-accordion, .limits-accordion { 
    background: var(--bg-card); 
    padding: 30px; 
    border-radius: var(--block-radius); 
    border: 1px solid var(--border-color); 
}

.faq-accordion__title { 
    font-size: 24px; 
    color: #fff; 
    border-left: 4px solid var(--accent-primary); 
    padding-left: 15px; 
    margin-bottom: 20px; 
}

.faq-item { 
    border-bottom: 1px solid var(--border-color); 
}

/* Убираем рамку у последнего элемента для чистоты вида */
.faq-item:last-child {
    border-bottom: none;
}

.faq-item__question { 
    width: 100%; 
    padding: 20px 0; /* Увеличим отступ для лучшей читаемости */
    font-size: 16px; 
    font-weight: 600; 
    text-align: left; 
    background: none; 
    color: #fff; 
    cursor: pointer; 
    display: flex; 
    justify-content: space-between;
    align-items: center; /* Центрируем иконку по вертикали */
    border: none; /* Убираем стандартную рамку кнопки */
    outline: none; /* Убираем контур при фокусе */
}

.faq-item__question:hover {
    color: var(--accent-primary); /* Добавляем эффект при наведении */
}

.faq-item__icon { 
    color: var(--accent-primary); 
    font-size: 24px; /* Немного увеличим иконку */
    transition: transform 0.3s ease; /* Плавный поворот иконки */
}

.faq-item__answer { 
    max-height: 0; 
    overflow: hidden; 
    transition: max-height 0.4s ease, padding-bottom 0.4s ease; /* Плавное открытие/закрытие */
    color: var(--text-muted); 
    padding-right: 20px; 
    font-size: 15px; /* Установим размер шрифта для ответа */
    line-height: 1.7; /* Улучшим межстрочный интервал */
}

.faq-item.is-open .faq-item__answer { 
    max-height: 500px; /* Увеличиваем максимальную высоту на всякий случай */
    padding-bottom: 20px; 
}

.faq-item.is-open .faq-item__icon { 
    transform: rotate(45deg); 
}

/* ... (остальные стили) */

.pros-cons { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 30px; }
.pros-cons__title { font-size: 20px; margin-bottom: 15px; font-weight: 800; }
.pros-cons__column--pros .pros-cons__title { color: var(--color-success); }
.pros-cons__column--cons .pros-cons__title { color: var(--color-error); }
.pros-cons__item { padding-left: 25px; position: relative; color: var(--text-muted); margin-bottom: 8px; }
.pros-cons__item::before { position: absolute; left: 0; font-weight: bold; }
.pros-cons__column--pros .pros-cons__item::before { content: '✓'; color: var(--color-success); }
.pros-cons__column--cons .pros-cons__item::before { content: '✗'; color: var(--color-error); }

.bonus-calculator { background: var(--bg-card); padding: 30px; border-radius: var(--block-radius); border: 1px solid var(--border-color); }
.bonus-calculator__inputs { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 15px; margin-bottom: 20px; }
.form-group label { display: block; margin-bottom: 5px; color: var(--text-muted); font-size: 12px; }
.form-group input { width: 100%; background: var(--bg-body); border: 1px solid var(--border-color); padding: 10px; color: #fff; border-radius: 6px; }
.bonus-calculator__result { background: var(--bg-body); padding: 15px; text-align: center; border-radius: 8px; margin-top: 15px; }
#wagerAmount { color: var(--accent-gold); font-weight: 800; font-size: 18px; }

.callout { background-color: var(--bg-card); border-radius: 8px; padding: 20px; margin: 30px 0; border-left: 4px solid var(--accent-primary); display: flex; align-items: flex-start; gap: 20px; }
.callout img, .callout svg { width: 30px; height: 30px; filter: invert(53%) sepia(68%) saturate(1376%) hue-rotate(360deg) brightness(101%) contrast(106%); }
.callout__content p { margin: 0; color: var(--text-muted); font-size: 15px; }

.license-rich-card { background-color: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 25px; margin-bottom: 30px; }
.license-header { display: flex; gap: 15px; border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 15px; margin-bottom: 20px; }
.license-icon-box { background: rgba(46, 204, 113, 0.15); color: #2ecc71; width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; border-radius: 50%; font-size: 24px; flex-shrink: 0; }
.security-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 15px; }
.security-item { background: var(--bg-body); padding: 12px; border-radius: 8px; display: flex; align-items: center; gap: 10px; border: 1px solid var(--border-color); }
.security-text strong { display: block; font-size: 13px; color: #fff; }
.security-text span { font-size: 11px; color: #888; }

.onboarding-simulator__form { display: flex; gap: 15px; align-items: flex-end; }
.onboarding-simulator__input-group { flex-grow: 1; }
.onboarding-simulator__input { width: 100%; background: var(--bg-body); border: 1px solid var(--border-color); padding: 12px; color: #fff; border-radius: 8px; }

.evidence-box, .update-banner { background: var(--bg-card); border: 1px solid var(--border-color); padding: 15px 25px; border-radius: 8px; display: flex; align-items: center; justify-content: center; gap: 15px; font-weight: 500; }
.evidence-box__icon, .update-banner__icon { color: #00d1ff; font-weight: 800; font-size: 18px; }

.security-fairness { display: flex; flex-direction: column; gap: 20px; background: var(--bg-card); padding: 25px; border-radius: 12px; border: 1px solid var(--border-color); }
.security-fairness__item { display: flex; align-items: center; gap: 15px; color: var(--text-muted); }
.security-fairness__icon { width: 40px; filter: invert(100%); }

.awards-recognition__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap: 20px; text-align: center; }
.award-item__logo { max-height: 60px; margin: 0 auto 10px; filter: grayscale(100%); opacity: 0.7; transition: 0.3s; }
.award-item__logo:hover { filter: grayscale(0); opacity: 1; }

/* ==========================================================================
   8. TABLES & APP DOWNLOAD
   ========================================================================== */
.data-table-container { background: var(--bg-card); padding: 30px; border-radius: var(--block-radius); border: 1px solid var(--border-color); margin-bottom: 50px; }
.data-table-container__title { font-size: 24px; color: #fff; border-left: 4px solid var(--accent-primary); padding-left: 15px; margin-bottom: 20px; }
.data-table { width: 100%; border-collapse: collapse; }
.data-table th { text-align: left; padding: 15px; background: var(--bg-element); color: #fff; font-size: 13px; text-transform: uppercase; }
.data-table td { padding: 15px; border-bottom: 1px solid var(--border-color); color: var(--text-muted); font-size: 14px; }
.promo-code { color: var(--accent-primary); font-family: monospace; font-weight: 700; }

/* --- ИСПРАВЛЕННЫЙ БЛОК APP DOWNLOAD --- */

.app-download { 
    width: 100%;               /* Занимает доступное место */
    max-width: 760px;          /* Принудительное ограничение ширины (чтобы не был растянут) */
    margin: 50px auto !important; /* Центрирование по горизонтали с отступом сверху/снизу */
    
    background: var(--bg-card); 
    padding: 40px 30px;        /* Внутренние отступы */
    border-radius: 16px;       /* Скругление углов (чуть больше стандартного) */
    border: 1px solid var(--border-color); 
    
    text-align: center; 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    
    /* Тень, чтобы выделить блок на темном фоне */
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4);
}

.app-download__image { 
    width: 80px; 
    height: auto;
    margin-bottom: 25px;
}

.app-download__title { 
    font-size: 28px;
    font-weight: 800; 
    margin: 0 0 15px 0;
    color: #fff; 
    line-height: 1.2;
}

.app-download__desc {
    font-size: 16px;
    color: var(--text-muted);
    line-height: 1.6;
    max-width: 600px; /* Ограничиваем ширину текста внутри карточки */
    margin: 0 0 30px 0;
}

.app-download__desc strong {
    color: #fff;
}

.app-download__buttons { 
    display: flex; 
    gap: 15px; 
    flex-wrap: wrap; /* Чтобы на мобильных кнопки переносились */
    justify-content: center;
    margin-bottom: 25px; 
}

/* Дополнительная страховка для кнопок, чтобы они выглядели красиво */
.app-download__button {
    min-width: 180px; /* Минимальная ширина кнопок */
}

.app-download__note {
    font-size: 14px;
    color: var(--text-muted);
    opacity: 0.8;
}

.app-download__note em {
    font-style: normal;
    color: #fff;
}

.testimonial { background: var(--bg-card); padding: 30px; border-radius: var(--block-radius); border-left: 5px solid var(--accent-primary); margin-bottom: 40px; }
.testimonial__text { font-style: italic; color: var(--text-muted); font-size: 16px; line-height: 1.6; margin-bottom: 20px; }
.testimonial__author { display: flex; align-items: center; gap: 15px; border-top: 1px solid rgba(255,255,255,0.1); padding-top: 15px; }

.responsible-gaming-block { background: var(--bg-card); padding: 25px; border-radius: 12px; border: 1px solid var(--border-color); color: #e0e0e0; margin-bottom: 20px; }
.responsible-gaming-block__title { margin-top: 0; color: #fff; font-size: 20px; border-bottom: 2px solid #e74c3c; padding-bottom: 10px; margin-bottom: 20px; display: flex; align-items: center; gap: 10px; }
.rg-intro { font-size: 15px; line-height: 1.6; margin-bottom: 25px; color: #b0b0b0; }
.rg-tools-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 15px; margin-bottom: 25px; }
.rg-tool-card { background-color: var(--bg-element); padding: 15px; border-radius: 8px; border: 1px solid var(--border-color); }
.rg-tool-header { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; font-weight: 600; color: #fff; }
.rg-tool-desc { font-size: 13px; color: #888; line-height: 1.4; }
.rg-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; background: var(--bg-element); padding: 15px; border-radius: 8px; gap: 15px; }
.rg-contact a { color: var(--accent-primary); font-weight: bold; }
.rg-badges { display: flex; gap: 15px; align-items: center; }
.rg-badge { background: #333; padding: 5px 10px; border-radius: 4px; font-size: 12px; font-weight: bold; color: #aaa; }
.badge-18 { color: #e74c3c; border: 1px solid #e74c3c; }

/* --- Стили для сетки провайдеров --- */
.provider-grid {
    background-color: var(--bg-card); /* Используем цвета темы */
    padding: 30px;
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 40px;
    text-align: center; /* Центрирует заголовок и контент */
}

.provider-grid__title {
    color: #ffffff;
    font-size: 22px;
    margin: 0 auto 25px auto; /* auto по бокам центрирует сам блок */
    border-bottom: 2px solid var(--accent-primary);
    padding-bottom: 10px;
    display: inline-block; /* Чтобы подчеркивание было только под текстом */
}

.provider-grid__logos {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center; /* ГЛАВНОЕ: Выравнивает кнопки по центру */
}

.provider-grid__item {
    background-color: var(--bg-element);
    color: #e0e0e0;
    padding: 10px 20px;
    border-radius: 8px;
    border: 1px solid var(--border-color);
    font-weight: 600;
    font-size: 14px;
    cursor: default;
    user-select: none;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    transition: 0.3s;
}

.provider-grid__item:hover {
    background-color: var(--accent-primary);
    color: #fff;
    border-color: var(--accent-primary);
    transform: translateY(-2px);
}

.quick-deposit { background-color: var(--bg-card); padding: 25px; border-radius: 12px; border: 1px solid var(--border-color); margin-bottom: 20px; }
.quick-deposit__title { color: #ffffff; margin-top: 0; margin-bottom: 20px; font-size: 18px; border-left: 4px solid var(--accent-primary); padding-left: 12px; text-transform: uppercase; letter-spacing: 0.5px; }
.quick-deposit__grid { display: flex; flex-wrap: wrap; gap: 10px; }
.quick-deposit__item { background-color: var(--bg-element); color: #fff; padding: 10px 20px; border-radius: 50px; border: 1px solid var(--border-color); font-size: 14px; font-weight: 500; display: flex; align-items: center; gap: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.2); }

/* ==========================================================================
   9. FOOTER (Обновленные стили)
   ========================================================================== */
.main-footer {
    background: #020516; 
    padding-top: 60px; 
    margin-top: 60px; 
    border-top: 1px solid var(--border-color);
}

/* Изменяем сетку для идеального центрирования среднего блока */
.main-footer .container { 
    display: grid; 
    /* 1-я колонка (гибкая), 2-я (авто по контенту), 3-я (гибкая) */
    grid-template-columns: 1fr auto 1fr; 
    align-items: start; /* Выравнивание всех колонок по верху */
    gap: 40px; 
}

/* Центрируем текст во второй (центральной) колонке */
.footer-column:nth-child(2) {
    text-align: center;
}

/* Выравниваем контент в третьей колонке по правому краю для баланса */
.footer-column:nth-child(3) {
    text-align: right;
}

/* Возвращаем выравнивание для карточек внутри правой колонки */
.footer-column:nth-child(3) .footer-column__payment-methods {
    justify-content: flex-end;
}


.footer-column__logo img { 
    width: 140px; 
    margin-bottom: 20px; 
}

.footer-column__title { 
    font-size: 16px; 
    color: #fff; 
    margin-bottom: 20px; 
    text-transform: uppercase; 
}

.footer-column__list li { 
    margin-bottom: 10px; 
}

.footer-column__list a { 
    color: var(--text-muted); 
    font-size: 14px; 
}

.footer-column__list a:hover { 
    color: var(--accent-primary); 
}

/* --- СТИЛИ ДЛЯ КАРТОЧЕК (Остаются без изменений) --- */
.footer-column__trust-seals,
.footer-column__payment-methods {
    display: flex;
    flex-wrap: wrap; 
    gap: 10px;
}

.trust-seal,
.footer-column__payment-methods span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-element);
    padding: 8px 16px;
    border-radius: 50px;
    border: 1px solid var(--border-color);
    font-size: 12px;
    font-weight: 600;
    color: var(--text-muted);
    transition: var(--transition);
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}

.trust-seal:hover,
.footer-column__payment-methods span:hover {
    border-color: var(--accent-primary);
    color: #fff;
    transform: translateY(-2px);
}

.main-footer__copyright { 
    text-align: center; 
    padding: 20px; 
    background: #000; 
    margin-top: 40px; 
    font-size: 12px; 
    color: #555; 
}

/* --- Адаптивность для футера --- */
@media (max-width: 768px) {
    .main-footer .container {
        /* Возвращаем одноколоночный макет на мобильных */
        grid-template-columns: 1fr;
        text-align: center; /* Центрируем весь контент */
    }

    /* Сбрасываем выравнивание для колонок */
    .footer-column:nth-child(2),
    .footer-column:nth-child(3) {
        text-align: center;
    }

    /* Центрируем карточки на мобильных */
    .footer-column__trust-seals,
    .footer-column:nth-child(3) .footer-column__payment-methods {
        justify-content: center;
    }
}
/* Sticky CTA */
.sticky-cta {
    position: fixed; bottom: 0; left: 0; width: 100%; background: rgba(6, 14, 42, 0.95);
    border-top: 2px solid var(--accent-primary); padding: 15px 20px; display: flex; justify-content: space-between;
    align-items: center; z-index: 9999;
}
.sticky-cta__brand { font-weight: 800; font-size: 16px; color: #fff; }
.sticky-cta__offer { font-size: 13px; color: #ccc; }

/* ==========================================================================
   10. MOBILE RESPONSIVE
   ========================================================================== */
@media (max-width: 992px) {

    body.no-scroll {
        overflow: hidden;
    }

    .main-header {
        padding: 6px 0;
    }

    .main-header .container {
        min-height: 56px;
        gap: 10px;
    }

    /* логотип поменьше */
    .main-header__logo {
        width: 120px;
    }

    /* показываем бургер, добавляем анимацию */
    .main-header__burger {
        display: flex;
    }
    .main-header__burger.is-active span:nth-child(1) {
        transform: translateY(6px) rotate(45deg);
    }
    .main-header__burger.is-active span:nth-child(2) {
        opacity: 0;
    }
    .main-header__burger.is-active span:nth-child(3) {
        transform: translateY(-6px) rotate(-45deg);
    }

    /* кнопки в хедере – меньше */
    .main-header__actions .button {
        padding: 7px 14px;
        font-size: 11px;
    }
    .main-header__actions .button--secondary {
        min-width: auto;
    }

    /* мобильное меню-оверлей */
    .main-header__nav {
        position: fixed;
        inset: 56px 0 0 0;     /* сверху отступ под шапку */
        background: #060e2a;
        display: none;
        overflow-y: auto;
        padding: 16px 20px 24px;
        z-index: 999;
    }
    .main-header__nav.is-open {
        display: block;
    }

    /* список меню в колонку */
    .main-nav__list {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .main-nav__link {
        font-size: 14px;
        text-transform: none;
        padding: 6px 0;
    }

    /* подменю в мобиле – аккордеон */
    .main-nav__submenu {
        position: static;
        box-shadow: none;
        background: transparent;
        padding: 4px 0 8px;
        margin: 0;
        display: none;
    }
    .main-nav__item.is-open > .main-nav__submenu {
        display: block;
    }
    .main-nav__submenu-link {
        padding: 4px 0 4px 16px;
        font-size: 13px;
        color: var(--text-muted);
    }
    .main-nav__submenu-link:hover {
        background: none;
        color: #fff;
    }

    /* остальной твой адаптив */
    .game-grid__container { 
        display: flex; 
        overflow-x: auto; 
        scroll-snap-type: x mandatory; 
        padding-bottom: 20px; 
    }
    .game-card { 
        min-width: 160px; 
        scroll-snap-align: start; 
    }

    .data-table thead { display: none; }
    .data-table tr { 
        display: block; 
        border: 1px solid var(--border-color); 
        margin-bottom: 20px; 
        border-radius: 8px; 
        padding: 10px; 
    }
    .data-table td { 
        display: flex; 
        justify-content: space-between; 
        padding: 10px 5px; 
        border-bottom: 1px solid rgba(255,255,255,0.05); 
    }
    .data-table td::before { 
        content: attr(data-label); 
        font-weight: 700; 
        color: #fff; 
    }

    .sticky-cta { 
        flex-direction: column; 
        text-align: center; 
        gap: 10px; 
    }
    .app-download__buttons { 
        flex-direction: column; 
        width: 100%; 
    }
    .app-download__button { 
        width: 100%; 
    }
    .hero-offer__features { 
        text-align: center; 
    }
}

/* ==========================================================================
   ИСПРАВЛЕННАЯ ВЕРСИЯ ДЛЯ ДЕСКТОПА
   ========================================================================== */

/* ДЕСКТОП: меню гибко занимает пространство между лого и кнопками */
@media (min-width: 993px) {

  .main-header {
    padding: 10px 0;
  }

  /* --- ИЗМЕНЕНО: Главный контейнер хедера --- */
  .main-header .container {
    display: flex;                 /* Используем Flexbox для всех дочерних элементов */
    align-items: center;           /* Вертикальное выравнивание по центру */
    justify-content: space-between;/* Равномерно распределяет пространство */
    gap: 24px;                     /* Отступы между элементами */
    max-width: 1240px;             /* Увеличим максимальную ширину для комфорта */
    margin: 0 auto;
    padding: 0 20px;
    /* position: relative; УДАЛЕНО: больше не нужно для абсолютного позиционирования */
  }

  /* --- Логотип: не сжимается --- */
  .main-header__logo {
    flex-shrink: 0; /* Запрещаем логотипу сжиматься */
    width: 150px;
  }

  /* --- ИЗМЕНЕНО: Блок навигации --- */
  .main-header__nav {
    flex: 1 1 auto; /* ДОБАВЛЕНО: Навигация занимает всё доступное пространство */
    min-width: 0;   /* ДОБАВЛЕНО: Важное свойство, чтобы flex-элемент мог сжиматься */

    /* ВЕСЬ БЛОК АБСОЛЮТНОГО ПОЗИЦИОНИРОВАНИЯ УДАЛЁН: */
    /* position: absolute; */
    /* top: 50%; */
    /* left: 50%; */
    /* transform: translate(-50%, -50%); */
    /* white-space: nowrap; */
  }

  /* --- Список ссылок в навигации --- */
  .main-nav__list {
    display: flex;
    justify-content: center; /* Центрируем ссылки внутри блока навигации */
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;         /* ДОБАВЛЕНО: Разрешаем перенос ссылок на новую строку, если не хватает места */
  }

  /* --- Блок с кнопками "Войти" и "Регистрация" --- */
  .main-header__actions {
    flex-shrink: 0; /* Запрещаем кнопкам сжиматься */
    display: flex;
    align-items: center;
    gap: 16px;
    /* margin-left: 0; УДАЛЕНО: больше не нужно, т.к. justify-content делает всю работу */
  }

  .main-header__actions .button {
    padding: 9px 20px;
    font-size: 12px;
    white-space: nowrap;
  }

  /* --- Бургер на десктопе не нужен --- */
  .main-header__burger {
    display: none !important;
  }
}

/* ==========================================================================
   NC ENRICHER COMPONENTS
   Универсальные блоки: таблицы, step-by-step, app, badges
   ========================================================================== */

/* --- 1. Generic NC block wrapper (как твои .data-table-container / .security-fairness) --- */

.nc-block {
  width: 94%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;

  background: var(--bg-card);
  border-radius: var(--block-radius);
  border: 1px solid var(--border-color);
  padding: 24px 24px 26px;
}

.nc-block--compact {
  padding: 18px 20px 20px;
}

.nc-block--no-bg {
  background: transparent;
  border: none;
  padding: 0;
}

.nc-block__title,
.nc-section-title {
  font-size: 24px;
  color: #fff;
  margin: 0 0 16px 0;
  padding-left: 15px;
  border-left: 4px solid var(--accent-primary);
  text-transform: none;
}

.nc-block__subtitle {
  margin: 0 0 16px 0;
  color: var(--text-muted);
  font-size: 14px;
}

/* небольшие подсказки/лейблы внутри блоков */
.nc-block__label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-muted);
}

/* ==========================================================================
   2. NC TABLES (payments, withdrawals, games, app, bonuses)
   ========================================================================== */

.nc-table-wrapper {
  margin-top: 10px;
  overflow-x: auto;
}

.nc-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 100%;
}

.nc-table th,
.nc-table td {
  padding: 14px 16px;
  font-size: 13px;
}

.nc-table th {
  text-align: left;
  background: var(--bg-element);
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  border-bottom: 1px solid var(--border-color);
  white-space: nowrap;
}

.nc-table td {
  color: var(--text-muted);
  border-bottom: 1px solid var(--border-color);
  vertical-align: middle;
}

/* полосатые строки по желанию */
.nc-table tr:nth-child(even) td {
  background: rgba(255, 255, 255, 0.01);
}

/* последний ряд без бордера снизу */
.nc-table tr:last-child td {
  border-bottom: none;
}

/* Вариации по типам таблиц — легкий тюнинг (не обязательно, но красиво) */

.nc-table--payments th:nth-child(1),
.nc-table--withdrawals th:nth-child(1),
.nc-table--games th:nth-child(1) {
  width: 20%;
}

.nc-table--payments th:nth-child(2),
.nc-table--withdrawals th:nth-child(2) {
  width: 12%;
}

/* мини-бейджи внутри таблиц: Fast, No fees, Recommended */
.nc-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 8px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.04);
  color: var(--text-muted);
}

.nc-badge--primary {
  border-color: var(--accent-primary);
  background: rgba(255, 122, 0, 0.08);
  color: #fff;
}

.nc-badge--success {
  border-color: var(--color-success);
  background: rgba(0, 209, 255, 0.12);
  color: #fff;
}

.nc-badge--danger {
  border-color: var(--color-error);
  background: rgba(255, 48, 69, 0.12);
  color: #fff;
}

/* список бейджей – например, "Best for: Fast payouts • Low limits" */
.nc-badge-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.nc-badge-list__item {
  @* наследует .nc-badge, но если модель не добавит, пусть будет минимальный стиль *@
  font-size: 11px;
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

/* Mobile-friendly поведение аналогично .data-table */

@media (max-width: 992px) {
  .nc-table {
    border: 0;
  }

  .nc-table thead {
    display: none;
  }

  .nc-table tr {
    display: block;
    border: 1px solid var(--border-color);
    margin-bottom: 18px;
    border-radius: 8px;
    padding: 10px;
    background: #050a20;
  }

  .nc-table td {
    display: flex;
    justify-content: space-between;
    padding: 8px 4px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    font-size: 13px;
  }

  .nc-table td::before {
    content: attr(data-label);
    font-weight: 700;
    color: #fff;
    padding-right: 12px;
    text-align: left;
  }

  .nc-table tr:last-child td {
    border-bottom: none;
  }
}

/* ==========================================================================
   3. NC STEPS (универсальные step-by-step гайды)
   ========================================================================== */

.nc-steps {
  width: 94%;
  max-width: 900px;
  margin: 0 auto 50px auto;
}

.nc-steps__title {
  font-size: 22px;
  margin: 0 0 20px 0;
  padding-left: 15px;
  border-left: 4px solid var(--accent-primary);
  color: #fff;
}

.nc-steps__subtitle {
  margin: 0 0 18px 0;
  color: var(--text-muted);
  font-size: 14px;
}

.nc-steps__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.nc-steps__item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.nc-steps__number {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid var(--accent-primary);
  color: var(--accent-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 18px;
  background: var(--bg-card);
  margin-top: 2px;
}

.nc-steps__content {
  flex: 1 1 auto;
}

.nc-steps__item-title {
  margin: 0 0 6px 0;
  font-size: 16px;
  color: #fff;
  text-transform: none;
}

.nc-steps__item-text {
  margin: 0;
  font-size: 14px;
  color: var(--text-muted);
}

.nc-steps__hint {
  margin-top: 6px;
  font-size: 12px;
  color: var(--accent-primary);
}

/* более компактная версия (например, под withdrawals) */
.nc-steps--compact .nc-steps__item {
  gap: 12px;
}

.nc-steps--compact .nc-steps__number {
  width: 32px;
  height: 32px;
  font-size: 15px;
}

/* ==========================================================================
   4. NC APP CARD (модуль про мобильное приложение / PWA)
   ========================================================================== */

.nc-app-card {
  width: 94%;
  max-width: 900px;
  margin: 0 auto 50px auto;
  background: var(--bg-card);
  border-radius: 16px;
  border: 1px solid var(--border-color);
  padding: 24px 24px 26px;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1.1fr);
  gap: 20px;
  align-items: center;
}

.nc-app-card__header {
  margin-bottom: 10px;
}

.nc-app-card__title {
  margin: 0 0 8px 0;
  font-size: 22px;
  color: #fff;
}

.nc-app-card__badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 9px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.04);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--text-muted);
}

.nc-app-card__text {
  font-size: 14px;
  color: var(--text-muted);
  margin: 0 0 12px 0;
}

.nc-app-card__list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.nc-app-card__list-item {
  position: relative;
  padding-left: 18px;
  margin-bottom: 6px;
  font-size: 13px;
  color: var(--text-muted);
}

.nc-app-card__list-item::before {
  content: "•";
  position: absolute;
  left: 4px;
  top: 0;
  color: var(--accent-primary);
}

.nc-app-card__meta {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 10px;
}

.nc-app-card__meta-item {
  background: var(--bg-element);
  border-radius: 10px;
  border: 1px solid var(--border-color);
  padding: 10px 12px;
  font-size: 12px;
  color: var(--text-muted);
}

.nc-app-card__meta-label {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-muted);
  margin-bottom: 4px;
}

.nc-app-card__meta-value {
  font-size: 13px;
  color: #fff;
  font-weight: 600;
}

/* адаптив для app-card */
@media (max-width: 768px) {
  .nc-app-card {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   5. NC KEY-VALUE LIST (маленькие справочники: лицензи, лимиты и т.п.)
   ========================================================================== */

.nc-kv-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
  margin: 10px 0 0 0;
}

.nc-kv-list__item {
  background: var(--bg-element);
  border-radius: 10px;
  border: 1px solid var(--border-color);
  padding: 8px 10px;
  font-size: 12px;
}

.nc-kv-list__label {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--text-muted);
  margin-bottom: 2px;
  font-size: 11px;
}

.nc-kv-list__value {
  color: #fff;
  font-weight: 600;
}

/* ==========================================================================
   6. NC PROS & CONS (если модель использует .nc-pros-cons вместо .pros-cons)
   ========================================================================== */

.nc-pros-cons {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
  width: 94%;
  max-width: 900px;
  margin: 0 auto 40px auto;
}

.nc-pros-cons__column-title {
  font-size: 18px;
  margin-bottom: 12px;
  font-weight: 800;
}

.nc-pros-cons__column--pros .nc-pros-cons__column-title {
  color: var(--color-success);
}

.nc-pros-cons__column--cons .nc-pros-cons__column-title {
  color: var(--color-error);
}

.nc-pros-cons__item {
  padding-left: 24px;
  position: relative;
  color: var(--text-muted);
  margin-bottom: 6px;
  font-size: 14px;
}

.nc-pros-cons__item::before {
  position: absolute;
  left: 0;
  font-weight: bold;
}

.nc-pros-cons__column--pros .nc-pros-cons__item::before {
  content: "✓";
  color: var(--color-success);
}

.nc-pros-cons__column--cons .nc-pros-cons__item::before {
  content: "✗";
  color: var(--color-error);
}

/* ==========================================================================
   7. NC CALLOUT (если Enricher будет использовать нейминг .nc-callout)
   ========================================================================== */

.nc-callout {
  background-color: var(--bg-card);
  border-radius: 8px;
  padding: 18px 20px;
  margin: 25px auto;
  border-left: 4px solid var(--accent-primary);
  display: flex;
  align-items: flex-start;
  gap: 14px;
  width: 94%;
  max-width: 900px;
}

.nc-callout__icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  opacity: 0.9;
}

.nc-callout__body {
  font-size: 14px;
  color: var(--text-muted);
}

.nc-callout__body strong {
  color: #fff;
}
