/* Legal pages (Terms, Privacy) in the Clearline look. Loaded after clearline.css. */
.legal{padding-block:clamp(48px,7vw,88px) clamp(64px,8vw,110px)}
.legal-hero{max-width:62ch;margin-bottom:clamp(36px,5vw,56px)}
.legal-hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,6vw,64px);line-height:1.05;letter-spacing:-.01em;color:var(--ink)}
.legal-hero p{margin-top:16px;font-size:18px;color:var(--muted)}
.legal-updated{display:block;margin-top:18px;font-size:14px;color:var(--muted)}
.legal-body{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,2fr);gap:clamp(28px,5vw,72px);align-items:start}
.legal-toc{position:sticky;top:96px}
.legal-toc .lbl{display:block;margin-bottom:14px;font-size:14px;font-weight:500;color:var(--accent)}
.legal-toc ol{display:flex;flex-direction:column;gap:6px;counter-reset:toc}
.legal-toc li{counter-increment:toc;font-size:15px;line-height:1.45}
.legal-toc a{display:block;padding:3px 0;color:var(--muted);text-decoration:none}
.legal-toc a::before{content:counter(toc,decimal-leading-zero) "  ";opacity:.55}
.legal-toc a:hover{color:var(--accent)}
.legal-content{max-width:70ch;font-size:16.5px;line-height:1.7;color:#323B5C}
.legal-content section{padding-top:clamp(26px,3vw,38px);margin-top:clamp(26px,3vw,38px);border-top:1px solid var(--line)}
.legal-content section:first-child{padding-top:0;margin-top:0;border-top:0}
.legal-content h2{font-family:var(--serif);font-weight:400;font-size:clamp(24px,3vw,30px);line-height:1.2;color:var(--ink);margin-bottom:14px;scroll-margin-top:96px}
.legal-content h3{font-size:17px;font-weight:600;color:var(--ink);margin:20px 0 8px}
.legal-content p{margin-bottom:14px}
.legal-content p:last-child{margin-bottom:0}
.legal-content ul{list-style:disc;padding-left:1.25em;margin-bottom:14px;display:flex;flex-direction:column;gap:6px}
.legal-content li::marker{color:var(--accent)}
.legal-content a{color:var(--accent);text-underline-offset:3px}
.legal-content a:hover{color:var(--band-raised)}
.legal-content strong{font-weight:600;color:var(--ink)}
.legal-note{margin-top:20px;padding:16px 18px;background:var(--paper-raised);border-radius:var(--radius-card);font-size:15px;color:var(--muted)}
@media (max-width:820px){
  .legal-body{grid-template-columns:1fr}
  .legal-toc{position:static;padding-bottom:20px;border-bottom:1px solid var(--line)}
  .legal-toc ol{flex-direction:row;flex-wrap:wrap;gap:4px 18px}
}
