/* to avoid the default margin of all element  */
* {
    box-sizing: border-box;
    margin: 0;
}

main {
    width: 100vw;
    background-color: red;
}

/* navigation section  */
nav {
    position: sticky;
    top: 0;
    background-color: rgb(124, 18, 224);
    width: 100%;
    display: flex;
    justify-content: end;
    padding: 0 70px;
}

nav>a {
    font-size: 30px;
    text-decoration: none;
    color: white;
    padding: 20px 20px;
    margin: 0;
    transition: 0.6s;
}

nav>a:hover {
    background-color: rgb(42, 165, 89);
}

/* author section  */
#author-intro {
    background-color: rgb(162, 192, 51);
    padding-top: 290px;
    width: 100%;
    height: 850px;
    text-align: center;
}

#author-intro>h1 {
    color: white;
    font-size: 50px;
}

#author-intro>h3 {
    color: rgb(118, 71, 245);
    font-family: cursive;
    font-size: 40px;
}

/* project section  */
#projects {
    background-color: rgb(18, 132, 224);
    height: 800px;
    width: 100%;
}

#projects>h1 {
    text-align: center;
    margin-bottom: 40px;
    padding-top: 80px;
    color: white;
    font-size: 30px;
    /* text underline  */
    text-decoration: underline;
    text-underline-offset: 10px;
    text-decoration-color: rgb(0, 255, 115);
}

#project-all-in-one {
    display: flex;
    gap: 20px;
    justify-content: center;
}

#project-link-image>a {
    text-decoration: none;
    color: black;
}

#project-link-image {
    /* calling properties' name to make transition when hovering this element */
    transition: all 0.3s linear;
}

#project-link-image:hover {
    box-shadow: 1px 1px 3px 6px rgb(229, 149, 219);
    transform: scale(1.2);
}

#project-link-image:hover figcaption::before {
    /* \00a0 is to make sigle space before the content*/
    content: "<\00a0";
    color: red;
}

#project-link-image:hover figcaption::after {
    /* \00a0 is to make sigle space after the content*/
    content: "\00a0/ >";
    color: red;
}

#project-link-image>a>img {
    width: 400px;
    height: 300px;
    /* to avoid void space between image and figcaption */
    margin-bottom: -4px;
}

figcaption {
    background-color: rgb(119, 226, 142);
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 0;
}

/* footer section  */
#Contact {
    background-color: rgb(162, 192, 51);
    text-align: center;
    width: 100vw;
}

/* footer heading */
#footer-heading {
    width: 100%;
    padding-top: 20px;
    margin-bottom: 30px;
    height: 10%;
    color: rgb(42, 7, 240);
}

/* social media  */
#social-media {
    display: flex;
    justify-content: center;
    column-gap: 50px;
    margin-bottom: 20px;
}

#social-media a {
    text-decoration: none;
    color: rgb(32, 9, 235);
    font-size: 17px;
    transition: all 0.3s linear;
    user-select: none;
}

#social-media a:hover {
    opacity: 0.7;
    transform: scale(1.6);
}

/* horizontal line  */
hr {
    border: 2px solid rgb(241, 3, 209);
}

/* footer end  */
#footer-bottom {
    display: flex;
    justify-content: space-around;
    padding: 12px auto;
    height: 160px;
    align-items: center;
    font-size: 18px;
    color: rgb(32, 9, 235);
}


/* making responsive  */
@media only screen and (min-width: 4300px) {

    /* navigation section  */
     #projects {
        height: 2000px;
    }

}

@media only screen and (min-width: 551px) and (max-width: 1300px) {

    /* navigation section  */
    nav>a {
        font-size: 20px;
        padding: 15px 15px;
    }

    /* author section  */
    #author-intro {
        padding-top: 100px;
        height: 300px;
    }

    #author-intro>h1 {
        font-size: 40px;
    }

    #author-intro>h3 {
        font-size: 20px;
    }

    /* project section  */
    #projects {
        height: 2000px;
    }

    #project-all-in-one {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    #project-link-image>a>img {
        width: 600px;
        height: 500px;

    }

}

@media only screen and (min-width: 301px) and (max-width: 550px) {

    /* navigation section  */
    nav>a {
        font-size: 15px;
        padding: 8px 8px;
    }

    /* author section  */
    #author-intro {
        padding-top: 50px;
        height: 200px;
    }

    #author-intro>h1 {
        font-size: 22px;
    }

    #author-intro>h3 {
        font-size: 15px;
    }

    /* project section  */
    #projects {
        height: 900px;
    }

    #projects>h1 {
        font-size: 20px;
        padding-top: 40px;
    }

    #project-all-in-one {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    #project-link-image>a>img {
        width: 300px;
        height: 200px;

    }

    /* footer section  */
    #footer-heading {
        padding-top: 25px;
        height: 50px;
        font-size: 20px;
    }

    /* social media  */
    #social-media {
        column-gap: 15px;
    }

    /* horizontal line  */
    hr {
        border: 1px solid rgb(241, 3, 209);
    }

    /* footer end  */
    #footer-bottom {
        font-size: 11px;
    }

}


@media only screen and (max-width: 300px) {

    /* navigation section  */
    nav>a {
        font-size: 10px;
        padding: 6px 6px;
    }

    /* author section  */
    #author-intro {
        padding-top: 30px;
        height: 150px;
    }

    #author-intro>h1 {
        font-size: 15px;
    }

    #author-intro>h3 {
        font-size: 10px;
    }

    /* project section  */
    #projects {
        height: 600px;
    }

    #projects>h1 {
        font-size: 12px;
        padding-top: 20px;
    }

    #project-all-in-one {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    #project-link-image>a>img {
        width: 200px;
        height: 100px;

    }

    /* footer section  */
    #footer-heading {
        padding-top: 15px;
        height: 25px;
        font-size: 15px;
    }

    /* social media  */
    #social-media {
        column-gap: 10px;
    }

    /* horizontal line  */
    hr {
        border: 0.5px solid rgb(241, 3, 209);
    }

    /* footer end  */
    #footer-bottom {
        font-size: 6px;
        height: 30px;
    }

}