/* Legal pages — extends styles.css */
.legal-main { padding-top: calc(var(--nav-h) + clamp(2.5rem, 6vw, 4.5rem)); padding-bottom: clamp(3rem, 8vw, 6rem); }
.legal-container { max-width: 780px; }
.legal-title { margin-top: .8rem; font-size: clamp(2.2rem, 6vw, 3.2rem); }
.legal-updated { margin-top: .8rem; color: var(--mute-2); font-size: .88rem; }

.legal-body { margin-top: 2.5rem; display: grid; gap: 1.1rem; }
.legal-body h2 {
  font-family: var(--sans); text-transform: none; font-weight: 800;
  font-size: 1.15rem; color: var(--ink); margin-top: 1.6rem;
}
.legal-body h2:first-child { margin-top: 0; }
.legal-body p { color: var(--mute); font-size: .98rem; line-height: 1.75; }
.legal-body strong { color: var(--ink); }
.legal-body a { color: var(--accent); text-decoration: underline; text-underline-offset: 2px; }

.legal-list { display: grid; gap: .5rem; padding-left: 1.2rem; list-style: disc; color: var(--mute); font-size: .98rem; }
.legal-list li::marker { color: var(--accent); }

.legal-note {
  font-size: .86rem; color: var(--mute-2); font-style: italic;
  border-left: 2px solid var(--accent); padding-left: .9rem;
}

.legal-table { width: 100%; border-collapse: collapse; font-size: .92rem; margin-top: .3rem; }
.legal-table th, .legal-table td { text-align: left; padding: .7rem .8rem; border: 1px solid var(--line); color: var(--mute); }
.legal-table th { color: var(--ink); font-weight: 700; background: var(--surface); }
