@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=SUSE+Mono:ital,wght@0,100..800;1,100..800&display=swap');

*{
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
}

body{
    background-color: #1e1e1e;
    font-family: "Poppins", sans-serif;
    line-height: 1.6;
}

/* main container */
.main-container{
    display: grid;
    max-width: 1200px;
    grid-template-columns: 350px 1fr;
    gap: 50px;
    padding-top: 40px;
    margin: auto;
}

/* sidebar-section */

    .sidebar{
        background-color: black;
        height: 90vh;
        border: 1px solid white;
        border-radius: 20px;
        padding: 30px;
        position: sticky;
        top: 40px;
    }

    /* profile section */

    .profile{
        text-align: center;
    }

    .profile img{
        height: 150px;
        width: 150px;
        border-radius: 50%;
        border: 2px solid white;
        box-shadow: 0px 0px 10px ;
        margin-bottom: 10px;
    }

    .profile h2{
        color: white;
        font-size: 25px;
        font-weight: 600;
        margin-bottom: 20px;
    }

    .profile p{
        display: inline-block;
        color: gold;
        border: 1px solid white;
        padding: 10px;
        border-radius: 20px;
    }

    /* contact section */
    .contact{
        margin-top: 30px;
        padding: 20px;
        border-bottom: 2px solid white;
        border-top: 2px solid white;
    }

    .label{
        color: white;
        font-size:15px;
        font-weight: 500;
    }

    .value{
        text-decoration: none;
        color: lightskyblue;
    }

    .email,.phone{
        margin-bottom: 15px;
    }

    /* social section */

    .social{
        margin-top: 30px;
        padding-top:20px;
        text-align: center;
    }

    .social img{
        height: 24px;
        width: 24px;
        filter: brightness(0) saturate(100%) invert(50%) sepia(23%) saturate(13%) hue-rotate(356deg) brightness(95%) contrast(94%);
        margin-left: 10px;
        transition-property:filter;
        transition-duration: 0.3s;
        transition-timing-function: ease;
    }

    .social img:hover{
        filter: grayscale(1) invert(0.7);
    }


/* main content */

    .main-content{
        background-color: black;
        border: 1px solid white;
        border-radius: 20px;
        padding: 30px;
    }

    /* navigation bar */
        #navigation{
            border-bottom: 2px solid #3a3a3a;
            margin-bottom: 20px;
            padding-bottom: 20px;
        }

        nav{
            display: flex;
            justify-content: flex-end;
            gap: 15px;
        }

        nav a{
            color: white;
            text-decoration: none;
            font-weight: 500;
            transition: color 0.3s ease;
        }

        .active,nav a:hover{
            color: gold;
        }

    /* about section */
        #about{
            color: white;
            margin-bottom: 40px;
        }

        .heading{
            color: #e0e0e0;
            font-size: 2rem;
            margin-bottom: 15px;
        }

        .line{
            width: 60px;
            height: 5px;
            background-color: gold;
            margin-bottom: 25px;
        }

        .content{
            text-align: justify;
            margin-bottom: 10px;
            font-weight: 200;
        }

    /* skills section */

        .grid-container{
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(120px,1fr));
            gap: 30px;
        }

        .items{
            background-color: #3a3a3a;
            border: 2px solid #3a3a3a;
            border-radius: 15px;
            color: white;
            padding: 10px;
            margin-top: 20px;
            text-align: center;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .items:hover{
            transform: scale(1.1);
            box-shadow: 0px 0px 10px 5px wheat;
        }

        .items img{
            height: 48px;
            width: 48px;
            filter: invert(75%) sepia(50%) saturate(1000%) hue-rotate(350deg) brightness(110%) contrast(101%);
        }

    /* Education section */
        #education{
            margin-top: 40px;
        }

        .edtech{
            position: relative;
        }

        .edfirst,.edsecond{
            color: white;
            margin-bottom: 30px;
            padding-left: 25px;
            position: relative;
        }

        .year{
            color: lightgray;
        }

        .degree{
            font-weight: 500;
            margin-bottom: 5px;
        }

        .college{
            font-weight: 200;
            font-style: italic;
            margin-bottom: 10px
        }

        .work{
            font-weight: 200;
        }

        .goal{
            height: 15px;
            width: 15px;
            border: 3px solid #FFBF00;
            background-color: gold;
            border-radius: 50%;
            position: absolute;
            top:5px;
            left: 0px;
            z-index: 5;
        }

        .liner{
            position: absolute;
            width: 2px;
            top:0px;
            bottom: 0px;
            left: 5px;
            border: 2px solid white;
        }

    /* Portfolio section */
        .project-container{
            margin-top: 30px;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 30px;
        }

        .projects{
            background-color: lightgray;
            border-radius: 12px;
            border: 1px solid #3a3a3a;
            overflow: hidden;
            transition: transform 0.5s ease, box-shadow 0.5s ease;
        }

        .projects:hover{
            transform: translateY(-10px);
            box-shadow: 0px 0px 5px 5px gray;
        }

        .project img{
            height: 180px;
            width: 100%;
            object-fit: cover;
        }

        .card{
            padding: 20px;
        }

        .card h3{
            color: black;
            margin-bottom: 10px;
        }

        .card p{
            color: black;
            font-weight: 200;
            line-height: 1.6;
            margin-bottom: 15px;
        }

        .card span{
            background-color:black;
            color: yellow;
            padding: 4px 8px;
            border-radius: 5px;
            font-size: 0.75rem;
            margin-right: 5px;
        }

@media screen and (max-width:1200px) {
    .main-container{
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .sidebar{
        position: static;
        height: auto;
    }
}

@media screen and (max-width:750px) {
    .project-container{
        grid-template-columns: 1fr;
    }

    #navigation nav {
        /* Adjust nav for smaller screens */
        justify-content: center;
        flex-wrap: wrap;
    }

    .sidebar{
        display: flex;
        justify-content: center;
        gap: 40px;
    }
}