/* Photographs are compositions, not interchangeable backgrounds. Keep full frames.
   The approved full-bleed video hero and decorative identity mockup are excluded. */
.home-photo-grid,.photo-opening{align-items:start}
.home-photo-grid .photo-tile .photo-open,
.photo-opening .photo-tile .photo-open{height:auto;aspect-ratio:auto;overflow:hidden}
.home-photo-grid .photo-tile .photo-open img,
.photo-opening .photo-tile .photo-open img{display:block;width:100%;height:auto;object-fit:contain;transform:none}
.home-photo-grid .photo-tile .photo-open:hover img,
.photo-opening .photo-tile .photo-open:hover img{transform:none}
.joint-team article>img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.service-hero-image img{display:block;width:100%;height:auto;min-height:0;max-height:none;object-fit:contain}
.service-social-images{align-items:start}
.service-social-images img{height:auto;max-height:none;object-fit:contain}
.services-story .ss-work-image{aspect-ratio:auto;align-self:center}
.services-story .ss-work-image img{display:block;width:100%;height:auto;object-fit:contain;transform:none}
.services-story .ss-work-image:hover img{transform:none}
.film-stills img{height:auto;aspect-ratio:auto;object-fit:contain}
.product-detail img{height:auto;max-height:none;object-fit:contain}
@media(max-width:600px){.photo-intro h1{font-size:clamp(35px,11.5vw,62px);white-space:normal;line-height:1.02}}
@media(max-width:600px){.home-photo-grid .photo-tile:nth-child(6){display:block}}
/* Independent columns let the next photograph follow its caption immediately. */
.home-photo-grid{display:block;columns:3;column-gap:24px}
.home-photo-grid .photo-tile:nth-child(n){display:block;break-inside:avoid;page-break-inside:avoid;margin:0 0 30px;grid-column:auto;grid-row:auto}
.home-photo-grid .photo-tile figcaption{padding-top:12px}
@media(max-width:850px){.home-photo-grid{columns:2;column-gap:20px}}
@media(max-width:600px){.home-photo-grid{columns:2;column-gap:14px}.home-photo-grid .photo-tile:nth-child(n){margin-bottom:24px}}
@media(max-width:360px){.home-photo-grid{columns:1}}
.home-photo-grid .photo-tile:nth-child(n) .photo-open{height:auto;min-height:0;max-height:none;aspect-ratio:auto}
