@media (max-width: 767px) {
  .driver-page,
  .driver-page > *,
  .driver-hero-grid > *,
  .driver-content-grid > *,
  .driver-main-panels > *,
  .overview-pair > * {
    min-width: 0;
    max-width: 100%;
  }

  .driver-page {
    width: 100%;
    overflow-x: clip;
  }

  .driver-panel {
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
  }

  .driver-panel > .table-responsive {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .driver-panel > table.driver-table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }

  .driver-breadcrumb {
    flex-wrap: wrap;
    overflow-wrap: anywhere;
  }

  .driver-name-line {
    min-width: 0;
    align-items: flex-start;
  }

  .driver-name-line h1 {
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .driver-tabs {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
  }

  .driver-tabs a {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .driver-switch,
  .side-choice-row {
    width: 100%;
  }

  .card-choice-row {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .embedded-card,
  .rating-chart {
    width: 100%;
    max-width: 100%;
  }

  .rating-head {
    grid-template-columns: 1fr;
  }

  .championship-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .championship-grid a,
  .constructor-career-row,
  .rivalry {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .pagination {
    flex-wrap: wrap;
  }
}

@media (max-width: 400px) {
  .championship-grid {
    grid-template-columns: 1fr;
  }

  .driver-flag {
    width: 36px;
    height: 24px;
    flex: 0 0 auto;
  }
}
