/* Long-form legal pages (generated by scripts/build-legal.mjs). Reuses the brand palette from style.css. */

.legal { padding: 48px max(20px, calc((100vw - var(--maxw)) / 2)) 80px; }

.prose { max-width: 46rem; margin: 0 auto; }

.prose h1 {
  font-family: var(--display);
  font-weight: 400;
  font-size: clamp(2rem, 4.5vw, 3.2rem);
  line-height: 1.1;
  margin-bottom: 32px;
  text-wrap: balance;
}
.prose h2 { font-size: 1.5rem; margin: 44px 0 16px; }
.prose h3 { font-size: 1.15rem; margin: 30px 0 12px; }
.prose h2, .prose h3 { font-weight: 900; line-height: 1.25; max-width: none; text-wrap: balance; }

.prose p { margin: 0 0 16px; }
.prose ul, .prose ol { margin: 0 0 20px; padding-left: 1.4em; }
.prose li { margin: 6px 0; }
.prose li > ul, .prose li > ol { margin-top: 6px; }

.prose a { color: var(--ink); text-decoration-thickness: 2px; text-decoration-color: var(--orange); text-underline-offset: 3px; }
.prose a:hover { color: var(--orange); }

.prose code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.9em; background: color-mix(in srgb, var(--mustard) 30%, transparent); padding: 1px 5px; border-radius: 4px; }

.prose hr { border: 0; border-top: 2px dashed var(--ink); margin: 40px 0; }

.prose .table-wrap { overflow-x: auto; margin: 20px 0 24px; }
.prose table { border-collapse: collapse; width: 100%; font-size: 0.95rem; }
.prose th, .prose td { border: 2px solid var(--ink); padding: 10px 12px; text-align: left; vertical-align: top; }
.prose th { background: var(--mint); font-weight: 700; }
.prose tr:nth-child(even) td { background: color-mix(in srgb, var(--paper) 55%, var(--mint)); }

.site-footer { border-top: 2px solid var(--ink); padding: 28px max(20px, calc((100vw - var(--maxw)) / 2)) 44px; background: var(--paper); }
.site-footer .legal-links { display: flex; flex-wrap: wrap; gap: 18px; margin-bottom: 14px; }
.site-footer .legal-links a { text-decoration: none; font-weight: 500; }
.site-footer .legal-links a:hover { text-decoration: underline; text-decoration-thickness: 3px; text-decoration-color: var(--orange); text-underline-offset: 4px; }
.site-footer p { margin: 0; font-size: 0.9rem; color: var(--ink-soft); }

@media print {
  .top, .site-footer { display: none; }
  .legal { padding: 0; }
  .prose a { text-decoration: none; }
}
