header { position: relative; z-index: 50; }
        /* Estilos base para la consistencia */
        body {
            font-family: 'Poppins', sans-serif;
            background-color: #F9FAFB;
            color: #111827;
        }
        .whatsapp-float {
            position: fixed;
            width: 60px;
            height: 60px;
            bottom: 40px;
            right: 40px;
            background-color: #25d366;
            color: #FFF;
            border-radius: 50px;
            text-align: center;
            font-size: 30px;
            box-shadow: 2px 2px 3px rgba(0,0,0,0.4);
            z-index: 1000;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: transform 0.3s ease;
        }
        .whatsapp-float:hover {
            transform: scale(1.1);
        }
        .mobile-menu {
            display: none;
        }
        .mobile-menu.active {
            display: block;
        }
        /* Animaciones del carrusel */
        .animate-fade-in-down {
            animation: fadeInDown 1s ease-out;
        }
        .animate-fade-in-up {
            animation: fadeInUp 1s ease-out;
        }
        @keyframes fadeInDown {
            from { opacity: 0; transform: translateY(-20px); }
            to { opacity: 1; transform: translateY(0); }
        }
        @keyframes fadeInUp {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }
        @keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-0.5rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideUp {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-0.5rem);
  }
}

.mobile-menu.animated {
  animation-duration: 300ms;
  animation-fill-mode: both;
}
    /* Animación de pulso para el botón del menú móvil */
    @keyframes pulse {
      0% { box-shadow: 0 0 0 0 rgba(67,56,202,0.5); }
      70% { box-shadow: 0 0 0 10px rgba(67,56,202,0); }
      100% { box-shadow: 0 0 0 0 rgba(67,56,202,0); }
    }
    #mobileMenuButton.pulse {
      animation: pulse 1.2s infinite;
    }
    /* Overlay para menú móvil */
    .mobile-overlay {
      display: none;
      position: fixed;
      top: 0; left: 0; right: 0; bottom: 0;
      background: rgba(0,0,0,0.4);
      z-index: 40;
      transition: opacity 0.3s;
      opacity: 0;
    }
    .mobile-overlay.active {
      display: block;
      opacity: 1;
    }