.stack-diagram[data-astro-cid-n4mrrfmv]{height:auto;display:block;overflow:visible}.stack-diagram[data-astro-cid-n4mrrfmv].full{width:100%;max-width:560px}.stack-diagram[data-astro-cid-n4mrrfmv].icon{width:48px}.face[data-astro-cid-n4mrrfmv]{stroke:color-mix(in srgb, var(--muted) 55%, transparent);stroke-width:1px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.top[data-astro-cid-n4mrrfmv]{fill:color-mix(in srgb, var(--text) 7%, var(--bg))}.left[data-astro-cid-n4mrrfmv]{fill:color-mix(in srgb, var(--text) 4%, var(--bg))}.right[data-astro-cid-n4mrrfmv]{fill:color-mix(in srgb, var(--text) 2%, var(--bg))}.tile[data-astro-cid-n4mrrfmv]{fill:none;stroke:var(--line);stroke-width:1px;vector-effect:non-scaling-stroke}.accent[data-astro-cid-n4mrrfmv] .top[data-astro-cid-n4mrrfmv]{fill:color-mix(in srgb, var(--accent) 20%, var(--bg))}.accent[data-astro-cid-n4mrrfmv] .left[data-astro-cid-n4mrrfmv]{fill:color-mix(in srgb, var(--accent) 13%, var(--bg))}.accent[data-astro-cid-n4mrrfmv] .right[data-astro-cid-n4mrrfmv]{fill:color-mix(in srgb, var(--accent) 9%, var(--bg))}.accent[data-astro-cid-n4mrrfmv] .face[data-astro-cid-n4mrrfmv],.lit[data-astro-cid-n4mrrfmv] .face[data-astro-cid-n4mrrfmv]{stroke:var(--accent)}.accent[data-astro-cid-n4mrrfmv] .tile[data-astro-cid-n4mrrfmv],.lit[data-astro-cid-n4mrrfmv] .tile[data-astro-cid-n4mrrfmv]{stroke:color-mix(in srgb, var(--accent) 45%, transparent)}.lit[data-astro-cid-n4mrrfmv] .face[data-astro-cid-n4mrrfmv]{stroke-width:1.5px}.name[data-astro-cid-n4mrrfmv]{fill:var(--muted);font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:500}.name[data-astro-cid-n4mrrfmv].lit{fill:var(--accent)}.hero[data-astro-cid-i3irphx7] .eyebrow[data-astro-cid-i3irphx7]{color:var(--accent);margin:0 0 1.25rem}.hero[data-astro-cid-i3irphx7] h1[data-astro-cid-i3irphx7]{letter-spacing:-.028em;margin:0;font-size:clamp(2.3rem,3.9vw,3.35rem);font-weight:600;line-height:1.03}.hero[data-astro-cid-i3irphx7] h1[data-astro-cid-i3irphx7] .line[data-astro-cid-i3irphx7]{display:block}.hero[data-astro-cid-i3irphx7] .lede[data-astro-cid-i3irphx7]{max-width:34em;color:var(--muted);margin:1.5rem 0 0;font-size:1.1rem}.stats[data-astro-cid-i3irphx7]{border:1px solid var(--line);background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;max-width:30rem;margin:2rem 0 0;display:grid}.actions[data-astro-cid-i3irphx7]{flex-wrap:wrap;gap:.75rem;margin:2rem 0 0;display:flex}.button[data-astro-cid-i3irphx7]{border:1px solid var(--line);min-height:2.75rem;color:var(--text);align-items:center;padding:0 1.15rem;font-weight:500;text-decoration:none;transition:border-color .2s,background-color .2s,color .2s;display:inline-flex}.button[data-astro-cid-i3irphx7]:hover{border-color:var(--muted);color:var(--text)}.button[data-astro-cid-i3irphx7].primary{border-color:var(--accent);background:var(--accent);color:var(--bg)}.button[data-astro-cid-i3irphx7].primary:hover{color:var(--accent);background:0 0}.stats[data-astro-cid-i3irphx7]>div[data-astro-cid-i3irphx7]{background:var(--bg);flex-direction:column-reverse;justify-content:flex-end;gap:.2rem;padding:.85rem 1rem;display:flex}.stats[data-astro-cid-i3irphx7] dt[data-astro-cid-i3irphx7]{color:var(--muted);font-size:.8rem;line-height:1.35}.stats[data-astro-cid-i3irphx7] dd[data-astro-cid-i3irphx7]{color:var(--text);margin:0;font-size:1.6rem;font-weight:500;line-height:1.1}@media (width<=760px){.hero[data-astro-cid-i3irphx7]{padding-top:2rem}.stats[data-astro-cid-i3irphx7]>div[data-astro-cid-i3irphx7]{padding:.7rem .75rem}.stats[data-astro-cid-i3irphx7] dd[data-astro-cid-i3irphx7]{font-size:1.35rem}}.stack[data-astro-cid-r4xqvlej]{justify-content:space-between}.legend[data-astro-cid-r4xqvlej]{border-top:1px solid var(--line);max-width:30rem;margin:2rem 0 0;padding:0;list-style:none}.legend[data-astro-cid-r4xqvlej] li[data-astro-cid-r4xqvlej]{border-bottom:1px solid var(--line);grid-template-columns:2.25rem 1fr;padding:.8rem 0;display:grid}.legend[data-astro-cid-r4xqvlej] .figure[data-astro-cid-r4xqvlej]{color:var(--muted);grid-row:1/span 2;padding-top:.15rem;font-size:.8rem}.legend[data-astro-cid-r4xqvlej] b[data-astro-cid-r4xqvlej]{font-weight:500}.legend[data-astro-cid-r4xqvlej] small[data-astro-cid-r4xqvlej]{color:var(--muted);font-size:.85rem}.legend[data-astro-cid-r4xqvlej] .accent[data-astro-cid-r4xqvlej] b[data-astro-cid-r4xqvlej],.legend[data-astro-cid-r4xqvlej] .accent[data-astro-cid-r4xqvlej] .figure[data-astro-cid-r4xqvlej]{color:var(--accent)}.earlier[data-astro-cid-3r3imlix]{border-top:1px solid var(--line);min-height:100svh}.earlier-grid[data-astro-cid-3r3imlix]{column-gap:var(--col-gap);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;display:grid}.gateway-figure[data-astro-cid-3r3imlix]{margin:0}.gateway[data-astro-cid-3r3imlix]{width:100%;max-width:520px;height:auto;margin-inline:auto;display:block}.gateway[data-astro-cid-3r3imlix] .box[data-astro-cid-3r3imlix]{fill:color-mix(in srgb, var(--text) 4%, var(--bg));stroke:color-mix(in srgb, var(--muted) 55%, transparent);stroke-width:1px}.gateway[data-astro-cid-3r3imlix] .box[data-astro-cid-3r3imlix].accent{fill:color-mix(in srgb, var(--accent) 14%, var(--bg));stroke:var(--accent)}.gateway[data-astro-cid-3r3imlix] .tile[data-astro-cid-3r3imlix]{fill:none;stroke:var(--line)}.gateway[data-astro-cid-3r3imlix] .wire[data-astro-cid-3r3imlix],.gateway[data-astro-cid-3r3imlix] .base[data-astro-cid-3r3imlix]{fill:none;stroke:color-mix(in srgb, var(--muted) 40%, transparent);stroke-width:1px}.gateway[data-astro-cid-3r3imlix] .base[data-astro-cid-3r3imlix]{stroke:var(--line)}.gateway[data-astro-cid-3r3imlix] text[data-astro-cid-3r3imlix]{font-family:var(--font-body);text-anchor:middle;dominant-baseline:central}.gateway[data-astro-cid-3r3imlix] .name[data-astro-cid-3r3imlix]{fill:var(--text);font-size:14px;font-weight:500}.gateway[data-astro-cid-3r3imlix] .name[data-astro-cid-3r3imlix].accent{fill:var(--accent)}.gateway[data-astro-cid-3r3imlix] .caption[data-astro-cid-3r3imlix]{letter-spacing:.13em;text-transform:uppercase;fill:var(--muted);font-size:11px;font-weight:500}@media (width<=760px){.earlier[data-astro-cid-3r3imlix]{min-height:0}.earlier-grid[data-astro-cid-3r3imlix]{grid-template-columns:minmax(0,1fr);row-gap:2.5rem}}#home{--nav-h:3.75rem;--col-gap:clamp(2rem, 4vw, 4.5rem)}.stack-stage{position:relative;overflow:clip}#stack{width:100%;height:100%;display:block;position:absolute;inset:0}.stack-labels{pointer-events:none;position:absolute;inset:0}.stack-labels>span{opacity:0;white-space:nowrap;will-change:transform, opacity;grid-template-columns:auto auto;align-items:center;column-gap:.6rem;display:grid;position:absolute;top:0;left:0}.stack-labels i{background:var(--accent);grid-row:1/span 2;width:1.75rem;height:1px}.stack-labels b{letter-spacing:.12em;text-transform:uppercase;color:var(--text);font-size:.75rem;font-weight:500}.stack-labels small{color:var(--muted);grid-column:2;font-size:.75rem}.stack-labels :is(.accent,.lit) b{color:var(--accent)}.stack-still{place-items:center;padding:2rem;transition:opacity .4s;display:grid;position:absolute;inset:0}.stack-still .stack-diagram{max-height:100%}#home:not([data-scene=on],[data-scene=paused]) #stack,#home:not([data-scene=on],[data-scene=paused]) .stack-labels{visibility:hidden}#home:is([data-scene=on],[data-scene=paused]) .stack-still{opacity:0;visibility:hidden}.home-section{flex-direction:column;justify-content:center;padding-block:clamp(3rem,9vh,6rem);scroll-margin-top:0;display:flex}.home-section:focus{outline:none}.kicker{gap:.9rem;margin:0 0 1.25rem;display:flex}.kicker .figure{color:var(--accent)}.home-section h2{letter-spacing:-.022em;text-wrap:balance;max-width:20ch;margin:0 0 1.5rem;font-size:clamp(1.75rem,2.9vw,2.6rem);font-weight:600;line-height:1.1}.home-section .body{max-width:60ch;color:var(--muted);margin:0 0 1rem}.facts{grid-template-columns:repeat(var(--n,3), minmax(0, 1fr));border:1px solid var(--line);background:var(--line);gap:1px;margin:1.75rem 0 0;display:grid}.facts>div{background:var(--bg);flex-direction:column-reverse;justify-content:flex-end;gap:.2rem;padding:.85rem 1rem;display:flex}.facts dt{color:var(--muted);font-size:.8rem;line-height:1.35}.facts dd{color:var(--text);margin:0;font-size:1.6rem;font-weight:500;line-height:1.1}.layer-head{align-items:center;gap:1rem;display:flex}.layer-head .kicker{margin-bottom:1.25rem}.layer-icon{display:none}@media (width>=761px){.stack-track{column-gap:var(--col-gap);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);display:grid}.stack-pin{display:contents}.stack-stage{grid-area:1/2/span 4;align-self:start;height:100svh;position:sticky;top:0}.hero{min-height:calc(100svh - var(--nav-h));grid-area:1/1}.stack{grid-area:2/1;min-height:200svh}.stack .section-copy{flex-direction:column;justify-content:center;min-height:calc(100svh - 2*clamp(3rem,9vh,6rem));display:flex}#framework{grid-area:3/1;min-height:100svh}#portal{grid-area:4/1;min-height:100svh}}@media (width<=760px){html{scroll-padding-top:42svh}.stack-stage{z-index:1;border-bottom:1px solid var(--line);background-color:var(--bg);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:32px 32px;background-attachment:fixed;height:42svh;position:sticky;top:0}.stack-still{padding:1rem}.stack-labels small{display:none}.stack-labels>span{column-gap:.4rem}.stack-labels i{width:1rem}.stack-labels b{font-size:.6875rem}.home-section{padding-block:2.5rem}.stack{justify-content:flex-start}.layer-icon{margin-bottom:1.25rem;display:block}.facts{grid-template-columns:minmax(0,1fr)}}.projects,.path,.writing,.contact{border-top:1px solid var(--line);min-height:100svh}.home-section h3{letter-spacing:-.01em;margin:0 0 .5rem;font-size:1.15rem;font-weight:600}.arrow-link{color:var(--accent);border-bottom:1px solid color-mix(in srgb, var(--accent) 40%, transparent);font-weight:500;text-decoration:none;display:inline-block}.arrow-link:hover,.arrow-link:focus-visible{border-bottom-color:var(--accent)}.enjasmy{column-gap:var(--col-gap);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;display:grid}.enjasmy .tagline{max-width:40ch;margin:0 0 1rem}.chips{flex-wrap:wrap;gap:.4rem;margin:.5rem 0 1.25rem;padding:0;list-style:none;display:flex}.chips li{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:.2rem .6rem;font-size:.8rem}.enjasmy .status{margin:0 0 .75rem}.shots{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:clamp(.5rem,1.5vw,1rem);display:grid}.phone{border:1px solid var(--line);background:var(--bg);border-radius:22px;padding:5px;overflow:hidden}.phone img{border-radius:17px;width:100%;height:auto;display:block}.cards{border:1px solid var(--line);background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:clamp(2rem,5vh,3.5rem) 0 0;padding:0;list-style:none;display:grid}.cards li{background:var(--bg);flex-direction:column;align-items:flex-start;padding:1.25rem;display:flex}.cards .body{flex:1}.timeline{gap:2.25rem var(--col-gap);grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 2rem;padding:0;list-style:none;display:grid}.timeline li{border-top:1px solid var(--line);padding-top:1rem;position:relative}.timeline li:before{content:"";background:var(--bg);border:1px solid var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:-4px;left:0}.timeline li:last-child:before{background:var(--accent)}.timeline .years{color:var(--accent);margin:0 0 .6rem}.timeline .body{margin:0;font-size:.9rem}.writing .wrap{flex-direction:column;gap:clamp(2rem,6vh,4rem);display:flex}.writing-head{justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.writing-head h2{margin:0}.writing-aside{flex-direction:column;align-items:flex-end;gap:.4rem;margin:0;display:flex}.writing-aside .body{margin:0}.articles{gap:var(--col-gap);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.articles a{height:100%;color:var(--text);flex-direction:column;gap:.6rem;text-decoration:none;display:flex}.articles img{aspect-ratio:16/10;object-fit:cover;border:1px solid var(--line);border-radius:6px;width:100%;margin-bottom:.4rem;display:block}.articles .meta-row{gap:1rem;display:flex}.articles strong{letter-spacing:-.015em;text-wrap:balance;font-size:clamp(1.2rem,1.8vw,1.5rem);font-weight:600;line-height:1.2}.articles em{color:var(--muted);font-style:normal}.articles a:hover strong,.articles a:focus-visible strong{color:var(--accent)}.contact-wrap{flex-direction:column;justify-content:space-between;gap:clamp(2.5rem,8vh,5rem);display:flex}.contact-title-row{align-items:center;gap:clamp(1.5rem,3vw,3rem);margin-bottom:1.5rem;display:flex}.home-section.contact h2{letter-spacing:-.04em;max-width:none;margin:0;font-size:clamp(3rem,9vw,8rem);line-height:1}.contact-icon .stack-diagram{width:clamp(48px,5vw,72px)}.contact-links,.meta{margin:0;padding:0;list-style:none}.contact-links{border-top:1px solid var(--line);margin-top:2rem;display:grid}.contact-links a{border-bottom:1px solid var(--line);letter-spacing:-.025em;color:var(--text);padding:.9rem 0;font-size:clamp(1.75rem,4vw,3.25rem);font-weight:500;line-height:1.1;text-decoration:none;display:block}.contact-links a:hover,.contact-links a:focus-visible{color:var(--accent)}.meta{flex-wrap:wrap;gap:.5rem 2.5rem;display:flex}@media (width<=1100px){.timeline{grid-template-columns:repeat(2,minmax(0,1fr))}.articles{gap:1.25rem}}@media (width<=760px){.projects,.path,.writing,.contact{min-height:0}.enjasmy{grid-template-columns:minmax(0,1fr);row-gap:2rem}.cards{grid-template-columns:minmax(0,1fr)}.timeline{border-left:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:0;margin-left:4px}.timeline li{border-top:0;padding:0 0 1.75rem 1.25rem}.timeline li:before{top:.3rem;left:-4px}.writing-head{flex-direction:column;align-items:flex-start;gap:1rem}.writing-aside{align-items:flex-start}.articles{grid-template-columns:minmax(0,1fr);gap:2.25rem}}.path h2{margin-bottom:2.5rem}
