@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-500-normal.BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-ext-400-normal.C5H60-Va.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-400-normal.RBey6euL.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-ext-500-normal.DakdToA3.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-500-normal.D0aIdm-b.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-ext-600-normal.DOrvGEcy.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-600-normal.DIrixKbi.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff) format("woff")}:root{--color-bg: #faf9f6;--color-surface: #ffffff;--color-ink: #1c1c1a;--color-ink-soft: #46453f;--color-muted: #8a887f;--color-line: #e6e3db;--color-accent: #2d4f76;--color-accent-ink: #213c5c;--grid-line: rgba(45, 79, 118, .045);--font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--step--1: clamp(.8rem, .77rem + .15vw, .875rem);--step-0: clamp(1rem, .96rem + .2vw, 1.0625rem);--step-1: clamp(1.2rem, 1.1rem + .5vw, 1.4rem);--step-2: clamp(1.5rem, 1.3rem + 1vw, 2rem);--step-3: clamp(1.85rem, 1.5rem + 1.4vw, 2.4rem);--space-xs: .5rem;--space-sm: .75rem;--space-md: 1.25rem;--space-lg: 2rem;--space-xl: 3.5rem;--space-2xl: 6rem;--container: 64rem;--measure: 42rem;--radius: 8px}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--step-0);line-height:1.6;color:var(--color-ink-soft);background-color:var(--color-bg);background-image:linear-gradient(to right,var(--grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line) 1px,transparent 1px);background-size:28px 28px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh;display:flex;flex-direction:column}img,picture,svg{max-width:100%;display:block}h1,h2,h3{font-weight:600;line-height:1.15;color:var(--color-ink);letter-spacing:-.01em}h1{font-size:var(--step-3)}h2{font-size:var(--step-2)}h3{font-size:var(--step-1)}p{max-width:var(--measure)}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-ink);text-decoration:underline;text-underline-offset:3px}.eyebrow{font-family:var(--font-mono);font-size:var(--step--1);text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--space-md)}main{flex:1 0 auto}section{padding-block:var(--space-xl)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}.skip-link{position:absolute;left:-9999px;top:0;background:var(--color-ink);color:var(--color-bg);padding:var(--space-xs) var(--space-md);z-index:100;border-radius:0 0 var(--radius) 0}.skip-link:focus{left:0;top:0}::selection{background:#2d4f762e}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lead{font-size:var(--step-1);line-height:1.5;color:var(--color-ink-soft)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap;margin-bottom:var(--space-lg)}.section-head .more{font-family:var(--font-mono);font-size:var(--step--1)}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}@media(max-width:38rem){.grid{grid-template-columns:1fr}}.site-header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--color-line);background:color-mix(in srgb,var(--color-bg) 88%,transparent);backdrop-filter:blur(6px)}.header-inner[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-height:4rem}.brand[data-astro-cid-3ef6ksr2]{font-family:var(--font-mono);font-weight:600;font-size:1.05rem;color:var(--color-ink);letter-spacing:-.01em}.brand[data-astro-cid-3ef6ksr2]:hover{text-decoration:none;color:var(--color-ink)}.brand-dot[data-astro-cid-3ef6ksr2]{color:var(--color-accent)}nav[data-astro-cid-3ef6ksr2] ul[data-astro-cid-3ef6ksr2]{display:flex;flex-wrap:wrap;gap:var(--space-md);list-style:none;padding:0}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{font-family:var(--font-mono);font-size:var(--step--1);text-transform:lowercase;letter-spacing:.02em;color:var(--color-ink-soft);padding-block:.35rem}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:var(--color-accent);text-decoration:none}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2][aria-current=page]{color:var(--color-ink);box-shadow:inset 0 -2px 0 var(--color-accent)}@media(max-width:28rem){.header-inner[data-astro-cid-3ef6ksr2]{flex-direction:column;align-items:flex-start;gap:var(--space-xs);min-height:0;padding-block:var(--space-sm)}}.site-footer[data-astro-cid-sz7xmlte]{margin-top:var(--space-2xl);border-top:1px solid var(--color-line);padding-block:var(--space-lg)}.footer-inner[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap}.footer-meta[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:var(--step--1);color:var(--color-muted);margin:0}.footer-links[data-astro-cid-sz7xmlte]{display:flex;gap:var(--space-md);list-style:none;padding:0;margin:0}.footer-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:var(--step--1);color:var(--color-ink-soft)}.footer-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-accent)}
