.project-intro{padding:48px 0 32px}.project-intro label{display:block;margin:24px 0 8px;font-size:14px}.project-intro select{display:block;width:min(100%,650px);font:inherit;padding:12px;border:1px solid #b8d1d9;background:white;color:#326b7b}.project-intro h1{font-size:clamp(30px,4vw,48px);line-height:1.2;margin:28px 0 18px;max-width:900px}.story-link{text-decoration:underline;text-underline-offset:4px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;margin-bottom:60px}.project-photo{margin:0;min-width:0;position:relative}.project-photo img{display:block;width:100%;height:auto}.below-captions figcaption{font-size:14px;line-height:1.65;color:#747081;margin-top:12px}.credit{display:block;font-size:12px;margin-top:8px}.hover-captions .project-photo{align-self:start;overflow:hidden}.hover-captions figcaption{position:absolute;bottom:0;left:0;right:0;padding:36px 20px 20px;background:linear-gradient(transparent,rgba(0,0,0,.93) 20%);color:white;font-size:14px;line-height:1.6;max-height:100%;overflow:auto;opacity:0;visibility:hidden}.hover-captions .project-photo:hover figcaption,.hover-captions .project-photo:focus figcaption,.hover-captions .caption-open figcaption{opacity:1;visibility:visible}.project-photo:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media(max-width:700px){.project-grid{grid-template-columns:1fr}.project-intro{padding:32px 0 24px}}
.project-opening{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;align-items:start;margin:0 0 48px;padding-bottom:36px;border-bottom:1px solid #d8e6eb}.featured-photo{margin:0}.featured-photo img{display:block;width:100%;height:auto}.featured-photo figcaption{font-size:12px;color:#747081;margin-top:8px}.project-opening-text p{font-size:16px;line-height:1.75;margin:0 0 16px}@media(min-width:701px) and (max-width:1050px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:850px){.project-opening{grid-template-columns:1fr}}

.project-opening .featured-photo{position:relative;overflow:hidden}.project-opening.hover-captions .featured-photo figcaption{margin:0;font-size:12px}.project-opening.hover-captions .featured-photo:hover figcaption,.project-opening.hover-captions .featured-photo:focus figcaption{visibility:visible;opacity:1}

.project-date{display:inline-block;margin:0 0 16px}.project-intro .story-link{display:block;width:fit-content}.project-grid .project-photo img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto}.featured-photo img{aspect-ratio:3/2;object-fit:cover}

.project-recognition-row{display:flex;align-items:center;gap:20px;flex-wrap:nowrap}.project-recognition-row .award-badge{display:inline-block;margin:0;align-self:auto}.project-intro .project-recognition-row .story-link{display:inline-block;flex-shrink:0;font-size:14px}@media(max-width:600px){.project-recognition-row{gap:12px}.project-recognition-row .award-badge{font-size:11px;letter-spacing:0}.project-intro .project-recognition-row .story-link{flex-shrink:1;font-size:12px;min-width:90px}}

.project-meta-row{display:flex;align-items:center;gap:20px;flex-wrap:nowrap}.project-meta-row .project-date{margin:0;white-space:nowrap}.project-intro .project-meta-row .story-link{display:inline-block;width:auto;font-size:14px}.project-meta-row .story-link span,.project-recognition-row .story-link span{white-space:nowrap}@media(max-width:600px){.project-meta-row{gap:14px}.project-intro .project-meta-row .story-link{font-size:13px}}

.project-description{max-width:780px;margin-top:24px}.project-description p{font-size:16px;line-height:1.75;margin:0 0 16px}.project-description p:last-child{margin-bottom:0}
