/* Premium micro-animations (no layout changes) */

.main-nav__link {
  opacity: 0.85;
  transition:
    opacity var(--motion-duration-fast) var(--motion-ease-out),
    filter var(--motion-duration-base) var(--motion-ease-premium),
    text-shadow var(--motion-duration-base) var(--motion-ease-premium);
}

.main-nav__link:hover,
.main-nav__link:focus-visible {
  opacity: 1;
}

.main-nav__link.is-active {
  opacity: 1;
  text-shadow: none;
}

.main-nav__link.is-active:hover,
.main-nav__link.is-active:focus-visible {
  color: var(--color-nav-active);
  filter: none;
  text-shadow: 0 0 8px rgba(255, 0, 0, 0.38);
}

.projects-showcase__item {
  transition:
    left var(--motion-duration-slow) var(--motion-ease-premium),
    opacity var(--motion-duration-base) var(--motion-ease-premium);
}

.project-card {
  transform: translateY(0);
  transition:
    transform var(--motion-duration-base) var(--motion-ease-premium),
    box-shadow var(--motion-duration-base) var(--motion-ease-premium),
    filter var(--motion-duration-fast) var(--motion-ease-out);
}

.project-card__scrim {
  transition:
    opacity var(--motion-duration-base) var(--motion-ease-premium),
    background-color var(--motion-duration-base) var(--motion-ease-premium);
}

.projects-showcase__item.is-active .project-card:hover,
.projects-showcase__item.is-active .project-card:focus-within {
  transform: translateY(0);
  box-shadow: var(--active-card-stroke), var(--shadow-elevation-5-hover);
}

.projects-showcase__item.is-clickable .project-card {
  transform: scale(0.96);
}

.projects-showcase__item.is-clickable:hover .project-card,
.projects-showcase__item.is-clickable:focus-within .project-card {
  transform: scale(0.98);
}

.projects-showcase__item.is-clickable:active .project-card {
  transform: scale(0.97);
  transition-duration: var(--motion-duration-press);
}

.projects-showcase__item.is-clickable:hover .project-card__scrim,
.projects-showcase__item.is-clickable:focus-within .project-card__scrim {
  opacity: 1;
  background-color: rgba(0, 0, 0, 0.35);
}

.projects-showcase__track.is-animating {
  pointer-events: none;
}

.projects-showcase__nav {
  overflow: hidden;
  border-radius: 50%;
  transform: scale(1);
  transition:
    transform var(--motion-duration-fast) var(--motion-ease-out),
    filter var(--motion-duration-base) var(--motion-ease-premium),
    box-shadow var(--motion-duration-base) var(--motion-ease-premium);
}

.projects-showcase__nav::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  pointer-events: none;
  opacity: 0;
  transform: scale(0.72);
  background: radial-gradient(circle, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0) 70%);
  transition:
    opacity var(--motion-duration-fast) var(--motion-ease-out),
    transform var(--motion-duration-base) var(--motion-ease-premium);
}

.projects-showcase__nav:hover {
  filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.28));
}

.projects-showcase__nav:active {
  transform: scale(0.96);
  transition-duration: var(--motion-duration-press);
}

.projects-showcase__nav:active::after {
  opacity: 1;
  transform: scale(1);
}

.projects-showcase__nav:focus-visible {
  box-shadow: 0 0 0 3px rgba(169, 227, 255, 0.35);
}

.project-card__cta,
.donate-card__link {
  box-shadow: var(--shadow-elevation-5);
  transform: translateY(0) scale(1);
  transform-origin: center;
  transition:
    transform var(--motion-duration-base) var(--motion-ease-premium),
    box-shadow var(--motion-duration-base) var(--motion-ease-premium),
    filter var(--motion-duration-fast) var(--motion-ease-out);
}

.project-card__cta {
  transform: translate3d(0, 0, 0) scale(1);
  will-change: transform;
  backface-visibility: hidden;
}

.project-card__cta:hover,
.project-card__cta:focus-visible,
.donate-card__link:hover,
.donate-card__link:focus-visible {
  transform: translateY(-2px) scale(1);
  box-shadow: var(--shadow-elevation-5-hover);
  filter: saturate(1.06);
}

.project-card__cta:hover,
.project-card__cta:focus-visible {
  transform: translate3d(0, -2px, 0) scale(1);
}

.project-card__cta:active,
.donate-card__link:active {
  transform: translateY(0) scale(0.98);
  transition-duration: var(--motion-duration-press);
}

.project-card__cta:active {
  transform: translate3d(0, 0, 0) scale(0.98);
}

.project-card__cta:focus-visible,
.donate-card__link:focus-visible,
.about-socials__link:focus-visible {
  box-shadow: 0 0 0 3px rgba(169, 227, 255, 0.35);
}

.about-socials__link {
  border-radius: 50%;
  transform: scale(1);
  transition:
    transform var(--motion-duration-base) var(--motion-ease-premium),
    filter var(--motion-duration-base) var(--motion-ease-premium),
    box-shadow var(--motion-duration-base) var(--motion-ease-premium);
}

.about-socials__link:hover,
.about-socials__link:focus-visible {
  transform: scale(1.06);
  filter: drop-shadow(0 0 8px rgba(169, 227, 255, 0.45));
}

.about-socials__link:active {
  transform: scale(0.98);
  transition-duration: var(--motion-duration-press);
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
