body {
    margin: 0px;
    padding: 0px;
    color: white;
    background-color: #091B2A;
    font-family: 'Poppins', sans-serif;
}
.heading {
    display: flex;
    align-items: center;
}
.logo {
    padding-left: 2.5rem;
    align-self: center;
    font-family: "Lucida Handwriting", cursive;
    font-size: 2.2rem;
}
.sidebar {
    padding: 0.8rem;
    font-size: 1.1rem;
    flex-grow: 1;
   
}
ul {
    display: flex;
    justify-content: flex-end;  
}
li {
    display: inline-block;
    list-style: none;
    flex-grow: 1;
    padding: auto;
}
nav li a {
    color: white;
    text-decoration: none;
    position: relative;
}
nav li a::after {
    content: '';
    width: 0;
    height: 3px;
    background: #0ef;
    position: absolute;
    left: 0;
    bottom: -6px;
    transition: 0.5s;
}
nav li a:hover::after {
    width: 100%;
}
nav .fa-solid{
display: none;}

/* ---------front section------------- */

.frontt {
    height: auto;
    padding: 6rem 12rem;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 12rem;
    align-items: center;
}
#pic1 {
    width: 29rem;
    height: 30rem;
    border: 6px solid #0ef;
    border-radius: 50%;
}
.bio {
    flex: 1; 
    font-family: "Lucida Handwriting", cursive;
}
.movingtext {
    color: #0ef;
    font-size: 1.35rem;
}

/* ------------About section---------------------- */

.about {
    margin: 0;
    padding: 5rem;
    font-size: 120%;
    gap: 8rem;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
.content { 
    width: 60%
}
.service{
    color: #0ef;
}
#pic2 {
    border-radius: 55px;
    border: 2px solid #0ef;
    width: 19rem;
    height: 25rem;
    margin-left: 3rem;
}
.icon {
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
}
.icon a {
    color: #0ef;
    text-decoration: none;
    border: 2px solid #0ef;
    border-radius: 50%;
    padding: 10px;
    margin: 7px;
}
.icon a:hover {
    background: #0ef;
    color: #091B2A;
    box-shadow: 0 0 15px #0ef;
}
.res{
    padding-left: 2rem;
}
#Resume{
    padding: 8px;

    background-color: #0ef;
    border: 2px solid #0ef;
    border-radius: 5px;
    transition: transform 0.5s;
}
#Resume:hover{
transform: scale(1.1);
background: #0ef;
color: #091B2A;
box-shadow: 0 0 15px #0ef;
}

/* --------------services------------- */

.services {
    font-size: 20px;
    line-height: 1.4;
    padding-bottom: 30px;
}
 /* mainheading */
.mainheading{
    font-size:50px;
    text-align:center;
    margin: 60px 0;
}
/* subheading */

.subheading {
    color: #0ef;
}
.slist {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    grid-gap: 50px;
    margin: 0 50px;
}
.slist .listitem {
    position: relative;
    padding: 40px;
    background: transparent;
    border-right: 10px;
    border-radius: 20px;
    box-shadow: 1px 1px 20px #4767d1f7, 1px 1px 20px #0053b8f7;
    overflow: hidden;
}
.slist .listitem .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(rgba(0, 0, 0, 0.6), #0ef);
    opacity: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    transition: opacity 0.3s;
}
.slist .listitem h3 {
    color: white;
    font-size: 18px;
}

.slist .listitem:hover .overlay {
    opacity: 0.7;
}

.slist .listitem:hover {
    transform: translateY(-10px);
}
.slist i {
    color: #0ef;
    font-size: 60px;
}
/* --------------Skills------------------- */

.skills {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    padding-left: 0;
}
.heading1 {
    text-align: center;
    text-decoration: underline;
    font-size: 40px;
    text-underline-offset: 10px;
    text-decoration-thickness: 5px;
    margin-bottom: 50px;
}
.bar {
    font-size: 18px;
    margin-top: 20px;
    display: flex;
    flex-direction: column;
}
.container {
    flex-grow: 1;
    padding: 75px 90px;
}
.progress {
    border-radius: 10px;
    height: 6px;
    background-color: black;
    animation: animate 1s cubic-bezier(1, 0, 0.5, 1) forwards;
    transform: scaleX(0);
    transform-origin: left;
}
.progress span {
    height: 5px;
    border-radius: 10px;
    background-color: #0ef;
    position: absolute;
    animation: animate 1.2s cubic-bezier(1, 0, 0.5, 1) forwards;
    transform: scaleX(0);
    transform-origin: left;
}
.progress.html span {
    width: 85%;
}
.progress.css span {
    width: 80%;
}
.progress.js span {
    width: 80%;
}
.progress.cpp span {
    width: 85%;
}
@keyframes animate {
    100% {
        transform: scaleX(1);
    }
}
.bar .info {
    animation: showText 0.5s 0.5s linear forwards;
    opacity: 0;
}
@keyframes showText {
    100% {
        opacity: 1;
    }
}

/* ------percentage------- */

.progress .percentage::after {
    font-size: 10px;
    position: absolute;
    right: 0;
    top: -25px;
    animation: showText 0.5s 0.5s linear forwards;
    border: 5px solid black;
    content: "";
}
.progress.html .percentage::after {
    content: "85%";
}
.progress.css .percentage::after {
    content: '80%';
}
.progress.js .percentage::after {
    content: '80%';
}
.progress.cpp .percentage::after {
    content: '85%';
}    /* to set properties of percentage content we are using this */

/* -------------radialbars------------ */
.rbar {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.radialbars {
    width: 20%;
    padding: 10px;
    flex-grow: 1;
}

.outer {
    height: 100px;
    width: 100px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 6px 6px 10px -1px rgba(0, 0, 0, 0.15), -6px -6px 10px -1px rgba(0, 0, 0, 0.15);
}
.desc{
    padding: 30px;
    padding-left: 15px;
}

.inner {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 6px 6px 10px -1px rgba(0, 0, 0, 0.15), -6px -6px 10px -1px rgba(0, 0, 0, 0.15);
    background-color: #091B2A;
}

.cir {
    width: 100%;
    height: 100%;
    fill:#091B2A;
    stroke-linecap: round;
    stroke:#0ef;
    stroke-width: 15px;
    stroke-dasharray: 503;
    stroke-dashoffset: 503;
    animation: anim 1s linear forwards;
}
@keyframes anim {
    100% {
        stroke-dashoffset:-1;
    }
}
.progress1 {
    animation: anim1 1s linear forwards;
}

.progress2 {
    animation: anim2 1s linear forwards;
}

.progress3 {
    animation: anim3 1s linear forwards;
}

.progress4 {
    animation: anim4 1s linear forwards;
}

@keyframes anim1 {
    100% {
        stroke-dashoffset: 142;
    }
}

@keyframes anim2 {
    100% {
        stroke-dashoffset: 110;
    }
}

@keyframes anim3 {
    100% {
        stroke-dashoffset: 150;
    }
}
@keyframes anim4 {
    100% {
        stroke-dashoffset: 90;
    }
}

/* ------------projects--------------- */

.projects{
    padding:0 50px;
    padding-bottom: 100px ;
}
.worklist{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    grid-gap: 50px;
    margin: 0 50px;
    padding-top: 50px;
}
.work img{
    max-width:100%;
    height: 100%;
    transition: transform 0.5s;
}
 .work {
    position: relative;
    border-right: 10px;
    border-radius: 20px;
    box-shadow: 1px 1px 20px #012290f7, 1px 1px 20px #0053b8f7;
    overflow: hidden;
}
.work .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0%;
    background: linear-gradient(rgba(0, 0, 0, 0.6), #0053b8f7);
    opacity: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    transition: height 0.3s;
}
.work:hover .overlay {
    opacity: 1;
    height: 100%;
}

.work:hover img {
    transform: scale(1.1);
}
.overlay a{
    text-decoration: none;
    color: white;
    background-color: white;
    border: 2px solid white;
    border-radius: 50%;
    padding: 10px;
}
.overlay i{
    font-size: 25px;
    color: #012290f7;
}

/* -------------Achievements----------- */
.Achievements{
    padding-bottom: 80px;
}
.Achievements .work a{
    background-color: #1e3fabf7;
    border: 2px solid white;
    color: white;
    border-radius: 10%;
    transition: transform 0.5s;
}
.Achievements .work a:hover{
    transform: scale(1.1); 
    background-color: #0b36c6f7;
}

/* ---------------Contacts------------- */
.Contacts{
    background:linear-gradient(rgba(0, 0, 0, 0.3), #3079d3c9,rgba(0, 0, 0, 0.2)); 
    padding: 40px;
    height: 60vh; 
    height: auto;
    padding-bottom:20px;
}
.Contacts p i{
    font-size: 20px;
}
.Contacts h3{
font-size: 25px;
}
.Contacts p a{
    text-decoration: none;
    color: white;
}
.scroll{
    color:#0ef;
    font-size: 2.8rem;
    position: fixed;
    right: 30px;
    bottom: 50px;
} 

/* ----------------footer------------ */

footer{
    height: 30px;
    text-align: center;
    padding-top: 18px;
}


/* -----------------Responsiveness----------------- */


@media only screen and (max-width:1400px)
{
    #pic1 {
        padding: 0;
        margin: 0;
    }
    
}
@media only screen and (min-width:900px) and (max-width:1400px)
{
    .frontt {
        height: auto;
        padding: 3rem 6rem;
        gap: 0rem;
    }  
    .about {
        margin: 0;
        padding: 0rem;
        gap: 1rem;  
    }
    .Contacts{
        padding: 30px;
        height: 80vh; 
    }
}

@media only screen and (max-width:930px)
{
    *{
        font-size: 1rem;
        margin: 0px;
        padding: 0px;
    }
   .logo {
    padding-left: 0rem;
    align-self: center;
    font-family: "Lucida Handwriting", cursive;
    font-size: 1rem;
}
   .movingtext {
    color: #0ef;
    font-size: 1.1rem;
}

  .heading{
    justify-content:space-between;
    height: 80px;
  }
    nav ul{
        background: #091B2A;
        opacity: 0.9;
        width: 150px;
        position: fixed;
        top: 0px;
        right: -200px;
        height: 100vh;
        display: block;
        transition: right 0.8s ;
        z-index: 10;
    }
    nav ul li{
        display:block;
        margin: 25px;
    }
    nav .fa-solid.fa-bars{
        display: block;
        text-align: right;
        padding-right: 20px;
        cursor: pointer;
    }
    nav .fa-solid.fa-xmark{
        display: block;
    }
    .logo{
        margin: 3rem;
        font-size: 1.5rem;
    }
    .frontt {
        padding: 1rem 2.5rem;
        font-size: 30px;
        gap: 1.5rem;
   
    }
    #pic1 {
        width: 15rem;
        height: 15rem;
    }
   
    .mainheading{
         margin: 0;
        padding: 30px;
        font-size: 1.5rem;
        text-align:center;
    }

/* subheading */
    .subheading{   
        font-size: 1.3rem;
    }

    .about{
        padding: 0rem;
        margin: 0;
        font-size: 1rem;
        gap: 1.5rem;
    }
    .myimg{
        padding-top: 80px;
    }
    
    #pic2 {
        margin: 0;
        border-radius: 55px;
        border: 2px solid #0ef;
        width: 12rem;
        height: 14rem;
        margin-left: 0rem;
    }

    .services {
        font-size: 10px;    
    }
    .slist .listitem h3 {
        font-size: 10px;
    }
    .slist i {
        font-size: 30px;
    }
    .overlay i{
        font-size: 18px;
    }
    .container {
        flex-grow: 1;
        padding: 40px;
    }
    .heading1 {
        padding-top: 1rem;
        margin-bottom: 25px;
    }
    .bar {
        font-size: 10px;
    }
    
    .projects{
         padding:0 0px;
    }
    .worklist{
        grid-gap: 40px;
        margin: 0 50px;
        padding-top: 20px;
        max-width:100%;
        height: auto;
    }

    .Contacts{
        padding: 30px;
        height: 80vh; 
    }
    .con{
        padding-bottom: 10px;
    }
    .Contacts p{
        font-size: 15px;
        padding: 0.5rem;
    }
    .Contacts a{
        font-size: 15px;
    }
    .Contacts h3{
    font-size: 15px;
    }
    .scroll i{
        font-size: 2rem;
       }

}

@media only screen and (max-width:550px)
{

    .bio{
        padding-bottom:30px ;
    }
    .content{
         width: 80%; 
         order: 1;
    }
    .myimg{
        padding-top: 30px;
        order: 2;
    }
    .work img{
        height: auto;
    }
    .radialbars{
        width: 40%;
    }
    .icon{
        padding-top: 30px;
    }
  
    .container{
        padding-bottom: 0;
    }
   .Achievements h2{
    font-size: 1.1rem;
   }
   .Contacts{
    height: 60vh;
   }
   
}

@media only screen and (max-width:320px)
{
    .Contacts{
        height: 90vh;
       }
    }