.glitch{position:relative}.glitch:after,.glitch:before{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;background:#f0f0f0}.glitch:before{left:4px;text-shadow:-4px 0 #ff4d4d;clip:rect(44px,450px,56px,0);animation:glitch-anim-1 2s linear infinite alternate-reverse}.glitch:after{left:-4px;text-shadow:-4px 0 #4d4dff;clip:rect(44px,450px,56px,0);animation:glitch-anim-2 2s linear infinite alternate-reverse}@keyframes glitch-anim-1{0%{clip:rect(32px,9999px,58px,0)}20%{clip:rect(8px,9999px,14px,0)}40%{clip:rect(42px,9999px,49px,0)}60%{clip:rect(98px,9999px,115px,0)}80%{clip:rect(63px,9999px,17px,0)}to{clip:rect(2px,9999px,80px,0)}}@keyframes glitch-anim-2{0%{clip:rect(100px,9999px,120px,0)}20%{clip:rect(80px,9999px,44px,0)}40%{clip:rect(10px,9999px,2px,0)}60%{clip:rect(60px,9999px,88px,0)}80%{clip:rect(5px,9999px,60px,0)}to{clip:rect(90px,9999px,2px,0)}}.typewriter{overflow:hidden;border-right:4px solid black;white-space:nowrap;animation:typing 3s steps(40),blink-caret .75s step-end infinite}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:black}}