:root {
  --swup-transition-duration: 0.5s;
}

#swup-wrapper {
  display: flex;
  min-height: 100dvh;
  background-color: white;
  z-index: 1;
}

.transition-main {
  width: 100%;
}

html.is-animating {
  scroll-behavior: auto;
}

html.is-changing .transition-main {
  transition: opacity var(--swup-transition-duration) ease;
  opacity: 1;
  pointer-events: none;
}

html.is-animating .transition-main {
  opacity: 0;
}

@keyframes footer-crossfade {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

html.is-animating footer {
  animation: footer-crossfade calc(var(--swup-transition-duration)*2) ease both;
  pointer-events: none;
}