/* Container, section, grid primitives. */

.container {
  width: min(var(--max-w), 92vw);
  margin-inline: auto;
}

.section {
  padding-block: clamp(64px, 7vw, 112px);
}
.section--tight { padding-block: clamp(48px, 5vw, 80px); }
.section--cream-soft { background: var(--cream-soft); }
.section--dust { background: var(--dust-soft); }
.section--dust-deep { background: var(--dust-deep); color: white; }
.section--dust-deep h2,
.section--dust-deep h3 { color: white; }
.section--dust-deep p { color: rgba(255,255,255,0.86); }

.section__head {
  text-align: center;
  max-width: 720px;
  margin: 0 auto clamp(40px, 4vw, 64px);
}
.section__head .eyebrow { margin-bottom: 16px; }
.section__head h2 { margin-bottom: 16px; }

.grid-3 {
  display: grid;
  gap: clamp(24px, 3vw, 40px);
  grid-template-columns: 1fr;
}
@media (min-width: 820px) {
  .grid-3 { grid-template-columns: repeat(3, 1fr); }
}

.grid-2 {
  display: grid;
  gap: clamp(32px, 4vw, 64px);
  grid-template-columns: 1fr;
  align-items: center;
}
@media (min-width: 820px) {
  .grid-2 { grid-template-columns: 1fr 1fr; }
}
