/* ============================================================
   响应式 - responsive.css
   ============================================================ */

/* 平板及以下 */
@media (max-width: 1024px) {
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .news-grid { grid-template-columns: repeat(2, 1fr); }
  .intro { grid-template-columns: 1fr; gap: 36px; }
  .product-detail-grid { grid-template-columns: 1fr; }
  .product-detail-cover { height: 220px; }
  .article-wrap { grid-template-columns: 1fr; }
  .article-aside { position: static; }
  .hero-deco { display: none; }
  .site-footer .footer-grid { grid-template-columns: 1fr 1fr; }
}

/* 移动端导航 - 汉堡菜单 */
@media (max-width: 860px) {
  :root { --header-h: 64px; }

  .nav-toggle { display: flex; }

  .nav-links {
    position: fixed;
    top: var(--header-h); right: 0;
    height: calc(100vh - var(--header-h));
    width: 78%;
    max-width: 320px;
    background: #fff;
    flex-direction: column;
    align-items: stretch;
    padding: 24px 20px;
    gap: 4px;
    box-shadow: -10px 0 40px rgba(10,77,104,.18);
    transform: translateX(100%);
    transition: transform .3s ease;
    overflow-y: auto;
  }
  .nav-links.open { transform: translateX(0); }
  .nav-links a {
    padding: 14px 18px;
    font-size: 1rem;
    border-radius: var(--radius);
    color: var(--ink);
  }
  .nav-links a.active { background: var(--herb-soft); }
  .nav-cta { margin: 12px 0 0; }
  .nav-cta .btn { width: 100%; }

  /* 下拉导航移动端：静态、缩进、仅 .open 时显示（禁用 hover） */
  .nav-links .has-dropdown:hover .dropdown { display: none; }
  .nav-links .has-dropdown.open .dropdown {
    display: block; position: static; min-width: 0;
    background: transparent; border: none; box-shadow: none;
    backdrop-filter: none; padding: 0 0 0 16px;
  }
  .nav-links .dropdown a { padding: 12px 14px; }

  .nav-backdrop {
    position: fixed; inset: 0;
    background: rgba(10,30,40,.45);
    opacity: 0; visibility: hidden;
    transition: opacity .3s ease;
    z-index: 99;
  }
  .nav-backdrop.show { opacity: 1; visibility: visible; }

  /* 移动端导航文字颜色统一深色 */
  .site-header:not(.scrolled):not(.on-solid) .nav-logo,
  .site-header:not(.scrolled):not(.on-solid) .nav-links a { color: var(--ink); }
  .site-header:not(.scrolled):not(.on-solid) .nav-logo .logo-mark { background: var(--ocean-grad); }
}

/* 手机 */
@media (max-width: 640px) {
  .container { padding: 0 18px; }
  .section { padding: 56px 0; }
  .grid-2, .grid-3, .grid-4, .news-grid { grid-template-columns: 1fr; }
  .honor-grid { grid-template-columns: 1fr; }

  .hero { min-height: 88vh; }
  .hero-inner { padding: 48px 0; }
  .hero h1 { font-size: 2rem; line-height: 1.25; }
  .hero .lead { font-size: 1rem; }
  .hero-actions { width: 100%; }
  .hero-actions .btn { flex: 1; }
  .hero-stats { gap: 24px; flex-wrap: wrap; }
  .hero-stats .num { font-size: 1.6rem; }

  .section-title { font-size: 1.6rem; }
  .section-head { margin-bottom: 36px; }

  .card, .service-card, .article-main, .product-detail { padding: 24px; }
  .cta-band { flex-direction: column; align-items: flex-start; padding: 36px 28px; text-align: left; }
  .cta-band .actions { width: 100%; }
  .cta-band .actions .btn { flex: 1; }

  .contact-grid { grid-template-columns: 1fr; }
  .map-box { min-height: 240px; }

  .position-list .position { flex-direction: column; align-items: flex-start; }

  .page-hero { padding: calc(var(--header-h) + 48px) 0 44px; }
  .page-hero h1 { font-size: 1.7rem; }

  .news-filter { gap: 8px; }
  .news-filter button { padding: 7px 14px; font-size: .82rem; }

  .intro-visual { min-height: 200px; padding: 28px; }
  .intro-visual .quote .big { font-size: 2rem; }

  .site-footer .footer-grid { grid-template-columns: 1fr; gap: 32px; }
  .footer-bottom { font-size: .78rem; }

  .product-thumb { height: 140px; }
  .news-cover { height: 140px; }

  .btn { padding: 11px 22px; font-size: .92rem; }
}
