html,
body {
    width: 100%;
    height: 100vh;
    margin: 0;
    padding: 0;
    font-family: 'Space Mono';
    background: rgb(244, 244, 244);
}

.navigation {
    padding: 10px 0 0 0;
    height: 45px;
    opacity: 0;
    display: 'none';
    transition: opacity 0.2s ease-in;
}

/* Logo and branding */
.favicon {
    position: fixed;
    padding: 0 0 0 20px;
    float: left;
    line-height: 45px;
    font-size: calc(1.2vh + 15px);
}

.nav-container {
    max-width: 1085px;
    margin: 0 auto;
}

nav {
    float: right;
}

.nav-list {
    margin: 0;
    padding: 0 20px;
    display: flex;
    position: relative;
    line-height: 45px;
}

.me,
.website,
.contact,
.instagram {
    list-style: none;
    padding: 0 20px;
    font-size: calc(0.8vh + 8px);
}

.instagram {
    position: absolute;
    top: 90%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    display: 'none';
    transition: opacity 0.6s ease-in;
}

a,
a:visited {
    text-decoration: none;
    color: rgb(55, 55, 55);
}

a:hover {
    color: crimson;
}

.htmlme,
.htmlwebsite,
.htmlcontact,
.htmlinstagram {
    max-width: 660px;
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: rgb(55, 55, 55);
    font-size: calc(0.8vh + 8px);
}

.underline {
    padding: 0;
    border-bottom: 1px solid crimson;
}

p {
    padding: 20px 0 0 0;
}

.container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: rgb(55, 55, 55);
    font-size: calc(0.8vh + 8px);
    opacity: 0;
    display: 'none';
    transition: opacity 3s ease-in;
}

.stack {
    display: grid;
    grid-template-columns: 1fr;
}

.stack span {
    grid-row-start: 1;
    grid-column-start: 1;
    font-size: calc(4vh + 8px);
    --stack-height: calc(100% / var(--stacks) - 1px);
    --inverse-index: calc(calc(var(--stacks) - 1) - var(--index));
    --clip-top: calc(var(--stack-height) * var(--index));
    --clip-bottom: calc(var(--stack-height) * var(--inverse-index));
    clip-path: inset(var(--clip-top) 0 var(--clip-bottom) 0);
    animation: glitch 2500ms ease infinite 1000ms alternate-reverse;
}

.stack span:nth-child(odd) {
    --glitch-translate: 10px;
}

.stack span:nth-child(even) {
    --glitch-translate: -10px;
}




@keyframes glitch {
    0% {
        text-shadow: -2px 3px 0 magenta, 2px -3px 0 black;
        transform: translate(var(--glitch-translate));
    }

    2% {
        text-shadow: 2px -3px 0 magenta, -2px 3px 0 black;
    }

    3%,
    4% {
        text-shadow: none;
        transform: none;
    }

    5% {
        text-shadow: -2px 3px 0 greenyellow, 2px -3px 0 black;
        transform: translate(var(--glitch-translate));
    }

    6% {
        text-shadow: 2px -3px 0 greenyellow, -2px 3px 0 black;
    }

    8%,
    49% {
        text-shadow: none;
        transform: none;
    }

    50% {
        text-shadow: -2px 3px 0 magenta, 2px -3px 0 black;
        transform: translate(var(--glitch-translate));
    }

    52% {
        text-shadow: 2px -3px 0 magenta, -2px 3px 0 black;
    }

    54%,
    100% {
        text-shadow: none;
        transform: none;
    }
}




/* space-mono-regular - latin */
@font-face {
    font-family: 'Space Mono';
    font-style: normal;
    font-weight: 400;
    src: url('/assets/space-mono-v12-latin-regular.eot');
    /* IE9 Compat Modes */
    src: local(''),
        url('/assets/space-mono-v12-latin-regular.eot?#iefix') format('embedded-opentype'),
        /* IE6-IE8 */
        url('/assets/space-mono-v12-latin-regular.woff2') format('woff2'),
        /* Super Modern Browsers */
        url('/assets/space-mono-v12-latin-regular.woff') format('woff'),
        /* Modern Browsers */
        url('/assets/space-mono-v12-latin-regular.ttf') format('truetype'),
        /* Safari, Android, iOS */
        url('/assets/space-mono-v12-latin-regular.svg#SpaceMono') format('svg');
    /* Legacy iOS */
}