.rr-final-banners {
	width: 100%;
	padding: 0 0 28px;
}

.rr-final-banners__inner {
	display: grid;
	gap: 18px;
	width: min(100% - 48px, 1680px);
	margin: 0 auto;
}

.rr-final-banner {
	position: relative;
	display: block;
	min-height: 260px;
	overflow: hidden;
	border: 1px solid rgba(6, 23, 68, 0.08);
	border-radius: 18px;
	background:
		linear-gradient(135deg, rgba(22, 133, 248, 0.08), rgba(255, 154, 24, 0.1)),
		#ffffff;
	box-shadow: 0 14px 38px rgba(6, 23, 68, 0.08);
}

.rr-final-banner::before {
	position: absolute;
	inset: 0;
	content: "";
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.72), transparent 24%, transparent 76%, rgba(255, 255, 255, 0.72)),
		repeating-linear-gradient(135deg, rgba(6, 23, 68, 0.04) 0 1px, transparent 1px 28px);
	pointer-events: none;
}

.rr-final-banner.has-image {
	background: #ffffff;
}

.rr-final-banner.has-image::before {
	display: none;
}

.rr-final-banner__image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.rr-final-banner__placeholder {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	color: rgba(6, 23, 68, 0.42);
	font-size: 1rem;
	line-height: 1;
	letter-spacing: 0;
}

@media (max-width: 1180px) {
	.rr-final-banners__inner {
		width: min(100% - 32px, 1180px);
	}

	.rr-final-banner {
		min-height: 220px;
	}
}

@media (max-width: 620px) {
	.rr-final-banners__inner {
		width: min(100% - 1.2rem, 620px);
		gap: 14px;
	}

	.rr-final-banner {
		min-height: 150px;
		border-radius: 14px;
	}
}