:root{--paper:#EEF0F1;--ink:#121518;--muted:#5A6067;--rule:#C9CDD1;--brass:#8A5D12;--brass-soft:#E6D6B8;--panel:#E3E6E8;--display:"Literata",Georgia,"Times New Roman",serif;--body:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#101316;--ink:#E9E7E2;--muted:#9AA0A6;--rule:#2C3238;--brass:#D9A441;--brass-soft:#3A2E18;--panel:#181C20;color-scheme:dark}}:root[data-theme=dark]{--paper:#101316;--ink:#E9E7E2;--muted:#9AA0A6;--rule:#2C3238;--brass:#D9A441;--brass-soft:#3A2E18;--panel:#181C20;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--body)}a{color:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--brass);outline-offset:3px}img{max-width:100%;height:auto;display:block}.wrap{max-width:1120px;margin:0 auto;padding:0 24px}@media (max-width:480px){.wrap{padding:0 16px}}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:var(--ink);color:var(--paper);padding:8px 12px;z-index:10}header.site{padding:28px 0}header.site .wrap{display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap}.wordmark{font:600 22px/1 var(--display);letter-spacing:.01em;text-decoration:none}nav.main ul{list-style:none;display:flex;gap:28px;margin:0;padding:0;flex-wrap:wrap}nav.main a{text-decoration:none;font-size:15px;color:var(--muted)}nav.main a:hover{color:var(--ink)}nav.main a[aria-current=page]{color:var(--ink);border-bottom:1px solid var(--brass)}@media (max-width:520px){nav.main ul{gap:6px 18px}}.mark{display:inline-grid;place-items:center;width:30px;height:30px;border:1.5px solid var(--ink);font:700 15px/1 var(--display);flex:none}.section-head{display:flex;align-items:center;gap:14px;margin-bottom:28px}.section-head h2{margin:0;font:500 13px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.eyebrow{font:500 13px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--brass);margin:0 0 18px}.ctas{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-block;padding:12px 20px;font:500 15px/1 var(--body);text-decoration:none;border:1.5px solid var(--ink)}.btn.primary{background:var(--ink);color:var(--paper)}.btn.primary:hover,.btn:hover{border-color:var(--brass)}.btn.primary:hover{background:var(--brass);color:var(--paper)}.textlink{font:500 15px/1 var(--body);text-decoration:none;border-bottom:1px solid var(--brass);padding-bottom:3px}.hero{padding:56px 0 64px;border-top:1px solid var(--ink)}.hero h1{font:500 clamp(44px,7.4vw,92px)/.98 var(--display);letter-spacing:-.015em;margin:0;max-width:13ch;text-wrap:balance}.hero h1 em{font-style:italic;font-weight:400;color:var(--brass)}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);grid-gap:48px;gap:48px;align-items:end}.hero p.lede{margin:0 0 24px;max-width:46ch;font-size:18px}@media (max-width:820px){.hero-grid{grid-template-columns:1fr;gap:28px}}.measures{display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.measure{padding:24px 22px 22px;border-left:1px solid var(--ink);display:flex;flex-direction:column;gap:10px}.measure:first-child{border-left:3px double var(--ink)}.measure:last-child{border-right:4px double var(--ink)}.measure .fig{font:500 clamp(28px,3.4vw,42px)/1.05 var(--display);font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums;overflow-wrap:anywhere}.measure .fig small{font-size:.55em}.measure p{margin:0;font-size:15px;line-height:1.45}.tag{align-self:flex-start;margin-top:auto;font:500 11px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:5px 7px;border:1px solid var(--rule);color:var(--muted)}.tag.measured{border-color:var(--brass);color:var(--brass)}@media (max-width:820px){.measures{grid-template-columns:repeat(2,minmax(0,1fr))}.measure:nth-child(odd){border-left:3px double var(--ink)}.measure:last-child,.measure:nth-child(2n){border-right:4px double var(--ink)}.measure:nth-child(n+3){border-top:1px solid var(--ink)}}@media (max-width:440px){.measures{grid-template-columns:1fr}.measure{border-left:3px double var(--ink)!important;border-right:4px double var(--ink)!important}.measure:nth-child(n+2){border-top:1px solid var(--ink)}}section.block{padding:72px 0 0}.work{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}.work li{border-bottom:1px solid var(--rule)}.work a.row{display:grid;grid-template-columns:64px minmax(0,1.2fr) minmax(0,1fr) 190px;grid-gap:28px;gap:28px;padding:32px 0;text-decoration:none;align-items:start}.work a.row:hover h3{color:var(--brass)}.work .num{font:400 15px/1.2 var(--mono);color:var(--muted);padding-top:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.work h3{margin:0 0 8px;font:500 30px/1.12 var(--display);letter-spacing:-.01em;text-wrap:balance;transition:color .15s}.work .meta{margin:0;font:400 13px/1.4 var(--mono);color:var(--muted)}.work .sum{margin:0;font-size:16px;line-height:1.55}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.chip{font:500 12px/1 var(--body);padding:6px 9px;background:var(--brass-soft);color:var(--ink)}.work .hl{border-left:1px solid var(--ink);padding-left:18px;display:flex;flex-direction:column}.work .hl .fig{font:500 30px/1 var(--display);font-feature-settings:"lnum";font-variant-numeric:lining-nums}.work .hl p{margin:8px 0 10px;font-size:13px;line-height:1.4;color:var(--muted)}@media (max-width:920px){.work a.row{grid-template-columns:44px minmax(0,1fr);gap:14px 18px}.work .hl,.work .sum{grid-column:2}}.more{display:flex;justify-content:space-between;align-items:baseline;gap:24px;flex-wrap:wrap;padding:26px 0 0}.more ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:10px;gap:10px}.more li a{text-decoration:none;font:500 19px/1.3 var(--display)}.more li a:hover{color:var(--brass)}.more li span{font:400 13px/1.4 var(--mono);color:var(--muted);margin-left:10px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}.filters button{font:500 13px/1 var(--body);padding:9px 12px;border:1px solid var(--rule);background:transparent;color:var(--ink);cursor:pointer}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.filters button:hover{border-color:var(--brass)}.empty{color:var(--muted);padding:24px 0}.quote{margin:0;max-width:900px;display:grid;grid-gap:20px;gap:20px}.quote blockquote{margin:0;font:400 clamp(24px,3vw,34px)/1.3 var(--display);text-wrap:pretty}.quote blockquote:before{content:"\201C";color:var(--brass)}.quote blockquote:after{content:"\201D";color:var(--brass)}.quote cite{font:normal 400 14px/1.5 var(--mono);color:var(--muted)}.quote cite strong{color:var(--ink);font-weight:500}.consult{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:32px;gap:32px;align-items:end;border:1.5px solid var(--ink);padding:36px}.consult h3{margin:0 0 12px;font:500 34px/1.1 var(--display);text-wrap:balance}.consult p{margin:0;max-width:60ch}@media (max-width:720px){.consult{grid-template-columns:1fr;padding:24px}}.page-head{padding:48px 0 40px;border-top:1px solid var(--ink)}.page-head h1{font:500 clamp(40px,6vw,72px)/1.02 var(--display);letter-spacing:-.015em;margin:0 0 18px;max-width:18ch;text-wrap:balance}.page-head .intro{font-size:19px;max-width:58ch;margin:0}.cs-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font:400 14px/1.5 var(--mono);color:var(--muted);margin:0 0 20px}.tldr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:0;gap:0;border-top:1px solid var(--ink);margin:0 0 40px}.tldr div{padding:20px 22px 4px 0}.tldr div+div{padding-left:22px;border-left:1px solid var(--rule)}.tldr h3{margin:0 0 8px;font:500 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--brass)}.tldr p{margin:0;font-size:16px}@media (max-width:760px){.tldr{grid-template-columns:1fr}.tldr div+div{padding-left:0;border-left:0;border-top:1px solid var(--rule)}}.info{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:18px 32px;gap:18px 32px;margin:40px 0 0;padding:0}.info div{border-top:1px solid var(--rule);padding-top:12px}.info dt{font:500 12px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.info dd{margin:0;font-size:15px}.prose{max-width:720px}.prose>*+*{margin-top:1.1em}.prose h2{font:500 34px/1.15 var(--display);letter-spacing:-.01em;margin:2.2em 0 0;padding-top:22px;border-top:1px solid var(--ink);text-wrap:balance}.prose h3{font:600 19px/1.3 var(--body);margin:1.8em 0 0}.prose li,.prose p{font-size:17px}.prose ol,.prose ul{padding-left:1.25em}.prose li+li{margin-top:.45em}.prose li::marker{color:var(--brass)}.prose strong{font-weight:600}.prose a{-webkit-text-decoration-color:var(--brass);text-decoration-color:var(--brass);text-underline-offset:3px}.prose a:hover{color:var(--brass)}.prose blockquote{margin:1.6em 0 0;padding:4px 0 4px 22px;border-left:3px solid var(--brass);font:400 21px/1.45 var(--display)}.prose blockquote p{font:inherit;margin:0}.prose .cite{font:400 14px/1.5 var(--mono);color:var(--muted);margin-top:.5em;padding-left:25px}.prose table{width:100%;border-collapse:collapse;font-size:15px;display:block;overflow-x:auto}.prose td,.prose th{text-align:left;vertical-align:top;padding:10px 14px 10px 0;border-bottom:1px solid var(--rule)}.prose th{font:500 12px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom-color:var(--ink)}.prose hr{border:0;border-top:1px solid var(--rule);margin:2.4em 0}.prose figure{margin:2em 0 0}.prose figure.diagram,.prose figure.shot img{border:1px solid var(--rule)}.prose figure.diagram{background:var(--panel);padding:24px}.prose figure.diagram svg{display:block;width:100%;height:auto}.prose figcaption{font:400 13px/1.5 var(--mono);color:var(--muted);margin-top:10px}.prose .missing{color:#b00020}@media (min-width:1000px){.prose figure{margin-right:-180px}}.diagram text{stroke:none}.diagram .d-ink:not([fill]),.diagram text{fill:var(--ink)}.diagram .d-ink:not(text):not([stroke]){stroke:var(--ink)}.diagram .d-muted:not([fill]){fill:var(--muted)}.diagram .d-muted:not(text):not([stroke]){stroke:var(--muted)}.diagram .d-rule:not([fill]){fill:none}.diagram .d-rule:not(text):not([stroke]){stroke:var(--rule)}.diagram text.d-rule{fill:var(--muted)}.diagram .d-accent:not([fill]){fill:var(--brass)}.diagram .d-accent:not(text):not([stroke]){stroke:var(--brass)}.diagram .d-fill:not([fill]){fill:var(--brass-soft)}.diagram .d-paper:not([fill]){fill:var(--paper)}.diagram .d-arrow:not([fill]){fill:var(--rule)}.diagram .d-arrow{stroke:none}.diagram text.d-ink,.diagram text.d-t:not(.d-muted):not(.d-accent){fill:var(--ink)}.diagram text.d-muted{fill:var(--muted)}.diagram text.d-accent{fill:var(--brass)}.diagram .d-t{font-family:var(--body)}.diagram .d-m{font-family:var(--mono);letter-spacing:.06em}.diagram .d-h{font-family:var(--display)}.prose figure.diagram{overflow-x:auto}@media (max-width:700px){.prose figure.diagram svg{min-width:640px}.prose figure.diagram{padding:16px}}.pager{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px;margin-top:72px;border-top:1px solid var(--ink);padding-top:22px}.pager a{text-decoration:none}.pager small{display:block;font:500 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.pager span{font:500 22px/1.2 var(--display)}.pager a:hover span{color:var(--brass)}.pager .next{text-align:right}@media (max-width:600px){.pager{grid-template-columns:1fr}.pager .next{text-align:left}}footer.site{margin-top:96px;padding:28px 0 40px;border-top:4px double var(--ink)}footer.site .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px;color:var(--muted)}footer.site ul{list-style:none;display:flex;gap:22px;margin:0;padding:0;flex-wrap:wrap}footer.site a{text-decoration:none}footer.site a:hover{color:var(--ink)}@media (prefers-reduced-motion:no-preference){.rise{animation:rise .7s cubic-bezier(.2,.7,.2,1) both}.rise.d1{animation-delay:.08s}.rise.d2{animation-delay:.14s}@keyframes rise{0%{transform:translateY(10px);opacity:.001}to{transform:none;opacity:1}}}.diagram .d-ink{color:var(--ink)}.diagram .d-muted{color:var(--muted)}.diagram .d-rule{color:var(--rule)}.diagram .d-accent{color:var(--brass)}.diagram .d-fill{color:var(--brass-soft)}.diagram .d-paper{color:var(--paper)}