/* =========================================================
   Contractors Marketing Pros — Scroll Animations
   ========================================================= */

/* Base state — hidden until visible */
[data-animate] {
    opacity: 0;
    transition: opacity 0.9s cubic-bezier(0.16, 1, 0.3, 1),
                transform 0.9s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
}
[data-animate="fade-up"]    { transform: translateY(40px); }
[data-animate="fade-down"]  { transform: translateY(-40px); }
[data-animate="fade-left"]  { transform: translateX(40px); }
[data-animate="fade-right"] { transform: translateX(-40px); }
[data-animate="fade-in"]    { transform: none; }
[data-animate="zoom-in"]    { transform: scale(0.92); }
[data-animate="zoom-out"]   { transform: scale(1.08); }

/* Visible state */
[data-animate].is-visible {
    opacity: 1;
    transform: translate(0,0) scale(1);
}

/* Stagger delays */
[data-delay="100"] { transition-delay: 100ms; }
[data-delay="150"] { transition-delay: 150ms; }
[data-delay="200"] { transition-delay: 200ms; }
[data-delay="300"] { transition-delay: 300ms; }
[data-delay="400"] { transition-delay: 400ms; }
[data-delay="500"] { transition-delay: 500ms; }
[data-delay="600"] { transition-delay: 600ms; }

/* Counter animation baseline */
.cmp-count-up { display: inline-block; }

/* Reduce motion respect */
@media (prefers-reduced-motion: reduce) {
    [data-animate],
    [data-animate].is-visible {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
    .cmp-btn::before,
    .cmp-hero-card,
    .cmp-floating-call,
    .cmp-logo-track {
        animation: none !important;
    }
}
