@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/79e9e0e3b9220e46-s.15s2gb72mvmw9.woff2)format("woff2");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:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/e62850744c7f266e-s.43_ypb-kqawuo.woff2)format("woff2");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:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/9433d1a810498265-s.p.3z77xcxvtx9_e.woff2)format("woff2");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:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/150f724d70372c02-s.2ym9msm88vm4r.woff2)format("woff2");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:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/750c737482d9de2f-s.08jxdyhjmo52g.woff2)format("woff2");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:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/5f402bd2d8eef81a-s.p.23oeb0afa3wba.woff2)format("woff2");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:Newsreader Fallback;src:local(Times New Roman);ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.0%;size-adjust:105.48%}.newsreader_9902a265-module__lSA8Aa__className{font-family:Newsreader,Newsreader Fallback}.newsreader_9902a265-module__lSA8Aa__variable{--font-serif:"Newsreader", "Newsreader Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.3zhtymus0wdqb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.1da667lu-u79a.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1i05ju5aeyhye.woff2)format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.1dgcou5jor5q_.woff2)format("woff2");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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_8c2069ff-module__7Z2KXq__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal;font-weight:400}.ibm_plex_mono_8c2069ff-module__7Z2KXq__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--font-body:var(--font-serif), Georgia, serif;--font-label:var(--font-mono), ui-monospace, Menlo, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#121211;--text:#dcd9d2;--text-strong:#f3f1ec;--muted:#8b8881;--accent:#d9a55b;--content-width:34rem}*,:before,:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:19px;line-height:1.6}.page{padding:clamp(4rem,12vh,8rem) clamp(1.5rem,12vw,10rem) 4rem}.home-copy{max-width:var(--content-width)}.home-art{display:none}@media (min-width:1100px){.home{grid-template-columns:minmax(0, var(--content-width)) minmax(240px, 400px);align-items:start;gap:clamp(3rem,7vw,7rem);display:grid}.home-art{display:block;position:sticky;top:clamp(4rem,12vh,8rem)}.home-art .artwork-image{max-height:calc(100vh - 2*clamp(4rem,12vh,8rem) - 2rem)}.art-inline{display:none}}.artwork-image{object-fit:cover;object-position:center top;border-radius:3px;width:100%;height:auto;display:block}.artwork{margin:0}.artwork-credit{color:var(--muted);font-family:var(--font-label);letter-spacing:.04em;margin-top:.7rem;font-size:12px}.intro{align-items:center;gap:1.1rem;margin-bottom:2.5rem;display:flex}.portrait{object-fit:cover;filter:grayscale(.25);border-radius:3px;flex:none}.tagline{color:var(--muted);font-family:var(--font-label);letter-spacing:.04em;margin:.15rem 0 0;font-size:12px}.name{color:var(--text-strong);letter-spacing:-.01em;margin:0;font-size:1.6rem;font-style:italic;font-weight:500;line-height:1.2}p{margin:0 0 1.2rem}a{color:var(--text-strong);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 55%, transparent);text-decoration-color:color-mix(in srgb, var(--accent) 55%, transparent);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.muted{color:var(--muted)}section{margin-top:3.5rem}.label{color:color-mix(in srgb, var(--accent) 55%, var(--muted));font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;margin:0 0 1rem;font-size:12px;font-weight:400}.bio-toggle{color:var(--muted);font-family:var(--font-label);letter-spacing:.04em;margin-bottom:1.2rem;font-size:12px}.bio-toggle button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.speaker-icon{vertical-align:-.05em;margin-left:.3em}.bio-toggle button[aria-pressed=true],.bio-toggle button:hover{color:var(--accent)}.bio-break{color:var(--muted);text-align:center;border:0;margin:2.6rem 0}.bio-break:after{content:"·";font-size:1.4rem;line-height:1}.bio-figure{margin:.4rem 0 1.6rem}.bio-figure img,.bio-figure video{border-radius:3px;width:100%;height:auto;display:block}.listen{font-family:var(--font-label);letter-spacing:.04em;margin:-.4rem 0 1.6rem;font-size:12px}.listen button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.listen button:hover{color:var(--text-strong)}.listen .muted{font-variant-numeric:tabular-nums}.listen button.speed{color:var(--muted)}.listen button.speed:hover{color:var(--text-strong)}#bio-content.is-reading p{color:var(--muted)}#bio-content.is-reading p.is-current{color:var(--text-strong);position:relative}#bio-content.is-reading p.is-current:before{content:"";background:var(--accent);width:2px;position:absolute;top:.3em;bottom:.3em;left:-.9rem}.projects,.posts{margin:0;padding:0;list-style:none}.projects li{margin-bottom:1.1rem}.projects li>a,.project-title{color:var(--text-strong);font-weight:600}.project-description{color:var(--muted);margin:.1rem 0 0;font-size:17px;line-height:1.5}.projects-note{color:var(--muted);margin:1.8rem 0 0;font-size:17px;font-style:italic}.posts li{grid-template-columns:5.5rem minmax(0,1fr);align-items:baseline;margin-bottom:.45rem;display:grid}.posts a,.posts span{font-size:17px}.posts time{color:var(--muted);font-family:var(--font-label);font-variant-numeric:tabular-nums;font-size:13px}.elsewhere{margin:0}.footer{color:var(--muted);font-family:var(--font-label);margin-top:6rem;font-size:12px}
