    /* Custom Font Settings */
    :root {
        --font-serif: 'Playfair Display', serif;
        --font-sans: 'Plus Jakarta Sans', sans-serif;
        --color-terracotta: #C0603C;
        --color-sand: #F5F0EB;
        --color-dark: #1A1A1A;
    }

    body {
        font-family: var(--font-sans);
        background-color: var(--color-sand);
        color: var(--color-dark);
    }

    h1, h2, h3, h4 {
        font-family: var(--font-serif);
    }

    /* Marquee Animation */
    @keyframes marquee {
        0% { transform: translateX(0); }
        100% { transform: translateX(-50%); }
    }

    .animate-marquee {
        animation: marquee 20s linear infinite;
    }

    /* Scroll Reveal Animations */
    .reveal-up {
        opacity: 0;
        transform: translateY(30px);
        transition: opacity 0.8s ease-out, transform 0.8s ease-out;
    }

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

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

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

    /* Delays */
    .delay-100 { transition-delay: 0.1s; }
    .delay-200 { transition-delay: 0.2s; }
    .delay-300 { transition-delay: 0.3s; }

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