.overview-columns-grid {
  display: grid;
  grid-template-columns: repeat(var(--columns), minmax(0, 1fr));
  column-gap: 25px;
  /* a tile's top line must sit clearly closer to its own title (20px) than to the text above */
  row-gap: 50px;
  width: 100%;
}

.overview-column:only-child {
  grid-column: 1 / -1;
}

.overview-columns-summary {
  margin-bottom: 45px;
}

/* label without summary text: same distance as other block labels */
.overview-columns-summary:not(:has(p)) {
  margin-bottom: 28px;
}

.overview-column {
  border-top: 2px solid var(--dark-petrol);
  padding-top: 20px;
  transition: border-color 0.2s ease;
}

.overview-column:hover {
  border-top-color: var(--raspberry);
}

/* pull text 10px closer to its heading so both read as one unit */
.overview-column-content > p {
  margin-top: calc(1em - 10px);
}

/* grid items keep their margins, so the last paragraph would widen the gap to the next block */
.overview-column-content > p:last-child {
  margin-bottom: 0;
}

.overview-column-title,
.overview-column-title p {
  font-family: "Gelasio", serif;
  font-size: 34px;
  color: var(--dark-petrol);
}

@media (max-width: 1200px) {
  .overview-columns-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1025px) {
  .overview-columns-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
