/* Legal tables and a readable retained/printed copy. */
.prose { min-width: 0; overflow-wrap: anywhere; }
/* A text-only callout has no icon: span both columns of the base grid. */
.prose .callout > p:only-child { grid-column: 1 / -1; min-width: 0; }
.prose caption { text-align: left; padding: .8rem 0; color: var(--text-2); font-weight: 600; }
.prose td, .prose th { vertical-align: top; }
.prose th:first-child { min-width: 5.5rem; white-space: nowrap; }
.toc { max-height: calc(100vh - 8rem); overflow-y: auto; }
.prose .table-scroll { max-width: 100%; }
.prose h3[id] { scroll-margin-top: 7rem; }
@media print {
  .phero__art, .toc, .to-top, .footer, .beam, .art-halo { display: none !important; }
  .phero, .section { padding: 1rem 0 !important; }
  .phero__grid, .legal { display: block !important; }
  .container, .prose { max-width: none !important; width: 100% !important; }
  [data-reveal], [data-split] { opacity: 1 !important; transform: none !important; }
  .prose p, .prose td, .prose th, .prose strong, .prose a, .prose caption, .lede, .mono { color: #111 !important; }
  .callout, .prose table { background: white !important; border-color: #999 !important; }
  .prose table { min-width: 0 !important; }
  .prose h2, .prose h3 { break-after: avoid; }
  .prose tr { break-inside: avoid; }
}
@media (max-width: 980px) { .toc { max-height: none; } }
