/* https://codepen.io/blazicke/pen/dQjxMr */

.el-st {
    /*letter-spacing: 4px; */
}

.el-sp.is-changing {
    animation: changing 0.1s infinite;
}

.el-sp {
    transition: all 0.1s;
    position: relative;
    will-change: transform, opacity;
}

.el-sp:after {
    content:attr(data-txt);
    color:#eee;
    position: absolute;
    top: 0;
    left:0;
    opacity:0;
    will-change: transform, opacity;
}

.el-sp.is-changing:after {
    animation: changingAfter 0.4s infinite alternate;
}

.scroll {
    margin-top: 40px;
    display: inline-block;
    padding-bottom: 3px; 
    padding-right: 40px;
    position: relative;
}

.scroll:after {
    content:'';
    position: absolute;
    left: calc(100% - 35px);
    top: 0;
    animation: dots 2s infinite;
}

@keyframes changing {
    0% {opacity:1;}
    50% {opacity:0.5;}
    100% {opacity:1;}
}

@keyframes changingAfter {
    0% {opacity:0.3;transform:translateX(10px) scaleX(2)}
    50% {opacity:0;transform:translateX(0) scaleX(2)}
    100% {opacity:0.3;transform:translateX(-10px) scaleX(2)}
}

@keyframes dots {
    0% {content:''}
    25% {content:'.'}
    50% {content:'..'}
    75% {content:'...'}
}