/* FINAL targeted restore: approved homepage hero + approved NEXT appliance service badges.
   Intentionally loaded last; does not redesign subpages. */
.homepage .hero-media{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important}
.homepage .hero-media .approved-home-hero{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:996/372!important;object-fit:contain!important;object-position:center!important;border-radius:16px!important;box-shadow:0 18px 42px rgba(0,0,0,.22)!important}
.homepage .hero-media .appliance-float{display:none!important}

.homepage .service-badge-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:26px!important;align-items:stretch!important}
.homepage .approved-service-badge{min-width:0!important;min-height:205px!important;display:grid!important;grid-template-columns:140px minmax(0,1fr)!important;align-items:center!important;gap:16px!important;padding:22px 20px!important;background:#fff!important;border:3px solid #e3edf5!important;border-radius:22px!important;box-shadow:0 10px 28px rgba(16,42,84,.055)!important;text-decoration:none!important;overflow:hidden!important;transition:transform .18s ease,box-shadow .18s ease!important}
.homepage .approved-service-badge:hover{transform:translateY(-3px)!important;box-shadow:0 15px 34px rgba(16,42,84,.10)!important}
.homepage .service-badge-media{width:140px!important;height:145px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:transparent!important;overflow:visible!important}
.homepage .service-badge-media img{display:block!important;width:136px!important;height:136px!important;max-width:100%!important;object-fit:contain!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.homepage .service-badge-copy{min-width:0!important;padding:0!important;border:0!important;background:transparent!important}
.homepage .service-badge-copy h3{margin:0!important;color:#c9003f!important;font-family:Georgia,'Times New Roman',serif!important;font-size:21px!important;line-height:1.08!important;font-weight:700!important;text-decoration:underline!important;text-decoration-thickness:1.5px!important;text-underline-offset:3px!important;overflow-wrap:anywhere!important}

@media (max-width:1100px){
  .homepage .service-badge-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
  .homepage .approved-service-badge{grid-template-columns:112px minmax(0,1fr)!important;min-height:178px!important;padding:18px 14px!important;gap:12px!important}
  .homepage .service-badge-media{width:112px!important;height:120px!important}
  .homepage .service-badge-media img{width:108px!important;height:108px!important}
}
@media (max-width:700px){
  .homepage .hero-grid{grid-template-columns:1fr!important;gap:24px!important;padding-bottom:34px!important}
  .homepage .hero-media{order:1!important;padding:0 14px!important}
  .homepage .hero-grid>div:first-child{order:2!important}
  .homepage .hero-media .approved-home-hero{width:100%!important;aspect-ratio:auto!important;border-radius:12px!important}
  .homepage .service-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .homepage .approved-service-badge{grid-template-columns:1fr!important;grid-template-rows:112px auto!important;min-height:190px!important;padding:12px 9px 14px!important;gap:7px!important;text-align:center!important;border-width:2px!important;border-radius:18px!important}
  .homepage .service-badge-media{width:100%!important;height:112px!important}
  .homepage .service-badge-media img{width:106px!important;height:106px!important;margin:auto!important}
  .homepage .service-badge-copy h3{font-size:17px!important;line-height:1.12!important;text-align:center!important}
}
@media (max-width:380px){
  .homepage .approved-service-badge{min-height:178px!important;padding-left:7px!important;padding-right:7px!important}
  .homepage .service-badge-copy h3{font-size:15px!important}
  .homepage .service-badge-media img{width:96px!important;height:96px!important}
}

/* FINAL OVERRIDE: keep approved service badge text horizontal and fully visible. */
.homepage .approved-service-badge{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-width:0!important;
  overflow:hidden!important;
}
.homepage .approved-service-badge .service-badge-media{
  flex:0 0 136px!important;
  width:136px!important;
  min-width:136px!important;
  height:136px!important;
  min-height:136px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.homepage .approved-service-badge .service-badge-media img{
  flex:0 0 auto!important;
  width:136px!important;
  height:136px!important;
  max-width:136px!important;
  max-height:136px!important;
  object-fit:contain!important;
}
.homepage .approved-service-badge .service-badge-copy{
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  padding:0!important;
  display:block!important;
  overflow:visible!important;
}
.homepage .approved-service-badge .service-badge-copy h3{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  font-size:21px!important;
  line-height:1.12!important;
}
.homepage .approved-service-badge .service-badge-copy:after{display:none!important}

@media (max-width:1100px){
  .homepage .approved-service-badge{
    padding:16px 14px!important;
    gap:12px!important;
    min-height:178px!important;
  }
  .homepage .approved-service-badge .service-badge-media{
    flex-basis:112px!important;width:112px!important;min-width:112px!important;
    height:112px!important;min-height:112px!important;
  }
  .homepage .approved-service-badge .service-badge-media img{
    width:112px!important;height:112px!important;max-width:112px!important;max-height:112px!important;
  }
  .homepage .approved-service-badge .service-badge-copy h3{font-size:20px!important}
}
@media (max-width:700px){
  .homepage .approved-service-badge{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:190px!important;
    height:auto!important;
    padding:12px 8px 14px!important;
    gap:7px!important;
    text-align:center!important;
  }
  .homepage .approved-service-badge .service-badge-media{
    flex:0 0 112px!important;
    width:100%!important;min-width:0!important;
    height:112px!important;min-height:112px!important;
  }
  .homepage .approved-service-badge .service-badge-media img{
    width:106px!important;height:106px!important;max-width:106px!important;max-height:106px!important;
  }
  .homepage .approved-service-badge .service-badge-copy{
    width:100%!important;max-width:100%!important;text-align:center!important;
  }
  .homepage .approved-service-badge .service-badge-copy h3{
    width:100%!important;max-width:100%!important;
    font-size:17px!important;line-height:1.15!important;
    white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;
  }
}
@media (max-width:380px){
  .homepage .approved-service-badge{min-height:178px!important;padding:10px 6px 12px!important}
  .homepage .approved-service-badge .service-badge-media{flex-basis:96px!important;height:96px!important;min-height:96px!important}
  .homepage .approved-service-badge .service-badge-media img{width:92px!important;height:92px!important;max-width:92px!important;max-height:92px!important}
  .homepage .approved-service-badge .service-badge-copy h3{font-size:15px!important}
}
