@font-face{font-family:Libre Caslon Text;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/libre-caslon-text-latin-ext-400-normal.C9ASObbr.woff2)format("woff2"),url(/_astro/libre-caslon-text-latin-ext-400-normal.ll1HhAxb.woff)format("woff");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:Libre Caslon Text;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/libre-caslon-text-latin-400-normal.CfldDPV-.woff2)format("woff2"),url(/_astro/libre-caslon-text-latin-400-normal.WtjoQ5sB.woff)format("woff");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{--slate:#2a3038;--ink:#f7f5f2;--ink-muted:#b4b8bf;--rule:color-mix(in srgb, var(--ink) 32%, transparent);--focus:color-mix(in srgb, var(--ink) 55%, transparent);--measure:38rem;--page-pad:clamp(1.5rem, 4vw, 3rem);color-scheme:dark}*,:before,:after{box-sizing:border-box}html{background:var(--slate);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Libre Caslon Text,Iowan Old Style,Palatino Linotype,Palatino,serif;font-size:112.5%;line-height:1.55}body{background:var(--slate);min-height:100vh;color:var(--ink);margin:0}::selection{background:color-mix(in srgb, var(--ink) 22%, var(--slate));color:var(--ink)}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{color:var(--ink);text-decoration-thickness:1.5px}a:focus-visible{outline:1px solid var(--focus);outline-offset:4px}img{max-width:100%;height:auto}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-shell--home{justify-content:center}.site-main{width:min(100%, calc(var(--measure) + 8rem));padding:var(--page-pad);flex:1;margin-inline:auto}.site-shell--home .site-main{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:none;padding-block:clamp(4rem,12vh,8rem);display:flex}.brand{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(1.85rem,4.2vw,3rem);font-weight:400;line-height:1.15}.brand a{text-decoration:none}.brand a:hover{opacity:.88;text-decoration:none}.brand-rule{background:var(--rule);border:0;width:min(12rem,42vw);height:1px;margin:1.35rem auto 1.75rem;display:block}.site-nav{letter-spacing:.01em;flex-wrap:wrap;justify-content:center;gap:clamp(1.25rem,4.5vw,3.25rem);margin:0;padding:0;font-size:1rem;list-style:none;display:flex}.site-nav a{color:var(--ink-muted);text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink);text-underline-offset:.28em;text-decoration:underline 1px}.site-header{width:min(100%, calc(var(--measure) + 8rem));padding:var(--page-pad);text-align:center;margin-inline:auto;padding-bottom:0}.site-header .brand{font-size:clamp(1.25rem,2.4vw,1.55rem)}.site-header .brand-rule{width:min(8rem,30vw);margin-block:1rem 1.25rem}.page-title{letter-spacing:-.02em;text-align:center;margin:0 0 1rem;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:400;line-height:1.2}.prose{max-width:var(--measure);color:var(--ink-muted);text-align:center;margin-inline:auto}.prose p{margin:0 0 1.1rem}.prose p:last-child{margin-bottom:0}.prose a{color:var(--ink)}.project-list{max-width:var(--measure);text-align:center;margin:2rem auto 0;padding:0;list-style:none}.project-list li{border-top:1px solid var(--rule);padding:1.25rem 0}.project-list li:last-child{border-bottom:1px solid var(--rule)}.project-list a{color:var(--ink);font-size:1.25rem;text-decoration:none}.project-list a:hover{text-decoration:underline}.project-list p{color:var(--ink-muted);margin:.45rem 0 0;font-size:.98rem}.empty-note{max-width:var(--measure);color:var(--ink-muted);text-align:center;margin:2rem auto 0;font-style:italic}.site-footer{width:min(100%, calc(var(--measure) + 8rem));padding:2.5rem var(--page-pad) var(--page-pad);text-align:center;color:var(--ink-muted);margin-inline:auto;font-size:.85rem;line-height:1.6}.site-footer p{margin:0}.site-footer a{color:var(--ink-muted)}.site-footer a:hover{color:var(--ink)}.site-shell--home .site-footer{inset-inline:0;width:100%;max-width:none;position:absolute;bottom:0}.site-shell--home{position:relative}
