/* Landing page only. Finite motion; no scroll handlers or perpetual loops. */
@media (prefers-reduced-motion: no-preference) {
  .marketing .btn {
    transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
  }
  .marketing .btn > span:last-child,
  .marketing .feature-icon {
    transition: transform 200ms ease;
  }
  .marketing .story-columns article,
  .marketing .sample-grid article {
    transition: transform 200ms ease, box-shadow 200ms ease;
  }
  .marketing .tour-panel:not([hidden]) {
    animation: landing-panel-in 300ms ease-out;
  }
  .marketing .faq-list details[open] > p {
    animation: landing-panel-in 220ms ease-out;
  }
  @media (hover: hover) and (pointer: fine) {
    .marketing .btn:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 16px #00000912;
    }
    .marketing .btn:hover > span:last-child { transform: translateX(3px); }
    .marketing .pathways article:hover .feature-icon { transform: translateY(-3px) rotate(-5deg); }
    .marketing .story-columns article:hover,
    .marketing .sample-grid article:hover {
      transform: translateY(-3px);
      box-shadow: 0 5px 12px #0000090d;
    }
  }
  .marketing .btn:active { transform: translateY(0); }
  @keyframes landing-panel-in {
    from { opacity: .5; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
  }
}
