@media (max-width: 960px) {
  main {
    grid-template-columns: 1fr;
  }

  .masthead {
    min-height: auto;
    border-right: none;
    border-bottom: 1px solid var(--line);
    box-shadow: 0 18px 40px var(--shadow);
  }

  .table {
    min-height: 540px;
    padding: 18px;
  }

  .card-frame {
    width: 88px;
    height: 124px;
  }

  .cards {
    min-height: 132px;
    width: min(100%, 420px);
    --card-half-width: 44px;
  }

  .cards[data-layout="spread"] {
    --card-step: 100px;
  }

  .cards[data-layout="stacked"] {
    --card-step: 28px;
  }
}
