/* Phase 7A - legal / policy editorial pages */
.legal-hero { padding: clamp(4.75rem, 8vw, 7.5rem) 0 clamp(3rem, 5vw, 4.5rem); border-bottom: 1px solid var(--color-line); }
.legal-hero__grid { align-items: end; }
.legal-hero__label { grid-column: 1 / span 3; align-self: start; }
.legal-hero__content { grid-column: 5 / -1; max-width: 58rem; }
.legal-hero__title { font-family: var(--font-serif); font-size: var(--type-display-2); font-weight: 400; line-height: var(--leading-display); letter-spacing: var(--tracking-display); }
.legal-hero__lead { max-width: 46rem; margin-top: var(--space-5); color: var(--color-text-secondary); font-size: var(--font-size-lg); line-height: 1.5; }
.legal-hero__updated { margin-top: var(--space-5); }
.legal-body { padding: clamp(3.75rem, 6vw, 6rem) 0 var(--section-space); }
.legal-body__grid { align-items: start; }
.legal-body__index { grid-column: 1 / span 3; position: sticky; top: calc(var(--header-height) + 2rem); }
.legal-body__index-title { margin-bottom: var(--space-4); }
.legal-body__index a { display: block; width: fit-content; padding: .25rem 0; color: var(--color-text-secondary); font-size: var(--font-size-sm); text-decoration: none; }
.legal-body__index a:hover, .legal-body__index a:focus-visible { color: var(--color-ink); }
.legal-copy { grid-column: 5 / span 7; max-width: var(--reading-max); }
.legal-copy section { padding: 0 0 var(--space-7); margin: 0 0 var(--space-7); border-bottom: 1px solid var(--color-line); }
.legal-copy section:last-child { margin-bottom: 0; border-bottom: 0; }
.legal-copy h2 { margin-bottom: var(--space-4); font-family: var(--font-serif); font-size: var(--type-h3); font-weight: 400; line-height: 1; letter-spacing: var(--tracking-heading); }
.legal-copy h3 { margin: var(--space-5) 0 var(--space-2); font-size: var(--font-size-sm); font-weight: 600; letter-spacing: .02em; text-transform: uppercase; }
.legal-copy p, .legal-copy li { font-size: var(--font-size-md); line-height: 1.65; }
.legal-copy p + p { margin-top: var(--space-4); }
.legal-copy ul { margin-top: var(--space-4); padding-left: 1.2rem; }
.legal-copy li + li { margin-top: .55rem; }
.legal-copy a { text-decoration-thickness: 1px; text-underline-offset: .18em; }
.legal-callout { padding: var(--space-5); border: 1px solid var(--color-line-strong); background: rgba(255,255,255,.28); }
.legal-table { width: 100%; border-collapse: collapse; margin-top: var(--space-5); }
.legal-table th, .legal-table td { padding: .85rem .65rem .85rem 0; border-bottom: 1px solid var(--color-line); text-align: left; vertical-align: top; font-size: var(--font-size-sm); line-height: 1.5; }
.legal-table th { font-weight: 600; }
@media (max-width: 56.1875rem) {
  .legal-hero__label, .legal-hero__content, .legal-body__index, .legal-copy { grid-column: 1 / -1; }
  .legal-hero__content { margin-top: var(--space-7); }
  .legal-body__index { position: static; margin-bottom: var(--space-8); padding-bottom: var(--space-5); border-bottom: 1px solid var(--color-line); }
  .legal-body__index nav { display: flex; flex-wrap: wrap; gap: .35rem 1.25rem; }
}
@media (max-width: 37.4375rem) {
  .legal-hero { padding-top: 3.25rem; }
  .legal-hero__content { margin-top: var(--space-5); }
  .legal-hero__lead { font-size: var(--font-size-md); }
  .legal-copy section { padding-bottom: var(--space-6); margin-bottom: var(--space-6); }
  .legal-table { display: block; overflow-x: auto; }
}
