.tutorial-lead {
  max-width: var(--reading-width);
  padding-bottom: 12px;
}

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

.tutorial-deck {
  max-width: 42em;
  font-size: var(--size-h3);
  line-height: var(--line-body);
}

.tutorial-note-title {
  margin-top: 0;
  margin-bottom: 14px;
  font-size: var(--size-h3);
}

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

.tutorial-step .prose {
  max-width: var(--reading-width);
}

.tutorial-step .official-shot {
  justify-self: center;
}

.tutorial-step h3,
.sec-title[id] {
  scroll-margin-top: 28px;
}

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

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

  .tutorial-step .official-shot {
    width: 100%;
    max-width: 280px;
  }
}