/**
 * Стили для правильного распределения контента с отступами по бокам
 * 
 * БОКОВЫЕ ПОЛЯ (side margins) - это пространство по бокам от основного контента.
 * Создаются через:
 * - max-width: ограничивает ширину контента
 * - margin: 0 auto - центрирует и создает автоматические боковые отступы
 * - padding: внутренние отступы внутри контейнера
 */

/* Контейнер для контента с ограничением ширины */
.content-container {
    max-width: 1200px;
    margin: 0 auto; /* Центрирует контент и создает боковые поля автоматически */
    padding: 0 2rem; /* Внутренние отступы для контента */
    width: 100%;
}

/* Для широких страниц */
.content-container-wide {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 2rem;
    width: 100%;
}

/* Для узких страниц */
.content-container-narrow {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 2rem;
    width: 100%;
}

/* Обновление стандартного .container */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
    width: 100%;
}

/* Для страниц с .page-container */
.page-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
    width: 100%;
}

/* Для .page-body внутри .content-card - контент должен быть внутри контейнера с отступами */
.page-body > .content-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
    width: 100%;
}

/* Вложенные контейнеры внутри page-body не должны иметь двойные отступы */
.page-body .content-container .content-container {
    max-width: 100%;
    padding: 0;
}

/* Для секций внутри content-container - убираем лишние отступы */
.content-container > section,
.content-container > .pricing-section,
.content-container > .features-section,
.content-container > .services-section {
    width: 100%;
    max-width: 100%;
}

/* Адаптивность */
@media (max-width: 768px) {
    .content-container,
    .content-container-wide,
    .content-container-narrow,
    .container,
    .page-container {
        padding: 0 1rem;
    }
}

/* Для главной страницы */
.hero-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* Для секций на главной */
section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* Убираем лишние отступы у main для страниц с page-wrapper */
main:has(.page-wrapper) {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

/* Для страниц с page-wrapper - убираем стандартные отступы */
.page-wrapper {
    margin-top: 0;
}

/* Для страниц без page-wrapper - оставляем стандартные отступы */
main:not(:has(.page-wrapper)) {
    padding: 2rem 0;
}


/* ── Правовые документы: заголовок по центру ── */
.legal-doc-header {
    text-align: center;
    padding: 2.5rem 0 2rem;
    border-bottom: 1px solid var(--border-color, rgba(255,255,255,0.1));
    margin-bottom: 2rem;
}

.legal-doc-header h1 {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 0.5rem;
}

.legal-doc-meta {
    font-size: 0.85rem;
    color: var(--text-muted);
    margin: 0;
}

.legal-doc h3 {
    margin-top: 1.8rem;
    margin-bottom: 0.6rem;
    font-size: 1.05rem;
    font-weight: 600;
}

.legal-doc p,
.legal-doc ul,
.legal-doc ol {
    margin-bottom: 0.75rem;
    line-height: 1.7;
    font-size: 0.93rem;
    color: var(--text-secondary, inherit);
}

.legal-doc ul,
.legal-doc ol {
    padding-left: 1.4rem;
}

.legal-doc hr {
    margin: 1.5rem 0;
    border-color: var(--border-color, rgba(255,255,255,0.1));
}
