/* 动画定义 */
/* 字母逐个放大动画 */
@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale(0.5);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rotateGear {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@keyframes rotateGearReverse {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(-360deg);
    }
}

@keyframes signalPulse {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0.8;
    }
    70% {
        transform: translate(-50%, -50%) scale(3);
        opacity: 0;
    }
    100% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0;
    }
}

@keyframes typing {
    from {
        width: 0;
    }
    to {
        width: 100%;
    }
}

@keyframes blink-caret {
    from, to {
        border-color: transparent;
    }
    50% {
        border-color: #6a5acd;
    }
}

/* 应用动画 */
.main-title {
    opacity: 0;
    transform: scale(0.5);
    animation: zoomIn 1s forwards 0.5s;
}

/* 应用动画到每个字母 */
.letter-1 { animation: zoomIn 1s forwards 0.5s; }
.letter-2 { animation: zoomIn 1s forwards 0.6s; }
.letter-3 { animation: zoomIn 1s forwards 0.7s; }
.letter-4 { animation: zoomIn 1s forwards 0.8s; }
.letter-5 { animation: zoomIn 1s forwards 0.9s; }

/* 副标题动画保持不变 */
.subtitle {
  opacity: 0;
  animation: fadeIn 1s forwards 1s;
}

.gear {
    opacity: 0;
    animation: rotateGear 4s linear infinite, fadeIn 1s forwards 1.5s;
}

.gear.small {
    opacity: 0;
    animation: rotateGearReverse 4s linear infinite, fadeIn 1s forwards 1.5s;
}

.gear-label {
    opacity: 0;
    animation: fadeIn 1s forwards 2s;
}

.signal-effect {
    opacity: 0;
    animation: signalPulse 2s infinite 2s;
}

.page-content {
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 1s forwards 2s;
}

/*团队成员页动画*/
.about_us .about_con marquee {
direction: left;
}