footer {
  font-size: 0.9rem;
}

.btn-53 {
  border: 1px solid;
  border-radius: 999px;
  display: inline-block;
  font-weight: 700;
  overflow: hidden;
  padding: 0.6rem 1.4rem;
  position: relative;
  text-transform: uppercase;
  font-size: 0.9rem;
  transition: all 0.3s ease;
}

.btn-53 .original {
  background: #fff;
  color: #000;
  display: grid;
  inset: 0;
  place-content: center;
  position: absolute;
  transition: transform 0.2s cubic-bezier(0.87, 0, 0.13, 1);
}

.btn-53:hover .original {
  transform: translateY(100%);
}

.btn-53 .letters {
  display: inline-flex;
}

.btn-53 span {
  opacity: 0;
  transform: translateY(-12px);
  transition: transform 0.2s cubic-bezier(0.87, 0, 0.13, 1), opacity 0.2s;
}

.btn-53 span:nth-child(2n) {
  transform: translateY(12px);
}

.btn-53:hover span {
  opacity: 1;
  transform: translateY(0);
}

.btn-53:hover span:nth-child(2) { transition-delay: 0.1s; }
.btn-53:hover span:nth-child(3) { transition-delay: 0.2s; }
.btn-53:hover span:nth-child(4) { transition-delay: 0.3s; }
.btn-53:hover span:nth-child(5) { transition-delay: 0.4s; }
.btn-53:hover span:nth-child(6) { transition-delay: 0.5s; }

.zona-contacto {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
  margin-top: 0.5rem;
}

.boton-contacto,
.btn-53 {
  border-radius: 999px;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.9rem;
  padding: 0.6rem 1.2rem;
  transition: all 0.3s ease;
}

.boton-whatsapp {
  background-color: #25D366;
  color: #fff;
  border: none;
  display: inline-flex;
  align-items: center;
}
.boton-whatsapp i {
  margin-right: 0.4rem;
}
.boton-whatsapp:hover {
  background-color: #1ebe5d;
}

/* Adaptación móvil */
@media (max-width: 768px) {
  footer {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  footer h5 {
    font-size: 0.95rem;
  }
  footer p, footer a {
    font-size: 0.8rem;
  }

  .row > div {
    flex: 0 0 50%;
    max-width: 50%;
  }
}








.mapa-footer {
  width: 100%;
  height: 400px; /* escritorio */
}

.mapa-footer iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

@media (max-width: 768px) {
  .mapa-footer {
    height: 200px; /* más bajo en móviles */
  }
}


