@media (prefers-reduced-motion: no-preference) and (min-width: 841px) and (hover: hover) and (pointer: fine) {
  ::view-transition {
    pointer-events: none;
    background: var(--paper, #fff);
  }

  ::view-transition-group(root),
  ::view-transition-group(site-menu) {
    animation-duration: 300ms;
    animation-timing-function: cubic-bezier(.22, .65, .28, 1);
  }

  ::view-transition-old(root) { animation: 110ms ease-out both site-page-exit; }
  ::view-transition-new(root) { animation: 190ms 110ms cubic-bezier(.22, .65, .28, 1) both site-page-enter; }

  @keyframes site-page-exit {
    to { opacity: 0; }
  }

  @keyframes site-page-enter {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
  }

  @media (min-width: 621px) {
    .homepage.minimal-home .site-nav { view-transition-name: site-menu; }
  }
}
