/* Estilos compartidos DMV (extraídos del export de Stitch) */

.material-symbols-outlined {
            font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
        }
        .glass-nav {
            background: rgba(255, 255, 255, 0.85);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
        }
        .hero-gradient {
            background: linear-gradient(to bottom, rgba(0, 30, 43, 0.6), rgba(0, 30, 43, 0.3));
        }
        .wave-pattern {
            background-image: radial-gradient(circle at 2px 2px, rgba(10, 110, 189, 0.05) 1px, transparent 0);
            background-size: 24px 24px;
        }
        @keyframes pulse-green {
            0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7); }
            70% { box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); }
            100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
        }
        .animate-whatsapp {
            animation: pulse-green 2s infinite;
        }
        .card-hover-effect:hover {
            transform: translateY(-8px);
            box-shadow: 0 20px 40px rgba(10, 110, 189, 0.12);
        }

.material-symbols-outlined {
            font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
        }
        .glass-header {
            background: rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
        }
        .product-card-shadow {
            box-shadow: 0 10px 30px -5px rgba(10, 110, 189, 0.08);
        }
        @keyframes pulse-whatsapp {
            0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.4); }
            70% { transform: scale(1.05); box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); }
            100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
        }
        .animate-pulse-whatsapp {
            animation: pulse-whatsapp 2s infinite;
        }

.material-symbols-outlined {
            font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
        }
        .glass-effect {
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
        }
        @keyframes pulse-whatsapp {
            0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.4); }
            70% { box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); }
            100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
        }
        .animate-pulse-whatsapp {
            animation: pulse-whatsapp 2s infinite;
        }
        .product-shadow {
            box-shadow: 0 10px 30px -10px rgba(10, 110, 189, 0.08);
        }

.material-symbols-outlined {
            font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
            display: inline-block;
            line-height: 1;
        }
        .glass-card {
            background: rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(12px);
            border: 1px solid rgba(28, 163, 196, 0.1);
        }
        .whatsapp-pulse {
            box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
            animation: pulse-green 2s infinite;
        }
        @keyframes pulse-green {
            0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7); }
            70% { transform: scale(1); box-shadow: 0 0 0 15px rgba(37, 211, 102, 0); }
            100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
        }

/* ============================================================
   DMV — estilos propios añadidos al reorganizar el proyecto
   ============================================================ */

/* Menú móvil: el contenedor del menú principal se muestra como
   panel desplegable bajo la barra cuando se activa el botón. */
@media (max-width: 1279px) {
  #primary-nav.mobile-open {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: rgba(255,255,255,0.97);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    padding: 1rem 1.5rem 1.5rem;
    box-shadow: 0 16px 40px rgba(1,166,226,0.15);
    border-top: 1px solid rgba(193,199,211,0.5);
  }
  #primary-nav.mobile-open .relative.group > div { /* dropdowns visibles en móvil */
    position: static; opacity: 1; visibility: visible; width: 100%;
    box-shadow: none; margin-top: .25rem;
  }
}

/* Reveal-on-scroll de respaldo por si ScrollReveal no carga */
.reveal-up, .reveal-left, .reveal-stagger { will-change: transform, opacity; }

/* ---- Mega-menú "Productos" dentro del menú móvil ---- */
@media (max-width: 1279px) {
  #primary-nav.mobile-open { max-height: 80vh; overflow-y: auto; }
  #primary-nav.mobile-open .mega-panel {
    position: static; transform: none; opacity: 1; visibility: visible;
    width: 100%; box-shadow: none; border: none; padding: 0.25rem 0 0; margin: 0;
  }
  #primary-nav.mobile-open .mega-panel .grid { grid-template-columns: 1fr; gap: 1rem; }
}

/* ---- Video de fondo del hero ---- */
.hero-video { object-position: center; }
/* Accesibilidad: si el usuario pide menos movimiento, se oculta el video y queda el póster */
@media (prefers-reduced-motion: reduce) {
  .hero-video { display: none; }
}
