.legal-body { background: var(--paper); color: var(--ink); }
.legal-header { min-height: 110px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); }
.legal-wordmark { display: inline-flex; flex-direction: column; line-height: .82; }
.legal-wordmark strong { font-size: 1.35rem; letter-spacing: -.07em; }
.legal-wordmark span { margin-top: .35rem; font-size: .53rem; font-weight: 700; letter-spacing: .3em; }
.legal-back { display: inline-flex; align-items: center; gap: 1.3rem; padding-bottom: .4rem; border-bottom: 1px solid currentColor; font-size: .63rem; font-weight: 700; letter-spacing: .13em; }
.legal-back span { transition: transform .3s ease; }
.legal-back:hover span { transform: translate(4px, -4px); }
.legal-main { padding-block: clamp(5rem, 10vw, 10rem); }
.legal-main > h1 { max-width: 1000px; margin: 1.5rem 0 1rem; font-size: clamp(3.4rem, 8vw, 9rem); letter-spacing: -.08em; line-height: .82; }
.legal-updated { margin: 0 0 clamp(4rem, 8vw, 8rem); color: var(--muted); font-size: .68rem; letter-spacing: .1em; }
.legal-article { max-width: 820px; margin-left: auto; }
.legal-lead { margin: 0 0 4rem; font-size: clamp(1.25rem, 2vw, 1.8rem); letter-spacing: -.025em; line-height: 1.4; }
.legal-article h2 { margin: 3.5rem 0 1rem; font-size: 1rem; letter-spacing: -.02em; }
.legal-article p, .legal-article li { color: #56554f; font-size: 1rem; line-height: 1.75; }
.legal-article ul { margin: 0; padding-left: 1.2rem; }
.legal-article li { padding-left: .35rem; }
.legal-article strong { color: var(--ink); }
.legal-note { margin-top: 4rem; padding: 1.25rem 1.5rem; border-left: 2px solid var(--acid); background: rgba(217,255,67,.13); font-size: .86rem !important; }
.legal-footer { padding-block: 2rem; background: var(--dark); color: var(--white); }
.legal-footer .shell { display: flex; align-items: center; justify-content: space-between; gap: 2rem; font-size: .58rem; letter-spacing: .12em; }
.legal-footer nav { display: flex; flex-wrap: wrap; gap: 1.3rem; }
.legal-footer a { color: rgba(255,255,255,.72); }
.legal-footer a:hover { color: var(--acid); }
@media (max-width: 760px) {
    .legal-header { min-height: 82px; }
    .legal-back { font-size: .55rem; }
    .legal-main > h1 { font-size: 15vw; }
    .legal-article { margin: 0; }
    .legal-article p, .legal-article li { font-size: .94rem; }
    .legal-footer .shell { display: block; }
    .legal-footer nav { margin-top: 1.5rem; }
}
