
html{scroll-behavior:smooth}
body{margin:0;font-family:'Hanken Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;color:#0E1F2E;background:#F4F6F5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{color:inherit}
button{font-family:inherit;cursor:pointer}
input,textarea{font-family:inherit}
.d{font-family:'Bricolage Grotesque','Hanken Grotesk',system-ui,sans-serif}
.m{font-family:'JetBrains Mono',ui-monospace,Menlo,monospace}
.w{width:100%;max-width:1200px;margin:0 auto;padding-left:32px;padding-right:32px;box-sizing:border-box}
.pn{padding:56px}
.dp{padding:40px}
.btn{transition:transform .15s ease}
.btn:hover{transform:translateY(-2px)}
.nl:hover{text-decoration:underline;text-underline-offset:6px}
.row .arr{transition:transform .2s ease}
.row:hover .arr{transform:translateX(8px)}
.card{transition:border-color .15s ease,transform .15s ease}
.card:hover{border-color:#0E1F2E;transform:translateY(-3px)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #2F54EB;outline-offset:3px}
.dk a:focus-visible{outline-color:#9DB0FF}
section[id],div[id]{scroll-margin-top:12px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.row .arr,.card{transition:none}.btn:hover,.card:hover{transform:none}.row:hover .arr{transform:none}}
@media (max-width:640px){.w{padding-left:20px;padding-right:20px}.pn{padding:28px}.dp{padding:24px}}

[hidden]{display:none!important}
.skip{position:absolute;left:-9999px;top:0;background:#0E1F2E;color:#fff;padding:12px 20px;z-index:100;border-radius:0 0 12px 0}
.skip:focus{left:0}
.prose p{margin:0 0 20px;font-size:18px;line-height:1.7;color:#2B3B49}
.prose h2{margin:40px 0 16px;font-family:"Bricolage Grotesque","Hanken Grotesk",system-ui,sans-serif;font-size:28px;line-height:1.15;letter-spacing:-0.02em;font-weight:700}
.prose .pull{margin:32px 0;font-family:"Bricolage Grotesque","Hanken Grotesk",system-ui,sans-serif;font-size:clamp(24px,2.8vw,32px);line-height:1.2;font-weight:700;letter-spacing:-0.02em;color:#2F54EB;text-wrap:balance}
.prose ul{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:14px}
.prose li{position:relative;padding-left:22px;font-size:18px;line-height:1.65;color:#2B3B49}
.prose li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:8px;background:#0E1F2E;border-radius:2px}
.prose a{color:#0E1F2E;text-decoration:underline;text-underline-offset:3px;font-weight:600}
.prose a:hover{color:#2F54EB}
