@font-face{font-family:Inter Tight;src:url(/fonts/InterTight.ttf)format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Regular.ttf)format("truetype");font-weight:400;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--charcoal);color:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter Tight,Arial,sans-serif;font-size:18px;line-height:1.6}a{color:inherit;text-decoration:none}a:hover{text-underline-offset:5px;text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}:focus-visible{outline:3px solid var(--orange);outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.025em;line-height:1.1}h1{font-size:clamp(40px,6.5vw,82px);font-weight:750}h2{font-size:30px}h3{font-size:24px}p{margin-bottom:1.2em}img{max-width:100%;height:auto}main{min-height:60vh}section{scroll-margin-top:30px}.wrap{max-width:1180px;margin:auto;padding:56px 28px}.mono,.eyebrow{letter-spacing:.09em;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:13px;line-height:1.6}.eyebrow{align-items:center;gap:12px;margin-bottom:25px;display:flex}.eyebrow:before{content:"";background:var(--orange);flex:none;width:4px;height:15px}.muted{color:var(--steel)}.light{background:var(--paper);color:var(--charcoal)}.light .muted{color:#565d66}.site-header{border-bottom:1px solid #35383e}.header-inner{flex-wrap:wrap;align-items:center;gap:30px;max-width:1440px;margin:auto;padding:20px 28px;display:flex}.brand{letter-spacing:-.025em;white-space:nowrap;align-items:center;gap:10px;font-size:17px;font-weight:800;display:inline-flex}.brand em{color:var(--orange);font-style:normal}.roundel{background:var(--paper);color:var(--charcoal);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;display:flex}nav{flex-wrap:wrap;gap:20px;margin-left:auto;display:flex}nav a{color:#b2b7bd;padding:8px 0;font-family:IBM Plex Mono,monospace;font-size:13px}nav a[aria-current=page]{color:var(--paper);text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:8px}.skip{background:var(--paper);color:var(--charcoal);z-index:50;padding:10px;position:absolute;top:-100px}.skip:focus{top:4px}.hero{border-bottom:1px solid #35383e}.hero h1{max-width:16ch;margin-bottom:28px}.rule{background:var(--orange);width:64px;height:5px;margin:30px 0 23px}.dek{max-width:51ch;font-size:clamp(20px,2.2vw,24px);line-height:1.45}.actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:30px;display:flex}.button{background:var(--orange);min-height:48px;color:var(--charcoal);border:1px solid var(--orange);justify-content:center;align-items:center;padding:11px 22px;font-size:16px;font-weight:700;display:inline-flex}.button:hover{background:var(--paper);color:var(--charcoal);text-decoration:none}.button.secondary{color:inherit;background:0 0;border-color:#858b92}.section-head{border-bottom:1px solid #bbc0c4;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:28px;padding-bottom:15px;display:flex}.section-head h2{margin:0;font-size:26px}.feed-layout{grid-template-columns:minmax(0,3fr) minmax(240px,1fr);gap:46px;display:grid}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;display:grid}.card{border-top:1px solid #c9c7c1;padding:22px 0 12px}.card h2,.card h3{margin:14px 0 12px;font-size:27px}.card p{color:#4a5058;font-size:17px;line-height:1.5}.card .mono{color:#535b64;font-size:12px}.card a:hover{color:#ad3510}.rail{border-left:1px solid #c9c7c1;padding-left:28px}.rail h2{font-size:26px}.rail p{font-size:17px}.rail a{border-top:1px solid #c9c7c1;padding:16px 0;font-size:21px;font-weight:650;line-height:1.2;display:block}.columns{grid-template-columns:1fr 1fr;gap:56px;display:grid}.list-link{border-top:1px solid #464950;grid-template-columns:36px 1fr;gap:14px;padding:19px 0;display:grid}.list-link strong{font-size:22px;line-height:1.2;display:block}.list-link small{margin-top:8px;display:block}.callout{border:1px solid #51555b;padding:28px}.callout h2{font-size:25px}.archive-title{max-width:22ch;margin-bottom:20px}.filters{flex-wrap:wrap;gap:10px;margin:30px 0;display:flex}.filters button{cursor:pointer;background:0 0;border:1px solid #92979d;padding:10px 16px;font-size:14px}.filters button[aria-pressed=true]{background:var(--charcoal);color:var(--paper)}[hidden]{display:none!important}.article-header{max-width:920px}.article-header h1{max-width:22ch;font-size:clamp(38px,5.5vw,68px)}.article-layout{grid-template-columns:minmax(0,720px) minmax(180px,1fr);gap:70px;display:grid}.prose{font-size:19px}.prose h2{margin-top:40px;font-size:28px}.prose h2:first-child{margin-top:0}.prose a{overflow-wrap:anywhere;text-decoration:underline}.sources{border-top:1px solid #bbb;margin-top:40px;padding-top:28px}.sources li{margin-bottom:15px}.article-aside{border-left:1px solid #c9c7c1;padding-left:26px;font-size:16px}.page-intro{max-width:780px}.page-intro h1{font-size:clamp(38px,5vw,64px)}.step{border-top:1px solid #c9c7c1;grid-template-columns:42px 1fr;gap:16px;padding:25px 0;display:grid}.step h2{margin-bottom:14px;font-size:25px}.course{border-top:1px solid #45494e;padding:28px 0}.course ol{padding-left:22px}.course li{padding:5px 0}.site-footer{border-top:1px solid #35383e}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:24px;padding-top:30px;padding-bottom:30px;display:flex}.footer-links{gap:22px;display:flex}.footer-note{color:var(--steel);font-size:14px}@media (width<=900px){nav{gap:17px;margin-left:0}.header-inner{gap:14px}.feed-layout{grid-template-columns:1fr}.rail{border-top:1px solid #aaa;border-left:0;padding:26px 0 0}.article-layout{grid-template-columns:1fr;gap:30px}.article-aside{border-top:1px solid #bbb;border-left:0;padding:25px 0 0}}@media (width<=600px){.wrap{padding:38px 20px}.header-inner{padding:18px 20px}nav{gap:5px 18px}nav a{font-size:12px}.cards,.columns{grid-template-columns:1fr;gap:24px}.hero h1{font-size:49px}.section-head{align-items:flex-start}.section-head .mono{font-size:12px}.brand{font-size:16px}.article-header h1{font-size:40px}.footer-inner{gap:20px}.prose{font-size:18px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
