/*
    Author: DAVID CASTILLEJO CAMACHO
    Date:   17/10/2022
*/

/* CUSTOM PROPERTIES: Definicion de constantes como colores, fuentes, etc.  
   ======================================================= */
:root{
    --oscuro: #07070A;
    --azulOscuro: #0A1128;
    --azulClaro: #006FE6;
    --blanco: #FEFCFB;
    --grisOscuro: #4e4e4e;
    --grisClaro: #f7f7f7;
    --titulos: 'Ubuntu', bold;
    --parrafos: 'Montserrat', sans-serif;
}

/* ETIQUETAS DE HTML
   ======================================================= */

html{
    box-sizing: border-box;
    font-size: 62.5%;           /* para el uso de tamaño 'rem' por defecto de 10px*/
}

body{
    font-size: 1.6rem;
}

h1, h2, h3{
    font-family: var(--titulos)
}

p, a {
    font-family: var(--parrafos);
    text-decoration: none;
}

.blue_link{
    color: var(--azulClaro);
    font-weight: bold;
}

.ocultar{
    display: none;
}

.container{
    max-width: 120rem;
    margin: 0 auto; 
    width: 95%;
}

.btn{
    padding: 1rem ; 
    font-weight: bold;
    font-family: var(--parrafos);
    font-size: 2rem;
    border: none;
}

.btn:hover{
    cursor:pointer;
}

.btn_mail{
    padding: 1rem 3rem; 
    font-weight: bold;
    font-family: var(--parrafos);
    font-size: 2rem;
    border: none;
}

.btn_mail:hover{
    cursor:pointer;
}

.bordes{
    border: 2px solid var(--azulClaro);
    color: var(--azulClaro);
    text-decoration: none;
    display: block;
    text-align: center;
    transition: background-color .3s ease-in-out;
}

.bordes:hover{
    background-color: var(--azulClaro);
    color: var(--blanco);
}

.oscuro{
    color: var(--blanco);
    background: var(--grisOscuro);
    border: 1px solid #ffffff; 
    border-radius: .5rem;
    text-align: center;
}



/* Animacion o keyframes*/
@keyframes desplazamiento {
    /*DESPLAZAMIENTO INICIAL*/
    0%{
        transform: translateX(-100%)
    }
    100%{
        transform: translateX(0)
    }
}

/* A TODOS LOS ELEMENTOS TOMARÁN EL VALOR CALCULADO DE SU CONTENEDOR PADRE PARA EL TAMAÑO*/
*,*::before, *::after{
    box-sizing: inherit;
}


/* ENCABEZADO: MENU Y ENCABEZADO
   ======================================================= */

.header{
    background: url(../img/goinsakunda.jpg) no-repeat center center/cover;
    /* height: 100vh; */
    height: 70rem;
    min-height: 60rem;
    z-index: 1;
}



/* definición de un pseudo-elemento before (tambien puede ser after)*/
.header::before{
    content: '';
    position: absolute;
}

.logo h2{
    font-size: 2.5rem;
}

.logo h2 span{
    color: var(--azulClaro)
}

.nav_content{
    display: flex;          /* uso de flexbox para la alineación de los elementos de navegador*/
    align-items: center;    /* vertical los dos elementos*/
    /* justify-content: space-between; Uso de todo el espacio disponible*/
    background-color: var(--blanco);
    box-shadow: 10px 10px 16px -6px rgba(0,0,0,0.45);
    position: fixed;
    top: 0;
    width: 100%;
    justify-content: space-around;
}

.hamburger span{
    width: 5rem;
    height: 1rem;
    border: 2px solid white;
    background-color: var(--oscuro);
    display: block;
}


.navmenu{
    background-color: white;
    position: absolute;
    left: 0;
    top: 70px;
    width: 100%;
    /*height: 100vh;
    text-align: center;*/
}

.navmenu a{
    display: block;
    font-size: 1.8rem;
    padding: 1.1rem;
    color: var(--oscuro);
    text-decoration: none;
    animation: desplazamiento 0.5s ease-in-out;
    transition: background-color .3 ease-in-out;
}


/* *******  REPASAR ESTE APARTADO *************** */
.navmenu div a:hover{
    background-color: var(--azulClaro);
    color: var(--blanco);
    border-bottom: 2px solid #0e0e0e;
}


.header_text h1{
    color: var(--grisOscuro);
    font-size: 2.9rem;
    text-align: left; 
    padding: 7rem 2rem 1rem 2rem;
    margin: unset;
}

.tittle{
    color: var(--azulClaro);
    text-align: left;
    padding: 0 2rem;
    margin: 1.5rem 0;
}

.tittle h2{
    font-size: 2.3rem;
    margin: unset;
}

.header_form{
    background-color: var(--grisClaro);
    /*uso de flexbox para alinear, unidireccional*/
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 3rem;
    border-radius: .5rem;
}

.header_form h2{
    font-size: 2rem;
    text-align: center;
    margin-top: 0;
}

.header_input{
    margin-bottom: 1rem;
    width: 100%;
}

.header_input p{
    font-size: 1rem;
}

.header_input input{
    width: 100%;
    padding: 0 1.6rem;
    height: 4.8rem;
    border: 1px solid #f1f1f1; 
    border-radius: .5rem; 
    font-size: var(--parrafos);
    outline: none;
}


/* SECTION: EXPERIENCIA
   ======================================================= */
.experience_live{
    padding: 1.5rem;                    /*MARGEN INTERIOR*/
    background-color: var(--azulOscuro);
}

.experience_live h2{
    font-size: 3rem;
    color: var(--blanco);
    text-align: center;
    padding-bottom: 1rem
}

.experience{
    color: var(--blanco);
    text-align: center;
}

.experience i{
    font-size: 4rem;
}

.experience h2{
    font-size: 2.5rem;
}

.experience h3{
    font-size: 2rem;
}

.experience p{
    font-size: 1.5rem;
    text-align: justify;
}


/* SECTION: EDUCACION
   ======================================================= */
.education h2{
    text-align: center;
    font-size: 3rem;
    color: var(--azulOscuro);
    padding-bottom: 1rem
}

.education_master{
    background: url('../img/img03.jpg') no-repeat center center/cover;
    /* height: 80rem;
    min-height: 70rem;
    z-index: 1; */
}

.master_container{
    display: grid;
    grid-template-rows: repeat(2, 1fr);
    align-items: center;
    max-width: 120rem;
    margin: 0 auto; 
    width: 95%;
}

.master_text{
    /*Movemos el texto de la seccion a la fila de abajo: de la 2 a la 3*/
    grid-row: 2/3;
    /* padding-left: 2rem; */
    padding: 1.5rem;
    background-color: var(--blanco);
}

.informatic_text, .electronic_text{
    background-color: var(--grisClaro);
    width: 100%;
    border-radius: 1rem;
    padding: .5rem 0;
    margin: .5rem
}

.master_text h3{
    font-size: 2.5rem;
    color: var(--grisOscuro);
    text-align: center;
}

.master_text p{
    font-size: 1.5rem;
    text-align: justify;
    padding-bottom: 1rem;
}

.education_content{
    text-align: center;
}

.education_content i{
    font-size: 4rem;
}

.education_content{
    font-size: 2rem;
}


/* SECTION: FORMACION E IDIOMAS
   ======================================================= */
.formation{
    padding: 1.5rem;              /*MARGEN INTERIOR*/
    background-color: var(--grisOscuro);
    color: var(--blanco);
}

.formacion_content{
    text-align: center;
}

.ground_formation{
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 1rem auto;
    width: 95%;
}

.barchart_languages{
    width: 95%;
    display: flex;
    justify-content: center;
}

/* ICONOS */
.ground_formation i{
    font-size: 4rem;
    background-color: var(--azulClaro);
    width: 8rem; 
    height: 8rem;
    border-radius: 50%;
    /*alineado de forma vertical y horizontal*/
    display: flex; 
    align-items: center;
    justify-content: center;
    /*sombreado*/
    box-shadow: 10px, 10px 16px -6px rgba(0, 255, 255, 0.55);
    transition: all .3s ease-in-out;
}

.formation h2{
    font-size: 3.5rem;
    text-align: center;
}

.formation h3{
    font-size: 2.5rem;
}

.ground_formation lu{
    list-style: none;
    font-family: var(--parrafos);
}

.informatic_text img, .electronic_text img{
    border-radius: 1rem;
    margin: .5rem .5rem;
}

.master_text img {
    border-radius: .7rem;
    margin: .2rem .2rem;
}


/* SECTION: INTERESES Y HOBIES
   ======================================================= */

.intereses h2{
    font-size: 3.5rem;
    color: var(--azulOscuro);
    text-align: center;
}

.proyectos{
    background-color: var(--azulOscuro);
    padding: .2rem .2rem;
}
 
.maratones{
    width: 100%;
    margin: auto;   /*Clase container centrado*/
    padding: 0rem 2rem 2rem 0rem;
}

.info_42maratones{
    background: url('../img/img42_small.jpg') no-repeat center center/cover;
    width: 100%;
    height: 76rem;
    /* min-height: 90rem; 
    z-index: 1;*/
    padding: 0rem 2rem;
    margin: auto;
    border-radius: 10px;
}

.info_42maratones h3{
    color: var(--blanco);
    font-size: 2.7rem;
    padding: 1rem 0;
}

.info_42maratones a{
    padding: 2rem 2rem;
}

.btn_colabora{
    cursor: pointer; 
    font-weight: bold;
    padding: 10px 20px; 
    border: 0;
    background: var(--grisOscuro);
    color: var(--blanco);
    font-size: 15px;
    border: 1px solid var(--blanco);
    margin: 10px 0px;
    border-radius: 3px;
}

.hobbies{
    height: auto;
    padding: 1rem 1rem;
}

.hobbie{
    text-align: center;
}


.libros{
    height: auto;
    padding: 1rem 1rem;
    text-align: center;
}

.libro{
    border-radius: 1rem;
    margin: 1rem auto;
}


/* carrusel de imagenes */
.hobbie_img{
    background: url('../img/img102.jpg') no-repeat center center/cover;
    height: 350px;
    border-radius: 1rem;
    transition: all .5s ease-in-out;
}

.hobbie_img:hover{
    background: url('../img/img106.jpg') no-repeat center center/cover; 
    transition: all .5s ease-in-out;
}


/* PODCAST */
.podcast{
    text-align: center;
}

.podcast iframe{
    border: 1px solid #FFFFFF; 
    width:100%; 
    height: 350px;
    border-radius: 1rem;
}


/* SECTION: SOCIAL
   ======================================================= */
.social {
    margin: 50px; 
}

.social p{
    text-align: center; 
    font-size: 30px;
    margin-bottom: 20px;
}

.links{
    display: flex; 
    align-items: center; 
    justify-content: center; 
}

.links a{
    margin: 0 30px;
}

.links a i{
    font-size: 3rem;
    color: var(--azulOscuro)
}


/* SECTION: CERTIFICADOS
   ======================================================= */
.certificados {
    margin: 50px; 
}

.certificados p{
    text-align: center; 
    font-size: 30px;
    margin-bottom: 20px;
}

.certificados {
    text-align: center;
    margin: 20px 20px;
}


/* SECTION: FOOTER
   ======================================================= */
.footer{
    background: var(--grisOscuro);
    color: #939999;
    font-size: 1rem;
    padding: 25px 0; 
    text-align: center; 
    padding-bottom: 20px; 
}
.footer a{
    color: #939999;
    font-size: 1.8rem;
}




/* ===================================================================
   MEDIA QUERY
   =================================================================== */
/* pantallas con pantallas superiores a 780px*/
@media(min-width: 969px){
    .ocultar{
        display: inline;
    }

    .bordes{
        display: inline-block;
        margin-top: 2rem;
    }

    .hamburger{
        display: none;
    }

    .navmenu a{
        display: inline;
    }

    .navmenu{
        position: relative;
        top: unset;
        width: auto;
        background-color: unset;
        animation: unset;
    }

    .header{
        background-attachment: fixed;
    }

    .header_content{
        display: flex;
        align-items: center;
        height: 85%;
        justify-content: space-between;
    }

    .header_content, .header_form{
        flex: 0 0 calc(50% - 1rem)
    }

    .header_text h1{
        font-size: 6rem;
        text-align: left;
        padding-top: 0;
    }

    .header_text h2{
        font-size: 3rem;
    }

    .header_form h2{
        font-size: 3rem;
    }

    .nav_content{
        position: fixed; 
        width: 100%;
        z-index: 1;
    }


    /****************************************************************************************/
    /* EXPERIENCIA*/
    .experience_content{
        /*uso de 'grid' que alinea de forma multidimensional. display alineaba de forma lineal*/
        display: grid; 
        grid-template-columns: repeat(2, 1fr); 
        text-align: center;
        gap: 4rem;
    }

    .experience_live h2{
        font-size: 4rem;
    }

    .experience h2{
        font-size: 2.2rem;
    }
    
    .experience h3{
        font-size: 1.8rem;
    }


    /****************************************************************************************/
    /* EDUCACION*/

    .education h2{
        font-size: 3rem;
        text-align: center;
    }

    .education_master{
        grid-template-columns: repeat(2,1fr);
        background-attachment: fixed;

    }

    .master_text{
        max-width: 550px;
        padding: 2rem;
        border-radius: 1rem;
        margin: 1rem;
    }


    .education_content{
        /*uso de 'grid' que alinea de forma multidimensional. displayy alineaba de forma lineal*/
        display: grid; 
        grid-template-rows: repeat(2, 1fr); 
        text-align: left;
        padding: 3rem;
        gap: 1rem;
    }

    .informatic_text, .electronic_text{
        background-color: var(--grisClaro);
        width: 100%;
        border-radius: 1rem;
        padding: .5rem 0;
    }

    .informatic_text p, .electronic_text p{
        padding: 0 3rem;
    }

    .education_content h2{
        text-align: center;
    }

    .informatic_text h3, .electronic_text h3{
        font-size: 2.5rem;
        padding: .5rem 1.5rem; 
    }


    /****************************************************************************************/
    /* FORMACION NO REGLADA*/
    .formacion_content{
        display: grid;
        grid-template-columns: repeat(3, 1fr); 
        gap: .5rem;
    }

    .ground_formation lu{
        text-align: left;
    }

    .ground_formation:hover{
        cursor: pointer; 
    }

    .ground_formation:hover .fa-solid,
    .ground_formation:hover .fa-brands,
    .ground_formation:hover .fa-sharp{
        background-color: var(--blanco);
        color: var(--azulClaro);
    }

    
    /****************************************************************************************/
    /* INTERESES Y HOBBIES*/
    .maratones h3{
        font-size: 4rem;
    }


    .hobbies{
        /* display:grid; 
        grid-template-columns: 1fr; */
        display: flex;
        justify-content:center; 
        margin: 1rem auto;
        padding: 2rem;        
        width: 100%;
        gap: 2rem;

    }

    .hobbie{
        text-align: center; 
        width: 550px;
    }

    .hobbie h2{
        width: 100%;
        border-bottom: 1px solid #fff;
    }

    .podcast{
        width: 80%;
    }

    .podcast iframe{
        border: 1px solid #FFFFFF; 
        height: 350px;
        border-radius: 1rem;
    }


    .libros{
        display: flex;
        justify-content:center; 
        margin: 1rem auto;
        padding: 2rem;        
        width: 100%;
        gap: 10rem;
    }

    .libro{
        border-radius: 1rem;
    }


    /****************************************************************************************/
    /* SOCIAL LINKS*/



    /* ****************************************************************************/
    /* FOOTER */


}

