html,
body {
    margin: 0;
    min-height: 100vh;
}

canvas {
    display: block;
    vertical-align: bottom;
}

@keyframes spaceLetters {
    0% {
        opacity: 0;
        letter-spacing: normal;
    }
    100% {
        opacity: 1;
        letter-spacing: 1.7rem;
    }
}

@keyframes floatIn {
    0% {
        opacity: 0;
        transform: translateY(1.5rem);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

h1 {
    margin: 0;
    opacity: 0;
    font-size: 4vmax;
    font-family: "Raleway", sans-serif;
    font-weight: 100;
    color: #1db954;
    animation: spaceLetters 1.3s ease-out 0s normal forwards;
}

p {
    opacity: 0;
    font-size: 1.5rem;
    font-family: "Raleway", sans-serif;
    font-weight: 200;
    color: #fff;
    animation: floatIn 0.7s ease-out 0.7s normal forwards;
}

a {
    text-decoration: none;
    color: #fff;
}

button {
    height: 3rem;
    width: 12rem;
    margin: 0.5rem;
    border: 0;
    border-radius: 8px;
    background-color: #000;
    font-size: 1.2rem;
    font-family: "Raleway", sans-serif;
    font-weight: 200;
    color: #fff;
}

button:hover {
    box-shadow: 0 0 12px 2px #1db954;
    transform: translateY(-0.2rem);
    text-decoration: underline;
    letter-spacing: 0.1rem;
    transition: all 0.3s ease-out;
}

joemama {
    letter-spacing: normal !important;
}

.nav {
    margin-top: 2rem;
    width: 100%;
}

.git {
    opacity: 0;
    animation: floatIn 0.7s ease-out 0.9s normal forwards;
}

.coms {
    opacity: 0;
    animation: floatIn 0.7s ease-out 1.2s normal forwards;
}

.title {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    align-items: center;
}

#particles-js {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #121212;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%;
}
