sr7-module,
rs-module,
.rev_slider {
	overflow: visible;
}

sr7-module > .mws-so-corner--injected,
rs-module > .mws-so-corner--injected,
.rev_slider > .mws-so-corner--injected {
	position: absolute !important;
	z-index: 80 !important;
	opacity: 0;
	visibility: hidden;
	pointer-events: none !important;
}

sr7-module > .mws-so-corner--injected.is-ready,
rs-module > .mws-so-corner--injected.is-ready,
.rev_slider > .mws-so-corner--injected.is-ready {
	opacity: 1;
	visibility: visible;
	pointer-events: auto !important;
}

.mws-so-corner,
.sr7-layer .mws-so-corner,
sr7-txt .mws-so-corner,
rs-layer .mws-so-corner,
.tp-caption .mws-so-corner {
	--mws-so-w: 280px;
	--mws-so-h: 46px;
	--mws-so-bg: #ff0000;
	--mws-so-fg: #ffffff;
	position: absolute !important;
	top: 0;
	left: 0;
	display: block !important;
	width: var(--mws-so-w) !important;
	height: var(--mws-so-h) !important;
	box-sizing: border-box !important;
	overflow: visible;
	color: var(--mws-so-fg) !important;
	font-size: 14px !important;
	line-height: 1 !important;
	text-decoration: none !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	cursor: pointer;
	z-index: 80;
	pointer-events: auto !important;
}

.mws-so-corner__clip {
	position: absolute;
	inset: 0;
	display: block;
	clip-path: polygon(50% 0, 50% 0, 50% 50%, 50% 100%, 50% 100%, 50% 50%);
	filter: drop-shadow(0 8px 14px rgba(0, 0, 0, 0.38));
}

.mws-so-corner.is-replay .mws-so-corner__clip {
	animation: none;
}

.mws-so-corner.is-ready .mws-so-corner__clip,
.mws-so-corner.is-in .mws-so-corner__clip {
	animation: mws-so-unfurl 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.mws-so-corner__fill {
	position: absolute;
	inset: 0;
	display: block;
	background: linear-gradient(
		180deg,
		#ff3b3b 0%,
		var(--mws-so-bg) 48%,
		#c40000 100%
	);
}

.mws-so-corner__shine {
	position: absolute;
	inset: -30%;
	display: block;
	pointer-events: none;
	background: linear-gradient(
		115deg,
		transparent 32%,
		rgba(255, 255, 255, 0.45) 50%,
		transparent 68%
	);
	transform: translateX(-140%) skewX(-18deg);
}

.mws-so-corner.is-ready .mws-so-corner__shine {
	animation: mws-so-shine 3.2s 0.7s ease-in-out infinite;
}

.mws-so-corner__label {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 28px;
	color: var(--mws-so-fg) !important;
	font-family: Outfit, Arial, Helvetica, sans-serif;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.16em;
	line-height: 1;
	text-transform: uppercase;
	white-space: nowrap;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.28);
	transform: none;
}

.mws-so-corner.is-ready .mws-so-corner__label {
	animation: mws-so-label 0.45s 0.18s ease-out both;
}

.mws-so-corner:hover .mws-so-corner__fill,
.mws-so-corner:focus-visible .mws-so-corner__fill {
	filter: brightness(1.08);
}

.mws-so-corner:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 3px;
}

@keyframes mws-so-unfurl {
	0% {
		clip-path: polygon(50% 0, 50% 0, 50% 50%, 50% 100%, 50% 100%, 50% 50%);
	}
	100% {
		clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 18px 100%, 0 50%);
	}
}

@keyframes mws-so-shine {
	0%,
	58% {
		transform: translateX(-140%) skewX(-18deg);
	}
	78%,
	100% {
		transform: translateX(140%) skewX(-18deg);
	}
}

@keyframes mws-so-label {
	from {
		opacity: 0;
		transform: scale(0.92);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}

@media (max-width: 1024px) {
	.mws-so-corner,
	.sr7-layer .mws-so-corner,
	sr7-txt .mws-so-corner {
		--mws-so-w: 230px;
		--mws-so-h: 40px;
		font-size: 12px !important;
	}

	.mws-so-corner__label {
		font-size: 12px;
		letter-spacing: 0.12em;
		padding: 0 22px;
	}
}

@media (max-width: 778px) {
	.mws-so-corner,
	.sr7-layer .mws-so-corner,
	sr7-txt .mws-so-corner {
		--mws-so-w: 190px;
		--mws-so-h: 36px;
		font-size: 11px !important;
	}

	.mws-so-corner__label {
		font-size: 11px;
		letter-spacing: 0.1em;
		padding: 0 20px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mws-so-corner__clip,
	.mws-so-corner.is-in .mws-so-corner__clip,
	.mws-so-corner.is-ready .mws-so-corner__clip,
	.mws-so-corner__shine,
	.mws-so-corner__label {
		animation: none !important;
	}

	.mws-so-corner__clip {
		clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 18px 100%, 0 50%);
	}

	.mws-so-corner__shine {
		display: none;
	}

	.mws-so-corner__label {
		opacity: 1;
		transform: none;
	}
}

.mws-so-footer-wrap {
	display: block;
	margin-top: 18px;
	max-width: 100%;
}

.mws-so-corner--footer,
footer .mws-so-corner,
.elementor-widget-shortcode .mws-so-corner--footer {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	display: inline-block !important;
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	max-width: 100%;
}
