/* ParkingTask privacy policy and terms. Loaded after landing.css (header, footer, fonts, tokens live there).
   No inline styles are allowed by the page CSP, so everything lives in the two stylesheets. */

.legal { padding-block: 2.5rem 4rem; }
.legal__doc { max-width: 46rem; }

.legal h1 {
    font-size: clamp(2rem, 8vw, 3.25rem); text-transform: uppercase; line-height: 1; letter-spacing: -0.02em;
    overflow-wrap: anywhere;
}
.legal__updated { margin-top: 0.9rem; color: var(--gray-text); font-size: 0.95rem; }

.legal h2 {
    max-width: none; margin-top: 2.75rem; padding-top: 1.25rem; border-top: 3px solid var(--black);
    font-size: clamp(1.25rem, 4.5vw, 1.6rem); line-height: 1.15; text-transform: none; letter-spacing: 0;
}
.legal h3 { margin-top: 1.5rem; font-size: 1.05rem; }

.legal p, .legal ul, .legal ol { margin-top: 1rem; }
.legal .legal__lead { font-size: 1.15rem; color: var(--gray-text); }

.legal ul, .legal ol { padding-left: 1.4rem; }
.legal ul { list-style: square; }
.legal ol { list-style: decimal; }
.legal li { margin-top: 0.5rem; padding-left: 0.2rem; }
.legal li::marker { color: var(--red); }

.legal a { color: var(--red-dark); text-underline-offset: 0.18em; text-decoration-thickness: 2px; overflow-wrap: anywhere; }
.legal a:hover { color: var(--black); }
.legal a:focus-visible { outline-color: var(--black); }

.legal strong { font-weight: 700; }

.legal__note {
    margin-top: 1.5rem; padding: 1rem 1.15rem; background: var(--concrete); border-left: 6px solid var(--red);
    font-size: 1rem;
}

@media (min-width: 720px) {
    .legal { padding-block: 4rem 6rem; }
}

@media (forced-colors: active) {
    .legal h2 { border-top-color: CanvasText; }
    .legal__note { border: 2px solid CanvasText; }
}
