/* Fondo oscuro */
.modal {
  display: none; /* oculto por defecto */
  position: fixed;
  z-index: 2000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.6);
  overflow-y: auto;
}

/* Caja blanca central */
.modal-contenido {
  background: #fff;
  margin: 50px auto;
  border-radius: 10px;
  width: 90%;
  max-width: 700px;
  position: relative;
  overflow: hidden;
  animation: aparecer 0.3s ease-out;
}

/* Botón cerrar */
.cerrar {
  position: absolute;
  top: 15px;
  right: 20px;
  font-size: 28px;
  font-weight: bold;
  color: #333;
  cursor: pointer;
}

/* Animación */
@keyframes aparecer {
  from { opacity: 0; transform: translateY(-20px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Estilos de pasos */
.step {
  padding: 30px 20px;
  background: #fff;
}

.step h2 {
  background: #d4de06;
  color: #000;
  display: inline-block;
  padding: 6px 12px;
  border-radius: 4px;
  margin: 0 0 15px 0;
  font-size: 18px;
  font-family: 'Montserrat', sans-serif;
}

.step img {
  display: block;
  max-width: 100%;
  margin: 15px auto;
  border: 3px solid #000;
}

/* Colores */
.step1 { background: #fff; 
         font-weight:bold;
         font-family: 'Raleway', sans-serif;}
.step2 { background: #033189; 
         color: #fff;
         font-weight:bold;
         font-family: 'Raleway', sans-serif;}
.step3 { background: #D0383F; 
         color: #fff;
         font-weight:bold;
         font-family: 'Raleway', sans-serif;}
.step4 { background: #fff; 
         font-weight:bold;
         font-family: 'Raleway', sans-serif;}
.step5 { background: #033189;
         color: #fff; 
         font-weight:bold;
         font-family: 'Raleway', sans-serif;}
.step6 { background: #D0383F; 
         color: #fff;
         font-weight:bold;
         font-family: 'Raleway', sans-serif;}
.step7 { background: #fff; 
         font-weight:bold;
         font-family: 'Raleway', sans-serif;}
