/* Native document navigation. Links, history and scroll restoration stay browser-owned. */
html { scroll-padding-top:var(--wf-scroll-padding,104px); }
@media(max-width:560px) { html { scroll-padding-top:var(--wf-scroll-padding,128px); } }
@view-transition { navigation: auto; }
@media (prefers-reduced-motion:no-preference) {
  html[data-wf-arrival]:not([data-wf-motion="off"]) :is(main.main,main#main) { animation:wf-document-arrival 320ms cubic-bezier(.22,1,.36,1) backwards; }
  .rail { view-transition-name: abl-navigation-rail; }
  .wf-wayfinder { view-transition-name: abl-navigation-context; }
  ::view-transition-group(root),::view-transition-group(abl-navigation-rail),::view-transition-group(abl-navigation-context) { animation-duration:220ms; animation-timing-function:cubic-bezier(.22,1,.36,1); }
  ::view-transition-old(root) { animation:wf-page-leave 130ms ease-out both; }
  ::view-transition-new(root) { animation:wf-page-enter 220ms cubic-bezier(.22,1,.36,1) both; }
  ::view-transition-old(abl-navigation-rail),::view-transition-new(abl-navigation-rail) { animation:none; mix-blend-mode:normal; }
  ::view-transition-old(abl-navigation-rail) { opacity:0; }
  ::view-transition-new(abl-navigation-rail) { opacity:1; }
  ::view-transition-old(abl-navigation-context) { animation:wf-context-leave 100ms ease-out both; }
  ::view-transition-new(abl-navigation-context) { animation:wf-context-enter 200ms ease-out both; }
  html[data-wf-direction="back"]::view-transition-old(root) { animation-name:wf-page-leave-back; }
  html[data-wf-direction="back"]::view-transition-new(root) { animation-name:wf-page-enter-back; }
}
@keyframes wf-page-leave { to { opacity:0; transform:translateY(-7px); } }
@keyframes wf-page-enter { from { opacity:0; transform:translateY(11px); } to { opacity:1; transform:translateY(0); } }
@keyframes wf-page-leave-back { to { opacity:0; transform:translateY(7px); } }
@keyframes wf-page-enter-back { from { opacity:0; transform:translateY(-11px); } to { opacity:1; transform:translateY(0); } }
@keyframes wf-context-leave { to { opacity:0; } }
@keyframes wf-context-enter { from { opacity:0; } to { opacity:1; } }
@keyframes wf-document-arrival { from { opacity:.4; transform:translateY(14px); } to { opacity:1; transform:translateY(0); } }
html[data-wf-motion="off"]::view-transition-group(*),html[data-wf-motion="off"]::view-transition-old(*),html[data-wf-motion="off"]::view-transition-new(*) { animation:none!important; }
@media (prefers-reduced-motion:reduce) {
  html[data-wf-arrival] :is(main.main,main#main) { animation:none!important; }
  @view-transition { navigation:none; }
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*) { animation:none!important; }
}
