body.at-top .scroll-top {
	visibility        : hidden;
	bottom            : 0;
	opacity           : 0;
	-webkit-transform : rotate(180deg);
	transform         : rotate(180deg);
}

.scroll-top {
	cursor            : pointer;
	visibility        : visible;
	opacity           : 1;
	position          : fixed;
	width             : 50px;
	height            : 50px;
	bottom            : 50px;
	right             : 50px;
	border-radius     : 100%;
	background        : black;
	box-shadow        : 2px 3px 3px rgba(0, 0, 0, 0.3);
	-webkit-transform : rotate(0);
	transform         : rotate(0);
	transition        : all 0.3s ease-in-out;
	-webkit-animation : knock-top-delay 5s cubic-bezier(0.5, 0, 0.5, 1) 10s infinite;
	animation         : knock-top-delay 5s cubic-bezier(0.5, 0, 0.5, 1) 10s infinite;
}

.scroll-top:after {
	content           : '';
	position          : absolute;
	top               : calc(50% - 3px);
	left              : calc(50% - 6px);
	width             : 10px;
	height            : 10px;
	border-left       : 2px solid;
	border-top        : 2px solid;
	border-color      : white;
	-webkit-transform : rotate(45deg);
	transform         : rotate(45deg);
	transition        : border-color 0.3s ease-in-out;
}

.scroll-top:hover {
	-webkit-animation : knock-top 1.85s cubic-bezier(0.5, 0, 0.5, 1) infinite;
	animation         : knock-top 1.85s cubic-bezier(0.5, 0, 0.5, 1) infinite;
}

@keyframes knock-top-delay {
	0% {
		-webkit-transform : translateY(0px);
		-moz-transform    : translateY(0px);
		-ms-transform     : translateY(0px);
		-o-transform      : translateY(0px);
		transform         : translateY(0px);
	}
	5% {
		-webkit-transform : translateY(3px);
		-moz-transform    : translateY(3px);
		-ms-transform     : translateY(3px);
		-o-transform      : translateY(3px);
		transform         : translateY(3px);
	}
	10% {
		-webkit-transform : translateY(-5px);
		-moz-transform    : translateY(-5px);
		-ms-transform     : translateY(-5px);
		-o-transform      : translateY(-5px);
		transform         : translateY(-5px);
	}
	15% {
		-webkit-transform : translateY(1px);
		-moz-transform    : translateY(1px);
		-ms-transform     : translateY(1px);
		-o-transform      : translateY(1px);
		transform         : translateY(1px);
	}
	20% {
		-webkit-transform : translateY(-5px);
		-moz-transform    : translateY(-5px);
		-ms-transform     : translateY(-5px);
		-o-transform      : translateY(-5px);
		transform         : translateY(-5px);
	}
	25% {
		-webkit-transform : translateY(1px);
		-moz-transform    : translateY(1px);
		-ms-transform     : translateY(1px);
		-o-transform      : translateY(1px);
		transform         : translateY(1px);
	}
	30% {
		-webkit-transform : translateY(0px);
		-moz-transform    : translateY(0px);
		-ms-transform     : translateY(0px);
		-o-transform      : translateY(0px);
		transform         : translateY(0px);
	}
	100% {
		-webkit-transform : translateY(0px);
		-moz-transform    : translateY(0px);
		-ms-transform     : translateY(0px);
		-o-transform      : translateY(0px);
		transform         : translateY(0px);
	}
}

@-webkit-keyframes knock-top-delay {
	0% {
		-webkit-transform : translateY(0px);
		-moz-transform    : translateY(0px);
		-ms-transform     : translateY(0px);
		-o-transform      : translateY(0px);
		transform         : translateY(0px);
	}
	5% {
		-webkit-transform : translateY(3px);
		-moz-transform    : translateY(3px);
		-ms-transform     : translateY(3px);
		-o-transform      : translateY(3px);
		transform         : translateY(3px);
	}
	10% {
		-webkit-transform : translateY(-5px);
		-moz-transform    : translateY(-5px);
		-ms-transform     : translateY(-5px);
		-o-transform      : translateY(-5px);
		transform         : translateY(-5px);
	}
	15% {
		-webkit-transform : translateY(1px);
		-moz-transform    : translateY(1px);
		-ms-transform     : translateY(1px);
		-o-transform      : translateY(1px);
		transform         : translateY(1px);
	}
	20% {
		-webkit-transform : translateY(-5px);
		-moz-transform    : translateY(-5px);
		-ms-transform     : translateY(-5px);
		-o-transform      : translateY(-5px);
		transform         : translateY(-5px);
	}
	25% {
		-webkit-transform : translateY(1px);
		-moz-transform    : translateY(1px);
		-ms-transform     : translateY(1px);
		-o-transform      : translateY(1px);
		transform         : translateY(1px);
	}
	30% {
		-webkit-transform : translateY(0px);
		-moz-transform    : translateY(0px);
		-ms-transform     : translateY(0px);
		-o-transform      : translateY(0px);
		transform         : translateY(0px);
	}
	100% {
		-webkit-transform : translateY(0px);
		-moz-transform    : translateY(0px);
		-ms-transform     : translateY(0px);
		-o-transform      : translateY(0px);
		transform         : translateY(0px);
	}
}