@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/syne-latin-700-normal.AF3Rs61n.woff2)format("woff2"),url(/_astro/syne-latin-700-normal.Cd-_iCn5.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-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:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-italic.CZTNEAuW.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-italic.CsGl1sm0.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 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")}:root{color-scheme:light;--bg:#f7f4ee;--bg-elev:#fffcf7;--ink:#17151f;--muted:#5a5663;--faint:#7a7580;--line:#e4dfd4;--accent:#c44914;--accent-hover:#9a340c;--focus:#4b48c9;--tag-bg:#ece6da;--tag-ink:#2b2833;--badge-bg:#f3d9b8;--badge-ink:#6b3a08;--banner:#efe8d8;--shadow:0 1px 2px #17151f0d;--display:"Syne", "Avenir Next", "Segoe UI", sans-serif;--sans:"IBM Plex Sans", "Segoe UI", Helvetica, Arial, sans-serif;--mono:"IBM Plex Mono", "ui-monospace", Menlo, Consolas, monospace;--measure:40rem;--wide:72rem;--space:clamp(1.25rem, 4vw, 2.25rem);--radius:999px}[data-theme=dark]{color-scheme:dark;--bg:#12111a;--bg-elev:#1b1a24;--ink:#f3efe6;--muted:#b7b1c2;--faint:#8f8a99;--line:#2c2a36;--accent:#ff8a4c;--accent-hover:#ffb087;--focus:#9b99ff;--tag-bg:#262433;--tag-ink:#f3efe6;--badge-bg:#3a2a18;--badge-ink:#ffc889;--banner:#1b1a24;--shadow:0 1px 2px #00000059}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:radial-gradient(1200px 480px at 8% -10%, color-mix(in srgb, var(--accent) 10%, transparent), transparent 60%), radial-gradient(900px 420px at 100% 0%, color-mix(in srgb, var(--focus) 8%, transparent), transparent 55%), var(--bg);color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;margin:0;font-size:1.125rem;font-weight:400;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-underline-offset:.15em}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.skip-link{left:var(--space);z-index:200;background:var(--ink);color:var(--bg);border-radius:0 0 .4rem .4rem;padding:.4rem .8rem;font-weight:600;text-decoration:none;position:absolute;top:0;transform:translateY(-150%)}.skip-link:focus{outline-offset:2px;transform:translateY(0)}.site-header{z-index:50;background:color-mix(in srgb, var(--bg) 88%, transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(12px);position:sticky;top:0}.header-inner{max-width:var(--wide);padding:.8rem var(--space);flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin:0 auto;display:flex}.wordmark{color:var(--ink);align-items:center;gap:.6rem;margin-right:auto;text-decoration:none;display:inline-flex}.wordmark:hover{color:var(--accent)}.wordmark-mark{flex:none;width:1.7rem;height:1.7rem}.wordmark-text{font-family:var(--display);letter-spacing:-.03em;font-size:1.05rem;font-weight:700;line-height:1}.site-nav ul{flex-wrap:wrap;gap:.35rem 1.1rem;margin:0;padding:0;font-size:.98rem;list-style:none;display:flex}.site-nav a{color:var(--muted);font-weight:500;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink);text-underline-offset:.22em;text-decoration:underline}.theme-toggle{appearance:none;border:1px solid var(--line);background:var(--bg-elev);color:var(--ink);cursor:pointer;block-size:2.4rem;inline-size:2.4rem;box-shadow:var(--shadow);border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.theme-toggle:hover{border-color:var(--accent)}.theme-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.15rem;height:1.15rem}.theme-toggle .icon-sun,[data-theme=dark] .theme-toggle .icon-moon{display:none}[data-theme=dark] .theme-toggle .icon-sun{display:block}main{max-width:var(--wide);padding:0 var(--space) 4.5rem;margin:0 auto}.hero{max-width:46rem;padding:clamp(3rem,8vw,6.25rem) 0 clamp(2.25rem,5vw,3.75rem)}.eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin:0 0 .85rem;font-size:.78rem;font-weight:500}.hero h1,.page-hero h1,.post-page h1,.not-found h1{font-family:var(--display);letter-spacing:-.045em;font-weight:700;line-height:1.02}.hero h1{margin:0 0 .9rem;font-size:clamp(3rem,8vw,5.4rem)}.lede{color:var(--muted);max-width:34rem;margin:0;font-size:clamp(1.2rem,2.4vw,1.5rem);line-height:1.45}.home-grid{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);align-items:start;gap:2.5rem 3.5rem;padding-top:2.25rem;display:grid}@media (width>=880px){.home-grid{grid-template-columns:minmax(0,1fr) 16rem}.tags-block{position:sticky;top:6rem}}.block-head h2,.tags-block h2{font-family:var(--display);letter-spacing:-.03em;margin:0 0 1.25rem;font-size:1.35rem}.post-list{gap:1.75rem;margin:0;padding:0;list-style:none;display:grid}.post-list>li{border-bottom:1px solid var(--line);padding-bottom:1.75rem}.post-list>li:last-child{border-bottom:0;padding-bottom:0}.post-list>li>a{color:inherit;text-decoration:none;display:block}.post-list h3{font-family:var(--display);letter-spacing:-.03em;color:var(--ink);margin:.2rem 0 .4rem;font-size:clamp(1.35rem,2.4vw,1.7rem);font-weight:700;line-height:1.2}.post-list>li>a:hover h3{color:var(--accent)}.post-list p:not(.meta){color:var(--muted);margin:0}.meta,.post-date{color:var(--faint);font-family:var(--mono);flex-wrap:wrap;align-items:center;gap:.45rem .7rem;margin:0 0 .35rem;font-size:.82rem;display:flex}.sample-badge{border-radius:var(--radius);background:var(--badge-bg);color:var(--badge-ink);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;align-items:center;padding:.12rem .5rem;font-size:.72rem;font-weight:500;display:inline-flex}.tag-list{flex-wrap:wrap;gap:.45rem;margin:.85rem 0 0;padding:0;list-style:none;display:flex}.tag-list.compact{margin-top:.7rem}.tag-list a{border-radius:var(--radius);background:var(--tag-bg);color:var(--tag-ink);align-items:center;gap:.35rem;padding:.2rem .7rem;font-size:.88rem;font-weight:500;text-decoration:none;display:inline-flex}.tag-list a:hover{background:color-mix(in srgb, var(--accent) 16%, var(--tag-bg));color:var(--accent-hover)}.tag-count{font-family:var(--mono);color:var(--faint);font-size:.75rem}.page-narrow,.post-page,.not-found{max-width:var(--measure)}.page-hero{padding:clamp(2.25rem,5vw,3.75rem) 0 1.35rem}.page-hero h1{margin:0 0 .6rem;font-size:clamp(2.3rem,6vw,3.6rem)}.page-hero p{color:var(--muted);margin:0}.post-page header{padding:clamp(2.25rem,5vw,3.5rem) 0 1.5rem}.post-page h1{margin:0 0 .8rem;font-size:clamp(2.1rem,5.5vw,3.2rem)}.post-page .summary{color:var(--muted);margin:0;font-size:1.2rem}.byline{color:var(--muted)}.cover{border:1px solid var(--line);border-radius:1rem;margin:0 0 2rem;overflow:hidden}.cover img{aspect-ratio:16/9;object-fit:cover;width:100%}.prose{padding:.25rem 0 1.5rem}.prose>*+*{margin-top:1rem}.prose h2,.prose h3{font-family:var(--display);letter-spacing:-.03em;margin-top:2rem;font-weight:700;line-height:1.25}.prose h2{font-size:1.5rem}.prose h3{font-size:1.22rem}.prose ul,.prose ol{padding-left:1.2rem}.prose li+li{margin-top:.35rem}.prose blockquote{border-left:3px solid var(--accent);color:var(--muted);margin:1.4rem 0;padding:0 0 0 1rem;font-size:1.12rem}.back-link{margin-top:1.5rem;font-size:.98rem}.not-found{padding:clamp(4rem,10vw,7rem) 0}.not-found h1{margin:0 0 .8rem;font-size:clamp(2.2rem,5vw,3.3rem)}.site-footer{border-top:1px solid var(--line);padding:1.75rem var(--space) 2.5rem}.footer-inner{max-width:var(--wide);color:var(--faint);flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;margin:0 auto;font-size:.92rem;display:flex}.footer-inner a{color:var(--muted)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
