/* The games grid on the homepage: the featured game spans the full width with its picture beside
   the text; the others sit side by side at half width. */
.gamegrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--gg-gap, clamp(1rem, 2.4vw, 1.6rem));
}
.gamegrid > .gg-featured {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
}
.gamegrid > .gg-card { display: flex; flex-direction: column; min-width: 0; }
.gamegrid > .gg-featured.gg-card { display: grid; }
.gg-media { position: relative; overflow: hidden; margin: 0; }
.gg-media img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.gg-featured .gg-media img { height: 100%; }
.gg-body { display: flex; flex-direction: column; gap: 0.15rem; padding: var(--gg-pad, clamp(1.1rem, 2.4vw, 2rem)); }
.gg-card:not(.gg-featured) .gg-body { flex: 1; }
.gg-card .links { margin-top: auto; padding-top: 1rem; }
@media (max-width: 52em) {
  .gamegrid, .gamegrid > .gg-featured { grid-template-columns: minmax(0, 1fr); }
}
