.glitch::before,
.glitch::after,
.glitch .channel {
	background: inherit;
	background-size: cover;
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.glitch::before {
	animation: glitch-before 3s linear infinite alternate both;
	content: "";
}

@keyframes glitch-before {
	0% {
		clip-path: polygon(0% 71.3464248214%, 100% 71.3464248214%, 100% 75.6009951774%, 0% 75.6009951774%);
		transform: translate(-4.6596438656%, -0.2909801768%);
	}

	2% {
		clip-path: polygon(0% 83.1375781487%, 100% 83.1375781487%, 100% 92.1859478124%, 0% 92.1859478124%);
		transform: translate(-5.3905904194%, -0.2444915118%);
	}

	4% {
		clip-path: polygon(0% 22.1978474589%, 100% 22.1978474589%, 100% 25.2460447751%, 0% 25.2460447751%);
		transform: translate(7.3989581094%, 0.2317358812%);
	}

	6% {
		clip-path: polygon(0% 46.3878372539%, 100% 46.3878372539%, 100% 51.1970035646%, 0% 51.1970035646%);
		transform: translate(-7.5805761135%, 0.4717660631%);
	}

	8% {
		clip-path: polygon(0% 55.4158479084%, 100% 55.4158479084%, 100% 60.8603144935%, 0% 60.8603144935%);
		transform: translate(4.8646072009%, -0.1299342005%);
	}

	10% {
		clip-path: polygon(0% 62.9983748645%, 100% 62.9983748645%, 100% 65.6585150028%, 0% 65.6585150028%);
		transform: translate(-7.7875506921%, 0.4647165363%);
	}

	12% {
		clip-path: polygon(0% 34.8527375436%, 100% 34.8527375436%, 100% 36.0342260692%, 0% 36.0342260692%);
		transform: translate(-6.8425322431%, 0.3685921179%);
	}

	14% {
		clip-path: polygon(0% 52.5363995481%, 100% 52.5363995481%, 100% 61.6443222336%, 0% 61.6443222336%);
		transform: translate(7.2799368479%, 0.1152170373%);
	}

	16% {
		clip-path: polygon(0% 77.1995297407%, 100% 77.1995297407%, 100% 78.6849600026%, 0% 78.6849600026%);
		transform: translate(1.919543241%, -0.4874008222%);
	}

	18% {
		clip-path: polygon(0% 26.4609021561%, 100% 26.4609021561%, 100% 30.4340708889%, 0% 30.4340708889%);
		transform: translate(-7.1619738136%, 0.2947564807%);
	}

	20%,
	100% {
		clip-path: none;
		transform: none;
	}
}

.glitch::after {
	animation: glitch-after 3s linear infinite alternate both;
	content: "";
}

@keyframes glitch-after {
	0% {
		clip-path: polygon(0% 46.0406935065%, 100% 46.0406935065%, 100% 50.0679472275%, 0% 50.0679472275%);
		transform: translate(-1.301582815%, -0.0924098094%);
	}

	2% {
		clip-path: polygon(0% 57.1051057138%, 100% 57.1051057138%, 100% 60.5073034333%, 0% 60.5073034333%);
		transform: translate(-4.7797015478%, -0.0528773043%);
	}

	4% {
		clip-path: polygon(0% 49.1096676712%, 100% 49.1096676712%, 100% 52.7598132354%, 0% 52.7598132354%);
		transform: translate(5.4656068655%, 0.2272384345%);
	}

	6% {
		clip-path: polygon(0% 29.7026991949%, 100% 29.7026991949%, 100% 33.7616520647%, 0% 33.7616520647%);
		transform: translate(3.1019910788%, 0.2741083058%);
	}

	8% {
		clip-path: polygon(0% 4.892150524%, 100% 4.892150524%, 100% 10.4544424564%, 0% 10.4544424564%);
		transform: translate(-4.8182625861%, 0.3308604246%);
	}

	10% {
		clip-path: polygon(0% 40.188766962%, 100% 40.188766962%, 100% 42.3667529591%, 0% 42.3667529591%);
		transform: translate(-5.7641688579%, 0.3700431422%);
	}

	12% {
		clip-path: polygon(0% 24.7774393259%, 100% 24.7774393259%, 100% 33.6556842324%, 0% 33.6556842324%);
		transform: translate(3.3116761637%, 0.3965725533%);
	}

	14% {
		clip-path: polygon(0% 11.3222312729%, 100% 11.3222312729%, 100% 17.8901027514%, 0% 17.8901027514%);
		transform: translate(-1.8177531008%, -0.4954128276%);
	}

	16% {
		clip-path: polygon(0% 26.0252827025%, 100% 26.0252827025%, 100% 31.7471891524%, 0% 31.7471891524%);
		transform: translate(-1.9813753663%, -0.0824881136%);
	}

	18% {
		clip-path: polygon(0% 77.4461657463%, 100% 77.4461657463%, 100% 84.9525922658%, 0% 84.9525922658%);
		transform: translate(7.5365459755%, -0.0204374514%);
	}

	20%,
	100% {
		clip-path: none;
		transform: none;
	}
}

.glitch .channel {
	/*mix-blend-mode: screen;*/
}

.glitch .channel::before {
	bottom: 0;
	content: "";
	display: block;
	mix-blend-mode: multiply;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
}

.glitch .r {
	animation: rgb-shift-r 3s steps(1, jump-end) infinite alternate both;
}

@keyframes rgb-shift-r {
	0% {
		transform: translate(-1.2126718431%, 0.271946825%);
	}

	2% {
		transform: translate(0.4023263124%, -0.0881290188%);
	}

	4% {
		transform: translate(1.9745292935%, 0.4645702102%);
	}

	6% {
		transform: translate(1.8355479199%, -0.2337801123%);
	}

	8% {
		transform: translate(-0.7386251057%, -0.1183121434%);
	}

	10% {
		transform: translate(-1.3455237822%, -0.11421297%);
	}

	12% {
		transform: translate(0.6804322613%, 0.230791026%);
	}

	14% {
		transform: translate(-0.9820574192%, -0.3653400129%);
	}

	16% {
		transform: translate(-1.3103331039%, -0.0777899761%);
	}

	18% {
		transform: translate(-1.5766738148%, -0.167305096%);
	}

	20%,
	100% {
		transform: none;
	}
}

.glitch .r::before {
	background: #f00;
}

.glitch .g {
	animation: rgb-shift-g 3s steps(1, jump-end) infinite alternate both;
}

@keyframes rgb-shift-g {
	0% {
		transform: translate(-1.1311471132%, -0.3298302822%);
	}

	2% {
		transform: translate(-1.548647402%, 0.2571165518%);
	}

	4% {
		transform: translate(-0.2918640666%, 0.2345128136%);
	}

	6% {
		transform: translate(0.8456074731%, 0.2927312557%);
	}

	8% {
		transform: translate(1.9954631391%, 0.3960221783%);
	}

	10% {
		transform: translate(1.3278292682%, -0.194663942%);
	}

	12% {
		transform: translate(0.8791204143%, -0.3265721975%);
	}

	14% {
		transform: translate(-0.5765772774%, -0.1240843426%);
	}

	16% {
		transform: translate(0.5496051759%, 0.2291678757%);
	}

	18% {
		transform: translate(-1.5710115378%, -0.3019242792%);
	}

	20%,
	100% {
		transform: none;
	}
}

.glitch .g::before {
	background: #0f0;
}

.glitch .b {
	animation: rgb-shift-b 3s steps(1, jump-end) infinite alternate both;
}

@keyframes rgb-shift-b {
	0% {
		transform: translate(-1.7079468077%, -0.1790499864%);
	}

	2% {
		transform: translate(0.1289228366%, -0.3755390916%);
	}

	4% {
		transform: translate(-1.4317099084%, 0.3888972812%);
	}

	6% {
		transform: translate(1.6107149735%, 0.3230827852%);
	}

	8% {
		transform: translate(1.8319019091%, -0.4697755425%);
	}

	10% {
		transform: translate(0.4068214456%, -0.3498485406%);
	}

	12% {
		transform: translate(0.2949815664%, -0.409105463%);
	}

	14% {
		transform: translate(1.9980032341%, -0.3107721988%);
	}

	16% {
		transform: translate(-0.6002571169%, 0.2216064713%);
	}

	18% {
		transform: translate(-1.8334570312%, 0.4468211236%);
	}

	20%,
	100% {
		transform: none;
	}
}

.glitch .b::before {
	background: #00f;
}