/* MEDOPTIM V3.2 — motion layer only. No layout, copy, imagery or palette changes. */
.mo-animate{opacity:0;transform:translateY(24px);transition:opacity .68s cubic-bezier(.2,.65,.3,1),transform .68s cubic-bezier(.2,.65,.3,1)}
.mo-animate.mo-in{opacity:1;transform:none}
.mo-delay-1{transition-delay:.07s}.mo-delay-2{transition-delay:.14s}.mo-delay-3{transition-delay:.21s}.mo-delay-4{transition-delay:.28s}

/* Existing V3.1 homepage reveal, slightly smoother without changing its geometry. */
.reveal{transition-timing-function:cubic-bezier(.2,.65,.3,1)!important}

/* Micro-interactions: visual feedback only. */
@media (hover:hover) and (pointer:fine){
  .feature-card,.criteria,.strategy,.visual-card,.card,.contactcard,.postcard,.trust,.study-box,.final-card{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
  .feature-card:hover,.criteria:hover,.strategy:hover,.visual-card:hover,.card:hover,.contactcard:hover,.postcard:hover{transform:translateY(-5px)}
  .btn{will-change:transform}
  .btn:hover{transform:translateY(-2px) scale(1.015)}
  .professions .pro{transition:transform .22s ease}
  .professions .pro:hover{transform:translateY(-3px)}
}

/* Hero artwork receives a tiny pointer parallax. Transform is JS-driven. */
.hero-art,.hero-media{--mo-x:0px;--mo-y:0px}
.mo-parallax{transform:translate3d(var(--mo-x),var(--mo-y),0);transition:transform .22s ease-out;will-change:transform}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  .mo-animate,.reveal{opacity:1!important;transform:none!important;transition:none!important}
  .mo-parallax{transform:none!important;transition:none!important}
  .feature-card,.criteria,.strategy,.visual-card,.card,.contactcard,.postcard,.btn,.professions .pro{transition:none!important}
}
