/* Terms of Service and Privacy Policy: a quiet, readable column under the
   shared public header. No scripts, nothing that moves. */
:root { --legal-ink: #14233f; --legal-muted: #56627a; --legal-line: #dfe4ee; --legal-link: #1f4fb0; }
* { box-sizing: border-box; }
body.legal-page { margin: 0; background: #f6f7fb; color: var(--legal-ink); font: 16px/1.65 Inter, system-ui, sans-serif; }
.legal-shell { max-width: 760px; margin: 0 auto; padding: 28px 20px 56px; }
.legal-back { margin: 0 0 18px; font-size: 14px; }
.legal-shell a { color: var(--legal-link); text-underline-offset: 2px; }
.legal-shell h1 { margin: 0 0 6px; font: 700 clamp(28px, 4vw, 38px)/1.2 Georgia, 'Times New Roman', serif; }
.legal-date { margin: 0 0 28px; color: var(--legal-muted); font-size: 14px; }
.legal-shell h2 { margin: 34px 0 10px; padding-top: 18px; border-top: 1px solid var(--legal-line); font: 700 21px/1.3 Georgia, 'Times New Roman', serif; }
.legal-shell h3 { margin: 20px 0 6px; font-size: 16px; }
.legal-shell p, .legal-shell li { max-width: 68ch; }
.legal-shell ul { padding-left: 22px; }
.legal-shell li { margin: 4px 0; }
.legal-note { padding: 14px 16px; border-left: 3px solid #c9a227; background: #fffaf0; border-radius: 4px; }
.legal-contact { padding: 16px 18px; background: #fff; border: 1px solid var(--legal-line); border-radius: 8px; }
.legal-foot { padding: 22px 20px 34px; text-align: center; color: var(--legal-muted); font-size: 13px; border-top: 1px solid var(--legal-line); }
.legal-foot p { margin: 0 0 6px; }
/* The links every public page carries in its footer. */
.legal-links { font-size: 12px; letter-spacing: 0; text-transform: none; }
.legal-links a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
@media (max-width: 560px) { .legal-shell { padding: 18px 16px 44px; } .legal-shell h2 { font-size: 19px; } }
