@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-latin-400-italic.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-grotesk-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/space-grotesk-latin-500-normal.woff2)format("woff2")}:root{--bg:#000;--ink:#fff;--muted:#b5b5b5;--lede:#f2f2f2;--faint:#8f8f8f;--line:#ffffff29;--line-strong:#ffffff6b;--serif:"Instrument Serif", Georgia, serif;--sans:"Space Grotesk", "Segoe UI", sans-serif;--space:clamp(1.25rem, 4vw, 2.5rem);--measure:72rem;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;font-size:100%;line-height:1.5}body{background:var(--bg);text-rendering:optimizelegibility;min-height:100vh;margin:0;font-weight:400}::selection{color:#000;background:#fff}:focus{outline:none}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.skip-link{left:var(--space);z-index:20;color:#000;background:#fff;padding:.55rem .8rem;text-decoration:none;position:absolute;top:.75rem;transform:translateY(-150%)}.skip-link:focus,.skip-link:focus-visible{outline-offset:2px;outline:2px solid #000;transform:translateY(0)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:5;border-bottom:1px solid var(--line);background:#000;position:sticky;top:0}.header-inner{max-width:var(--measure);padding:.35rem var(--space);flex-wrap:wrap;align-items:center;gap:.25rem 1.5rem;margin:0 auto;display:flex}.header-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem 1.25rem;width:100%;display:flex}.brand{min-height:44px;color:inherit;letter-spacing:.01em;align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.nav-list,.lang-list,.contact-links,.not-found-links,.project-list{margin:0;padding:0;list-style:none}.nav-list,.lang-list{flex-wrap:wrap;align-items:center;gap:.25rem 1rem;display:flex}.nav-list a,.lang-list a{min-height:44px;color:var(--muted);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0 1px;align-items:center;font-size:.95rem;text-decoration:none;transition:background-size .2s,color .2s;display:inline-flex}.nav-list a:hover,.lang-list a:hover,.lang-list a[aria-current=true]{color:var(--ink);background-size:100% 1px}.hero{max-width:var(--measure);padding:clamp(4.5rem, 14vh, 9rem) var(--space) clamp(3rem, 8vh, 6rem);margin:0 auto}.eyebrow{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.75rem;font-weight:500}.hero-title{max-width:100%;margin:0}.name-line{max-width:100%;font-family:var(--serif);letter-spacing:-.035em;padding-bottom:.08em;padding-right:.08em;font-size:clamp(3.6rem,12vw,10.25rem);font-weight:400;line-height:.84;display:block;overflow:hidden}.name-line-inner{display:block}.name-line+.name-line{padding-left:clamp(1.25rem,8vw,7.5rem)}.lede,.intro{text-wrap:pretty;max-width:38rem}.lede{color:var(--lede);margin:2rem 0 0;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.45}html.is-motion .name-line-inner{transform:translateY(110%)}html.is-motion .name-line-inner.is-animating{transform:none}html.is-motion .project,html.is-motion .about-layout,html.is-motion .contact-email{opacity:0}html.is-motion .is-shown{opacity:1;visibility:visible}.section{max-width:var(--measure);padding:clamp(3.5rem, 8vw, 6.5rem) var(--space);border-top:1px solid var(--line);margin:0 auto;scroll-margin-top:5.5rem}.section-heading{color:var(--muted);font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:0 0 2rem;font-size:.75rem;font-weight:500;line-height:1.4}.project-list{border-top:1px solid var(--line)}.project{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.35rem 1.25rem;padding:1.75rem 0;display:grid}.project-index{color:var(--faint);font-family:var(--serif);margin:.35rem 0 0;font-size:1.75rem;font-style:italic;line-height:1}.project-name{font-family:var(--serif);letter-spacing:-.03em;margin:0 0 .75rem;font-size:clamp(2.35rem,5vw,3.75rem);font-weight:400;line-height:.95;transition:transform .2s}.project:hover .project-name{transform:translate(.35rem)}.project-summary{text-wrap:pretty;max-width:40rem;margin:0;font-size:1.05rem}.project-status{color:var(--muted);margin:.85rem 0 0}.project-link{margin:1rem 0 0}.project-link a,.contact-links a,.not-found-links a{color:var(--ink);text-underline-offset:.22em;overflow-wrap:anywhere;text-decoration-thickness:1px}a.external:after{content:"";border-top:1px solid;border-right:1px solid;width:.45em;height:.45em;margin-left:.4em;display:inline-block;transform:translateY(-.05em)rotate(45deg)}.about-layout{grid-template-columns:minmax(0,1fr);gap:2.5rem;display:grid}.about-copy{min-width:0}.intro{margin:0;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.55}.facts{grid-template-columns:minmax(0,1fr);min-width:0;margin:0;display:grid}.fact{border-top:1px solid var(--line);padding:.85rem 0}.fact dt{color:var(--faint);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:500}.fact dd{overflow-wrap:anywhere;margin:.2rem 0 0}.contact-email{max-width:100%;font-family:var(--serif);letter-spacing:-.03em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.35rem,6.2vw,4.15rem);line-height:1.05}.contact-email a{color:inherit;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;text-decoration:none}.contact-links{flex-wrap:wrap;gap:.75rem 1.5rem;margin-top:1.75rem;display:flex}.contact-links a{border-bottom:1px solid var(--line-strong);align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.site-footer{border-top:1px solid var(--line)}.footer-inner{max-width:var(--measure);padding:.75rem var(--space) 1.5rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;margin:0 auto;display:flex}.footer-credit{color:var(--muted);margin:0}.not-found{min-height:100vh;max-width:var(--measure);padding:var(--space);flex-direction:column;justify-content:center;margin:0 auto;display:flex}.not-found h1{max-width:100%;font-family:var(--serif);letter-spacing:-.03em;margin:0 0 1rem;font-size:clamp(3rem,8vw,6rem);font-weight:400;line-height:.95}.not-found p{color:var(--muted);margin:.35rem 0}.not-found-links{flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:1.75rem;display:flex}.not-found-links a{align-items:center;min-height:44px;display:inline-flex}@media (width>=720px){.header-tools{justify-content:flex-end;gap:.25rem 1.75rem;width:auto;margin-left:auto}.facts{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:2rem}.about-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:4rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.project:hover .project-name,html.is-motion .name-line-inner,html.is-motion .name-line-inner.is-animating{transform:none}html.is-motion .project,html.is-motion .about-layout,html.is-motion .contact-email{opacity:1}}
