*{
    
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    text-decoration: none;
    border: none;
    outline: none;
    scroll-behavior: smooth;
    font-family: 'Poppins', sans-serif;
    
    }


    :root{
        --bg-color:#081b29;
        --second-bg-color:#112e42;
        --text-color:#ededed;
        --main-color:#00abf0;
    }

    html{
        font-size: 62.5%;
    overflow-x: hidden;}

body{
    background: var(--bg-color);
    color: var(--text-color);
}

.header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 2rem 9%;
    background: transparent;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 100;
    transition: .3s;
    


}
.sticky{
background: var(--second-bg-color);
}

.logo{
    font-size: 2.5rem;
    color: var(--text-color);
    font-weight: 600;
   
}
.navbar a {
    font-size: 1.7rem;
    color: var(--text-color);
    font-weight: 500 ;
    margin-left: 3.5rem;
    transition: .3s;
  


}
.navbar a:hover,
.navbar a.active{
align-items: center;
    color: var(--main-color);
}

#menu-icon {

font-size: 3.6rem;
counter-reset: var(--text-color);
cursor: pointer;
display: none;

}
section{

    min-height: 100vh;
    padding: 10rem 9% 2rem;
    position:relative;
}
.home{
    display: flex;
    align-items:center;
    padding: 0 9%;
    background: url('media/rtttt.png')no-repeat;
    background-size: justify;
    background-position: right;
    background-position: center;
    position: relative;
 

}
.home-content{
    max-width: 50rem;
    
}
.home-content h1 {
  
    font-size: 5.6rem;
    font-weight: 700;
    line-height: 1.3;

}
.home-content h1 span{
color: var(--main-color);

}

.home-content .text-animate {

    position:absolute;
    width: 32 .8rem;

}
.home-content .text-animate h3 {
position:absolute;
font-size: 2.2rem;
font-weight: 700;
color: transparent;
-webkit-text-stroke: .7px var(--main-color);
background-image: linear-gradient(var(--main-color),var(--main-color));
background-repeat: no-repeat;
-webkit-background-clip: text;
animation: homeBgText 6s linear infinite;
animation-delay:2s;




}
.home-content .text-animate h3::before {
    content: '';
    position:fixed;
    top: 0;
    left: 0;
    width: 0;
    height:0;
    border-right: 2px solid var(--main-color);
    z-index: -1;
    -webkit-background-clip: text;
    animation: homeCursorText 6s linear infinite;
    animation-delay: 2s;
  
}

.home-content p {
    font-size: 1.6rem;
    margin: 2rem 0 4rem;
}

.btn-box{
position: relative;
display: flex;
justify-content: space-around;
width: 46.5rem;
height: 5rem;
font-size: 1.2rem;


}
.btn-box .btn{
    position: relative;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 15rem;
    height: 100%;
    background: var(--main-color);
    border: .2rem solid var(--main-color);
    border-radius: .8rem;
    font-size: 1.8rem;
    font-weight: 600;
    letter-spacing: .1rem;
    color: var(--bg-color);
    z-index: 1;
    overflow: hidden;
    transition: .5s;
}

.btn-box .btn:nth-child(2){
    background: transparent;
    color: var(--main-color);
}



.btn-box .btn:hover::before{
    
    width: 100%;
   
}

.imgHover{
position: relative;
top:0;
right: 0;
width: 45%;
height: 90%;
background: transparent;
transition: 3s;
opacity: 8;

}
.imgHover:hover{
    background: var(--bg-color);
    opacity: .9;
    
}
.about{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 2rem;
    background: var(--bg-color);
    padding-bottom: 6rem;

}

.video{
  box-sizing: border-box;
  display: flex;
      justify-content: center;
 margin-bottom: 0

}
.cols {
   display: flex;

   margin:auto;
   padding:auto;
margin-bottom: 0;
    justify-content: center;
    align-content:center;
    align-items: center;
    width: 100%;
      height: auto;
}



.col1 {
display: flex;

 align-items: center;
margin:30px;

}

.col2 {
display: flex;

    align-items: center;

}

p {
  margin: 1em;
}


.heading{
    
    font-size: 5rem;
    margin-bottom: 3rem;
    text-align: center;
}

.heading span{
    color: var(--main-color);
}

.About-img{

    position: relative;
    width: 25rem;
    height: 25rem;
    border-radius: 100%;
    display:flex;
    justify-content: center;
    align-items: center;
 
}
.About-img img{


    width: 90%;
    border-radius: 50%;
    border: .4rem solid var(--main-color);
}

.About-img .circle-spin {
    position:absolute;
    top: 50%;
    left: -50%;
    transform: translate(50%, -50%) rotate(0);
    width: 100%;
    height:110%;
    border-radius: 80%;
    border-top: .2rem solid blueviolet;
    border-bottom: .2rem solid rgb(79, 79, 167);
    border-left: .2rem solid var(--main-color);
    border-right: .2rem solid var(--main-color);
    animation: aboutSpinner 8s linear infinite;

}

.about-content{

    text-align: center;
}

.about-content h3{

    font-size: 2.6rem;
}
.about-content p{

    font-size: 2rem ;
}

.btn-box.btns{
    display:inline;
    width: 19rem;

}
.btn-box.btns a::before {
    background: var(--second-bg-color);
}

.education{
display: flex;
justify-content:center;
align-items: center;
flex-direction: column;
min-height: auto;
padding-bottom: 5rem;
}

.education .education-row{
    display: inline-flex;
    flex-wrap:nowrap;
    gap: 5rem;

}

.education-row .education-column{
    flex: 1 1 40rem;
    font-size: 1.5rem;
}

.education-column .title{
    font-size: 2.5rem;
    margin: 0 0 1.5rem 2rem; 

}


.education-box .education-content{
    position: relative;
    padding-left: 3rem;
    padding-top: 1rem;
    padding-right: 1rem;
    padding-bottom: 1rem;
    margin-block-end: 1rem;
    border: .1rem solid var(--main-color);
    border-radius: .4rem;
}

.education-content .content{

    position: relative;
    padding: 6rem;
    border: .8rem solid var(--main-color);
    border-radius: .6rem;
    margin-bottom: 12rem;
    overflow: hidden;
}

.education-content .content::before{

content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;

}

.education-content .content .year{

font-size: 3rem;
color: var(--main-color);
padding-bottom: 4rem;

}

.education-content .content .year i{

    padding-right: .5rem;
    font-size:large;
    }

    .education-content .content .year h3{

        padding-right: 1.5rem;
        }
        .education-content .content .year p{

            padding-right: 3.5rem;
            font-size:large;
            }

#NuestrosServicios{
    background-color:var(--bg-color);
    color:var(--main-color);
    
   
}
#NuestrosServicios a{
    
    color:var(--main-color);
    
   
}

#NuestrosServicios .container{
    text-align: center;
    padding: 100 12px;
    font-size: 2.5rem;
    margin: 0 0 1.5rem 2rem; 
    

}

#NuestrosServicios h2{
    margin-top: 0;
}
#NuestrosServicios a{
    text-align: center;
    padding: 100 12px;
    font-size: 2.5rem;
    margin: 0 0 1.5rem 2rem;
    
}
#NuestrosServicios p{
    display: none;
}


#NuestrosServicios .carta{
  
    background-position: center center;
    background-size: cover;
    padding: 50px 0px;
    margin: 30px;
    border-radius: 15px;
    
}

.carta:first-child{
    background-image: linear-gradient(
        0deg,
        rgba(0,0,0,0.5),
        rgba(0,0,0,0.5)
    )
    ,url("media/source.jpg");

}

.carta:nth-child(2){
    background-image: linear-gradient(
        0deg,
        rgba(0,0,0,0.5),
        rgba(0,0,0,0.5)
    )
    ,url("media/css.jpg");
}

.carta:nth-child(3){
    background-image: linear-gradient(
        0deg,
        rgba(0,0,0,0.5),
        rgba(0,0,0,0.5)
    )
    ,url("media/laptop.jpg");

}

.skills{
align-items: center;
align-content: center;


}

.contact{
    min-height: auto;
    padding-bottom: 7rem;
}

.contact form{
    max-width: 70rem;
    margin: auto;
    text-align: center;

}
.contact form .input-box{
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.contact form .input-box .input-field{
    position: relative;
    width: 49%;
    margin: .8rem 0;
}

.contact form .input-box .input-field input,
.contact form .textarea-field textarea{

    width: 100%;
    height: 100%;
    padding: 1.5rem;
    font-size: 1.6rem;
    color: var(--text-color);
    background: transparent;
    border-radius: .6rem;
    border: .2rem solid var(--main-color);

}

.contact form .textarea-field{
    position: relative;
    margin: .8rem 0 2.7rem;
    display: flex;

}
.contact form .textarea-field textarea{
    resize: none;
}

.contact form .btn-box.btns .btn{
    cursor: pointer;
}

.contact form .focus{
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: var(--second-bg-color);
    border-radius: .6rem;
    z-index: -1;
    transition: .5s;
}
.contact form .input-box .input-field input:focus~.focus,
.contact form .input-box .input-field input:focus~.focus{
width: 100%;

.animate{
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: yellowgreen;
    z-index: 98;
}


}
.footer{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    padding: 2rem 9%;
    background: var(--second-bg-color);

}
.footer text{
    font-size: 1.6rem;
}

.footer-iconTop a{
position: relative;
display: inline-flex;
justify-content: center;
align-items: center;
padding: .8rem;
background: var(--main-color);
border: 2.rem solid var(--main-color);
border-radius: .6rem;

}
.footer-iconTop a::before{
    content: '';
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    left: 0;
    background: red;
    z-index: -1;
    transition: .5s;
}

.footer-iconTop a:hover::before{
    width: 100%;
}

.footer-iconTop a i {
    font-size: 2.4rem;
    color: var(--bg-color);
}

/*BREAKPOINTS*/

@media (max-width:1200px) {
    html{
        font-size:55%;
    }
}

@media (max-width:991px) {
    .header {
        padding: 2rem 4%;
    }


section {
    padding: 10rem 4% 2rem;
}

.home{
    padding: 0 4%;
    
}

.footer{
    padding: 2rem 4%;
}

}

@media (max-width:768px){
    .header{
        background: var(--bg-color);

    }
    #menu-icon {
        display: block;
    }
    .navbar {
        position:absolute;
        top: 100%;
        left: -100;
        width: 100%;
        padding: 1rem 4%;
        background: var(--bg-color);
        box-shadow: 0 .5rem 1rem rgba(0,0,0,0.5);
        transition: .25s ease;
        transition-delay: .25s;
    }

    @media (max-width:520px) {
        html{
            font-size:50%;
        }
        .home-page h1{
            display: flex;
        flex-direction: column;}
        .home-sci{
            width: 160px;
        }
        home-sci a {
            width: 38px;
            height: 38px;
        }
    }
    
    @media (max-width:460px) {
        
        .home-content h1{
           font-size: 5.2rem;}
        .education{
            padding: 10rem 4% 5rem 5%;
        }
        .contact form .input-box .input-field{
            width: 100%;
        }
    }
.navbar.active{
    right:0;
    transition-delay: 0s;
    display: flex;
  flex-direction: column;
}
.navbar.active-nav{
    position: absolute;
    top: 100%;

}



header .navbar.active {
    top: 50px;
}
    .navbar a {
        display: inline-flexbox;
        font-size: 2rem;
        margin: 1rem 0;
    }
}

/*KEYFRAMES ANIMATION */

@keyframes homeBgText {
    0%, 10%, 100% {
        
        background-position: -52rem 0;
    }
    65%, 85% {
        background-position: 0 0;
    }


    
}
@keyframes homeCursorText {
    0%, 10%, 100% {
        
        width: 0;
    }
    65%,78%, 85% {
        width:100%;
        opacity: 1;
    }
        75%,81%{
            opacity: 0;
        }
        
    }


    @keyframes aboutSpinner{
        90%{
            transform: translate(50%, -50%)rotate(360deg);
        }
    }
