/* Native navigation keeps normal links, history and anchor scrolling intact. */
@view-transition {
  navigation: auto;
}

::view-transition-group(root) {
  animation-duration: 240ms;
}

::view-transition-old(root) {
  animation: 180ms ease-out both trispawn-page-out;
}

::view-transition-new(root) {
  animation: 240ms ease-out both trispawn-page-in;
}

@keyframes trispawn-page-out {
  to { opacity: 0; }
}

@keyframes trispawn-page-in {
  from { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  @view-transition {
    navigation: none;
  }

  ::view-transition-group(*),
  ::view-transition-old(*),
  ::view-transition-new(*) {
    animation: none !important;
  }
}
