.menu {
  display: flex;
  flex-flow: row wrap;
  min-width: 500px;
  max-width: 100vw;
  padding: 10px;
}

.menu div {
  border-radius: 5px;
  min-width: calc(100% / 3);
}

@media only screen and (max-width: 992px) {
  .menu {
    min-width: 90vw;
    transform: translateX(calc(40vw));
  }
}

@media only screen and (max-width: 768px) {
  .menu div {
    min-width: 50%;
  }
}