:root{--color-graphite:#231f20;--color-ivory:#f6f6ea;--color-neutral-01:#3e3a36;--color-neutral-03:#757166;--color-green:#bbea83;--font-body:"IBM Plex Sans", sans-serif;--font-mono:"IBM Plex Mono", monospace;--font-title:"Playfair Display", serif;--size-body:20px;--leading-body:36px;--measure:66ch;--tracking-label:1.75px;--tracking-title:.02em;--size-title-1:clamp(2.5rem, 6vw, 4.5rem);--size-title-2:2.5rem;--size-title-3:1.75rem;--space-section:4rem;--space-gutter:1.5rem}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-400.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-600.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2)format("woff2")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/playfair-display.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-body);font-size:var(--size-body);line-height:var(--leading-body);margin:0}img{max-width:100%;display:block}p,li{max-width:var(--measure)}h1,h2,h3{font-family:var(--font-title);text-transform:uppercase;letter-spacing:var(--tracking-title);font-weight:400}h1{font-size:var(--size-title-1)}h2{font-size:var(--size-title-2)}h3{font-size:var(--size-title-3)}.label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--tracking-label)}.detail{font-family:var(--font-mono);text-transform:lowercase;letter-spacing:normal}body,.surface-graphite{--surface-link:var(--color-green);--surface-focus:var(--color-green);--surface-button-bg:var(--color-green);--surface-button-text:var(--color-graphite);background:var(--color-graphite);color:var(--color-ivory)}.surface-graphite{background-image:url(/_astro/texture-dark.CYvPRH8T.jpg)}.surface-ivory{--surface-link:var(--color-graphite);--surface-focus:var(--color-graphite);--surface-button-bg:var(--color-graphite);--surface-button-text:var(--color-ivory);background:var(--color-ivory);color:var(--color-graphite);background-image:url(/_astro/texture-ivory.Dxfquzd2.jpg)}a{color:var(--surface-link);text-underline-offset:.15em;text-decoration:underline}button,.button{font-family:var(--font-mono);font-size:inherit;background:var(--surface-button-bg);color:var(--surface-button-text);cursor:pointer;border:0;border-radius:0;padding:.5rem 1.25rem;text-decoration:none;display:inline-block}.section{padding:var(--space-section) var(--space-gutter);position:relative}.split{gap:var(--space-gutter);display:grid}.split img{width:100%;height:auto}@media (width>=48rem){.split{grid-template-columns:1fr 1fr;align-items:center}}.decor-glyph{pointer-events:none;height:auto;display:none;position:absolute}@media (width>=48rem){.decor-glyph{display:block}}.mark-ellipse,.mark-highlight{position:relative}.mark-ellipse:after{content:"";pointer-events:none;background:url(/_astro/ellipse-light.Bml90by_.png) 50%/100% 100% no-repeat;position:absolute;inset:-.3em -.5em}.surface-ivory .mark-ellipse:after{background-image:url(data:image/png;base64,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)}.mark-highlight{isolation:isolate}.mark-highlight:before{content:"";z-index:-1;background:url(/_astro/highlighter.CQBxxZWV.png) 50%/100% 100% no-repeat;position:absolute;inset:.05em -.3em}.grid-band{padding:var(--space-section) var(--space-gutter);background-image:linear-gradient(var(--color-neutral-01) 1px, transparent 1px), linear-gradient(90deg, var(--color-neutral-01) 1px, transparent 1px), url(/_astro/texture-dark.CYvPRH8T.jpg);background-size:1.5rem 1.5rem,1.5rem 1.5rem,auto}.telemetry{font-family:var(--font-mono);color:var(--color-neutral-03);grid-auto-flow:column;justify-content:start;gap:.25rem 2rem;font-size:.75rem;display:grid}.card-body:first-letter{text-transform:uppercase}header,footer{justify-content:space-between;align-items:center;gap:1rem var(--space-gutter);padding:1rem var(--space-gutter);flex-wrap:wrap;display:flex}header nav a:not(.button){color:var(--color-ivory);text-decoration:none}header nav a:not(.button):hover,header nav a:not(.button)[aria-current=page]{text-decoration:underline;text-decoration-color:var(--color-green)}header ul,footer ul{align-items:center;gap:.5rem var(--space-gutter);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.blog-categories,.blog-posts{margin:var(--space-gutter) 0 0;padding:0;list-style:none}.blog-categories{gap:.5rem var(--space-gutter);flex-wrap:wrap;display:flex}.blog-categories a[aria-current=page]{text-decoration:none}.blog-posts li+li{margin-top:var(--space-gutter)}.blog-posts h2{margin:0 0 .5rem}.post-meta{gap:.5rem var(--space-gutter);margin:0 0 var(--space-gutter);flex-wrap:wrap;display:flex}.post-hero{height:auto;margin:0 0 var(--space-gutter)}.prose>*+*{margin-top:1rem}.prose h2,.prose h3{margin-top:2rem}.legal ul{padding:0;list-style:none}.prose figure{margin:1.5rem 0}.prose figure img{height:auto}.prose figcaption{margin-top:.5rem;font-size:.875rem}:focus-visible{outline:2px solid var(--surface-focus);outline-offset:2px}.skip-link{background:var(--color-green);color:var(--color-graphite);padding:.5rem 1rem;position:absolute;top:0;left:0;transform:translateY(-100%)}.skip-link:focus{outline-color:var(--color-graphite);transform:translateY(0)}.logo[data-astro-cid-f7espo7c]{width:20rem;max-width:100%;height:auto;display:block}.header-logo[data-astro-cid-fzpbxy5g]{width:10rem}a[data-astro-cid-fzpbxy5g].button{align-items:center;gap:.75rem;padding-left:.25rem;display:inline-flex}.join-mark[data-astro-cid-fzpbxy5g]{background:var(--color-ivory);width:1.5rem;height:1.5rem;color:var(--color-graphite);place-items:center;display:grid}.join-mark[data-astro-cid-fzpbxy5g] svg[data-astro-cid-fzpbxy5g]{width:1rem;height:1rem}
