.flex-layout.pillars_scroll {
	--bg-color: var(--primary-100);
	--text-color: var(--white-100);
	--pillar-card-gap: max(3rem, calc(5 * var(--su)));
	position: relative;
	overflow: clip;
	padding-inline: 0 !important;
}

.flex-layout.pillars_scroll .pillars-stage {
	position: relative;
	isolation: isolate;
	min-height: max(43.75rem, calc(43.75 * var(--su)));
	padding-block: var(--pk-row-spacing);
}

.flex-layout.pillars_scroll .pillars-backgrounds,
.flex-layout.pillars_scroll .background-layer,
.flex-layout.pillars_scroll .background-overlay {
	position: absolute;
	inset: 0;
}

.flex-layout.pillars_scroll .pillars-backgrounds {
	z-index: -1;
	overflow: hidden;
	background-color: var(--primary-100);
}

.flex-layout.pillars_scroll .background-layer {
	opacity: 0;
}

.flex-layout.pillars_scroll .background-layer.is-visible {
	opacity: 1;
}

.flex-layout.pillars_scroll .background-layer img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

.flex-layout.pillars_scroll .background-overlay {
	z-index: 2;
	background: linear-gradient(90deg, rgba(0, 0, 0, .58) 0%, rgba(0, 0, 0, .28) 42%, rgba(0, 0, 0, 0) 78%);
}

.flex-layout.pillars_scroll .background-shape {
	position: absolute;
	z-index: 3;
	top: -9%;
	left: 10%;
	width: 94%;
	height: 131%;
	max-width: none;
	transform: scaleX(-1);
	pointer-events: none;
}

.flex-layout.pillars_scroll .pillars-grid {
	position: relative;
	z-index: 1;
	align-items: center;
	padding-inline: var(--pk-site-gutter);
}

.flex-layout.pillars_scroll .intro-col {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	color: var(--white-100);
}

.flex-layout.pillars_scroll .intro-col .nova-eyebrow,
.flex-layout.pillars_scroll .intro-col .pk-heading {
	color: inherit;
}

.flex-layout.pillars_scroll .intro-col .nova-eyebrow {
	margin: 0 0 max(1rem, calc(1 * var(--su)));
}

.flex-layout.pillars_scroll .intro-col .pk-heading {
	margin: 0 0 max(1rem, calc(1 * var(--su)));
}

.flex-layout.pillars_scroll .intro-col .pk-text {
	font-size: var(--body-m-regular);
}

.flex-layout.pillars_scroll .intro-col .pk-text p {
	margin-top: 0;
}

.flex-layout.pillars_scroll .intro-col .pk-button-group {
	margin-top: max(1.5rem, calc(1.5 * var(--su)));
}

.flex-layout.pillars_scroll .pillar-cards {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: max(1.5rem, calc(1.5 * var(--su)));
}

.flex-layout.pillars_scroll .pillar-cards .pillar-card {
	flex: 1 1 max(14rem, calc(14 * var(--su)));
}

.flex-layout.pillars_scroll .pillar-card {
	box-sizing: border-box;
	overflow: hidden;
	background-color: var(--white-100);
	color: var(--primary-100);
	box-shadow: max(.25rem, calc(.25 * var(--su))) max(.25rem, calc(.25 * var(--su))) max(.5rem, calc(.5 * var(--su))) rgba(0, 0, 0, .16);
}

.flex-layout.pillars_scroll .pillar-card-media {
	position: relative;
	aspect-ratio: 16 / 9;
}

.flex-layout.pillars_scroll .pillar-card-media img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

.flex-layout.pillars_scroll .pillar-card-content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: max(1rem, calc(1.5 * var(--su)));
	padding: max(2rem, calc(3 * var(--su)));
}

.flex-layout.pillars_scroll .pillar-card .nova-eyebrow,
.flex-layout.pillars_scroll .pillar-card .pillar-title,
.flex-layout.pillars_scroll .pillar-card .pillar-text,
.flex-layout.pillars_scroll .pillar-card .pillar-benefits {
	margin: 0;
}

.flex-layout.pillars_scroll .pillar-card .pillar-title {
	font-size: var(--scaling-h3);
}

.flex-layout.pillars_scroll .pillar-card .pillar-text p {
	margin-top: 0;
}

.flex-layout.pillars_scroll .pillar-benefits {
	display: flex;
	flex-direction: column;
	gap: max(.25rem, calc(.25 * var(--su)));
	padding: 0;
	list-style: none;
}

.flex-layout.pillars_scroll .pillar-benefits li {
	display: flex;
	align-items: flex-start;
	gap: max(.5rem, calc(.5 * var(--su)));
}

.flex-layout.pillars_scroll .pillar-benefits li::before {
	content: '';
	flex: 0 0 auto;
	width: max(1.25rem, calc(1.25 * var(--su)));
	height: auto;
	aspect-ratio: 1;
	margin-top: .2em;
	background-color: currentColor;
	mask: var(--icon-check) center / contain no-repeat;
}

.flex-layout.pillars_scroll .pillar-progress {
	display: none;
}

@media screen and (min-width: 992px) {

	.flex-layout.pillars_scroll.has-scroll-motion .pillars-stage {
		height: calc(100svh - var(--pk-header-height, 0px));
		min-height: 0;
		padding-block: 0;
	}

	.flex-layout.pillars_scroll.has-scroll-motion .pillars-grid,
	.flex-layout.pillars_scroll.has-scroll-motion .cards-col,
	.flex-layout.pillars_scroll.has-scroll-motion .pillar-cards {
		height: 100%;
	}

	.flex-layout.pillars_scroll.has-scroll-motion .cards-col,
	.flex-layout.pillars_scroll.has-scroll-motion .pillar-cards {
		position: relative;
	}

	.flex-layout.pillars_scroll.has-scroll-motion .pillar-cards {
		display: block;
		overflow: visible;
	}

	.flex-layout.pillars_scroll.has-scroll-motion .pillar-card {
		position: absolute;
		top: 50%;
		left: 0;
		width: 100%;
		min-height: max(21.875rem, calc(21.875 * var(--su)));
		transform-origin: center center;
	}

	.flex-layout.pillars_scroll.has-scroll-motion .pillar-card-media {
		display: none;
	}

	.flex-layout.pillars_scroll.has-scroll-motion .pillar-progress {
		position: absolute;
		top: 50%;
		right: var(--pk-site-gutter);
		display: block;
		transform: translateY(-50%);
	}

	.flex-layout.pillars_scroll .pillar-progress-track {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: max(.5rem, calc(.5 * var(--su)));
		min-width: max(2.5rem, calc(2.5 * var(--su)));
		min-height: max(9rem, calc(9 * var(--su)));
		padding: max(1rem, calc(1 * var(--su))) max(.75rem, calc(.75 * var(--su)));
		border: 1px solid var(--primary-10);
		border-radius: 999px;
		background-color: var(--white-100);
		box-shadow: 0 max(.25rem, calc(.25 * var(--su))) max(1rem, calc(1 * var(--su))) rgba(0, 0, 0, .08);
	}

	.flex-layout.pillars_scroll .pillar-progress-dot {
		appearance: none;
		display: block;
		width: max(.5rem, calc(.5 * var(--su)));
		height: max(.5rem, calc(.5 * var(--su)));
		padding: 0;
		border: 0;
		border-radius: 999px;
		background-color: var(--primary-10);
		cursor: pointer;
		touch-action: manipulation;
		transition: height .25s ease, background-color .25s ease;
	}

	.flex-layout.pillars_scroll .pillar-progress-dot.is-active {
		height: max(2.5rem, calc(2.5 * var(--su)));
		background-color: var(--accent-100);
	}

	.flex-layout.pillars_scroll .pillar-progress-dot:focus-visible {
		outline: 2px solid var(--accent-100);
		outline-offset: max(.25rem, calc(.25 * var(--su)));
	}
}

@media screen and (max-width: 991px) {

	.flex-layout.pillars_scroll .pillars-stage {
		min-height: 0;
	}

	.flex-layout.pillars_scroll .pillars-grid {
		row-gap: max(2.5rem, calc(2.5 * var(--su)));
	}

	.flex-layout.pillars_scroll .cards-col {
		margin-top: max(1rem, calc(1 * var(--su)));
	}

	.flex-layout.pillars_scroll .background-overlay {
		background: linear-gradient(180deg, rgba(0, 0, 0, .58) 0%, rgba(0, 0, 0, .4) 40%, rgba(47, 51, 76, .88) 100%);
	}

	.flex-layout.pillars_scroll .background-shape {
		top: 0;
		left: -35%;
		width: 170%;
		height: 70%;
	}
}

@media screen and (max-width: 767px) {

	.flex-layout.pillars_scroll .pillars-stage {
		padding-block: max(4rem, calc(4 * var(--su)));
	}

	.flex-layout.pillars_scroll .pillar-card-content {
		padding: max(1.5rem, calc(1.5 * var(--su)));
	}

	.flex-layout.pillars_scroll .pillar-cards {
		flex-direction: column;
		flex-wrap: nowrap;
	}

	.flex-layout.pillars_scroll .pillar-cards .pillar-card {
		flex: 0 1 auto;
	}
}

@media (prefers-reduced-motion: reduce) {

	.flex-layout.pillars_scroll .background-layer,
	.flex-layout.pillars_scroll .pillar-card,
	.flex-layout.pillars_scroll .pillar-progress-dot {
		transition: none;
	}
}
