/* doc-project | www/cnoc/assets/css/animations.css | Définit les animations douces au scroll et les micro-mouvements utiles de la landing page commerciale CNOC. | Expose: aucun | Dépend de: assets/js/animations.js, www/cnoc/index.php | Impacte: apparition au scroll, légers mouvements du mockup et des CTA | Tables: aucune */
[data-animate] {
    opacity: 0;
    transform: translateY(26px);
    transition: opacity 560ms ease, transform 560ms ease;
    transition-delay: var(--delay, 0ms);
}

[data-animate].is-visible {
    opacity: 1;
    transform: translateY(0);
}

.product-shell__window,
.cta-panel,
.pricing-card,
.card,
.step-card {
    transition: transform 200ms ease, border-color 200ms ease, box-shadow 200ms ease;
}

.product-shell__window {
    animation: heroFloat 7s ease-in-out infinite;
}

.hero__note,
.badge-list__item {
    animation: pulseGlow 8s ease-in-out infinite;
}

@keyframes heroFloat {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
}

@keyframes pulseGlow {
    0%,
    100% {
        box-shadow: 0 0 0 0 rgba(111, 231, 255, 0);
    }
    50% {
        box-shadow: 0 0 0 10px rgba(111, 231, 255, 0.03);
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    [data-animate] {
        opacity: 1;
        transform: none;
        transition: none;
    }

    .product-shell__window,
    .hero__note,
    .badge-list__item {
        animation: none;
    }
}