body { overflow-x: hidden; }

#floatingOdds { overflow: hidden; pointer-events: none; }

@media (max-width: 960px) {
  /* ── NAV ── */
  .nav { height: auto !important; min-height: 52px; padding: 0 16px; flex-wrap: wrap; gap: 0; align-items: center; }
  .nav-logo { width: 100%; padding: 4px 0; }
  .nav-links { display: flex; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; width: 100%; background: #13161d; border-top: 1px solid rgba(255,255,255,0.07); border-bottom: 2px solid rgba(123,175,212,0.2); margin-bottom: 0; }
  .nav-links::-webkit-scrollbar { display: none; }
  .nav-links a { padding: 0 12px; font-size: 9px; white-space: nowrap; flex-shrink: 0; height: 32px; display: flex; align-items: center; }
  .nav-cta { display: none; }

  /* ── HERO ── */
  .hero { padding: 4px 16px 24px !important; grid-template-columns: 1fr; }
  .hero-photo-col { display: none; }
  .hero-logo { display: none; }
  .hero-left { padding-top: 0; margin-top: 0; }
  .hero-text { padding-top: 0; margin-top: 0; }
  .hero-label { margin-top: 0 !important; margin-bottom: 8px; padding-top: 0; }
  .hero-title { font-size: 36px; }
  .hero-sub { font-size: 13px; }
  .hero-actions { flex-direction: column; align-items: flex-start; gap: 10px; }
  .hero-btn-primary, .hero-btn-secondary { width: 100%; text-align: center; }

  /* ── STATS ── */
  .stats-row { grid-template-columns: repeat(2, 1fr); }
  .stat-cell { padding: 20px 16px; }
  .stat-cell-val { font-size: 34px; }

  /* ── GRIDS ── */
  .research-grid, .areas-grid { grid-template-columns: 1fr; }
  .team-grid { grid-template-columns: repeat(2, 1fr); }

  /* ── SECTION HEADERS ── */
  .section-hd { padding: 10px 16px; flex-wrap: wrap; gap: 6px; }

  /* ── CTA BAND ── */
  .cta-band { padding: 32px 16px; flex-direction: column; align-items: flex-start; gap: 24px; }
  .cta-title { font-size: 28px; }
  .cta-btn { width: 100%; text-align: center; }

  /* ── FOOTER ── */
  .footer { padding: 14px 16px; flex-direction: column; align-items: flex-start; gap: 8px; }

  /* ── TICKER ── */
  .ticker-label { font-size: 8px; padding: 0 10px; }
  .ticker-item { font-size: 9px; padding: 0 14px; }
}

/* ── SMALL PHONES (< 480px) ── */
@media (max-width: 480px) {
  .hero-title { font-size: 28px; }
  .stat-cell-val { font-size: 26px; }
  .stats-row { grid-template-columns: 1fr; }
  .team-grid { grid-template-columns: 1fr; }
  .cta-logo { width: 100px; height: 100px; }
  .mc-title { font-size: 16px; }
  .area-title { font-size: 17px; }
  .nav-cta { display: none; }
}