/* GF Service Features (Figma 82:19895) */
.gf-sfeat__head {
	display: grid;
	grid-template-columns: minmax(0, 770px) minmax(0, 770px);
	justify-content: space-between;
	align-items: end;
	gap: 30px 60px;
	margin-bottom: 52px;
}

.gf-sfeat__intro {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.gf-sfeat__side {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 25px;
}

.gf-sfeat__heading {
	max-width: 657px;
	margin: 0;
	font-family: var(--gf-font-alt);
	font-size: 36px;
	font-weight: 500;
	line-height: 1.41;
	letter-spacing: -.72px;
	color: var(--gf-navy);
}

.gf-sfeat__text,
.gf-sfeat__item-text {
	margin: 0;
	font-family: var(--gf-font-body);
	font-size: 18px;
	line-height: 1.8;
	letter-spacing: -.36px;
	color: #4d4d4d;
}

.gf-sfeat__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px 125px;
}

/* Each column: 1px line on the left, 59px gap, then content (Figma line is 471 tall) */
.gf-sfeat__item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-height: 471px;
	justify-content: center;
	padding: 38px 0 38px 59px;
	border-left: 1px solid #d4d4d4;
}

.gf-sfeat__icon {
	display: grid;
	place-items: center;
	width: 74px;
	height: 74px;
	margin-bottom: 30px;
	overflow: hidden;
	background-color: #e02828;
	border-radius: 5px;
}

.gf-sfeat__icon img {
	display: block;
	max-width: 100%;
	height: auto;
}

.gf-sfeat__item-title {
	max-width: 330px;
	margin: 0 0 28px;
	font-family: var(--gf-font-alt);
	font-size: 36px;
	font-weight: 500;
	line-height: 1.41;
	letter-spacing: -.72px;
	color: #2c2c2c;
}

@media (max-width: 1599px) {
	.gf-sfeat__grid {
		column-gap: 50px;
	}

	.gf-sfeat__item {
		padding-left: 36px;
	}

	.gf-sfeat__item-title {
		font-size: 30px;
	}

	.gf-sfeat__text,
	.gf-sfeat__item-text {
		font-size: 16px;
	}
}

@media (max-width: 1199px) {
	.gf-sfeat__head {
		grid-template-columns: 1fr;
	}

	.gf-sfeat__grid {
		grid-template-columns: 1fr;
		row-gap: 24px;
	}

	.gf-sfeat__item {
		min-height: 0;
		padding: 10px 0 10px 30px;
	}
}

@media (max-width: 767px) {
	.gf-sfeat__heading {
		font-size: 28px;
	}

	.gf-sfeat__item-title {
		margin-bottom: 16px;
		font-size: 24px;
	}

	.gf-sfeat__text,
	.gf-sfeat__item-text {
		font-size: 15px;
	}

	.gf-sfeat__item {
		padding-left: 20px;
	}

	.gf-sfeat__icon {
		width: 60px;
		height: 60px;
		margin-bottom: 20px;
	}
}
