/* Display the supplied photographs without cropping their subjects. */

body .home-hero .hero-photo--local { min-height:0; height:auto; align-self:start; justify-self:center; width:min(100%,380px,calc(100svh - 260px)); background:#073b58; border-radius:16px; padding:10px 10px 0; }
body .home-hero .hero-photo--local::before,
body .home-hero .hero-photo--local::after { display:none; }
body .home-hero .hero-photo--local > img { position:static; display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; transform:none; }
body .home-hero .hero-photo--local figcaption { position:static; padding:18px 12px; }
.work-photo-grid { display:grid; grid-template-columns:repeat(4,minmax(0,206px)); justify-content:space-between; gap:24px; }
.work-photo-grid figure { margin:0; }
.work-photo-grid a { display:block; }
.work-photo-grid img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; border-radius:20px; }
.work-photo-grid figcaption { margin-top:12px; font-weight:650; line-height:1.4; }
.work-photo-grid a:hover figcaption { text-decoration:underline; }
@media(max-width:700px) {
  .work-photo-grid { grid-template-columns:repeat(2,minmax(0,206px)); gap:24px 16px; }
  body .home-hero .hero-photo--local figcaption { padding:20px; }
}

body .home-hero { padding-block:40px; min-height:0; }
body .home-hero .hero-grid { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); align-items:start; }
body .home-hero .hero-copy h1 { max-width:18ch; font-size:clamp(2.8rem,4.5vw,4.5rem); }
@media(max-width:1100px) {
  body .home-hero { padding-block:28px; }
  body .home-hero .hero-grid { grid-template-columns:1fr; gap:32px; }
  body .home-hero .hero-photo--local { order:1; width:min(100%,350px,calc(100svh - 250px)); }
}

/* A light frame keeps the original vehicle and facade unobscured. */
body .home-hero .hero-photo--local { align-self:center; width:min(100%,410px); padding:12px; background:#fff; border:1px solid #d8e6ee; border-radius:24px; box-shadow:0 18px 48px rgba(0,65,105,.12); }
body .home-hero .hero-photo--local > img { border-radius:14px; }
body .home-hero .hero-photo--local figcaption { padding:18px 8px 6px; background:none; color:#123747; text-shadow:none; }
body .home-hero .hero-photo--local figcaption span { color:#0068ad; }
body .home-hero .hero-photo--local figcaption strong { color:#123747; }
@media(max-width:1100px) { body .home-hero .hero-photo--local { width:min(100%,320px); } }
