.contact-footer .office-contact{align-self:stretch;display:flex;flex-direction:column}
.contact-footer .office-contact address{flex:1}
.news-cards article{border-top:1px solid var(--line);padding-top:20px}
.news-cards article>a{height:100%;display:flex;flex-direction:column}
.news-cards .news-read{margin-top:auto;padding-top:12px}
@media(max-width:600px){
 .news-cards{gap:24px}
 .news-cards article,.project-card{padding:22px 18px;background:#ebe7de;border:1px solid #ded8cb}
 .news-cards article:nth-child(even),.project-card:nth-child(even){background:#f5f2ec}
 .news-cards article h2{margin-bottom:22px}
 .project-card .project-heading{padding:0}
 .project-card h3{min-height:0}
 .project-card .project-photo{height:auto;aspect-ratio:4/5}
 .contact-footer .office-contact{padding-top:22px;border-top:1px solid var(--line)}
}

/* IHS layout repair — 2026-09-18 */
.site-header .brand img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
.email-contact{padding:64px clamp(22px,5vw,80px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;border-top:1px solid var(--line)}
.email-contact h2{font:400 clamp(32px,4vw,56px)/1.15 Georgia,serif;margin:0 0 20px}
.email-contact p{line-height:1.7;max-width:620px}
.email-contact .email-cta{display:inline-block;padding:14px 0;border-bottom:1px solid var(--ink);font-size:18px}
.email-contact .email-note{font-size:13px;color:#69665f}
@media(max-width:700px){.email-contact{grid-template-columns:1fr;gap:12px;padding-top:44px;padding-bottom:44px}}
.reader-gallery [data-full]{cursor:zoom-in}
.photo-lightbox{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:20px;border:0;background:rgba(8,12,11,.95);color:#fff;overflow:auto}
.photo-lightbox::backdrop{background:rgba(0,0,0,.8)}
.photo-lightbox[open]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.photo-lightbox img{display:block;max-width:100%;width:auto;max-height:calc(100dvh - 150px);height:auto;object-fit:contain}
.photo-lightbox button{border:1px solid #ffffff70;border-radius:50%;width:48px;height:48px;background:#172e28;color:#fff;font:24px Arial;cursor:pointer}
.photo-lightbox button:focus-visible{outline:3px solid #d7b772;outline-offset:4px}
.photo-lightbox .lightbox-close{position:absolute;top:16px;right:16px}
.photo-lightbox .lightbox-caption{margin:0;text-align:center;max-width:80vw;line-height:1.5}
.photo-lightbox .lightbox-controls{display:flex;align-items:center;gap:24px}
.photo-lightbox [hidden]{display:none!important}
