@font-face{font-family:ReaderMono;src:url(/site/reader/fonts/site-mono.woff2) format("woff2");font-weight:400;font-display:block}@font-face{font-family:ReaderMono;src:url(/site/reader/fonts/site-mono-bold.woff2) format("woff2");font-weight:700;font-display:block}:root{--ink: #e8e0c9;--body: #b9b19d;--meta: #847d6c;--pad: 20px;--size: 13px;--gap: 1.6;color-scheme:dark}html{scroll-behavior:smooth;background:#000;-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}body{margin:0;background:#000;color:var(--body)}astro-dev-toolbar{display:none}.sky{position:fixed;left:0;top:0;width:100%;height:100lvh;z-index:0;pointer-events:none}.sky .artwork{position:absolute;inset:0;background:#000;overflow:hidden}.sky canvas{display:block;width:100%;height:100%}.sky .fallback{position:absolute;inset:0;opacity:0;transition:opacity .45s}.sky .fallback img{width:100%;height:100%;object-fit:cover}.sky .artwork[data-state=fallback] .fallback,html.nojs .sky .fallback{opacity:.38}.sky .fallback img{transform:translateY(-40%)}@media (min-width: 900px){.sky .fallback img{transform:translate(30%)}}.sky .artwork[data-state=fallback] canvas{opacity:0}.sheet{position:relative;z-index:1;font:400 var(--size)/var(--gap) ReaderMono,"DejaVu Sans Mono",ui-monospace,monospace;font-variant-ligatures:none;font-kerning:none;padding:0 var(--pad) 40vh;overflow:clip;box-sizing:border-box;max-width:calc(44ch + 2 * var(--pad))}.sheet h1,.sheet h2,.sheet h3,.sheet p,.sheet ol,.sheet ul{margin:0;padding:0;font:inherit}.sheet ol,.sheet ul{list-style:none}.sheet a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:#847d6c}.sheet a:focus-visible{outline:1px solid var(--ink);outline-offset:4px;border-radius:1px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:absolute;left:12px;top:-40px;z-index:3;background:#000;color:var(--ink);font:13px ReaderMono,monospace;padding:8px 10px}.skip:focus{top:12px}.masthead{padding-top:var(--top, calc(16lvh + 205px) )}html.hole-low .masthead{padding-top:var(--top, 11svh)}section{scroll-margin-top:calc(13lvh + 225px)}html.hole-low section{scroll-margin-top:28px}h2[tabindex]:focus{outline:none}.name{font-size:32px!important;line-height:1.25!important;font-weight:700!important;color:var(--ink)}.lead{margin-top:10px!important;color:#d6cfbb;font-size:13px}.now{margin-top:14px!important;color:var(--meta)}.now [data-ink=label]{font-weight:700;color:var(--meta)}.now [data-ink=title]{font-weight:700;color:var(--ink)}.links{display:flex;flex-wrap:wrap;gap:0 2ch;margin-top:18px;font-size:15px}.links a{display:inline-block;padding:10px 0}.index{display:flex;flex-wrap:wrap;gap:0 2ch;margin-top:6px}.index a{display:inline-block;padding:10px 0;color:#cfc7b2}section{margin-top:132px}.masthead+.columns>.column>section:first-child{margin-top:96px}.column.made>section:first-child{margin-top:132px}section h2{font-weight:700!important;font-size:12px!important;color:var(--meta);letter-spacing:0;margin-bottom:20px!important}.entry{margin-bottom:26px}.row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 2ch}.row h3{font-weight:700;color:var(--ink)}.when{color:var(--meta);white-space:nowrap}.org{color:var(--meta)}.org[data-sky-waiting]:after{content:"";display:inline-block;width:.78ch;height:.8em;margin-left:1ch;vertical-align:-.06em;background:var(--meta);animation:blink 1.14s steps(1) infinite}.details{margin-top:6px!important}.details li{padding-left:2ch;text-indent:-2ch}.entry h3 a{color:var(--ink)}#papers .details a{color:#d6cfbb}#projects .details{color:var(--body)}.foot{margin-top:96px}.foot .colophon{margin-top:10px!important;color:#5f594c;font-size:11px}@keyframes blink{50%{opacity:0}}@media (min-width: 900px),(orientation: landscape) and (min-width: 600px){:root{--size: 14px;--pad: 0px}.sheet{margin-left:max(7vw,48px);max-width:58ch}.masthead{padding-top:20vh}.name{font-size:44px!important}.lead,.links{font-size:14px}section,.column.made>section:first-child{margin-top:96px}section,html.hole-low section{scroll-margin-top:18vh}}@media (min-width: 1180px) and (min-aspect-ratio: 5/4){:root{--left: max(4.5vw, 48px, calc((100vw - 1480px)/2) );--a: 52ch;--b: 36ch;--gutter: clamp(300px, calc(100vw - 2 * var(--left) - var(--a) - var(--b)), 720px)}.sheet{max-width:none;margin-left:var(--left);padding-right:var(--left)}.masthead{max-width:var(--a);padding-top:17vh}.columns{display:grid;grid-template-columns:var(--a) var(--gutter) var(--b);align-items:start}.column.work{grid-column:1}.column.made{grid-column:3}.column>section:first-child,.column.made>section:first-child{margin-top:112px}.foot{max-width:var(--a)}}html.gl .sheet,html.gl .sheet *{color:transparent!important;text-decoration-color:transparent!important}html.gl .sheet .org[data-sky-waiting]:after{background:transparent}html.gl .sheet ::selection{background:#e8e0c947;color:transparent}@media (prefers-reduced-motion: reduce){.org[data-sky-waiting]:after{animation:none}.sky .fallback{transition:none}}.grab{position:fixed;left:0;top:0;z-index:2;border-radius:50%;touch-action:none;cursor:grab;-webkit-tap-highlight-color:transparent}.grab.held{cursor:grabbing}html:not(.gl) .grab{display:none}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.grab{display:none}}html.gl.dom-debug .sheet,html.gl.dom-debug .sheet *{color:#ff282899!important}html.lens{scroll-behavior:smooth}html.lens{--size: 14px;--mark: 28px;--indent: 40px}.lens .name{font-size:36px!important;white-space:nowrap}.lens .lead{font-size:14px}.lens section h2{font-size:13px!important}.lens .sheet{max-width:none;margin-left:0;padding:0 var(--pad) 40vh}.lens .hero{position:relative;padding-top:calc(19lvh + 196px);display:grid;grid-template-columns:minmax(0,1fr) 27vw;column-gap:16px;align-items:start}.lens .hero-text{grid-column:1;grid-row:1}.lens .portrait{grid-column:2;grid-row:1;margin:34px 0 0}.lens .portrait img{display:block;width:100%;height:auto}.lens .hero .links,.lens .hero .index{grid-column:1 / -1}.lens .col{max-width:calc(44ch + var(--indent))}.lens .entry{padding-left:var(--indent)}.lens .row{position:relative}.lens .mark{position:absolute;left:calc(-1 * var(--indent));top:calc(.8em - var(--mark) / 2);width:var(--mark);height:var(--mark);opacity:.9}.lens .glyph{display:inline-block;width:1.5ch;height:1.5ch;margin-right:.5ch;vertical-align:-.22em;opacity:.9}html.gl.lens .mark,html.gl.lens .glyph{opacity:0}.lens section{scroll-margin-top:132px;margin-top:120px}.lens .col>section:first-child{margin-top:104px}@media (min-width: 900px),(orientation: landscape) and (min-width: 600px){html.lens{--size: 16px;--mark: 34px;--indent: 52px;--u: min(100lvh, 56.25vw);--left: clamp(48px, calc(100vw - .64 * var(--u) - 640px), 19vw);--hero-end: calc(100vw - .95 * var(--u));--pw: calc(.18 * var(--u));--hero-gap: 40px;--over: calc(-.03 * var(--u));--hero-text: 400px;--hero-left: clamp(48px, calc(var(--hero-end) + var(--over) - var(--pw) - var(--hero-gap) - var(--hero-text)), var(--left))}.lens .hero{margin-left:calc(var(--hero-left) - var(--left))}.lens .sheet{padding-left:var(--left);padding-right:0}.lens .hero{min-height:100lvh;box-sizing:border-box;padding:6lvh 0 10lvh;align-content:center;grid-template-columns:calc(var(--hero-end) + var(--over) - var(--pw) - var(--hero-gap) - var(--hero-left)) var(--pw);column-gap:var(--hero-gap)}.lens .hero .links{grid-row:2;grid-column:1}.lens .hero .index{grid-row:3;grid-column:1}.lens .name{font-size:64px!important}.lens .lead{font-size:18px;margin-top:18px!important}.lens .now,.lens .links{font-size:17px}.lens .index{font-size:16px}.lens section h2{font-size:15px!important}.lens .now{margin-top:18px!important}.lens .links{margin-top:26px}.lens .portrait{grid-column:2;grid-row:1 / 4;align-self:center;margin:0}.lens .col{max-width:min(calc(62ch + var(--indent)),calc(100vw - .72 * var(--u) - var(--left)))}.lens section,.lens .col>section:first-child{margin-top:96px;scroll-margin-top:14vh}.lens .col>section:first-child{margin-top:24px}}html.gl.lens .portrait img{opacity:0}@media (prefers-reduced-motion: reduce){html.lens{scroll-behavior:auto}}@media (min-width: 2200px) and (min-height: 1200px){html.lens{--size: 18px;--mark: 38px;--indent: 58px;--hero-text: 520px}.lens .name{font-size:84px!important}.lens .lead{font-size:22px}.lens .now,.lens .links{font-size:20px}.lens .index{font-size:18px}.lens section h2{font-size:17px!important}}
