.portada-inicial {
    position: relative;
    overflow: hidden;
  }
  
  .carousel-img {
    height: 300vh;
    object-fit: cover;
  }
  
  .carousel-caption {
    bottom: 20%;
    text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.6);
  }
  
  .carousel-caption h2 {
    font-size: 2.2rem;
  }
  
  .niveles-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
  }
  
  .nivel-btn {
    background-color: #ffffff;
    color: rgb(0, 0, 0);
    font-weight: 600;
    font-size: 18px;
    padding: 10px 28px;
    border-radius: 35px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
  }
  
  .nivel-btn:hover {
    transform: scale(1.10);
  }
  
  .carousel-item img {
    width: 100%;
    height: 100vh; /* o puedes usar 90vh si 100vh es demasiado */
    object-fit: cover;
  }
  
  .portada-texto {
    z-index: 2;
    text-shadow: 2px 2px 5px rgba(0,0,0,0.6);
    position: absolute;
    top: 60%;             /* Altura vertical, puedes ajustar si quieres más arriba o más abajo */
    left: 105%;            /* Antes estaba en 50%. Aumenta para mover hacia la derecha */
    transform: translate(-50%, -50%);
  }
  .carousel-item img {
  width: 100%;
  height: 90vh;
  object-fit: cover;
  object-position: center;
}

/* Ajuste específico para pantallas pequeñas */
@media (max-width: 768px) {
  .carousel-item img {
    height: 60vh;
    object-fit: contain;
    object-position: center center;
  }

  .portada-texto {
    display: none; /* Opcional: oculta los botones en móvil si se ven mal */
  }
}
