html {
    height: 100%;
}

body {
    height: 100%;
    margin: 0;

    background-color: #000;
    box-sizing: border-box;
    border: 2vh solid #fff;

    /* Text-Selektion deaktivieren */
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    font-size: 1.8vh;
    font-family: Roboto, sans-serif;
    font-weight: normal;
    text-shadow: #777 2px 2px 50px;
    color: #eee;
}

* {
    box-sizing: content-box;
}

h1 {
    color: rgba(255, 255, 255, 0.80);
    font-weight: 400;
    font-size: 7vmin;
    margin: 0vmin 0vmin 1vmin 0vmin;
}

h2 {
    color: rgba(255, 255, 255, 0.75);
    font-weight: 300;
    font-size: 4.5vmin;
    margin: 1vmin 0vmin 1vmin 0vmin;
}

a {
    color: rgba(244, 244, 244, 0.75);
}

a:hover {
    color: rgba(244, 244, 244, 0.99);
}

.arrow a{
    text-decoration: none;
    color: #000;
}

.arrow a:hover{
    color: rgba(69, 133, 211, 0.99);
}

.container:hover h1 {
    color: rgba(255, 255, 255, 1.00);
    text-decoration: none;
}

.container:hover h2 {
    color: #fff;
}

.container:hover #portrait {
    width: 26vh;
}

.container:hover {
    border: 1vmin solid rgba(244, 244, 244, 1);
    background-color: rgba(33, 65, 104, 0.7);
}

.no-decorator-link {
    color: inherit;
    text-decoration: none;
}

.container {
    color: #eee;
    background-color: rgba(33, 65, 104, 0.3);

    border-radius: 1vmin;
    border: 1vmin solid rgba(244, 244, 244, 0);
    transition: border 0.3s;
    transition: background-color 0.3s;

    padding: 7vmin;
    width: 60vmin;
    height: 45vh;

    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;

    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.footer {
    text-align: center;

    position: fixed;
    top: 90%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}


.arrow {
    font-size: 4vh;
    text-align: center;

    background-color: #eee;
    height: 6vh;
    width: 6vh;
    padding: 0px;

    border-radius: 100vh;

    position: fixed;
    top: 40px;
    left: 40px;

    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}



.bg-image {
    height: 100%;

    background-image: url(images/background.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    filter: blur(8px);
    -webkit-filter: blur(8px);

    box-shadow: 0px 0px 100px 50px #013 inset;
}

#portrait {
    position: static;
    margin: 3vmin 0vmin 0vmin 0vmin;
    width: 20vh;
    border-radius: 100vw;
    border: 0.5vmin solid #eee;
    transition: width 0.5s;
}
