@font-face{font-family:Familjen Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/familjen-grotesk-vietnamese-wght-normal.DKRsWTd7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Familjen Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/familjen-grotesk-latin-ext-wght-normal.Cvgdx4cy.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Familjen Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/familjen-grotesk-latin-wght-normal.CfZa4wxB.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0c0c0d;--surface:#161618;--text:#f2f0ea;--muted:#94908a;--accent:#ff5a1f;--line:#26262a;--sans:"Familjen Grotesk Variable", ui-sans-serif, sans-serif;--mono:"JetBrains Mono Variable", ui-monospace, monospace;--pad:clamp(1.25rem, 5vw, 4.5rem);--gutter:clamp(0rem, 6vw, 6rem);--ease:cubic-bezier(.2, .7, .2, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.6}img,svg{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,p,ol,ul{margin:0;padding:0}ol,ul{list-style:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}::selection{background:var(--accent);color:var(--bg)}.lens{width:var(--gutter);pointer-events:none;z-index:1;position:fixed;top:0;bottom:0;left:0}.lens .ticks{background:repeating-linear-gradient(#0000 0 11px,#f2f0ea2e 11px 12px);width:22px;position:absolute;inset:0 auto 0 clamp(.75rem,2vw,1.5rem);mask:linear-gradient(#0000,#000 30% 70%,#0000)}.lens .line{background:var(--accent);width:clamp(1.5rem,3vw,2.5rem);height:2px;position:absolute;top:50%;left:clamp(.5rem,1.6vw,1.2rem)}[data-focus]{transition:filter .45s var(--ease), opacity .45s var(--ease)}[data-focus].is-out{filter:blur(7px);opacity:.3}.top{z-index:5;padding:1rem var(--pad) 1rem calc(var(--gutter) + var(--pad) * .4);justify-content:space-between;align-items:center;display:flex;position:absolute;inset:0 0 auto}.mark{align-items:center;gap:.6rem;font-weight:600;text-decoration:none;display:inline-flex}.mark img{border-radius:50%;width:32px;height:32px}.top nav{align-items:center;gap:clamp(.75rem,2vw,1.75rem);font-size:.9375rem;display:flex}.top nav a{color:var(--muted);text-decoration:none;transition:color .2s}.top nav a:hover,.top nav a[aria-current]{color:var(--text)}.top nav .cta{color:var(--bg);background:var(--text);transition:background-color .2s, transform .15s var(--ease);border-radius:999px;padding:.4rem .9rem;font-weight:600}.top nav .cta:hover{background:var(--accent);color:var(--bg)}.top nav .cta:active{transform:scale(.97)}.intro,.story,.oss,.projects,.outro,.blog,.post,.foot{padding-left:calc(var(--gutter) + var(--pad) * .4);padding-right:var(--pad)}.intro{isolation:isolate;align-content:center;min-height:100svh;padding-top:6rem;padding-bottom:4rem;display:grid;position:relative}.intro h1{letter-spacing:-.045em;max-width:14ch;padding-block:.06em;font-size:clamp(2.75rem,7.4vw,7.25rem);font-weight:600;line-height:1.04}.cloud{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.blog,.post{min-height:88svh;padding-top:clamp(7rem,18svh,11rem);padding-bottom:6rem}.posts{border-top:1px solid var(--line);max-width:52rem}.posts a{border-bottom:1px solid var(--line);grid-template-columns:6.5rem minmax(0,1fr);align-items:baseline;gap:1rem;padding:1.1rem 0;text-decoration:none;transition:opacity .2s;display:grid;position:relative}.posts a:focus-visible{outline:none}.posts time{font:500 .8125rem/1.8 var(--mono);color:var(--muted)}.post-title{letter-spacing:-.02em;font-size:1.25rem;font-weight:600;line-height:1.35;display:block}.post-desc{color:var(--muted);margin-top:.2rem;display:block}.post article{max-width:42rem}.post-back{font:500 .8125rem/1 var(--mono);color:var(--muted);text-decoration:none}.post-back:hover{color:var(--text)}.post h1{letter-spacing:-.04em;margin-top:1.5rem;font-size:clamp(2.25rem,5vw,4.25rem);font-weight:600;line-height:1.06}.post header time{font:500 .8125rem/1.6 var(--mono);color:var(--muted);margin-top:1rem;display:block}.prose{border-top:1px solid var(--line);color:#c9c5bc;margin-top:2.5rem;padding-top:2.5rem;font-size:clamp(1.0625rem,1.4vw,1.1875rem);line-height:1.7}.prose>*+*{margin-top:1.25em}.prose h2,.prose h3{color:var(--text);letter-spacing:-.02em;font-weight:600;line-height:1.25}.prose h2{margin-top:2em;font-size:1.6em}.prose h3{margin-top:1.75em;font-size:1.25em}.prose a{color:var(--text);text-underline-offset:.22em;text-decoration:underline 1px #4a4a50;transition:text-decoration-color .2s}.prose a:hover{text-decoration-color:var(--accent)}.prose ul,.prose ol{padding-left:1.25em}.prose ul{list-style:outside}.prose ol{list-style:decimal}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--muted)}.prose strong{color:var(--text)}.prose blockquote{border-left:2px solid var(--accent);margin-inline:0;padding-left:1.25em}.prose code{font:.875em/1.6 var(--mono)}.prose :not(pre)>code{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:.1em .35em}.prose pre{border:1px solid var(--line);border-radius:10px;padding:1rem 1.25rem;font-size:.9375rem;overflow-x:auto}.prose img{border-radius:10px}.prose hr{border:0;border-top:1px solid var(--line);margin-block:2.5em}.story{display:grid}.chapter{grid-template-columns:minmax(7rem,1fr) minmax(0,4fr);align-content:center;gap:2rem;min-height:78svh;padding-block:3rem;display:grid}.ch-label{font:500 .8125rem/1.6 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding-top:.9rem}.ch-label span{color:var(--accent);margin-right:.75rem}.chapter h2{letter-spacing:-.035em;max-width:18ch;font-size:clamp(2rem,4.6vw,4.25rem);font-weight:600;line-height:1.06}.ch-body{color:#c9c5bc;max-width:46ch;margin-top:1.25rem;font-size:clamp(1.0625rem,1.5vw,1.25rem);line-height:1.55}.beats{border-top:1px solid var(--line);max-width:46rem;margin-top:2rem;display:grid}.beats li{border-bottom:1px solid var(--line);grid-template-columns:6.5rem 1fr;gap:1rem;padding:.85rem 0;font-size:.9875rem;line-height:1.5;display:grid}.beats time{font:500 .8125rem/1.8 var(--mono);color:var(--muted)}.beats a{font:500 .8125rem/1 var(--mono);color:var(--accent);overflow-wrap:anywhere;margin-left:.25rem;text-decoration:none}.beats a:hover{text-underline-offset:.2em;text-decoration:underline}.oss{padding-top:6rem}.oss-head h2,.projects>h2,.blog h1{letter-spacing:-.045em;margin-bottom:2rem;padding-block:.04em;font-size:clamp(2.5rem,6vw,5.5rem);font-weight:600;line-height:1.04}.oss-head{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:2rem;display:flex}.oss-head h2{margin-bottom:0}.car-nav{gap:.5rem;padding-bottom:.5rem;display:flex}.car-nav[hidden]{display:none}.car-btn{border:1px solid var(--line);width:2.75rem;height:2.75rem;color:var(--text);cursor:pointer;background:0 0;border-radius:999px;place-items:center;transition:background-color .2s,border-color .2s,opacity .2s;display:grid}.car-btn svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.car-btn:hover:not(:disabled){background:var(--surface);border-color:#3a3a40}.car-btn:disabled{opacity:.35;cursor:default}.car{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;margin:-6px calc(-1 * var(--pad)) 0 -6px;padding:6px var(--pad) 6px 6px;grid-auto-columns:min(30rem,80vw);grid-auto-flow:column;column-gap:clamp(1rem,2.5vw,2rem);scroll-padding-left:6px;display:grid;overflow-x:auto}.car::-webkit-scrollbar{display:none}.car>li{scroll-snap-align:start}.car a{flex-direction:column;gap:.5rem;height:100%;text-decoration:none;transition:opacity .2s;display:flex}.car a:focus-visible{outline:none}.car a:hover .chip-k i,.car a:focus-visible .chip-k i,.posts a:hover .chip-k i,.posts a:focus-visible .chip-k i{opacity:1;transform:none}.car:has(a:hover) a:not(:hover),.posts:has(a:hover) a:not(:hover){opacity:.5}.car-img{border:1px solid var(--line);border-radius:12px;margin-bottom:.75rem;display:block;position:relative}.car-img img{border-radius:11px;width:100%;height:auto}.car-repo{font:500 .8125rem/1.4 var(--mono);color:var(--muted);align-items:center;gap:.5rem;display:flex}.car-logo{border-radius:4px;flex:none;width:18px;height:18px;box-shadow:0 0 0 1px #3a3a40}.car-logo.is-mask{box-shadow:none;background:var(--c);-webkit-mask:var(--m) center / contain no-repeat;mask:var(--m) center / contain no-repeat;border-radius:0}.state{font:500 .75rem/1 var(--mono);text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:.3rem .5rem}.state-merged{color:#0c0c0d;background:#a38bff}.state-open{color:#7ee0a1;border:1px solid #7ee0a166}.pr-title{line-height:1.45}.pr-plain{color:var(--muted)}.pr-num{font:500 .875rem/1 var(--mono);color:var(--muted)}.pr-meta{font:500 .8125rem/1.4 var(--mono);color:var(--muted);white-space:nowrap;align-items:center;gap:.6rem;margin-top:auto;padding-top:.25rem;display:flex}.intro-bio{max-width:40rem;color:var(--muted);margin-top:2rem;font-size:clamp(1.0625rem,1.5vw,1.25rem);line-height:1.65}.intro-bio a{color:var(--text);text-underline-offset:.22em;text-decoration:underline 1px #4a4a50;transition:text-decoration-color .2s}.intro-bio a:hover{text-decoration-color:var(--accent)}.highlights{gap:.9rem;margin-top:2.5rem;display:grid}.hl-row{grid-template-columns:7.5rem 1fr;align-items:center;gap:.75rem;display:grid}.hl-label{color:var(--muted);font-size:.9375rem}.hl-chips{flex-wrap:wrap;gap:.5rem;display:flex}.chip{background:var(--surface);border:1px solid var(--line);border-radius:8px;align-items:center;gap:.45rem;padding:.35rem .75rem .35rem .6rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:opacity .2s,background-color .2s,border-color .2s;display:inline-flex;position:relative}.chip-icon{background:var(--muted);width:16px;height:16px;-webkit-mask:var(--m) center / contain no-repeat;mask:var(--m) center / contain no-repeat;flex:none;transition:background-color .2s}.chip-logo{border-radius:4px;flex:none;width:16px;height:16px;box-shadow:0 0 0 1px #3a3a40}.chip-k{pointer-events:none;position:absolute;inset:-5px}.chip-k i{border:0 solid var(--accent);opacity:0;width:7px;height:7px;transition:transform .22s cubic-bezier(.3,1.7,.5,1),opacity .12s;position:absolute}.chip-k i:first-child{border-top-width:2px;border-left-width:2px;top:0;left:0;transform:translate(-5px,-5px)}.chip-k i:nth-child(2){border-top-width:2px;border-right-width:2px;top:0;right:0;transform:translate(5px,-5px)}.chip-k i:nth-child(3){border-bottom-width:2px;border-left-width:2px;bottom:0;left:0;transform:translate(-5px,5px)}.chip-k i:nth-child(4){border-bottom-width:2px;border-right-width:2px;bottom:0;right:0;transform:translate(5px,5px)}.chip:hover,.chip:focus-visible{background:#1b1b1e;border-color:#34343a;outline:none}.chip:hover .chip-k i,.chip:focus-visible .chip-k i{opacity:1;transform:none}.chip:hover .chip-icon,.chip:focus-visible .chip-icon{background:var(--c)}.highlights:has(.chip:hover) .chip:not(:hover),.highlights:has(.chip:focus-visible) .chip:not(:focus-visible){opacity:.5}.projects{padding-top:6rem}.proj-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(2rem,5vw,5rem);display:grid}.proj-list{padding-block:20svh 34svh}.proj{border-top:1px solid var(--line);padding-block:2.25rem}.proj-head{align-items:center;gap:.75rem;display:flex}.proj h3{letter-spacing:-.04em;font-size:clamp(2.25rem,4.4vw,3.75rem);font-weight:600;line-height:1.08}.badge{font:500 .75rem/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);border:1px solid #ff5a1f66;border-radius:999px;padding:.3rem .55rem}.proj-meta{font:500 .8125rem/1.4 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-top:.6rem}.proj-blurb{color:#c9c5bc;max-width:42ch;margin-top:.9rem}.proj-link{font:500 .8125rem/1 var(--mono);color:var(--accent);margin-top:.9rem;text-decoration:none;display:inline-block}a.proj-link:hover{text-underline-offset:.2em;text-decoration:underline}.proj-link.muted{color:var(--muted)}.proj-inline{display:none}.proj-panel{position:relative}.panel-stack{display:grid;position:sticky;top:calc(50svh - min(16vw,14rem))}.panel-item{opacity:0;transition:opacity .35s var(--ease), transform .5s var(--ease);grid-area:1/1;transform:scale(.985)}.panel-item.is-active{opacity:1;transform:none}.panel-cap{font:500 .8125rem/1.4 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);justify-content:space-between;margin-top:.85rem;display:flex}.panel-cap span:first-child{color:var(--text)}.art{aspect-ratio:16/10;background:var(--surface);border:1px solid var(--line);border-radius:12px;place-items:center;display:grid;overflow:hidden}.art>img{object-fit:cover;object-position:left top;width:100%;height:100%}.art-liiist{background:#37563b}.art-liiist>img{border-radius:18%;width:22%;height:auto}.art-isles{background:#e8892b}.art-isles>img{object-fit:contain;width:30%;height:auto}.art-gaston{background:#cfe3b4}.art-gaston>img{width:26%;height:auto;image-rendering:pixelated}.art-ductility{color:#1b1a17;background:#e9e6df}.art-ductility svg{width:52%}.art-seedlod{color:#1b1a17;background:#c9d6df}.art-seedlod svg{width:72%}.wave-pill{background:var(--text);border-radius:999px;align-items:center;gap:.9rem;padding:.9rem 1.3rem;display:flex}.rec{background:#e0412b;border-radius:50%;width:11px;height:11px}.bars{align-items:center;gap:4px;height:34px;display:flex}.bars i{background:var(--accent);border-radius:2px;width:4px}.bars i:nth-child(7n+1){height:30%}.bars i:nth-child(7n+2){height:70%}.bars i:nth-child(7n+3){height:100%}.bars i:nth-child(7n+4){height:50%}.bars i:nth-child(7n+5){height:80%}.bars i:nth-child(7n+6){height:40%}.bars i:nth-child(7n){height:60%}.art pre{font:400 clamp(.75rem, 1.2vw, .9375rem)/1.75 var(--mono);color:#c9c5bc;justify-self:start;margin:0;padding-inline:8%}.art pre .dim{color:var(--muted)}.art pre .hi{color:var(--accent)}.art pre mark{background:var(--accent);color:var(--bg);border-radius:3px;padding:.1em .3em}.outro{border-top:1px solid var(--line);align-content:center;min-height:70svh;margin-top:4rem;display:grid}.outro h2{letter-spacing:-.04em;max-width:16ch;font-size:clamp(2.25rem,5.4vw,5rem);font-weight:600;line-height:1.06}.btn{background:var(--accent);color:var(--bg);transition:background-color .2s, transform .15s var(--ease);border-radius:999px;margin-top:2rem;padding:.9rem 1.5rem;font-weight:600;text-decoration:none;display:inline-block}.btn:hover{background:#ff7a45}.btn:active{transform:scale(.97)}.foot{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;padding-block:2rem 2.5rem;font-size:.9375rem;display:flex}.foot ul{flex-wrap:wrap;gap:.5rem 1.5rem;display:flex}.foot a{text-decoration:none}.foot a:hover{color:var(--text)}@media (width<=899px){:root{--gutter:2.25rem}.lens .ticks{background:repeating-linear-gradient(#0000 0 9px,#f2f0ea2e 9px 10px);width:12px;left:.6rem}.lens .line{width:1.25rem;left:.35rem}[data-focus].is-out{filter:blur(3px)}.top nav a:not(.cta,.page){display:none}.chapter{grid-template-columns:1fr;gap:.75rem;min-height:auto;padding-block:4rem}.ch-label{padding-top:0}.beats li{grid-template-columns:1fr;gap:.1rem}.proj-grid{grid-template-columns:1fr}.hl-row{grid-template-columns:1fr;gap:.4rem}.posts a{grid-template-columns:1fr;gap:.35rem}.proj-panel{display:none}.proj-list{padding-block:0}.proj-inline{margin-top:1.25rem;display:block}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
