.legal-page { background: #f4f1e9; color: #142c2b; font-family: ui-sans-serif, system-ui, sans-serif; line-height: 1.7; }
.legal-header, .legal-footer { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 1.2rem max(1rem, calc((100vw - 900px) / 2)); border-bottom: 1px solid rgba(20,44,43,.18); }
.legal-header a, .legal-footer a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 750; }
.legal-main { width: min(100% - 2rem, 900px); margin: 0 auto; padding-block: clamp(4rem, 9vw, 8rem); }
.legal-status { display: inline-flex; padding: .45rem .7rem; border-radius: 999px; background: #ead8bd; color: #6c2d22; font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.legal-main h1 { max-width: 13ch; margin: 1.5rem 0; font-size: clamp(2.8rem, 7vw, 5.5rem); line-height: .95; letter-spacing: -.055em; }
.legal-lead { max-width: 720px; font-size: 1.25rem; }
.legal-main aside { margin: 3rem 0; padding: 1.5rem; border-left: 5px solid #a53b2c; background: #fff; }
.legal-main aside p { margin-bottom: 0; }
.legal-main h2 { margin: 3rem 0 1rem; font-size: 1.8rem; }
.legal-updated { margin-top: 4rem; color: #61706e; font-size: .8rem; }
.legal-footer { flex-wrap: wrap; border-top: 1px solid rgba(20,44,43,.18); border-bottom: 0; }
.questionnaire-page section { margin-block: 3rem; }
.questionnaire-page li { margin-block: .5rem; }
.legal-button { display: inline-flex; align-items: center; min-height: 50px; margin-top: 1rem; padding: .7rem 1.1rem; border-radius: 999px; background: #176b5b; color: #fff; font-weight: 850; text-decoration: none; }
@media (max-width: 600px) { .legal-header { align-items: flex-start; flex-direction: column-reverse; gap: .3rem; } }
