    /* ===== CUSTOM STYLES ===== */

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

    /* Selection color */
    ::selection {
        background-color: rgba(161, 22, 59, 0.15);
        color: #721634;
    }

    /* Custom scrollbar */
    ::-webkit-scrollbar {
        width: 8px;
    }
    ::-webkit-scrollbar-track {
        background: #fefcfb;
    }
    ::-webkit-scrollbar-thumb {
        background: #d4a3b8;
        border-radius: 4px;
    }
    ::-webkit-scrollbar-thumb:hover {
        background: #c21f4a;
    }

    /* ===== NAVBAR ===== */
    #navbar {
        background: transparent;
        transition: background 0.4s ease, box-shadow 0.4s ease, backdrop-filter 0.4s ease;
    }
    #navbar.scrolled {
        background: rgba(254, 252, 251, 0.95);
        backdrop-filter: blur(12px);
        box-shadow: 0 1px 20px rgba(114, 22, 52, 0.08);
    }
    #navbar.scrolled .nav-link {
        color: #841637;
    }
    #navbar.scrolled .nav-link:hover {
        color: #3f0715;
    }

    /* Nav link underline animation */
    .nav-link {
        position: relative;
    }
    .nav-link::after {
        content: '';
        position: absolute;
        bottom: -4px;
        left: 0;
        width: 0;
        height: 1.5px;
        background: #c21f4a;
        transition: width 0.3s ease;
    }
    .nav-link:hover::after {
        width: 100%;
    }

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

    /* ===== HERO ===== */
    .hero-img {
        transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
    }
    .hero-img:hover {
        transform: scale(1.02);
    }

    /* ===== CARDS ===== */
    .menu-card {
        transition: transform 0.3s ease, box-shadow 0.3s ease;
    }
    .menu-card:hover {
        transform: translateY(-4px);
    }

    /* ===== DECORATIVE PATTERN ===== */
    .pattern-dots {
        background-image: radial-gradient(circle, rgba(161, 22, 59, 0.08) 1px, transparent 1px);
        background-size: 24px 24px;
    }

    /* ===== BUTTON SHINE EFFECT ===== */
    .btn-shine {
        position: relative;
        overflow: hidden;
    }
    .btn-shine::before {
        content: '';
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: linear-gradient(90deg, transparent, rgba(255,255,255,0.15), transparent);
        transition: left 0.5s ease;
    }
    .btn-shine:hover::before {
        left: 100%;
    }

    /* ===== TESTIMONIAL QUOTE ===== */
    .testimonial-card {
        position: relative;
        overflow: hidden;
    }
    .testimonial-card::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 3px;
        background: linear-gradient(90deg, #c21f4a, #f4a3b8, #c21f4a);
        opacity: 0;
        transition: opacity 0.3s ease;
    }
    .testimonial-card:hover::before {
        opacity: 1;
    }

    /* ===== IMAGE REVEAL ===== */
    .img-reveal {
        position: relative;
        overflow: hidden;
    }
    .img-reveal img {
        transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
    }
    .img-reveal:hover img {
        transform: scale(1.05);
    }

    /* ===== SECTION DIVIDER ===== */
    .section-divider {
        height: 1px;
        background: linear-gradient(90deg, transparent, #f4a3b8, transparent);
    }

    /* ===== FLOATING ANIMATION ===== */
    @keyframes float {
        0%, 100% { transform: translateY(0); }
        50% { transform: translateY(-8px); }
    }
    .float-animation {
        animation: float 4s ease-in-out infinite;
    }

    /* ===== PULSE ANIMATION FOR BADGES ===== */
    @keyframes pulse-soft {
        0%, 100% { opacity: 1; }
        50% { opacity: 0.7; }
    }
    .pulse-soft {
        animation: pulse-soft 3s ease-in-out infinite;
    }

    /* ===== MOBILE RESPONSIVE ===== */
    @media (max-width: 768px) {
        .font-serif {
            line-height: 1.15;
        }
    }
