/* ============================================================
   MERIDIAN — ANIMATIONS
   ============================================================ */

@keyframes cueDrop {
  0%   { top: -100%; }
  60%  { top: 100%; }
  100% { top: 100%; }
}

/* Hero line-drawing: dash offset is set inline per-path by JS
   (each path's true length), this just defines the transition. */
.draw-line {
  transition: stroke-dashoffset var(--dur-slow) var(--ease-architectural);
}

.reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity var(--dur-mid) var(--ease-architectural),
              transform var(--dur-mid) var(--ease-architectural);
}
.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  * , *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
  .reveal { opacity: 1; transform: none; }
}
