/* Content remains visible if JavaScript is unavailable. */
html { scroll-behavior: smooth; }
.scroll-progress-track { position: fixed; inset: 0 0 auto; height: 3px; z-index: 1400; pointer-events: none; background: rgba(255,255,255,.06); }
.scroll-progress-fill { display: block; width: 100%; height: 100%; transform: scaleX(0); transform-origin: left; background: linear-gradient(90deg, #24bcb4, #c6f36b); }
/* Only waiting elements are hidden. Completed elements retain their hover styles. */
.scroll-managed.scroll-pending { opacity: 0; }
.scroll-managed:focus-within { opacity: 1; }
.scroll-parallax-wrap { overflow: hidden; }
@media (min-width: 901px) and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .scroll-parallax-img { translate: 0 var(--scroll-offset, 0px); scale: 1.06; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .scroll-managed.scroll-pending { opacity: 1; }
  .scroll-parallax-img { translate: none; scale: none; }
}
@media print {
  .scroll-managed.scroll-pending { opacity: 1; }
  .scroll-progress-track { display: none; }
  .scroll-parallax-img { translate: none; scale: none; }
}
