/* Animations CSS for Advocate Legal Pro theme */

.js .fade-in,
.js .slide-up,
.js [data-reveal] {
    opacity: 0;
    transform: translateY(18px) scale(0.992);
    transition: opacity 0.46s cubic-bezier(0.22, 1, 0.36, 1), transform 0.46s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: opacity, transform;
}

.js .fade-in.visible,
.js .slide-up.visible,
.js [data-reveal].visible,
.js [data-reveal].is-visible {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.feature-grid > .fade-in:nth-child(2),
.media-grid > .fade-in:nth-child(2),
.case-grid > .fade-in:nth-child(2),
.content-grid > .fade-in:nth-child(2),
.practice-grid > .fade-in:nth-child(2),
.team-grid > .fade-in:nth-child(2),
.testimonial-grid > .fade-in:nth-child(2),
.service-router-grid > .fade-in:nth-child(2) {
    transition-delay: 0.06s;
}

.feature-grid > .fade-in:nth-child(3),
.media-grid > .fade-in:nth-child(3),
.case-grid > .fade-in:nth-child(3),
.content-grid > .fade-in:nth-child(3),
.practice-grid > .fade-in:nth-child(3),
.team-grid > .fade-in:nth-child(3),
.testimonial-grid > .fade-in:nth-child(3),
.service-router-grid > .fade-in:nth-child(3) {
    transition-delay: 0.12s;
}

.feature-grid > .fade-in:nth-child(4),
.media-grid > .fade-in:nth-child(4),
.case-grid > .fade-in:nth-child(4),
.content-grid > .fade-in:nth-child(4),
.practice-grid > .fade-in:nth-child(4),
.team-grid > .fade-in:nth-child(4),
.testimonial-grid > .fade-in:nth-child(4),
.service-router-grid > .fade-in:nth-child(4) {
    transition-delay: 0.18s;
}

.card-hover {
    transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.card-hover:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 32px rgba(7, 17, 31, 0.14);
}

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

    .fade-in,
    .slide-up,
    [data-reveal],
    .card-hover {
        transition: none;
        transform: none;
        opacity: 1;
    }
}
