/* [proceso] — sección "Nuestro proceso": título centrado con el span en verde
   itálica, descripción gris y pasos con círculo numerado verde.
   4 columnas → 2 en tablet → 1 en móvil. */

.mr-proceso {
  --mrp-verde:  var(--mr-color1, #007c68);  /* teal de los círculos y del span del título */
  --mrp-oscuro: var(--contrast, #242727);
  --mrp-texto:  var(--mr-texto, #565f5f);

  max-width: 1180px;
  margin: 3rem auto;
  padding: 0 clamp(1rem, 4vw, 2rem);
  text-align: center;
}

.mr-proceso__titulo {
  margin: 0 0 0.75rem;
  color: var(--mrp-oscuro);
  font-size: clamp(1.9rem, 4vw, 2.75rem);
  font-weight: 800;
  line-height: 1.15;
}

.mr-proceso__titulo span {
  color: var(--mrp-verde);
  font-style: italic;
}

.mr-proceso__descripcion {
  max-width: 640px;
  margin: 0 auto 2.75rem;
  color: var(--mrp-texto);
  font-size: 1.15rem;
  line-height: 1.5;
}

.mr-proceso__pasos {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2rem 1.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mr-proceso__paso {
  margin: 0;
  padding: 0 0.5rem;
}

.mr-proceso__numero {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--mrp-verde);
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: 700;
}

.mr-proceso__paso-titulo {
  margin: 1rem 0 0.5rem;
  color: var(--mrp-oscuro);
  font-size: 1.15rem;
  font-weight: 700;
}

.mr-proceso__paso-texto {
  max-width: 260px;
  margin: 0 auto;
  color: var(--mrp-texto);
  font-size: 0.95rem;
  line-height: 1.5;
}

/* --- Tablet: dos columnas --- */

@media (max-width: 900px) {
  .mr-proceso__pasos {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* --- Móvil: una columna --- */

@media (max-width: 560px) {
  .mr-proceso__pasos {
    grid-template-columns: 1fr;
    gap: 1.75rem;
  }

  .mr-proceso__descripcion {
    font-size: 1rem;
  }
}
