/* Elementor controls the trigger, device selection, duration and delay.
   Shorter travel and softer easing suit this layout; individual transforms
   preserve the native SVG offsets and card hover transforms. */
.crocodile-page .cro-motion.animated {
    animation-timing-function: cubic-bezier(.22, 1, .36, 1);
    animation-fill-mode: both;
}
.crocodile-page .cro-motion.animated.fadeInUp { animation-name: cro-rise; }
.crocodile-page .cro-motion.animated.zoomIn { animation-name: cro-focus; }

@keyframes cro-rise {
    from { opacity: 0; translate: 0 24px; }
    to { opacity: 1; translate: 0 0; }
}
@keyframes cro-focus {
    from { opacity: 0; translate: 0 20px; scale: .965; }
    to { opacity: 1; translate: 0 0; scale: 1; }
}

/* Native hover offsets are disabled for touch and reduced-motion visitors. */
@media (hover: none), (pointer: coarse), (prefers-reduced-motion: reduce) {
    .crocodile-page .cro-hover-card { --e-con-transform-translateY: 0px !important; }
}
@media (prefers-reduced-motion: reduce) {
    .crocodile-page .cro-motion.elementor-invisible { visibility: visible; }
}
@media print {
    .crocodile-page .cro-motion { visibility: visible !important; animation: none !important; }
}
