/* ============================================
   c7-responsive.css — 响应式布局
   ============================================ */

/* xl: >= 1280px — default styles */

/* lg: 1024px - 1279px */
@media (max-width: 1279px) {
  .c7-footer-grid { grid-template-columns: 1.2fr 1fr 1fr 1fr; gap: 30px; }
  .c7-gallery-grid { grid-template-columns: repeat(3, 1fr); }
  .c7-app-features { grid-template-columns: repeat(2, 1fr); }
}

/* md: 768px - 1023px */
@media (max-width: 1023px) {
  h1 { font-size: 2.2rem; }
  h2 { font-size: 1.6rem; }
  .c7-hero-content h1 { font-size: 2.4rem; }

  .c7-nav-links { display: none; }
  .c7-mobile-toggle { display: flex; }

  .c7-nav-links.c7-nav-open {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 70px;
    left: 0;
    width: 100%;
    background: rgba(4, 1, 10, 0.98);
    padding: 20px;
    gap: 4px;
    border-bottom: 1px solid rgba(247, 37, 133, 0.2);
  }

  .c7-nav-links.c7-nav-open a {
    display: block;
    padding: 12px 16px;
    font-size: 1rem;
  }

  .c7-casino-grid { grid-template-columns: repeat(2, 1fr); }
  .c7-grid-4 { grid-template-columns: repeat(2, 1fr); }
  .c7-grid-3 { grid-template-columns: repeat(2, 1fr); }
  .c7-odds-grid { grid-template-columns: repeat(2, 1fr); }
  .c7-footer-grid { grid-template-columns: repeat(2, 1fr); }
  .c7-vip-terminal { grid-template-columns: 1fr; padding: 30px; }
  .c7-egame-layout { grid-template-columns: 1fr; }
  .c7-filter-sidebar { position: static; max-height: none; }
  .c7-app-hero { grid-template-columns: 1fr; text-align: center; }
  .c7-gallery-grid { grid-template-columns: repeat(2, 1fr); }
  .c7-page-banner { height: 300px; }
  .c7-page-banner-content h1 { font-size: 2rem; }
}

/* sm: 640px - 767px */
@media (max-width: 767px) {
  .c7-hero-content h1 { font-size: 2rem; }
  .c7-hero-subtitle { font-size: 0.95rem; }
  .c7-section { padding: 50px 0; }
  .c7-casino-grid { grid-template-columns: 1fr; }
  .c7-grid-4 { grid-template-columns: repeat(2, 1fr); }
  .c7-grid-3 { grid-template-columns: 1fr; }
  .c7-grid-2 { grid-template-columns: 1fr; }
  .c7-odds-grid { grid-template-columns: 1fr; }
  .c7-footer-grid { grid-template-columns: 1fr; gap: 30px; }
  .c7-app-features { grid-template-columns: 1fr; }
  .c7-app-buttons { flex-direction: column; }
  .c7-page-banner { height: 250px; }
  .c7-page-banner-content h1 { font-size: 1.6rem; }
}

/* xs: < 640px */
@media (max-width: 639px) {
  html { font-size: 14px; }
  .c7-hero-content h1 { font-size: 1.7rem; }
  .c7-hero-buttons { flex-direction: column; align-items: center; }
  .c7-btn-primary, .c7-btn-outline { width: 100%; text-align: center; }
  .c7-gallery-grid { grid-template-columns: 1fr; }
  .c7-game-card-img { height: 180px; }
  .c7-dealer-section { padding: 16px; }
  .c7-vip-terminal { padding: 20px; }
  .c7-container { padding: 0 14px; }
  .c7-section-title { margin-bottom: 30px; }
  .c7-grid-4 { grid-template-columns: 1fr; }
}
