    /* Custom styles for Jakk restaurant website */

    /* Smooth scrolling */
    html {
        scroll-behavior: smooth;
    }

    /* Base styles */
    body {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    /* Scroll reveal animations - progressive enhancement */
    @media (prefers-reduced-motion: no-preference) {
        .reveal-up {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.8s ease, transform 0.8s ease;
        }

        .reveal-left {
            opacity: 0;
            transform: translateX(-30px);
            transition: opacity 0.8s ease, transform 0.8s ease;
        }

        .reveal-right {
            opacity: 0;
            transform: translateX(30px);
            transition: opacity 0.8s ease, transform 0.8s ease;
        }

        .reveal-up.visible,
        .reveal-left.visible,
        .reveal-right.visible {
            opacity: 1;
            transform: translate(0);
        }
    }

    /* Default state: always visible (for no-JS fallback) */
    .reveal-up,
    .reveal-left,
    .reveal-right {
        opacity: 1;
        transform: none;
    }

    /* Gold gradient text effect */
    .text-gold-gradient {
        background: linear-gradient(135deg, #c9a84c 0%, #f2d98a 50%, #c9a84c 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
    }

    /* Custom scrollbar */
    ::-webkit-scrollbar {
        width: 8px;
    }

    ::-webkit-scrollbar-track {
        background: #0a1628;
    }

    ::-webkit-scrollbar-thumb {
        background: #c9a84c;
        border-radius: 4px;
    }

    ::-webkit-scrollbar-thumb:hover {
        background: #e9c052;
    }

    /* Navbar styles */
    #navbar.scrolled {
        background: rgba(4, 13, 26, 0.95);
        backdrop-filter: blur(20px);
        border-bottom: 1px solid rgba(201, 168, 76, 0.1);
    }

    /* Mobile menu */
    #mobile-menu.open {
        opacity: 1;
        pointer-events: all;
    }

    /* Input styles */
    input[type="date"]::-webkit-calendar-picker-indicator {
        filter: invert(0.7) sepia(1) saturate(3) hue-rotate(10deg);
        cursor: pointer;
    }

    select option {
        background: #0a1628;
        color: white;
    }

    /* Image hover zoom */
    .gallery-img {
        transition: transform 0.6s ease, opacity 0.3s ease;
    }

    .gallery-img:hover {
        transform: scale(1.02);
    }

    /* Gold shimmer animation for hero */
    @keyframes shimmer {
        0% { background-position: -200% center; }
        100% { background-position: 200% center; }
    }

    /* Subtle float animation for decorative elements */
    @keyframes float {
        0%, 100% { transform: translateY(0); }
        50% { transform: translateY(-10px); }
    }

    /* Line animation on hover */
    a.group-hover\:border-gold-400:hover {
        transition: border-color 0.3s ease;
    }

    /* Button press effect */
    button:active {
        transform: scale(0.98);
    }

    /* Focus visible styles */
    a:focus-visible,
    button:focus-visible,
    input:focus-visible,
    select:focus-visible,
    textarea:focus-visible {
        outline: 2px solid #c9a84c;
        outline-offset: 2px;
    }

    /* Selection color */
    ::selection {
        background: rgba(201, 168, 76, 0.3);
        color: white;
    }

    /* Mobile responsive adjustments */
    @media (max-width: 768px) {
        .font-display {
            line-height: 1.1;
        }
    }

    /* Print styles */
    @media print {
        nav, button, #mobile-menu {
            display: none;
        }

        body {
            background: white;
            color: black;
        }

        .bg-navy-950, .bg-navy-900 {
            background: white !important;
            color: black !important;
        }
    }
