:root{color-scheme:light dark;--bg:light-dark(#fff,#19181c);--ink:light-dark(#242329,#f6f5f8);--muted:light-dark(#5f5c65,#c5c1cd);--line:light-dark(#dedbe2,#48444f);--accent:light-dark(#655078,#d8bfef)}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.5rem/1.6 "Atkinson Hyperlegible Next",system-ui,sans-serif;overflow-wrap:anywhere}
header{padding:24px 32px;border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-weight:500;text-decoration:none;min-height:48px}
.brand svg{flex-shrink:0}
main{max-width:800px;margin:auto;padding:48px 32px 64px}
h1,h2{font-family:"IBM Plex Sans",system-ui,sans-serif;font-weight:500;line-height:1.25;letter-spacing:-.02em}
h1{font-size:2.5rem;margin:0 0 24px}
h2{font-size:1.75rem;margin:48px 0 20px;scroll-margin-top:24px}
p{margin:0 0 24px}
li{margin-block:16px}
ul{padding-inline-start:1.25em}
strong{font-weight:600}
a{color:var(--accent);text-underline-offset:4px}
a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.contact{margin-top:32px}
.contact a,.return-link{display:inline-flex;align-items:center;min-height:48px}
.skip{position:absolute;left:16px;top:0;transform:translateY(-120%);padding:12px;background:var(--bg)}
.skip:focus{top:12px;transform:none}
@media(max-width:600px){header{padding:16px 20px}main{padding:32px 20px 48px}h1{font-size:2rem}h2{font-size:1.5rem}}
@media print{body{color:#000;background:#fff;font-size:12pt}header,.skip,.return-link{display:none}main{max-width:none;padding:0}h2{break-after:avoid}a{color:inherit}}
