/* 响应式设计样式 */

/* 大屏幕设备 (>= 1200px) */
@media (min-width: 1200px) {
    .container {
        max-width: 1200px;
    }
}

/* 中屏幕设备 (992px - 1199px) */
@media (max-width: 1199px) {
    .container {
        max-width: 100%;
    }
    
    .section-title h2 {
        font-size: 32px;
    }
    
    .service-card h3,
    .solution-card-overlay h3 {
        font-size: 22px;
    }
    
    .case-card-content h3,
    .news-card-content h3 {
        font-size: 18px;
    }
}

/* 小屏幕设备 (768px - 991px) */
@media (max-width: 991px) {
    .container {
        max-width: 100%;
    }
    
    .section {
        padding: 60px 0;
    }
    
    .section-title h2 {
        font-size: 28px;
    }
    
    .section-title p {
        font-size: 16px;
    }
    
    .navbar-nav {
        flex-direction: column;
        gap: 0;
    }
    
    .nav-item {
        width: 100%;
    }
    
    .nav-link {
        padding: 12px 15px;
    }
    
    .dropdown-menu {
        position: static;
        float: none;
        width: auto;
        margin-top: 0;
        background-color: transparent;
        border: 0;
        box-shadow: none;
    }
    
    .btn {
        padding: 8px 20px;
        font-size: 15px;
    }
    
    .service-card,
    .case-card,
    .news-card,
    .solution-card {
        margin-bottom: 25px;
    }
    
    .partners-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 25px;
    }
    
    .partner-logo {
        max-width: 120px;
    }
    
    /* 新闻列表页响应式 */
    .news-grid {
        flex-direction: column;
    }
    
    .news-grid > div {
        width: 100%;
    }
    
    /* 左右两侧布局切换为垂直堆叠 */
    .page-content .container > .row {
        flex-direction: column;
    }
    
    .page-content .col-lg-8,
    .page-content .col-lg-4 {
        width: 100%;
    }
    
    .sidebar-section {
        margin-top: 30px;
    }
}

/* 平板设备 (576px - 767px) */
@media (max-width: 767px) {
    .container {
        max-width: 100%;
    }
    
    .section {
        padding: 50px 0;
    }
    
    .section-title h2 {
        font-size: 24px;
        padding-bottom: 15px;
    }
    
    .section-title h2::after {
        width: 60px;
    }
    
    .service-card,
    .case-card,
    .news-card,
    .solution-card {
        margin-bottom: 20px;
    }
    
    .service-card h3,
    .solution-card-overlay h3 {
        font-size: 20px;
    }
    
    .case-card-image,
    .news-card-image,
    .solution-card-image {
        height: 180px;
    }
    
    .partners-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    
    .partner-logo {
        max-width: 100px;
    }
    
    .footer-col {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

/* 移动设备 (<= 575px) */
@media (max-width: 575px) {
    .container {
        max-width: 100%;
        padding: 0 15px;
    }
    
    .section {
        padding: 40px 0;
    }
    
    .section-title {
        margin-bottom: 30px;
    }
    
    .section-title h2 {
        font-size: 22px;
        padding-bottom: 12px;
    }
    
    .section-title p {
        font-size: 15px;
    }
    
    .navbar-brand img {
        max-height: 35px;
    }
    
    .navbar-scrolled .navbar-brand img {
        max-height: 30px;
    }

    .breadcrumb {
        font-size: 12px;
    }
    
    .btn {
        padding: 8px 16px;
        font-size: 14px;
    }
    
    .service-card-icon {
        font-size: 40px;
    }
    
    .service-card h3,
    .solution-card-overlay h3 {
        font-size: 18px;
    }
    
    .case-card-image,
    .news-card-image,
    .solution-card-image {
        height: 160px;
    }
    
    .partners-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .partner-logo {
        max-width: 120px;
    }
    
    .footer-col {
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    .footer-bottom .container {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }
    
    .footer-policy {
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
    }
    
    .back-to-top {
        width: 45px;
        height: 45px;
        bottom: 20px;
        right: 20px;
    }
    
    .form-control {
        padding: 10px 12px;
        font-size: 14px;
    }
}