/* ── Motion performance: mobile + reduced-motion ──
   Ensures content is instantly visible (SEO / CLS / LCP).
   Swiper carousels keep transform for slide mechanics. */

/* Critical: AOS hides content until scroll — override immediately on all viewports */
body.public-site [data-aos],
body.public-site [data-aos].aos-init,
body.public-site [data-aos].aos-animate,
body.public-site [data-aos]:not(.aos-animate) {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
    pointer-events: auto !important;
}

@media (max-width: 768px), (prefers-reduced-motion: reduce) {
    /* Decorative hero / background motion */
    body.public-site .hero-shape,
    body.public-site .hero-shape--1,
    body.public-site .hero-shape--2,
    body.public-site .hero-shape--3 {
        animation: none !important;
        transform: none !important;
    }

    body.public-site .hero-slide-photo,
    body.public-site .hero-slide--photo.swiper-slide-active .hero-slide-photo {
        transition: none !important;
        transform: none !important;
        animation: none !important;
    }

    body.public-site .hero-slide-watermark--featured {
        transform: none !important;
    }

    /* Section entrance / hover motion (non-essential) */
    body.public-site .feature-card,
    body.public-site .blog-card-premium,
    body.public-site .testimonial-card,
    body.public-site .showcase-block,
    body.public-site .cta-section,
    body.public-site .partner-logo-item,
    body.public-site .product-feature-card,
    body.public-site .pl-benefit-item,
    body.public-site .pl-usecase-card,
    body.public-site .pl-related-card,
    body.public-site .section-header,
    body.public-site .stat-item {
        animation: none !important;
        transition: none !important;
        transform: none !important;
        opacity: 1 !important;
    }

    body.public-site .feature-card:hover,
    body.public-site .blog-card-premium:hover {
        transform: none !important;
        box-shadow: var(--cp-shadow, 0 4px 24px rgba(15, 76, 129, 0.08)) !important;
    }

    /* Product landing page */
    body.public-site .product-landing .pl-hero,
    body.public-site .product-landing .pl-hero__actions .btn-primary,
    body.public-site .product-landing .pl-hero__actions .btn-outline-primary,
    body.public-site .product-landing .pl-hero__actions .btn-outline-secondary,
    body.public-site .product-landing .product-feature-card,
    body.public-site .product-landing .product-screenshot,
    body.public-site .product-landing .pl-related-links__pill {
        animation: none !important;
        transition: none !important;
    }

    body.public-site .product-landing .product-feature-card:hover,
    body.public-site .product-landing .pl-related-links__pill:hover {
        transform: none !important;
    }

    /* Article detail */
    body.public-site .article-detail .ad-category:hover,
    body.public-site .article-detail .ad-related-links__pill:hover,
    body.public-site .article-detail .ad-popular__link:hover {
        transform: none !important;
        transition: none !important;
    }

    /* Counter stats: show final values via JS; ensure visible */
    body.public-site .counter {
        opacity: 1 !important;
    }

    /* Suppress scroll-driven fade on below-fold blocks */
    body.public-site .section-padding,
    body.public-site .section-header,
    body.public-site .row.g-4 > [class*="col-"] {
        opacity: 1 !important;
    }
}

/* Reduced motion: desktop users with accessibility preference */
@media (prefers-reduced-motion: reduce) {
    body.public-site *,
    body.public-site *::before,
    body.public-site *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
    }

    body.public-site .swiper-wrapper {
        transition-duration: 0.001ms !important;
    }
}

/* Mobile: faster swiper transitions (functional, not decorative) */
@media (max-width: 768px) {
    body.public-site .hero-swiper.swiper-fade .swiper-slide {
        transition-duration: 0ms !important;
    }

    body.public-site .partners-swiper .swiper-wrapper {
        transition-timing-function: linear !important;
    }
}
