/* Photographs retain their own phone and desktop compositions. */
.feature-picture{display:block;width:100%;height:100%}
.feature-picture .feature-image{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.hero-photo .feature-picture{position:absolute;inset:0}
.hero-photo .feature-picture .hero-image{object-position:50% 50%}
/* Keep white hero content readable over even the lightest photographs. */
.hero-photo::after{background:linear-gradient(180deg,rgba(10,10,10,.6),rgba(10,10,10,.68) 46%,rgba(10,10,10,.76))}
.hero .button-secondary{background:rgba(16,16,16,.55);border-color:rgba(255,255,255,.75);color:#fff}
.hero .button-secondary:hover{background:rgba(16,16,16,.85);border-color:#fff;color:#fff}
.service-card .feature-picture .feature-image{object-position:50% 50%}
/* Smaller archive covers stay within their original resolution. */
.project-story .project-story-cover{width:calc(100% - 2 * var(--frame));max-width:var(--project-cover-width,1600px);margin-inline:auto}
@media(max-width:599px){
 .service-card.service-card-newbuild .service-media{aspect-ratio:1.2}
}

.floating-revision .intro-grid .about-points>div:last-child>span{white-space:nowrap}
@media(max-width:599px){.contact-page-directory .contact-page-phone{font-size:17px}}
