body{
    margin:0;
    padding:0;
    font-family: "Alice", serif;
    line-height: 1.5;
    min-width:375px;
    color:var(--dark-green-color);
}
*{
    box-sizing: border-box;
    font-size:16px;
}
:root{
    --hero-color:#D7D7B6;
    --main-color: #FEFAE0;
    --dark-green-color:#283618
}


/* 
=============
Typography, icons,buttons
============= 
*/
p{
    margin:0;
}
a{
    text-decoration: none;
}
.strong-text{
    font-family:Georgia, 'Times New Roman', Times, serif;
    font-weight: bolder;
}
.emphasized-text{
    display:inline-block;
    border-bottom:5px solid yellow;
}
.social-icons{
    margin-top:0.5em;
    padding:0.5em;
}
.social-icon{
    margin-right:1em;
    width:1.5em;
    font-size:1.4em;
    color:var(--dark-green-color);    
}
.social-icon-footer{
    margin-right:1em;
    width:1.5em;
    font-size:1.4em;
    color:white; 
}
.social-icon:hover,.social-icon-footer:hover{
    color:salmon;
    cursor: pointer;
}

.section-title{
    font-size:2em;
    margin:1em 0;

}
.btn{
    padding:0.6em 1.5em;
    border-radius: 200px;
    font-size:1em;
    font-weight: 500;
    font-family: "Alice", serif;
    cursor: pointer;
}
/* 
=============
Layout
============= 
*/
.align{
    width:100%;
    padding:0 5%;
}

body{
    background-color: var(--main-color);
}

/* 
=============
Flex-containers
============= 
*/
.menu-bar{
    display:flex;
    align-items: center;
    justify-content: space-between;
    margin:0;
}

/* 
=============
Nav bar
============= 
*/
.logo{
    font-family: "Sacramento", serif;
    font-size:2.5rem;
    margin:0;
}
.header-nav{
    position:absolute;
    z-index: 1;
    background-color: var(--hero-color);
    box-shadow: 2px 0 5px  grey;
}
.active-tab{
    box-shadow: 2px 2px 85px 5px yellow;
    border:1.5px solid yellow;
   
}
nav ul{
    list-style: none;
}
a{
    color:black;
}
.wide-screen-nav{
    display:none;
    margin-right:0.5em;
}
.hamburger-nav {
   z-index: 1;
   position:fixed;
   right:5%;
   top:28%;
   transform: translateY(-28%); 
}
.hamburger-nav i{
    font-size: 1.5rem;
    padding:0.5rem;
    margin:0.3rem 0;
}

.control{
    cursor: pointer;
}
li{
    padding:0.3em;
    border-radius: 6px;
    align-self: center;
}
li:hover{
    box-shadow: 2px 2px 85px 5px yellow;
}
.hamburger-nav li{
    border-radius: 50%;
    width:50px;
    height:50px;
    display:flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 0.8rem;
    background-color: var(--hero-color);

}
.hamburger-nav li:hover{
    box-shadow: 2px 2px 85px 5px yellow;
}
.hamburger-nav li.active-tab{
    background-color: #445128;
    color: white;
    box-shadow: none;
    border: none;
}
.hamburger{
    width:50px;
    height:50px;
    border-radius:50%;
    display:flex;
    justify-content: center;
    align-items: center;
    
}
.hamburger i{
    font-size:1.5rem;
}
.hamburger:hover{
   box-shadow:1px 1px 3px grey;
   
}
.talk-btn{
    background-color: lightyellow;
    border:none;
    box-shadow: 1px 1px 3px grey;
    background-color: yellow;
    display:none;
}
.talk-btn:hover{
    animation: shaking 1s ease-in-out infinite alternate ;
}
.fa-x{
    animation:rotate360 1s ease-in-out;
}
@keyframes rotate360 {
    from{
        transform: rotate(360deg);
    }
    to{
        transform: rotate(0);
    }
}
/* 
=============
Intro section
============= 
*/
.introduction{
    padding-bottom:2em;
    padding-top:3em;
}
.name-container {
    text-align: center;
    margin-bottom: 2em;
}

.avatar{
    display: block;
    width: 50%;  
    aspect-ratio: 1;  
    border-radius: 50%;
    margin: 0 auto 1em;
    object-fit:cover;
    box-shadow: 1px 1px 3px 5px rgb(232, 224, 201);
}
.emphasized-text,
.details-container h2{
    font-size: 2rem;
    margin: 0;
}
.intro-name{
    font-size:4rem;
    margin:0;
    display:inline-block
}
.details-container{
    width:90%;
    margin:auto;
}
/* 
=================
Biography section
================= */
/* .biography{
    padding:1em 0;
    
} */
.biography-detail{
    padding-top:1px;
    margin-bottom:2em;
    margin-top:0;
}
.biography-detail p{
    margin-bottom:1em;
}
.download-btn{
    background-color: yellow;
    font-weight: 700;
    margin-top:1.5em;
    border:none;
    box-shadow: 1px 1px 5px grey;
}
.download-btn:hover{
    animation: shaking 1s ease-in-out infinite alternate ;
}
.feature-img{
    padding:4em 4em;
    object-position: 50% 70%;
    object-fit:cover;
    width:100%;
    border-radius:100px;
    height:450px;
    filter:brightness(100%);
}
.feature-img:hover{
    filter:brightness(120%);
}
/* stats */
.stat-grid{
    display:grid;
    grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
    gap:0.5em;
    width:80%;
    margin:0 auto;
}
.stat-card{
    height:100%;
    text-align: center;
}
.stat-number{
    font-size: 2.5rem;
    font-weight: 600;
}

/* skills */
.skills-container {
    margin: 0 auto;
    margin-top:2em;
}

.skills-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 1em;
    background-color: rgba(4, 82, 115, 0.331);
    padding:1.5em;
}
.skill-item{
    padding:0.8em 1em;
    background-color: rgba(4, 82, 115, 0.99);
    border:none;
    box-shadow: 1px 1px 5px grey;
    color:white;
    border-radius:10px;
}
.skill-info {
    display: flex;
    justify-content: space-between;
    font-weight: 500;
    /* color: #333; */
    color:white;
}
.percentage {
    /* color: #666; */
    color:white;
    width:20%
}
.html{
    width:5%;
}
.css{
    width:15%;
}
.react{
    width:25%;
}
.java{
    width:15%;
}
.sql{
    width:15%;
}
.firebase{
    width:30%;
}
.nodeJS{
    width:28%;
}
.progress-bar {
    height: 0.8em;
    background: #eee;
    border-radius: 20px;
    overflow: hidden;
    border:none;
}

.progress {
    height: 100%;
    background: linear-gradient(to right, #08870c, #c1d225);
    border-radius: 4px;
    transition: width 1s ease-in-out;
}
.progress.css-bar{
    background: linear-gradient(to right, #df7102, #e1df6d);
}
.progress.js-bar{
    background: linear-gradient(to right, #022bdf, #6dcee1);

}
.progress.react-bar{
    background: linear-gradient(to right, #b302df, #eaa1f2);

}
.progress.node-bar{
    background: linear-gradient(to right, #e685ba, #eaa1f2);

}
.progress.py-bar{
    background: linear-gradient(to right, #df0232, #fcbdd4);

}
.progress.java-bar{
    background: linear-gradient(to right, #df0278, #f2e0a1);

}
.progress.spring-bar{
    background: linear-gradient(to right, #dfd802, #e7f2a1);

}
.progress.sql-bar{
    background: linear-gradient(to right, #540404, #f4b7b8);

}
.progress.git-bar{
    background: linear-gradient(to right, #500663, #d0a2d5);

}
.progress.fb-bar{
    background: linear-gradient(to right, #3303a4, #c0a1f2);

}

/* 
=============
Work section
============= 
*/
.work-category-container{
    margin:2em auto;
}

.work-category{
    max-width: 100%;
    padding:1.5em 1em;
    text-align: center;
    border-radius: 10px;  
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1em;
}
.work-category:hover{
    background-color: white;
}

.work-detail{
    height: 25%;
}

.work-icon{
    width:5em;
    background-color: rgb(248, 196, 25);
    padding:1em;
    border-radius: 20px;
}

.start-btn{
    margin-top:1em;
    border:none;
    background:transparent;
    font-size:1.2em;
    font-weight: 600;
    display:block;
}
.start-btn:hover{
    background-color: rgb(248, 196, 25);
}
.container-link{
    position:relative;
}
.hidden-info:hover{
    opacity:100%;
    
}
.hidden-info{
    position:absolute;
    bottom:20%;
    left:0%;
    right:0%;
    text-align: center;
    display:block;
    background:white;
    border-radius:10px;
    padding:0.5em;
    box-shadow:1px 1px 3px grey;
    transition:all 1s ease;
    opacity:0;
    min-height:20%;
    display:flex;
    flex-direction: column;
    justify-content:space-between;
    align-items: center;

}


.hidden-info h2{
    font-size:1.3rem;
    margin:0;
}
.hidden-info p{
    font-size:0.8rem;
}
.view-project{
    font-size:1.1em;
    margin:0;
}
/* 
========================
Education and Experience
======================== */

.education-experience{
    width:100%;
    margin-bottom:2em;
}
.edu-exp-container{
    margin-top:2em;
   text-align: center;
}
.year{
    font-size: 1.3em;
}
.activity{
    margin-bottom:0;
}
/*
============
Work Gallery
============ */

.grid-container{
    display:grid;
    grid-template-columns: repeat(auto-fit,minmax(320px,1fr));
    gap:30px 30px;
    margin: 1.5em 0 1.5em;
    grid-auto-flow: dense;   
}
.grid-item{
    display: block;
    box-shadow: 1px 1px 5px green;
    border-radius: 10%;
    padding:0.5em;
    width:100%;
    height: 100%;
    object-fit: contain;
}
.work-gallery{
    margin-bottom: 3em;
}
.view-code:hover{
    text-decoration: underline;
    color:orange;
}
/* 
==============
Recommendation
============== */


/* 
==============
Collabs
============== */

.contact-form,.contact-details{
    width:50%;
}
.contact-form input{
    box-sizing: border-box;
    width:100%;
    margin: 10px 0;
    padding:10px 5px 10px;
    border-radius: 5px;
}
.contact-form textarea{
    box-sizing: border-box;
    width:100%;
    resize: none;
    margin:10px 0;
}
.collabs-container{
    background-color: #291953;
    color:#FDF4EE;
    padding:2em 0 0;
}
.contact{
    display:flex;
    align-items: center;
    gap:0.5em;
    margin-bottom:0.5em;
    color:white;
}
.contact i{
    color:yellow;
}
.contact-details .section-title{
    margin-bottom:0.8em;
}

.view-btn{
    display:inline-block;
    border:none;
    font-weight:700;
    font-size:1.2rem;
    margin-top:0.5em; 
    background-color: #FDF4EE;
    color:#291953;
}
.view-btn:hover{
    animation: shaking 1s ease-in-out infinite alternate ;
   
}
.contact-form{
    background-color: rgb(242, 244, 124);
    width:100%;
    border-radius: 10px;
    padding:2em 1em;
    margin-top:1.5em;
}
.contact-form h2{
    margin:0;
    font-size:1.4rem;
    color:#291953;
}

.contact-form input{
    padding:1em 1em 1em;
}
.contact-form textarea{
    padding-top:0.5em;
    padding-left:1em;
    height:9em;
    border-radius:10px;
}
.input-field{
    font-family: "Alice", serif;
    background:transparent;
    border:1px solid #291953;
    color:#291953;
}
.submit-btn{
    background-color: #FDF4EE;
    color:#291953;
    font-size:1.2rem;
    border:none;
}
.submit-btn:hover{
    background-color:#291953;
    color:white;
}
.success-message{
    font-size:1.3rem;
    text-align: center;
    font-style: italic;
    opacity:0%;
    color: rgb(41, 136, 4);
    animation-fill-mode: forwards;
    
}
@keyframes show-text {
    0%{
        opacity:90%;
        color: rgb(41, 136, 4);
    }
    50%{
        opacity:70%;
        color:rgb(138, 7, 7);
        letter-spacing: 0.2em;
    }
    100%{
        opacity:0%;
        color: rgb(41, 136, 4);
    }

}
/* 
==============
Footer
============== */
.navigations{
    width:30%;    
}
.navigations ul{
    list-style: none;
}
.navigations a{
 text-decoration: none;
 display:block;
 color:white
}
.footer-content h1{
    font-family: "Sacramento", serif;
    font-size:2rem;
    margin-bottom:0;
}
.footer-container{
    color:white
}
.copyright{
    text-align: center;
    font-size: 0.8rem;
    color:white;
    margin-top:2em;
}


/* 
============
Utility
============ */
.text-effect{
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 1s ease, transform 1s ease;
}
 .visible {
    opacity: 1;
    transform: translateY(0);
}
.hidden{
    opacity: 0;
    pointer-events: none;

}
.section{
    min-height:100vh;
    width:100%;
    position:absolute; 
    top:0;
    left:0;
    padding-top:5rem;
    padding-bottom:3rem ;
    transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
    display:none;
}
.active{
    display:block;
    position: relative;
    animation:scaleAn 0.5s ease-out;
}
.preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #e5eff1;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
  }
.preloader img{
    width:100%;
}
  

@keyframes scaleAn {
    0% {
        opacity: 0;
        transform: translateY(50%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes shaking {
    0%{
        transform: translateY(-10%);
    }
    100%{
        transform: translateY(5%);
    }
}

@media(min-width:768px) and (max-width:1023px){
    *{
        font-size:18px;
    }
    .wide-screen-nav{
        display:block;
    }
    .hamburger{
        display:none;
        pointer-events: none;

    }
    .hamburger-nav{
        display:none;
        pointer-events: none;

    }
    nav ul{
        display:flex;
        gap:1em;
    }

    .avatar{
        display: block;
    }
    .introduction{
        display:flex;
        gap:1em;
        margin-top:20vh;
    }
    .details-container,
    .name-container,
    .avatar{
        width:33%;
    }

    .skills-grid {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    }

    .work-category-container{
        display:flex;
    }
    .work-category{
        padding:0 1em;
    }
    .start-btn{
        margin-top:3em;
    }
    .edu-exp-container{
        display:flex;
        justify-content: space-between;
    }
    .footer-container{
        display:flex;
        align-items: center;
        justify-content: space-between;
        
    }
    .active.biography{
        display:flex;
        /* padding-top:5em;
        padding-bottom:5em; */
    }
    
    .feature-img{
        width:50%;
        border-radius:200px;
        height:auto;
        margin:0;
    }
    .talk-btn{
        display:inline-block
    }
    .preloader img{
        width:40%;
    }
    .section-title{
        font-size:3em;
    }
}

@media(min-width:1024px){
    body{
        line-height: 1.5;
    }
    *{
        font-size:20px;
    }
    .wide-screen-nav{
        display:block;
    }
    .hamburger{
        display:none;
        pointer-events: none;

    }
    .hamburger-nav{
        display:none;
        pointer-events: none;

    }
    nav ul{
        display:flex;
        gap:1em;
    }
    .introduction{
        display:flex;
        gap:50px;
        margin-top:20vh;
    }

    .details-container,
    .name-container,
    .avatar{
        width:33%;
    }

    .active.biography{
        display:flex;
        /* padding-top:5em;
        padding-bottom:5em; */
    }
    .work-category-container{
        display:flex;
    }
    .work-category{
        padding:0 1em;
    }
    .start-btn{
        margin-top:3em;
    }
    .feature-img{
        width:50%;
        object-position: 50% 70%;
        border-radius:200px;
        height:auto;
    }
    .edu-exp-container{
        display:flex;
        justify-content: space-between;
    }

    .recommendation{
        border:1px solid orange;
        display:flex;
        gap:10px;
    }

    .collabs{
        display:flex;
        gap:2em;
    }
    
    .footer-container{
        display:flex;
        align-items: center;
        justify-content: space-between;
        
    }
    .talk-btn{
        display:inline-block
    }
    .skills-grid {
        grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));
    }
    .preloader img{
        width:40%;
    }
    .section-title{
        font-size:3.5em;
    }
}