/*
  Pasos numerados (portada: cómo funciona; Cómo funciona: fases del acompañamiento)
  Solo para contenido que es una secuencia real. <ol> da el orden al lector de
  pantalla; el número grande es aria-hidden y el título lleva "Paso n:" oculto.
  Móvil: línea vertical que une los pasos. Escritorio (>= 1280px): filas con filete.

  <ol class="step-list" role="list">
    <li class="step">
      <span class="step__number" aria-hidden="true">1</span>
      <div class="step__body">
        <h3 class="step__title"><span class="visually-hidden">Paso 1: </span>…</h3>
        <p class="step__text">…</p>
      </div>
    </li>
  </ol>
*/

.step-list {
  display: grid;
}

.step {
  position: relative;
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: var(--gap-4);
  padding-bottom: var(--padding-10);
}

/* Línea vertical que une los pasos en móvil */
.step:not(:last-child)::before {
  content: "";
  position: absolute;
  top: 3.5rem;
  bottom: var(--padding-2);
  left: 1.125rem;
  width: 1px;
  background: var(--gray-400);
}

.step__number {
  font-family: var(--heading);
  font-size: var(--font-size-8);
  line-height: var(--line-height-12);
  font-variation-settings: "SOFT" 0, "WONK" 0;
  font-variant-numeric: lining-nums;
  color: var(--primary-600);
}

.step__body {
  display: grid;
  gap: var(--gap-2);
  padding-top: var(--padding-2);
}

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

@media (min-width: 1280px) {
  .step {
    grid-template-columns: 8rem 1fr;
    gap: var(--gap-6);
    padding-block: var(--padding-10);
    border-top: 1px solid var(--rule);
  }

  .step:last-child {
    border-bottom: 1px solid var(--rule);
  }

  .step:not(:last-child)::before {
    display: none;
  }

  .step__number {
    font-size: var(--font-size-11);
    line-height: var(--line-height-15);
    letter-spacing: -0.03em;
  }

  .step__body {
    padding-top: var(--padding-4);
  }

  .step__title {
    font-size: var(--font-size-7);
    line-height: var(--line-height-11);
  }
}
