@font-face{font-family:Avori;src:url('assets/NeueHaasDisplayLight.ttf') format('truetype');font-weight:300 500;font-display:swap}
@font-face{font-family:Avori;src:url('assets/NeueHaasDisplayBold.ttf') format('truetype');font-weight:600 700;font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff;color:#111;font:17px/1.65 Avori,system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}a:hover{color:#555}a:focus-visible{outline:2px solid #000;outline-offset:5px}header,main,footer{max-width:1180px;margin:auto;padding-left:32px;padding-right:32px}header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dedede;font-size:14px}.brand{display:inline-flex}.brand img{height:auto;max-width:112px;filter:brightness(0)}.skip{position:absolute;left:16px;top:-100px;background:#fff;padding:12px;z-index:2}.skip:focus{top:12px}.intro{padding:72px 0 52px;max-width:740px}.eyebrow{font-size:11px;letter-spacing:.16em;color:#555}h1{font-size:clamp(44px,6vw,72px);font-weight:500;letter-spacing:-.05em;line-height:1.1;margin:20px 0}.lead{font-size:22px;line-height:1.5;color:#555;max-width:580px}.date{font-size:13px;color:#666;margin-top:24px}.layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:64px;padding-bottom:70px}nav{align-self:start;position:sticky;top:30px;display:grid;gap:12px;border-top:1px solid #ddd;padding-top:24px;font-size:14px}nav a{text-decoration:none}article{max-width:750px;min-width:0}section{padding:24px 0;border-top:1px solid #ddd}h2{font-size:27px;line-height:1.3;font-weight:500;letter-spacing:-.025em;margin:4px 0 20px}h3{font-size:19px;line-height:1.4;margin:28px 0 12px}p{margin:0 0 18px}ul{padding-left:22px}li{margin:0 0 12px}strong{font-weight:600}footer{display:flex;gap:24px;flex-wrap:wrap;border-top:1px solid #ddd;padding-top:28px;padding-bottom:36px;font-size:13px;color:#555}footer span{margin-left:auto}@media(max-width:760px){header,main,footer{padding-left:22px;padding-right:22px}header{height:80px}.intro{padding-top:44px;padding-bottom:32px}.layout{grid-template-columns:1fr;gap:32px}nav{position:static;grid-template-columns:1fr 1fr;gap:14px}.lead{font-size:20px}h2{font-size:25px}footer span{width:100%;margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
