/* Motion tokens */
:root{
  --motion-duration-quick: 150ms;
  --motion-duration-default: 220ms;
  --motion-ease-standard: cubic-bezier(0.2, 0.0, 0.0, 1);
  --motion-ease-emphasized: cubic-bezier(0.2, 0.0, 0, 1);
}

/* Reduced motion: disable heavy animations */
@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Micro-interactions */
.btn{ transition: background-color var(--motion-duration-default) var(--motion-ease-standard), box-shadow var(--motion-duration-default) var(--motion-ease-standard), transform var(--motion-duration-quick) var(--motion-ease-standard); }
.btn:focus-visible{ outline: 2px solid #1e40af; outline-offset: 2px; }
.btn:hover{ transform: translateY(-1px); }
.card{ transition: box-shadow var(--motion-duration-default) var(--motion-ease-standard), transform var(--motion-duration-quick) var(--motion-ease-standard); }
.card:hover{ box-shadow: 0 8px 24px rgba(0,0,0,0.08); transform: translateY(-2px); }
.nav-item{ transition: color var(--motion-duration-quick) var(--motion-ease-standard), background-color var(--motion-duration-quick) var(--motion-ease-standard); }
.nav-item:hover{ background-color: rgba(30,64,175,0.06); }
