@font-face{font-family:IBM Plex Sans Var;src:url(/fonts/ibm-plex-sans-latin-wght.woff2)format("woff2-variations");font-weight:100 700;font-style:normal;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-latin-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-latin-500.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--sans:"IBM Plex Sans Var", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--paper:#fbfaf8;--paper-2:#f4f2ee;--ink:#1a1917;--muted:#6b6862;--line:#e2ded7;--line-strong:#cdc7bd;--accent:#a1522a;--rail:13.5rem;--gutter:clamp(1.25rem, 5vw, 4rem);--measure:62ch;--section-space:clamp(3.75rem, 8vw, 7rem);color-scheme:light}@media (prefers-color-scheme:dark){:root{--paper:#0e0e0d;--paper-2:#161615;--ink:#ecebe7;--muted:#918d86;--line:#26251f;--line-strong:#3a3831;--accent:#d68a56;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5.5rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--paper);min-width:320px;color:var(--ink);font-family:var(--sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;line-height:1.65}h1,h2,h3{letter-spacing:-.021em;text-wrap:balance;margin:0;font-weight:500;line-height:1.14}p{text-wrap:pretty;margin:0}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.shell{width:100%;max-width:76rem;padding-inline:var(--gutter);margin-inline:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:var(--gutter);z-index:10;background:var(--paper);border:1px solid var(--line-strong);padding:.5rem .75rem;top:.75rem}.masthead{z-index:5;background:color-mix(in srgb, var(--paper) 88%, transparent);backdrop-filter:saturate(140%)blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.masthead__inner{justify-content:space-between;align-items:center;gap:1.5rem;height:4.25rem;display:flex}.wordmark{letter-spacing:.01em;white-space:nowrap;align-items:center;gap:.625rem;font-size:.9375rem;font-weight:500;display:inline-flex}.wordmark svg{color:var(--accent);display:block}.nav{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);gap:1.5rem;font-size:.75rem;font-weight:400;display:none}.nav a:hover{color:var(--ink)}@media (width>=56rem){.nav{display:flex}}.hero{border-bottom:1px solid var(--line);padding-block:clamp(4.5rem,12vw,9.5rem) clamp(3.5rem,9vw,7rem)}.hero h1{letter-spacing:-.033em;max-width:18ch;font-size:clamp(2.5rem,1.2rem + 4.4vw,4.5rem);line-height:1.02}.hero__lede{max-width:46ch;color:var(--muted);margin-top:clamp(1.5rem,3vw,2.25rem);font-size:clamp(1.125rem,1rem + .55vw,1.375rem);line-height:1.5}.hero__meta{border-top:1px solid var(--line);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:clamp(2.5rem,6vw,4rem);padding-top:1rem;font-size:.75rem;display:flex}.section{padding-block:var(--section-space);border-bottom:1px solid var(--line)}.section__grid{gap:1.75rem;display:grid}@media (width>=56rem){.section__grid{grid-template-columns:var(--rail) minmax(0, 1fr);gap:clamp(2rem,5vw,4.5rem)}}.label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);align-items:baseline;gap:.75rem;font-size:.75rem;font-weight:500;display:flex}.label__index{color:var(--accent)}@media (width>=56rem){.label{position:sticky;top:6rem}}.section__body>*+*{margin-top:1.25rem}.section h2{max-width:24ch;font-size:clamp(1.5rem,1.15rem + 1.35vw,2.125rem)}.prose{max-width:var(--measure);color:var(--muted)}.prose strong{color:var(--ink);font-weight:500}.prose a{color:var(--ink);border-bottom:1px solid var(--line-strong)}.prose a:hover{border-bottom-color:var(--accent);color:var(--accent)}.prose--spaced{margin-top:2rem}.capabilities{border-top:1px solid var(--line)}.capability{border-bottom:1px solid var(--line);gap:.125rem 2rem;padding-block:1.125rem;display:grid}@media (width>=42rem){.capability{grid-template-columns:minmax(0,15rem) minmax(0,1fr);align-items:baseline}}.capability__name{letter-spacing:-.005em;font-size:1rem;font-weight:500}.capability__note{max-width:58ch;color:var(--muted);font-size:.9375rem;line-height:1.6}.entry{border-top:1px solid var(--line-strong);padding-top:1.5rem}.entry+.entry{margin-top:2.5rem}.entry__head{flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;display:flex}.entry__name{letter-spacing:-.02em;font-size:clamp(1.375rem,1.2rem + .7vw,1.75rem);font-weight:500}.entry__status{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line-strong);padding:.1875rem .5rem;font-size:.6875rem;font-weight:500}.entry__line{color:var(--ink);max-width:54ch;margin-top:.625rem;font-size:1.0625rem}.entry__body{max-width:var(--measure);color:var(--muted);margin-top:.875rem;font-size:.9375rem;line-height:1.65}.entry__facts{font-family:var(--mono);letter-spacing:.04em;color:var(--muted);flex-wrap:wrap;gap:.375rem 1.25rem;margin:1rem 0 0;padding:0;font-size:.75rem;list-style:none;display:flex}.entry__facts a{border-bottom:1px solid var(--line-strong);color:var(--ink)}.entry__facts a:hover{color:var(--accent);border-bottom-color:var(--accent)}.contact__email{letter-spacing:-.02em;border-bottom:1px solid var(--line-strong);margin-top:.5rem;font-size:clamp(1.375rem,1.1rem + 1.2vw,2rem);font-weight:500;display:inline-block}.contact__email:hover{color:var(--accent);border-bottom-color:var(--accent)}.colophon{font-family:var(--mono);letter-spacing:.04em;color:var(--muted);padding-block:2.5rem 3.5rem;font-size:.75rem}.colophon__row{flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;display:flex}.notfound{flex-direction:column;justify-content:center;min-height:60vh;padding-block:4rem;display:flex}.notfound h1{margin-top:1rem;font-size:clamp(2rem,1.4rem + 2.4vw,3rem)}.notfound .prose{margin-top:1.25rem}
