/* Readable policy pages, consistent with the ministry's ink and gold palette. */
.page-legal { background: var(--ink); color: var(--text-inv); }
.legal-head { padding-top: calc(var(--header-h) + var(--micah-support-height, 0px) + clamp(3rem, 2rem + 2vw, 5rem)); padding-bottom: clamp(2rem, 1.5rem + 2vw, 3.5rem); }
.legal-head h1 { margin-top: 1.25rem; max-width: 18ch; font-size: clamp(2.6rem, 1.5rem + 4.8vw, 5.7rem); line-height: 1.06; letter-spacing: -.025em; }
.legal-date { margin-top: 1.25rem; color: var(--gold-soft); font-size: .9rem; }
.legal-intro { margin-top: .9rem; max-width: 40rem; font-size: var(--step-1); line-height: 1.55; color: var(--text-inv); }
.legal-content { max-width: 52rem; padding-bottom: clamp(4rem, 3rem + 3vw, 7rem); line-height: 1.75; }
.legal-nav { display: flex; flex-wrap: wrap; gap: .65rem 1.5rem; padding-block: 1rem 1.4rem; margin-bottom: 2.5rem; border-block: 1px solid var(--line-inv); }
.legal-content a { color: var(--gold-soft); text-decoration: underline; text-underline-offset: .2em; overflow-wrap: anywhere; }
.legal-content a:hover { color: var(--text-inv); }
.legal-content section + section { margin-top: 2.5rem; }
.legal-content section { scroll-margin-top: calc(var(--header-h) + var(--micah-support-height, 0px) + 1.5rem); }
.legal-content h2 { margin-bottom: .9rem; font-size: clamp(1.5rem, 1.25rem + .8vw, 2rem); line-height: 1.25; text-wrap: balance; }
.legal-content p + p, .legal-content ul + p, .legal-content p + ul { margin-top: 1rem; }
.legal-content ul { padding-left: 1.35rem; }
.legal-content li + li { margin-top: .65rem; }
.legal-content strong { color: var(--text-inv); font-weight: 600; }
@media print { .legal-head { padding-top: 0; } .page-legal { background: white; color: black; } .legal-content a, .legal-date, .legal-intro, .legal-content strong { color: black; } .legal-content { max-width: none; } }
