.sv-container {
  width: var(--sv-container);
  margin-inline: auto;
}

.sv-section {
  padding: 5rem 0;
}

.sv-section--tight {
  padding: 3.5rem 0;
}

.sv-section__eyebrow {
  margin: 0 0 0.75rem;
  font-size: 0.8rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--sv-muted);
}

.sv-section__title {
  margin: 0 0 1rem;
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  line-height: 1.15;
  font-weight: 700;
  max-width: 22ch;
}

.sv-section__lead {
  margin: 0 0 2rem;
  max-width: 52ch;
  color: var(--sv-muted);
  font-size: 1.05rem;
}

.sv-grid-2 {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.sv-grid-3 {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

@media (max-width: 768px) {
  .sv-section {
    padding: 3.5rem 0;
  }
}
