/*
 * Podstránky (404, zásady ochrany osobních údajů): jedna karta na tmavém pozadí
 * pod stejnou navigací jako úvodní stránka, dole jen tenká patička.
 * Jazyk přepíná js/subpage.js — bloky [data-lang-block] se ukazují podle volby.
 */
.sub { min-height: 100vh; display: flex; flex-direction: column; padding-top: 96px; }
.sub__card {
    border-radius: var(--radius-xl); background: var(--surface); border: 1px solid var(--ink-06);
    padding: clamp(28px, 5vw, 64px);
}
.sub h1 { margin: 0 0 20px; font-weight: 500; font-size: clamp(36px, 5vw, 72px); letter-spacing: -.04em; line-height: 1; text-wrap: balance; }
.sub__lead { margin: 0 0 32px; font-size: clamp(17px, 1.5vw, 21px); line-height: 1.45; color: var(--ink-78); max-width: 48ch; text-wrap: pretty; }
.sub__actions { display: flex; gap: 10px; flex-wrap: wrap; }
.sub__actions .btn-outline { align-self: auto; padding: 11px 18px; font-size: 14px; }

/* 404: jediný velký akcent stránky je samotné číslo */
.sub__card--404 { flex: 1; display: flex; flex-direction: column; justify-content: flex-end; min-height: min(72vh, 720px); }
.notfound__code { display: block; margin-bottom: 8px; font-size: clamp(110px, 22vw, 260px); font-weight: 600; letter-spacing: -.06em; line-height: .85; color: var(--accent); }

/* Právní text: úzký sloupec, klidná typografie */
.legal { max-width: 72ch; }
.legal__meta { display: block; margin-bottom: 40px; font-size: 13px; color: var(--ink-50); }
.legal h2 { margin: 40px 0 12px; font-size: clamp(21px, 2vw, 27px); font-weight: 500; letter-spacing: -.025em; line-height: 1.2; }
.legal p, .legal li { margin: 0 0 12px; font-size: 16px; line-height: 1.65; color: var(--ink-78); }
.legal ul { margin: 0 0 12px; padding-left: 20px; }
.legal a { color: var(--accent); }
.legal a:hover { text-decoration: underline; text-underline-offset: 2px; }
.legal strong { color: var(--text); font-weight: 500; }

.sub__footer {
    display: flex; justify-content: space-between; align-items: center; gap: 16px 28px; flex-wrap: wrap;
    margin: 32px 8px 12px; font-size: 12px; color: rgba(241, 239, 232, .42);
}
.sub__footer a { color: rgba(241, 239, 232, .42); }
.sub__footer a:hover { color: var(--accent); }
.sub__footer-links { display: flex; gap: 20px; }

@media (max-width: 760px) {
    .sub { padding-top: 80px; }
    .sub__card--404 { min-height: 0; }
    .sub__footer { flex-direction: column; align-items: flex-start; }
}
