/* Exact source WebP miniatures and measured card proportions, requested by owner.
   Applies only to the homepage service grid; existing service SEO pages stay intact. */
.home-services { background:var(--white); }
.home-services .section-head { max-width:1150px; margin-inline:auto; }
.home-services .service-grid { max-width:1150px; margin-inline:auto; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; align-items:stretch; }
.home-services .service-card { position:relative; padding:28px; border:1px solid #d5e9ec; border-radius:18px; background:#f4fbfc; box-shadow:none; transition:border-color .2s,box-shadow .2s,transform .2s; }
.home-services .service-card:hover,.home-services .service-card:focus-within { border-color:var(--turquoise); box-shadow:0 12px 28px #002d3e10; transform:translateY(-3px); }
.home-services .service-miniature { display:grid; place-items:center; width:100%; padding:0; margin:0 0 18px; border:0; border-radius:0; background:none; }
.home-services .service-miniature img { display:block; width:min(100%,250px); height:auto; max-width:100%; aspect-ratio:500/285; object-fit:contain; margin:0 auto; }
.home-services .service-card h3 { margin:0; font-size:21px; font-weight:700; line-height:1.1; letter-spacing:normal; }
.home-services .service-card>p { min-height:0; max-width:none; margin:8px 0 18px; font-size:15.5px; line-height:1.6; }
.home-services .service-links { margin-top:auto; padding-top:0; border-top:0; gap:2px; }
.home-services .service-links a { min-height:44px; align-items:center; gap:1rem; padding-block:.5rem; color:var(--teal); font-size:.8125rem; line-height:1.5; text-decoration-thickness:1px; text-underline-offset:.2em; }
.home-services .service-links a>span { flex:0 0 auto; color:var(--turquoise); font-size:22px; font-weight:700; }
.home-services .service-links a:hover { color:var(--navy); }
.home-services .service-links a:focus-visible { outline:3px solid var(--navy); outline-offset:3px; }
@media(max-width:980px) { .home-services .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:640px) { .home-services .service-grid { grid-template-columns:minmax(0,1fr); } }
@media(prefers-reduced-motion:reduce) { .home-services .service-card { transition:none; transform:none; } }
