.legal-page { max-width: 850px; padding-top: clamp(2rem, 6vw, 5rem); padding-bottom: 4rem; }
.legal-page h1 { font-family: var(--font-display); font-size: clamp(2rem, 5vw, 3.3rem); line-height: 1.15; color: var(--color-brand-ink); margin: .5rem 0 1.5rem; }
.legal-page h2 { font-family: var(--font-display); font-size: clamp(1.6rem, 3vw, 2rem); line-height: 1.25; color: var(--color-brand-ink); }
.legal-page h3 { font-size: 1.12rem; margin-top: 1.8rem; }
.legal-page p { line-height: 1.7; overflow-wrap: anywhere; }
.legal-eyebrow { color: var(--color-text-muted); font-size: .95rem; }
.legal-block { border-top: 1px solid var(--color-border); margin-top: 2.8rem; padding-top: 1.8rem; scroll-margin-top: 6rem; }
.legal-actions, .legal-toc { display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; align-items: center; margin: 1.5rem 0; }
.legal-toc { padding: 1.3rem 0; border-block: 1px solid var(--color-border); }
.legal-note { background: var(--color-surface-soft); padding: 1rem 1.4rem; border-left: 3px solid var(--color-brand); }
.withdrawal-form { margin-top: 2rem; }
.withdrawal-form label { display: block; margin: 1.3rem 0 .4rem; font-weight: 600; }
.withdrawal-form input, .withdrawal-form textarea { display: block; width: 100%; min-width: 0; border: 1px solid var(--color-control-border); border-radius: .4rem; background: var(--color-surface); color: var(--color-text); padding: .85rem; font: inherit; }
.withdrawal-form textarea { min-height: 7rem; resize: vertical; }
.withdrawal-form small { display: block; margin: .4rem 0; color: var(--color-text-muted); line-height: 1.5; }
.legal-review { white-space: pre-wrap; overflow-wrap: anywhere; padding: 1.4rem; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: .4rem; font: inherit; line-height: 1.65; }
.legal-page [hidden] { display: none !important; }
.legal-status { line-height: 1.6; }
.legal-status:empty { display: none; }
.legal-page :focus-visible { outline: 3px solid var(--color-focus); outline-offset: 4px; }
@media print { site-header, site-footer, .legal-actions, .legal-toc, button, .withdrawal-form { display: none; } .legal-page { max-width: none; padding: 0; } .legal-block { break-inside: avoid; } }
