:root{--fg:#17161c;--mute:#17161c94;--line:#17161c3d;--strong:#17161c80;--paper-accent:#b23a2a;--paper:#efe6d6;--ink:#17161c;--display:"Newsreader", "Iowan Old Style", Georgia, serif;--mono:"Geist Mono", ui-monospace, Menlo, monospace;--dev:"Tiro Devanagari Sanskrit", "Noto Serif Devanagari", serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--paper);color:var(--fg);font-family:var(--display);-webkit-font-smoothing:antialiased;margin:0;font-size:18px;line-height:1.55;overflow-x:hidden}::selection{background:var(--paper-accent);color:var(--paper)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:1px solid var(--paper-accent);outline-offset:4px}#scene{z-index:0;width:100%;height:100%;display:block;position:fixed;inset:0}.rule{background:var(--paper-accent);opacity:.35;z-index:1;pointer-events:none;width:1px;position:fixed;top:0;bottom:0;left:clamp(28px,6vw,72px)}nav.top{top:calc(24px + env(safe-area-inset-top,0px));z-index:6;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;gap:26px;font-size:11px;display:flex;position:fixed;right:30px}nav.top a{color:var(--mute);padding:4px 2px;transition:color .25s;position:relative}nav.top a:after{content:"";background:var(--paper-accent);transform-origin:0;height:1px;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}nav.top a:hover{color:var(--fg)}nav.top a:hover:after{transform:scaleX(1)}.brand{top:calc(26px + env(safe-area-inset-top,0px));z-index:6;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);font-size:11px;position:fixed;left:30px}.brand b{color:var(--fg);font-weight:500}.brand .dv{font-family:var(--dev);letter-spacing:.1em;text-transform:none;color:var(--paper-accent);margin-left:10px;font-size:13px}@media (width<=760px){nav.top{padding:calc(14px + env(safe-area-inset-top,0px)) 16px 12px;letter-spacing:.1em;background:linear-gradient(var(--paper) 70%, transparent);justify-content:space-between;gap:10px;font-size:10px;top:0;left:0;right:0}.brand{display:none}}#nib{z-index:7;pointer-events:none;transform-origin:4px 116px;opacity:0;will-change:transform;width:120px;height:120px;transition:opacity .35s,transform .5s cubic-bezier(.2,.7,.2,1);position:fixed;top:0;left:0}#nib.on{opacity:1}main{z-index:2;position:relative}.wrap{max-width:1240px;margin-inline:auto;padding-inline:clamp(28px,6vw,80px)}.hero{align-content:center;min-height:92vh;padding-block:14vh 8vh;display:grid;position:relative}@media (width<=760px){.hero{min-height:0;padding-block:16vh 10vh}}.eyebrow{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin:0 0 18px;font-size:11px}#inkbox{aspect-ratio:2.4;width:min(100%,1120px);position:relative}@media (width<=639px){#inkbox{aspect-ratio:1.25}}#inkbox h1{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:0;position:absolute;overflow:hidden}[data-state=plain] #inkbox h1{clip:auto;white-space:normal;letter-spacing:-.02em;width:auto;height:auto;padding-top:.3em;font-size:clamp(3.2rem,11vw,9rem);font-style:italic;font-weight:300;line-height:.95;position:static;overflow:visible}[data-state=plain] #inkbox{aspect-ratio:auto!important}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.letterhead{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px 48px;margin-top:14px;display:grid}.lede{max-width:38ch;margin:0;font-size:clamp(1.1rem,1.5vw,1.4rem);font-weight:300;line-height:1.45}.lede b{font-weight:400}.from{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);text-align:right;flex-direction:column;align-items:flex-end;gap:8px;margin:0;font-size:11px;display:flex}.from a:first-child{text-transform:none;letter-spacing:.04em;color:var(--fg);border-bottom:1px solid var(--line);margin-bottom:6px;padding-bottom:2px;font-size:13px}.from a:hover{color:var(--paper-accent)}@media (width<=900px){.letterhead{grid-template-columns:1fr}.from{text-align:left;flex-flow:wrap;align-items:baseline;gap:10px 22px}.from a:first-child{flex-basis:100%;margin-bottom:0}}.cue{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mute);align-items:center;gap:14px;margin:48px 0 1em;font-size:11px;animation:1.2s 3s both fadeIn;display:flex}.cue i{background:var(--strong);width:34px;height:1px;display:block}.sec{padding-block:clamp(80px,14vh,160px);position:relative}.sec .grid{grid-template-columns:120px minmax(0,1fr) 340px;align-items:start;gap:24px 32px;display:grid}.side .vj{font-family:var(--dev);color:var(--paper-accent);margin:0;font-size:1.5rem;line-height:1.2}.side .k{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin:8px 0 0;font-size:10px}.body{min-width:0}.sec .grid>.wide{grid-column:2/4}.draw{aspect-ratio:4/3;width:100%;position:relative}.sec .grid>.draw{margin-top:8px}.draw.sm{max-width:260px;margin:0 0 16px}h2{letter-spacing:-.015em;text-wrap:balance;font-variation-settings:"opsz" 72;margin:0 0 .6em;font-size:clamp(2rem,4.6vw,4rem);font-weight:300;line-height:1.02}h2 em{font-style:italic}.write{transition:-webkit-mask-size 1.4s cubic-bezier(.3,.6,.2,1),mask-size 1.4s cubic-bezier(.3,.6,.2,1);-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000);-webkit-mask-size:0% 100%;mask-size:0% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.write.on{-webkit-mask-size:130% 100%;mask-size:130% 100%}.prose{max-width:62ch;font-size:clamp(1.05rem,1.35vw,1.25rem);font-weight:300;line-height:1.55}.prose p{margin:0 0 1.1em}@media (width<=1200px){.sec .grid{grid-template-columns:120px minmax(0,1fr)}.sec .grid>.draw{grid-column:2;max-width:340px}}@media (width<=760px){.sec .grid{grid-template-columns:1fr}.sec .grid>.wide{grid-column:1}.side{align-items:baseline;gap:14px;margin-bottom:18px;display:flex}.side .k{margin:0}.sec .grid>.draw{grid-column:1}}.ledger{border-top:1px solid var(--line);max-width:62ch;font-family:var(--mono);letter-spacing:.06em;margin:40px 0 0;font-size:12.5px}.ledger div{border-bottom:1px solid var(--line);grid-template-columns:150px 1fr;align-items:baseline;gap:16px;padding:14px 0;display:grid}.ledger dt{color:var(--mute);text-transform:uppercase;letter-spacing:.16em;margin:0;font-size:10.5px}.ledger dd{font-family:var(--display);letter-spacing:0;margin:0;font-size:1.1rem;font-weight:300}.ledger dd small{font-family:var(--mono);color:var(--mute);letter-spacing:.14em;text-transform:uppercase;margin-left:10px;font-size:10.5px}@media (width<=520px){.ledger div{grid-template-columns:1fr;gap:4px}}.roles{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.role{border-bottom:1px solid var(--line);grid-template-columns:150px minmax(0,1fr);gap:24px;padding:30px 0;display:grid}.role .when{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-variant-numeric:tabular-nums;padding-top:6px;font-size:11.5px;line-height:1.9}.role .when b{color:var(--fg);font-weight:500;display:block}.role h3{letter-spacing:-.01em;margin:0;font-size:clamp(1.4rem,2.3vw,1.9rem);font-weight:400;line-height:1.15}.role h3 span{color:var(--mute);font-style:italic;font-weight:300}.role p{max-width:60ch;margin:10px 0 0;font-size:1.05rem;font-weight:300}.tags{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);flex-wrap:wrap;gap:8px 18px;margin:14px 0 0;padding:0;font-size:10.5px;list-style:none;display:flex}@media (width<=640px){.role{grid-template-columns:1fr;gap:8px}}.projects{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.proj{border-bottom:1px solid var(--line);grid-template-columns:60px minmax(0,1fr) auto;align-items:baseline;gap:20px;padding:22px 0;display:grid}.proj .k{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);font-size:10.5px}.proj h3{letter-spacing:-.01em;margin:0;font-size:clamp(1.3rem,2.2vw,1.8rem);font-weight:400;line-height:1.1}.proj p{color:var(--mute);max-width:46ch;margin:4px 0 0;font-size:1rem;font-weight:300}.proj .go{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;font-size:10.5px}.proj:hover h3{color:var(--paper-accent)}@media (width<=640px){.proj{grid-template-columns:1fr;gap:4px}}.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:8px;display:grid}.three h3{letter-spacing:-.01em;margin:0 0 6px;font-size:1.35rem;font-weight:400}.three h3 .dv{font-family:var(--dev);color:var(--paper-accent);margin-left:10px;font-size:.95em}.three ol{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.three li{border-bottom:1px solid var(--line);grid-template-columns:28px 1fr;align-items:baseline;gap:10px;padding:12px 0;font-size:1.02rem;font-weight:300;display:grid}.three li i{font-family:var(--mono);color:var(--mute);letter-spacing:.1em;font-size:10.5px;font-style:normal}.three li small{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-top:3px;font-size:10.5px;display:block}.three .lead{color:var(--mute);margin:0 0 16px;font-size:1rem;font-weight:300}@media (width<=1200px){.three{grid-template-columns:1fr;gap:44px}.three>div{grid-template-columns:200px minmax(0,1fr);align-items:start;gap:0 28px;display:grid}.three .draw.sm{grid-row:1/5}}@media (width<=560px){.three>div{grid-template-columns:1fr}.three .draw.sm{grid-row:auto}}.contact h2{font-size:clamp(2.4rem,6.5vw,5.5rem)}.reach{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.reach a{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 20px;padding:18px 0;display:grid}.reach .name{letter-spacing:-.01em;font-size:clamp(1.3rem,2.2vw,1.8rem);line-height:1.1}.reach .handle{color:var(--mute);overflow-wrap:anywhere;font-weight:300}.reach a:hover .name{color:var(--paper-accent)}@media (width<=520px){.reach a{grid-template-columns:1fr}}.signoff{max-width:62ch;margin-top:64px}.signoff p{margin:0;font-size:1.25rem;font-style:italic;font-weight:300}.signoff .draw.sig{max-width:300px;margin:-12px 0 -24px -16px}.signoff .k{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);font-size:10.5px;font-style:normal}.signoff .k a:hover{color:var(--paper-accent)}.rv{transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}.rv.wait{opacity:0;transform:translateY(22px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.cue,.rv{transition:none;animation:none}.rv.wait{opacity:1;transform:none}.write{-webkit-mask-image:none;mask-image:none}}.not-found{min-height:80vh;font-family:var(--display);color:var(--fg);align-content:center;padding-inline:clamp(28px,8vw,96px);display:grid}.not-found h1{letter-spacing:-.015em;margin:0 0 .6em;font-size:clamp(2rem,5vw,4rem);font-weight:300}.not-found a{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);font-size:11px}.not-found a:hover{color:var(--paper-accent)}
