/* Оформление правовых страниц: политики, согласия и оферты.
   Намеренно сдержаннее лендинга — эти страницы читают, а не рассматривают. */

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

:root {
    --gold: #d4a574;
    --cream: #f5ebe0;
    --muted: rgba(245, 235, 224, 0.76);
    --faint: rgba(245, 235, 224, 0.55);
    --dark: #0f0f1e;
    --indigo: #1a1a3e;
    --line: rgba(212, 165, 116, 0.22);
}

body {
    font-family: 'Times New Roman', Times, 'Liberation Serif', 'DejaVu Serif', serif;
    background: linear-gradient(135deg, var(--dark) 0%, var(--indigo) 100%);
    background-attachment: fixed;
    color: var(--cream);
    line-height: 1.72;
    font-size: 17px;
}

.doc {
    max-width: 820px;
    margin: 0 auto;
    padding: 48px 22px 96px;
}

.back {
    display: inline-block;
    margin-bottom: 34px;
    color: var(--gold);
    text-decoration: none;
    font-size: 0.95rem;
}
.back:hover { text-decoration: underline; }

h1 {
    font-size: clamp(1.65rem, 4vw, 2.3rem);
    color: var(--gold);
    line-height: 1.25;
    margin-bottom: 10px;
    text-wrap: balance;
}

.meta {
    color: var(--faint);
    font-size: 0.92rem;
    padding-bottom: 26px;
    margin-bottom: 34px;
    border-bottom: 1px solid var(--line);
}

h2 {
    font-size: 1.28rem;
    color: var(--gold);
    margin: 38px 0 12px;
    line-height: 1.35;
}

h3 {
    font-size: 1.08rem;
    color: var(--cream);
    margin: 24px 0 8px;
}

p, li { color: var(--muted); }
p { margin-bottom: 12px; }

ul, ol { margin: 0 0 14px 24px; }
li { margin-bottom: 7px; }

a { color: var(--gold); }

strong { color: var(--cream); }

table {
    width: 100%;
    border-collapse: collapse;
    margin: 16px 0 22px;
    font-size: 0.94rem;
}
th, td {
    border: 1px solid var(--line);
    padding: 10px 13px;
    text-align: left;
    vertical-align: top;
}
th { color: var(--gold); font-weight: normal; background: rgba(212, 165, 116, 0.07); }
td { color: var(--muted); }

.table-wrap { overflow-x: auto; }

.callout {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid var(--line);
    border-left: 4px solid var(--gold);
    border-radius: 12px;
    padding: 20px 24px;
    margin: 22px 0;
}
.callout p:last-child { margin-bottom: 0; }

/* Заглушки реквизитов — заметны, чтобы не уехать в прод незаполненными */
.todo {
    color: #f0b96b;
    border-bottom: 1px dashed #f0b96b;
    font-style: italic;
}

:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 3px;
    border-radius: 4px;
}

@media (max-width: 620px) {
    body { font-size: 16px; }
    .doc { padding: 32px 18px 72px; }
    ul, ol { margin-left: 18px; }
}
