    /* Custom styles not covered by Tailwind */
    
    html {
        scroll-behavior: smooth;
    }

    /* Animation Keyframes */
    @keyframes fadeInUp {
        from {
            opacity: 0;
            transform: translate3d(0, 40px, 0);
        }
        to {
            opacity: 1;
            transform: translate3d(0, 0, 0);
        }
    }

    .animate-fade-in-up {
        animation: fadeInUp 0.8s ease-out forwards;
        opacity: 0; /* Default hidden for JS-less safety handled by animation-delay */
    }

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

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

    .reveal.active {
        opacity: 1;
        transform: translateY(0);
    }

    /* Vertical text for decorative elements */
    .writing-vertical-rl {
        writing-mode: vertical-rl;
    }

    /* Navbar blur effect */
    .glass-nav {
        background: rgba(251, 251, 247, 0.9);
        backdrop-filter: blur(8px);
        box-shadow: 0 1px 0 rgba(0,0,0,0.05);
    }

    /* Mobile menu transition */
    #mobile-menu {
        transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1);
    }
