.ifhl {
	--ifhl-accent: #ff0084;
	color: #1d1d1f;
}

.ifhl-diensten,
.ifhl-team {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.ifhl-diensten--cols-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ifhl-dienst,
.ifhl-quote {
	height: 100%;
	margin: 0;
	padding: 24px;
	background: #fff;
	border: 1px solid #ececef;
	border-top: 4px solid var(--ifhl-accent);
	border-radius: 16px;
	box-sizing: border-box;
}

.ifhl-dienst h3,
.ifhl-person h3 {
	margin: 0 0 10px;
	font-size: 22px;
	line-height: 1.25;
}

.ifhl-dienst p,
.ifhl-person p,
.ifhl-quote p {
	margin: 0;
	color: #333;
	font-size: 16px;
	line-height: 1.55;
}

.ifhl-dienst a,
.ifhl-cijfer__link {
	display: inline-block;
	margin-top: 16px;
	color: var(--ifhl-accent);
	font-weight: 700;
	text-decoration: none;
}

.ifhl-cijferrij {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	align-items: stretch;
	width: 100%;
}

.ifhl-cijferrij--1 { grid-template-columns: minmax(0, 1fr); }
.ifhl-cijferrij--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ifhl-cijferrij--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ifhl-cijferrij--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ifhl-cijferrij--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }

.ifhl-kaart {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	padding: 28px 26px 22px;
	background: #f4f7fb;
	border: 0;
	border-radius: 10px;
	box-sizing: border-box;
}

.ifhl-cijfer {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background: #f4f7fb;
	border: 0;
	border-radius: 10px;
	box-sizing: border-box;
}

.ifhl-cijfer__mark {
	color: #c5ced6;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 46px;
	line-height: 0.8;
}

.ifhl-cijfer__body {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 10px;
	padding: 8px 0 16px;
}

.ifhl-cijfer__score {
	margin: 0;
	color: #1d1d1f;
	font-size: 56px;
	font-weight: 700;
	line-height: 1;
}

.ifhl-cijfer__foot {
	margin: 0;
	color: #1d1d1f;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
}

.ifhl-cijfer__link {
	display: inline-block;
	margin-top: 8px;
	color: #3d4a57;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}

.ifhl-cijferregel {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 16px;
	width: 100%;
}

.ifhl-cijferregel__link {
	display: inline-flex;
	align-items: flex-end;
	gap: 16px;
	color: inherit;
	text-decoration: none;
}

.ifhl-cijferregel > .ifhl-cijferregel__score,
.ifhl-cijferregel__link > .ifhl-cijferregel__score {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1px;
}

.ifhl-cijferregel .ifhl-stars {
	position: relative;
	top: -5px;
}

.ifhl-cijferregel__text {
	margin-bottom: 4px;
}

.ifhl-cijferregel strong {
	color: #1d1d1f;
	font-size: 28px;
	font-weight: 700;
	line-height: 1;
}

.ifhl-cijferregel__sep {
	margin: 0 10px 4px;
	color: #c5ced6;
	font-size: 22px;
	font-weight: 400;
	line-height: 1;
}

.ifhl-cijferregel__text {
	color: #3d4a57;
	font-size: 16px;
	line-height: 1.3;
}

.ifhl-stars {
	display: inline-flex;
	gap: 3px;
}

.ifhl-star {
	display: block;
	width: 16px;
	height: 16px;
}

.ifhl-cijfer .ifhl-star {
	width: 18px;
	height: 18px;
}

.ifhl-review__text {
	flex: 1;
	margin: 12px 0 18px;
	color: #3d4a57;
	font-size: 16px;
	line-height: 1.55;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 6;
	overflow: hidden;
}

.ifhl-review__foot {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	color: #1d1d1f;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
}

.ifhl-review__logo {
	width: 28px;
	height: auto;
	flex: 0 0 auto;
}

.ifhl-cijfer__empty {
	margin: 0;
	color: #3d4a57;
	font-size: 16px;
	line-height: 1.4;
}

.ifhl-quote cite {
	color: #666;
	font-size: 15px;
	font-style: normal;
	font-weight: 500;
	line-height: 1.4;
}

.ifhl-person__photo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 4 / 5;
	margin-bottom: 14px;
	object-fit: cover;
	background: #f8e8f1;
	border-radius: 16px;
}

.ifhl-person__placeholder {
	color: var(--ifhl-accent);
	font-size: 32px;
	font-weight: 700;
}

.ifhl-band--cta .elementor-heading-title,
.ifhl-cta,
.ifhl-cta p {
	color: #fff;
}

.ifhl-band--hero .elementor-button,
.ifhl-band--cta .elementor-button {
	border-radius: 8px;
}

.ifhl-band--hero .elementor-button {
	background-color: #ff0084 !important;
	color: #fff !important;
}

.ifhl-band--cta .elementor-button {
	background-color: #111 !important;
	color: #fff !important;
}

@media (max-width: 900px) {
	.ifhl-diensten,
	.ifhl-diensten--cols-2,
	.ifhl-team,
	.ifhl-cijferrij {
		grid-template-columns: 1fr !important;
	}

	.elementor-element.ifhl-split {
		--width: 100% !important;
		width: 100% !important;
	}
}
