@font-face{font-family:Spectral;src:url('assets/fonts/Spectral-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Spectral;src:url('assets/fonts/Spectral-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Spectral;src:url('assets/fonts/Spectral-Italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
:root{--ink:#41413c;--muted:#898981;--paper:#fff;--sidebar:#efefec;--side-width:31%;--line:#b9b9b0;--accent:#dce4a1}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Spectral,Georgia,serif;font-size:13px;line-height:1.28;font-weight:400}a{color:inherit;text-decoration-thickness:.7px;text-underline-offset:2px}button{font:inherit;color:inherit}a:hover{color:#151511}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #77794d;outline-offset:4px}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-size:inherit}h1{font-weight:700}p{margin-bottom:14px}button.plain-button{background:none;border:0;border-radius:0;padding:0;text-decoration:underline;text-underline-offset:3px}.screenreader-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;left:12px;top:-60px;background:#fff;padding:9px;z-index:2000}.skip-link:focus{top:10px}
#main{width:calc(100% - var(--side-width));padding:18px 22px 42px;min-height:100vh;outline:none}.sidebar{position:fixed;right:0;top:0;width:var(--side-width);height:100dvh;background:var(--sidebar);overflow-y:auto;overscroll-behavior:contain;padding:17px 18px 22px;font-size:12.1px;line-height:1.29}.sidebar-inner{max-width:520px}.sidebar-heading h1{font-size:15.5px;font-style:italic;margin:0 0 16px}.sidebar-heading h1 a{text-decoration:none}.biography p{margin-bottom:16px}.sidebar-section{margin-top:20px}.sidebar-section h2{font-weight:400;font-style:italic;font-size:12.1px;margin-bottom:9px}.sidebar-section p{margin-bottom:10px}.recognition ul{margin:0;padding:0;list-style:none}.recognition li{padding-left:10px;text-indent:-10px;margin:0 0 5px}.recognition li:before{content:'– ';}.sidebar-navigation{display:grid;grid-template-columns:1.45fr 1fr;gap:14px;border-top:1px dashed var(--line);margin-top:24px;padding-top:18px}.category-nav{display:flex;flex-direction:column;gap:13px}.category-nav a{display:block;line-height:1.25}.nav-symbol{display:inline-block;width:19px;text-decoration:none;text-align:left;font-family:Georgia,serif}.category-nav a[aria-current=page]{font-weight:700}.category-nav a[aria-current=page] .nav-symbol{background:var(--accent)}.category-nav small{font-size:10px;opacity:.6;margin-left:4px}.sidebar-links>a{display:block;margin-bottom:6px}.contact-label{margin-top:34px;font-size:11.5px;overflow-wrap:anywhere}.copyright{font-size:10.5px;color:var(--muted);margin:38px 0 0}.mobile-header,.mobile-close,.mobile-scrim{display:none}
.index-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:0 0 36px}.index-heading h2{font-size:18px;font-weight:700;margin:0}.index-heading .index-period{font-size:11px;color:var(--muted);white-space:nowrap}.project-list{display:flex;flex-direction:column;gap:56px}.project-row{display:grid;grid-template-columns:minmax(0,31%) minmax(0,1fr) minmax(100px,17%);gap:22px;align-items:start;min-height:170px}.project-cover{display:block;text-decoration:none}.project-cover img{width:100%;height:auto;aspect-ratio:1.38;object-fit:cover;background:#f7f7f4;transition:opacity .18s ease}.project-cover:hover img{opacity:.83}.project-row:nth-child(4n+2) .project-cover img{aspect-ratio:1.1;object-fit:contain}.project-row:nth-child(4n+3) .project-cover img{aspect-ratio:1.64}.project-row h3{font-weight:700;font-size:13.5px;margin:0 0 10px;line-height:1.28}.project-summary{font-size:12.7px;line-height:1.29;margin:0}.project-meta{font-size:11.6px;line-height:1.3;overflow-wrap:anywhere}.project-meta p{margin:0 0 12px}.project-number{font-size:10.7px;color:var(--muted);margin-bottom:6px;display:block}.type-symbols{font-size:12px;letter-spacing:3px}.index-footer{margin-top:80px;border-top:1px dashed var(--line);padding-top:15px;display:flex;justify-content:space-between;color:var(--muted);font-size:11px}
.project-topbar{display:flex;justify-content:space-between;gap:15px;font-size:11.5px;margin:0 0 22px}.detail-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin:0 0 32px}.detail-heading h2{font-size:20px;margin:0;line-height:1.2}.detail-heading .project-year{font-size:12px;color:var(--muted)}.project-layout{display:grid;grid-template-columns:30% minmax(0,1fr);gap:26px;align-items:start}.project-facts{font-size:11.7px;line-height:1.33;position:sticky;top:18px}.project-facts h3{font-weight:400;font-style:italic;margin-bottom:16px}.project-facts dl{margin:0}.project-facts dt{margin-top:16px;color:var(--muted);font-style:italic}.project-facts dd{margin:3px 0 0}.project-facts .project-credit{margin-top:25px;font-size:11px}.project-story{min-width:0}.project-lede{font-size:13px;line-height:1.35;margin-bottom:18px}.role-copy{font-size:12px;line-height:1.35;margin-bottom:25px}.role-copy strong{font-weight:700}.artwork{margin:0;min-width:0}.image-button{display:block;position:relative;border:0;border-radius:0;background:#fff;padding:0;width:100%;cursor:zoom-in;text-align:left}.image-button img{width:100%;height:auto;object-fit:contain;background:white}.image-button:after{content:'↗';position:absolute;right:8px;bottom:8px;opacity:0;background:rgba(255,255,255,.86);padding:0 4px;color:#292923;transition:opacity .15s}.image-button:hover:after,.image-button:focus-visible:after{opacity:1}.artwork figcaption{font-size:10.7px;line-height:1.3;color:var(--muted);margin-top:7px}.hero-artwork{margin:0 0 38px}.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 19px;align-items:start}.project-gallery .full{grid-column:1/-1}.project-gallery .portrait img{max-height:610px}.project-ending{font-size:11.5px;margin-top:35px;border-top:1px dashed var(--line);padding-top:17px}.project-next{display:flex;justify-content:space-between;gap:20px;margin-top:46px;padding-top:17px;border-top:1px dashed var(--line);font-size:12px}
.about-view{max-width:850px;padding:32px 0 50px}.about-view h2{font-size:28px;font-weight:400;margin:0 0 8px}.about-view .about-subtitle{font-size:14px;color:var(--muted);margin-bottom:60px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 55px}.about-grid section{border-top:1px dashed var(--line);padding-top:12px}.about-grid h3{font-size:14px;font-style:italic;font-weight:400;margin-bottom:24px}.about-grid p{font-size:13px;line-height:1.4}.about-grid .wide{grid-column:1/-1}.about-contact{margin-top:48px}.empty-state,.loading-state{padding:50px 0;font-size:16px}.load-error{max-width:500px;margin:40px 0}
#lightbox{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;margin:0;padding:16px 22px;background:#f7f7f3;color:var(--ink);font:13px/1.3 Spectral,Georgia,serif;overflow:hidden}#lightbox::backdrop{background:rgba(255,255,255,.93)}#lightbox[open]{display:flex;flex-direction:column}.lightbox-toolbar{display:flex;justify-content:space-between;gap:24px;align-items:center;flex:0 0 34px}.lightbox-stage{min-height:0;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:20px 12px}.lightbox-image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:none}.lightbox-bottom{display:flex;align-items:baseline;justify-content:space-between;gap:25px;padding-top:10px;flex:0 0 auto}.lightbox-caption{margin:0;max-width:70%;font-size:12px}.lightbox-controls{display:flex;gap:20px;align-items:center;white-space:nowrap}.lightbox-counter{font-size:11px;color:var(--muted)}body.modal-open{overflow:hidden}
@media(min-width:1700px){body{font-size:14px}#main{padding:22px 28px 55px}.sidebar{padding:22px 25px;font-size:13px}.sidebar-section h2{font-size:13px}.project-row{gap:32px;min-height:210px}.project-row h3{font-size:15.5px}.project-summary{font-size:14px}.project-meta{font-size:12.5px}.project-list{gap:70px}.project-facts{font-size:12.8px}.project-lede{font-size:14px}.role-copy{font-size:13px}}
@media(max-width:1100px) and (min-width:761px){:root{--side-width:34%}.sidebar{font-size:11.3px;padding:14px}.sidebar-section h2{font-size:11.5px}.sidebar-navigation{grid-template-columns:1fr;gap:22px}.sidebar-links{display:flex;gap:15px;flex-wrap:wrap}.contact-label{width:100%;margin:5px 0 0}.project-row{grid-template-columns:34% 1fr;gap:17px}.project-meta{grid-column:2;display:flex;gap:12px}.project-meta p{margin:0}.type-symbols{display:none}.project-layout{grid-template-columns:27% 1fr;gap:20px}}
@media(max-width:760px){:root{--side-width:0px}body{font-size:14px;line-height:1.35}.mobile-header{display:flex;position:sticky;top:0;z-index:40;background:var(--sidebar);padding:15px 17px;justify-content:space-between;align-items:baseline;border-bottom:1px solid #e1e1dc}.name-link{font-size:17px;font-weight:700;font-style:italic;text-decoration:none}.menu-toggle{font-size:12px}#main{width:100%;padding:23px 17px 45px}.sidebar{width:min(90vw,420px);z-index:70;transform:translateX(101%);transition:transform .22s ease;font-size:13px;padding:19px}.sidebar.is-open{transform:translateX(0)}.sidebar-heading{display:flex;justify-content:space-between;gap:20px}.sidebar-heading h1{font-size:18px}.mobile-close{display:block;font-size:24px;line-height:1}.mobile-scrim.is-open{display:block;position:fixed;inset:0;z-index:60;background:rgba(36,36,30,.17);border:0;width:100%;height:100%}.sidebar-section h2{font-size:13px}.sidebar-navigation{grid-template-columns:1.35fr 1fr}.index-heading{margin-bottom:32px}.index-heading h2{font-size:19px}.index-heading .index-period{font-size:10.5px}.project-list{gap:41px}.project-row{grid-template-columns:minmax(0,38%) minmax(0,1fr);gap:11px 16px;min-height:0}.project-row h3{font-size:14px;margin-bottom:9px}.project-summary{font-size:12.5px;line-height:1.35}.project-meta{grid-column:2;display:flex;gap:14px;flex-wrap:wrap;font-size:10.5px;margin-top:-4px}.project-meta p{margin:0}.type-symbols{display:none}.project-row:nth-child(n) .project-cover img{aspect-ratio:1.15;object-fit:cover}.project-number{font-size:9.5px}.detail-heading{margin-bottom:23px}.detail-heading h2{font-size:22px}.project-layout{grid-template-columns:1fr;gap:26px}.project-facts{position:static;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;font-size:11.7px}.project-facts h3{grid-column:1/-1;margin:0}.project-facts dl{display:contents}.project-facts dt{margin-top:0}.project-facts dd{margin-top:3px}.project-facts dl>div{min-width:0}.project-credit{grid-column:1/-1;margin:2px 0 0!important}.project-lede{font-size:14px}.role-copy{font-size:12.6px}.project-gallery{gap:26px 13px}.hero-artwork{margin-bottom:28px}.artwork figcaption{font-size:10.4px}.about-view{padding-top:5px}.about-view h2{font-size:28px}.about-view .about-subtitle{margin-bottom:40px}.about-grid{gap:25px;grid-template-columns:1fr}.about-grid .wide{grid-column:auto}.project-next{font-size:11px}.index-footer{font-size:10px;gap:15px}.index-footer span:last-child{text-align:right}#lightbox{padding:12px}.lightbox-toolbar{font-size:12px}.lightbox-stage{padding:15px 0}.lightbox-bottom{display:block}.lightbox-caption{max-width:100%;font-size:11px}.lightbox-controls{justify-content:space-between;margin-top:16px;gap:12px;padding-bottom:4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.sidebar,.mobile-header,.mobile-scrim,.project-topbar,#lightbox,.project-next{display:none!important}#main{width:100%;padding:0}.project-row{break-inside:avoid}.project-layout{grid-template-columns:25% 1fr}.project-facts{position:static}a{text-decoration:none}}
@media(min-width:761px){.project-cover img,.project-row:nth-child(4n+2) .project-cover img,.project-row:nth-child(4n+3) .project-cover img{height:auto;aspect-ratio:auto;object-fit:contain;background:#fff;max-height:330px}}
@media(max-width:760px){body.menu-open{overflow:hidden}}
