@import url('https://fonts.googleapis.com/css2?family=Onest:wght@500&display=swap');

html {
    scroll-behavior: smooth;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Onest', system-ui, sans-serif;
    color: black;
}

body {
    background-color: #f4f8fd;
}

/*nav class="princiapl-nav"*/
.princiapl-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    top: 0;
    position: sticky;
    background-color: rgba(255, 255, 255, 0.9);
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    backdrop-filter: blur(5px);
    padding: 0 70px;
    height: 70px;
}

.princiapl-nav .logo a {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 14px;
    transition: all 0.3s ease;
}

.princiapl-nav .logo a:hover {
    scale: 1.1;
}

.princiapl-nav .logo a p {
    font-size: 20px;
    font-weight: 500;
}

.princiapl-nav .logo img {
    width: 35px;
}

.princiapl-nav .logo a {
    text-decoration: none;
}

.nav-list {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 56px;
    width: fit-content;
}

.nav-list ul {
    display: flex;
    align-items: center;
    gap: 50px;
}

.nav-list ul li {
    list-style: none;
}

.nav-list ul li a {
    text-decoration: none;
    overflow: hidden;
    font-size: 19px;
    padding-bottom: 10px;
    transition: color 0.3s ease;
}

.nav-list ul li a:hover {
    color: #0575e6;
    transition: color 0.3s ease;
}

.nav-list ul li a:hover {
    border-bottom: 1px solid #0575e6;
    transition: all ease;
}

.nav-list #check {
    display: none;
}

.nav-list .icons i {
    cursor: pointer;
    font-size: 35px;
    display: none;
}

.nav-list .icons #close-icon {
    display: none;
}

.nav-list .icons:active>.nav-list .phone-menu {
    display: flex;
}

.nav-list .phone-menu {
    display: flex;
    position: absolute;
    top: 100%;
    right: 0;
    height: 0;
    width: 100%;
    align-items: center;
    justify-content: space-around;
    flex-direction: column;
    overflow: hidden;
    background-color: rgba(255, 255, 255, 0.9);
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    z-index: 100;
    backdrop-filter: blur(5px);
    transition: all 0.3s ease-in-out;
    opacity: 0;
}

.nav-list .phone-menu a {
    font-size: 1.20rem;
    transform: translateY(-50px);
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}



.princiapl-nav button {
    padding: 1.3em 3em;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 2.5px;
    font-weight: 500;
    color: #000;
    background-color: #fff;
    border: none;
    border-radius: 45px;
    box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease 0s;
    cursor: pointer;
    outline: none;
}

.princiapl-nav button:hover {
    background: #56CCF2;
    background: -webkit-linear-gradient(to right, #2F80ED, #56CCF2);
    background: linear-gradient(to right, #2F80ED, #56CCF2);
    box-shadow: 0px 15px 20px rgba(46, 229, 157, 0.4);
    color: #fff;
    transform: translateY(-7px);
}

.princiapl-nav button:active {
    transform: translateY(-1px);
}

/*header*/
header {
    background-color: #f0f0f0;
    padding: 20px;
    text-align: center;
}

.container-header {
    display: flex;
    align-items: center;
    justify-content: center;
}

.container-header img {
    width: 70px;
    height: 70px;
    border-radius: 100%;
    margin-right: 20px;
    transition: scale 0.2s ease-in-out;
}

.container-header img:hover {
    scale: 1.1;
    transition: scale 0.2s ease-in-out;
}

.info {
    display: flex;
    flex-direction: column;
}

.info>div {
    display: flex;
    align-items: center;
}

.container-header h1 {
    margin-bottom: 10px;
    font-size: 50px;
}

.container-header p {
    text-align: left;
    font-size: 17px;
    font-weight: 500;
}

.btn-disponible {
    background: #01abef;
    cursor: pointer;
    border: none;
    padding: 8px 15px;
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    border-radius: 45px;
    margin-left: 20px;
    transition: 0.3s, color 0.3s;
    text-decoration: none;
}

.btn-disponible:hover {
    background: #fff;
    color: #0b0a1f;
    font-weight: 500;
    border: 1px solid #01abef;
}


/*section class="experiencia-laboral"*/
.experiencia-laboral {
    padding: 40px 20px;
    background-color: #f4f8fd;
    text-align: center;
    margin-top: 50px;
}

.experiencia-laboral h2 {
    text-align: center;
    font-size: 40px;
}

.experiencia-laboral img {
    display: block;
    margin: 0 auto;
    margin-bottom: 35px;
}

.card-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.card {
    background-color: #f0f0f0;
    border-radius: 8px;
    cursor: pointer;
    padding: 20px;
    margin: 10px;
    width: 300px;
    text-align: left;
    -webkit-box-shadow: 10px 10px 29px -14px rgba(53, 140, 238, 1);
    -moz-box-shadow: 10px 10px 29px -14px rgba(53, 140, 238, 1);
    box-shadow: 10px 10px 29px -14px rgba(53, 140, 238, 1);
    transition: background-color 0.3s, transform 0.3s;
    /* Aplica la misma duración de transición en ambos casos */
}

.card h3 {
    margin-bottom: 10px;
}

.card p {
    margin-top: 5px;
}

.card ul {
    list-style: none;
    margin-top: 15px;
    text-align: left;
}

.card:hover {
    background-color: #ebe7e7;
    transform: translateY(-5px);
}

/*section class="educacion"*/
.educacion {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 100px 20px;
    background: rgb(211, 242, 245);
    background: linear-gradient(0deg, rgba(211, 242, 245, 1) 0%, rgba(255, 255, 255, 1) 100%);

}

.educacion .container-educacion {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0px;
    margin-top: 30px;
}

.educacion h2 {
    font-size: 40px;
}


.icono {
    display: flex;
    align-items: center;
    margin-right: 20px;
    gap: 10px;
}

.icono .icono-educacion i {
    font-size: 65px;
    border: 4px solid black;
    border-radius: 50%;
}

.hr-educacion {
    rotate: 90deg;
    border: 2px solid black;
    width: 30%;
    margin: 0;
    padding: 0;
}

.detalle-educativo {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 50px;
}

.contenido h3 {
    font-size: 24px;
    margin-bottom: 10px;
}

.contenido p {
    margin-bottom: 5px;
    font-weight: 500;
}

.contenido a {
    color: black;
    text-decoration: none;
    display: inline-block;
    margin-top: 10px;
}

.contenido a:visited {
    color: #8000ff;
}

.contenido a:hover {
    text-decoration: underline;
    color: blue;
}

.contenido a:active {
    color: gray;
}

/*class="wave"*/
.wave {
    background-color: #d3f2f5;
    display: flex;
    height: 70px;
    width: 100%;
}

/*section class="proyectos"*/
.proyectos {
    /* padding: 40px 20px; */
    background-color: #f4f8fd;
    text-align: center;
}

.proyectos h2 {
    margin-top: 30px;
    margin-bottom: 10px;
    font-size: 40px;
}

.proyectos .proyectos-line {
    margin-bottom: 30px;
}

.proyectos .container1 {
    display: flex;
    /* width: 100%; */
    margin: 0 200px;
    margin-bottom: 80px;
    margin-top: 40px;
}

.proyectos .container2 {
    display: flex;
    margin: 0 200px;
    /* width: 100%; */
}

.proyectos .container1 .imagen1 {
    /* flex: 1; */
    background-image: linear-gradient(to right, #43e97b 0%, #38f9d7 100%);
    border-radius: 10px;
    width: fit-content;
    height: fit-content;
    /* overflow: hidden; */
}

.proyectos .container2 .imagen2 {
    /* flex: 1; */
    background-image: linear-gradient(to right, #00dbde 0%, #fc00ff 100%);
    /* overflow: hidden; */
    border-radius: 10px;
    width: fit-content;
    height: fit-content;
}

.proyectos .container1 .imagen1 img {
    width: 500px;
    border-radius: 10px;
    transition: all 0.3s ease;
}

.proyectos .container2 .imagen2 img {
    width: 500px;
    border-radius: 10px;
    transition: all 0.3s ease;
}

.imagen1 img:hover {
    transform: translateY(-0.70em);
    transition: all scale 0.3s ease;
}

.imagen2 img:hover {
    transform: translateY(-0.70em);
    transition: all scale 0.3s ease;
}

.proyectos .descripcion {
    /* flex: 1; */
    padding: 0 65px;
    text-align: left;
}

.proyectos h3 {
    font-size: 24px;
    margin-bottom: 10px;
}

.proyectos .descripcion span {
    font-weight: 100;
}

.botones {
    display: flex;
    gap: 15px;
}

.boton-redondo-html {
    padding: 10px 20px;
    border: 0;
    border-radius: 100px;
    background-color: #f8633e;
    color: #ffffff;
    font-weight: Bold;
    transition: all 0.5s;
    -webkit-transition: all 0.5s;
    width: fit-content;
    font-size: 11px;
    cursor: pointer;
}

.boton-redondo-html:hover {
    background-color: #ff724f;
    box-shadow: 0 0 20px #6fc5ff50;
    transform: scale(1.1);
}

.boton-redondo-html:active {
    background-color: #f8633e;
    transition: all 0.25s;
    -webkit-transition: all 0.25s;
    box-shadow: none;
    transform: scale(0.98);
}

.boton-redondo-css {
    padding: 10px 20px;
    border: 0;
    border-radius: 100px;
    background-color: #2ba8fb;
    color: #ffffff;
    font-weight: Bold;
    transition: all 0.5s;
    -webkit-transition: all 0.5s;
    width: fit-content;
    font-size: 11px;
    cursor: pointer;
}

.boton-redondo-css:hover {
    background-color: #6fc5ff;
    box-shadow: 0 0 20px #6fc5ff50;
    transform: scale(1.1);
}

.boton-redondo-css:active {
    background-color: #3d94cf;
    transition: all 0.25s;
    -webkit-transition: all 0.25s;
    box-shadow: none;
    transform: scale(0.98);
}

.boton-redondo-js {
    padding: 10px 20px;
    border: 0;
    border-radius: 100px;
    background-color: #e2c626;
    color: #ffffff;
    font-weight: Bold;
    transition: all 0.5s;
    -webkit-transition: all 0.5s;
    width: fit-content;
    font-size: 11px;
    cursor: pointer;
}

.boton-redondo-js:hover {
    background-color: #e9d55e;
    box-shadow: 0 0 20px #6fc5ff50;
    transform: scale(1.1);
}

.boton-redondo-js:active {
    background-color: #e2c626;
    transition: all 0.25s;
    -webkit-transition: all 0.25s;
    box-shadow: none;
    transform: scale(0.98);
}

.proyectos p {
    margin-top: 20px;
    margin-bottom: 0px;
}

.btn-git {
    width: 80px;
    background-color: #e3edf7;
    border-radius: 10px;
    box-shadow: 6px 6px 10px -1px rgba(0, 0, 0, 0.15),
        -6px -6px 10px -1px rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(0, 0, 0, 0);
    cursor: pointer;
    transition: transform 0.5s;
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin-top: 15px;

}

.btn-git:hover {
    box-shadow: inset 4px 4px 6px -1px rgba(0, 0, 0, 0.2),
        inset -4px -4px 6px -1px rgba(255, 255, 255, 0.7),
        -0.5px -0.5px 0px rgba(255, 255, 255, 1),
        0.5px 0.5px 0px rgba(0, 0, 0, 0.15),
        0px 12px 10px -10px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(0, 0, 0, 0.1);
    transform: translateY(0.5em);
}

.btn-git svg {
    transition: transform 0.5s;
    margin-right: 5px;
}

.btn-git:hover svg {
    transform: scale(0.9);
    fill: #333333;
}


/*section class="trabajemos-juntos"*/
.trabajemos-juntos {
    text-align: center;
    padding: 40px 20px;
    background-color: #d3f2f5;
    margin-top: 50px;
    min-height: 230px;
    /* Ajustar la altura mínima */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.trabajemos-juntos h2 {
    margin-bottom: 30px;
    font-size: 30px;
}

.lets-talk {
    width: 130px;
    height: 50px;
    border: 1px solid #315cfd;
    border-radius: 45px;
    transition: all 0.3s;
    cursor: pointer;
    background: white;
    font-size: 20px;
    font-weight: 550;
    line-height: 50px;
    text-align: center;
    text-decoration: none;
}

.lets-talk:hover {
    background: #2270e2;
    color: white;
    font-size: 20px;
    font-weight: 500;
}

/*certificaciones*/
.certificaciones {
    padding: 40px 20px;
    background-color: #f4f8fd;
    text-align: center;
    margin-top: 50px;
}

.certificaciones h2 {
    margin-top: 0;
    margin-bottom: 10px;
    font-size: 40px;
}

.certificaciones img {
    margin-bottom: 15px;
}

.certificaciones .container-certificaciones {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.certificacion {
    background-color: #f0f0f0;
    border-radius: 8px;
    cursor: pointer;
    padding: 20px;
    margin: 10px;
    width: 300px;
    text-align: left;
    -webkit-box-shadow: 10px 10px 29px -14px rgba(53, 140, 238, 1);
    -moz-box-shadow: 10px 10px 29px -14px rgba(53, 140, 238, 1);
    box-shadow: 10px 10px 29px -14px rgba(53, 140, 238, 1);
    transition: background-color 0.3s, transform 0.3s;
    /* Aplica la misma duración de transición en ambos casos */
}

.certificacion:hover {
    background-color: #ebe7e7;
    transform: translateY(-5px);
}

.certificacion h3 {
    margin-bottom: 10px;
}

.certificacion p {
    margin: 5px 0;
}

/*footer*/
footer {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    height: 100px;
    background-color: #d3f2f5;
}

.div-span span {
    display: flex;
    font-weight: 500;
}

.div-list {
    display: flex;
}

.div-list ul {
    display: flex;
    list-style: none;
    gap: 50px;
    font-weight: 500;
}

.div-list ul li a{
    text-decoration: none;
}

.div-list ul li a:hover{
    text-decoration: underline;
}

/* Media queries */
@media screen and (max-width: 1300px) {

    .princiapl-nav {
        padding: 0 40px;
    }

    .card-container {
        display: flex;
        gap: 50px;
    }

    .card-container .card {
        width: 30%;
    }
}

@media screen and (max-width: 1024px) {
    .card-container {
        display: flex;
    }

    .card-container .card {
        width: 35%;
    }
}

@media screen and (max-width: 1024px) {
    .nav-list {
        gap: 0
    }

    .nav-list ul {
        display: none;
    }

    .nav-list a button {
        display: none;
    }

    .nav-list .icons i {
        display: flex;

    }

    #check:checked~.icons #menu-icon {
        display: none;
    }

    #check:checked~.icons #close-icon {
        display: flex;
    }

    #check:checked~.phone-menu {
        height: 15.7rem;
        transition: all 0.3s ease-in-out;
        opacity: 1;
        background-color: #ffffff;
    }

    .nav-list .phone-menu a {
        transform: translateY(0);
        transition: all 0.3s ease-in-out;
    }

    #anchor:active~.phone-menu {
        display: none;
    }

}

/*  */

@media screen and (max-width: 1300px) {
    .proyectos .descripcion{
        padding: 0 10px 0 50px;
    }

    .proyectos .container1{
        margin: 0 150px;
        margin-bottom: 80px;
    }

    .proyectos .container2{
        margin: 0 150px;
        margin-bottom: 80px;
    }
}

@media screen and (max-width: 1024px) {
    .info p {
        font-size: 15px;
    }

    .card li {
        font-size: 15px;
    }

    .contenido p {
        font-size: 15px;
    }

    .descripcion {
        margin: 20px;
    }

    .descripcion p {
        font-size: 15px
    }

    .proyectos .descripcion{
        padding: 0 1px 0 15px;
    }

    .certificaciones {
        margin: 20px;
    }

    .container-certificaciones {
        margin: -10px;
    }

    .proyectos .container1 {
        margin: 0 50px;
        margin-top: 20px;
        margin-bottom: 60px;
    }

    .proyectos .container2 {
        margin: 0 50px;
    }

    .descripcion h3 {
        margin-top: -15px;
    }

    .hr-educacion {
        margin: -40px;
    }

    .container-certificaciones {
        margin-top: 20px;
    }
}

@media screen and (max-width: 991.98px) {
    .certificaciones {
        margin: 0;
    }

    .proyectos .descripcion{
        padding: 0 1px 0 10px;
    }
}

@media screen and (max-width: 767.98px) {
    .card-container {
        gap: 10px;
    }

    .card {
        min-width: 310px;
    }

    .info h1 {
        font-size: 40px;
    }

    .experiencia-laboral h2 {
        font-size: 32px;
    }

    .experiencia-laboral img {
        transform: scale(0.8);
    }

    .card h3 {
        font-size: 15px;
    }

    .card p {
        font-size: 12px;
    }

    .card li {
        font-size: 12px;
    }

    .container-educacion h2 {
        font-size: 32px;
    }

    .icono-educacion i {
        transform: scale(0.6);
    }

    .contenido h3 {
        font-size: 17px;
    }

    .contenido p {
        font-size: 12px;
    }

    .contenido a {
        font-size: 13px;
    }

    .proyectos h2 {
        font-size: 32px;
    }

    .proyectos img {
        transform: scale(0.8);
    }

    .container1 {
        flex-direction: column;
        align-items: center;
    }

    .imagen1 {
        margin-top: -10px;
        margin-bottom: 25px;
    }

    .proyectos .descripcion{
        padding: 0 55px 0 65px;
    }

    .descripcion h3 {
        font-size: 17px;
    }

    .botones {
        transform: scale(0.8);
        margin-left: -55px;
    }

    .descripcion p {
        font-size: 13px;
        justify-content: center;
        margin-top: 15px;
    }

    .container2 {
        flex-direction: column;
        align-items: center;
    }

    .imagen2 {
        margin-top: -10px;
        margin-bottom: 25px;
    }

    .btn-git{
        font-size: 12px;
    }

    .trabajemos-juntos h2 {
        font-size: 30px;
    }

    .trabajemos-juntos a {
        font-size: 18px;
    }

    .certificaciones h2 {
        font-size: 32px;
    }

    .certificaciones img {
        transform: scale(0.8);
    }

    .certificacion h3 {
        font-size: 15px;
    }

    .certificacion p {
        font-size: 13px;
    }

    .div-span {
        font-size: 12px;
    }

    .div-list {
        font-size: 13px;
    }

    .educacion {
        padding: 30px 30px 30px 10px;
    }

    .hr-educacion {
        display: none;
    }

    .container-educacion {
        flex-direction: column;
    }

    .detalle-educativo{
        align-items: flex-start;
    }

    .detalle-educativo .contenido{
        text-align: left;
    }

    .icono {
        margin-bottom: 10px;
        margin-right: 0px;
        gap: 0;
    }
}

@media screen and (max-width: 640px) {
    .container-header {
        flex-direction: column;
    }

    .container-header img {
        margin: 0;
    }

    .btn-disponible {
        margin: 0;
        font-size: 15px;
    }

    .info div {
        flex-direction: column;
        /* margin: 0 20px 0 20px; */
    }

    /* .info>div {
        align-items: stretch;
    } */

    .info h1 {
        font-size: 45px;
    }

    .info p {
        margin: 20px;
        text-align: left;
        font-size: 13px;
    }

    .card {
        min-width: 260px;
    }

    .educacion {
        padding: 80px 50px 30px 20px;
    }

    .trabajemos-juntos h2 {
        font-size: 25px;
    }

    .trabajemos-juntos a {
        font-size: 17px;
    }

    .certificacion {
        width: 250px;
    }

    .proyectos .descripcion{
        padding: 0;
    }
}

@media screen and (max-width: 560px) {
    .info a{
        font-size: 13px;
    }
    
    .card {
        min-width: 230px;
    }

    .proyectos .descripcion{
        padding: 0;
        margin: 20px 0 20px 0;
    }

    .descripcion .botones{
        margin-left: -51px;
    }

    .certificacion {
        width: 235px;
    }
}

@media screen and (max-width: 480px) {
    .info a{
        font-size: 13px;
    }

    .info p{
        margin: 20px 10px 20px 10px;
    }
    
    .container-header h1{
        font-size: 40px;
    }
    
    .card {
        min-width: 400px;
    }

    .educacion {
        padding: 80px 50px 30px 50px;
    }

    .educacion .container-educacion {
        margin-top: -10px;
    }

    .proyectos .container1 {
        margin-bottom: 10px;
    }

    .proyectos .container1 .imagen1 {
        background-image: none;
        margin-bottom: -15px;
    }

    .proyectos .container2 .imagen2 {
        background-image: none;
        margin-bottom: -15px;
    }

    .proyectos .container1 .imagen1 img {
        width: 430px;
    }

    .proyectos .container2 .imagen2 img {
        width: 430px;
    }

    .proyectos .proyectos-line {
        margin-bottom: -10px;
    }

    .descripcion .botones{
        margin-left: -41px;
    }

    .btn-git{
        font-size: 11px;
    }

    .trabajemos-juntos {
        margin-top: 10px;
    }

    .trabajemos-juntos h2 {
        font-size: 25px;
    }

    .trabajemos-juntos a {
        font-size: 13px;
        width: 110px;
    }

    .certificacion {
        width: 200px;
    }

    .proyectos .descripcion {
        padding: 0;
    }

    footer {
        flex-direction: column-reverse;
    }
}

@media screen and (max-width: 460px) {
    .info h1 {
        font-size: 39px;
    }

    .info a{
        font-size: 13px;
    }

    .info p{
        margin: 20px 5px 20px 10px;
    }

    .proyectos .container1 .imagen1 img {
        width: 430px;
    }

    .proyectos .container2 .imagen2 img {
        width: 430px;
    }

    .proyectos .descripcion {
        padding: 0;
    }

    .certificacion {
        width: 190px;
    }

    footer {
        flex-direction: column-reverse;
    }
}

@media screen and (max-width: 443px) {
    .container-header h1{
        font-size: 20px;
    }
}

@media screen and (max-width: 400px) {
    .container-header {
        align-items: center;
    }

    .info>div {
        align-items: stretch;
    }

    .info h1 {
        font-size: 35px;
    }

    .info a {
        font-size: 13px;
    }

    .info p {
        margin: 20px 5px;
        text-align: left;
    }

    .experiencia-laboral{
        padding: 5px 20px;
    }

    .experiencia-laboral img {
        transform: scale(0.7);
    }

    .card {
        min-width: 350px;
    }

    .educacion {
        padding: 60px 30px 30px 30px;
    }

    .proyectos .container1 .imagen1 img {
        width: 395px;
    }

    .proyectos .container2 .imagen2 img {
        width: 395px;
    }

    .descripcion {
        margin: 20px 0px;
    }

    .descripcion h3 {
        text-align: left;
    }

    .descripcion p {
        text-align: left;
    }

    .descripcion .botones {
        justify-content: flex-start;
        margin-left: -32px;
    }

    .btn-git{
        font-size: 10px;
        width: 70px;
    }

    .certificacion{
        width: 160px;
    }
}

