/* Стили служебных страниц: политика, согласие, 404 */
.doc { padding: calc(var(--header-h, 76px) + 40px) 0 90px; }
.doc__wrap { max-width: 820px; margin: 0 auto; padding: 0 24px; }
.doc__back { display: inline-flex; gap: 8px; font-family: var(--font-mono); font-size: 12px; letter-spacing: .12em; color: var(--accent); margin-bottom: 28px; }
.doc__back:hover { color: var(--accent-bright); }
.doc h1 { font-family: var(--font-display); font-weight: 800; font-size: clamp(28px, 5vw, 44px); line-height: 1.1; letter-spacing: -.02em; color: var(--text); margin-bottom: 12px; overflow-wrap: break-word; }
.doc__meta { font-family: var(--font-mono); font-size: 12px; color: var(--text-dim); letter-spacing: .06em; margin-bottom: 36px; }
.doc h2 { font-family: var(--font-display); font-weight: 800; font-size: 20px; color: var(--text); margin: 36px 0 12px; }
.doc p, .doc li { color: var(--text-muted); font-size: 15.5px; line-height: 1.7; }
.doc p + p { margin-top: 10px; }
.doc ul { list-style: none; display: grid; gap: 6px; margin: 10px 0; }
.doc ul li { position: relative; padding-left: 20px; }
.doc ul li::before { content: ""; position: absolute; left: 2px; top: .8em; width: 8px; height: 1px; background: var(--accent); }
.doc a { color: var(--accent-bright); border-bottom: 1px dotted var(--accent); }
.doc b { color: var(--text); font-weight: 600; }
.doc__box { margin-top: 18px; padding: 20px 22px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--panel); }
.doc-top { position: fixed; top: 0; left: 0; right: 0; z-index: 10; background: rgba(7,8,10,.92); backdrop-filter: blur(10px); border-bottom: 1px solid var(--line); }
.doc-top .container { display: flex; align-items: center; justify-content: space-between; height: 64px; gap: 16px; }
.doc-top__phone { font-family: var(--font-display); font-weight: 800; font-size: 15px; color: var(--text); white-space: nowrap; }
@media (max-width: 420px) { .doc-top__phone { font-size: 13px; } .doc-top .header__word small { display: none; } }
.nf { min-height: 100vh; display: grid; place-items: center; text-align: center; padding: 100px 24px 60px; }
.nf__code { font-family: var(--font-mono); font-size: 13px; letter-spacing: .3em; color: var(--accent); margin-bottom: 18px; }
.nf h1 { font-family: var(--font-display); font-weight: 800; font-size: clamp(32px, 7vw, 60px); line-height: 1.05; color: var(--text); margin-bottom: 18px; }
.nf p { color: var(--text-muted); max-width: 460px; margin: 0 auto 30px; }
.nf .btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
