@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif:ital,wght@0,400;0,700;1,400;1,700&display=swap');

* {
    box-sizing: border-box;
}

:root {
    --text1: #ffffff;
    --text2: #eeeeee;
    --background: #00000080;
}

body {
    margin: 0;

    font-family: "Noto Sans";
    font-size: 15px;
    text-align: justify;
    color: #eeeeee;
    text-shadow: 2px 2px 2px #000000;

    background: url("background.jpg") center no-repeat;
    background-size: cover;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "Noto Serif";
    text-align: center;
    margin-bottom: 1em;
}

a {
    color: inherit;
    transition: color 200ms ease;
}

a:hover {
    color: #cccccc;
}

.container {
    width: 100%;
    min-height: 100vh;
    display: grid;
    place-items: center;
}

.content {
    width: 100vw;
    max-width: 1200px;
    padding: 30px;

    background: #00000080;
    border-radius: 8px;

    display: flex;
    flex-wrap: wrap;
    gap: 50px;
}

.left {
    flex: 35 1 350px;
}

.right {
    flex: 65 1 650px;
}

.left, .right {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: space;
    justify-content: space-between;
    align-items: center;
}

.columns300 {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.columns200 {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.avatar {
    width: 100px;
    border-radius: 50%;
    border: 1px solid #00000080;
}

.project {
    padding: 10px 12px;

    font-size: 12px;
    cursor: default;

    background: #00000080;
    border-radius: 8px;
}

.list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

.list > div {
    position: relative;
    padding: 10px 12px;

    font-size: 12px;
    cursor: default;

    background: #00000080;
    border-radius: 8px;
}

.list > div > div {
    position: absolute;
    left: 50%;
    padding: 20px;
    width: 400px;
    z-index: 100;
    
    font-size: 12px;
    text-align: center;
    background: #000000c0;
    border-radius: 8px;
    pointer-events: none;

    transition: visibility 200ms, opacity 200ms, transform 200ms ease;
    visibility: hidden;
    opacity: 0;
    transform-origin: top;
    transform: translate(-50%, 0) scale(0.9);
}

.list > div:hover > div {
    visibility: visible;
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
}

@media screen and (max-width: 1200px) {
    .content {
        border-radius: 0;
    }
}