html,body {
  height: 100%;
  margin: 0;
  padding: 0;
  font-family: arial;
  font-size: 10pt;
}

#menu {
  height: 80px;
  width: 100%;
  background: #f1f3f4;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #dbdcdd;
}
#menu form {
  text-align: center;
  padding: 20px;
  max-width: 700px;
  margin: auto;
}

#shops {
  padding: 40px;
  max-width: 800px;
  margin: auto;
}
#shops h3 {
  flex-basis: 100%;
}
#shops article {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
#shops footer {
  flex-basis: 100%;
  margin: 20px 0 40px 0;
  padding: 0 0 20px 0;
  border-bottom: 1px solid #dbdcdd;
}

#shops a {
  width: 200px;
  padding: 10px 0;
  text-align: center;
  flex-basis: 33.33%;
}
@media (max-width: 576px) { 
  #shops a {
    flex-basis: 50%;
  }
}
#shops a small {
  color: gray;
  font-size: 7pt;
}