.reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.reveal-delay { transition-delay: .16s; }
@keyframes menu-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes dropdown-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes orbit-pulse { 0%, 100% { transform: scale(1); opacity: .7; } 50% { transform: scale(1.035); opacity: 1; } }
.orbit-one, .signal-ring { animation: orbit-pulse 9s ease-in-out infinite; }
.orbit-two { animation: orbit-pulse 7s ease-in-out 1s infinite; }