.step {
  .step__num {
    margin: 0 0 0.5em;
    color: var(--prime);
    font-size: clamp(1.625rem, 2.2vw, 2rem);
    font-weight: 700;
    line-height: 1;
    &::after { content: "/"; margin-left: 0.12em; color: var(--accent); }
  }
  h3 { margin-bottom: 0.3em; font-size: 1.125rem; }
  p:not(.step__num) { margin: 0; font-size: 1rem; }
}
.step--row > .rte {
  display: grid;
  grid-template-columns: clamp(96px, 12.5vw, 180px) minmax(0, 1fr);
  padding-top: clamp(22px, 2.4vw, 30px);
  > :not(.step__num) { grid-column: 2; max-width: 940px; }
  .step__num {
    grid-row: span 2;
    margin: 0;
    font-size: clamp(2.5rem, 4.4vw, 4rem);
    font-weight: 800;
  }
  h3 { margin-bottom: 0.45em; font-size: clamp(1.125rem, 1.5vw, 1.375rem); }
  p:not(.step__num) { font-size: 1.0625rem; }
}
.step--row:not(:last-child) > .rte::after {
  content: "";
  grid-column: 2;
  margin-top: clamp(26px, 2.6vw, 36px);
  border-top: 1px solid var(--prime);
}
@media (max-width: 560px) {
  .step--row > .rte {
    grid-template-columns: 1fr;
    > :not(.step__num) { grid-column: 1; }
    .step__num { grid-row: auto; margin-bottom: 0.3em; }
  }
  .step--row:not(:last-child) > .rte::after { grid-column: 1; }
}
