/* Smooth page-to-page transition: soft fade + slight rise on each route change. */
.page-transition {
  animation: pageFadeIn 0.45s cubic-bezier(0.22, 0.61, 0.36, 1) both;
  will-change: opacity, transform;
}

@keyframes pageFadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

/* Respect users who prefer no motion. */
@media (prefers-reduced-motion: reduce) {
  .page-transition {
    animation: none;
  }
}
