html{
    scroll-behavior: smooth;
}


body{
    font-family: 'Roboto Condensed', sans-serif;
    margin: 0;
    overflow-x: hidden;    
}


#portada{
    position: relative;
    height: 420px;
    display: flex;
    justify-content: center;
    align-items: center;         
}
#portada .contenedor-portada{
    margin: auto;
    margin-left: 0;
    margin-top: 0px;
    display: flex;
}

.imagen{
    position: absolute;           
    width: 100%;
    z-index: -1;
}
@media (max-width:1300px){
    .imagen{
        height: 700px; 
    }
}

#portada img{    
    filter: opacity(80%);    
    left: 0;
    object-fit: cover;
    width: 100%;
    height: 100%; 
    transform: translate(0px,-73px);   
}
#portada h1{
    position: absolute;
    background: #fff;    
    color: #e01d44;
    text-shadow: 4px 5px 6px rgba(24,64,86,0.3);
    box-shadow: 0 10px 10px rgba(0,0,0,0.2);
    padding: 10px;
    font-weight: 900;
    border-radius: 10px;
    bottom: -12%;
    left: 5%;
}




#curso{
    background: rgb(255, 255, 255);    
    height: 100%;
    width: 100%;
    padding-top: 10px;
}
#curso .contenedor-curso{
    width: 90%;
    margin: auto;
    margin-top: 0;
    background: #fff;
}


.parte1{    
    height: 100%;
    display: grid;
    grid-template-columns: 70% 30%;
}

.intro{          
    width: 97%;
    display: flex;
    flex-direction: column;
}


.valoracion{    
    left: 0;
    width:200px;
    display: flex;
    justify-content: space-around;    
    align-items: center;        
}
.puntaje-img{
    height: 25px;
}


h1{
    font-size: 40px;
    margin-top: 30px;
    margin-bottom: 10px;
    padding-right: 5px;
    color: #184056;
}

.valoracion .fuerte {
    margin: 0px 10px;
}


.autor-nivel{
    margin: auto;
    width: 100%;
    display: grid;
    grid-template-columns:50% 50%;
    justify-items:center;
}


.duracion-totales-actualizacion{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    justify-items: center;    
}
.duracion-totales-actualizacion p{
    display: flex;
    flex-direction: column;
    align-items: center;
}

.progreso{
    display: flex;
    flex-direction: column;
    margin-top: 10px;
}
.progreso .porcentaje{        
    display: grid;
    grid-template-columns: 80% 15%;
    gap: 2%;
    align-items: center;
    margin-bottom: 5px;
}
.porcentaje .barra{
    display: flex;
}

.llena{
    position: relative;
    background: #e01d44;
    height: 8px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.llena::after{
    position: absolute;
    content: '';
    right: -4px;    
    top: -4px;
    width: 16px;
    height:16px;
    border-radius: 50%;
    background: #e01d44;
}
.vacia{
    background: #cdd3d4;
    height: 8px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

/****************** GENERALES ******************************/
p{
    margin:0;
}
.suave{
    color: #a5acaf;
    font-weight: 600;
    margin: 0;
}

.fuerte{    
    margin: 0;
    font-size: 18px;
    font-weight: 900;
    color: #184056;
}

.subtitulo{
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 8px;
}
.linea{
    background: #b9bec0;    
    height: 1px;    
    margin: 8px 0;
}

.texto{
    font-size: 17px;
    color: #184056;

}




/*********************** CURSO BOX*****************/
.parte1 .curso-card{
    border: #e0e0e0 solid 1px;    
}
.img-curso{
    position: relative;
    height: 220px;
    width: 100%;    
}
.img-curso > img {
    object-fit: cover;    
    left: 0;
    height: 100%;
    position: absolute;
      width: 100%;
    top: 0;
    z-index: 1;
  }

form,.adquirir{
    margin: auto;    
    display: flex;
    justify-content: center;
    padding: 12px 0;    
}

button{
    background: linear-gradient(145deg, #26C1F0, #1A87A8);
    box-shadow: 1.8px 1.8px 7px #156A84, -1.8px -1.8px 7px #2BDEFF;
    border: 0;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 6px;
    cursor: pointer;
    transition: 0.7s ease-in-out;
    display: flex;
}

.desactivado{
    font-size: 20px;
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 6px;
    background: #a5acaf;
    box-shadow: 1.8px 1.8px 7px #9d9fa0, -1.8px -1.8px 7px #b0b9bb;
    color: #fafafa;
    display: flex;   
    justify-content: center;
    margin: auto; 
    width: 112px;
    pointer-events: none;
}
.desactivado img{
    margin-left: 5px;
    opacity: 60%;
}

button img{
    margin-left: 5px;
}
button:hover{
    transform: scale(1.1);
}

.adquirir{
    text-decoration: none;
    background: linear-gradient(145deg, #26C1F0, #1A87A8);
    box-shadow: 1.8px 1.8px 7px #156A84, -1.8px -1.8px 7px #2BDEFF;
    border: 0;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 6px;
    cursor: pointer;
    transition: 0.7s ease-in-out;
    display: flex;
    margin: auto;
    justify-content: space-between;
    width: 150px;
    margin-top: 10px;
    margin-bottom: 10px;
}
.adquirir:hover{
    transform: scale(1.1);
}
.cero{
    width: 110px;
}

.material{
    padding-top: 10px;
    display: flex;
    flex-direction: column;
    margin: auto;
    width: 90%;
}



/***************** PARTE 2 ***********************/
.parte2{
    position: relative;    
    height: 100%;
    display: grid;
    grid-template-columns: 68% 30%;
    gap: 2%;
    margin: 10px 0;
}

.parrafos{
    display: grid;
    grid-template-columns: 48% 48%;
    gap: 4%;
    margin-top: 10px;
}
.parrafos p{
    display: flex;
    flex-direction: column;
}
.requisitos{
    display: flex;
    flex-direction: column;
    margin: auto;    
    width: 90%;
}

.parte3{
    margin: auto;    
    height: 100%;
    display: grid;
    grid-template-columns: 68% 30%;
    gap: 2%;
    margin-top: 10px;
    padding-bottom: 70px;
    margin-bottom: -47px;
}

.temas{     
    display: flex;
    flex-direction: column;
}

.temas li{    
    color: #e01d44; 
    margin: 0px 0;
    font-size: 24px;
    font-weight: 500;
    margin-left: 1%;
}
.elemento{
    color: #184056;    
    font-size: 18px;    
    margin: 0 0;
}

.temas ul{
    margin-top: 0;
}

.audiencia{    
    display: flex;
    flex-direction: column;
    width: 95%;
    margin: auto;
    margin-top: 0;
}

.parte4{
    position: relative;
    margin: auto;
    height: 100%;
    width: 70%;  
    padding-bottom: 70px;
    margin-bottom: -47px;    
}

.parte4 .ratings{
    margin: auto;
    display: grid;
    grid-template-columns: 20% 80%;
    margin-top: 5px;
    padding: 5px 0;
    border: #e0e0e0 solid 1px; 
    background: #f7f7f7;      
}

.parte4 .rating{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.rating .calificacion{
    font-size: 40px;
    font-weight: 800;
}

.valoracion-parte4{
    margin-bottom: 5px;
    display: flex;
    align-items: center;  
}
.valoracion-parte4 img{    
    padding-left: 0px;
    margin-left: 0px;
}


.valoracion-parte4 .porcentaje{
    width: 100%;
    margin-left: 10px;
    display: grid;
    grid-template-columns: 75% 23%;
    gap: 2%;
    align-items: center;    
}

.valoracion-parte4 .llena{
    background: #fdd211;
}

.valoracion-parte4 .llena::after{
    background: #fdd211;
}





.comentarios{
    background: #f7f7f7;
    display: grid;
    height: 100%;
    grid-template-columns: 30% 63%;
    gap: 2%;
    border: #e0e0e0 solid 1px;
    padding: 5px 5px;
}
.comentarios .texto{
    height: 100%;
}
.comentarios .persona{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    margin: auto;
    text-align: center;
}

.persona .foto{
    height: 80px;
    width: 80px;
    border-radius: 50%;
    object-fit: cover;
}

.persona .puntaje-img{
    height: 20px;    
}

.comentario{
    height: 100%;
    padding: 10px 0;
    margin: auto;
}

.porcentaje .texto{
    text-align: center;    
}

.porcentaje{    
    margin-left: 10px;
}


.comentar{
    border: #e0e0e0 solid 1px;
}

.comentar form{    
    height: 155px;
    background: #f7f7f7;
    display: flex;
    flex-direction: column;
    justify-content: center;
    justify-items: center;    
}
textarea{
    box-shadow: inset 3.6px 3.6px 6px #D1D1D1, inset -3.6px -3.6px 6px #FFFFFF;
    width: 85%;
    height: 100%;
    border-radius: 6px;
    padding: 8px 10px;
    font-size: 20px;
    resize: none;
    outline: none;
    border: none;
    margin: auto;
    margin-bottom: 5px;
}

.comentar-rating{
    margin: auto;
    margin-bottom: 5px;    
    display: flex;
}
.comentar-rating input{
    margin: 0 2px;       
}


.comentar-rating label{
    display:inline-block;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    transition: 0.6s ease-in-out;
}

.comentar-rating label:hover{
    transform: scale(1.2);
}


.comentar button{
    width: 15%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
}


@media (max-width:950px){
    .parte4 .ratings{
        grid-template-columns: 95%;
        margin: auto;
        justify-content: center;
    }
    .parte4{
        width: 83%;
    }

}
@media (max-width:650px){

    .parte1,.parte2,.parte3,.parte4{
        margin-top: 10px;

    }
    .parte1{
        grid-template-columns: 95%;
        margin: auto;
        justify-content: center;
    }
    .valoracion-parte4 .porcentaje .texto{
        font-size: 13px;
    }
    .parte4{
        width: 95%;
        margin-top: 30px;
    }
    .intro{
        width: 100%;
    }
    .audiencia{
        width: 100%;
    }
    .comentar button{
        width: 30%;
    }
}
@media (max-width:600px){
    .parte2,.parte3{
        grid-template-columns: 95%;
        margin: auto;
        justify-content: center;
        margin-top: 10px;
        padding-bottom: 70px;
        margin-bottom: -47px;
    }
    .requisitos{
        width: 100%;
        margin-top: 10px;
    }
    .temas{
        width: 100%;
        margin-top: 10px;
    }
}

@media (max-width:445px){
    .valoracion-parte4 .porcentaje .texto{
        font-size: 11px;
    }
    .valoracion-parte4 .porcentaje{
        grid-template-columns: 72% 30%;
    }
}


@media (max-width:420px){
    .comentarios{
        grid-template-columns: 96%;        
        margin: auto;
        justify-content: center;
    }
    h1{
        font-size: 30px;
    }
    .progreso .porcentaje{                
        grid-template-columns: 75% 20%;        
    }
    .autor-nivel p{
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .parrafos{
        grid-template-columns: 95%;
        margin: auto;
        justify-content: center;
    }
    .comentar button{
        width: 40%;
    }    
}

@media (max-width:360px){
    .valoracion-parte4 .porcentaje .texto{
        font-size: 10px;
    }
    .valoracion-parte4 .porcentaje{
        grid-template-columns: 70% 30%;
        gap: 2.5%;
    }
}
