/* Motion-only enhancement. Original layout, artwork, colors, and copy are retained. */
@media(prefers-reduced-motion:no-preference){
  .project-card{transition:transform .18s ease}
  .project-image{transition:box-shadow .2s ease}
  .filters button{transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .12s ease}
  .dialog-close,.detail-next,.menu-toggle{transition:background-color .16s ease,color .16s ease,transform .12s ease}
  .site-header nav a,.text-link,.detail-footer>a,.contact-email a,.site-footer>a{transition:color .16s ease,opacity .12s ease}
  .button:focus-visible{transform:translateY(-3px)}
  .project-card:focus-visible{transform:translateY(-2px)}
  .project-card:focus-visible .project-image{box-shadow:0 8px 16px #292d2612}
  .project-card:focus-visible .project-open{background:var(--lime);transform:rotate(45deg)}
  .filters button:focus-visible:not(.active){border-color:var(--ink)}
  .dialog-close:focus-visible{background:var(--lime)}
  .detail-next:focus-visible{color:#747f42}
  .button:active,.filters button:active,.dialog-close:active,.detail-next:active,.menu-toggle:active,.project-card:active{transform:translateY(1px)}
  .site-header nav a:active,.text-link:active,.contact-email a:active,.site-footer>a:active{opacity:.72}
  dialog[open]{animation:polish-dialog-in .2s cubic-bezier(.2,.65,.3,1)}
  dialog[open]::backdrop{animation:polish-backdrop-in .18s ease}
  @media(hover:hover){
    .project-card:hover{transform:translateY(-2px)}
    .project-card:hover .project-image{box-shadow:0 8px 16px #292d2612}
    .project-card:active{transform:translateY(1px)}
    .dialog-close:hover{background:var(--lime)}
    .detail-next:hover{color:#747f42}
  }
  @media(max-width:760px){.site-header nav.is-open{animation:polish-menu-in .16s ease-out}}
}
@keyframes polish-dialog-in{from{opacity:.55;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes polish-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes polish-menu-in{from{opacity:.65;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
