.container,
.wrap {
  width: min(1180px, 92vw);
  margin: 0 auto;
}

.container--narrow {
  width: min(980px, 92vw);
}

.py-4 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.mb-4 {
  margin-bottom: 1.5rem;
}

.mb-3 {
  margin-bottom: 1rem;
}

.mb-2 {
  margin-bottom: 0.75rem;
}

.mb-1 {
  margin-bottom: 0.35rem;
}

.mb-0 {
  margin-bottom: 0;
}

.d-flex {
  display: flex;
}

.align-items-center {
  align-items: center;
}

.justify-content-between {
  justify-content: space-between;
}

.text-muted {
  color: var(--muted);
}

.row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

.g-3 {
  gap: 1rem;
}

.col-12,
.col-md-6 {
  min-width: 0;
}

.h-100 {
  height: 100%;
}

.u-fade-up {
  animation: surfaceFadeUp 0.55s ease both;
}

@media (min-width: 768px) {
  .col-md-6 {
    grid-column: span 1;
  }
}
