/* ---------------------------------------------------------------------------
 * Footer: donkerblauw vlak met gebogen bovenrand (ellips 3999x499 uit het
 * ontwerp, geschaald naar een strook van 1920x113), vier kolommen
 * (info + drie linkkolommen) en een onderbalk met deellijn.
 * ------------------------------------------------------------------------- */

.site-footer {
	color: var(--c-grijs-3);
}

/* Gebogen bovenrand: schaalt mee met de viewportbreedte (113px op 1920). */
.site-footer__curve svg {
	display: block;
	width: 100%;
	height: auto;
}

.site-footer__curve ellipse {
	fill: var(--c-donkerblauw);
}

.site-footer__body {
	margin-top: -1px; /* voorkomt een haarlijn tussen curve en vlak */
	background: var(--c-donkerblauw);
}

/* Kolomindeling uit het ontwerp: 360/360/360/320 op een wrapper van 1400. */
.site-footer__grid {
	display: grid;
	grid-template-columns: 9fr 9fr 9fr 8fr;
	align-items: start;
	padding-top: 74px;
}

/* De tekstkoppen van de kolommen beginnen iets lager dan het logo. */
.site-footer__kolom {
	padding-top: 10px;
}

.site-footer__logo {
	display: inline-block;
}

.site-footer__logo img {
	width: 140px;
	height: auto;
}

.site-footer__adres {
	margin-top: 35px;
	font-size: 14px;
	line-height: 24px;
}

.site-footer__adres p {
	margin: 0 0 24px;
}

.site-footer__adres p:last-child {
	margin-bottom: 0;
}

.site-footer__adres strong {
	color: var(--c-wit);
}

.site-footer__adres a {
	color: inherit;
	text-decoration: none;
	transition: color var(--dur-kort) var(--ease-out);
}

.site-footer__adres a:hover {
	color: var(--c-wit);
}

.site-footer__kop {
	margin: 0 0 28px;
	font-size: 18px;
	font-weight: 700;
	line-height: 22px;
	color: var(--c-blauw);
}

.site-footer__volgons {
	margin-top: 34px;
}

.site-footer__volgons .site-footer__kop {
	margin-bottom: 20px;
}

.site-footer__socials {
	display: flex;
	gap: 10px;
	list-style: none;
}

.site-footer__social {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgb(255 255 255 / 10%); /* wit op 10%, alleen hier gebruikt */
	transition: background-color var(--dur-kort) var(--ease-out);
}

.site-footer__social:hover {
	background: rgb(255 255 255 / 22%);
}

.site-footer__social .icoon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
}

.site-footer__links {
	list-style: none;
}

.site-footer__links li + li {
	margin-top: 17.6px; /* regelafstand 43.6 bij een regel van 26 */
}

.site-footer__links a {
	font-size: 16px;
	line-height: 26px;
	color: var(--c-grijs-3);
	text-decoration: none;
	transition: color var(--dur-kort) var(--ease-out);
}

.site-footer__links a:hover {
	color: var(--c-wit);
}

/* Onderbalk met deellijn (grijs-3 op 25%, zoals in het ontwerp). */
.site-footer__onderbalk {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: 72px;
	padding: 25px 0 31px;
	border-top: 1px solid rgb(213 213 213 / 25%);
	font-size: 14px;
	line-height: 1.2;
}

.site-footer__copyright {
	margin: 0;
}

.site-footer__juridisch {
	display: flex;
	gap: 30px;
	list-style: none;
}

.site-footer__juridisch a {
	color: var(--c-grijs-3);
	text-decoration: none;
	transition: color var(--dur-kort) var(--ease-out);
}

.site-footer__juridisch a:hover {
	color: var(--c-wit);
}

@media (max-width: 767px) {
	.site-footer__grid {
		display: block;
		padding-top: 60px;
	}

	/* Met een CTA-balk erboven hangt die band 159px in het donkere vlak;
	 * de inhoud begint dan op 195px zodat er 36px lucht onder de band zit. */
	.site-footer--met-cta .site-footer__grid {
		padding-top: 195px;
	}

	.site-footer__volgons {
		margin-top: 50px;
	}

	.site-footer__kolom {
		margin-top: 50px;
		padding-top: 0;
	}

	.site-footer__info + .site-footer__kolom {
		margin-top: 71px;
	}

	.site-footer__onderbalk {
		flex-direction: column-reverse;
		align-items: flex-start;
		gap: 0;
		margin-top: 50px;
		padding: 23px 0 44px;
	}

	.site-footer__juridisch {
		display: block;
	}

	.site-footer__juridisch li {
		margin-bottom: 23px;
	}
}
