/**
 * CTA Banner block styles.
 */

.rs-cta-banner-block {
	margin-top: var(--rs-margin-top-mobile, var(--rs-margin-top-tablet, var(--rs-margin-top, 0)));
	margin-bottom: var(--rs-margin-bottom-mobile, var(--rs-margin-bottom-tablet, var(--rs-margin-bottom, 0)));
	background-color: var(--color-blue);
	box-shadow: 0px 4px 4px 0px #00000040;
}

.rs-cta-banner-block {
	background-image: linear-gradient(91.93deg, var(--color-blue) -10.78%, #004080 120.28%);
}

@media (max-width: 959px) {
	.rs-cta-banner-block--no-mobile-gradient {
		background-image: none;
	}
}

.rs-cta-banner-block--no-shadow {
	box-shadow: none;
}

.rs-cta-banner {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding-top: var(--rs-padding-top-mobile, var(--rs-padding-top-tablet, var(--rs-padding-top, 60px)));
	padding-bottom: var(--rs-padding-bottom-mobile, var(--rs-padding-bottom-tablet, var(--rs-padding-bottom, 60px)));
}

.rs-cta-banner-block__wrap {
	position: relative;
	overflow: visible;
}

.rs-cta-banner__layout,
.rs-cta-banner__main {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.rs-cta-banner__title,
.rs-cta-banner__text {
	margin: 0;
}

.rs-cta-banner__content > * {
	margin-top: 0;
	margin-bottom: 0;
}

.rs-cta-banner__text > *:first-child {
	margin-top: 0;
}

.rs-cta-banner__text > *:last-child {
	margin-bottom: 0;
}

.rs-cta-banner__actions .rs-buttons-block {
	margin: 0;
}

.rs-cta-banner__actions .rs-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.rs-cta-banner--centered {
	align-items: center;
	text-align: center;
}

.rs-cta-banner--centered .rs-cta-banner__main {
	align-items: center;
}

.rs-cta-banner--centered .rs-cta-banner__content {
	align-items: center;
}

@media (min-width: 960px) {
	.rs-cta-banner-block {
		margin-top: var(--rs-margin-top-tablet, var(--rs-margin-top, 0));
		margin-bottom: var(--rs-margin-bottom-tablet, var(--rs-margin-bottom, 0));
		background: linear-gradient(91.93deg, var(--color-blue) -10.78%, #004080 120.28%);
	}

	.rs-cta-banner {
		padding-top: var(--rs-padding-top-tablet, var(--rs-padding-top, 53px));
		padding-bottom: var(--rs-padding-bottom-tablet, var(--rs-padding-bottom, 53px));
	}

	.rs-cta-banner--default .rs-cta-banner__layout,
	.rs-cta-banner--with-image .rs-cta-banner__layout {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}

	.rs-cta-banner--default .rs-cta-banner__main,
	.rs-cta-banner--with-image .rs-cta-banner__main {
		flex: 1 1 auto;
	}

	.rs-cta-banner--default .rs-cta-banner__actions {
		flex: 0 0 auto;
	}

	.rs-cta-banner__actions .rs-buttons {
		flex-wrap: nowrap;
		gap: 10px;
	}
}

@media (min-width: 1440px) {
	.rs-cta-banner-block {
		margin-top: var(--rs-margin-top, var(--rs-margin-top-tablet, 0));
		margin-bottom: var(--rs-margin-bottom, var(--rs-margin-bottom-tablet, 0));
	}

	.rs-cta-banner {
		padding-top: var(--rs-padding-top, var(--rs-padding-top-tablet, 80px));
		padding-bottom: var(--rs-padding-bottom, var(--rs-padding-bottom-tablet, 80px));
	}

	.rs-cta-banner__actions .rs-buttons {
		gap: 16px;
	}
}


/* With image */

.rs-cta-banner-block--with-image {
	background: none;
	padding-bottom: 320px;
}

.rs-cta-banner-block--with-image .rs-cta-banner-block__wrap {
	background-image: linear-gradient(91.93deg, #004080 -10.78%, #0065CA 120.28%);
	box-shadow: 0px 4px 4px 0px #00000040;
	background-color: var(--color-blue);
}

.rs-cta-banner-block--no-shadow.rs-cta-banner-block--with-image .rs-cta-banner-block__wrap  {
	box-shadow: none;
}

@media (max-width: 768px) {
	.rs-cta-banner-block--with-image.rs-cta-banner-block--no-mobile-gradient .rs-cta-banner-block__wrap {
		background-image: none;
	}

	.rs-cta-banner-block--with-image .rs-cta-banner {
		padding-bottom: 279px;
	}
}

.rs-cta-banner-block--with-image .rs-cta-banner {
	position: relative;
	overflow: visible;
}

.rs-cta-banner-block--with-image.rs-cta-banner-block--no-shadow .rs-cta-banner {
	box-shadow: none;
}

.rs-cta-banner-block--with-image .rs-cta-banner__layout {
	position: relative;
}

.rs-cta-banner-block--with-image .rs-cta-banner__main {
	position: relative;
	z-index: 2;
	max-width: none;
	max-width: 782px;
}

.rs-cta-banner-block--with-image .rs-cta-banner__media {
	position: absolute;
	height: 596px;
    width: 100%;
	top: calc(100% + 30px);
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
}

.rs-cta-banner-block--with-image .rs-cta-banner__image {
	width: 100%;
	height: 100%;
	object-fit: contain;
	max-width: none;
}

@media screen and (min-width: 768px) {
	.rs-cta-banner-block--with-image {
		padding-top: 152px;
		padding-bottom: 65px;
	}

	.rs-cta-banner-block--with-image .rs-cta-banner__layout {
		padding-right: 420px;
	}

	.rs-cta-banner-block--with-image .rs-cta-banner__media {
		position: absolute;
		top: -152px;
		right: 65px;
		bottom: -65px;
		width: 245px;
		height: auto;
	}

	.rs-cta-banner-block--with-image .rs-cta-banner__image {
		width: 100%;
		height: auto;
	}
}

@media screen and (min-width: 1440px) {
	.rs-cta-banner-block--with-image {
		padding-top: 228px;
		padding-bottom: 98px;
	}

	.rs-cta-banner-block--with-image .rs-cta-banner__layout {
		padding-right: 420px;
	}

	.rs-cta-banner-block--with-image .rs-cta-banner__media {
		top: -228px;
		right: 97px;
		bottom: -98px;
		width: 368px;
	}
}