* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/*========================= Fuentes =========================*/
@font-face {
    font-family: 'Segoe UI Regular';
    src: url('../fuentes/Segoe\ UI.ttf');
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: 'Segoe UI Bold';
    src: url('../fuentes/Segoe\ UI\ Bold.ttf');
    font-style: normal;
    font-weight: normal;
}

@font-face {
    font-family: 'Segoe UI Light';
    src: url('../fuentes/segoeuil.ttf');
    font-style: normal;
    font-weight: normal;
}

/*================ Formato del elemento body ================*/
body{
    display: flex;
    background-color:beige;
    min-height: 100vh;    /*altura min = 100% del dispositivo*/
    justify-content:center;
    align-items:center;
    font-family:'Segoe UI Light' ;
    font-weight:500;
    font-stretch:ultra-expanded; 
}


/*================== Contenedor principal ===================*/
.container{
    position: relative;
    width: 100%;
    margin: 40px;
    max-width: 1000px;
    min-height: 1000px;
    background-color: white;
    display: grid;
    grid-template-columns: 1fr 2fr;
}


/*================ Contenedor lado izquierdo ================*/
.left-side{
    padding: 40px;
    background-color: cornflowerblue;
    color: white;
}


/*******************************************************************/
/*******************************************************************/
/*******************************************************************/
header{
    position: fixed;
    padding: 5px;
    z-index: 99; 
    cursor: pointer;
}
.nav-bar span{
    background-image: linear-gradient(45deg, 
                                    rgba(255, 0, 0, 0.529), 
                                    rgba(255, 255, 0, 0.448), 
                                    rgba(0, 128, 0, 0.552), 
                                    rgba(0, 0, 255, 0.386));
    font-size: 30px;
}

/*div.nav-bar{cursor: pointer;}*/

.nav li{margin: 2px;}

.nav{
    position: fixed;
    display: none;
    list-style: none;
    padding: 2px;
    z-index: 50;        /*para superponerse a la img de perfil*/ 
    background-color: rgba(58, 48, 48, 0.374);  
}

.nav div{
    width: 20px;
    height: 20px;
    border: solid 1px;
}

.nav p{ width:60px; font-weight: 500; font-weight: bold; color:white}

.estilo-1{ background-color: rgba(219, 165, 173, 0.985); }
.estilo-2{ background-color: rgba(7, 145, 7, 0.668); }
.estilo-3{ background-color: rgba(218, 144, 8, 0.722); }
.estilo-4{ background-color: rgba(100, 148, 237, 0.766); }
.estilo-5{ background-color: gray; }

.nav div, p{
    display: inline-block;
    vertical-align:middle;
    cursor: pointer;
}

/*******************************************************************/
/*******************************************************************/
/*******************************************************************/


/*===================== Imagen de perfil ====================*/
.profile-img{
    position: relative; /*pos para ser ancestro más cercano posicionado de la img*/
    width: 200px;
    height: 200px;
    border-style: solid;
    border-radius: 50%;
    border-color: #aed1e7;
    overflow: hidden;  /*En caso de que img se salga de la caja ocultar lo que desborde*/
    margin: auto;
}
.profile-img img{    
    position: absolute;  /* ahora sus cc se refieren a .profile-img*/
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    filter: grayscale(100%);
}

.name-left-box{          /*Texto oculto en desktop*/
    display: none;       /*Se hará visible en tablet y cel*/
}



/*========= Titulos de la izquierda y hr separadora =========*/
.title-left{
    text-transform: uppercase;
    margin-bottom: 20px;
    margin-top: 30px;
    text-align: center;
    font-weight: 600;
}
hr{
    color: rgba(228, 224, 224, 0.654); 
    background-color: rgba(228, 224, 224, 0.654); 
    height: 2px;
}

/*============== Apartado de infor de contacto ==============*/
.contact-info ul li{
    display: flex;
    list-style: none;
    margin: 5px 0;
    justify-content:left;
    cursor: pointer;
}

.contact-info .material-icons{margin-right: 10px;}

.contact-info ul li:last-child{margin-bottom: 30px;}


/*================= Apartado de habilidades =================*/
.skills li{
    display: flex;
    list-style: none;
    margin: 5px 0;
    align-items: center;
}

.skill-name{
    width: 40%;
}

.barr{
    position: relative;  /*pos para ser ancestro más cercano posicionado de .progress*/
    background-color: darkgrey;
    width: 60%;
    height: 10px;   
    border-radius: 50px;
}

.progress{
    position: absolute;     /* ahora sus cc se refieren a barr*/
    background-color:white;
    height: 100%;
    border-radius: 50px;
}

.html{width: 90%;}
.css{width: 70%;}
.javascript{width: 50%;}
.reactjs{width: 40%;}

div.skills {margin-bottom: 30px;}


/*=================== Apartado de idiomas ===================*/
.languages li{
    display: flex;
    list-style: none;
    margin: 5px 0;
    align-items: center; 
}

.languages .name-lang{
    width: 30%;
}

.languages .stars-container{
    text-align-last: right;
    width:100%;
    font-size: large;
    color: white;
}

div.languages{ margin-bottom: 30px;}

/*=================== Apartado de hobbies ===================*/
.hobbies div{
    display: flex;
    width: 100%;
    justify-content: space-between;
}
.hobbies span{ font-size: 50px; }


/*==================== Apartado de redes ====================*/
.net-container {
    display: flex;
    width: 100%;
    justify-content: space-between;
}
.net-container a img{
    height: 40px;
    width: 40px;
    cursor: pointer;
    filter: invert();
}


/*=============== Contenedor del lado derecho ===============*/
.right-side{
    padding: 40px;
    background-color: white;
}


.name-right-box h1{
    font-size: 45px;
    color:#0e3874;
}


/*=============== Los títulos del lado derecho ==============*/
.title-right{
    color:#0e3874;
    text-transform: uppercase;
    margin: 50px 0 20px 0;
}


/*================== Seccion de "Sobre mi" ==================*/
.about{
    margin-top: 100px;
    text-align: justify;
    margin-bottom: 50px;
}


/*=================== Sección de educación ==================*/
.education{
    display:flex;
    text-align: justify;
    margin-bottom: 12px;
}
 .education .date{
    min-width: 150px;
 }

 .institution-diploma h4{
    text-transform: uppercase;
    color:#2a7da2;
 }
 .institution-diploma h6{
    text-transform: uppercase;
    color:darkgrey;
    margin-bottom: 5px;
 }
 
 /*============== Sección de experiencia laboral =============*/
  .experience{
    display:flex;
    text-align: justify;
    margin-bottom: 12px;
 }
 
 .date-company{
    min-width: 150px;
 }

 .position-information h4{
    text-transform: uppercase;
    color:#2a7da2;
 }
 .date-company h4:last-child{
    color:darkgray
}

/*============= Media querys para responsividad =============*/
/*===========================================================*/

/*==== Para pantallas de menos de 768 pixeles(celulares) ====*/
@media(max-width: 767px){

    .container{
        margin: 10px;
        grid-template-columns: 1fr; 
    }
    .name-left-box{             /*texto oculto en desktop*/
        display:contents;       /*visible en tablety cel*/
        text-align: center;
    }

    .skills li{
        flex-direction: column;
       }
    .skill-name{
        width: 100%;
    }
    .barr{
        width: 100%;
    }
    .name-right-box{
        display: none;
    } 
    .education{
        flex-direction: column;
    }
    .experience{
        flex-direction: column;
    }
    .institution-diploma{
        margin-bottom: 5px;
    }
    .position-information{
        margin-bottom: 5px;
    }
    .nav div, p{
        cursor: default;
    }
}