.legal-links { display: flex; justify-content: center; margin-block: .75rem; font-size: .8rem; }
.legal-links a { display: inline-flex; align-items: center; min-height: 2.2rem; }
.legal-links a, .legal-note a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.legal-note { font-size: .8rem; line-height: 1.6; margin-block: 1rem; }
.legal-links a:focus-visible, .legal-note a:focus-visible, .legal-page a:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; border-radius: 2px; }

.legal-page .site { background: var(--header-bg); backdrop-filter: none; }
.legal-page .legal-document { max-width: 64rem; padding-bottom: 0; }
.legal-intro { text-align: center; margin: 4.5rem auto 5rem; }
.legal-intro p { margin-top: 1rem; color: var(--muted); font-size: var(--fs-base); }
.legal-document > section { display: grid; grid-template-columns: 12rem minmax(0, 1fr); gap: 3rem; margin-top: 0; padding: 3rem 0; border-top: 1px solid var(--gold-line); text-align: left; scroll-margin-top: 5rem; }
.legal-document h2 { font-size: var(--fs-2xl); margin: 0; }
.legal-copy h3 { font-family: var(--font-body); font-size: var(--fs-base); font-weight: 500; line-height: 1.5; color: var(--cream); margin: 2rem 0 .5rem; }
.legal-copy h3:first-child { margin-top: 0; }
.legal-copy p { font-size: var(--fs-md); margin-top: .65rem; }
.legal-copy a, .legal-footer a { color: var(--accent); text-underline-offset: .2em; }
.legal-copy [id] { scroll-margin-top: 5rem; }
.legal-page code { font-size: .9em; }
@media (max-width: 800px) {
    .legal-page .site { flex-wrap: wrap; gap: .25rem 1rem; }
    .legal-page .site nav { display: flex; order: 1; flex: 1 0 100%; justify-content: space-between; gap: .5rem; padding: .5rem 0; }
    .legal-intro { margin: 3rem 0; }
    .legal-document > section { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; padding: 2rem 0; scroll-margin-top: 7rem; }
    .legal-copy [id] { scroll-margin-top: 7rem; }
}
