/* Travel Nursing Compass — shared scroll-motion polish.
   Loaded site-wide. Pure progressive enhancement: if JS is off or the
   reveal classes are never added, content is fully visible. */

#scrollProgress {
  position: fixed; top: 0; left: 0; height: 3px; width: 100%;
  transform: scaleX(0); transform-origin: 0 50%; z-index: 60;
  background: linear-gradient(90deg, #f6b935, #d4982a);
  box-shadow: 0 0 12px rgba(246, 185, 53, 0.5);
  pointer-events: none; will-change: transform;
}

.reveal {
  opacity: 0; transform: translateY(30px);
  transition: opacity .8s cubic-bezier(.16, 1, .3, 1), transform .8s cubic-bezier(.16, 1, .3, 1);
}
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: .08s; }
.reveal-delay-2 { transition-delay: .16s; }
.reveal-delay-3 { transition-delay: .24s; }
.reveal-delay-4 { transition-delay: .32s; }

.reveal-scale {
  opacity: 0; transform: translateY(36px) scale(.97);
  transition: opacity .9s cubic-bezier(.16, 1, .3, 1), transform .9s cubic-bezier(.16, 1, .3, 1);
}
.reveal-scale.visible { opacity: 1; transform: translateY(0) scale(1); }

div[style*="radial-gradient"] { will-change: transform; }

@media (prefers-reduced-motion: reduce) {
  .reveal, .reveal-scale { opacity: 1 !important; transform: none !important; transition: none !important; }
  #scrollProgress { display: none; }
}
