/* 前台页面公共响应式CSS */
@media (max-width: 768px) {
    .container { padding: 0 16px; }
    .nav-inner { flex-wrap: wrap; height: auto; padding: 12px 0; gap: 12px; }
    .nav-links { flex-wrap: wrap; gap: 16px; justify-content: center; width: 100%; order: 3; }
    .nav-links a { font-size: 14px; }
    .nav-cta { order: 2; }
    .logo { order: 1; }
    .hero { padding: 48px 0; }
    .hero h1 { font-size: 28px; }
    .hero p { font-size: 16px; }
    .hero-btns { flex-direction: column; align-items: center; }
    .features, .modules, .news-section, .case-section, .contact { padding: 48px 0; }
    .section-title { font-size: 24px; }
    .section-desc { font-size: 14px; margin-bottom: 32px; }
    .feature-grid, .module-grid, .news-grid, .case-grid { grid-template-columns: 1fr !important; gap: 16px; }
    .stats-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 24px; }
    .stat-num { font-size: 32px; }
    .contact-box { padding: 24px; }
    .form-row { grid-template-columns: 1fr !important; }
    .footer { padding: 24px 0; font-size: 13px; }
    .news-list, .case-list, .service-list { grid-template-columns: 1fr !important; }
    .pagination { flex-wrap: wrap; gap: 8px; }
    .detail-content { padding: 24px 16px !important; }
    .detail-title { font-size: 24px !important; }
    .detail-meta { flex-direction: column; gap: 8px; }
    .related-grid { grid-template-columns: 1fr !important; }
    .product-grid { grid-template-columns: 1fr !important; }
    .about-section { padding: 48px 0; }
    .about-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 480px) {
    .hero h1 { font-size: 24px; }
    .hero p { font-size: 14px; }
    .btn-primary, .btn-outline { padding: 10px 24px; font-size: 14px; }
    .feature-card, .module-card, .news-card, .case-card { padding: 16px; }
    .news-cover, .case-cover { height: 140px; }
}
