@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600&display=swap);
*,.card__content{
    box-sizing:border-box
}
.contact form,.footer .social,.footer .social a,.heading{
    text-align:center
}
*{
    margin:0;
    padding:0;
    text-decoration:none;
    border:none;
    outline:0;
    scroll-behavior:smooth;
    font-family:Poppins,sans-serif
}
/* :root{
    --bg-color:rgb(233, 233, 233);
    --second-bg-color:rgb(233, 233, 233);
    --text-color:rgb(22, 22, 22);
    --main-color:rgb(80, 168, 58)
} */
:root{
    --bg-color:#161616;
    --second-bg-color:#161616;
    --text-color:#fff;
    --main-color:rgb(80, 168, 58)
}
html{
    font-size:62.5%;
    overflow-x:hidden
}
body{
    background:var(--bg-color);
    color:var(--text-color);
}
html::-webkit-scrollbar{
    width:.9rem
}
html::-webkit-scrollbar-track{
    background:var(--bg-color)
}
html::-webkit-scrollbar-thumb{
    background:var(--main-color)
}
.header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    padding:3rem 9%;
    display:flex;
    justify-content:space-between;
    background:linear-gradient(to bottom,var(--second-bg-color) 85%,rgba(0,0,0,0) 100%);
    align-items:center;
    z-index:9998
}
.logo{
    font-size:3rem;
    color:var(--main-color);
    font-weight:800;
    cursor:pointer;
    transition:transform .5s
}
.navbar a,.typing-text{
    color:var(--text-color)
}
#menu-icon,.card__title,.social-icon a,.typing-text span,span{
    color:var(--main-color)
}
.logo:hover{
    transform:scale(1.1)
}
.navbar{
    position:fixed;
    display: flex;
    justify-content: right;
    top:0;
    right:0;
    width:100%;
    padding:3rem 3%;
    background:linear-gradient(to bottom,var(--second-bg-color) 85%,rgba(0,0,0,0) 100%);
}
.navbar a{
    font-size:1.8rem;
    margin-left:4rem;
    font-weight:500;
    transition:color .3s,border-bottom .3s;
    border-bottom:3px solid transparent
}
.heading,.home-content h3{
    font-size:4rem;
    margin-bottom:1rem
}
.navbar a.active,.navbar a:hover{
    color:var(--main-color);
    border-bottom:3px solid var(--main-color)
}
#menu-icon{
    font-size:3.6rem;
    display:none;
    cursor:pointer
}
@media (max-width:995px){
    #menu-icon{
        display:block
    }
    .navbar{
        position:absolute;
        top:100%;
        right:0;
        width:40%;
        border-left:3px solid var(--main-color);
        border-bottom:3px solid var(--main-color);
        border-bottom-left-radius:2rem;
        padding:1rem 3%;
        background-color:var(--second-bg-color);
        display:none;
    }
    .navbar a{
        margin-left:1.5rem;
    }
    .navbar.active{
        display:block;
        font-size:2rem;
        margin:-0.5rem 0
    }
    .navbar a.active,.navbar a:hover{
        /* padding:.5rem; */
        border-radius:.5rem;
        border-bottom:0rem solid var(--main-color)
    }
}
.portfolio,section{
    padding:10rem 9%
}
.home,.skills,.skills .container .bar{
    background:var(--bg-color)
}
section{
    min-height:85vh
}
.home{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8rem
}
.home .home-content h1{
    font-size:6rem;
    font-weight:700;
    line-height:1.3
}
.home-content h3{
    font-weight:700
}
.home-img{
    border-radius:0;
    border:none;
    outline:0
}
.home-img img{
    position:relative;
    width:32vw;
    cursor:pointer;
    border:none;
    outline:0
}
.home-content p{
    font-size:1.8rem;
    font-weight:500
}
.social-icon a{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    width:4rem;
    height:4rem;
    background:0 0;
    border:.2rem solid var(--main-color);
    font-size:2rem;
    border-radius:50%;
    margin:3rem 1.5rem 3rem 0;
    transition:.3s
}
.card,.card svg,.card__content{
    transition:.6s cubic-bezier(.175, .885, .32, 1.275)
}
.social-icon a:hover{
    color:#000;
    transform:scale(1.3) translateY(-5px);
    background:var(--main-color);
    box-shadow:0 0 25px var(--main-color)
}
.typing-text{
    font-size:34px;
    font-weight:600;
    min-width:280px;
    position:relative
}
.typing-text span{
    position:relative
}
.education,.portfolio{
    background:var(--second-bg-color)
}
.skills .container{
    background:var(--main-color);
    color:var(--bg-color);
    border-radius:1rem;
    padding:2rem;
    width:70%;
    margin:2rem auto auto
}
.skills .container .row{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    flex-wrap:wrap;
    gap:1.8rem
}
.skills .container .bar{
    margin-bottom:15px;
    padding:10px;
    border-radius:1rem;
    box-shadow:0 4px 10px var(--main-color);
    transition:.3s
}
.skills .container .bar:hover{
    box-shadow:0 4px 15px var(--text-color);
    transform:scale(1.03)
}
.skills .container .bar .info{
    display:flex;
    position:relative;
    flex-direction:column;
    align-items:center;
    gap:1rem;
    margin-top:1rem
}
.skills .container .bar img{
    width:90px;
    height:90px;
    justify-content:center
}
.skills .container .bar .info span{
    font-size:2rem;
    font-weight:500;
    margin-left:.5rem
}
.education .timeline{
    position:relative;
    max-width:1200px;
    margin:0 auto
}
.education .timeline::after{
    content:'';
    position:absolute;
    width:6px;
    background:#435a40;
    top:0;
    bottom:0;
    left:50%;
    margin-left:-3px;
    z-index:-2px
}
.education .container{
    padding:10px 40px;
    position:relative;
    background-color:inherit;
    width:50%
}
.education .container::after{
    content:'\f501';
    position:absolute;
    width:25px;
    height:25px;
    line-height:25px;
    right:-17px;
    background-color:#fcfcfc;
    border:4px solid var(--main-color);
    top:15px;
    border-radius:50%;
    z-index:100;
    font-size:1.89rem;
    text-align:center;
    font-weight:600;
    font-family:"Font Awesome\ 5 Free";
    color:#435a40
}
.education .left::before,.education .right::before{
    content:'';
    height:0;
    position:absolute;
    top:22px;
    width:0;
    z-index:1
}
.education .left{
    left:0
}
.education .right{
    left:50%
}
.education .left::before{
    right:31px;
    border:medium solid var(--main-color);
    border-width:10px 0 10px 10px;
    border-color:transparent transparent transparent var(--main-color)
}
.education .right::before{
    left:31px;
    border:solid transparent;
    border-width:10px 10px 10px 0;
    border-right-color:var(--main-color)
}
.education .right::after{
    left:-16px
}
.education .content{
    background:var(--main-color);
    position:relative;
    border-radius:6px
}
.education .content .tag{
    font-size:1.5rem;
    padding-top:1.5rem;
    padding-left:1.5rem
}
.education .content .decs{
    margin-left:1.5rem;
    padding-bottom:1rem
}
.education .content .decs h3{
    font-size:1.5rem;
    font-weight:600
}
.education .content .decs p{
    font-size:1.3rem;
    font-weight:500
}
@media screen and (max-width:968px){
    .skills .container{
        margin:5px 0 0;
        padding:0;
        width:100%
    }
    .skills .container .row{
        grid-template-columns:repeat(2,1fr);
        margin:1rem;
        padding:2rem .2rem;
        gap:1rem
    }
    .education .timeline{
        margin-top:2rem
    }
    .education .timeline::after{
        left:31px
    }
    .education .container{
        width:100%;
        padding-left:7rem;
        padding-right:1rem
    }
    .education .container::after{
        font-size:2.2rem
    }
    .education .container::before{
        left:61px;
        border:medium solid var(--main-color);
        border-width:10px 10px 10px 0;
        border-color:transparent var(--main-color) transparent transparent
    }
    .education .left::after,.education .right::after{
        left:15px
    }
    .education .right{
        left:0
    }
    .home{
    flex-direction: column;
    }
    .home-img img{
        width: 85vw;
    }

}
.portfolio .portfolio-container{
    display:flex;
    flex-wrap:wrap;
    gap:2rem;
    padding:1rem;
    justify-content:center
}
.card{
    position:relative;
    width:350px;
    aspect-ratio:16/9;
    background-color:#f2f2f2;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    perspective:1000px;
    box-shadow:0 0 0 5px var(--main-color);
    flex-shrink:0
}
.card__content,.card__image{
    width:100%;
    height:100%
}
.card svg{
    width:48px;
    fill:var(--main-color)
}
.card:hover{
    transform:scale(1.05)
}
.card__content{
    position:absolute;
    top:0;
    left:0;
    padding:20px;
    background-color:rgba(5,5,5,.9);
    transform:rotateX(-90deg);
    transform-origin:bottom
}
.card:hover .card__content{
    transform:rotateX(0)
}
.card__title{
    margin:0;
    font-size:20px;
    font-weight:700
}
.card:hover svg{
    scale:0
}
.card__description{
    margin:10px 0;
    font-size:12px;
    color:var(--text-color);
    line-height:1.4
}
.card__button,.contact form .btn{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    width:20rem;
    height:4rem;
    background:0 0;
    color:var(--main-color);
    background-color:var(--second-bg-color);
    margin-top:2rem;
    font-weight:700;
    border-radius:.8rem;
    border:2px solid var(--main-color)
}
.card__button:hover,.contact form .btn:hover{
    color:#000;
    background:var(--main-color);
    box-shadow:0 0 25px var(--main-color)
}
.secondary{
    background:0 0;
    color:#777;
    border:1px solid #777
}
.contact h2{
    margin-bottom:3rem;
    color:var(--text-color)
}
.contact form{
    max-width:70rem;
    margin:1rem auto 3rem
}
.contact form .input-box{
    display:flex;
    justify-content:center;
    flex-wrap:wrap
}
.contact form .input-box input,.contact form textarea{
    width:100%;
    padding:1.5rem;
    font-size:1.6rem;
    color:var(--text-color);
    background-color:var(--second-bg-color);
    border-radius:.8rem;
    border:2px solid var(--main-color);
    margin:1rem 0;
    resize:none
}
.footer{
    position:relative;
    bottom:0;
    width:100%;
    padding:40px 0;
    background-color:var(--main-color)
}
.footer .social{
    padding-bottom:25px;
    color:#000
}
.footer .social a{
    font-size:25px;
    color:#000;
    border:2px solid #000;
    width:42px;
    height:42px;
    line-height:42px;
    display:inline-block;
    border-radius:50%;
    margin:0 10px;
    transition-duration:.3s ease
}
.footer .social a:hover{
    transform:scale(1.2) translateY(-5px);
    background:#000;
    color:var(--main-color)
}
.notification{
    position:fixed;
    top:4%;
    left:50%;
    transform:translateX(-50%);
    background-color:var(--second-bg-color);
    color:var(--text-color);
    padding:15px;
    border-radius:5px;
    border:2px solid var(--main-color);
    box-shadow:0 2px 5px rgba(0,0,0,.3);
    font-size:16px;
    z-index:9999;
    display:none
}
.notification.show{
    display:block
}
.multiple-text{
    font-size: 38px;
}
.fixed-switch-container {
    position: fixed;
    bottom: 20px; /* Adjust as needed */
    right: 20px;  /* Adjust as needed */
    z-index: 9998; /* Ensures it stays above most content */
  }

.switch {
    font-size: 17px;
    position: relative;
    display: inline-block;
    width: 3.5em;
    height: 2em;
  }
  
  /* Hide default HTML checkbox */
  .switch input {
    opacity: 0;
    width: 0;
    height: 0;
  }
  
  /* The slider */
  .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--text-color);
    transition: .5s;
    border-radius: 30px;
  }
  
  .slider:before {
    position: absolute;
    content: "";
    height: 1.4em;
    width: 1.4em;
    border-radius: 50%;
    left: 10%;
    bottom: 15%;
    box-shadow: inset 8px -4px 0px 0px var(--bg-color);
    background: var(--text-color);
    transition: .5s;
  }
  
  input:checked + .slider {
    background-color: var(--text-color)
  }
  
  input:checked + .slider:before {
    transform: translateX(100%);
    box-shadow: inset 15px -4px 0px 15px var(--bg-color);
  }