html,
body {
    font-family: Arial, Helvetica, sans-serif;
    margin: 0;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

a,
a:visited,
a:hover,
a:active {
    color: inherit;
}

.main-container {
    background: linear-gradient(to bottom, #4561ff85, #6deafaba), #78c2c4;
    /* background: linear-gradient(to bottom, #4561ff85, #6deafaba), url("../images/background.png") no-repeat center center fixed; */
    /* Auto fit background */
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    height: 100%;
    width: 100%;
    position: fixed;
}

.floating-nav {
    background-image: linear-gradient(to right, #000000b2, #ffffff00);
    width: 7rem;
    z-index: 100;
    position: absolute;
    height: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    font-weight: 700;
    opacity: 0.6;
    -webkit-transition: opacity 1.2s ease-in-out;
    -moz-transition: opacity 1.2s ease-in-out;
    -o-transition: opacity 1.2s ease-in-out;
    transition: opacity 1.2s ease-in-out;
}

.floating-nav:hover {
    opacity: 1;
}

.floating-nav a {
    font-size: 1rem;
    padding: 1rem 0.5rem;
    margin: 1rem 0;
    text-decoration: none;
    display: block;
    color: white;
}

.self-intro {
    position: fixed;
    top: 50%;
    left: 50%;
    padding: 1rem;
    width: 20rem;
    margin: -10rem 0 0 -11rem;
    border: #ffffffaa 2px solid;
    border-radius: 2rem;
}

.self-intro *:not(:last-child) {
    padding-bottom: 0.5rem;
    border-bottom: #ffffffaa 1px solid;
}

.self-intro-avatar {
    width: 7rem;
    height: 7rem;
    margin: auto;
    border-radius: 50%;
    border: none !important;
    display: block;
}

.self-intro h1 {
    font-size: 3rem;
    color: #eee;
    margin: 0.5rem;
    text-align: center;
}

.self-intro-desc {
    font-size: 1.2rem;
    color: #eee;
}

.self-intro ul {
    display: flex;
    width: 70%;
    margin: 1rem auto 0 auto;
    padding: 0;
    justify-content: space-between;
}

.self-intro ul li {
    display: inline-block;
    height: 2rem;
    width: 2rem;
    list-style: none;
    border: none !important;
    color: #1e88a8;
    font-size: 2rem;
}

@media screen and (max-width: 750px) {
    .self-intro {
        width: 16rem;
        margin: -10rem 0 0 -9rem;
    }

    .floating-nav {
        height: 4rem;
        width: 100%;
        flex-direction: row;
        background-image: linear-gradient(to bottom, #000000b2, #ffffff00);
    }
}

@media (orientation: landscape) {
    .self-intro {
        width: 30rem;
        margin: -10rem 0 0 -16rem;
    }
}