/* ===== 响应式样式 ===== */

/* 大型设备（桌面，1200px及以上） */
@media (min-width: 1200px) {
    .container {
        max-width: 1140px;
    }
}

/* 中型设备（平板电脑，992px及以上） */
@media (max-width: 1199px) {
    .container {
        max-width: 960px;
    }
    
    .hero-content {
        padding: 60px 0;
    }
    
    .section-title h2 {
        font-size: 2.2rem;
    }
    
    .feature-item {
        padding: 25px 20px;
    }
    
    .arch-features {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .pricing-plans {
        flex-wrap: wrap;
        justify-content: center;
        gap: 40px;
    }
    
    .pricing-plan {
        max-width: 45%;
    }
}

/* 小型设备（横向平板电脑，768px及以上） */
@media (max-width: 991px) {
    .container {
        max-width: 720px;
    }
    
    .navbar {
        padding: 15px 0;
    }
    
    .nav-links {
        display: none;
        position: absolute;
        top: 80px;
        left: 0;
        width: 100%;
        background-color: var(--white);
        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
        flex-direction: column;
        padding: 20px 0;
        z-index: 100;
    }
    
    .nav-links.active {
        display: flex;
    }
    
    .nav-links li {
        margin: 10px 0;
    }
    
    .mobile-menu-btn {
        display: flex;
    }
    
    .hero-content {
        flex-direction: column;
        text-align: center;
    }
    
    .hero-text {
        margin-bottom: 40px;
        padding-right: 0;
    }
    
    .hero-image {
        max-width: 80%;
        margin: 0 auto;
    }
    
    .features-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .highlights-container {
        flex-direction: column;
    }
    
    .highlights-image {
        margin-bottom: 40px;
    }
    
    .workflow-container {
        flex-direction: column;
    }
    
    .workflow-image {
        margin-top: 40px;
        position: static;
    }
    
    .case-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .contact-container {
        flex-direction: column;
    }
    
    .contact-info {
        margin-bottom: 40px;
    }
    
    .footer-content {
        flex-direction: column;
    }
    
    .footer-info {
        margin-bottom: 30px;
        text-align: center;
    }
    
    .footer-links {
        justify-content: space-around;
    }
}

/* 超小设备（手机，576px及以上） */
@media (max-width: 767px) {
    .container {
        max-width: 540px;
    }
    
    .section-title h2 {
        font-size: 2rem;
    }
    
    .section-title p {
        font-size: 1rem;
    }
    
    .features-grid {
        grid-template-columns: 1fr;
    }
    
    .step {
        flex-direction: column;
    }
    
    .step-content {
        width: 100%;
        margin: 0 0 30px 0;
    }
    
    .step:nth-child(even) .step-content,
    .step.right .step-content {
        margin-left: 0;
        order: 1; /* 在移动设备上恢复正常顺序 */
    }
    
    .step:nth-child(odd) .step-content,
    .step.left .step-content {
        margin-right: 0;
    }
    
    .steps:before {
        left: 50%;
    }
    
    .arch-features {
        grid-template-columns: 1fr;
    }
    
    .case-grid {
        grid-template-columns: 1fr;
    }
    
    .pricing-plan {
        max-width: 100%;
    }
    
    .pricing-plan.popular {
        transform: scale(1);
    }
    
    .pricing-plan.popular:hover {
        transform: translateY(-10px);
    }
    
    .footer-links {
        flex-direction: column;
    }
    
    .footer-links-column {
        margin-bottom: 20px;
        text-align: center;
    }
    
    .footer-bottom {
        flex-direction: column;
        text-align: center;
    }
    
    .footer-bottom p {
        margin-bottom: 10px;
    }
}

/* 超小设备（小型手机，575px以下） */
@media (max-width: 575px) {
    .hero h1 {
        font-size: 2rem;
    }
    
    .hero-buttons {
        flex-direction: column;
    }
    
    .hero-buttons .btn {
        margin: 10px 0;
    }
    
    .section-title h2 {
        font-size: 1.8rem;
    }
    
    .feature-item {
        padding: 20px 15px;
    }
    
    .feature-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .step-number {
        width: 40px;
        height: 40px;
        font-size: 1.2rem;
    }
    
    .contact-form .form-group {
        width: 100%;
    }
    
    .social-icons a {
        width: 40px;
        height: 40px;
        font-size: 1.2rem;
    }
}