/* ============================================================
   fm-responsive.css — 非凡娱乐 · 响应式断点
   Mobile-First Strategy
   ============================================================ */

/* ---------- xs: < 640px (手机竖屏) ---------- */
@media (max-width: 639px) {
  html { font-size: 14px; }

  .fm-navbar-inner { height: 60px; }

  .fm-hamburger { display: flex; }

  .fm-nav-links {
    display: none;
    position: absolute;
    top: 60px;
    left: 0;
    width: 100%;
    background: rgba(42,35,31,0.98);
    flex-direction: column;
    padding: 20px;
    gap: 0;
    border-bottom: 2px solid var(--fm-primary);
  }

  .fm-nav-links.fm-nav-open {
    display: flex;
  }

  .fm-nav-links li a {
    padding: 12px 0;
    border-bottom: 1px solid rgba(107,79,58,0.2);
  }

  .fm-hero { min-height: 500px; }
  .fm-hero h1 { font-size: 1.8rem; }
  .fm-hero-jackpot-amount { font-size: 1.8rem; }

  .fm-grid-4,
  .fm-grid-3 {
    grid-template-columns: 1fr;
  }

  .fm-grid-2 {
    grid-template-columns: 1fr;
  }

  .fm-recruit {
    grid-template-columns: 1fr;
  }

  .fm-gallery-grid {
    columns: 1;
  }

  .fm-footer-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .fm-ranking-item.fm-ranking-hidden-mobile {
    display: none;
  }

  .fm-ranking-show-more {
    display: block;
    text-align: center;
    padding: 12px;
    color: var(--fm-secondary);
    cursor: pointer;
    font-size: .9rem;
  }

  .fm-jackpot-amount { font-size: 2.2rem; }

  .fm-page-banner { height: 250px; }
  .fm-page-banner h1 { font-size: 1.6rem; }

  .fm-app-buttons { flex-direction: column; align-items: center; }

  .fm-trust-grid { gap: 20px; }
  .fm-trust-item img { width: 80px; height: 80px; }

  .fm-hero-buttons { flex-direction: column; align-items: center; }
}

/* ---------- sm: 640px - 767px (手机横屏) ---------- */
@media (min-width: 640px) and (max-width: 767px) {
  .fm-hamburger { display: flex; }

  .fm-nav-links {
    display: none;
    position: absolute;
    top: 70px;
    left: 0;
    width: 100%;
    background: rgba(42,35,31,0.98);
    flex-direction: column;
    padding: 20px;
    gap: 0;
    border-bottom: 2px solid var(--fm-primary);
  }

  .fm-nav-links.fm-nav-open {
    display: flex;
  }

  .fm-nav-links li a {
    padding: 12px 0;
    border-bottom: 1px solid rgba(107,79,58,0.2);
  }

  .fm-grid-4 { grid-template-columns: repeat(2, 1fr); }
  .fm-grid-3 { grid-template-columns: repeat(2, 1fr); }

  .fm-recruit { grid-template-columns: 1fr; }

  .fm-gallery-grid { columns: 2; }

  .fm-footer-grid { grid-template-columns: repeat(2, 1fr); }

  .fm-ranking-item.fm-ranking-hidden-mobile { display: none; }
  .fm-ranking-show-more { display: block; text-align: center; padding: 12px; color: var(--fm-secondary); }
}

/* ---------- md: 768px - 1023px (平板) ---------- */
@media (min-width: 768px) and (max-width: 1023px) {
  .fm-hamburger { display: flex; }

  .fm-nav-links {
    display: none;
    position: absolute;
    top: 70px;
    left: 0;
    width: 100%;
    background: rgba(42,35,31,0.98);
    flex-direction: column;
    padding: 20px;
    gap: 0;
    border-bottom: 2px solid var(--fm-primary);
  }

  .fm-nav-links.fm-nav-open {
    display: flex;
  }

  .fm-grid-4 { grid-template-columns: repeat(2, 1fr); }
  .fm-grid-3 { grid-template-columns: repeat(2, 1fr); }

  .fm-gallery-grid { columns: 2; }

  .fm-footer-grid { grid-template-columns: repeat(2, 1fr); }

  .fm-ranking-show-more { display: none; }
}

/* ---------- lg: >= 1024px (桌面) ---------- */
@media (min-width: 1024px) {
  .fm-hamburger { display: none; }
  .fm-nav-links { display: flex !important; }
  .fm-ranking-show-more { display: none; }
}
