@media (max-width: 768px) {
  html, body { max-width: 100vw; overflow-x: hidden; }
  /* dense numeric tables: scroll horizontally inside themselves */
  table { display: block; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; white-space: nowrap; }
  /* stop iOS Safari zooming in when a field is focused */
  input, select, textarea { font-size: 16px !important; }
  img { max-width: 100%; height: auto; }
  /* common multi-column layouts -> single column */
  .grid, .grid-two, .grid-three, .risk-grid, .chart-grid, .fleet-grid,
  .stats-grid, .corr-wrap, .chart-wrap, .pnl-chart-wrap { grid-template-columns: 1fr !important; }
  /* horizontal bars wrap instead of overflowing */
  .nav, .nav-links, .nav-right, .wrap, .hero-cta, .hero-meta { flex-wrap: wrap; }
  body { font-size: 15px; }
  /* comfortable tap targets */
  a.btn-primary, a.btn-ghost, .nav-login, button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
}
