/* Ta宇宙 移动端适配增强 */
html, body { overflow-x: hidden; max-width: 100vw; }
img, video, svg { max-width: 100%; }
@media (max-width: 480px) {
  .page-shell, .nav-inner { width: min(100% - 20px, var(--max)); }
  .carousel-slide { padding: 20px 16px 72px; }
  .banner-title .primary { font-size: clamp(26px, 9vw, 38px) !important; }
  .banner-title .secondary { font-size: clamp(18px, 6vw, 28px) !important; }
  .banner-title.compact-title .primary { font-size: clamp(20px, 7vw, 30px) !important; }
  .carousel-card { min-height: 480px; border-radius: 24px; }
  .carousel-slide::after { width: 200px; right: -60px; bottom: 30px; }
  .carousel-controls { left: 16px; right: 16px; bottom: 14px; }
  .hero { padding: 36px 0 40px; }
  .hero-panel { padding: 14px; border-radius: 24px; }
  .hero-poster { padding: 18px; border-radius: 20px; }
  .poster-logo { width: 50px; height: 50px; }
  .poster-title strong { font-size: clamp(24px, 8vw, 32px); }
  section { padding: 36px 0; }
  .section-head h2 { font-size: clamp(22px, 7vw, 30px); }
  .section-head p { font-size: 14px; }
  .service-block { padding: 16px; border-radius: 24px; }
  .agent-ring { width: 180px; height: 180px; margin-top: 36px; }
  .agent-ring-item { transform: translate(-50%, -50%) rotate(calc(var(--i) * 72deg)) translateY(-70px) rotate(calc(var(--i) * -72deg)); }
  .video-showcase { max-width: 240px; }
  .offer-card-mini { flex-direction: column; gap: 10px; padding: 14px; }
  .offer-card-left, .offer-card-right { text-align: center; }
  .offer-price-main .offer-number { font-size: 28px; }
  .deliver-grid { gap: 12px; }
  .course-photo { min-height: 160px; }
  .course-placeholder { min-height: 150px; }
  .enterprise-panel { padding: 16px; }
  .agent-chip { font-size: 11px; padding: 7px 9px; }
  .agent-chip:nth-of-type(4) { left: 10px; top: 50px; }
  .agent-chip:nth-of-type(5) { right: 8px; top: 96px; }
  .agent-chip:nth-of-type(6) { left: 10px; bottom: 106px; }
  .agent-chip:nth-of-type(7) { right: 8px; bottom: 70px; }
  .final-cta { padding: 24px 18px; border-radius: 24px; }
  .modal-card { padding: 18px; border-radius: 20px; margin: 12px; }
  .modal-card h3 { font-size: 18px; }
  .btn { padding: 12px 16px; font-size: 14px; min-height: 44px; }
  .nav-cta { padding: 7px 11px; font-size: 13px; }
  .pain-list li { font-size: 13px; }
  .stats { gap: 12px; }
  .stat-item { padding: 14px; }
  .stat-item .stat-num { font-size: 24px; }
}
@media (max-width: 375px) {
  .page-shell, .nav-inner { width: min(100% - 16px, var(--max)); }
  .carousel-slide { padding: 16px 14px 68px; }
  .banner-title .primary { font-size: clamp(22px, 8vw, 32px) !important; }
  .banner-title .secondary { font-size: clamp(16px, 5.5vw, 24px) !important; }
  .carousel-card { min-height: 440px; }
  .carousel-slide::after { width: 170px; right: -50px; bottom: 24px; }
  .agent-ring { width: 160px; height: 160px; }
  .agent-ring-item { transform: translate(-50%, -50%) rotate(calc(var(--i) * 72deg)) translateY(-62px) rotate(calc(var(--i) * -72deg)); }
  .video-showcase { max-width: 200px; }
  .service-block { padding: 14px; }
  section { padding: 32px 0; }
  .section-head h2 { font-size: clamp(20px, 6.5vw, 26px); }
  .offer-price-main .offer-number { font-size: 24px; }
  .agent-chip { font-size: 10px; padding: 6px 8px; }
  .modal-card { padding: 16px; }
}
@media (max-width: 900px) and (orientation: landscape) and (max-height: 500px) {
  .carousel-card { min-height: 400px; }
  .hero { padding: 30px 0; }
  section { padding: 30px 0; }
}
@supports (padding: env(safe-area-inset-top)) {
  .nav { padding-top: env(safe-area-inset-top); }
  .modal-card { padding-bottom: calc(22px + env(safe-area-inset-bottom)); }
  .nav-cta { margin-right: env(safe-area-inset-right); }
}
@media (hover: none) and (pointer: coarse) {
  .btn, .nav-cta, .carousel-dot, .modal-close { min-height: 44px; min-width: 44px; }
  .agent-chip { min-height: 36px; }
}
@media (max-width: 760px) {
  video { max-width: 100%; height: auto; }
  .video-portrait video { max-height: 240px; }
}
