.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}:root{color-scheme:light;--ink:#111;--muted:#8b8b8b;--paper:#fff;--stage:#f3f3f1;--blue:#1616d8;--line:#ddd;--page:min(1500px, calc(100vw - 72px));--header-height:132px;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}html.home-page-root,html.home-page-root body{overscroll-behavior-y:none;background:var(--paper)}body{background:var(--paper);color:var(--ink);margin:0;font-size:16px;line-height:1.45}a{color:inherit;text-underline-offset:.16em;text-decoration-thickness:1px}img{max-width:100%;display:block}button{color:inherit;font:inherit}h1,h2,h3,p{margin-top:0}::selection{background:#d7d7ff}.skip-link{z-index:100;background:var(--ink);color:var(--paper);padding:10px 14px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:16px}.sr-only{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:30;width:var(--page);height:var(--header-height);grid-template-columns:1fr auto;align-items:center;margin:auto;display:grid;position:relative}.wordmark{letter-spacing:.11em;text-transform:uppercase;width:fit-content;font-size:.78rem;font-weight:700;text-decoration:none}.site-nav{align-items:center;gap:32px;display:flex}.site-nav a{font-size:.82rem;text-decoration:none}.site-nav a:hover{color:#555}.site-nav a[aria-current=page]{color:#b8b8b8}.menu-toggle{cursor:pointer;background:0 0;border:0;font-size:.8rem;display:none}.hero-scroll-stage{z-index:1;aspect-ratio:21/8;background:0 0;width:100%;position:relative;overflow:hidden}.hero-slideshow{z-index:0;background:var(--stage);isolation:isolate;pointer-events:none;width:100vw;height:100svh;position:fixed;inset:0;overflow:hidden}.hero-slide{opacity:0;margin:0;transition:opacity .85s;position:absolute;inset:0}.hero-slide.is-active{z-index:2;opacity:1}.hero-slide img{object-fit:cover;object-position:center;width:100%;height:100%}.home-foreground{z-index:2;background:var(--paper);position:relative}.home-page .site-header:before,.home-page .site-footer:before{z-index:-1;content:"";background:var(--paper);width:100vw;position:absolute;left:50%;transform:translate(-50%)}.home-page .site-header:before{top:-100vh;bottom:0}.home-page .site-footer:before{top:0;bottom:0}.home-page .site-footer{z-index:2;position:relative}.home-introduction{width:var(--page);margin:auto;padding:clamp(90px,10vw,170px) 0 clamp(100px,12vw,190px)}.home-introduction h1,.home-introduction>p{letter-spacing:-.018em;max-width:1320px;margin-bottom:0;font-size:clamp(.8rem,2.3vw,1.4rem);font-weight:400;line-height:1.52}.home-introduction>p{margin-top:clamp(65px,7vw,115px)}.home-introduction a{color:#555;text-decoration:none}.home-introduction a:hover{color:var(--ink);text-decoration:underline}.home-links{flex-direction:column;align-items:flex-start;gap:2px;margin-top:80px;font-size:1.15rem;display:flex}.selected-work-section{width:var(--page);border-top:1px solid var(--line);margin:auto;padding:30px 0 clamp(120px,14vw,210px)}.selected-work-header{justify-content:space-between;margin-bottom:70px;display:flex}.selected-work-header h2,.selected-work-header a{margin:0;font-size:1rem;font-weight:400;text-decoration:none}.selected-work-header a:hover{color:var(--blue)}.selected-work-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3vw,56px);display:grid}.section-shell{width:var(--page);border-top:1px solid var(--line);margin-inline:auto;padding-block:110px}.eyebrow,.section-number{letter-spacing:.1em;text-transform:uppercase;font-size:.7rem}.eyebrow:before{content:"";background:var(--blue);width:34px;height:1px;margin:0 10px 4px 0;display:inline-block}.arrow-link{text-transform:uppercase;letter-spacing:.05em;gap:8px;font-size:.78rem;text-decoration:none;display:inline-flex}.arrow-link:hover{color:var(--blue)}.page-hero{border-top:0;min-height:65vh;padding-top:10vw}.page-hero h1,.cv-page h1,.not-found h1{letter-spacing:-.06em;max-width:1200px;margin:.38em 0;font-size:clamp(4rem,9vw,9rem);font-weight:400;line-height:.9}.page-hero h1 em{color:var(--blue);font-style:normal}.page-hero>p:last-child{color:#555;max-width:680px;margin:50px 0 0 34%;font-size:1.15rem}.work-page{border-top:0;padding-top:clamp(150px,23vh,270px)}.work-filters{flex-wrap:wrap;gap:10px 26px;margin-bottom:clamp(56px,7vw,100px);display:flex}.work-filters button{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;font-size:.78rem}.work-filters button:hover{color:#555}.work-filters button[aria-pressed=true]{color:#b8b8b8}.publication-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(72px,8vw,135px) clamp(38px,5vw,76px);width:min(75vw,1380px);display:grid}.publication-card{min-width:0}.publication-card[hidden]{display:none}.publication-preview{aspect-ratio:1;background:var(--stage);border:1px solid var(--line);display:block;overflow:hidden}.publication-preview img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.publication-card:hover .publication-preview img{transform:scale(1.018)}.publication-card h2{letter-spacing:.025em;margin:12px 0 0;font-size:clamp(.72rem,.8vw,.86rem);font-weight:400;line-height:1.35;transition:font-weight .15s}.publication-card h2 span{white-space:nowrap}.publication-card:hover h2,.publication-card:focus-within h2{font-weight:700}.publication-preview:focus-visible{outline:1px solid var(--ink);outline-offset:5px}.publication-resources{gap:16px;margin-top:9px;font-size:.72rem;display:flex}.publication-resources a{color:#555;font-style:italic;text-decoration:none}.publication-resources a:hover{color:var(--ink);text-decoration:underline}.work-detail{border-top:0;padding-top:clamp(100px,14vw,210px)}.work-detail-label{color:var(--muted);margin-bottom:24px;font-size:.78rem}.work-detail h1{letter-spacing:-.04em;max-width:1050px;margin-bottom:clamp(55px,7vw,100px);font-size:clamp(2.2rem,5vw,5.5rem);font-weight:400;line-height:1.05}.work-detail-image{object-fit:contain;object-position:left center;width:min(100%,1100px);max-height:80vh}.work-detail-resources{gap:24px;margin-top:28px;display:flex}.work-detail-resources a{color:#555;font-style:italic;text-decoration:none}.work-detail-resources a:hover{color:var(--ink);text-decoration:underline}.information-page{border-top:0;grid-template-columns:minmax(250px,1fr) minmax(0,2fr);gap:clamp(70px,9vw,150px);min-height:78vh;padding-top:clamp(130px,18vh,220px);padding-bottom:clamp(130px,15vw,220px);font-size:clamp(.82rem,.95vw,.96rem);display:grid}.information-column{min-width:0}.information-left{flex-direction:column;min-height:610px;display:flex}.information-section h2{margin:0 0 24px;font-size:1em;font-weight:700}.information-list{gap:48px;display:grid}.information-entry h3{margin:7px 0 5px;font-size:1em;font-weight:600;line-height:1.4}.information-entry p,.information-row p{margin-bottom:3px}.information-date,.information-note,.information-role{color:#666}.information-date{font-size:.84em}.information-note{font-size:.9em}.information-cv-link{width:fit-content;color:var(--muted);margin-top:auto;text-decoration:none}.information-cv-link:hover{color:var(--ink)}.information-right{gap:clamp(70px,8vw,115px);display:grid}.information-link{color:#555;text-decoration:none}.information-link:hover{color:var(--ink);text-decoration:underline}.information-rows{gap:17px;display:grid}.information-row{grid-template-columns:minmax(105px,135px) 1fr;gap:22px;line-height:1.55;display:grid}.information-row strong{font-weight:600}.information-role{font-size:.92em}.photo-page{border-top:0;min-height:75vh;padding-top:clamp(75px,9vw,140px)}.photo-grid{columns:3;column-gap:clamp(16px,2vw,32px)}.photo-item{break-inside:avoid;margin:0 0 clamp(16px,2vw,32px)}.photo-item img{width:100%;height:auto}.not-found{border-top:0;min-height:75vh;padding-top:10vw}.not-found>p:not(.eyebrow){color:#555;max-width:600px;font-size:1.1rem}.not-found h1{font-size:clamp(4rem,10vw,10rem)}.site-footer{width:var(--page);border-top:1px solid var(--line);margin:0 auto;padding:32px 0 38px;font-size:.82rem}.site-footer p{color:var(--muted);margin:0}[data-reveal]{opacity:1}@media (scripting:enabled) and (prefers-reduced-motion:no-preference){[data-reveal]{opacity:0}}@media (width<=1000px){:root{--page:calc(100vw - 40px)}.selected-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:70px 32px}.publication-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.photo-grid{columns:2}}@media (width<=720px){:root{--page:calc(100vw - 28px);--header-height:98px}.site-header{height:var(--header-height);grid-template-columns:1fr auto}.menu-toggle{display:block}.site-nav{top:var(--header-height);background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:18px;padding:22px 14px;display:none;position:absolute;left:-14px;right:-14px}.site-nav[data-open]{display:flex}.hero-scroll-stage{aspect-ratio:1}.hero-slideshow{height:calc(100vw + var(--header-height));bottom:auto}.home-introduction{padding:72px 0 105px}.home-introduction h1,.home-introduction>p{font-size:clamp(1rem,5.8vw,1.2rem);line-height:1.5}.home-introduction>p{margin-top:52px}.home-links{margin-top:55px;font-size:1rem}.selected-work-section{padding-bottom:120px}.selected-work-header{margin-bottom:45px}.selected-work-grid{grid-template-columns:1fr;gap:75px}.section-shell{padding-block:80px}.page-hero h1{font-size:clamp(3.3rem,16vw,6rem)}.page-hero>p:last-child{margin-left:0}.work-page{padding-top:100px}.work-filters{gap:10px 18px;margin-bottom:55px}.publication-grid{grid-template-columns:1fr;gap:70px;width:100%}.information-page{grid-template-columns:1fr;gap:95px;padding-top:95px}.information-left{min-height:0}.information-cv-link{margin-top:65px}.information-right{gap:75px}.information-row{grid-template-columns:1fr;gap:3px}.photo-page{padding-top:55px}.photo-grid{columns:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-slide:not(:first-child){display:none}.hero-slide:first-child{opacity:1}.hero-slide img{height:100%}}
