/* Fade-in with stagger */
.fade-in-element {
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 0.8s forwards;
}

.fade-in-element:nth-child(1) { animation-delay: 0.3s; }
.fade-in-element:nth-child(2) { animation-delay: 0.6s; }
.fade-in-element:nth-child(3) { animation-delay: 0.9s; }
.fade-in-element:nth-child(4) { animation-delay: 1.2s; }

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

/* Slide-in from right */
.slide-in-right {
    opacity: 0;
    transform: translateX(20vw);
    animation: slideInRight 2s ease-out forwards;
    animation-delay: 1.4s;
}

@keyframes slideInRight {
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Typewriter effect for title accent */
.typewriter::after {
    content: '|';
    animation: blink 0.7s infinite;
    margin-left: 2px;
    color: var(--tempus-orange);
}

@keyframes blink {
    50% { opacity: 0; }
}
