/* Legal/utility content pages (Privacy Policy, Terms of Use). Scoped via .legal-*. */
.legal-wrap { width: min(100% - 2.5rem, 780px); margin-inline: auto; }
.legal-hero { padding: clamp(4rem, 8vw, 6.5rem) 0 clamp(2rem, 4vw, 3rem); background: var(--soft); }
.legal-hero h1 { margin: 1.1rem 0 .9rem; max-width none; }
.legal-updated { margin: 0; color: var(--muted-soft); font-size: .85rem; }
.legal-body { padding: clamp(2.5rem, 5vw, 4rem) 0 clamp(5rem, 8vw, 7rem); background: var(--paper); }
.legal-article { display: grid; gap: clamp(2.2rem, 4vw, 3rem); }
.legal-article > .legal-intro { color: var(--ink); font-size: 1.08rem; line-height: 1.7; }
.legal-article section { padding-top: clamp(1.8rem, 3vw, 2.4rem); border-top: 1px solid var(--line); }
.legal-article section:first-of-type { border-top: 0; padding-top: 0; }
.legal-article h2 { max-width: none; margin: 0 0 .8rem; font-size: 1.35rem; letter-spacing: -.02em !important; }
.legal-article p { margin: 0 0 .9rem; max-width: 68ch; line-height: 1.75; }
.legal-article p:last-child { margin-bottom: 0; }
.legal-article ul { display: grid; gap: .55rem; margin: 0 0 .9rem; padding-left: 1.3rem; max-width: 68ch; color: var(--muted); line-height: 1.6; }
.legal-article a { color: var(--purple); text-decoration: underline; text-underline-offset: 2px; }
.legal-contact-email { display: inline-flex; margin-top: .3rem; font-weight: 650; }
