* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

:root {
    --bg-color: #111827;
    --primary-color: #0d0d0d;
    --text-color: #E5E7EB;
    --scrollbar-color: gray;
    --content-width: 90%;
    --max-content-width: 900px;
    scrollbar-color: var(--scrollbar-color) var(--bg-color);
}

body {
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    background-color: var(--bg-color);
    color: var(--text-color);
}

header nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

header nav b {
    padding: 14px 16px;
    margin: 0;
    display: block;
    text-align: center;
}

header nav ul {
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
}

header nav ul li {
    float: none;
}

header nav ul li a {
    display: block;
    color: var(--text-color);
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
    border-radius: 10px;
    transition: background-color 0.2s;
}

header ul li a:hover {
    background-color: var(--primary-color);
}

main {
    display: flex;
    align-items: center;
    flex-direction: column;
}

section.about-me {
    text-align: center;
    width: var(--content-width);
    max-width: var(--max-content-width);
}

section.project {
    background-color: var(--primary-color);
    border-radius: 20px;
    padding: 10px 20px 20px;
    width: var(--content-width);
    max-width: var(--max-content-width);
    margin-bottom: 20px;
}

section.project a {
    color: var(--text-color);
}

section.project-links {
    display: flex;
    justify-content: space-between;
}

section.project-links img {
    width: 300px;
    padding: 20px;
    display: block;
    margin: auto;
}

div.project-gallery {
    overflow: auto;
    scrollbar-color: var(--scrollbar-color) var(--primary-color);
    white-space: nowrap;
}

div.project-gallery img {
    height: 200px;
    border-radius: 20px;
    margin-right: 5px;
}

footer {
    text-align: center;
}

section.links {
    width: var(--content-width);
    max-width: 300px;
}

a.link {
    background-color: var(--primary-color);
    color: var(--text-color);
    text-decoration: none;
    padding: 20px;
    border-radius: 20px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

a.link span {
    padding: 5px;
}

section.contacts {
    display: flex;
}

section.contacts a img {
    background-color: var(--primary-color);
    width: 100px;
    padding: 20px;
    border-radius: 100%;
    margin: 5px
}

@media (max-width: 800px) {
    section.project-links {display:block}
}

@media (max-width: 450px) {
    header nav {flex-direction: column;}
    section.project-links img {width: 75%;}
    div.project-gallery img {height: 150px}
    section.contacts {flex-direction: column;}
}