#formulario-curso{
    padding-top: 10px!important;
    margin-bottom: 20px!important;
}
#formulario-curso input{
    border: solid 0px #fff;
}

#formulario-curso form {
  margin: 0 auto;   /* centrado */
  transition: all 0.3s ease-in-out;
}


.form-control:focus {
  border-color: #4285f4;
  box-shadow: 0 0 0 0.2rem rgba(66,133,244,0.2);
}
.header-img {
  border-radius: 10px;
  max-width: 100%;
  height: auto;
  object-fit: contain; /* mantiene proporción */
}
.registrate-titulo {
  width: 300px!important;
  display: inline-block;
  background: #00e1c3;
  border-radius: 15px;
  color: white;
  font-weight: bold;
  padding: 10px 20px;
  font-size: 1rem;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0px; /* sube el texto un poco sobre la imagen */
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}.responsive-container {
  width: 100%;
}
@media (min-width: 992px) {
  .responsive-container {
    width: 40%;      /* ajusta porcentaje (ej. 60-70%) */
    margin: 0 auto;  /* centra en pantalla grande */
  }

}

@media (max-width: 576px) {
  .container-fluid-form{
     margin: 0px!important;
  }
  .registrate-titulo{
      width: 90%!important;
  }
  
  #formulario-curso{
      padding-top: 10px;
  }
  #formulario-curso form{
      padding: 10px;
  }
}

/* Imagen encabezado */
.header-img {
  max-width: 100%;
  height: auto;
}
@media (min-width: 992px) {
  .header-img {
    max-width: 100%; /* más grande en escritorio */
  }
}

/* Botón Registrar */
.registrar-btn {
  width: auto;
    padding: 5px 20px!important;
  font-size: 1.1rem;
}
@media (min-width: 992px) {
  .registrar-btn {
    width: auto;
    padding: 5px 20px;
    font-size: 0.95rem;
  }
}

.contenedor-search {
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
}

.contenedor-search form {
    width: 100%;
    max-width: 600px;
}
button, a{
    padding: 6px 8px!important;
    font-size: 15px!important;
}

a{
    text-decoration: none!important;
    color: inherit!important;
}

.contenedor-search input {
    flex: 1;
    margin-right: 10px;
}

.contenedor-search button {
    flex-shrink: 0;
}


.contenedor-cursos {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
}

.contenedor-curso {
    display: grid;
    grid-template-columns: 1fr 4fr;
    gap: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
}


.apartado-imagen {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
}

.apartado-imagen img {
    width: 100%;
    height: auto;
    border-radius: 5px 0 0 5px;
}

.apartado-texto {
    flex: 3;
    padding: 15px;
}

.contenedor-curso h5 {
    margin: 0;
    font-size: 1.25rem;
}

.contenedor-curso p {
    margin: 10px 0;
    color: #555;
}

.contenedor-curso .btn {
    margin-top: 10px;
}

.contenedor-curso .btn-ver-mas {
    background-color: #007bff;
    color: white!important;
}

.contenedor-curso .btn-inscribirme {
    background-color: #28a745;
    color: white!important;
}

.contenedor-curso .btn-ver-mas:hover {
    background-color: #0056b3;
    color: white;
}

.contenedor-curso .btn-inscribirme:hover {
    background-color: #218838;
    color: white;
}

.contenedor-curso .footer-contenedor-curso {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.contenedor-curso .text-fecha {
    margin: 0;
    color: #888;
}

.contenedor-curso .d-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

@media (max-width: 800px) {

    /* Cambia layout a columna */
    .contenedor-curso {
        display: flex;
        flex-direction: column;
        padding: 10px;
    }

    /* Imagen más pequeña y centrada */
    .apartado-imagen {
        display: flex;
        justify-content: center;
        margin-bottom: 15px;
    }

    .apartado-imagen img {
        max-width: 200px; /* Limita tamaño de imagen */
        width: 100%;
        height: auto;
        border-radius: 5px;
    }

    /* Texto ocupa todo el ancho */
    .apartado-texto {
        width: 100%;
        padding: 10px;
    }

    /* Footer en columna */
    .footer-contenedor-curso {
        display: flex;
        flex-direction: column;
        align-items: stretch; /* Que ocupe todo el ancho */
        margin-top: 10px;
        gap: 10px; /* Espacio entre bloques */
    }

    /* Ajustar fecha */
    .footer-contenedor-curso .text-fecha {
        margin-bottom: 10px;
    }

    /* Botones en columna y full width */
    .contenedor-botones {
        display: flex;
        flex-direction: column;
        width: 90%;
        gap: 10px; /* Espacio entre botones */
    }

}

.form-floating>label{
    padding: .5rem .5rem!important;
    
}