/* Premium motion layer, scroll reveals + smooth hover. Static HTML, no framework. */
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1);}
[data-reveal].in{opacity:1;transform:none;}
a,button{transition:transform .22s ease,opacity .22s ease,color .22s ease;}
a:hover,button:hover{transform:translateY(-1px);}
[class*="shadow"]{transition:transform .32s cubic-bezier(.16,1,.3,1),box-shadow .32s ease;}
[class*="shadow"]:hover{transform:translateY(-6px);}
[class*="overflow-hidden"] img{transition:none;}/* image zoom transition removed - static per client */
[class*="overflow-hidden"]:hover img{transform:none;}/* hover zoom removed - static per client */
@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1!important;transform:none!important;transition:none!important;}[class*="shadow"]:hover{transform:none;}}
