/* 手机与平板保留章节导航，所有调整仅作用于展示层。 */
.site-header nav .mobile-nav-link { display: none; }
@media (max-width: 900px) {
  :root { scroll-padding-top: 0; }
  .site-header { height: auto; min-height: 112px; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 0 8px; padding: env(safe-area-inset-top, 0px) 20px 0; border-bottom: 1px solid var(--line); }
  .site-header .brand, .site-header .header-controls { min-height: 66px; }
  .site-header nav { grid-column: 1 / -1; grid-row: 2; display: flex; width: 100%; min-width: 0; gap: 22px; min-height: 46px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .site-header nav::-webkit-scrollbar { display: none; }
  .site-header nav a, .site-header nav .mobile-nav-link { display: inline-flex; flex: 0 0 auto; min-height: 46px; font-size: 13px; }
  .site-header nav a::after { bottom: 5px; }
  .hero { padding-top: calc(151px + env(safe-area-inset-top, 0px)); }
  section[id], footer, #product-network { scroll-margin-top: 124px; }
  .section-intro, .case-copy > p:not(.case-lead), .project-body > p, .plan-body > p { font-size: 14px; }
  .case-visual { transform: none; }
  .path-steps { scroll-snap-type: x proximity; }
  .path-steps button { scroll-snap-align: start; }
  .case-actions .button, .project-bottom > a, .lab-link { min-height: 48px; }
}
@media (max-width: 680px) {
  :root { --gutter: 20px; }
  .site-header { padding-inline: max(16px, env(safe-area-inset-left, 0px)) max(16px, env(safe-area-inset-right, 0px)); }
  .hero { gap: 26px; padding-bottom: 48px; }
  .hero-position { margin-bottom: 16px; }
  .hero-description { font-size: 15px; line-height: 1.85; margin-top: 20px; }
  .hero-beliefs { gap: 6px 12px; font-size: 11px; }
  .hero-actions { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; }
  .hero-actions .button { padding-inline: 15px; gap: 12px; white-space: normal; }
  .hero-actions .text-link { font-size: 12px; }
  .hero-network .orbit-stage { height: 445px; min-height: 445px; }
  .network-node { min-height: 52px; width: 80px; padding: 6px 4px; }
  .orbit-modes button { min-height: 48px; min-width: 76px; }
  .orbit-ui p { font-size: 11px; }
  .network-detail { margin-top: 18px; padding: 18px; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); gap: 9px; }
  #network-description { font-size: 13px; line-height: 1.8; }
  #network-relations { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; align-items: stretch; }
  #network-relations .network-relation { min-width: 0; min-height: 48px; padding: 10px; }
  .network-relation-name { font-size: 12px; }
  #network-relations .network-relation-description { font-size: 10px; }
  #network-open { min-height: 48px; font-size: 13px; }
  .hero .scroll-cue { display: none; }
  .section { padding-block: 48px; }
  .section-heading { margin-bottom: 28px; }
  .filters { flex-wrap: nowrap; max-width: 100%; overflow-x: auto; padding-bottom: 4px; }
  .filters button { flex-shrink: 0; min-height: 46px; font-size: 12px; }
  .case-actions, .project-bottom, .dialog-actions { gap: 12px; }
  .project-body { padding: 22px 20px 18px; }
  .project-body > p, .plan-body > p, #market-summary, #dialog-description { font-size: 14px; }
  .lab-card { grid-template-columns: 100px minmax(0,1fr); column-gap: 18px; padding-top: 16px; }
  .lab-art { min-height: 182px; }
  .lab-card h3 { font-size: 25px; }
  .lab-card p { font-size: 13px; }
  .lab-link { font-size: 12px; }
  .lab-note { font-size: 12px; }
  .lab-note a { display: inline-flex; min-height: 44px; align-items: center; color: var(--gold); text-decoration: underline; text-underline-offset: 4px; }
  .project-dialog { width: calc(100% - 16px); max-height: calc(100dvh - 16px); }
  .dialog-shell { max-height: calc(100dvh - 18px); }
  .dialog-content { padding-inline: 20px; }
  .dialog-actions .button { flex: 1 1 auto; min-height: 48px; white-space: normal; }
  .footer-bottom, .footer-note { padding-bottom: env(safe-area-inset-bottom, 0px); }
}
@media (max-width: 360px) {
  .hero-actions { grid-template-columns: minmax(0,1fr); }
  .hero-actions .text-link { justify-self: start; }
  .network-node { width: 74px; }
  .hero-network .orbit-stage { height: 455px; min-height: 455px; }
  .lab-card { grid-template-columns: 82px minmax(0,1fr); column-gap: 15px; }
}
