/* ==========================================================================
   响应式 responsive.css
   断点：1200 / 992 / 768 / 480
   ========================================================================== */

@media (max-width: 1200px) {
    .container { padding: 0 20px; }
    .hero__inner { grid-template-columns: 1fr; gap: 40px; }
    .hero h1 { font-size: 40px; }
    .org-grid { grid-template-columns: repeat(4, 1fr); }
    .process { grid-template-columns: repeat(4, 1fr); }
    .process__item::after { display: none; }
    .article-layout { grid-template-columns: 1fr; }
    .article-sidebar { position: static; }
    .deliver-list { grid-template-columns: repeat(2, 1fr); }
    .info-cards, .step-cards { grid-template-columns: repeat(2, 1fr); }
    .exp-band { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 992px) {
    .section { padding: 64px 0; }
    .nav { display: none; }
    .header-phone { display: none; }
    .nav-toggle { display: flex; }
    .grid--4 { grid-template-columns: repeat(2, 1fr); }
    .grid--3 { grid-template-columns: repeat(2, 1fr); }
    .stats { grid-template-columns: repeat(2, 1fr); }
    .stats__item:nth-child(2) { border-right: 0; }
    .stats__item:nth-child(1), .stats__item:nth-child(2) { border-bottom: 1px solid var(--border); }
    .flow { grid-template-columns: repeat(2, 1fr); }
    .home-news, .consult-panel, .tool-band { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 30px; }
    .process { grid-template-columns: repeat(3, 1fr); }
    .exp-band { grid-template-columns: repeat(2, 1fr); }
    .hero { padding: 60px 0 70px; }

    /* 移动端导航展开 */
    .site-header.nav-open .nav {
        display: flex; flex-direction: column; align-items: stretch;
        position: absolute; left: 0; right: 0; top: 72px;
        background: #fff; border-bottom: 1px solid var(--border);
        padding: 12px 20px 18px; gap: 2px; box-shadow: var(--shadow);
    }
    .site-header.nav-open .nav a { padding: 13px 12px; border-radius: 8px; }
    .site-header.nav-open .nav a.active::after { display: none; }
}

@media (max-width: 768px) {
    .section { padding: 48px 0; }
    .section-title { font-size: 24px; }
    .page-hero h1 { font-size: 26px; }
    .hero h1 { font-size: 30px; }
    .hero__sub { font-size: 15.5px; }
    .hero__panel { padding: 18px; }
    .arch__row { grid-template-columns: 1fr; }
    .grid--2, .grid--3, .grid--4 { grid-template-columns: 1fr; }
    .flow, .process { grid-template-columns: 1fr; }
    .org-grid { grid-template-columns: repeat(2, 1fr); }
    .deliver-list, .info-cards, .step-cards { grid-template-columns: 1fr; }
    .form-grid { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-bottom { flex-direction: column; align-items: flex-start; }
    .article-item { flex-direction: column; align-items: flex-start; gap: 8px; padding: 18px; }
    .article-item__date { width: auto; }
    .article-item__main p { -webkit-line-clamp: 3; }
    .consult-form { padding: 22px; }
    .quiz { padding: 22px; }
    .quiz__title { font-size: 19px; }
    .stats__num { font-size: 24px; }
    .article-head h1 { font-size: 24px; }
    .exp-band { grid-template-columns: repeat(2, 1fr); }
    .tool-band { padding: 26px; }

    /* 表格横向滚动 */
    .table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .data-table { min-width: 640px; }
}

@media (max-width: 480px) {
    .container { padding: 0 16px; }
    .hero h1 { font-size: 25px; }
    .btn { height: 44px; padding: 0 18px; font-size: 14px; }
    .hero__actions { flex-direction: column; }
    .hero__actions .btn { width: 100%; }
    .org-grid { grid-template-columns: 1fr 1fr; }
    .stats { grid-template-columns: 1fr; }
    .stats__item { border-right: 0; border-bottom: 1px solid var(--border); }
    .stats__item:last-child { border-bottom: 0; }
    .float-consult { right: 14px; bottom: 16px; }
    .float-consult a, .float-consult button { width: 46px; height: 46px; }
    .exp-band { grid-template-columns: 1fr; }
}
