    /* Custom Styles & Animations */
    html {
        scroll-behavior: smooth;
    }

    body {
        /* Fallback for serif font if Playfair fails */
        font-family: 'Lato', sans-serif;
    }

    /* Custom Scrollbar */
    ::-webkit-scrollbar {
        width: 10px;
    }
    ::-webkit-scrollbar-track {
        background: #F4F1EA;
    }
    ::-webkit-scrollbar-thumb {
        background: #2C2C2C;
    }
    ::-webkit-scrollbar-thumb:hover {
        background: #E07A5F;
    }

    /* Animation Utilities */
    .animate-fade-in-up {
        animation: fadeInUp 1s ease-out forwards;
        opacity: 0;
        transform: translateY(20px);
    }

    .delay-100 { animation-delay: 0.1s; }
    .delay-200 { animation-delay: 0.2s; }
    .delay-300 { animation-delay: 0.3s; }

    @keyframes fadeInUp {
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    /* Reveal on Scroll Class */
    .reveal-on-scroll {
        opacity: 0;
        transform: translateY(30px);
        transition: all 0.8s ease-out;
    }

    .reveal-on-scroll.is-visible {
        opacity: 1;
        transform: translateY(0);
    }

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

    /* Form Focus States */
    input:focus, textarea:focus {
        outline: none;
        border-bottom-color: #E07A5F;
    }
