@media (max-width: 760px) {
  .nav { height: 70px; }
  .source-link { font-size: 12px; }
  .hero h1 { font-size: clamp(44px, 14vw, 58px); }
  .lede { font-size: 17px; }
  .controls label { flex: 1; min-width: 130px; }
  .controls select { width: 100%; min-width: 0; }
  .chart-card { overflow: hidden; }
  .canvas-wrap canvas { min-height: 390px; }
  .legend { flex-wrap: wrap; }
  .table-wrap { overscroll-behavior-inline: contain; }
}
