/* Lightweight interaction feedback; movement is limited to mouse/trackpad users. */
.btn,.svc,.work-grid img,.socials a,.fcol a,.fcontact a,.legal a,.nav a,.learn,.stat-ic,.arrow,.menu-toggle{
  transition:translate .22s ease,scale .35s ease,box-shadow .22s ease,border-color .22s ease,color .2s ease,background-color .2s ease,filter .22s ease;
}
.svc>img{transition:scale .5s cubic-bezier(.2,.7,.3,1),filter .3s ease}
.btn>svg,.learn>svg{transition:translate .22s ease}
.socials a{display:inline-flex;border-radius:5px}
.field input,.field select{transition:border-color .2s ease,box-shadow .2s ease}
.field input:focus,.field select:focus{border-color:#1683ff;box-shadow:0 0 0 3px #1683ff20}
.svc:focus-within{border-color:#79b9ed;box-shadow:0 8px 24px #00366316}
.btn:focus-visible,.socials a:focus-visible{filter:brightness(1.08)}
.fcontact a:hover,.legal a:hover{color:#72dc58}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .btn:hover{translate:0 -3px;filter:brightness(1.06);box-shadow:0 7px 18px #001e4430}
  .btn:active{translate:0 0;scale:.98}
  .btn:hover>svg:last-child:not(:first-child),.learn:hover>svg{translate:3px 0}
  .svc:hover{translate:0 -6px;border-color:#88bfe9;box-shadow:0 14px 30px #0036631c}
  .svc:hover>img{scale:1.045;filter:brightness(1.04)}
  .work-grid img:hover{scale:1.025;filter:brightness(1.05);box-shadow:0 10px 22px #00366325}
  .socials a:hover{translate:0 -4px;scale:1.08;filter:drop-shadow(0 4px 6px #1683ff66)}
  .footer .fcol a:hover{color:#72dc58}
  .stat:hover .stat-ic{scale:1.06;border-color:#fff;box-shadow:0 0 22px #74c8ff33}
  .arrow:hover{translate:0 -2px;color:#009c36}
  .menu-toggle:hover{filter:brightness(1.15)}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
