/* ============================================================
   ZCubix · responsive.css  —  响应式断点
   ============================================================ */

/* ---------- 平板 (<= 980px) ---------- */
@media (max-width: 980px) {
  .hero .container {
    grid-template-columns: 1fr;
    text-align: center;
    gap: 32px;
    padding-top: 24px;
  }
  .hero-badge { margin-inline: auto; }
  .hero-subtitle { justify-content: center; }
  .hero-tagline { margin-inline: auto; }
  .hero-actions { justify-content: center; }
  .hero-stats { justify-content: center; }

  .hero-stage { order: -1; min-height: 360px; }
  .orbit.o1 { width: 320px; height: 320px; }
  .orbit.o2 { width: 390px; height: 390px; }

  .meaning-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .meaning-stage { order: -1; }

  .works-grid { grid-template-columns: repeat(2, 1fr); }
  .team-grid { grid-template-columns: repeat(2, 1fr); }
  .values { grid-template-columns: 1fr; }
  .contact-grid { grid-template-columns: 1fr; }
}

/* ---------- 手机 (<= 680px) ---------- */
@media (max-width: 680px) {
  :root { --nav-h: 64px; }

  /* 移动端导航 */
  .nav-links {
    position: fixed;
    top: var(--nav-h);
    left: 0; right: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 12px 16px 20px;
    background: rgba(7, 7, 16, 0.95);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-bottom: 1px solid var(--glass-bd);
    transform: translateY(-120%);
    transition: transform 0.4s var(--ease);
    z-index: 99;
  }
  .nav-links.open { transform: translateY(0); }
  .nav-links a {
    padding: 14px 16px;
    border-radius: 12px;
    font-size: 1rem;
  }
  .nav-links a::after { display: none; }
  .nav-links a:hover, .nav-links a.active {
    background: rgba(139, 92, 246, 0.12);
  }
  .nav-cta {
    margin: 8px 0 0;
    text-align: center;
    justify-content: center;
  }
  .nav-toggle { display: block; }

  /* 移动端隐藏自定义光斑（触屏无意义） */
  .cursor-glow { display: none; }

  .works-grid { grid-template-columns: 1fr; }
  .team-grid { grid-template-columns: 1fr; }

  .hero-title { font-size: clamp(2.8rem, 14vw, 4rem); }
  .hero-stats { gap: 24px; }

  .cube-scene { width: 170px; height: 170px; }
  .cube-scene .face { width: 170px; height: 170px; }
  .face-front  { transform: translateZ(85px); }
  .face-back   { transform: rotateY(180deg) translateZ(85px); }
  .face-right  { transform: rotateY(90deg)  translateZ(85px); }
  .face-left   { transform: rotateY(-90deg) translateZ(85px); }
  .face-top    { transform: rotateX(90deg)  translateZ(85px); }
  .face-bottom { transform: rotateX(-90deg) translateZ(85px); }
  .face .glyph { font-size: 3.6rem; }

  .meaning-stage .cube-scene { width: 150px; height: 150px; }
  .meaning-stage .cube-scene .face { width: 150px; height: 150px; }
  .meaning-stage .face-front  { transform: translateZ(75px); }
  .meaning-stage .face-back   { transform: rotateY(180deg) translateZ(75px); }
  .meaning-stage .face-right  { transform: rotateY(90deg)  translateZ(75px); }
  .meaning-stage .face-left   { transform: rotateY(-90deg) translateZ(75px); }
  .meaning-stage .face-top    { transform: rotateX(90deg)  translateZ(75px); }
  .meaning-stage .face-bottom { transform: rotateX(-90deg) translateZ(75px); }
  .meaning-stage .face .glyph { font-size: 3.2rem; }

  .footer-inner { flex-direction: column; text-align: center; }
}

/* ---------- 极小屏 (<= 400px) ---------- */
@media (max-width: 400px) {
  .container { width: calc(100% - 32px); }
  .hero-actions .btn { flex: 1; justify-content: center; }
  .deco-cube { width: 44px; height: 44px; }
}

/* ---------- 高 DPI 优化 ---------- */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .face, .work-card { backface-visibility: hidden; }
}
