/* Finite entrances keep the artwork calm and readable. */
@media (prefers-reduced-motion: no-preference) {
  .visual img { transition: transform 650ms cubic-bezier(.2,.7,.2,1); }
  .home-grid img { transition: transform 450ms ease, box-shadow 450ms ease; }
  .work-link span, .email span { display:inline-block; transition:transform 250ms ease; }
  summary span { transition:transform 220ms ease; }
  .read-book, button { transition:background-color 200ms ease, color 200ms ease; }
  nav a { transition:color 200ms ease; }
  .home-grid a:focus-visible img { transform:translateY(-5px); box-shadow:0 12px 24px #18251e18; }
  @media (hover:hover) and (pointer:fine) {
    .project .visual:hover img { transform:scale(1.035); }
    .home-grid a:hover img { transform:translateY(-5px); box-shadow:0 12px 24px #18251e18; }
    .work-link:hover span { transform:translateY(4px); }
    .email:hover span { transform:translate(3px,-3px); }
  }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
