.lumi-page-enter {
  animation: lumi-public-page-enter .28s cubic-bezier(.22, .61, .36, 1) both;
}

@keyframes lumi-public-page-enter {
  from { opacity: .86; }
  to { opacity: 1; }
}

.lumi-page-transition-overlay {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  pointer-events: none;
  opacity: 0;
  background: rgba(246, 243, 255, .78);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  transition: opacity .22s cubic-bezier(.22, .61, .36, 1);
}

body.lumi-page-leave {
  overflow: hidden;
}

body.lumi-page-leave .lumi-page-transition-overlay {
  opacity: 1;
}

body.lumi-page-leave > :not(.lumi-page-transition-overlay) {
  opacity: .88;
  transform: translateY(-3px);
  transition: opacity .2s ease, transform .2s cubic-bezier(.22, .61, .36, 1);
}

@media (prefers-reduced-motion: reduce) {
  .lumi-page-enter {
    animation: none !important;
  }
  .lumi-page-transition-overlay,
  body.lumi-page-leave > :not(.lumi-page-transition-overlay) {
    transition-duration: .01ms !important;
    transform: none !important;
  }
}
