/* INFINEX APEX – subtle site-wide motion (motion.js). Visual polish only: no layout changes. */
.mo-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:var(--mo-d,0s)}
.mo-reveal.mo-in{opacity:1;transform:none}
.btn,.h-btn,.cs,.perks>div,.add-btn{transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s,background .2s,color .2s,border-color .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(243,107,33,.22)}
.btn:active,.h-btn:active,.cs:active{transform:scale(.97)}
.h-btn:hover{transform:translateY(-1px)}
.cs:hover{transform:translateY(-2px)}
.perks>div:hover{transform:translateY(-3px);box-shadow:var(--sh)}
.card{transition:box-shadow .25s,transform .25s cubic-bezier(.2,.8,.2,1)}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(20,24,30,.14)}
.card-img img{transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.card:hover .card-img img{transform:scale(1.05)}
.sec-head h2{position:relative}
.sec-head h2::after{content:"";position:absolute;left:0;bottom:-5px;height:3px;width:0;border-radius:3px;background:var(--or);transition:width .7s .2s cubic-bezier(.2,.8,.2,1)}
.mo-in .sec-head h2::after,.sec-head.mo-in h2::after{width:46px}
.modal-card,.drawer{transition-timing-function:cubic-bezier(.2,.8,.2,1)}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){.mo-reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}.card:hover,.btn:hover{transform:none}}
