/* General style */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    background-color: rgb(25, 24, 24);
    color:rgb(235, 237, 239);
}

hr {
    height: 2px;
    width: 100%;
}

/* Header section */

nav {
    display: flex;
    align-items: center;
    padding: 14px 0;
}

.navigation-header {
    margin-left: 50px;
}

.navigation-bar {
    display: flex;
    list-style-type: none;
    align-items: center;
    padding: 0;
    margin: 0;
    margin-left: auto;
}

.navigation-bar ul {
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0;
    padding-inline-start: 40px;
}

.navigation-item {
    margin-right: 2rem;
    font-weight: bolder;
}

.navigation-item li {
    display: list-item;
}

.navigation-item a {
    text-decoration: none;
    color:rgb(235, 237, 239);
    font-weight: 800px;
}

.navigation-item {
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0% 2px;
    transition: background-size .3s;
}

.navigation-item:hover,
.navigation-item:focus {
    background-size: 100% 2px;
}

/* LV Picture */

.lv-image {
    width: 100%;
    height: 700px;
}

/* About Me */

.about-me-container {
    font-weight: bold;
    text-align: center;
}

.image-row {
    display: flex;
}

.image-column {
    flex: 33.33%;
    padding: 5px;
}

/* Projects */

.projects-header {
    text-align: center;
}

.projects-container {
    text-align: center;
}

.project-title {
    cursor: pointer;
    margin-top: 1rem;
}

.project-image {
    height: 400px;
    width: auto;
    margin-top: 0.5rem;
}

.project-code a {
    text-decoration: none;
    color:rgb(235, 237, 239);
    font-weight: 800px;
}

.project-code a:hover {
    opacity: 0.4;
}

@media only screen and (max-width: 900px) {
    .project-image {
        width: 450px;
    }
}

/* Skills */

.skills-header {
    text-align: center;
}

.skills-container {
    font-size: 3em;
    width: 28%;
    margin-top: 8px;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.skills-icon {
    padding-left: 6px;
}

/* Contact */

.contact-header {
    text-align: center;
}

.contact-message-me {
    font-size: 20px;
    text-align: center;
    font-weight: bold;
}

.contact-icon {
    font-size: 3em;
    width: 3em;
    margin-right: 10px;
    color: rgb(235, 237, 239);
    opacity: 100%;
    transition: opacity 0.5s;
}

.contact-icon:hover {
    opacity: 0.3;
}

.contact-icons {
    display: block;
    margin-left: auto;
    margin-right: 50px;
    margin-bottom: 1rem;
    width: 50%;
}

/* Footer */

footer {
    text-align: center;
    font-weight: bold;
    font-size: 16px;
    margin-top: 10px;
    margin-bottom: 10px;
}

/* Back To Top Button */

.back-to-top {
    position: fixed;
    right: 2rem;
    bottom: 2rem;
    border-radius: 100%;
    background: rgb(235, 237, 239);
    padding: 0.5rem;
    border: none;
    cursor: pointer;
    opacity: 100%;
    transition: opacity 0.5s;
}

.hidden {
    opacity: 0%;
}

.back-to-top-icon {
    width: 1rem;
    height: 1rem;
    color: rgb(25, 24, 24);
}

.back-to-top:hover {
    opacity: 60%;
}