/* Timeline Animation Shared */
@keyframes psTlPulse {
  0% { box-shadow:0 0 0 6px rgba(255,107,0,.18), 0 0 0 0 rgba(255,107,0,.55); transform:translateX(-50%) scale(1); }
  60% { box-shadow:0 0 0 6px rgba(255,107,0,.18), 0 0 0 14px rgba(255,107,0,0); transform:translateX(-50%) scale(1.06); }
  100% { box-shadow:0 0 0 6px rgba(255,107,0,.18), 0 0 0 18px rgba(255,107,0,0); transform:translateX(-50%) scale(1); }
}

.ps-tl-dot.is-active {
  animation: psTlPulse .7s ease-out 1;
}

.ps-tl-dot.is-done {
  box-shadow:0 0 0 6px rgba(255,107,0,.18);
}