/* Page structure: containers, sections, grids. Prefix: none (generic helpers). */
.container {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-pad);
}

.section {
  padding-block: var(--section-pad, var(--space-section));
}
.section--alt {
  background: var(--color-surface);
}

.section__head {
  max-width: 40rem;
  margin-bottom: var(--space-4);
}
.section__head p {
  color: var(--color-text-muted);
}

/* Auto-fitting card grid: change min width in one place via --grid-min */
.grid {
  display: grid;
  gap: var(--space-3);
  grid-template-columns: repeat(auto-fill, minmax(var(--grid-min, 17rem), 1fr));
}

/* Two columns that stack on mobile */
.split {
  display: grid;
  gap: var(--space-4);
  align-items: center;
}
@media (min-width: 52rem) {
  .split {
    grid-template-columns: 1fr 1fr;
  }
}
