.fl-steps {
	position: relative;
	max-width: var(--fl-max-width);
	margin: 0 auto;
	padding: 96px 6vw;
	background: var(--fl-sage);
}

.fl-steps--bg-cream {
	background: var(--fl-cream);
}

.fl-steps--bg-lavender {
	background: var(--fl-lavender);
}

.fl-steps--bg-white {
	background: var(--fl-white);
}

.fl-steps__header {
	text-align: center;
	max-width: 560px;
	margin: 0 auto 56px;
}

.fl-steps__grid {
	display: grid;
	grid-template-columns: repeat( 3, 1fr );
	gap: 48px;
	text-align: center;
}

.fl-step__number {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--fl-white);
	border: 1px solid var(--fl-accent);
	color: var(--fl-accent);
	font-family: var(--fl-font-display);
	font-style: italic;
	font-size: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px;
}

.fl-step__title {
	font-family: var(--fl-font-display);
	font-size: 19px;
	font-weight: 500;
	color: var(--fl-forest);
	margin: 0 0 10px;
}

.fl-step__text {
	font-family: var(--fl-font-body);
	font-size: 14px;
	font-weight: 300;
	line-height: 1.65;
	color: var(--fl-ink);
	opacity: 0.8;
	margin: 0;
	max-width: 280px;
	margin-left: auto;
	margin-right: auto;
}

@media ( max-width: 900px ) {
	.fl-steps__grid {
		grid-template-columns: 1fr;
		gap: 36px;
	}
}

@media ( max-width: 560px ) {
	.fl-steps {
		padding: 64px 6vw;
	}
}
