@import url("https://api.fontshare.com/v2/css?f[]=switzer@400,500&display=swap");:root{--bg:#ffffff;--text:#141412;--hover-gray:#a3a39c;--border:rgba(20,20,18,0.12);--gutter-x:18px;--font-serif:Cochin,"Big Caslon",Georgia,serif;--font-sans:"Switzer",-apple-system,"Segoe UI",Roboto,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.site-footer{margin-top:60px;padding:20px 0 0;border-top:.5px solid var(--border);font-size:11px;color:var(--text);text-transform:uppercase;letter-spacing:.03em;display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px}.site-footer p{margin:0}.site-footer a:hover{color:var(--text)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}img{display:block;max-width:100%}.site-shell{max-width:1500px;margin:0 auto;padding:0 28px 20px;padding-top:var(--sticky-offset,65px);transition:padding-top .35s ease;min-height:100vh;display:flex;flex-direction:column}.page-content{flex:1 0 auto}.site-header-outer{position:fixed;top:0;left:0;right:0;z-index:45;background:var(--bg);max-width:1500px;margin:0 auto;padding:0 28px}.site-header{background:var(--bg);display:flex;align-items:baseline;justify-content:space-between;padding:max(24px,env(safe-area-inset-top)) 0 18px;border-bottom:.5px solid var(--border)}.site-header__name{font-family:var(--font-serif);font-size:19px;margin:0}.site-header__name-bold{font-weight:700}.site-header__name-regular{font-weight:400}.site-header__nav{display:flex;gap:22px}.site-header__nav a{font-family:var(--font-sans);font-weight:500;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.site-header__nav a:hover{color:var(--hover-gray)}.site-header__nav-btn{font-family:var(--font-sans);font-weight:500;font-size:12px;letter-spacing:.04em;text-transform:uppercase;background:none;border:none;padding:0;margin:0;color:inherit;cursor:pointer}.site-header__nav-btn.is-active,.site-header__nav-btn:hover{color:var(--hover-gray)}.categories-panel-sticky{background:var(--bg)}.categories-panel-toggle{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}.categories-panel-toggle.is-open{grid-template-rows:1fr}.categories-panel-inner{overflow:hidden;min-height:0}.categories-panel{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:16px;padding:var(--gutter-x) 0;border-bottom:.5px solid var(--border);opacity:0;transition:opacity .25s ease}.categories-panel-toggle.is-open .categories-panel{opacity:1;transition-delay:.1s}.categories-panel a{font-family:var(--font-serif);font-size:clamp(10px,1.3vw,18px);white-space:nowrap;font-weight:400}.categories-panel a:hover{color:var(--hover-gray)}@media (max-width:640px){.categories-panel{flex-direction:column;flex-wrap:wrap;gap:14px}.categories-panel a{font-size:18px;white-space:normal}}.masonry,.masonry__col{display:flex;gap:var(--gutter-x)}.masonry__col{flex:1 1;flex-direction:column;min-width:0}.tile-grid{--cols:2;display:flex;flex-wrap:wrap;align-items:flex-end;gap:34px var(--gutter-x)}@media (min-width:480px){.tile-grid{--cols:3}}@media (min-width:700px){.tile-grid{--cols:4}}@media (min-width:1000px){.tile-grid{--cols:5}}@media (min-width:1300px){.tile-grid{--cols:6}}.tile{display:block;min-width:0;flex:0 0 calc((100% - (var(--cols) - 1) * var(--gutter-x)) / var(--cols))}.tile__img-wrap{position:relative;overflow:hidden;background:var(--border)}.tile__img{width:100%;height:100%;object-fit:cover;display:block}.tile__img-wrap{transition:filter .35s ease}@media (hover:hover){.tile:hover .tile__img-wrap{filter:grayscale(1)}}@keyframes captionIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.tile__category{font-family:var(--font-sans);font-size:10px;letter-spacing:.07em;text-transform:uppercase;margin:7px 0 0;animation:captionIn 1.1s ease both;animation-delay:.35s}.tile__title{font-family:var(--font-serif);font-size:17px;font-weight:400;margin:1px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:captionIn 1.1s ease both;animation-delay:.5s}@media (hover:hover){.tile:hover .tile__title{color:var(--hover-gray)}}.photo-tile{display:block;cursor:pointer}.photo-tile .tile__img-wrap{transition:filter .35s ease}@media (hover:hover){.photo-tile:hover .tile__img-wrap{filter:grayscale(1)}}.page-subheader{position:-webkit-sticky;position:sticky;top:var(--sticky-offset,65px);z-index:30;background:var(--bg);will-change:transform;padding:12px 0;border-bottom:.5px solid var(--border);margin-bottom:28px;transition:top .35s ease}.page-title{font-family:var(--font-serif);font-weight:400;font-size:20px;margin:0}.category-index{display:flex;flex-direction:column;gap:12px}.category-index a{font-family:var(--font-serif);font-size:20px}.category-index a:hover{color:var(--hover-gray)}.project-header{position:-webkit-sticky;position:sticky;top:var(--sticky-offset,65px);z-index:30;background:var(--bg);will-change:transform;padding:12px 0;border-bottom:.5px solid var(--border);margin-bottom:26px;transition:top .35s ease}.project-header__category{font-family:var(--font-sans);font-size:10px;letter-spacing:.07em;text-transform:uppercase;margin:0 0 4px;display:inline-block}.project-header__title{font-family:var(--font-serif);font-size:22px;margin:0}.project-header__category:hover{color:var(--hover-gray)}.project-header__meta{font-family:var(--font-sans);font-size:13px;margin:0;max-width:560px;line-height:1.4}body.lightbox-open .categories-panel-sticky,body.lightbox-open .category-index,body.lightbox-open .masonry,body.lightbox-open .page-subheader,body.lightbox-open .project-header,body.lightbox-open .site-header,body.lightbox-open .tile-grid{filter:grayscale(1);opacity:.35;transition:filter .3s,opacity .3s}.page-subheader,.project-header{z-index:55}.lightbox{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;padding-top:calc(var(--sticky-offset, 65px) + var(--subheader-h, 0px) + 16px)}.lightbox__frame{position:relative;display:inline-flex;max-width:100%;max-height:100%}.lightbox__img{display:block;max-width:100%;max-height:calc(100vh - var(--sticky-offset, 65px) - var(--subheader-h, 0px) - 32px)}.lightbox__close{position:absolute;top:4px;right:4px;width:40px;height:40px;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-weight:400;font-size:34px;line-height:1;color:#fff;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6));z-index:51}.lightbox__arrow span,.lightbox__close span{display:block;transform:translateY(-1px)}.lightbox__arrow{position:fixed;top:calc(50% + (var(--sticky-offset, 65px) + var(--subheader-h, 0px)) / 2);transform:translateY(-50%);width:44px;height:44px;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-weight:400;font-size:46px;line-height:1;color:#fff;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6));z-index:51}@media (min-width:641px){.lightbox__arrow,.lightbox__close{color:var(--text);filter:drop-shadow(0 1px 3px rgba(255,255,255,.6))}}.lightbox__arrow--left{left:4px}.lightbox__arrow--right{right:4px}.info-columns{display:flex;flex-direction:column}.info-col{max-width:560px}@media (min-width:900px){.info-columns{flex-direction:row;gap:80px}.info-col{flex:1 1;min-width:0}}.info-block h2{font-family:var(--font-serif);font-weight:400;font-size:18px;margin:28px 0 8px}.info-block p{font-family:var(--font-sans);font-size:14px;line-height:1.7;color:var(--text);margin:0 0 10px}.info-block .lang-en{color:var(--hover-gray)}