/* Progressive page transitions: normal links remain native browser navigation. */
@view-transition { navigation:auto; }
:root { --page-enter:100%;--page-exit:-18%; }
html[data-nav-direction="back"] { --page-enter:-100%;--page-exit:18%; }
::view-transition-old(root) { animation:iv-page-out 560ms cubic-bezier(.76,0,.24,1) both;mix-blend-mode:normal; }
::view-transition-new(root) { animation:iv-page-in 560ms cubic-bezier(.76,0,.24,1) both;mix-blend-mode:normal; }
@keyframes iv-page-out { from { opacity:1;transform:translateX(0); } to { opacity:.55;transform:translateX(var(--page-exit)); } }
@keyframes iv-page-in { from { opacity:1;transform:translateX(var(--page-enter)); } to { opacity:1;transform:translateX(0); } }
@media(prefers-reduced-motion:reduce){
  @view-transition { navigation:none; }
  ::view-transition-old(root),::view-transition-new(root){animation:none;}
}

/* Keep the header in the root snapshot. Separately named sticky-header
   snapshots can leave text/images unpainted after repeated Chromium navigation. */
.site-header { view-transition-name:none; }
