*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:#fff;color:#202220;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid #285d50;outline-offset:6px}img{max-width:100%;display:block}p,h1,h2,h3{margin:0}button,a,img{-webkit-tap-highlight-color:transparent}.top,main,footer{max-width:1560px;margin:auto;padding-left:56px;padding-right:56px}.top{display:flex;align-items:center;justify-content:space-between;min-height:110px;border-bottom:1px solid #e2e3df}.brand{font-size:18px;letter-spacing:-.035em;font-weight:600}.brand span{display:block;font-size:13px;font-weight:400;letter-spacing:.02em;color:#737873;margin-top:1px}nav{display:flex;gap:32px;font-size:14px}nav a{padding:12px 0}nav a:hover,.text-link:hover{color:#687668}h1,h2,h3{font-weight:400}h1{font-size:clamp(40px,5.8vw,88px);letter-spacing:-.055em;line-height:1.08}.intro{padding-top:76px;padding-bottom:80px;display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.eyebrow,.small{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#737873}.eyebrow{margin-bottom:20px}.profession{margin-top:18px;font-size:21px;letter-spacing:-.02em}.intro-note{font-size:15px;line-height:1.7;color:#6e736e;margin-bottom:4px;max-width:320px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;padding-top:24px;padding-bottom:28px;border-top:1px solid #202220}h2{font-size:28px;letter-spacing:-.035em}.work-section{margin-bottom:100px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px;row-gap:48px}.picture{aspect-ratio:1.52;background:#f0f1ee;position:relative;overflow:hidden}.picture img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-link:hover .picture img{transform:scale(1.025)}.card-caption{display:flex;justify-content:space-between;gap:16px;margin-top:17px;align-items:baseline}.card-caption h3{font-size:20px;letter-spacing:-.03em}.card-caption span,.project-card p{font-size:13px;color:#737873}.project-card p{margin-top:3px}.tag{position:absolute;bottom:13px;left:13px;background:#fff;padding:5px 9px;font-size:11px;letter-spacing:.04em}.section-intro{color:#6e736e;font-size:16px;max-width:680px;margin-bottom:34px}.about{display:grid;grid-template-columns:1fr 1fr;gap:50px;border-top:1px solid #202220;padding-top:50px;padding-bottom:96px}.about h2{font-size:38px;line-height:1.2;max-width:350px}.about-body>p{font-size:18px;line-height:1.7;margin-bottom:20px;max-width:640px}.about-body .credit-note,.credit-note{font-size:13px;line-height:1.65;color:#747974}.contact-links{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px}.button{display:inline-block;background:#252b27;color:white;padding:12px 20px;font-size:14px}.button:hover{background:#47534a}.text-link{font-size:14px;border-bottom:1px solid #8b918b;padding-bottom:2px}footer{padding-top:26px;padding-bottom:30px;border-top:1px solid #e2e3df;display:flex;gap:25px;justify-content:space-between;font-size:12px;color:#747974}.back{display:inline-block;margin-top:42px;font-size:13px;border-bottom:1px solid #999;padding-bottom:3px}.detail-head{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;padding:56px 0 64px}.detail h1{font-size:clamp(36px,4.3vw,66px);max-width:650px}.project-location{color:#777e77;font-size:15px;margin-top:22px}.project-description{padding-top:4px;font-size:18px;line-height:1.65;max-width:620px}.role{margin-top:24px;font-size:15px}.role span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:#737873;margin-bottom:8px}.project-description .credit-note{margin-top:18px}.media-gallery{display:grid;gap:48px}.media-gallery figure{margin:0}.media-gallery img,.media-gallery video{width:100%;height:auto;max-height:900px;object-fit:contain;background:#f3f4f1}.zoom{cursor:zoom-in;display:block}.media-gallery figcaption{font-size:13px;color:#6e736e;margin-top:12px;max-width:840px}.next-project{border-top:1px solid #dedfdc;margin-top:70px;padding:30px 0 65px}.next-project span{display:block}.next-project a{font-size:30px;letter-spacing:-.03em}.lightbox{border:0;padding:60px 14px 14px;max-width:98vw;max-height:98vh;background:#fff}.lightbox::backdrop{background:#1a1c1bee}.lightbox img{max-height:84vh;max-width:92vw;object-fit:contain}.close-lightbox{position:absolute;top:14px;right:18px;border:0;background:#fff;cursor:pointer;padding:4px 12px}.skip{position:fixed;left:12px;top:-80px;background:#222;color:#fff;padding:12px;z-index:99}.skip:focus{top:12px}@media(min-width:1600px){.intro{padding-top:90px;padding-bottom:90px}}@media(max-width:800px){.top,main,footer{padding-left:24px;padding-right:24px}.top{min-height:92px}nav{gap:18px;font-size:12px}.intro{padding-top:50px;padding-bottom:48px;display:block}.intro-note{margin-top:24px}.profession{font-size:19px}.project-grid{gap:34px 20px}.picture{aspect-ratio:1.25}.card-caption{display:block}.card-caption h3{font-size:18px}.card-caption span{display:none}.about,.detail-head{grid-template-columns:1fr;gap:25px}.about{padding-top:35px;padding-bottom:60px}.about h2{font-size:32px}.detail-head{padding-top:36px;padding-bottom:40px}.project-description{font-size:16px}.work-section{margin-bottom:64px}footer{flex-wrap:wrap;gap:12px 25px}.small{font-size:10px}}@media(max-width:520px){.top{display:block;padding-top:22px;padding-bottom:16px}nav{justify-content:space-between;gap:10px;margin-top:12px}.brand span{display:inline;margin-left:12px}.project-grid{grid-template-columns:1fr;row-gap:32px}.picture{aspect-ratio:1.5}.card-caption{display:flex}.card-caption span{display:inline}.intro-note br{display:none}.intro-note{max-width:290px}h2{font-size:25px}.about-body>p{font-size:16px}.media-gallery{gap:30px}footer{display:grid}.detail h1{font-size:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.category-intro{padding:50px 0 54px}.category-intro h1{font-size:clamp(38px,5vw,72px);max-width:1000px}.category-intro>p:last-child{margin-top:20px;color:#737873;font-size:14px}.category-page{padding-bottom:90px}.exploration-feature{max-width:960px}.exploration-feature .picture{aspect-ratio:2}.section-heading{gap:22px}.section-heading .small{flex-shrink:0}@media(max-width:800px){.section-heading{align-items:flex-start}.section-heading h2{max-width:70%}.section-heading .small{max-width:28%;text-align:right;flex-shrink:1}.exploration-feature .picture{aspect-ratio:1.5}.category-intro{padding:35px 0 40px}}

/* Covers are individual photographs; gallery boards retain their original layout. */
.top{gap:24px}nav{flex-wrap:wrap}nav a{min-height:44px;display:flex;align-items:center}
.project-card,.detail-head>div,.about>div{min-width:0}
h1,h2,h3,.project-description,figcaption{overflow-wrap:anywhere}
.card-caption span{flex-shrink:0}
.picture img[src$="cover-10.webp"]{object-position:50% 18%}
.lightbox{max-width:calc(100vw - 24px);max-height:94vh;max-height:94dvh;margin:auto}
.lightbox img{max-width:100%;max-height:calc(94vh - 90px);max-height:calc(94dvh - 90px)}
.close-lightbox{min-width:64px;min-height:44px;top:8px;right:8px}
body:has(.lightbox[open]){overflow:hidden}
@media(max-width:600px){
 .top,main,footer{padding-left:20px;padding-right:20px}
 .top{display:block;padding-top:22px;padding-bottom:10px}
 nav{justify-content:flex-start;column-gap:22px;row-gap:0;margin-top:10px;font-size:13px}
 .project-grid{grid-template-columns:1fr;row-gap:36px}
 .picture,.exploration-feature .picture{aspect-ratio:1.5}
 .card-caption{display:flex}.card-caption span{display:inline}
 .intro{padding-top:36px;padding-bottom:40px}
 h1,.detail h1{font-size:clamp(34px,9vw,48px)}
 .category-intro h1{font-size:clamp(34px,9vw,48px)}
 .section-heading{display:block}.section-heading h2{max-width:none;font-size:26px}
 .section-heading .small{display:block;max-width:none;text-align:left;margin-top:10px}
 .detail-head{padding-top:30px;gap:24px}.project-description{line-height:1.65}
 .media-gallery figcaption{font-size:14px;line-height:1.55}
 .contact-links{align-items:flex-start;gap:12px 20px}.contact-links .text-link{padding:10px 0}
 footer a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}
}
@media(hover:none){.project-link:hover .picture img{transform:none}}
