* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: cursive;
}

body {
    display: flex;
    flex: 0 0 100%;
    margin-left: 0px;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: #111;
}

h2 {
    display: flex;
    color: transparent;
    font-size: 10vh;
    -webkit-box-reflect: below -45px linear-gradient(transparent,#0004);
}

h2 span {
    animation: animate 3s linear infinite;
    animation-delay: calc(0.1s * var(--i));
}

@keyframes animate {
    0% {
        color:#fff ;
        filter: hue-rotate(0deg);
        text-shadow: 0 0 10px rgb(40, 151, 202) ,
        0 0 20px rgb(40, 151, 202),
        0 0 40px rgb(40, 151, 202) ,
        0 0 80px rgb(40, 151, 202) ,
        0 0 120px rgb(40, 151, 202) ,
        0 0 200px rgb(40, 151, 202),
        0 0 300px rgb(40, 151, 202),
        0 0 400px rgb(40, 151, 202);
    }
    30%,70% {
        color: #fff;
        filter: hue-rotate(360deg);
        text-shadow: 0 0 10px rgb(40, 151, 202) ,
        0 0 20px rgb(40, 151, 202),
        0 0 40px rgb(40, 151, 202) ,
        0 0 80px rgb(40, 151, 202) ,
        0 0 120px rgb(40, 151, 202) ,
        0 0 200px rgb(40, 151, 202);
    }
    100% {
        color: transparent;
        box-shadow: none;
        filter: hue-rotate(0deg);
    }
}

@media (max-width:767px){
    h2 {

        font-size: 5vh;
    }
}