/* Site-wide entrance and scroll-reveal motion for pages without their own animations. Loaded on every page; motion.js decides what to animate. */
@keyframes mxRise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.mxRise{animation:mxRise .9s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--mxd,0s)}
.mxRv{animation:none !important;opacity:0;transform:translateY(36px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--mxd,0s)}
.mxRv.mxIn{opacity:1;transform:none}
.mxRv.mxDone{transition-delay:0s}

/* Work page cards */
.szWxImg{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.szWxCard:hover .szWxImg{transform:translateY(-6px)}
.szWxBadge{transition:background .3s,color .3s,border-color .3s}
.szWxCard:hover .szWxBadge{background:#3A6CE3;border-color:#3A6CE3;color:#fff}
.szWxTitle{transition:color .3s}

@media (prefers-reduced-motion: reduce){.mxRise{animation:none}.mxRv{opacity:1;transform:none;transition:none}.szWxCard:hover .szWxImg{transform:none}}
