/* Photo and page copy occupy separate areas; no text overlays the image. */
.hero .hero-inner{grid-template-columns:1fr 1.05fr;gap:48px}
.hero-photo{margin:0;aspect-ratio:4/3;overflow:hidden;background:#d4e6f1}
.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:58% center}
.hero-services{background:#fff;border-bottom:1px solid var(--line)}
.hero-services>.wrap{padding-top:29px;padding-bottom:30px}
.hero-services .panel-label{color:var(--muted);font-size:12px;margin-bottom:13px}
.hero-services .tile-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.hero-services .tile{min-height:173px;padding:21px 21px 19px}
.hero-services .tile h2{font-size:16px}
.hero-services .tile .icon{width:36px;height:36px;margin-bottom:14px}
@media(max-width:1100px){
  .hero .hero-inner{gap:30px}
  .hero-services .tile{padding:19px 17px;min-height:170px}
  .hero-services .tile h2{font-size:15px}
}
@media(max-width:850px){
  .hero .hero-inner{grid-template-columns:1fr;gap:30px}
  .hero-photo{aspect-ratio:16/7;object-position:center}
  .hero-services .tile{padding:16px 12px 28px;min-height:170px}
  .hero-services .tile h2{font-size:13px}
}
@media(max-width:600px){
  .hero .hero-inner{padding-top:20px;padding-bottom:30px;gap:27px}
  .hero-photo{order:-1;aspect-ratio:16/10}
  .hero-services>.wrap{padding-top:23px;padding-bottom:23px}
  .hero-services .tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-services .tile{padding:17px 15px;min-height:156px}
  .hero-services .tile h2{font-size:14px}
  .hero-services .tile .icon{width:33px;height:33px;margin-bottom:11px}
}
