/* Motion stays brief and preserves the page's reading layout. */
.text-link > span[aria-hidden="true"],
.email-link > span[aria-hidden="true"] {
  display: inline-block;
  transition: transform 280ms cubic-bezier(.22,.61,.36,1);
}
.project-art img {
  transition: transform 550ms cubic-bezier(.22,.61,.36,1), box-shadow 550ms ease;
}
.project-art:hover img { transform: rotate(-5deg); }
.case-pages a:hover img { transform: none; }
.expand-symbol { transition: transform 320ms cubic-bezier(.22,.61,.36,1); }
.language button { transition: color 180ms ease; }
@media (hover: hover) and (pointer: fine) {
  .text-link:hover > span[aria-hidden="true"],
  .email-link:hover > span[aria-hidden="true"] { transform: translate(3px,-3px); }
  .text-link[download]:hover > span[aria-hidden="true"] { transform: translateY(3px); }
  .project-art:hover img,
  .project-art:focus-visible img {
    transform: rotate(-3deg) translateY(-4px);
    box-shadow: 11px 20px 30px #171e233d;
  }
  .case-pages a:hover img,
  .case-pages a:focus-visible img { transform: translateY(-3px); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .motion-target { opacity: 1 !important; transform: none !important; filter: none !important; }
  .project-art:hover img, .project-art:focus-visible img { transform: rotate(-5deg); }
  .case-pages a:hover img, .case-pages a:focus-visible img,
  .text-link > span[aria-hidden="true"], .email-link > span[aria-hidden="true"] { transform: none !important; }
}
@media print {
  .motion-target { opacity: 1 !important; transform: none !important; filter: none !important; }
}
