
* {
    padding: 0px;
    margin: 0px;
}

html {
    background: #2e3440;
    width: 100%;
    height: 100%;
}

body {
    background: #e5e9f0;
    color: black;

    width: 100%;
    height: auto;
}

nav {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    align-items: center;

    padding: 4px;

    font-size: 20px;
    font-family: sans-serif;
    font-weight: 750;

    background: #2e3440;
    color: white;
}

nav > .nav-item {
    padding: 8px;
    border-radius: 4px;
    text-decoration: none;
    color: white;
}

nav > .nav-item:hover {
    background-color: #4c566a;
}

div.banner {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;

    height: 16vw;
    min-height: 20vh;

    font-size: 32px;
    font-family: sans-serif;
    font-weight: 600;

    background: linear-gradient(to bottom right, #bf616a, #ebcb8b);
    color: white;
}

section.tools {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;

    height: 50vw;
    min-height: 384;
    max-height: 512px;
}

section > div.content {
    width: 50%;
}

section > div.interactive {
    display: flex;
    flex-direction: row;

    width: 50%;
    align-self: right;

    overflow: hidden;

    border: 1px solid #bac2d1;
    border-radius: 8px;
    background-color: white;
    color: black;
}

main > section > div.interactive > header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    width: 100%;
    height: 32px;

    font-size: 16px;
    font-family: sans-serif;
    font-weight: 600;

    background: #3b4252;
    color: white;
}

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

    width: 87.5%;

    background-color: #eceff4;
}

main > section {
    max-width: 64em;

    padding: 32px;
}

main > section > h1 {
    margin-top: 24px;
    margin-left: 2em;
    font-family: sans-serif;
}

main > section > .content {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;

    width: auto;
    height: auto;
}

main > section > .content > .skill {
    background: #d8dee9;
    margin: 16px;
    padding: 16px;

    width: 33vw;
    min-width: 256px;
    max-width: 384px;
    height: 80px;

    border-radius: 8px;
}

.skill > .skill-name {
    font-family: sans-serif;
    font-size: 24px;
}

.hcenter {
    display: flex;
    flex-direction: column;
    align-items: center;

    width: 100%;
}
