/* V2 additions are scoped so the existing shared footer styles remain intact. */
.site-footer-v2 .site-footer__main-top {
	display: grid;
	grid-template-columns: minmax(170px, 1.2fr) repeat(4, minmax(120px, 1fr));
	gap: clamp(12px, 1.5vw, 24px);
	align-items: start;
}

.site-footer-v2 .site-footer__main-top-logo > svg {
	display: block;
	width: min(165px, 100%);
	height: auto;
	margin-inline: auto;
}

.site-footer-v2--campus .site-footer__main-top-logo > svg {
	width: min(180px, 100%);
	margin-inline: 0 auto;
}

.site-footer-v2 .site-footer__main-top-logo .site-footer__contact-info {
	margin-top: 24px;
}

.site-footer-v2 .site-footer__main-top-logo .site-footer__contact-info h3 {
	margin: 0 0 8px;
}

.site-footer-v2 .site-footer__main-top-logo .site-footer__contact-info address {
	margin: 0;
	line-height: 1.45;
}

.site-footer-v2 .site-footer__main-top-logo .site-footer__contact-info address p {
	margin: 0 0 6px;
}

.site-footer-v2 .site-footer__main-top-logo .site-footer__contact-info address p + br {
	display: none;
}

.site-footer-v2--state .site-footer__main-top-logo .site-footer__contact-info,
.site-footer-v2--campus .site-footer__main-top-logo .site-footer__contact-info {
	max-width: 240px;
	margin-inline: auto;
	text-align: center;
}

.site-footer-v2--campus .site-footer__main-top-logo .site-footer__contact-info {
	text-align: left;
}

.site-footer-v2--state .site-footer__main-top-logo .site-footer__contact-info address,
.site-footer-v2--campus .site-footer__main-top-logo .site-footer__contact-info address {
	font-size: 15px;
	line-height: 1.4;
}

.site-footer-v2--state .site-footer__main-top-logo .site-footer__contact-info h3,
.site-footer-v2--campus .site-footer__main-top-logo .site-footer__contact-info h3 {
	line-height: 1.3;
}

.site-footer-v2--campus .site-footer__main-top-logo .site-footer__contact-info address p {
	margin-bottom: 16px;
}

.site-footer-v2--district .site-footer__district-name {
	margin: 24px 0 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.35;
	text-align: center;
}

.site-footer-v2 .site-footer__main-bottom {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: flex-start;
	gap: 24px;
	margin-top: 30px;
}

.site-footer-v2 .site-footer__campus-social {
	grid-column: 1;
	grid-row: 1;
	justify-self: start;
}

.site-footer-v2 .site-footer__campus-social .site-footer__social-icons h3 {
	text-align: left;
}

.site-footer-v2--campus .site-footer__campus-social {
	grid-column: 2;
	justify-self: center;
}

.site-footer-v2 .site-footer__campus-reviews {
	grid-column: 3;
	grid-row: 1;
	justify-self: end;
}

.site-footer-v2 .site-footer__campus-contact {
	grid-column: 1;
	grid-row: 1;
	justify-self: start;
}

.site-footer-v2--campus .site-footer__campus-contact .site-footer__contact-info {
	max-width: 240px;
	margin-top: 0;
	text-align: left;
}

.site-footer-v2--campus .site-footer__campus-contact .site-footer__contact-info h3 {
	margin: 0 0 8px;
	line-height: 1.3;
}

.site-footer-v2--campus .site-footer__main-bottom .site-footer__campus-row-section h3 {
	margin-top: 0;
	line-height: 1.3;
}

.site-footer-v2--campus .site-footer__campus-contact .site-footer__contact-info address {
	margin: 0;
	font-size: 15px;
	line-height: 1.4;
}

.site-footer-v2--campus .site-footer__campus-contact .site-footer__contact-info address p {
	margin: 0 0 16px;
}

.site-footer-v2--campus .site-footer__campus-contact .site-footer__contact-info address p + br {
	display: none;
}

.site-footer-v2--state .site-footer__main-bottom {
	margin-top: 22px;
}

.site-footer-v2--state .site-footer__social-icons h3 {
	margin-bottom: 14px;
}

.site-footer-v2 .site-footer__cookie-statement,
.site-footer-v2 .site-footer__credits-copyright {
	margin: 0;
	font-size: 12px;
}

.site-footer-v2 .site-footer__credits {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-areas:
		"legal"
		"cookie"
		"copyright";
	row-gap: 0;
	align-items: start;
}

.site-footer-v2 .site-footer__credits-nav {
	grid-area: legal;
	justify-self: start;
	align-self: start;
	min-width: 0;
	max-width: 100%;
	margin-bottom: 20px;
}

.site-footer-v2 .site-footer__credits-nav .footer-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 8px 18px;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.site-footer-v2 .site-footer__credits-nav .footer-nav li,
.site-footer-v2 .site-footer__credits-nav .footer-nav a,
.site-footer-v2 .site-footer__credits-nav .footer-nav span {
	max-width: 100%;
}

.site-footer-v2 .site-footer__credits-nav .footer-nav a {
	display: inline-block;
	white-space: normal;
	overflow-wrap: anywhere;
}

.site-footer-v2 .site-footer__cookie-statement {
	grid-area: cookie;
}

.site-footer-v2 .site-footer__credits-copyright {
	grid-area: copyright;
	margin-top: 16px;
}

.site-footer-v2 .site-footer__social-label {
	display: inline-block;
	font-size: 11px;
	line-height: 1.2;
}

.site-footer-v2 .footer-social-list svg {
	display: block;
	width: 35px;
	height: 35px;
}

@media (max-width: 1024px) {
	.site-footer-v2 .site-footer__main-top {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.site-footer-v2 .site-footer__main-top-logo {
		grid-column: 1 / -1;
	}

}

@media (max-width: 640px) {
	.site-footer-v2 .site-footer__main-top {
		grid-template-columns: 1fr;
	}

	.site-footer-v2 .site-footer__credits {
		grid-template-columns: 1fr;
		grid-template-areas:
			"legal"
			"cookie"
			"copyright";
		width: 100%;
		min-width: 0;
	}

	.site-footer-v2 .site-footer__credits-nav {
		width: 100%;
		justify-self: start;
	}

	.site-footer-v2 .site-footer__credits-nav .footer-nav {
		width: 100%;
		justify-content: flex-start;
	}

	.site-footer-v2 .site-footer__cookie-statement,
	.site-footer-v2 .site-footer__credits-copyright {
		width: 100%;
		min-width: 0;
		overflow-wrap: anywhere;
	}

	.site-footer-v2 .site-footer__main-bottom {
		grid-template-columns: 1fr;
	}

	.site-footer-v2 .site-footer__campus-contact,
	.site-footer-v2 .site-footer__campus-social,
	.site-footer-v2 .site-footer__campus-reviews {
		grid-column: 1;
		grid-row: auto;
		justify-self: center;
	}

	.site-footer-v2--campus .site-footer__campus-contact,
	.site-footer-v2--campus .site-footer__campus-social,
	.site-footer-v2--campus .site-footer__campus-reviews {
		width: 100%;
		justify-self: start;
		text-align: left;
	}

	.site-footer-v2--campus .site-footer__campus-social .site-footer__social-icons h3,
	.site-footer-v2--campus .site-footer__campus-reviews .site-footer__social-icons h3 {
		text-align: left;
	}

	.site-footer-v2--campus .site-footer__campus-social ul,
	.site-footer-v2--campus .site-footer__campus-reviews ul {
		justify-content: flex-start;
	}
}
