@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap');

:root{
    --header-hieght: 3rem;
    --hue-color:222;
    --first-color:hsl(var(--hue-color), 69%, 61%);
    --first-color-second: hsl(var(--hue-color), 69%, 61%);
    --first-color-alt: hsl(var(--hue-color), 57%, 40%);
    --first-color-lighter:hsl(var(--hue-color), 92%, 85%);
    --title-color: hsl(var(--hue-color), 8%, 15%);
    --text-color:hsl(var(--hue-color), 8%, 45%) ;
    --text-color-light: hsl(var(--hue-color), 8%, 65%);
    --input-color: hsl(var(--hue-color), 69%, 96%);
    --body-color: hsl(var(--hue-color), 60%, 99%);
    --container-color: #fff;
    --scroll-bar-color: hsl(var(--hue-color),12%,90%);
    --scroll-thumb-color: hsl(var(--hue-color),12%,70%);

    --body-font:'Poppins', sans-serif ;
    --big-font-size: 2rem;
    --h1-font-size: 1.5rem;
    --h2-font-size:1.25rem ;
    --h3-font-size:1.125rem ;
    --normal-font-size:0.938rem ;
    --small-font-size:0.813rem ;
    --smaller-font-size:0.75rem ; 

   --font-medium:500 ;
   --font-semi-bold: 600;

   --mb-0-25:.25rem;
   --mb-0-5:.5rem;
   --mb-0-75:0..75rem;
   --mb-1:1rem;
   --mb-1-5:1.5rem;
   --mb-2:2rem;
   --mb-2-5:2.5rem;
   --mb-3:3rem;

   --z-tooltip: 10;
   --z-fixed: 100;
   --z-modal: 1000;

}

   @media screen and (min-width:968px) {
       :root{
           --big-font-size:3rem;
           --h1-font-size: 2.25rem;
           --h2-font-size: 1.5rem;
           --h3-font-size:1.25rem ;
           --normal-font-size: 1rem;
           --small-font-size:0.875rem ;
           --smaller-font-size: 0.813rem;

       }
       
   }

   body.dark-theme{
    
    --first-color-second: hsl(var(--hue-color), 30%, 8%);
    --title-color: hsl(var(--hue-color), 8%, 95%);
    --text-color:hsl(var(--hue-color), 8%, 75%) ;
    --input-color: hsl(var(--hue-color), 29%, 16%);
    --body-color: hsl(var(--hue-color), 28%, 12%);
    --container-color: hsl(var(--hue-color),29%,16%);
    --scroll-bar-color: hsl(var(--hue-color),12%,48%);
    --scroll-thumb-color: hsl(var(--hue-color),12%,36%);
   }

   .nav_btns{
    display: flex;
    align-items: center;
   }

   .change_theme{
    font-size: 1.25rem;
    color: var(--title-color);
    margin-right: var(--mb-1);
    cursor: pointer;
   }

   .change_theme:hover{
    color: var(--first-color);
   }



   * {
       box-sizing: border-box;
       padding: 0;
       margin: 0;

   }

   html{
       scroll-behavior: smooth;
   }

   body{
       margin: 0 0 var(--header-hieght) 0;
       font-family: var(--body-font);
       font-size: var(--normal-font-size);
       background-color: var(--body-color);
       color: var(--text-color);
   }

   h1,h2,h3,h4{
       color: var(--title-color);
       font-weight: var(--font-semi-bold);
   }

   ul{
       list-style: none;
   }

   a{
       text-decoration: none;
   }

   img{
       max-width: 100%;
       height: auto;
   }


   .section{
       padding: 2rem 4rem;
   }

   .section_title{
       font-size: var(--h1-font-size);
       color: var(--title-color);
       margin-top: 50px;
   }

   .section_subtitle{
       display: block;
       font-size: var(--small-font-size);
       margin-bottom: var(--mb-3);
   }

   .section_title,
   .section_subtitle{
       text-align: center;
   }

   .container{
       max-width: 768px;
       margin-left: var(--mb-1-5);
       margin-right: var(--mb-1-5);
   }

   .grid{
       display: grid;
       gap: 1.5rem;
   }

   .header{
       width: 100%;
       position: fixed;
       bottom: 0;
       left: 0;
       z-index: var(--z-fixed);
       background-color: var(--body-color);
   }
   .nav{
       max-width: 968px;
       height: var(--header-hieght);
       display: flex;
       justify-content: space-between;
       align-items: center;
   }

   .nav_logo,
   .nav_toggle{
       color: var(--title-color);
       font-weight: var(--font-medium);
   }

   .nav_logo:hover{
       color: var(--first-color);
   }

   .nav_toggle{
       font-size: 1.1rem;
       cursor: pointer;
   }
   
   .nav_toggle:hover{
       color: var(--first-color);
   }

   @media screen and (max-width: 767px) {
       .nav_menu{
           position: fixed;
           bottom: -100%;
           left: 0;
           width: 100%;
           background-color: var(--body-color);
           padding: 2rem 1.5rem 4rem;
           box-shadow: 0 -1px 4px rgba(0, 0, 0, .15);
           border-radius: 1.5rem 1.5rem 0 0;
           transition: 0.3s;
       }
   }

   .nav_list{
       grid-template-columns: repeat(3,1fr);
       gap: 2rem;
   }
   .nav_link{
       display: flex;
       flex-direction: column;
       align-items: center;
       font-size: var(--small-font-size);
       color: var(--title-color);
       font-weight: var(--font-medium);
   }

   .nav_link:hover{
       color: var(--first-color);
   }
   
   .nav_icon{
       font-size: 1.2rem;
   }

   .nav_close{
       position: absolute;
       right: 1.3rem;
       bottom: 0.5rem;
       font-size: 1.5rem;
       cursor: pointer;
       color: var(--first-color);
   }

   .nav_close:hover{
       color: var(--first-color-alt);
   }

   .show-menu{
       bottom: 0;
   }

   .active-link{
    color: var(--first-color);
   }

   .scroll-header{
    box-shadow: 0 -1px 4px rgba(0, 0, 0, .15);
   }


   .home_container{
       gap: 1rem;      
   }

   .home_content{
        grid-template-columns: .5fr 3fr;
        padding-top: 10px !important;
        align-items: center;
   }

   .home_social{
       display:grid;
       grid-template-columns: max-content;
       row-gap: 1rem;
   }

   .home_social-icon{
       font-size: 1.25rem;
       color: var(--first-color);
   }

   .home_social-icon:hover{
       color: var(--first-color-alt);
   }

   .home_blob{
       width: 200px;
       fill: var(--first-color);
   }

   .home_blob-img{
       width: 170px;
   }

   .home_data{
       grid-column: 1/3;
   }

   .home_title{
       font-size: var(--big-font-size);
   }

   .home_subtitle{
       font-size: var(--h3-font-size);
       color: var(--text-color);
       font-weight: var(--font-medium);
       margin-bottom: var(--mb-0-75);
   }

   .home_description{
       margin-bottom: var(--mb-2);
   }

   .home_scroll{
      display: none;
   }

   .home_scroll-button{
       color: var(--first-color);
       transition: 0.3s;
   }

   .home_scroll-button:hover{
       transform: translateY(.25rem);
   }
   
   .home_scroll-mouse{
       font-size: 2rem;
   }
   .home_scroll-name{
       font-size: var(--small-font-size);
       color: var(--title-color);
       font-weight: var(--font-medium);
       margin-right: var(--mb-0-25);
   }

   .home_scroll-arrow{
       font-size: 1.25rem;
   }

   .button{
       display: inline-block; 
       background-color: var(--first-color);
       color: #fff;
       padding: 1rem;
       border-radius: .5rem;
       font-weight: var(--font-medium);
   }

   .button:hover{
        background-color: var(--first-color-alt);
   }

   .button_icon{
       font-size: 1.25rem;
       margin-left: var(--mb-0-5);
       transition: .3s;
   }

   .button-flex{
       display: inline-flex;
       align-items: center;
   }

   .button-small{
    padding: .75rem 1rem;
   }

   .button-link{
    padding: 0;
    background-color: transparent;
    color: var(--first-color);
   }

   .button-link:hover{
    background-color: transparent;
    color: var(--first-color-alt);
   }

   

   .about_img{
    width: 250px;
    border-radius: .5rem;
    justify-self: center;
    align-items: center;
   }

   .about_description{
       text-align: center;
       margin-bottom: var(--mb-2-5);
   }
   .about_info{
       display: flex;
       justify-content: space-evenly;
       margin-bottom: var(--mb-2-5);
   }

   .about_info-title{
       font-size: var(--h2-font-size);
       font-weight: var(--font-semi-bold);
       color: var(--title-color);
   }

   .about_info-name{
       font-size: var(--smaller-font-size);
   }

   .about_info-title,
   .about_info-name{
       display: block;
       text-align: center;
   }

   .about_buttons{
       display: flex;
       justify-content: center;
   }

.skills_container{
    row-gap: 0;
}

.skills_header{
    display: flex;
    align-items: center;
    margin-bottom: var(--mb-2-5);
    cursor: pointer;
}

.skills_icon,
.skills_arrow{
    font-size: 2rem;
    color: var(--first-color);
}

.skills_icon{
    margin-right: var(--mb-0-75);

}

.skills_title{
    font-size: var(--h3-font-size);
    margin-left: 10px;
}

.skills_subtitle{
    font-size: var(--small-font-size);
    color: var(--text-color-light);
    margin-left: 10px;
}

.skills_arrow{
    margin-left: auto;
    transition: .4s;
}

.skills_list{
    row-gap: 1.5rem;
    padding-left: 2.7rem;
}

.skills_titles{
    display: flex;
    justify-content: space-between;
    margin-bottom: var(--mb-0-25);
}
.skills_name{
    font-size: var(--normal-font-size);
    font-weight: var(--font-medium);
}

.skills_bar,
.skills_percentage{
    height: 5px;
    border-radius: .25rem;
}

.skills_bar{
    background-color: var(--first-color-lighter);
}

.skills_percentage{
    display: block;
    background-color: var(--first-color);
}

.skills_html{
    width: 90%;
}
.skills_css{
    width: 80%;
}
.skills_js{
    width: 85%;
}
.skills_react{
    width: 75%;
}
.skills_java{
    width: 80%;
}
.skills_nodejs{
    width: 70%;
}
.skills_spring{
    width: 75%;
}
.skills_python{
    width: 75%;
}
.skills_oracle{
    width: 90%;
}
.skills_mysql{
    width: 80%;
}
.skills_mongo{
    width: 85%;
}

.skills_close .skills_list{
    height: 0;
    overflow: hidden;
}

.skills_open .skills_list{
    height: max-content;
    margin-bottom: var(--mb-2-5);
}

.skills_open .skills_arrow{
    transform: rotate(-180deg);
}

.qualification_tabs{
    display: flex;
    justify-content: space-evenly;
    margin-bottom: var(--mb-2);
}

.qualification_button{
    font-size: var(--h3-font-size);
    font-weight: var(--font-medium);
    cursor: pointer;
}

.qualification_button:hover{
    color: var(--first-color);
}

.qualification_icon{
    font-size: 1.8rem;
    margin-right: var(--mb-0-25);
}

.qualification_data{
    display: grid;
    grid-template-columns: 1fr max-content 1fr;
    column-gap: 1.5rem;
}

.qualification_title{
    font-size: var(--normal-font-size);
    font-weight: var(--font-medium);
}

.qualification_subtitle{
    display: inline-block;
    font-size: var(--small-font-size);
    margin-bottom: var(--mb-1);
}

.qualification_calender{
    font-size: var(--smaller-font-size);
    color: var(--text-color-light);
}

.qualification_rounder{
    display: inline-block;
    width: 13px;
    height: 13px;
    background-color: var(--first-color);
    border-radius: 50%;
}

.qualification_line{
    display: flex;
    width: 1px;
    height: 100%;
    background-color: var(--first-color);
    transform: translate(6px,-13px);
}

.qualification [data-content]{
    display:none;
}

.qualification_active[data-content]{
    display: block;
}

.services_container{
    gap: 1.5rem;
    grid-template-columns: repeat(2 ,1fr);
}

.services_content{
    position: relative;
    background-color: var(--container-color);
    padding: 3.5rem .5rem 1.25rem 1.5rem;
    border-radius: .25rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .15);
    transition: 0.3s;
}

.services_content:hover{
    box-shadow: 0 4px 24px rgba(0, 0, 0, .15);
}

.services_icon{
    display: block;
    font-size: 1.5rem;
    color: var(--first-color);
    margin-bottom: var(--mb-1);
}

.services_title{
    font-size: var(--h3-font-size);
    margin-bottom: var(--mb-1);
    font-weight: var(--font-medium);
}

.services_button{
    cursor: pointer;
    font-size: var(--small-font-size);
}

.services_button:hover .button_icon{
    transform: translateX(.25rem);
}

.services_model{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 1rem;
    z-index: var(--z-modal);
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
}

.services_model-content{
    position: relative;
    background-color: var(--container-color);
    padding: 1.5rem;
    border-radius: 0.5rem;
}

.services_model-services{
    row-gap: 1rem;
}

.services_model-service{
    display: flex;
}

.services_model-title{
    font-size: var(--h3-font-size);
    font-weight: var(--font-medium);
    margin-bottom: var(--mb-1-5);

}

.services_model-close{
    position: absolute;
    top: 1rem;
    right: 1rem;
    font-size: 1.5rem;
    color: var(--first-color);
    cursor: pointer;
}

.services_model-icon{
    color: var(--first-color);
    margin-right: var(--mb-0-25);
}

.active-model{
    opacity: 1;
    visibility: visible;
}

.contact_container{
    row-gap: 3rem;
}

.contact_information{
    display: flex;
    margin-bottom: var(--mb-2);
}

.contact_icon{
    font-size: 2rem;
    color: var(--first-color);
    margin-right: var(--mb-0-75);
}

.contact_title{
    font-size: var(--h3-font-size);
    font-weight: var(--font-medium);
    
}

.contact_subtitle{
    font-size: var(--small-font-size);
    color: var(--text-color-light);
}

.contact_content{
    background-color: var(--input-color);
    border-radius: 0.5rem;
    padding: 0.75rem .5rem 0.25rem;
}

.contact_label{
    font-size: var(--smaller-font-size);
    color: var(--title-color);
}

.contact_input{
    width: 98%;
    background-color: var(--input-color);
    color: var(--text-color);
    font-family: var(--body-font);
    font-size: var(--normal-font-size);
    border: none;
    outline: none;
    padding: 0.25rem 0.5rem .5rem 0;

}


.footer{
    padding-top: 2rem;
}

.footer_container{
    row-gap: 3.5rem;
}

.footer_bg{
    background-color: var(--first-color-second);
    padding: 2rem 0 3rem;
}

.footer_title{
    font-size: var(--h1-font-size);
    margin-bottom: var(--mb-0-25);
}

.footer_subtitle{
    font-size: var(--small-font-size);
}

.footer_links{
    display: flex;
    flex-direction: column;
    row-gap: 0.5rem;
}

.footer_link:hover{
    color: var(--first-color-lighter);
}

.footer_social{
    font-size: 1.25rem;
    margin-right: var(--mb-1-5);
    color: rgb(247, 235, 235);
}

.footer_social:hover{
    color: var(--first-color-lighter);
}

.footer_copy{
    font-size: var(--smaller-font-size);
    text-align: center;
    color: var(--text-color-light);
    margin-top: var(--mb-3);
}

.footer_title,
.footer_subtitle,
.footer_link{
    color: #FFF;
}

.scrollup{
    position: fixed;
    right: 1rem;
    bottom: -20%;
    background-color: var(--first-color);
    opacity: .8;
    padding: 0 .3rem;
    border-radius: .4rem;
    z-index: var(--z-tooltip);
    transition: .4s;
}

.scrollip:hover{
    background-color: var(--first-color-alt);

}

.scrollup_icon{
    font-size: 1.5rem;
    color: #FFF;
}

.show-scroll{
    bottom: 5rem;
}

::-webkit-scrollbar{
    width: .60rem;
    background-color: var(--scroll-bar-color);
    border-radius: .5rem;
}

::-webkit-scrollbar-thumb{
    background-color: var(--scroll-thumb-color);
    border-radius: .5rem;
}

::-webkit-scrollbar-thumb:hover{
    background-color: var(--text-color-light);
}


@media screen and (max-width: 350px) {
    .container{
        margin-left: var(--mb-1);
        margin-right: var(--mb-1);
    }
    .nav_menu{
        padding: 2rem .25rem 4rem;
    }

    .nav_list{
        column-gap: 0;
    }

    .home_content{
        grid-template-columns: .25fr 3fr;
    }
    .home_blob{
        width: 180px;
    }

    
    

    .skills_title{
        font-size: var(--normal-font-size);
    }

    .qualification_data{
        gap: .5rem;
    }

    .services_container{
        grid-template-columns: max-content;
        justify-content: center;
    }

    .services_content{
        padding-right: 3.5rem;
    }

    .services_model{
        padding: 0 .5rem;
    }
}

@media screen and (min-width: 568px) {
    
    .home_content{
        grid-template-columns:  max-content 1fr 1fr;
        
    }
    
    .home-data{
        grid-column: initial;
    }

    .home_img{
        order: 1;
        justify-self: center;
    }

    .home_social{
        display: none;
    }


    .about_img{
        margin-bottom: 100px;
    }

    .about_container,
    .skills_container,
    .contact_container,
    .footer_container{
        grid-template-columns: repeat(2, 1fr);
    }

    .qualification_sections{
        display: grid;
        grid-template-columns: .6fr;
        justify-content: center;
    }
}


@media screen and (min-width: 768px){

    .container{
        margin-left: auto;
        margin-right: auto;
    }

    
    body{
        margin: 0;
    }

    .section{
        padding: 6rem 0 2rem;
    }
    .section_subtitle{
        margin-bottom: 4rem;
    }
    
    .header{
        top: 0;
        bottom: initial;
    }
    .header,
    .main,
    .footer_container{
        padding: 0 1rem;
    }

    .nav{
        height: calc(var(--header-height)+1.5rem);
        column-gap: 1rem;
    }

    .nav_icon,
    .nav_close,
    .nav_toggle{
        display: none;
    }

    .nav_list{
        display: flex;
        column-gap: 2rem;
    }

    .nav_menu{
        margin-left: auto;
    }

    .change_theme{
        margin: 0;
    }

    .home_container{
        row-gap: 5rem;
    }

    .home_content{
        padding-top: 5.5rem;
        column-gap: 2rem;
    }

    .home_blob{
        width: 270px;
    }

    .home_scroll{
        display: block;
    }

    .home_scroll-button{
        margin-left: 3rem;
    }

    .about_container{
        column-gap: 5rem;
    }

    .about_img{
        width: 350px;
    }

    .about_description{
        text-align: initial;
    }

    .about_info{
        justify-content: space-between;
    }
    .about_buttons{
        justify-content: initial;
    }

    .qualification_button{
        margin: 0 var(--mb-1);
    }
    .qualification_sections{
        grid-template-columns: .5fr;
    }

    .services_container{
        grid-template-columns: repeat(2, 310px);
        justify-content: center;
    }

    .services_icon{
        font-size: 2rem;
    }

    .services_content{
        padding: 6rem 0 2rem 2.5rem;
        
    }

    .services_model-content{
        width: 450px;
    }
    .footer_container{
        grid-template-columns: repeat(3, 1fr);
    }

    .footer_bg{
        padding: 3rem 0 3.5rem;
    }

    .footer_links{
        flex-direction: row;
        column-gap: 2rem;
    }

    .footer_socials{
        justify-self: flex-end;
    }

    .footer_copy{
        margin-top: 4.5rem;
    }
}


@media screen and (min-width :1024px) {
    .header{
        padding: 20px 0 0 0;
    }
    .main{
        padding:0;
    }
    .footer_container{
        padding: 0;
    }
    .home_data{
        padding: 10%;
        margin-left: 50px;
    }

    .home_social{
        display:grid;
        grid-template-columns: max-content;
        row-gap: 1rem;
    }



    .home_blob{
        width: 320px;
    }

    .home_social{
        transform: translate(230%,200%);
    }

    .services_container{
        grid-template-columns: repeat(2, 330px);
    }

    .contact_form{
        width: 460px;
    }

    .contact_inputs{
        grid-template-columns: repeat(2, 1fr);
    }
}

















