/* ============================================================
   一碗葱 · 响应式 v2
   断点：1000px（骨架折叠）/ 768px（布局降列）/ 520px（紧凑）
   ============================================================ */

/* ---------- ≤ 1000px：骨架折叠为顶部横条 ---------- */
@media (max-width: 1000px) {
  :root {
    --fs-h1: 44px;
    --fs-h2: 28px;
    --fs-display: 56px;
    --index-w: 0px;
    --gutter: 24px;
  }

  .shell { grid-template-columns: 1fr; }

  .index-rail {
    position: sticky;
    top: 0;
    z-index: var(--z-nav);
    height: auto;
    border-right: none;
    border-bottom: 1px solid var(--rule);
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    padding: 14px 24px;
    gap: 16px;
    background: var(--bg);
    overflow: visible;
  }
  /* 移动端顶栏压缩：logo 与公司名并排成一行（竖排会占两行、显得松散）
     → 顶栏 59px，只占屏 6.9%，首屏完整露出正文
     logo 保持 26px（桌面端的 96px 只在 >1000px 生效） */
  .index-rail__brand {
    flex-direction: row;      /* 覆盖桌面的 column */
    align-items: center;
    gap: 10px;
    text-align: left;
    flex-shrink: 0;
  }
  .index-rail__logo { height: 26px; margin-bottom: 0; }
  .index-rail__cn {
    margin-bottom: 0;
    font-size: 15px;
  }
  .index-rail__meta { display: none; }
  .index-rail__nav {
    flex-direction: row;
    flex-wrap: wrap;
    margin-top: 0;
    gap: 14px;
  }
  .index-rail__nav a .n { display: none; }
  .index-rail__nav a { padding: 4px 0; }

  .sect, .hero, .page-hero, .cta-sect, .site-foot { padding-left: 24px; padding-right: 24px; }
  .stats-strip { padding-left: 24px; padding-right: 24px; }

  .story { max-width: 100%; }

  /* 页脚在窄屏改为单列纵向堆叠，备案号仍保持居中（合规要求不能因为移动端就不显示） */
  .site-foot { grid-template-columns: 1fr; gap: 8px; }
  .site-foot__left,
  .site-foot__center,
  .site-foot__right { text-align: center; justify-self: center; }
}

/* ---------- ≤ 768px：布局降列 ---------- */
@media (max-width: 768px) {
  :root {
    --fs-h1: 36px;
    --fs-h2: 24px;
    --fs-h3: 20px;
    --fs-display: 44px;
    --fs-lead: 16px;
    --fs-body: 15px;
  }

  .sect { padding-top: 56px; padding-bottom: 56px; }
  .sect:first-of-type { padding-top: 40px; }
  .sect__head { margin-bottom: 32px; }
  .sect__head h2 { font-size: var(--fs-h2); }

  .hero { padding-top: 44px; padding-bottom: 52px; }
  .page-hero { padding-top: 44px; padding-bottom: 52px; }

  .stat-grid { grid-template-columns: 1fr 1fr; }
  .stat { padding-left: 0; padding-right: 24px; }
  .stat:nth-child(3n) { border-right: 1px solid var(--rule); padding-right: 24px; }
  .stat:nth-child(2n) { border-right: none; padding-right: 0; }
  .stat:nth-child(2n+1) { padding-left: 16px; }
  .stat:nth-child(-n+2) { border-top: none; }

  .biz-detail__head h3 { font-size: 32px; }

  .flow-row { grid-template-columns: 72px 1fr; gap: 14px; }
  .flow-row p,
  .flow-row__time { grid-column: 2; }

  .price-item { grid-template-columns: 44px 1fr; gap: 14px; }
}

/* ---------- ≤ 520px：紧凑 ---------- */
@media (max-width: 520px) {
  :root {
    --fs-display: 38px;
    --fs-h1: 30px;
    --fs-h2: 22px;
    --gutter: 20px;
  }

  .hero__actions { flex-direction: column; align-items: stretch; }
  .hero__actions .btn { justify-content: center; }
  .hero__actions .btn-quiet { justify-content: center; }

  .contact-item__value { font-size: 19px; }
  .cta-contact { flex-direction: column; gap: 12px; }
  .cta-contact a { font-size: 17px; }

  .band-note { font-size: 11px; }
}

/* ---------- 打印 ---------- */
@media print {
  .index-rail { display: none; }
  .shell { grid-template-columns: 1fr; }
  .sect, .hero, .page-hero, .cta-sect { padding: 20px 0; }
  body { background: #fff; color: #000; }
}
