/* Page-only sequence: the ordered list keeps the approved copy and reading order. */
.b-cuerpo ol.division-etapas {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2rem;
  max-width: none;
  margin: 0 0 1.75rem;
  padding: 0;
  list-style: none;
}
.b-cuerpo ol.division-etapas > li {
  position: relative;
  min-width: 0;
  margin: 0;
  padding: 4rem 0 0;
}
.b-cuerpo .division-etapas li > p {
  max-width: none;
  margin: 0;
  font-size: 1.0625rem;
  line-height: 1.6;
}
.b-cuerpo .division-etapas-title {
  display: block;
  margin-bottom: 0.75rem;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  line-height: 1.3;
  font-weight: 600;
  color: var(--color-heading);
}
.division-etapas-number {
  position: absolute;
  top: 0;
  left: 0;
  display: grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  border: 1px solid var(--color-accent);
  border-radius: var(--radius);
  background: var(--color-accent-tint);
  color: var(--color-accent);
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1;
}
.division-etapas-number::before { content: attr(data-step); }
.division-etapas-connector {
  position: absolute;
  top: 1.375rem;
  left: 3.5rem;
  right: -1.25rem;
  height: 1px;
  color: var(--color-accent);
}
.division-etapas-connector::before {
  content: '';
  position: absolute;
  inset: 0;
  background: currentColor;
  opacity: 0.45;
}
.division-etapas-connector::after {
  content: '';
  position: absolute;
  top: -0.2rem;
  right: 0;
  width: 0.4rem;
  height: 0.4rem;
  border-top: 1px solid currentColor;
  border-right: 1px solid currentColor;
  transform: rotate(45deg);
}
.b-cuerpo p.division-etapas-note {
  max-width: none;
  margin: 0;
  padding-top: 1.5rem;
  border-top: 1px solid var(--color-linea);
  color: var(--color-text-muted);
}
@media (max-width: 800px) {
  .b-cuerpo ol.division-etapas { grid-template-columns: 1fr; gap: 0; }
  .b-cuerpo ol.division-etapas > li { padding: 0 0 2.25rem 3.75rem; }
  .b-cuerpo ol.division-etapas > li:last-child { padding-bottom: 0; }
  .division-etapas-connector {
    top: 3.5rem;
    bottom: 0.75rem;
    left: 1.375rem;
    right: auto;
    width: 1px;
    height: auto;
  }
  .division-etapas-connector::after {
    top: auto;
    right: -0.2rem;
    bottom: 0;
    transform: rotate(135deg);
  }
}
