/* ==========================================================================
   图腾康动 TOTEM MOTION · 响应式 · 站点级
   --------------------------------------------------------------------------
   覆盖范围：头部 / 抽屉 / 页脚 + 首页专属构件
   共享构件（.stage / .panel / .ledger / .zone / .flow / .capgrid /
   .cert-wall / .formcard 等）的断点统一放在 css/pages-responsive.css，
   全站加载，置于最后一份，保证断点规则优先级最高。
   断点：1180 / 980 / 860 / 640 / 430
   ========================================================================== */

/* ---------- ≤1180px ---------- */
@media (max-width: 1180px) {
  :root { --section-y: var(--sp-10); }

  .nav { gap: var(--sp-4); }
  .nav__link { padding: 8px 4px; font-size: 14px; }

  .footer__top { grid-template-columns: 1.5fr 1fr 1fr; gap: var(--sp-7); }

  /* 首页：四大场景卡由四列降为两列 */
  .float-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ---------- ≤980px：主栏堆叠 ---------- */
@media (max-width: 980px) {
  :root { --section-y: var(--sp-9); --header-h: 68px; }

  /* 顶栏：隐藏文字导航，露出汉堡 */
  .nav { display: none; }
  .nav-toggle { display: grid; margin-left: auto; }
  .nav-tools { margin-left: auto; }

  .footer__top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer__brand { grid-column: 1 / -1; }

  /* 首页：功能区抬头由两栏改为一栏 */
  .home-zone__head {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--sp-4);
    align-items: start;
  }

  /* 首页：浮图卡舞台改为自然高度，不再撑满一屏 */
  .stage--cards { min-height: auto; }
  .stage--cards .stage__body { padding-block: clamp(56px, 8vw, 80px); }
}

/* ---------- ≤860px ---------- */
@media (max-width: 860px) {
  .stage--case { min-height: min(42vh, 360px); }
}

/* ---------- ≤640px：移动端主档 ---------- */
@media (max-width: 640px) {
  :root { --section-y: var(--sp-8); --gutter: 20px; }

  .home-form__row { grid-template-columns: minmax(0, 1fr); }
  .float-grid--4 { grid-template-columns: minmax(0, 1fr); }
  .home-contact__direct-line { font-size: 15px; }

  .footer__top { grid-template-columns: minmax(0, 1fr); gap: var(--sp-6); }
  .footer__legal { font-size: 12px; }
  .footer__bottom { flex-direction: column; align-items: flex-start; gap: var(--sp-2); }
}

/* ---------- ≤430px：窄屏主档 ---------- */
@media (max-width: 430px) {
  :root { --gutter: 18px; }

  .footer__bottom-links { gap: var(--sp-4); }
  .stage__scroll { display: none; }
}

/* ---------- 打印 ---------- */
@media print {
  .site-header, .drawer, .to-top, .stage__scroll { display: none !important; }
  .stage { background: #fff; }
  .stage__title, .stage__lede { color: #000; }
}
