:root{--ink:#1d1631;--ink-2:#2b2247;--paper:#fbf9ff;--muted:#b6acd6;--mint:#3ddc97;
  --display:"Bricolage Grotesque","Avenir Next","Segoe UI",system-ui,sans-serif;color-scheme:dark}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--ink);color:var(--paper);font-family:var(--display);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.6}
main{max-width:640px;margin:0 auto;padding:calc(env(safe-area-inset-top) + 24px) 22px calc(env(safe-area-inset-bottom) + 48px)}
a{color:var(--mint);text-underline-offset:3px}
a:focus-visible{outline:3px solid currentColor;outline-offset:3px;border-radius:4px}
.home{display:inline-block;font-size:28px;font-weight:800;letter-spacing:-.05em;color:var(--paper);text-decoration:none;margin-bottom:36px}
h1{font-size:clamp(44px,12vw,64px);line-height:1;letter-spacing:-.045em;font-weight:800;font-variation-settings:"opsz" 96}
.updated{color:var(--muted);font-size:15px;font-weight:600;margin-top:12px}
.lead{font-size:20px;line-height:1.5;font-weight:600;margin-top:24px;letter-spacing:-.01em}
h2{font-size:24px;line-height:1.2;letter-spacing:-.025em;font-weight:800;margin-top:44px}
h3{font-size:18px;font-weight:800;letter-spacing:-.01em;margin-top:24px}
p{margin-top:10px}
ul{margin-top:12px;padding-left:1.2em}
li{margin-top:8px}
li::marker{color:var(--muted)}
b{font-weight:800}
.foot{display:flex;gap:24px;margin-top:56px;padding-top:20px;border-top:1px solid rgba(251,249,255,.16);font-size:15px;font-weight:700}
