/* ============================================================
   新宸企业服务 - 响应式样式 v2
   断点：768px / 1024px
   ============================================================ */

@media (max-width: 1024px) {
  .container { padding: 0 22px; }
  .section { padding: 64px 0; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 36px; }
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .qual-grid { grid-template-columns: repeat(2, 1fr); }
  .license-grid { grid-template-columns: repeat(3, 1fr); }
  .articles-grid { grid-template-columns: repeat(2, 1fr); }
  h1 { font-size: 3.2rem; }
  h2 { font-size: 1.9rem; }
  .header-phone { display: none; }
  .page-banner h1 { font-size: 2.5rem; }
}

@media (max-width: 768px) {
  :root { --nav-height: 60px; }
  h1 { font-size: 2.4rem; }
  h2 { font-size: 1.6rem; }
  h3 { font-size: 1.3rem; }
  body { font-size: 16px; }
  .section { padding: 52px 0; }
  .section-title { margin-bottom: 36px; }

  /* Header */
  .site-header .container { padding: 0 16px; }
  .header-logo img { height: 34px; }
  .header-logo span { font-size: 1rem; }
  .mobile-toggle { display: flex; }
  .main-nav {
    position: fixed; top: var(--nav-height); left: 0; right: 0;
    background: var(--white); flex-direction: column; padding: 12px 20px;
    gap: 0; box-shadow: var(--shadow-md);
    transform: translateY(-110%); opacity: 0; pointer-events: none;
  }
  .main-nav.open { transform: translateY(0); opacity: 1; pointer-events: all; transition: all 0.3s ease; }
  .main-nav a { padding: 13px 0; width: 100%; border-bottom: 1px solid var(--border-light); }

  /* Grid */
  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; gap: 18px; }
  .qual-grid, .qual-top { grid-template-columns: 1fr; }
  .license-grid { grid-template-columns: repeat(2, 1fr); }
  .articles-grid { grid-template-columns: 1fr; }
  .service-highlight { grid-template-columns: 1fr; }
  .service-grid { grid-template-columns: repeat(2, 1fr); }
  .service-body { grid-template-columns: 1fr; }
  .contact-grid { grid-template-columns: 1fr; gap: 36px; }
  .about-intro { grid-template-columns: 1fr; gap: 32px; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 24px; }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr; gap: 32px; }

  /* Hero — stack vertically on mobile */
  .hero-modern { min-height: auto; }
  .hero-modern .hero-content {
    flex-direction: column; align-items: center; gap: 36px; text-align: center; padding: 0 16px;
    min-height: auto;
  }
  .hero-left { align-items: center; text-align: center; flex: 1 1 auto; }
  .hero-modern .hero-brand { flex-direction: column; gap: 12px; }
  .hero-modern .hero-brand img { width: 72px; }
  .hero-modern .hero-brand h1 { font-size: 2.4rem; white-space: normal; }
  .hero-modern .hero-subtitle { font-size: 0.9rem; }
  .hero-modern .hero-tagline { font-size: 1.1rem; }
  .hero-modern .hero-desc { font-size: 0.95rem; max-width: 100%; }
  .hero-contact-row { justify-content: center; font-size: 0.9rem; }
  .hero-modern .hero-actions { flex-direction: column; align-items: center; width: 100%; }
  .hero-modern .hero-actions .btn { width: 100%; max-width: 300px; }
  .hero-right { flex: 1 1 auto; width: 100%; transform: none; }
  .hero-image-card {
    flex: auto; min-height: 0; aspect-ratio: 16 / 9; max-width: 500px; margin: 0 auto;
    max-height: none;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.10);
  }

  /* Misc */
  .btn { padding: 14px 28px; font-size: 1rem; }
  .page-banner { padding: 88px 0 40px; }
  .page-banner h1 { font-size: 2rem; }
}

@media (max-width: 480px) {
  .header-logo span { font-size: 0.9rem; }
  .hero-modern .hero-brand img { width: 56px; }
  .hero-modern .hero-brand h1 { font-size: 1.8rem; }
  .hero-modern { min-height: auto; padding: calc(var(--nav-height) + 12px) 0 32px; }
  .hero-contact-row { font-size: 0.85rem; flex-wrap: wrap; }
  .hero-image-card { flex: auto; min-height: 0; aspect-ratio: 4 / 3; }
  .container { padding: 0 14px; }
  .service-grid { grid-template-columns: 1fr; }
  .license-grid { grid-template-columns: 1fr 1fr; }
  .stat-number { font-size: 2.2rem; }
}
