/* ============================================================================
   animate.css 精简版 - 仅保留目标站首页使用的 WOW 动画
   (fadeInUp / fadeInDown / fadeInLeft / fadeInRight)
   对齐 www.fame-sh.com (wds168) 滚动动画效果
   ========================================================================== */

.animated {
    animation-duration: 1s;
    animation-fill-mode: both;
}

.animated.infinite {
    animation-iteration-count: infinite;
}

.animated.hinge {
    animation-duration: 2s;
}

/* fadeIn */
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}
.fadeIn { animation-name: fadeIn; }

/* fadeInUp */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 60px, 0);
    }
    to {
        opacity: 1;
        transform: none;
    }
}
.fadeInUp { animation-name: fadeInUp; }

/* fadeInDown */
@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translate3d(0, -60px, 0);
    }
    to {
        opacity: 1;
        transform: none;
    }
}
.fadeInDown { animation-name: fadeInDown; }

/* fadeInLeft */
@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translate3d(-60px, 0, 0);
    }
    to {
        opacity: 1;
        transform: none;
    }
}
.fadeInLeft { animation-name: fadeInLeft; }

/* fadeInRight */
@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translate3d(60px, 0, 0);
    }
    to {
        opacity: 1;
        transform: none;
    }
}
.fadeInRight { animation-name: fadeInRight; }

/* zoomIn */
@keyframes zoomIn {
    from {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3);
    }
    50% { opacity: 1; }
}
.zoomIn { animation-name: zoomIn; }

/* 元素初始隐藏 (由 JS 添加, 滚动进入视口时切换为 animated) */
.wow {
    visibility: hidden;
}
.wow.animated {
    visibility: visible;
}

@media (prefers-reduced-motion: reduce) {
    .animated { animation-duration: 0.01ms !important; }
}
