/* Enhancements are opt-in. The underlying document never depends on motion. */
html.motion-ready {
  scroll-behavior: smooth;
}

html.motion-ready .hero-landscape svg {
  transform-origin: 50% 54%;
}

html.motion-ready :is(.button, .nav-contact, .story-primary-button, .evidence-jump) {
  transition: background-color 240ms ease, border-color 240ms ease, color 240ms ease,
    transform 220ms cubic-bezier(.2,.7,.25,1);
}

html.motion-ready :is(.button, .story-primary-button, .story-text-link, .story-founder-email, .export-button) svg,
html.motion-ready .nav-contact > span,
html.motion-ready .evidence-jump > span,
html.motion-ready .candidate-button > svg {
  transition: transform 260ms cubic-bezier(.2,.7,.25,1), color 220ms ease;
}

html.motion-ready :is(.button, .story-primary-button, .story-text-link, .story-founder-email):focus-visible svg,
html.motion-ready .candidate-button:focus-visible > svg {
  transform: translateX(3px);
}

html.motion-ready .nav-contact:focus-visible > span {
  transform: translate(2px, -2px);
}

html.motion-ready .evidence-jump:focus-visible > span {
  transform: translateY(3px);
}

html.motion-ready :is(.button, .nav-contact, .story-primary-button, .evidence-jump):active {
  transform: translateY(1px) scale(.985);
}

html.motion-ready .candidate-button {
  transition: background-color 240ms ease, color 240ms ease;
}

html.motion-ready .candidate-initials {
  transition: background-color 240ms ease, border-color 240ms ease, color 240ms ease;
}

html.motion-ready .evidence-tabs button {
  transition: border-color 240ms ease, color 240ms ease;
}

html.motion-ready .motion-details .story-faq-icon {
  flex-shrink: 0;
  transform-origin: center;
  transition: transform 280ms cubic-bezier(.2,.7,.25,1);
}

html.motion-ready .motion-details .story-faq-vertical {
  transition: opacity 200ms ease;
}

html.motion-ready .motion-details[data-motion-open="true"] .story-faq-icon {
  transform: rotate(180deg);
}

html.motion-ready .motion-details[data-motion-open="true"] .story-faq-vertical {
  opacity: 0;
}

html.motion-ready .motion-details[data-motion-open="false"] .story-faq-vertical {
  opacity: 1;
}

@media (hover: hover) {
  html.motion-ready :is(.button, .story-primary-button, .story-text-link, .story-founder-email):hover svg,
  html.motion-ready .candidate-button:hover > svg {
    transform: translateX(3px);
  }

  html.motion-ready .nav-contact:hover > span {
    transform: translate(2px, -2px);
  }

  html.motion-ready .evidence-jump:hover > span {
    transform: translateY(3px);
  }

  html.motion-ready .export-button:hover svg {
    transform: translateY(2px);
  }
}
