.motion-ready .motion-reveal {
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 620ms ease,
    transform 620ms ease;
  transition-delay: var(--motion-delay, 0ms);
}

.motion-ready .motion-reveal.motion-visible {
  opacity: 1;
  transform: none;
}

.motion-ready .hero-panel .motion-reveal {
  transform: translateY(14px);
}

.motion-ready .motion-reveal-soft {
  transform: translateY(10px);
}

.button,
.team-list-item,
.deployment-visual,
.article-feature-media,
.execution-metrics,
.execution-contact-link,
.article-insights-link {
  transition:
    background 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    opacity 180ms ease,
    transform 180ms ease;
}

.button:hover,
.button:focus-visible,
.article-insights-link:hover,
.article-insights-link:focus-visible,
.execution-contact-link:hover,
.execution-contact-link:focus-visible {
  transform: translateY(-1px);
}

.article-list-item:hover,
.article-list-item:focus-visible,
.team-list-item:hover,
.team-list-item:focus-visible {
  transform: translateX(2px);
}

.article-list-item:hover,
.article-list-item:focus-visible {
  transform: translateX(6px);
}

.team-feature-panel.is-active .team-feature-card {
  animation: motion-panel-in 320ms ease both;
}

@keyframes motion-panel-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .motion-ready .motion-reveal,
  .motion-ready .motion-reveal.motion-visible,
  .button,
  .article-list-item,
  .team-list-item,
  .deployment-visual,
  .article-feature-media,
  .execution-metrics,
  .execution-contact-link,
  .article-insights-link,
  .team-feature-panel.is-active .team-feature-card {
    animation: none;
    opacity: 1;
    transform: none;
    transition: none;
  }
}
