/* Image standards: one ratio for cards/gallery, one for detail heroes.
   Heads sit near the top of these photos, so anchor to the top edge instead of centre. */
:root{--img-ratio:4/3;--img-pos:50% 0%}
.photo-gallery img,
.card>img,
.detail-picture img,
.detail-grid img,
.hero-grid img:not(.brand-logo),
.about-photo img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:var(--img-ratio)!important;
  object-fit:cover!important;
  object-position:var(--img-pos)!important;
}

/* ---- Homepage: service tiles are links ---- */
.photo-gallery .gal-link{display:block;color:inherit;text-decoration:none;border-radius:inherit}
.photo-gallery .gal-link:focus-visible{outline:3px solid #e7ae42;outline-offset:3px;border-radius:18px}
.photo-gallery .gal-link>div{transition:transform .25s ease,box-shadow .25s ease}
.photo-gallery .gal-link:hover>div{transform:translateY(-4px);box-shadow:0 16px 30px #32134220}
.photo-gallery .gal-link:hover span{color:#4a1690}
