:root{--paper:#faf9f7;--ink:#16150f;--ink-quiet:#56524b;--rule:#e0ddd6;--plate-backdrop:#ebe8e2;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;--step--1:.8125rem;--step-0:.9375rem;--step-1:1.0625rem;--step-2:clamp(1.25rem, .9rem + 1.1vw, 1.6rem);--step-3:clamp(1.6rem, 1rem + 2.2vw, 2.6rem);--measure-text:36rem;--measure-plate:76rem;--gutter:1.25rem;--plate-gap:6rem;--grid-gap:2rem}@media (width>=48rem){:root{--gutter:2.5rem;--plate-gap:9rem;--grid-gap:2.75rem}}@media (width>=68rem){:root{--gutter:3rem;--plate-gap:11rem;--grid-gap:3.5rem}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--step-0);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:.18em;text-decoration-line:underline;text-decoration-thickness:1px;text-decoration-color:var(--rule)}a:hover,a:focus-visible{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}h1,h2,h3{letter-spacing:-.018em;margin:0;font-weight:500;line-height:1.15}p{margin:0 0 1.15em}p:last-child{margin-bottom:0}strong{font-weight:600}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--ink);color:var(--paper);z-index:10;padding:.6rem 1rem;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.shell{width:100%;max-width:var(--measure-plate);padding-inline:var(--gutter);margin-inline:auto}.prose{max-width:var(--measure-text);font-size:var(--step-1);line-height:1.7}.prose h2{font-size:var(--step-0);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-quiet);margin-top:3rem;margin-bottom:.7rem}.site-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 2rem;padding-top:2rem;padding-bottom:3rem;display:flex}@media (width>=48rem){.site-header{padding-top:2.75rem;padding-bottom:4.5rem}}.wordmark{font-size:var(--step-1);letter-spacing:.005em;font-weight:500;text-decoration:none}.wordmark:hover,.wordmark:focus-visible{text-underline-offset:.18em;text-decoration:underline 1px}.site-nav{font-size:var(--step--1);letter-spacing:.02em;flex-wrap:wrap;gap:1.25rem;display:flex}.site-nav a{color:var(--ink-quiet);text-decoration:none}.site-nav a:hover,.site-nav a:focus-visible{color:var(--ink);text-underline-offset:.18em;text-decoration:underline 1px}.site-nav a[aria-current=page]{color:var(--ink)}.site-footer{border-top:1px solid var(--rule);font-size:var(--step--1);color:var(--ink-quiet);flex-wrap:wrap;justify-content:space-between;gap:.4rem 2rem;margin-top:9rem;padding-top:1.75rem;padding-bottom:4rem;display:flex}.site-footer p{margin:0}.page-head{max-width:var(--measure-text);margin-bottom:3rem}.page-head h1{font-size:var(--step-3)}.label{font-size:var(--step--1);letter-spacing:.11em;text-transform:uppercase;color:var(--ink-quiet);margin:0 0 .6rem}.project-meta>*+:before,.project-meta-inline>*+:before{content:"·";margin:0 .5em}.index-intro{max-width:var(--measure-text);font-size:var(--step-1);color:var(--ink-quiet);margin:0 0 3rem}@media (width>=48rem){.index-intro{margin-bottom:4rem}}.index-item>a{color:inherit;text-decoration:none;display:block}.index-figure{background:var(--plate-backdrop);margin:0;overflow:hidden}.index-figure img{width:100%;transition:opacity .13s linear}@media (prefers-reduced-motion:reduce){.index-figure img{transition:none}}.index-item>a:hover .index-figure img,.index-item>a:focus-visible .index-figure img{opacity:.86}.index-caption{max-width:34rem;padding-top:.9rem}.index-caption h2{font-size:var(--step-2);display:inline}.index-item>a:hover .index-caption h2,.index-item>a:focus-visible .index-caption h2{text-underline-offset:.16em;text-decoration:underline 1px}.index-caption .excerpt{color:var(--ink-quiet);font-size:var(--step-0);margin:.5rem 0 0}.index-caption .project-meta{font-size:var(--step--1);color:var(--ink-quiet);font-variant-numeric:tabular-nums;margin:.45rem 0 0}.index-lead{margin-bottom:calc(var(--plate-gap) * .7)}.index-lead .index-caption{max-width:var(--measure-text);padding-top:1.1rem}@media (width>=48rem){.index-lead .index-caption h2{font-size:var(--step-3)}}.index-grid{gap:var(--plate-gap) var(--grid-gap);grid-template-columns:1fr;display:grid}@media (width>=48rem){.index-grid{gap:calc(var(--plate-gap) * .55) var(--grid-gap);grid-template-columns:1fr 1fr}}.index-grid .index-figure img{aspect-ratio:3/2;object-fit:cover;height:auto}.pending{margin-top:calc(var(--plate-gap) * .75);border-top:1px solid var(--rule);padding-top:1.25rem}.pending-list{max-width:var(--measure-text);margin:0;padding:0;list-style:none}.pending-item+.pending-item{border-top:1px solid var(--rule)}.pending-item>a{padding:1.6rem 0;text-decoration:none;display:block}.pending-item h3{font-size:var(--step-1);display:inline}.pending-item>a:hover h3,.pending-item>a:focus-visible h3{text-underline-offset:.16em;text-decoration:underline 1px}.pending-item .excerpt{color:var(--ink-quiet);font-size:var(--step--1);margin:.4rem 0 0}.plates{margin-top:calc(var(--plate-gap) * .8)}.plate{margin:0}.plate+.plate{margin-top:var(--plate-gap)}.plate picture{display:block}.plate img{background:var(--plate-backdrop);width:auto;max-width:100%;height:auto;max-height:86svh}@media (width<=47.99rem){.plate img{width:100%;max-height:none}}.plate figcaption{font-size:var(--step--1);color:var(--ink-quiet);max-width:var(--measure-text);margin-top:.85rem;line-height:1.55}.plate .caption-text{color:var(--ink);display:block}.plate .record{font-variant-numeric:tabular-nums;display:block}.plate .record>*+:before{content:"·";margin:0 .5em}.no-plates{border-top:1px solid var(--rule);max-width:var(--measure-text);font-size:var(--step--1);color:var(--ink-quiet);margin-top:3.5rem;padding-top:1.25rem}.project-nav{margin-top:calc(var(--plate-gap) * .9);border-top:1px solid var(--rule);font-size:var(--step--1);flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;padding-top:1.25rem;display:flex}.project-nav a{color:var(--ink-quiet);text-decoration:none}.project-nav a:hover,.project-nav a:focus-visible{color:var(--ink);text-underline-offset:.16em;text-decoration:underline 1px}.project-nav .direction{letter-spacing:.11em;text-transform:uppercase;margin-bottom:.2rem;display:block}.project-nav .to-next{text-align:right;margin-left:auto}.cv-section{max-width:var(--measure-text);margin-top:3.5rem}.cv-section h2{font-size:var(--step-0);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-quiet);border-bottom:1px solid var(--rule);padding-bottom:.6rem}.cv-list{margin:0;padding:0;list-style:none}.cv-list li{border-bottom:1px solid var(--rule);grid-template-columns:4.5rem 1fr;gap:0 1rem;padding:.75rem 0;display:grid}.cv-list .year{color:var(--ink-quiet);font-variant-numeric:tabular-nums}.cv-empty{color:var(--ink-quiet);padding-top:.9rem}.contact-list{max-width:var(--measure-text);margin:0}.contact-list>div{border-bottom:1px solid var(--rule);padding:1.3rem 0}.contact-list>div:first-child{border-top:1px solid var(--rule)}.contact-list dt{font-size:var(--step--1);letter-spacing:.11em;text-transform:uppercase;color:var(--ink-quiet);margin-bottom:.35rem}.contact-list dd{margin:0}
