/* Only the homepage and Cabane landing opt in. Navigation remains native. */
@media (prefers-reduced-motion: no-preference) {
  @view-transition { navigation: auto; }

  /* The arriving snapshot stays invisible until the departure has finished. */
  ::view-transition-old(root) {
    animation: page-exit 140ms ease-in both;
  }
  ::view-transition-new(root) {
    animation: page-enter 180ms ease-out 140ms both;
  }
  ::view-transition-group(root) {
    animation: none;
    background: #f8f4eb;
  }
  :root:has(body.site-page)::view-transition-group(root) { background: #0b0826; }
  ::view-transition-old(root),
  ::view-transition-new(root) {
    mix-blend-mode: normal;
  }
}

@keyframes page-exit {
  from { opacity: 1; }
  to { opacity: 0; }
}
@keyframes page-enter {
  from { opacity: 0; }
  to { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  @view-transition { navigation: none; }
  ::view-transition-group(*),
  ::view-transition-old(*),
  ::view-transition-new(*) { animation: none !important; }
}
