/* ===== CUSTOM STYLES & ANIMATIONS ===== */

/* Gold shimmer animation for hero headline accent */
@keyframes shimmer {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

.gold-gradient {
    background: linear-gradient(135deg, #f0d48a 0%, #e6c060 40%, #d4a843 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

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

/* Menu tab active state */
.menu-tab.active {
    background: linear-gradient(135deg, #f0d48a 0%, #d4a843 100%) !important;
    color: #060f1a !important;
}

/* Menu tab hover for inactive */
.menu-tab:not(.active):hover {
    border-color: rgba(212, 168, 67, 0.5);
    color: #f0d48a !important;
}

/* Mobile link hover */
.mobile-link {
    transition: color 0.2s ease;
}
.mobile-link:hover {
    color: #f0d48a !important;
}

/* Image hover zoom */
.rounded-xl overflow-hidden img {
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Focus visible for accessibility */
*:focus-visible {
    outline: 2px solid #d4a843;
    outline-offset: 2px;
}

/* Subtle parallax for hero (progressive enhancement) */
@media (prefers-reduced-motion: no-preference) {
    .hero-bg {
        will-change: background-position;
    }
}

/* Print styles */
@media print {
    body { background: white; color: black; }
    .hero-bg { background: none !important; }
    .reveal { opacity: 1 !important; transform: none !important; }
}
