.spatial-page .scene-index::before {
  left: 47px;
  width: 2px;
  background: rgba(97, 230, 255, 0.3);
  box-shadow: 0 0 8px rgba(97, 230, 255, 0.16);
}

.spatial-page .scene-index button span {
  width: 7px;
  height: 7px;
  border-color: rgba(97, 230, 255, 0.72);
}

.spatial-page .scene-index button small {
  color: rgba(218, 230, 247, 0.58);
  opacity: 0.46;
  transform: translateX(0);
}

.spatial-page .scene-index button:hover small,
.spatial-page .scene-index button:focus-visible small,
.spatial-page .scene-index button.is-active small {
  color: var(--ink);
  opacity: 1;
}

.spatial-page .scene-index button:hover span,
.spatial-page .scene-index button:focus-visible span,
.spatial-page .scene-index button.is-active span {
  width: 10px;
  height: 10px;
}

.spatial-page .scene-index__progress {
  left: 47px;
  width: 2px;
}

.spatial-page .scene-index__progress::before {
  width: 2px;
  background: linear-gradient(180deg, rgba(76, 125, 255, 0.88), var(--cyan));
  box-shadow: 0 0 10px rgba(97, 230, 255, 0.48);
}

.spatial-page .scene-index__progress::after {
  width: 4px;
  height: 30px;
  box-shadow: 0 0 14px rgba(97, 230, 255, 0.72);
}

.spatial-page[data-scene]:not(.is-last) .scroll-cue {
  opacity: 1;
  pointer-events: auto;
}

.spatial-page[data-scene="2"] .scroll-cue,
.spatial-page[data-scene="3"] .scroll-cue,
.spatial-page[data-scene="4"] .scroll-cue,
.spatial-page[data-scene="5"] .scroll-cue,
.spatial-page[data-scene="6"] .scroll-cue {
  left: calc(clamp(40px, 7.3vw, 140px) + 366px);
  width: min(320px, calc(100vw - clamp(40px, 7.3vw, 140px) - 466px));
}

@media (max-width: 900px) {
  .spatial-page .scroll-cue {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .spatial-page .scene-index *,
  .spatial-page .scroll-cue * {
    transition-duration: 1ms !important;
    animation-duration: 1ms !important;
  }
}
