#container {
  --paddingWidth: 3vw;
  --gridGapWidth: 1.5vw;
  padding: var(--paddingWidth);
}

#container > h2 {
  font-size: 250%;
  font-weight: bolder;
  text-transform: uppercase;
  margin-top: 0;
}

#books {
  --numberBook: 6;
  display: grid;
  grid-template-columns: repeat(var(--numberBook), 1fr);
  grid-auto-rows: calc((100vw - var(--paddingWidth) - var(--gridGapWidth) * (var(--numberBook) - 1)) / var(--numberBook) * 1.45);
  grid-gap: var(--gridGapWidth);
}

#books > a {
  margin-bottom: 2em;
  text-decoration: none;
  color: var(--menu-text-color);
  display: grid;
  grid-template-rows: 2em 1fr;
  transition: .2s transform, .2s filter;
  filter: drop-shadow(0 0 0.7vmin rgba(0, 0, 0, 0.5));
}

#books > a:hover {
  transform: scale(1.02);
  filter: drop-shadow(0 0 1.5vmin rgba(0, 0, 0, 0.8));
}

#books > a > p {
  margin: 0;
  margin-bottom: 1em;
  white-space: nowrap;
  overflow-x: hidden;
  text-overflow: ellipsis;
  height: 2em;
}

#books > a > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body {
  min-height: 100vh;
}
