/* ============================================================
   СЕТКА ФУТЕРА (LAW MODE)
   ============================================================ */
.footer { background: #333333; padding-bottom: 0; margin-top: 60px; }

.footer_inner {
    display: grid;
    grid-template-columns: 1fr 1fr; /* Две колонки: 50% и 50% */
    gap: 40px;
    padding-top: 40px;
    padding-bottom: 40px;
}

.footer-block { color: #999; font-size: 13px; font-family: "Rubik", sans-serif; line-height: 1.6; margin-bottom: 20px; }
.footer-block p { margin-top: 0; margin-bottom: 10px; }
.footer-block a { color: #fff; text-decoration: underline; }
.footer-block a:hover { color: #0052eb; }

/* Меню в правой колонке футера */
.legal-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* Меню бьется на 2 колонки */
    gap: 12px;
}
.legal-links li { padding: 0; margin: 0; }
.legal-links a { color: #d0d0d0; text-decoration: none; font-size: 13px; }
.legal-links a:hover { color: #fff; text-decoration: underline; }

/* ============================================================
   ПЛАШКА 18+ (РОВНО 7% ВЫСОТЫ ЭКРАНА ПО ТРЕБОВАНИЮ РКН)
   ============================================================ */
.footer-warning-18 {
    background-color: #1a1a1a;
    color: #fff;
    text-align: center;
    min-height: 7vh; /* Гарантированные 7% высоты окна браузера */
    display: flex; /* Центрируем текст по вертикали и горизонтали */
    align-items: center;
    justify-content: center;
    font-family: "Montserrat-Bold", sans-serif;
    font-size: 15px;
    padding: 15px;
    line-height: 1.4;
    border-top: 2px solid #222;
}
.footer-warning-18 strong { color: #ff3b3b; font-size: 24px; margin-right: 10px; }

/* ============================================================
   COOKIE БАННЕР
   ============================================================ */
.cookie-banner {
    position: fixed; bottom: 0; left: 0; width: 100%;
    background: #fff; box-shadow: 0 -4px 15px rgba(0,0,0,0.1);
    z-index: 99999; padding: 15px 0; border-top: 3px solid #0052eb;
}

.cookie-banner__content {
    display: flex; align-items: center; justify-content: space-between;
    max-width: 1170px; margin: 0 auto; padding: 0 15px; gap: 20px;
}

.cookie-banner p { margin: 0; font-size: 13px; color: #333; line-height: 1.5; font-family: "Rubik", sans-serif; }
.cookie-banner__buttons { display: flex; gap: 10px; flex-shrink: 0; align-items: center; }

.cookie-banner .btn {
    padding: 10px 15px; border-radius: 4px; font-family: "Montserrat-Bold", sans-serif;
    font-size: 12px; cursor: pointer; border: none; text-decoration: none; display: inline-block;
}

.cookie-banner .btn-primary { background: #0052eb; color: #fff; }
.cookie-banner .btn-secondary { background: #e0e0e0; color: #333; }
.cookie-banner .btn-link { background: transparent; color: #0052eb; text-decoration: underline; padding: 10px 5px; }

/* ============================================================
   АДАПТИВНОСТЬ
   ============================================================ */
@media (max-width: 992px) {
    .footer_inner { grid-template-columns: 1fr; gap: 20px; }
    .legal-links ul { grid-template-columns: 1fr; }
    .footer-warning-18 { font-size: 14px; flex-direction: column; }
    .cookie-banner__content { flex-direction: column; text-align: center; }
    .cookie-banner__buttons { flex-wrap: wrap; justify-content: center; }
}


/* ============================================================
   СТИЛИ ДЛЯ ВИРТУАЛЬНЫХ СТРАНИЦ (Тексты, FAQ, Списки)
   ============================================================ */

.page__content { font-family: "Rubik", sans-serif; font-size: 16px; font-weight: 400; line-height: 1.2; letter-spacing: -0.01em; color: #45464f; }
.page__content .text-lg { font-size: 18px; font-weight: 500; line-height: 1.15; letter-spacing: -0.01em; color: #000000; }
.page__content h2:not([class]), .page__content h3:not([class]), .page__content h4:not([class]) { font-family: "Rubik", sans-serif; font-weight: bold; line-height: 1.2; margin-bottom: 22px; letter-spacing: -0.01em; color: #000000; }
.page__content h2:not([class]) { font-size: 36px; }
.page__content h3:not([class]) { font-size: 28px; }
.page__content h4:not([class]) { font-size: 22px; }
.page__content p:not([class]) { padding: 0; margin-bottom: 1rem; }
.page__content ol:not([class]), .page__content ul:not([class]) { padding-left: 40px; margin-top: 24px; margin-bottom: 24px; font-family: "Rubik", sans-serif; font-size: 15px; }
.page__content ol:not([class]) li, .page__content ul:not([class]) li { color: #000000; }
.page__content ol:not([class]) li:not([class]), .page__content ul:not([class]) li:not([class]) { margin-bottom: 12px; }
.page__content ol:not([class]) li:not([class]):last-child, .page__content ul:not([class]) li:not([class]):last-child { margin-bottom: 0; }

.page__content figure:not([class]) { display: block; margin: 30px 0; }
.page__content figure:not([class]) img { display: block; border-radius: 8px; max-width: 100%; height: auto; }
.page__content figure:not([class]) figcaption { font-family: "Montserrat", sans-serif; font-size: 13px; font-weight: 400; line-height: 14px; display: block; padding: 17px 0; letter-spacing: -0.01em; color: #666; border-bottom: 1px solid #e1e5e7; }

.page__content blockquote:not([class]) { font-size: 18px; font-weight: 500; line-height: 1.2; position: relative; margin: 26px 0; padding: 22px 60px 22px 120px; letter-spacing: -0.01em; color: #333; border-radius: 10px; background: #f7fafc; }
.page__content blockquote:not([class]):before { position: absolute; top: 50%; left: 57px; display: block; width: 38px; height: 38px; margin-top: -19px; content: ''; background: url(../img/quote.svg) center center / 90% auto no-repeat; }
.page__content blockquote:not([class]) p { padding: 0; }
.page__content blockquote:not([class]) p:last-child { margin-bottom: 0; }

/* Адаптивка */
@media (max-width: 767px) {
    .page__content blockquote:not([class]) { font-size: 15px; margin: 20px 0; padding: 20px 15px 20px 60px; }
    .page__content blockquote:not([class]):before { top: 20px; left: 24px; width: 24px; height: 24px; margin-top: 0; }
}