:root {
    --main-bg: #d9d3d6;
    --about-bg: #fff;
    --accent-color: rgb(255, 68, 146);

    --img-width: 150px;
    --img-height: 150px;

    --container-width: 850px;
    --container-height: 375px;
}

* {
    font-family: 'Nunito', sans-serif;
    box-sizing: border-box;
}

html, body {
    width: 100%;
    height: 100%;
}

body {
    background-color: var(--main-bg);
    margin: 0;
}

a {
    text-decoration: none;
    color: black;
}

#content-box {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;

    height: 100%;
    width: 100%;
}

#about-container {
    display: flex;
    background-color: var(--about-bg);

    width: var(--container-width);
    height: var(--container-height);

    border-radius: 20px;
    border-style: dashed;
    border-width: 2px;
    border-color: var(--accent-color);
}

#about-entry-image {
    order: 1;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    width: 25%;

    border-right-style: dashed;
    border-color: rgb(112, 112, 112);
    border-radius: 20%;
    background-color: var(--about-bg);
}

#about-entry-text {
    order: 2;
    flex-grow: 3.5;
    padding: 20px;
}

#about-entry-text h2 {
    text-align: center;
    border-left-style: solid;
    border-width: 8px;
    border-color: var(--accent-color);
    text-shadow: 0px 0px 15px var(--accent-color);
}

#about-entry-image img {
    margin-left: auto;
    margin-right: auto;
    width: var(--img-width);
    height: var(--img-height);

    border-radius: 50%;
    box-shadow: 2px 2px 5px rgb(112, 112, 112);
}

#about-entry-image p {
    margin-top: 0;
    font-weight: lighter;
}

#about-entry-description {
    display: flex;
    flex-direction: column;
    justify-content: center;

    text-align: justify;
}


#links {
    display: flex;
    justify-content: space-between;
    align-content: center;

    margin-top: 10px;
    width: var(--container-width);
}

#links h1 {
    display: none;
}

.link-button {
    display: flex;
    align-items: center;

    width: auto;
    padding: 5px;
    border-radius: 10px;
    border: 1px solid transparent;
}

.link-button:hover {
    background-color: rgb(255, 255, 255);
    border: 1px solid var(--accent-color);
}

.link-button p {
    text-align: center;

    padding-left: 20px;
    padding-right: 20px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.link-button div {
    height: 35px;
}

.link-button img{
    width: 35px;
}


.hyperlink {
    text-decoration: none;
    color: rgb(0, 132, 255);
    text-shadow: 1px 1px black;
}

.hyperlink:hover {
    color: rgb(0, 132, 255);
    text-shadow: 1px 1px rgb(119, 119, 119);
}

.lang-reference {
    text-decoration: none;
    color: black;
}

.lang-reference:hover {
    color: rgb(90, 90, 90);
}

.css-line {
    width: 100%;
    height: 1px;
    border-width: 2px;
    border-top-style: solid;
    box-shadow: 1px 1px black;
}

@media (max-width: 850px) {
    #content-box {
        padding: 5px;
        height: auto;
    }

    #about-container {
        width: 100%;
        height: auto;
        flex-direction: column;
    }

    #about-entry-image {
        padding-top: 25px;
        width: 100%;
        border-style: none;
    }

    #about-entry-image p {
        font-size: 24px;
    }

    #links {
        flex-direction: row;
        width: 100%;
    }

    #links h1 {
        display: none;
        text-align: center;
    }

    .link-button {
        margin-bottom: 5px;
        height: 48px;
        width: 48px;
        font-size: 24px;
    }
}
