body {
  width: min(800px, 90%);
  margin: 0 auto;
}

@media (min-width: 640px) {
  body {
    background-color: #eaf6ff;
  }
}

@media (max-width: 500px) {
  h1 {
    font-size: 1.5rem;
  }
}

@media (min-width: 640px) {
  h1 {
    font-size: 2.5rem;
  }
}

#fixed-size-grid-items ul {
  list-style: none;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
}

#fixed-size-grid-items li {
  margin: 10px;
}

#fixed-size-grid-items aside {
  width: 170px;
  font-size: 0.8rem;
}

#stretchable-grid-items ul {
  list-style: none;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  margin: 1rem -10px;
}

#stretchable-grid-items li {
  flex: 0 0 100%;
}

@media (min-width: 480px) {
  #stretchable-grid-items li { flex-basis: 50%; }
}

@media (min-width: 640px) {
  #stretchable-grid-items li { flex-basis: 25%; }
}

#stretchable-grid-items aside {
  margin: 10px;
  font-size: 0.8rem;
}
