/**
 * CTA banner — inner page top banners and footer conversion card.
 *
 * @package ALW
 * @since   1.0.0
 */

.cta-banner.alw-section {
	padding-block: var(--alw-section-padding-y-alt);
}

.cta-banner--page-top.alw-section {
	padding: 0;
}

.cta-banner--page-top .alw-cta-banner {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: none;
	min-height: 280px;
	margin-inline: 0;
	padding-block: 48px;
	padding-inline: var(--alw-container-padding-x);
	border-radius: 0;
	box-shadow: none;
}

@media (min-width: 768px) {
	.cta-banner--page-top .alw-cta-banner {
		min-height: 360px;
		padding-block: 64px;
		padding-inline: max(
			var(--alw-container-padding-x-md),
			calc((100% - var(--alw-header-max-width)) / 2 + var(--alw-container-padding-x-md))
		);
	}
}

.cta-banner--page-top .alw-cta-banner__inner {
	width: 100%;
	max-width: var(--alw-header-max-width);
	margin-inline: auto;
	padding: 0;
}

.cta-banner--page-top .alw-cta-banner__content {
	max-width: 40rem;
}

@media (min-width: 768px) {
	.cta-banner--page-top .alw-cta-banner__image {
		max-width: min(52%, 640px);
	}
}

@media (min-width: 1024px) {
	.cta-banner--page-top .alw-cta-banner__image {
		max-width: min(48%, 720px);
	}
}

.alw-cta-banner__inner {
	position: relative;
	z-index: 1;
}

.alw-cta-banner {
	position: relative;
	overflow: hidden;
	max-width: var(--alw-container-max-width);
	margin-inline: var(--alw-container-padding-x);
	padding: 56px 24px;
	border-radius: var(--alw-radius-card-lg);
	background: var(--alw-gradient-hero);
	color: var(--alw-primary-foreground);
	box-shadow: var(--alw-shadow-glow);
}

@media (min-width: 768px) {
	.alw-cta-banner {
		margin-inline: auto;
		padding: 80px 56px;
	}
}

.cta-banner:not(.cta-banner--page-top) .alw-cta-banner__inner {
	padding: 0;
}

/* Hero pattern — inner page-top banners and pre-footer CTA card. */
.alw-cta-banner__pattern {
	pointer-events: none;
	position: absolute;
	inset: 0;
	z-index: 0;
	opacity: 0.9;
	background-repeat: repeat;
	background-size: 160px 160px;
	mask-image: radial-gradient(ellipse at center, #000 30%, transparent 85%);
	-webkit-mask-image: radial-gradient(ellipse at center, #000 30%, transparent 85%);
}

/* Features page — page-top banner. */
.features-cta-banner.alw-section {
	padding-block: var(--alw-section-padding-y-alt);
}

.features-cta-banner--page-top.alw-section {
	padding: 0;
}

.features-cta-banner--page-top .alw-cta-banner {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: none;
	min-height: 280px;
	margin-inline: 0;
	padding-block: 48px;
	padding-inline: var(--alw-container-padding-x);
	border-radius: 0;
	box-shadow: none;
}

@media (min-width: 768px) {
	.features-cta-banner--page-top .alw-cta-banner {
		min-height: 360px;
		padding-block: 64px;
		padding-inline: max(
			var(--alw-container-padding-x-md),
			calc((100% - var(--alw-header-max-width)) / 2 + var(--alw-container-padding-x-md))
		);
	}
}

.features-cta-banner--page-top .alw-cta-banner__inner {
	width: 100%;
	max-width: var(--alw-header-max-width);
	margin-inline: auto;
	padding: 0;
}

.features-cta-banner--page-top .alw-cta-banner__content {
	max-width: 40rem;
}

@media (min-width: 768px) {
	.features-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(52%, 640px);
	}
}

@media (min-width: 1024px) {
	.features-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(48%, 720px);
	}
}

.features-cta-banner:not(.features-cta-banner--page-top) .alw-cta-banner__inner {
	padding: 0;
}

/* Testimonials page — page-top banner. */
.testimonials-cta-banner.alw-section {
	padding-block: var(--alw-section-padding-y-alt);
}

.testimonials-cta-banner--page-top.alw-section {
	padding: 0;
}

.testimonials-cta-banner--page-top .alw-cta-banner {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: none;
	min-height: 280px;
	margin-inline: 0;
	padding-block: 48px;
	padding-inline: var(--alw-container-padding-x);
	border-radius: 0;
	box-shadow: none;
}

@media (min-width: 768px) {
	.testimonials-cta-banner--page-top .alw-cta-banner {
		min-height: 360px;
		padding-block: 64px;
		padding-inline: max(
			var(--alw-container-padding-x-md),
			calc((100% - var(--alw-header-max-width)) / 2 + var(--alw-container-padding-x-md))
		);
	}
}

.testimonials-cta-banner--page-top .alw-cta-banner__inner {
	width: 100%;
	max-width: var(--alw-header-max-width);
	margin-inline: auto;
	padding: 0;
}

.testimonials-cta-banner--page-top .alw-cta-banner__content {
	max-width: 40rem;
}

@media (min-width: 768px) {
	.testimonials-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(52%, 640px);
	}
}

@media (min-width: 1024px) {
	.testimonials-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(48%, 720px);
	}
}

.testimonials-cta-banner:not(.testimonials-cta-banner--page-top) .alw-cta-banner__inner {
	padding: 0;
}

/* Questions page — page-top banner. */
.questions-cta-banner.alw-section {
	padding-block: var(--alw-section-padding-y-alt);
}

.questions-cta-banner--page-top.alw-section {
	padding: 0;
}

.questions-cta-banner--page-top .alw-cta-banner {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: none;
	min-height: 280px;
	margin-inline: 0;
	padding-block: 48px;
	padding-inline: var(--alw-container-padding-x);
	border-radius: 0;
	box-shadow: none;
}

@media (min-width: 768px) {
	.questions-cta-banner--page-top .alw-cta-banner {
		min-height: 360px;
		padding-block: 64px;
		padding-inline: max(
			var(--alw-container-padding-x-md),
			calc((100% - var(--alw-header-max-width)) / 2 + var(--alw-container-padding-x-md))
		);
	}
}

.questions-cta-banner--page-top .alw-cta-banner__inner {
	width: 100%;
	max-width: var(--alw-header-max-width);
	margin-inline: auto;
	padding: 0;
}

.questions-cta-banner--page-top .alw-cta-banner__content {
	max-width: 40rem;
}

@media (min-width: 768px) {
	.questions-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(52%, 640px);
	}
}

@media (min-width: 1024px) {
	.questions-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(48%, 720px);
	}
}

.questions-cta-banner:not(.questions-cta-banner--page-top) .alw-cta-banner__inner {
	padding: 0;
}

/* Exams page — page-top banner. */
.exams-cta-banner.alw-section {
	padding-block: var(--alw-section-padding-y-alt);
}

.exams-cta-banner--page-top.alw-section {
	padding: 0;
}

.exams-cta-banner--page-top .alw-cta-banner {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: none;
	min-height: 280px;
	margin-inline: 0;
	padding-block: 48px;
	padding-inline: var(--alw-container-padding-x);
	border-radius: 0;
	box-shadow: none;
}

@media (min-width: 768px) {
	.exams-cta-banner--page-top .alw-cta-banner {
		min-height: 360px;
		padding-block: 64px;
		padding-inline: max(
			var(--alw-container-padding-x-md),
			calc((100% - var(--alw-header-max-width)) / 2 + var(--alw-container-padding-x-md))
		);
	}
}

.exams-cta-banner--page-top .alw-cta-banner__inner {
	width: 100%;
	max-width: var(--alw-header-max-width);
	margin-inline: auto;
	padding: 0;
}

.exams-cta-banner--page-top .alw-cta-banner__content {
	max-width: 40rem;
}

@media (min-width: 768px) {
	.exams-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(52%, 640px);
	}
}

@media (min-width: 1024px) {
	.exams-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(48%, 720px);
	}
}

.exams-cta-banner:not(.exams-cta-banner--page-top) .alw-cta-banner__inner {
	padding: 0;
}

/* Live Classes page — page-top banner. */
.live-classes-cta-banner.alw-section {
	padding-block: var(--alw-section-padding-y-alt);
}

.live-classes-cta-banner--page-top.alw-section {
	padding: 0;
}

.live-classes-cta-banner--page-top .alw-cta-banner {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: none;
	min-height: 280px;
	margin-inline: 0;
	padding-block: 48px;
	padding-inline: var(--alw-container-padding-x);
	border-radius: 0;
	box-shadow: none;
}

@media (min-width: 768px) {
	.live-classes-cta-banner--page-top .alw-cta-banner {
		min-height: 360px;
		padding-block: 64px;
		padding-inline: max(
			var(--alw-container-padding-x-md),
			calc((100% - var(--alw-header-max-width)) / 2 + var(--alw-container-padding-x-md))
		);
	}
}

.live-classes-cta-banner--page-top .alw-cta-banner__inner {
	width: 100%;
	max-width: var(--alw-header-max-width);
	margin-inline: auto;
	padding: 0;
}

.live-classes-cta-banner--page-top .alw-cta-banner__content {
	max-width: 40rem;
}

@media (min-width: 768px) {
	.live-classes-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(52%, 640px);
	}
}

@media (min-width: 1024px) {
	.live-classes-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(48%, 720px);
	}
}

.live-classes-cta-banner:not(.live-classes-cta-banner--page-top) .alw-cta-banner__inner {
	padding: 0;
}

/* Reports and Tables page — page-top banner. */
.reports-tables-cta-banner.alw-section {
	padding-block: var(--alw-section-padding-y-alt);
}

.reports-tables-cta-banner--page-top.alw-section {
	padding: 0;
}

.reports-tables-cta-banner--page-top .alw-cta-banner {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: none;
	min-height: 280px;
	margin-inline: 0;
	padding-block: 48px;
	padding-inline: var(--alw-container-padding-x);
	border-radius: 0;
	box-shadow: none;
}

@media (min-width: 768px) {
	.reports-tables-cta-banner--page-top .alw-cta-banner {
		min-height: 360px;
		padding-block: 64px;
		padding-inline: max(
			var(--alw-container-padding-x-md),
			calc((100% - var(--alw-header-max-width)) / 2 + var(--alw-container-padding-x-md))
		);
	}
}

.reports-tables-cta-banner--page-top .alw-cta-banner__inner {
	width: 100%;
	max-width: var(--alw-header-max-width);
	margin-inline: auto;
	padding: 0;
}

.reports-tables-cta-banner--page-top .alw-cta-banner__content {
	max-width: 40rem;
}

@media (min-width: 768px) {
	.reports-tables-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(52%, 640px);
	}
}

@media (min-width: 1024px) {
	.reports-tables-cta-banner--page-top .alw-cta-banner__image {
		max-width: min(48%, 720px);
	}
}

.reports-tables-cta-banner:not(.reports-tables-cta-banner--page-top) .alw-cta-banner__inner {
	padding: 0;
}

.alw-cta-banner__glow {
	pointer-events: none;
	position: absolute;
	z-index: 0;
	border-radius: 50%;
	filter: blur(64px);
}

.alw-cta-banner__glow--gold {
	inset-block-start: -80px;
	inset-inline-end: -80px;
	width: 256px;
	height: 256px;
	background-color: var(--alw-gold-30);
}

.alw-cta-banner__glow--teal {
	inset-block-end: -96px;
	inset-inline-start: -40px;
	width: 288px;
	height: 288px;
	background-color: var(--alw-primary-glow-40);
}

.alw-cta-banner__image {
	pointer-events: none;
	position: absolute;
	inset-inline-end: 0;
	bottom: 0;
	z-index: 0;
	width: auto;
	max-width: min(52%, 520px);
	max-height: 100%;
	height: auto;
	object-fit: contain;
	object-position: bottom right;
	user-select: none;
}

[dir="rtl"] .alw-cta-banner__image {
	object-position: bottom left;
}

@media (min-width: 768px) {
	.alw-cta-banner__image {
		max-width: min(48%, 560px);
	}
}

@media (min-width: 640px) and (max-width: 767px) {
	.alw-cta-banner__image {
		max-width: 42%;
		opacity: 0.85;
	}
}

@media (max-width: 639px) {
	.alw-cta-banner__image {
		max-width: 42%;
		opacity: 0.85;
	}
}

.alw-cta-banner__content {
	position: relative;
	z-index: 1;
	max-width: 48rem;
}

.alw-cta-banner__heading {
	margin: 0;
	font-family: var(--alw-font-heading);
	font-weight: var(--alw-font-weight-heading);
	font-size: 30px;
	line-height: 1.15;
	color: var(--alw-primary-foreground);
}

@media (min-width: 768px) {
	.alw-cta-banner__heading {
		font-size: 48px;
	}
}

.alw-cta-banner__intro {
	margin-top: 16px;
	font-family: var(--alw-font-body);
	font-size: var(--alw-font-size-body);
	line-height: 1.625;
	color: var(--alw-primary-foreground-85);
}

@media (min-width: 768px) {
	.alw-cta-banner__intro {
		font-size: 18px;
	}
}

.alw-cta-banner__actions {
	margin-top: 32px;
}
