/* ==========================================================================
   legal.css — long-form document pages (Terms, Privacy).
   Loaded only on those pages (via $pageStyles in header.php). Everything is
   scoped under .legal-doc so it can't leak into the rest of the site, and it
   reuses the site's palette/fonts from site.css.
   ========================================================================== */

.legal-doc { max-width: 820px; margin: 0 auto; padding: 56px 24px 96px; color: var(--body); line-height: 1.7; }

.legal-doc .doc { border-bottom: 2px solid var(--line-2); padding-bottom: 24px; margin-bottom: 32px; }
.legal-doc h1 { font-size: 40px; line-height: 1.1; margin: 0 0 10px; color: var(--ink); letter-spacing: -.5px; }
.legal-doc .meta { color: var(--muted); font-size: 15px; }

.legal-doc h2 { font-size: 23px; margin: 42px 0 12px; padding-top: 6px; color: var(--ink); }
.legal-doc h3 { font-size: 17px; margin: 26px 0 8px; color: var(--ink); }
.legal-doc p, .legal-doc li { font-size: 16px; color: var(--body); }
.legal-doc p { margin: 0 0 14px; }
.legal-doc li { margin-bottom: 6px; }
.legal-doc a { color: var(--indigo); }
.legal-doc a:hover { color: var(--indigo-dark); }
.legal-doc strong { color: var(--ink); }

/* Table of contents */
.legal-doc .toc { background: var(--lavender); border: 1px solid var(--line-2); border-radius: 14px; padding: 22px 28px; margin: 24px 0 12px; }
.legal-doc .toc h2 { margin: 0 0 12px; padding-top: 0; font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.legal-doc .toc ol { margin: 0; padding-left: 20px; columns: 2; column-gap: 40px; font-size: 14.5px; }
.legal-doc .toc li { margin-bottom: 6px; }
.legal-doc .toc a { text-decoration: none; }
.legal-doc .toc a:hover { text-decoration: underline; }

/* "In plain English" callouts */
.legal-doc .summary { background: var(--lavender); border-left: 4px solid var(--indigo); border-radius: 0 10px 10px 0; padding: 12px 18px; margin: 0 0 18px; font-size: 15px; color: var(--slate); }
.legal-doc .summary strong { text-transform: uppercase; font-size: 12px; letter-spacing: .06em; color: var(--indigo); }

/* CCPA data table */
.legal-doc .table-scroll { overflow-x: auto; margin: 12px 0 22px; }
.legal-doc table { border-collapse: collapse; width: 100%; font-size: 14.5px; }
.legal-doc th, .legal-doc td { border: 1px solid var(--line-2); padding: 9px 13px; text-align: left; vertical-align: top; }
.legal-doc th { background: var(--lavender); color: var(--ink); }

/* Emphasis blocks */
.legal-doc .allcaps { text-transform: uppercase; font-size: 15px; }
.legal-doc .ph { background: #FFF3BF; padding: 0 4px; border-radius: 3px; font-weight: 600; }

@media (max-width: 640px) {
  .legal-doc { padding: 40px 20px 72px; }
  .legal-doc .toc ol { columns: 1; }
  .legal-doc h1 { font-size: 30px; }
  .legal-doc h2 { font-size: 21px; }
}
