html, body {
    margin: 0;
    padding: 0;
    font-family: 'Gugi', cursive;
}

.outer-main {
    height: 100vh;
    width: 100vw;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main {
    max-width: 620px;
    margin: auto;
}

.greetings-aliens {
    color: #2d79c3;
    font-size: 5rem;
    text-align: center;
    -webkit-animation: text-flicker-out-glow 2s linear infinite both;
    -moz-animation: text-flicker-out-glow 2s linear infinite both;
    animation: text-flicker-out-glow 2s linear infinite both;
}














@-webkit-keyframes text-flicker-out-glow {
    0% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.6), 0 0 60px rgba(126, 163, 255, 0.45), 0 0 110px rgba(169, 215, 255, 0.25), 0 0 100px rgba(126, 163, 255, 0.1);
    }
    13.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.6), 0 0 60px rgba(126, 163, 255, 0.45), 0 0 110px rgba(126, 163, 255, 0.25), 0 0 100px rgba(126, 163, 255, 0.1);
    }
    14% {
        opacity: 0;
        text-shadow: none;
    }
    14.9% {
        opacity: 0;
        text-shadow: none;
    }
    15% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.4), 0 0 110px rgba(105, 133, 255, 0.2), 0 0 100px rgba(105, 133, 255, 0.1);
    }
    22.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.4), 0 0 110px rgba(105, 133, 255, 0.2), 0 0 100px rgba(105, 133, 255, 0.1);
    }
    23% {
        opacity: 0;
        text-shadow: none;
    }
    24.9% {
        opacity: 0;
        text-shadow: none;
    }
    25% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.35), 0 0 100px rgba(105, 133, 255, 0.1);
    }
    34.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.35), 0 0 100px rgba(105, 133, 255, 0.1);
    }
    35% {
        opacity: 0;
        text-shadow: none;
    }
    39.9% {
        opacity: 0;
        text-shadow: none;
    }
    40% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.35);
    }
    42.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.35);
    }
    43% {
        opacity: 0;
        text-shadow: none;
    }
    44.9% {
        opacity: 0;
        text-shadow: none;
    }
    45% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.45), 0 0 60px rgba(105, 133, 255, 0.25);
    }
    50% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.45), 0 0 60px rgba(105, 133, 255, 0.25);
    }
    54.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.45), 0 0 60px rgba(105, 133, 255, 0.25);
    }
    55% {
        opacity: 0;
        text-shadow: none;
    }
    69.4% {
        opacity: 0;
        text-shadow: none;
    }
    69.5% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.45), 0 0 60px rgba(105, 133, 255, 0.25);
    }
    69.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.45), 0 0 60px rgba(105, 133, 255, 0.25);
    }
    70% {
        opacity: 0;
        text-shadow: none;
    }
    79.4% {
        opacity: 0;
        text-shadow: none;
    }
    79.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.25);
    }
    80% {
        opacity: 0;
        text-shadow: none;
    }
    89.8% {
        opacity: 0;
        text-shadow: none;
    }
    89.9% {
        opacity: 1;
        text-shadow: none;
    }
    90% {
        opacity: 0;
        text-shadow: none;
    }
    100% {
        opacity: 0;
    }
}
@keyframes text-flicker-out-glow {
    0% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.6), 0 0 60px rgba(105, 133, 255, 0.45), 0 0 110px rgba(105, 133, 255, 0.25), 0 0 100px rgba(105, 133, 255, 0.1);
    }
    13.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.6), 0 0 60px rgba(105, 133, 255, 0.45), 0 0 110px rgba(105, 133, 255, 0.25), 0 0 100px rgba(105, 133, 255, 0.1);
    }
    14% {
        opacity: 0;
        text-shadow: none;
    }
    14.9% {
        opacity: 0;
        text-shadow: none;
    }
    15% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.4), 0 0 110px rgba(105, 133, 255, 0.2), 0 0 100px rgba(105, 133, 255, 0.1);
    }
    22.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.4), 0 0 110px rgba(105, 133, 255, 0.2), 0 0 100px rgba(105, 133, 255, 0.1);
    }
    23% {
        opacity: 0;
        text-shadow: none;
    }
    24.9% {
        opacity: 0;
        text-shadow: none;
    }
    25% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.35), 0 0 100px rgba(105, 133, 255, 0.1);
    }
    34.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.35), 0 0 100px rgba(105, 133, 255, 0.1);
    }
    35% {
        opacity: 0;
        text-shadow: none;
    }
    39.9% {
        opacity: 0;
        text-shadow: none;
    }
    40% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.35);
    }
    42.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.55), 0 0 60px rgba(105, 133, 255, 0.35);
    }
    43% {
        opacity: 0;
        text-shadow: none;
    }
    44.9% {
        opacity: 0;
        text-shadow: none;
    }
    45% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.45), 0 0 60px rgba(105, 133, 255, 0.25);
    }
    50% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.45), 0 0 60px rgba(105, 133, 255, 0.25);
    }
    54.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.45), 0 0 60px rgba(105, 133, 255, 0.25);
    }
    55% {
        opacity: 0;
        text-shadow: none;
    }
    69.4% {
        opacity: 0;
        text-shadow: none;
    }
    69.5% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.45), 0 0 60px rgba(105, 133, 255, 0.25);
    }
    69.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.45), 0 0 60px rgba(105, 133, 255, 0.25);
    }
    70% {
        opacity: 0;
        text-shadow: none;
    }
    79.4% {
        opacity: 0;
        text-shadow: none;
    }
    79.9% {
        opacity: 1;
        text-shadow: 0 0 30px rgba(105, 133, 255, 0.25);
    }
    80% {
        opacity: 0;
        text-shadow: none;
    }
    89.8% {
        opacity: 0;
        text-shadow: none;
    }
    89.9% {
        opacity: 1;
        text-shadow: none;
    }
    90% {
        opacity: 0;
        text-shadow: none;
    }
    100% {
        opacity: 0;
    }
}