/* =============================================
   NG SPORTS - 响应式样式表
   ============================================= */

/* --- XL: >= 1280px (Default) --- */

/* --- LG: 1024px - 1279px --- */
@media (max-width: 1279px) {
  .nw-hero h1 { font-size: 3rem; }
  .nw-odds-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-betting-layout { grid-template-columns: 200px 1fr 260px; }
}

/* --- MD: 768px - 1023px --- */
@media (max-width: 1023px) {
  .nw-hero h1 { font-size: 2.5rem; }
  .nw-hero-stats { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .nw-odds-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-video-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-ranking-layout { grid-template-columns: 1fr; }
  .nw-store-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-club-layout { grid-template-columns: 1fr; }
  .nw-prediction-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-article-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-gallery-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-gallery-item:nth-child(1), .nw-gallery-item:nth-child(6) { grid-column: span 1; }
  .nw-footer-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-betting-layout { grid-template-columns: 1fr; }
  .nw-filter-panel { position: static; }
  .nw-bet-slip { position: static; }
  .nw-app-features { grid-template-columns: repeat(2, 1fr); }
  .nw-nav-links { display: none; }
  .nw-hamburger { display: flex; }
  .nw-nav-links.nw-nav-open {
    display: flex; flex-direction: column; position: absolute;
    top: 68px; left: 0; width: 100%; background: rgba(0,180,216,0.95);
    padding: 16px; gap: 4px;
  }
  .nw-nav-links.nw-nav-open a { padding: 12px 16px; }
  .nw-section { padding: 60px 0; }
  .nw-section-title { font-size: 1.8rem; }
  .nw-page-header { padding: 100px 0 48px; }
  .nw-page-header h1 { font-size: 2rem; }
}

/* --- SM: 640px - 767px --- */
@media (max-width: 767px) {
  .nw-hero h1 { font-size: 2rem; }
  .nw-hero-subtitle { font-size: 0.95rem; }
  .nw-hero-stats { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .nw-hero-stat .nw-stat-number { font-size: 1.5rem; }
  .nw-odds-grid { grid-template-columns: 1fr; }
  .nw-video-grid { grid-template-columns: 1fr; }
  .nw-store-grid { grid-template-columns: 1fr; }
  .nw-prediction-grid { grid-template-columns: 1fr; }
  .nw-article-grid { grid-template-columns: 1fr; }
  .nw-gallery-grid { grid-template-columns: repeat(2, 1fr); }
  .nw-footer-grid { grid-template-columns: 1fr; }
  .nw-section { padding: 48px 0; }
  .nw-section-title { font-size: 1.5rem; }
  .nw-app-features { grid-template-columns: 1fr; }
  .nw-match-row { grid-template-columns: 1fr; gap: 8px; text-align: center; }
  .nw-download-buttons { flex-direction: column; align-items: center; }
  .nw-partners-logos { gap: 20px; }
  .nw-partner-logo { width: 100px; height: 50px; font-size: 0.7rem; }
}

/* --- XS: < 640px --- */
@media (max-width: 639px) {
  .nw-hero { min-height: 90vh; }
  .nw-hero h1 { font-size: 1.7rem; }
  .nw-hero-buttons { flex-direction: column; align-items: center; }
  .nw-btn-primary, .nw-btn-outline { width: 100%; max-width: 280px; text-align: center; }
  .nw-hero-stats { grid-template-columns: repeat(2, 1fr); }
  .nw-podium { flex-direction: column; align-items: center; }
  .nw-page-header { padding: 90px 0 40px; }
  .nw-page-header h1 { font-size: 1.6rem; }
  .nw-content-body { font-size: 0.95rem; }
  .nw-cert-badges { flex-direction: column; align-items: center; }
}
