/* =========================================================
   FOOTER (UNIFORM ON ALL PAGES + SERVICES) — FINAL LEAN
   ========================================================= */

/* Footer container */
.ebb-footer-widgets{
  max-width:1200px;
  margin:0 auto;
  padding:60px 60px 30px;
  box-sizing:border-box;
}

/* HORARIO list alignment */
.horario li{
  display:flex;
  justify-content:space-between;
}
.horario li span{ font-weight:600; }

/* WPBakery gutter normalization (template consistency) */
.ebb-footer-widgets .vc_column_container,
.ebb-footer-widgets .vc_column_container > .vc_column-inner{
  padding-left:0 !important;
  padding-right:0 !important;
}

/* Footer TOP layout */
.ebb-footer-widgets-top{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:60px;
  flex-wrap:nowrap;
  transform:translateX(-20px); /* visual centering nudge */
}
.ebb-footer-widgets-top > div{ min-width:0; }

/* Desktop column sizing */
.ebb-footer-widgets-top > div:first-child{ flex:0 0 360px; }
.ebb-footer-widgets-top > div:nth-child(2){ flex:0 0 260px; }
.ebb-footer-widgets-top > div:nth-child(3){ flex:0 0 320px; }
.ebb-footer-widgets-top > div:nth-child(4){ flex:0 0 300px; }

/* Footer image height control */
.ebb-footer-widgets-top > div:first-child img{
  max-height:260px;
  max-width:100% !important;
  width:auto !important;
  height:auto !important;
  display:block;
  margin:0 auto;
}

/* Contact list */
.footer-contact{
  list-style:none;
  margin:15px 0 0;
  padding:0;
}
.footer-contact .address{ margin-bottom:15px; }
.footer-contact li.contact-row{
  display:flex;
  align-items:center;
  gap:6px;
}
.footer-contact li.contact-row{
  margin-bottom:12px;   /* increase space between rows */
}
.footer-contact .icon svg{
  width:16px;
  height:16px;
  stroke:#000;
  stroke-width:1.6;
  fill:none;
}
.footer-contact .text,
.footer-contact a.text{
  margin:0;
  white-space:nowrap;
}
.footer-contact .icon img{
  width:16px;
  height:auto;
  display:block;
}

/* Footer BOTTOM (copyright) */
.ebb-footer-widgets-bottom{ margin-top:25px; }
.ebb-footer-widgets-bottom .vc_column_container,
.ebb-footer-widgets-bottom .vc_col-sm-3{
  width:100% !important;
  float:none !important;
}
.ebb-footer-widgets-bottom p{ text-align:center !important; }

/* Social icons centering */
.ebb-footer-widgets .social-icons a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
}

/* Responsive */
@media (max-width:1200px){
  .ebb-footer-widgets{ padding:40px 24px; }
  .ebb-footer-widgets-top{
    flex-wrap:wrap;
    justify-content:flex-start;
    gap:28px;
    transform:none; /* avoid odd offsets when wrapped */
  }
  .ebb-footer-widgets-top > div{ flex:1 1 260px; }
}

@media (max-width:480px){
  .footer-contact .text,
  .footer-contact a.text{
    white-space:normal;
    overflow-wrap:anywhere;
  }
}

/* Kill tiny horizontal overflow (Services template culprit) */
html, body{ overflow-x:hidden; }