@keyframes scanline { 0%,100% { transform: translateY(-4.2rem); opacity: .45; } 50% { transform: translateY(4.2rem); opacity: 1; } }
@keyframes fade-up { from { opacity: 0; transform: translateY(.8rem); } to { opacity: 1; transform: translateY(0); } }
.reveal { opacity: 0; transform: translateY(1rem); transition: opacity var(--duration-slow) var(--ease-emphasized), transform var(--duration-slow) var(--ease-emphasized); }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .reveal { opacity: 1; transform: none; }
}
