/* ==========================================================================
   Legal pages — privacy, terms.

   The system in site.css was built for marketing sections: short blocks of
   copy, one heading each. Long-form legal prose needs two things it does not
   have — list styling, and a heading rhythm that survives fifteen headings in
   a row. Everything else here reuses site.css. Load AFTER site.css.
   ========================================================================== */

.legal-hero { border-bottom: 1px solid var(--border); }
.legal-hero .shell { padding-bottom: 40px; }
.legal-hero__title { margin: 12px 0; }

/* Section rhythm. .h-card carries 16px of top margin, which reads fine under
   a paragraph but collapses one clause into the next when every block is a
   heading, so the wrapper owns the separation and the heading is reset. */
.legal__section + .legal__section { padding-top: 40px; }
.legal .h-card { margin: 0 0 16px; }
.legal h3 { font-size: 18px; margin: 24px 0 10px; }
.legal .body:last-child { margin-bottom: 0; }

.legal__list {
  margin: 0 0 16px;
  padding-left: 22px;
  color: var(--text-soft);
  font-size: 16px;
  line-height: 1.7;
}
.legal__list li { margin-bottom: 8px; }
.legal__list li::marker { color: var(--accent-cool); }

/* Label-and-explanation rows, so the reader can scan what we collect without
   reading every line of it. */
.legal__defs { margin: 0 0 16px; }
.legal__defs dt { font-weight: 700; margin-top: 16px; }
.legal__defs dd {
  margin: 4px 0 0;
  color: var(--text-soft);
  font-size: 16px;
  line-height: 1.7;
}

/* For the one or two paragraphs on each page that people actually need to
   read — the "do not send us client records" warning above all. */
.legal__callout {
  border: 1px solid var(--accent-cool);
  border-radius: var(--radius-card);
  padding: 24px 28px;
  margin: 24px 0;
}
.legal__callout p:last-child { margin-bottom: 0; }

@media (max-width: 720px) {
  .legal__callout { padding: 20px; }
  .legal__section + .legal__section { padding-top: 32px; }
}
