/* ============================================================
   Legal pages (privacy + terms) — consumes colors_and_type.css
   for tokens and perspective.css for nav / .page / .measure.
   ============================================================ */
.legal-head { margin-bottom: 6px; }
.legal-head h1 { font: 500 clamp(34px,5vw,52px)/1.04 var(--font-serif); letter-spacing: -.02em; color: var(--ink); margin: 0; }
.legal-date { font: 600 12px/1.4 var(--font-sans); letter-spacing: .08em; text-transform: uppercase; color: var(--ink-mute); margin: 16px 0 0; }
.legal-intro { font: 400 19px/1.6 var(--font-sans); color: var(--ink-soft); margin: 22px 0 0; }
.legal-actions { margin: 18px 0 0; }
.legal-actions a { font: 600 14px/1 var(--font-sans); color: var(--green-deep); text-decoration: none; border-bottom: 1px solid var(--stone); padding-bottom: 2px; }
.legal-actions a:hover { border-bottom-color: var(--green-deep); }

.legal-sec { margin-top: 40px; }
.legal-sec h2 { font: 500 clamp(21px,2.3vw,27px)/1.22 var(--font-serif); letter-spacing: -.01em; color: var(--ink); margin: 0 0 14px; }
.legal-sec p { font: 400 16px/1.7 var(--font-sans); color: var(--ink-soft); margin: 0 0 14px; }
.legal-sec ul { margin: 0 0 14px; padding-left: 22px; }
.legal-sec li { font: 400 16px/1.65 var(--font-sans); color: var(--ink-soft); margin: 0 0 8px; }

.legal-pre { white-space: pre-wrap; font: 400 14px/1.7 var(--font-sans); color: var(--ink-soft); margin: 28px 0 0; padding: 26px 28px; background: var(--paper-card); border: 1px solid var(--stone); border-radius: var(--radius-md); }

.legal-foot { max-width: 1020px; margin: 0 auto; padding: 28px 40px 56px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; border-top: 1px solid var(--stone); font: var(--fw-medium) 13px/1.5 var(--font-sans); color: var(--ink-mute); }
.legal-foot a { color: var(--green-deep); text-decoration: none; }
.legal-foot a:hover { text-decoration: underline; }
.legal-foot span[aria-hidden] { opacity: .45; }
.legal-foot .meta { margin-left: auto; color: var(--ink-mute); }
@media (max-width: 760px) { .legal-foot { padding: 24px 22px 48px; } }
