/* Legal pages only: reuse ChallengeMe foundations without changing the landing page. */
.legal-page{background:var(--color-bg);color:var(--color-text)}
.legal-page .nav{gap:12px;padding-block:12px;min-height:80px}
.legal-back{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:.8rem;color:var(--color-muted)}
.legal-back:hover{color:var(--color-accent)}
.legal-main{max-width:880px;padding-block:48px 72px}
.legal-heading{padding-bottom:30px;border-bottom:1px solid var(--color-border);margin-bottom:24px}
.legal-heading .eyebrow{font-size:.6rem;line-height:1.8;margin-bottom:18px}
.legal-heading h1{font-size:clamp(2rem,5.5vw,4rem);line-height:1.12;letter-spacing:-.045em;overflow-wrap:anywhere;hyphens:auto}
.legal-heading::before{content:"";display:block;width:48px;height:3px;background:var(--color-accent);margin-bottom:24px}
.legal-toc{border:1px solid var(--color-border);border-radius:4px;background:var(--color-surface);margin-bottom:38px}
.legal-toc summary{cursor:pointer;padding:14px 18px;min-height:48px;font-size:.9rem;font-weight:700;color:var(--color-text)}
.legal-toc summary::marker{color:var(--color-accent)}
.legal-toc summary:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}
.legal-toc ol{list-style:none;margin:0;padding:0 18px 18px;display:grid;gap:4px}
.legal-toc li a{display:block;padding-block:10px;font-size:.9rem;color:var(--color-muted);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.legal-toc li a:hover{color:var(--color-accent)}
.legal-copy{max-width:74ch;font-size:1rem;line-height:1.85;color:#d2d2ca;overflow-wrap:anywhere}
.legal-copy section{margin-bottom:38px;scroll-margin-top:112px}
.legal-copy h2{font-size:clamp(1.25rem,2.5vw,1.6rem);line-height:1.4;letter-spacing:-.02em;color:var(--color-text);margin:0 0 18px}
.legal-copy p{margin:0 0 18px}.legal-copy p:last-child{margin-bottom:0}
.legal-copy address{font-style:normal;margin:0 0 18px;color:var(--color-text)}
.legal-copy ul{margin:0 0 20px;padding-left:1.3em}.legal-copy li{margin-bottom:10px;padding-left:5px}.legal-copy li::marker{color:var(--color-accent)}
.legal-copy a{color:var(--color-accent);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.legal-copy a:hover{color:#ffb180}
.legal-copy .legal-date{font-size:.85rem;color:var(--color-muted);margin-top:28px}
.legal-top{display:inline-flex;gap:14px;align-items:center;min-height:48px;color:var(--color-accent);font-size:.9rem}
.legal-footer{border-top:1px solid var(--color-border);padding-top:32px;display:block}
.legal-footer nav{margin-top:18px;gap:6px 24px}
.legal-footer nav a{font-size:.85rem;text-decoration:underline;text-underline-offset:4px}
.legal-footer nav a[aria-current=page]{color:var(--color-text)}
.legal-footer .footer-bottom{margin-top:16px;flex-wrap:wrap;line-height:1.8}
@media(min-width:768px){.legal-main{padding-block:68px 90px}.legal-copy section{margin-bottom:44px}.legal-toc ol{grid-template-columns:1fr 1fr;gap:4px 22px}}
@media(max-width:430px){.legal-page .brand{font-size:1.4rem}.legal-back{font-size:.72rem;gap:6px}.legal-page .nav{align-items:center}.legal-heading .eyebrow{letter-spacing:.09em}.legal-main{padding-top:34px}}
@media(prefers-reduced-motion:reduce){.legal-page{scroll-behavior:auto}}
