/* Custom styles that extend beyond Tailwind */

/* Smooth scroll offset for fixed nav */
section[id] {
    scroll-margin-top: 80px;
}

/* Gold shimmer animation for decorative elements */
@keyframes shimmer {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 0.8; }
}

.glow-pulse {
    animation: shimmer 3s ease-in-out infinite;
}

/* Navbar transition states */
nav.scrolled {
    background: rgba(5, 10, 24, 0.95) !important;
    backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(212, 168, 83, 0.1);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
}

/* Card hover lift effect */
.hover-lift {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.hover-lift:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

/* Mint glow border on focus */
input:focus, textarea:focus {
    outline: none;
    border-color: #4FD1C5 !important;
    box-shadow: 0 0 0 3px rgba(79, 209, 197, 0.15);
}

/* Selection color */
::selection {
    background: rgba(212, 168, 83, 0.3);
    color: #fff;
}

/* Mobile menu animation */
#mobile-menu {
    box-shadow: -10px 0 40px rgba(0, 0, 0, 0.5);
}

/* Remove number input arrows */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Map filter override for light mode iframe */
iframe[title] {
    border-radius: 0 0 1rem 1rem;
}
