* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    scroll-behavior: smooth;
}

body::-webkit-scrollbar { display: none; }

/* ----------------navbar---------- */
nav {
    width: 100%;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: space-between; 
    padding: 0 5%; 
    background-color: #524f4c;
    text-transform: capitalize;
    font-family: sans-serif;
    position: sticky;
    top: 0;
    z-index: 10;
}

.leftnav h2 { color: white; }

.centernav ul {
    display: flex;
    gap: 30px;
    list-style: none;
}

.centernav ul li a { 
    text-decoration: none;
    color: white;
}
.centernav ul li a:hover { 
    color: rgb(161, 54, 54); 
}

.navbtn {
    width: 150px;
    height: 50px;
    border-radius: 10px;
    border: 2px solid black;
    cursor: pointer;
    transition: 0.3s;
}
.navbtn:hover { background-color: #a3b18a; }

/* -------------------main------------------------------- */
main { 
    background-color: rgb(218, 241, 247); 
    overflow-x: hidden; 
}

/* ---------------------home------------------------- */
#home {
    width: 100%;
    min-height: 700px;
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 0 5%;
    position: relative;
}

.hero1 { width: 50%; }
.hero1 section {
    background-color: rgb(212, 183, 39);
    padding: 5px 15px;
    display: inline-block;
    margin-bottom: 20px;
}

.typedtext {
    display: block;
    font-size: 35px;
    font-weight: 500;
    margin-bottom: 20px;
}

.hero1 p { margin-bottom: 30px; line-height: 1.6; }

.btn1 { 
    display: flex; 
    gap: 20px; 
    margin-bottom: 30px; }
.btn1 button {
    width: 120px;
    height: 35px;
    border-radius: 5px;
    border: none;
    box-shadow: 0px 0px 15px rgba(0,0,0,0.2);
    cursor: pointer;
}
.btn1 button:hover { 
    background-color: #524f4c; 
    color: white; }

.icon { display: flex; gap: 40px; font-size: 30px; }
.icon a#link { color: #0A66C2; }
.icon a#git { color: black; }
.icon a:hover { transform: translateY(-5px); transition: 0.3s; }

.hero2 { width: 40%; display: flex; justify-content: center; }
.img {
    width: 340px;
    height: 340px;
    background: url('./assets/profile.jpeg');
    background-size: cover;
    border-radius: 50%;
    box-shadow: 0px 0px 20px 10px rgb(94, 92, 92);
    animation: floatimg 2s ease-in-out infinite;
}

@keyframes floatimg {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-20px); }
}

.scroll { 
    width: 100%; 
    position: absolute; 
    bottom: 30px; 
    text-align: center; 
}
.scroll button { 
    padding: 5px 15px; 
    border-radius: 20px; 
    border: none; 
    box-shadow: 0 0 10px rgba(0,0,0,0.2); }

/* ----------------------------about--------------------------- */
#about { 
    padding: 80px 5%; 
    text-align: center; }
#about h1 { 
    margin-bottom: 50px; 
    text-transform: capitalize; 
}

.about1 { 
    display: flex; 
    justify-content: center; 
    margin-bottom: 50px; 
}
.intro {
    width: 100%;
    max-width: 500px;
    padding: 30px;
    background: whitesmoke;
    border-radius: 20px;
    box-shadow: 0px 0px 20px rgba(0,0,0,0.3);
}
.intro button { 
    margin-top: 20px; 
    padding: 10px 20px; 
    border-radius: 20px; 
    border: none; 
    background: #524f4c; 
    color: white; 
    cursor: pointer; }

.about2_1 { 
    display: flex; 
    justify-content: space-around; 
    flex-wrap: wrap; 
    gap: 30px; 
    margin-top: 40px; 
}

.about2_1 button { 
    padding: 8px 15px; 
    border-radius: 10px; 
    border: none; 
    background: rgb(94, 92, 92); 
    color: white; 
    margin: 5px; 
    box-shadow: 0 4px 6px rgba(0,0,0,0.1); 
}

/* ---------------projects------------------ */
#projects { 
    padding: 80px 5%; 
    text-align: center; 
}
.boxes { 
    display: flex; 
    justify-content: center; 
    gap: 30px; 
    flex-wrap: wrap; 
    margin-top: 50px; 
}
.box1 {
    width: 350px;
    min-height: 220px;
    padding: 20px;
    background: rgb(128, 126, 126);
    border-radius: 20px;
    color: white;
    transition: 0.5s;
    position: relative;
    overflow: hidden;
}
.box1:hover { transform: scale(1.05); }

/*----------------contact------------------------- */
#contact {
    padding: 80px 5%;
    text-align: center;
}

.con1 {
    margin-bottom: 40px;
    display: flex;
    justify-content: center;
}

.conbox1 {
    width: 100%;
    max-width: 400px;
    padding: 40px;
    background: #b3b0b0;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

.con2 {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
}

.input-box1, 
.input-box2 {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
}

.con2 input, 
.con2 textarea {
    width: 100%;
    padding: 12px;
    border-radius: 10px;
    border: none;
    box-shadow: 0 0 5px rgba(0,0,0,0.2);
}

#inp1 {
    height: 150px;
    margin-bottom: 20px;
}

.con2 .btn {
    width: 120px;
    background: #524f4c;
    color: white;
    cursor: pointer;
}

/* -----------------footer----------------- */
footer {
    background: rgb(115, 164, 176);
    padding: 40px 5%;
    text-align: center;
}

footer .list ul {
    display: flex;
    justify-content: center;
    gap: 20px;
    list-style: none;
    margin: 20px 0;
}

footer .list ul li a {
    text-decoration: none;
    color: black;
}

.icon2 {
    font-size: 25px;
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-bottom: 20px;
}

.icon2 > button {
    background-color: #524f4c;
}

.top > a button {
    background-color: #524f4c;
}

/* --- MEDIA QUERY (Responsive) --- */
@media screen and (max-width: 768px) {
    nav {
        flex-direction: column;
        height: auto;
        padding: 20px;
    }

    .centernav ul {
        margin: 15px 0;
        gap: 15px;
    }
    
    #home {
        flex-direction: column-reverse;
        text-align: center;
        padding-top: 100px;
    }

    .hero1, 
    .hero2 {
        width: 100%;
    }

    .img {
        width: 250px;
        height: 250px;
        margin-bottom: 30px;
    }

    .btn1, 
    .icon {
        justify-content: center;
    }
    
    .input-box1, 
    .input-box2 {
        flex-direction: column;
    }

    .about2_1 {
        flex-direction: column;
    }

}