.splash {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 9999;
    background: hsl(204, 100%, 9%);
}

.splash.display-none {
    opacity: 0;
    z-index: -9999;
    transition: all 2s;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #000000;
}

@keyframes fadeIn {
    to {
        opacity: 1;
    }
}

::-webkit-scrollbar {
    width: 5px;
}

::-webkit-scrollbar-track {
    box-shadow: inset 0 0 3px grey;
    border-radius: 5px;
}

::-webkit-scrollbar-thumb {
    background: rgb(130, 130, 130);
    border-radius: 5px;
}

.dot {
    fill: var(--static-dot-color);
}

.dot--light {
    fill: var(--moving-dot-color);
    filter: url('#glow');
}

.dot--glowing {
    fill: var(--moving-dot-color);
    filter: url('#outer-glow');
}

.scanner {
    will-change: transform;
    animation: 3s scan 0s infinite linear both;
}

.circles {
    filter: url("#goo");
}

.centered {
    transform:
        translate(calc(45%),
            calc(20%));
}

@keyframes scan {
    from {
        transform: rotate(0deg) translateY(calc(var(--path-radius) * -1)) rotate(0deg);
    }

    to {
        transform: rotate(360deg) translateY(calc(var(--path-radius) * -1)) rotate(-360deg);
    }
}

@font-face {
    font-family: 'Neon';
    src: url('neon.eot');
    src: url('neon.eot?#iefix') format('embedded-opentype'),
        url('neon.woff') format('woff'),
        url('neon.ttf') format('truetype'),
        url('neon.svg#webfont') format('svg');
}

@font-face {
    font-family: 'Modern';
    src: url('modern.eot');
    src: url('modern.eot?#iefix') format('embedded-opentype'),
        url('modern.woff') format('woff'),
        url('modern.ttf') format('truetype'),
        url('modern.svg#webfont') format('svg');
}

.icon {
    left: 0%;
    width: 2vw;
    padding-top: 10%;
}

.left-underline,
.mid-underline,
.right-underline,
.ig-underline,
.git-underline,
.link-underline {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
    overflow: hidden;
}

.left-underline:before,
.link-underline:before {
    background: linear-gradient(90deg, #2b00ff, #001aff, #0099ff, #00c3ff);
}

.mid-underline:before {
    background: linear-gradient(90deg, #00ff62, #15ff00, #00ff7b, #00ff6a);
}

.git-underline:before {
    background: linear-gradient(90deg, #1e1d1f, #322333, #571258, #690f86);
}

.right-underline:before{
    background: linear-gradient(90deg, #915c00, #9f8f00, #b9cd00, #ffff00,#ffff00,#ffff00);
}

.ig-underline:before{
    background: linear-gradient(90deg, #7b00ff, #e100ff, #ff00b7, #ff85d0);
}

.left-underline:before,
.mid-underline:before,
.right-underline:before,
.ig-underline:before,
.git-underline:before,
.link-underline:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 100%;
    bottom: 0;
    background-size: 500% 100%;
    -webkit-transition-property: right;
    transition-property: right;
    -webkit-transition-duration: 0.50s;
    transition-duration: 0.50s;
    -webkit-animation: fot 3s ease infinite;
    -moz-animation: fot 3s ease infinite;
    -o-animation: fot 3s ease infinite;
    animation: fot 3s ease infinite;
}

.left-underline:before,
.mid-underline:before,
.right-underline:before {
    height: 15%;
}

.ig-underline:before,
.git-underline:before,
.link-underline:before {
    height: 100%;
}

.left-underline:hover:before,
.left-underline:focus:before,
.left-underline:active:before,
.mid-underline:hover:before,
.mid-underline:focus:before,
.mid-underline:active:before,
.right-underline:hover:before,
.right-underline:focus:before,
.right-underline:active:before,
.ig-underline:hover:before,
.ig-underline:focus:before,
.ig-underline:active:before,
.link-underline:hover:before,
.link-underline:focus:before,
.link-underline:active:before,
.git-underline:hover:before,
.git-underline:focus:before,
.git-underline:active:before {
    right: 0;
}

div.navbar {
    position: fixed;
    scroll-margin-top: initial;
    bottom: 0;
    left: 0;
    width: 100%;
    -webkit-box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.9);
    -moz-box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.9);
    box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.9);
    z-index: 100;
}

div.navbar>ul.navbar-container {
    list-style-type: none;
    margin: 0;
    padding-left: 0vw;
    padding-right: 0vw;
    overflow: hidden;
}

div.navbar>ul>li.nav-item {
    float: left;
    background-color: rgba(0, 0, 0, 0.2);
    transition: all 0.5s ease;
}

div.navbar>ul>li.active {
    background-color: rgba(0, 0, 0, 0.3);
}

div.navbar>ul>li:hover {
    background-color: rgba(0, 0, 0, 0.5);
}

a.nav-button {
    font-family: 'Neon';
    font-size: 2vw;
    text-decoration: none;
    line-height: 150%;
    width: 29.15vw;
    color: rgb(255, 255, 255);
    text-align: center;
    transition: all 0.5s ease;
}

a.nav-button-icon {
    line-height: 200%;
    width: 4vw;
    text-align: center;
    transition: all 0.5s ease;
}

.particles {
    display: block;
    position: sticky;
    top: -5vh;
}

/* ---- particles.js container ---- */
#particles-js {
    position: sticky;
    width: 100vw;
    height: 100vh;
    background-position: 50vh 50vw;
    z-index: 0;
}

@-webkit-keyframes fot {
    0% {
        background-position: 0% 50%
    }

    50% {
        background-position: 100% 50%
    }

    100% {
        background-position: 0% 50%
    }
}

@-moz-keyframes fot {
    0% {
        background-position: 0% 50%
    }

    50% {
        background-position: 100% 50%
    }

    100% {
        background-position: 0% 50%
    }
}

@-o-keyframes fot {
    0% {
        background-position: 0% 50%
    }

    50% {
        background-position: 100% 50%
    }

    100% {
        background-position: 0% 50%
    }
}

@keyframes fot {
    0% {
        background-position: 0% 50%
    }

    50% {
        background-position: 100% 50%
    }

    100% {
        background-position: 0% 50%
    }
}

.txt {
    height: 20vw;
    width: 40vw;
    padding-top: 2vh;
    padding-left: 2vw;
    padding-right: 2vw;
    font-family: system-ui;
    font-size: 1.3vw;
    text-decoration: none;
}

.quote,
.txt{
    border-radius: 10px;
    transition: all 0.6s;
    text-align: center;
    color: #ffffff;
    position: absolute;
    background-color: rgba(255, 255, 255, 0.2);
    -webkit-backdrop-filter: blur(30px);
    backdrop-filter: blur(30px);
    display: block;
    z-index: 2;
    -webkit-box-shadow: 0px 2px 6px 0px rgba(50, 50, 50, 0.75);
    -moz-box-shadow: 0px 2px 6px 0px rgba(50, 50, 50, 0.75);
    box-shadow: 0px 2px 6px 0px rgba(50, 50, 50, 0.75);
}

.copyright {
    position: absolute;
    color: #ffffff;
}