/* ---~~~ .Ribbons ~~~--- */

.ribbon {
	position: absolute;
	right: -5px; top: -5px;
	z-index: 1;
	overflow: hidden;
	width: 75px; height: 75px;
	text-align: right;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	line-height: 20px;
}
.ribbon.bottom {
	right: unset;
	top: unset;
	left: -5px;
	bottom: -5px;
}
.tablet .ribbon.bottom, .mobile .ribbon.bottom { bottom: 0px; }

.ribbon.top {
	right: unset;
	top: -5px;
	left: -5px;
	bottom: -5px;
	transform: rotate(-90deg);
}
.ribbon.top span i { transform: unset; }

.ribbon.bottom span {
	transform: rotate(225deg);
	-webkit-transform: rotate(225deg);
	top: 36px; right: -4px;
}

.ribbon span {
	font-family: Arial;
	font-size: 10px;
	font-weight: bold;
	color: #FFF;
	text-transform: uppercase;
	text-align: center;
	height: 20px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	width: 100px;
	display: block;
	background: #79A70A;
	background: linear-gradient(#F70505 0%, #8F0808 100%);
	box-shadow: 0 3px 10px -5px rgba(0, 0, 0, 1);
	position: absolute;
	top: 19px; right: -21px;
}
.ribbon span i {
	font-style: normal;
	transform: rotate(180deg);
	display: block;
	text-shadow: 1px 0px 1px rgba(0,0,0,.6);
}
.ribbon span.sml { font-size:9px; }


.ribbon span::before {
	content: "";
	position: absolute; left: 0px; top: 100%;
	z-index: -1;
	border-left: 3px solid #8F0808;
	border-right: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-top: 3px solid #8F0808;
}
.ribbon span::after {
	content: "";
	position: absolute; right: 0px; top: 100%;
	z-index: -1;
	border-left: 3px solid transparent;
	border-right: 3px solid #8F0808;
	border-bottom: 3px solid transparent;
	border-top: 3px solid #8F0808;
}

.ribbon.yellow span { background: #79A70A; background: linear-gradient(#F79E05 0%, #8F5408 100%); }
.ribbon.yellow span::before { border-left: 3px solid #8F5408; border-top: 3px solid #8F5408; }
.ribbon.yellow span::after { border-right: 3px solid #8F5408; border-top: 3px solid #8F5408; }
.ribbon.blue span { background: #79A70A; background: linear-gradient(#2989d8 0%, #1e5799 100%); }
.ribbon.blue span::before { border-left: 3px solid #1e5799; border-top: 3px solid #1e5799; }
.ribbon.blue span::after { border-right: 3px solid #1e5799; border-top: 3px solid #1e5799; }
.ribbon.gray span { background: #B6BAC9; background: linear-gradient(#B6BAC9 0%, #808080 100%); }
.ribbon.gray span::before { border-left: 3px solid #808080; border-top: 3px solid #808080; }
.ribbon.gray span::after { border-right: 3px solid #808080; border-top: 3px solid #808080; }
