/* Minor refinements for All Services page, mobile only.
   Explicitly scoped to services.html via body.services-mobile-polish. */
@media (max-width: 800px) {
  body.services-mobile-polish main > section.hero {padding-bottom:30px!important;}
  body.services-mobile-polish main > section.hero .hero-grid {gap:22px!important;}
  body.services-mobile-polish main > section.hero .hero-grid > div:first-child {padding-top:26px!important;}
  body.services-mobile-polish main > section.hero h1 {
    font-size:clamp(36px,8.6vw,54px)!important;
    line-height:1.08!important;
    letter-spacing:-.045em!important;
    text-wrap:balance!important;
  }
  body.services-mobile-polish main > section.hero .lead {
    font-size:15px!important;line-height:1.65!important;
  }
  body.services-mobile-polish main > section.hero .hero-media {
    width:100%!important;aspect-ratio:1.35!important;overflow:hidden!important;
  }
  body.services-mobile-polish main > section.hero .hero-media img {width:100%!important;height:100%!important;object-fit:cover!important;}
  body.services-mobile-polish main > section.section:not(.red) {padding-top:48px!important;padding-bottom:52px!important;}
  body.services-mobile-polish main > section.section .section-title {
    font-size:clamp(32px,7.5vw,45px)!important;line-height:1.12!important;
    overflow-wrap:normal!important;letter-spacing:-.04em!important;
  }
  body.services-mobile-polish main .cards {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
  body.services-mobile-polish main .link-card {min-width:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;}
  body.services-mobile-polish main .link-card img {display:block!important;width:100%!important;height:auto!important;aspect-ratio:1.45!important;object-fit:cover!important;}
  body.services-mobile-polish main .link-card > div {padding:17px!important;display:flex!important;flex-direction:column!important;flex:1!important;}
  body.services-mobile-polish main .link-card h3 {font-size:18px!important;line-height:1.24!important;overflow-wrap:break-word!important;}
  body.services-mobile-polish main .link-card p {font-size:13px!important;line-height:1.65!important;margin:0 0 17px!important;}
  body.services-mobile-polish main .link-card a {margin-top:auto!important;display:inline-flex!important;align-items:center!important;min-height:30px!important;}
  body.services-mobile-polish main > section.section.red .cta-grid {display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:20px!important;}
  body.services-mobile-polish main > section.section.red .cta-grid .button {width:100%!important;box-sizing:border-box!important;justify-content:center!important;min-height:52px!important;}
}
@media (max-width: 600px) {
  body.services-mobile-polish main .cards {grid-template-columns:minmax(0,1fr)!important;gap:16px!important;}
  body.services-mobile-polish main .link-card img {aspect-ratio:1.65!important;}
  body.services-mobile-polish main .link-card > div {padding:20px!important;}
  body.services-mobile-polish main .link-card h3 {font-size:20px!important;}
  body.services-mobile-polish main > section.hero .hero-media {aspect-ratio:1.25!important;}
}
@media (max-width: 380px) {
  body.services-mobile-polish main > section.hero h1 {font-size:35px!important;}
  body.services-mobile-polish main > section.section .section-title {font-size:32px!important;}
}
