.elementor-246 .elementor-element.elementor-element-0cc577f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-246 .elementor-element.elementor-element-858bf7f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-246 .elementor-element.elementor-element-0cc577f{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for html, class: .elementor-element-858bf7f *//* --- Contenedor Principal del Footer --- */
.med-footer-wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
  font-family: inherit; /* Hereda de Elementor */
}

/* --- BLOQUE 1: Contacto (Fondo Blanco) --- */
.med-footer-contacto {
  background-color: #ffffff;
  padding: 40px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 15px;
  border-top: 2px solid #f0f0f0;
}

.med-footer-oficina {
  color: #006cb4;
  font-size: 1.3em;
  font-weight: 700;
  margin: 0;
  text-transform: uppercase;
}

/* Contenedor de Botones de Teléfono */
.med-footer-telefonos {
  display: flex;
  flex-direction: column;
  gap: 15px;
  margin: 10px 0;
  width: 100%;
}

.med-footer-contacto-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: #006cb4;
  font-size: 1.1em;
  font-weight: 700;
  text-decoration: none;
  transition: opacity 0.3s ease;
}

.med-footer-contacto-link:hover {
  opacity: 0.7;
}

/* Iconos de contacto */
.med-icon-caja {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 35px;
  height: 35px;
  border-radius: 8px;
}

.bg-rojo { background-color: #FF0000; }
.bg-verde { background-color: #25D366; }

.med-footer-email {
  color: #006cb4;
  font-size: 1.1em;
  font-weight: 500;
  text-decoration: none;
}

.med-footer-web {
  color: #006cb4;
  font-size: 1.6em;
  font-weight: 800;
  text-decoration: none;
  margin-top: 5px;
}

/* --- BLOQUE 2: Enlaces y Legal (Fondo Azul Oscuro) --- */
.med-footer-legal {
  background-color: #004b99; /* Azul oscuro para dar contraste y peso */
  padding: 30px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  color: #ffffff;
}

.med-footer-enlaces {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  width: 100%;
}

.med-enlace-legal {
  color: #ffffff;
  text-decoration: none;
  font-size: 0.95em;
  font-weight: 500;
  transition: color 0.3s ease;
}

.med-enlace-legal:hover {
  color: #00c6ff; /* Celeste brillante al pasar el cursor */
}

.med-footer-copy {
  font-size: 0.85em;
  opacity: 0.8;
  text-align: center;
  margin-top: 10px;
  border-top: 1px solid rgba(255,255,255,0.2);
  padding-top: 20px;
  width: 100%;
  max-width: 800px;
}

/* --- DISEÑO ESCRITORIO (Responsive) --- */
@media (min-width: 768px) {
  .med-footer-telefonos {
    flex-direction: row;
    justify-content: center;
    gap: 40px;
  }

  .med-footer-enlaces {
    flex-direction: row;
    justify-content: center;
    gap: 30px;
  }
}/* End custom CSS */