/* One symmetric interpolation makes every layer retrace the same path. */
.scene[data-page]
  :is(
    .poster,
    .foreground,
    .print-veil,
    .print-blade,
    .print-band,
    .print-orbits,
    .print-geometry i,
    .print-title
  ) {
  transition-property: opacity, transform, clip-path, filter, scale;
  transition-duration: 980ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
  transition-delay: 0ms;
}
/* Pointer parallax retains its own frame-based damping. */
.scene[data-page] .tower {
  transition: scale 980ms cubic-bezier(0.4, 0, 0.6, 1);
}
.scene[data-page] .tower img {
  transition: filter 980ms cubic-bezier(0.4, 0, 0.6, 1);
}
@media (prefers-reduced-motion: reduce) {
  .scene *,
  .scene:not(.intro-running) .foreground,
  .scene[data-page='print'] .print-title {
    transition: none !important;
  }
  .plane {
    will-change: auto;
  }
}
