.typewriter {
            animation: typewriter 2s steps(20) 1s forwards, blink 1s infinite;
            white-space: nowrap;
            overflow: hidden;
            border-right: 2px solid transparent;
        }
        
        .fade-in-delayed {
            animation: fadeInUp 1s ease-out 3s forwards;
            opacity: 0;
            transform: translateY(20px);
        }
        
        .scroll-animate {
            opacity: 0;
            transform: translateY(50px);
            transition: all 0.8s ease-out;
        }
        
        .scroll-animate.visible {
            opacity: 1;
            transform: translateY(0);
        }
        
        @keyframes typewriter {
            0% { width: 0; border-right-color: #14b8a6; }
            99% { border-right-color: #14b8a6; }
            100% { width: 100%; border-right-color: transparent; }
        }
        
        @keyframes blink {
            0%, 50% { border-right-color: transparent; }
            51%, 100% { border-right-color: #14b8a6; }
        }
        
        @keyframes fadeInUp {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        
        @keyframes pulse-ring {
            0% { transform: scale(1); opacity: 1; }
            100% { transform: scale(1.5); opacity: 0; }
        }
        
        .pulse-ring {
            animation: pulse-ring 2s infinite;
        }
        
        .gradient-text {
            background: linear-gradient(to right, #ffffff, #14b8a6);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }