/* Laisela Studio — rustige luxe animaties. Alleen publieke pagina's. */
:root{--motion-ease:cubic-bezier(.22,1,.36,1)}
.ls-reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity .8s var(--motion-ease),transform .8s var(--motion-ease)}
.ls-reveal.ls-visible{opacity:1;transform:translate3d(0,0,0)}
.ls-review-in{transform:translate3d(-42px,0,0)}
.ls-review-in.ls-visible{transform:translate3d(0,0,0)}
.ls-card-float{animation:ls-gentle-float 7s ease-in-out infinite;animation-delay:var(--ls-float-delay,0s)}
@keyframes ls-gentle-float{0%,100%{translate:0 0}50%{translate:0 -6px}}
@media(hover:hover) and (pointer:fine){.ls-motion-enabled .card{transition:box-shadow .35s ease,scale .35s ease,border-color .35s ease}.ls-motion-enabled .card:hover{scale:1.018;box-shadow:0 18px 40px rgba(56,32,22,.13)}.ls-motion-enabled .btn{transition:transform .25s ease,box-shadow .25s ease}.ls-motion-enabled .btn:hover{transform:translateY(-2px)}}
@media(prefers-reduced-motion:reduce){.ls-reveal,.ls-review-in{opacity:1!important;transform:none!important;transition:none!important}.ls-card-float{animation:none!important;translate:none!important}.ls-motion-enabled .card,.ls-motion-enabled .btn{transition:none!important}}
