.glass-panel {
    background: rgba(255, 255, 255, 0.88);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}
.hero-overlay {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.5) 0%, rgba(15, 23, 42, 0.3) 50%, rgba(15, 23, 42, 0.7) 100%);
}
.badge-pulse { animation: pulse 2s infinite; }
@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.6; } }

/* Local Vendors dropdown (desktop) */
.nav-dropdown-menu { display: none; z-index: 60; }
.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu { display: block; }
.nav-dropdown:hover > a > i { transform: rotate(180deg); }
.nav-dropdown > a > i { transition: transform .2s; }

.no-scrollbar { scrollbar-width: none; }
.no-scrollbar::-webkit-scrollbar { display: none; }

/* Lightbox */
#lb { position: fixed; inset: 0; z-index: 100; background: rgba(2, 6, 23, .92); display: none; align-items: center; justify-content: center; padding: 1rem; }
#lb.open { display: flex; }
#lb img { max-width: min(92vw, 1100px); max-height: 82vh; border-radius: 1rem; box-shadow: 0 25px 60px rgba(0,0,0,.5); background: #fff; }
#lb .lb-cap { position: absolute; bottom: 1.25rem; left: 0; right: 0; text-align: center; color: #cbd5e1; font-size: .85rem; padding: 0 3.5rem; }
#lb button { position: absolute; width: 2.75rem; height: 2.75rem; border-radius: 9999px; background: rgba(30, 41, 59, .9); color: #fff; font-size: 1rem; border: 0; cursor: pointer; }
#lb button:hover { background: rgba(51, 65, 85, 1); }
#lb .lb-close { top: 1rem; right: 1rem; }
#lb .lb-prev { left: 1rem; top: 50%; transform: translateY(-50%); }
#lb .lb-next { right: 1rem; top: 50%; transform: translateY(-50%); }
