/* Short, one-time movements. Content is visible if JavaScript is unavailable. */
@media (prefers-reduced-motion: no-preference) {
  .motion-ready .motion-item {
    transition: opacity .44s ease-out, transform .44s cubic-bezier(.2,.7,.2,1);
    transition-delay: var(--motion-delay, 0ms);
  }
  .motion-ready .motion-pending { opacity:0; transform:translateY(14px); }
  .motion-ready .hero-intro, .motion-ready .pc-hero-copy {
    animation: hero-settle .48s ease-out both;
  }
  .motion-ready .hero-benefits { animation: hero-settle .48s .08s ease-out both; }
  .quick-dialog[open] { animation: panel-arrive .24s cubic-bezier(.2,.7,.2,1) both; }
  #status-modal[open] .modal-dialog { animation: panel-arrive .2s ease-out both; }
  .quick-dialog[open]::backdrop { animation: backdrop-arrive .2s ease-out both; }
  .button, .cta-button { transition: background-color .18s ease, transform .18s ease, box-shadow .18s ease; }
  .button:active, .cta-button:active { transform:translateY(1px); }
  @media (hover:hover) and (pointer:fine) {
    .button:hover > span[aria-hidden], .sticky-open:hover > span[aria-hidden] { transform:translate(2px,-2px); }
    .button > span[aria-hidden], .sticky-open > span[aria-hidden] { transition:transform .2s ease; }
  }
}
@keyframes hero-settle {
  from { opacity:.7; transform:translateY(8px); }
  to { opacity:1; transform:translateY(0); }
}
@keyframes panel-arrive {
  from { opacity:0; transform:translateY(12px); }
  to { opacity:1; transform:translateY(0); }
}
@keyframes backdrop-arrive { from { opacity:0; } to { opacity:1; } }
@media (prefers-reduced-motion:reduce) {
  .motion-ready .motion-item, .motion-ready .motion-pending { opacity:1; transform:none; transition:none; }
}
