.c-tutorial-archive {
  --tutorial-archive-max: var(--container-max);
  --tutorial-archive-card-max: 24.875rem;
  --tutorial-archive-surface: #fafafa;

  min-width: 0;
  padding-block-end: 6.25rem;
  background: var(--tutorial-archive-surface);
}

.c-tutorial-archive__content {
  width: min(100% - (2 * var(--spacing-container-inline)), var(--tutorial-archive-max));
  margin-inline: auto;
}

.c-tutorial-archive__header {
  display: flex;
  min-height: 3.75rem;
  align-items: center;
}

.c-tutorial-archive__title {
  margin: 0;
  color: var(--color-text-primary);
  font-family: var(--font-family-title);
  font-size: var(--type-heading-md-size);
  font-weight: var(--font-weight-bold);
  line-height: var(--type-heading-md-line-height);
}

.c-tutorial-archive__grid {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(0, var(--tutorial-archive-card-max));
  justify-content: center;
  gap: var(--space-6);
}

.c-tutorial-archive__grid .c-tutorial-card {
  display: flex;
  width: 100%;
  max-width: var(--tutorial-archive-card-max);
  height: 100%;
  flex-direction: column;
}

.c-tutorial-archive__grid .c-tutorial-card__body {
  flex: 1;
}

.c-tutorial-archive__grid .c-tutorial-card__footer {
  margin-block-start: auto;
}

.c-tutorial-archive .c-pagination {
  margin-block-start: var(--space-6);
}

.c-tutorial-archive__empty {
  margin: var(--space-12) auto;
  color: var(--color-text-secondary);
  text-align: center;
}

@media (min-width: 48rem) {
  .c-tutorial-archive__content {
    margin-block-start: var(--spacing-page-start);
  }

  .c-tutorial-archive__header {
    min-height: auto;
    margin-block-end: var(--space-6);
  }

  .c-tutorial-archive__grid {
    grid-template-columns: repeat(2, minmax(0, var(--tutorial-archive-card-max)));
    justify-content: space-between;
  }
}

@media (min-width: 80rem) {
  .c-tutorial-archive__grid {
    grid-template-columns: repeat(3, minmax(0, var(--tutorial-archive-card-max)));
  }
}
