/* Civic motion: measured entrances and small, precise responses. */
@media (prefers-reduced-motion: no-preference) {
  html { scroll-behavior: smooth; }
  [data-motion-pending] { opacity: 0; transform: translateY(18px); }
  nav.primary a { position: relative; }
  nav.primary a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    height: 1px;
    background: var(--ink);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 320ms cubic-bezier(.22, 1, .36, 1);
  }
  nav.primary a:not([aria-current="page"]):hover { border-bottom-color: transparent; }
  nav.primary a:not([aria-current="page"]):is(:hover, :focus-visible)::after { transform: scaleX(1); }
  .gov-directory svg { transition: transform 360ms cubic-bezier(.22, 1, .36, 1); }
  .gov-directory a:is(:hover, :focus-visible) svg { transform: translateY(4px); }
  .gov-notice strong { transition: transform 400ms cubic-bezier(.22, 1, .36, 1), color 250ms ease; }
  .gov-notice:is(:hover, :focus-visible) strong { transform: translateX(4px); }
  .services a, .notices h3 a, footer.site a { transition: color 220ms ease, text-decoration-color 220ms ease; }
  .feedback button { transition: background-color 220ms ease, color 220ms ease, border-color 220ms ease; }
  .tok { transition: box-shadow 200ms ease, transform 380ms cubic-bezier(.22, 1, .36, 1); }
}
/* Only JavaScript-registered observer targets enter the pending state. */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .tok.seal:hover, .tok.seal:focus-visible { transform: none; }
}

@media print {
  [data-motion-pending] { opacity: 1 !important; transform: none !important; }
}
