@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/inter-latin-400-normal.C38fXH4l.woff2)format("woff2"),url(/_astro/inter-latin-400-normal.CyCys3Eg.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-400-normal.V6pRDFza.woff2)format("woff2"),url(/_astro/jetbrains-mono-latin-400-normal.6-qcROiO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/jetbrains-mono-latin-700-normal.BYuf6tUa.woff2)format("woff2"),url(/_astro/jetbrains-mono-latin-700-normal.D3wTyLJW.woff)format("woff")}:root{--color-bg:#0c0e0b;--color-bg-deep:#080a07;--color-surface:#151a14;--color-surface-hover:#1e251c;--color-border:#2a3528;--color-border-subtle:#1e2a1c;--color-text:#cdd4c8;--color-text-secondary:#9aa593;--color-text-muted:#8a9683;--color-accent-primary:#6a9a6a;--color-accent-primary-dim:#6a9a6a1f;--color-accent-primary-glow:#6a9a6a40;--color-accent-secondary:#b08a5e;--color-accent-secondary-dim:#b08a5e1f;--color-camellia:#c47a7a;--color-dahlia:#c8a05a;--color-wisteria:#9a7ab8;--color-aster:#8aa8b8;--color-lotus:#c8b870;--color-thistle:#b05a5a;--color-thistle-text:#c77575;--font-heading:"JetBrains Mono", "Fira Code", "SF Mono", monospace;--font-body:"Inter", "Segoe UI", system-ui, sans-serif;--text-xs:clamp(.72rem, .7rem + .1vw, .79rem);--text-sm:clamp(.83rem, .79rem + .2vw, .94rem);--text-base:clamp(.95rem, .9rem + .25vw, 1.06rem);--text-lg:clamp(1.1rem, 1.02rem + .4vw, 1.25rem);--text-xl:clamp(1.3rem, 1.18rem + .6vw, 1.5rem);--text-2xl:clamp(1.56rem, 1.35rem + 1.05vw, 2rem);--text-3xl:clamp(1.95rem, 1.6rem + 1.75vw, 2.8rem);--text-4xl:clamp(2.44rem, 1.85rem + 2.95vw, 3.75rem);--space-3xs:clamp(.125rem, .1rem + .125vw, .25rem);--space-2xs:clamp(.25rem, .2rem + .25vw, .5rem);--space-xs:clamp(.5rem, .42rem + .4vw, .75rem);--space-sm:clamp(.75rem, .62rem + .65vw, 1.25rem);--space-md:clamp(1rem, .82rem + .9vw, 1.75rem);--space-lg:clamp(1.5rem, 1.2rem + 1.5vw, 2.5rem);--space-xl:clamp(2rem, 1.55rem + 2.25vw, 4rem);--space-2xl:clamp(3rem, 2.2rem + 4vw, 6rem);--space-3xl:clamp(4rem, 3rem + 5vw, 8rem);--content-width:76rem;--content-narrow:52rem;--content-padding:clamp(1.25rem, .5rem + 3vw, 4rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.87, 0, .13, 1);--duration-fast:.15s;--duration-normal:.3s;--duration-slow:.6s;--radius:8px;--radius-sm:4px;--clip-card:polygon(14px 0, 100% 0, 100% calc(100% - 14px) , calc(100% - 14px) 100%, 0 100%, 0 14px);--clip-card-sm:polygon(8px 0, 100% 0, 100% calc(100% - 8px) , calc(100% - 8px) 100%, 0 100%, 0 8px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background-color:var(--color-bg);line-height:1.65}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.01em;font-weight:700;line-height:1.2}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}a{color:var(--color-accent-primary);transition:color var(--duration-fast) var(--ease-out);text-decoration:none}a:hover{color:var(--color-text)}.label{font-family:var(--font-heading);font-size:var(--text-xs);color:var(--color-accent-primary);letter-spacing:.12em;text-transform:uppercase}.contained{max-width:var(--content-width);padding-inline:var(--content-padding);margin-inline-start:auto;margin-inline-end:auto}.contained-narrow{max-width:var(--content-narrow);padding-inline:var(--content-padding);margin-inline-start:auto;margin-inline-end:auto}section{padding-block:var(--space-2xl)}::selection{background:var(--color-accent-primary-dim)}:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:3px}.skip-link{left:var(--space-sm);top:var(--space-sm);z-index:1100;padding:var(--space-xs) var(--space-sm);background:var(--color-surface);font-family:var(--font-heading);font-size:var(--text-sm);position:absolute;transform:translateY(-300%)}.skip-link:focus-visible{transform:none}.reveal-hidden{opacity:0}.reveal-in{animation:reveal-in .5s var(--ease-out) both}@keyframes reveal-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}body{position:relative}.scroll-progress[data-astro-cid-5hce7sga]{background:linear-gradient(90deg,var(--color-accent-primary,#6a9a6a),var(--color-accent-secondary,#b08a5e));z-index:1000;pointer-events:none;width:0%;height:2px;position:fixed;top:0;left:0}.site-badge[data-astro-cid-5hce7sga]{top:var(--space-sm,1rem);right:var(--content-padding,1rem);z-index:900;font-family:var(--font-heading,"JetBrains Mono", monospace);font-size:var(--text-xs,.75rem);color:var(--color-text-secondary,#9aa593);letter-spacing:.04em;text-decoration:none;position:absolute}.site-badge[data-astro-cid-5hce7sga]:hover{color:var(--color-accent-primary,#6a9a6a)}.footer[data-astro-cid-gcn2mc3v]{padding-block:var(--space-lg);border-top:1px solid var(--color-border-subtle)}.footer-inner[data-astro-cid-gcn2mc3v]{justify-content:space-between;align-items:center;gap:var(--space-sm) var(--space-lg);flex-wrap:wrap;display:flex}.footer-left[data-astro-cid-gcn2mc3v]{align-items:baseline;gap:var(--space-sm);display:flex}.footer-name[data-astro-cid-gcn2mc3v]{font-family:var(--font-heading);font-size:var(--text-sm);font-weight:700}.footer-by[data-astro-cid-gcn2mc3v]{font-size:var(--text-xs);color:var(--color-text-muted)}.footer-links[data-astro-cid-gcn2mc3v]{gap:var(--space-2xs) var(--space-md);flex-wrap:wrap;list-style:none;display:flex}.footer-links[data-astro-cid-gcn2mc3v] a[data-astro-cid-gcn2mc3v]{font-family:var(--font-heading);font-size:var(--text-xs);color:var(--color-text-muted);padding-block:var(--space-2xs);display:inline-block}.footer-links[data-astro-cid-gcn2mc3v] a[data-astro-cid-gcn2mc3v]:hover{color:var(--color-accent-primary)}@media (max-width:640px){.footer-inner[data-astro-cid-gcn2mc3v]{text-align:center;flex-direction:column}.footer-links[data-astro-cid-gcn2mc3v]{justify-content:center}}
