/* Legal pages (privatlivspolitik, cookiepolitik): a readable column with a sticky table of contents. */
.legal{padding:96px 0 24px}
.legal-head{max-width:68ch}
.legal h1{font-size:clamp(40px,5.4vw,68px);line-height:1.04}
.legal .updated{margin-top:18px;font-size:14px;color:var(--muted)}
.legal-intro{margin-top:22px;font-size:17px;line-height:1.7;color:var(--body)}
.legal-grid{display:grid;grid-template-columns:minmax(0,68ch) minmax(0,1fr);gap:72px;margin-top:72px;align-items:start}
.legal-body section{scroll-margin-top:16px}
.legal-body section+section{margin-top:48px;padding-top:40px;border-top:1px solid var(--line-soft)}
.legal h2{font-size:clamp(22px,2.4vw,28px);line-height:1.2}
.legal-body p,.legal-body li{font-size:16px;line-height:1.72;color:var(--body)}
.legal-body p{margin-top:14px}
.legal-body ul{margin:14px 0 0;padding-left:22px;display:grid;gap:8px}
.legal-body li::marker{color:var(--muted)}
.legal-body a,.legal-intro a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px;transition:text-decoration-color .15s}
.legal-body code{font-family:var(--mono);font-size:.88em;background:rgba(45,45,45,.06);border-radius:4px;padding:1px 5px}
.todo{background:#fff1bf;color:#6f5200;border-radius:4px;padding:1px 5px;font-weight:500}
.legal-toc{position:sticky;top:96px;display:grid;gap:2px;justify-self:end;width:100%;max-width:260px;font-size:13.5px}
.toc-title{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.legal-toc a{position:relative;padding:6px 0 6px 14px;color:var(--muted);border-left:1px solid var(--line);transition:color .15s,border-color .15s}
.legal-toc a.on{color:var(--ink);border-left-color:var(--ink)}
.toc-sep{height:1px;background:var(--line);margin:12px 0 8px}
.legal-toc .toc-sep+a{border-left:0;padding-left:0;color:var(--body)}
.fbottom a[aria-current="page"]{color:var(--ink)}
@media (hover:hover) and (pointer:fine){
  .legal-body a:hover{text-decoration-color:var(--ink)}
  .legal-toc a:hover{color:var(--ink)}
}

@media (max-width:1024px){
  .legal-grid{grid-template-columns:1fr;gap:0;margin-top:56px}
  .legal-toc{display:none}
}
@media (max-width:760px){
  .legal{padding-top:56px}
  .legal-intro{font-size:16px}
}
