/* EducaSEE motion layer — Lenis + GSAP helpers */

html.lenis,
html.lenis body {
  height: auto;
}

html.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

html.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

html.lenis.lenis-stopped {
  overflow: hidden;
}

/* Soft hover micro-interactions (transform/opacity only) */
@media (hover: hover) and (pointer: fine) {
  .campus-card,
  .quick-card,
  .entity-card,
  .testi-card,
  .article-card,
  .program-card {
    transition:
      transform 280ms cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 280ms cubic-bezier(0.22, 1, 0.36, 1),
      border-color 220ms ease;
  }

  .campus-card:hover,
  .entity-card:hover,
  .quick-card:hover {
    transform: translateY(-6px);
    will-change: transform;
  }

  .btn,
  .chip,
  .nav-link {
    transition:
      transform 180ms cubic-bezier(0.22, 1, 0.36, 1),
      background-color 180ms ease,
      color 180ms ease,
      border-color 180ms ease,
      box-shadow 180ms ease;
  }

  .btn:hover {
    transform: translateY(-1px);
  }

  .btn:active,
  .chip:active {
    transform: scale(0.97);
  }

  .nav-link:hover {
    transform: translateY(-1px);
  }
}

/* Avoid animating keyboard-heavy UI */
.menu-toggle,
.password-toggle,
.hero-nav,
.hero-dot {
  transition: color 160ms ease, border-color 160ms ease, background-color 160ms ease;
}

/* Reduced motion: kill decorative motion helpers */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .campus-card,
  .quick-card,
  .entity-card,
  .testi-card,
  .article-card,
  .program-card,
  .btn,
  .chip,
  .nav-link {
    transition: none !important;
    transform: none !important;
    will-change: auto !important;
  }
}

html.motion-reduced .campus-card:hover,
html.motion-reduced .entity-card:hover,
html.motion-reduced .quick-card:hover,
html.motion-reduced .btn:hover {
  transform: none;
}
