/* ============================================================
   喵心洗 - 响应式适配
   断点：Desktop ≥1024 / Tablet 768-1023 / Mobile <768
   ============================================================ */

/* ===== 平板 768-1023px ===== */
@media (max-width: 1023px) {
  :root {
    --fs-h1: 36px;
    --fs-h2: 28px;
    --fs-h3: 20px;
  }
  .section { padding: var(--space-xl) 0; }

  /* 网格减列 */
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .grid-5 { grid-template-columns: repeat(3, 1fr); }
  .grid-6 { grid-template-columns: repeat(4, 1fr); }

  /* Hero 调整 */
  .hero-mascot { flex: 0 0 320px; }
  .hero-mascot svg { width: 300px; height: auto; }

  /* 关于我们 */
  .about-intro { flex-direction: column; }
  .about-intro .intro-visual { flex: none; width: 100%; }
  .mascot-story { flex-direction: column; }
  .mascot-story .story-mascot { flex: none; width: 100%; }

  /* 联系页三卡片 */
  .contact-cards { grid-template-columns: repeat(2, 1fr); }

  /* 双模式 */
  .dual-model { flex-direction: column; }

  /* 页脚 */
  .footer .container { grid-template-columns: 1fr 1fr; gap: var(--space-md); }
  .footer-brand { grid-column: 1 / -1; }
}

/* ===== 移动端 <768px ===== */
@media (max-width: 767px) {
  :root {
    --fs-h1: 28px;
    --fs-h2: 24px;
    --fs-h3: 18px;
    --fs-h4: 16px;
  }
  .section { padding: var(--space-lg) 0; }
  .container { padding: 0 var(--space-sm); }
  .section-header { margin-bottom: var(--space-lg); }

  /* —— 导航移动端 —— */
  .nav-toggle { display: flex; }
  .navbar .btn.btn-primary { display: none; }
  .nav-menu {
    position: fixed;
    top: 0; right: -100%;
    width: 75%; max-width: 300px;
    height: 100vh;
    background: var(--bg-white);
    flex-direction: column;
    align-items: flex-start;
    padding: calc(var(--nav-height) + 20px) var(--space-md) var(--space-md);
    gap: 4px;
    box-shadow: -4px 0 24px rgba(0,0,0,0.12);
    transition: right var(--transition-base);
    overflow-y: auto;
    z-index: 1001;
  }
  .nav-menu.open { right: 0; }
  .nav-menu li { width: 100%; }
  .nav-menu a { display: block; padding: 14px 16px; font-size: var(--fs-body); border-radius: var(--radius-sm); width: 100%; }
  .nav-menu a.active { background: var(--orange-lightest); }
  .nav-menu a.active::after { display: none; }
  .nav-overlay {
    display: block;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--transition-base);
    z-index: 1000;
  }
  .nav-overlay.show { opacity: 1; visibility: visible; }
  .navbar.scrolled { background: var(--bg-white); box-shadow: var(--shadow-nav); }

  /* —— Hero 垂直堆叠 —— */
  .hero { padding-top: calc(var(--nav-height) + var(--space-lg)); text-align: center; }
  .hero-inner { flex-direction: column-reverse; gap: var(--space-md); }
  .hero-text { flex: none; }
  .hero-actions { justify-content: center; }
  .hero-stats { justify-content: center; gap: var(--space-md); }
  .hero-mascot { flex: none; }
  .hero-mascot svg { width: 240px; height: auto; }

  /* —— 网格全部单列 —— */
  .grid-2, .grid-3, .grid-4, .grid-5, .grid-6 { grid-template-columns: 1fr; }

  /* —— 时间线单列靠左 —— */
  .timeline::before { left: 18px; transform: none; }
  .timeline-item, .timeline-item:nth-child(even) {
    width: 100%;
    margin-left: 0;
    padding: 0 0 var(--space-md) 48px;
  }
  .timeline-dot, .timeline-item:nth-child(even) .timeline-dot {
    left: 10px; right: auto;
  }
  .timeline-item.reveal:nth-child(odd), .timeline-item.reveal:nth-child(even) { transform: translateX(0); opacity: 0; }
  .timeline-item.reveal.active { opacity: 1; }

  /* —— 联系卡片单列 —— */
  .contact-cards { grid-template-columns: 1fr; }

  /* —— 联系方式主打区纵向 —— */
  .contact-main { flex-direction: column; }
  .contact-phone-box { padding: var(--space-lg); }
  .cp-number { font-size: 36px; }
  .contact-wechat-box { flex: none; width: 100%; }
  .cw-qr { width: 180px; height: 180px; }

  /* —— 表单单列 —— */
  .form-row { flex-direction: column; gap: 0; }

  /* —— 服务流程换行 —— */
  .process-steps { flex-direction: column; align-items: center; }
  .process-step { width: 80%; max-width: 280px; }
  .process-step:not(:last-child)::after {
    top: auto; right: auto; bottom: -20px; left: 50%;
    transform: translateX(-50%) rotate(90deg);
  }

  /* —— 数据字号 —— */
  .stat-box .stat-num { font-size: 40px; }

  /* —— 页脚单列 —— */
  .footer .container { grid-template-columns: 1fr; }
  .footer-brand { grid-column: auto; }

  /* —— 城市标签 —— */
  .city-tags { gap: var(--space-xs); }
  .city-tag { padding: 8px 16px; font-size: 13px; }

  /* —— 禁用 hover 浮动（触屏） —— */
  .card:hover, .partner-card:hover, .advantage-card:hover { transform: none; }

  /* —— CTA —— */
  .cta-section h2 { font-size: var(--fs-h2); }

  /* —— 隐藏装饰圆减少干扰 —— */
  .deco1, .deco2 { display: none; }

  /* —— 工艺流程单列 —— */
  .process-step-item, .process-step-item:nth-child(even) { flex-direction: column; gap: var(--space-sm); }
  .process-fig { flex: none; width: 100%; }
  .process-fig img { height: 200px; }
  .process-desc { width: 100%; }

  /* —— 图片网格减列 —— */
  .cert-gallery, .team-gallery { grid-template-columns: repeat(2, 1fr); }
  .cert-gallery img { height: 160px; }
  .team-gallery img { height: 150px; }
  .uniform-gallery { grid-template-columns: repeat(2, 1fr); }
  .uniform-gallery img { height: 140px; }

  /* —— 真实案例纵向 —— */
  .case-report-card { flex-direction: column; }
  .case-report-card .report-visual { flex: none; width: 100%; height: 100px; }
}

/* ===== 超小屏 <380px ===== */
@media (max-width: 379px) {
  .hero-mascot svg { width: 200px; }
  .hero-stats { gap: var(--space-sm); }
  .hero-stats strong { font-size: 26px; }
}
