.legal-page main { padding-top: var(--header-h); background: var(--bg); animation: legal-page-in .38s ease-out both; }
.legal-intro { padding-block: clamp(48px, 7vw, 96px) clamp(42px, 5vw, 68px); background: var(--bg-deep); }
.legal-intro .wrap, .legal-content .wrap { max-width: 1080px; }
.legal-intro .wrap > * { opacity: 0; transform: translateY(12px); animation: legal-rise-in .65s var(--ease) forwards; }
.legal-intro .wrap > :nth-child(1) { animation-delay: .08s; }
.legal-intro .wrap > :nth-child(2) { animation-delay: .15s; }
.legal-intro .wrap > :nth-child(3) { animation-delay: .22s; }
.legal-intro .wrap > :nth-child(4) { animation-delay: .29s; }
.legal-intro__eyebrow { margin-bottom: 18px; color: var(--orange); }
.legal-intro h1 { max-width: 17ch; font: 400 clamp(3.2rem, 6vw, 5.6rem)/.98 "Instrument Serif", Georgia, serif; text-wrap: balance; }
.legal-intro__lede { max-width: 66ch; margin-top: 24px; color: var(--ink-80); font-size: clamp(1rem, 1.5vw, 1.18rem); line-height: 1.65; }
.legal-intro__meta { margin-top: 32px; padding-top: 16px; border-top: 1px solid var(--rule); color: var(--ink-60); font: 400 .72rem/1.5 var(--f-mono); }
.legal-content { padding-block: clamp(48px, 7vw, 90px); }
.legal-content__section { display: grid; gap: 15px; padding-block: clamp(26px, 3.5vw, 40px); border-top: 1px solid var(--rule); }
.legal-content__section:first-child { padding-top: 0; border-top: 0; }
.legal-content h2 { font: 400 clamp(1.8rem, 2.7vw, 2.5rem)/1.05 "Instrument Serif", Georgia, serif; }
.legal-content p, .legal-content li { max-width: 72ch; color: var(--ink-80); font-size: .98rem; line-height: 1.7; }
.legal-content ul { max-width: 72ch; padding-left: 1.3em; display: grid; gap: 9px; list-style: disc; }
.legal-content a { color: var(--ink); font-weight: 600; text-decoration: underline; text-decoration-color: var(--orange); text-underline-offset: 4px; }
.legal-content a:hover { color: var(--orange); }
.legal-content a:focus-visible { outline: 2px solid var(--orange); outline-offset: 3px; }
.legal-content__contact { margin-top: clamp(26px, 4vw, 48px); padding-top: 24px; border-top: 1px solid var(--rule); }
.legal-content__contact p { margin-top: 9px; }
@keyframes legal-page-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes legal-rise-in { to { opacity: 1; transform: none; } }
@media (min-width: 780px) {
  .legal-content__section { grid-template-columns: minmax(190px, .55fr) minmax(0, 1.45fr); column-gap: clamp(28px, 5vw, 70px); }
  .legal-content__section > :not(h2) { grid-column: 2; }
  .legal-content__section h2 { grid-column: 1; grid-row: 1; }
}
