/* v78: Footer compact glass width fix + clear service text. Footer only. */

/* Keep approved footer background from v72/v77; only adjust layout width. */
.footer-v62-inner{
  max-width:1280px!important;
  padding-left:28px!important;
  padding-right:28px!important;
}

.footer-v62-main{
  width:max-content!important;
  max-width:calc(100vw - 56px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  display:grid!important;
  grid-template-columns:230px 390px 140px 306px!important;
  gap:26px!important;
  padding:26px 28px 28px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

.footer-v62-brand{width:230px!important; max-width:230px!important;}
.footer-v62-services{width:390px!important; max-width:390px!important;}
.footer-v62-links{width:140px!important; max-width:140px!important;}
.footer-v62-info{width:306px!important; max-width:306px!important; min-width:0!important;}

.footer-v65-company-info,
.footer-v65-company-info li{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

.footer-v65-company-info .footer-address-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  white-space:nowrap!important;
  max-width:100%!important;
  color:#ffffff!important;
  text-decoration:none!important;
}

.footer-map-icon-img{
  width:19px!important;
  height:19px!important;
  flex:0 0 19px!important;
  display:inline-block!important;
  vertical-align:middle!important;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.34));
}
.footer-map-icon{display:none!important;}

/* Appointment notice: same visual style, width capped to company column. */
.footer-v66-appointment{
  display:block!important;
  box-sizing:border-box!important;
  width:306px!important;
  max-width:306px!important;
  margin-top:12px!important;
  padding:10px 14px!important;
  border-radius:14px!important;
  line-height:1.72!important;
  white-space:normal!important;
  word-break:keep-all!important;
  overflow-wrap:break-word!important;
  background:rgba(255,255,255,.145)!important;
  border:1px solid rgba(255,255,255,.30)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16), 0 10px 20px rgba(0,0,0,.10)!important;
}

/* Force service items to stay simple white text. */
.footer-v62-service-grid a,
.footer-v62-service-grid li:nth-child(3n+1) a,
.footer-v62-service-grid li:nth-child(3n+2) a,
.footer-v62-service-grid li:nth-child(3n) a{
  color:#ffffff!important;
  font-weight:500!important;
  text-shadow:0 1px 2px rgba(0,0,0,.50), 0 0 10px rgba(255,255,255,.12)!important;
}

@media (max-width: 1180px){
  .footer-v62-inner{max-width:100%!important;}
  .footer-v62-main{
    width:auto!important;
    max-width:100%!important;
    grid-template-columns:1fr 1.45fr!important;
  }
  .footer-v62-brand,
  .footer-v62-services,
  .footer-v62-links,
  .footer-v62-info{width:auto!important; max-width:100%!important;}
  .footer-v66-appointment{width:100%!important; max-width:100%!important;}
}

@media (max-width: 760px){
  .footer-v62-inner{padding-left:18px!important; padding-right:18px!important;}
  .footer-v62-main{grid-template-columns:1fr!important; width:auto!important; max-width:100%!important;}
  .footer-v65-company-info .footer-address-link{white-space:normal!important;}
  .footer-v66-appointment{width:100%!important; max-width:100%!important;}
}
