.tutorial-page {
  padding-top: 72px;
  padding-bottom: var(--section-gap);
}

.tutorial-intro {
  max-width: var(--read-width);
}

.tutorial-intro h1 {
  margin-top: 20px;
  margin-bottom: 24px;
}

.tutorial-lead {
  color: var(--c-muted);
  font-size: 20px;
  line-height: 1.8;
}

.tutorial-intro .fact-row {
  margin-top: 28px;
}

.tutorial-intro .callout {
  margin-top: 36px;
  line-height: 1.85;
}

.tutorial-toc {
  margin-top: 40px;
}

.tutorial-step-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  align-items: start;
  gap: 64px;
}

.tutorial-step-layout > * {
  min-width: 0;
}

.tutorial-step-layout .prose > h3:first-child {
  margin-top: 0;
}

.tutorial-verification {
  max-width: var(--read-width);
}

@media (max-width: 1100px) {
  .tutorial-step-layout {
    gap: 32px;
  }
}

@media (max-width: 960px) {
  .tutorial-step-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 40px;
  }
}

@media (max-width: 640px) {
  .tutorial-page {
    padding-top: 40px;
  }

  .tutorial-lead {
    font-size: 18px;
  }

  .tutorial-intro .fact-row {
    justify-content: flex-start;
  }
}