/* ===== SCROLL REVEAL ===== */
.reveal { opacity: 0; transform: translateY(18px); transition: opacity 0.7s ease, transform 0.7s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.reveal-stagger > * { opacity: 0; transform: translateY(12px); transition: opacity 0.55s ease, transform 0.55s ease; }
.reveal-stagger.is-visible > * { opacity: 1; transform: translateY(0); }
.reveal-stagger.is-visible > *:nth-child(1) { transition-delay: 0.02s; }
.reveal-stagger.is-visible > *:nth-child(2) { transition-delay: 0.09s; }
.reveal-stagger.is-visible > *:nth-child(3) { transition-delay: 0.16s; }
.reveal-stagger.is-visible > *:nth-child(4) { transition-delay: 0.23s; }
.reveal-stagger.is-visible > *:nth-child(5) { transition-delay: 0.30s; }
.reveal-stagger.is-visible > *:nth-child(6) { transition-delay: 0.37s; }

/* ===== HERO ENTRANCE ===== */
.hero-title, .final-title { animation: softRise 0.7s ease both; }
.hero-sub { animation: softRise 0.7s ease 0.1s both; }
.hero-eyebrow, .hero-sub-info { animation: softRise 0.6s ease both; }
@keyframes softRise { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

/* ===== TYPED CURSOR blink on eyebrow ===== */
.hero-eyebrow::after { content: '|'; color: var(--accent-bright); animation: blink 1.1s step-end infinite; margin-left: 2px; }
@keyframes blink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
