/* Motion: scroll-in reveal (driven by motion.js), hover lift, smooth anchor scrolling */
html{scroll-behavior:smooth}
[data-mo]{opacity:0;transform:translateY(20px);transition:opacity .75s cubic-bezier(.2,.65,.2,1) var(--mo-d,0ms),transform .75s cubic-bezier(.2,.65,.2,1) var(--mo-d,0ms)}
[data-mo].mo-in{opacity:1;transform:none}

/* hover: buttons and cards lift slightly */
.hm-btn,.navbar__cta{transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.hm-btn:hover,.navbar__cta:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(27,58,92,.16)}
.hm-btn:active{transform:translateY(0);box-shadow:none}
.pg-member,.pg-kind,.pg-plan,.pg-quote,.sd-fit>div,.pg-stats>div,.pg-side{transition:transform .25s ease,box-shadow .25s ease,border-color .25s}
.pg-member:hover,.pg-kind:hover,.pg-plan:hover,.pg-quote:hover,.sd-fit>div:hover,.pg-stats>div:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(27,58,92,.10);border-color:#C5D3E3}
.pg-row,.pg-job{transition:background .2s,padding .25s}
.pg-row:hover{background:linear-gradient(90deg,rgba(0,188,212,.06),transparent)}
.pg-panel,.hm-panel{transition:transform .5s ease}
.hm-story:hover .hm-panel,.pg-hero--split:hover .pg-panel{transform:translateY(-4px)}
.hm-link,.pg-hero .pg-crumbs a{transition:color .2s}
.hm-faq details>summary{transition:color .2s}
.hm-faq details[open]>p{animation:mo-fade .35s ease}
@keyframes mo-fade{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.navbar{transition:box-shadow .3s,background .3s}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  [data-mo]{opacity:1;transform:none;transition:none}
  .hm-btn:hover,.pg-member:hover,.pg-kind:hover,.pg-plan:hover,.pg-quote:hover{transform:none}
}
