/* Progressive enhancement: without JavaScript every block is fully visible. */
.motion-enabled .motion-target {
  transition:
    opacity 500ms ease var(--reveal-delay, 0ms),
    transform 500ms cubic-bezier(.2, .65, .3, 1) var(--reveal-delay, 0ms),
    border-color 180ms ease;
}

.motion-enabled .reveal-pending {
  opacity: .76;
  transform: translateY(12px);
}

.motion-enabled .motion-target:focus-within {
  opacity: 1;
  transform: none;
  transition: none;
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .week,
  .learning-grid article,
  .audience-grid article {
    transition: border-color 180ms ease;
  }

  .week:hover,
  .learning-grid article:hover,
  .audience-grid article:hover {
    border-color: #729ac2;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }

  .motion-enabled .motion-target,
  .motion-enabled .reveal-pending {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
