:root {
	--leader-height: 600px;
	--color-highlight: var(--color-yellow);
}

.cb-box__type-embed {
	margin: 0;
}

.cb-box__inner-col {
	padding: var(--spacing-4);
}

.prose h2 {
	margin-top: 0;
}

.prose p {
	margin-bottom: var(--spacing-6);
}

.contact-text {
	margin-top: var(--spacing-10);
	margin-bottom: var(--spacing-6);
}

.contact-map {
	margin-top: var(--spacing-6);
	padding-top: 0;
	width: 100%;
	display: flex;
	justify-content: center;
}

.contact-map iframe {
	max-width: 1280px;
	width: 100%;
	height: 600px;
}

/* Override leader styles for contact page */
.leader-content {
	position: relative;
	z-index: 2;
	margin-top: var(--spacing-6);
	padding-bottom: var(--spacing-8);
}

/* Allow leader to expand on contact page */
body:has(.leader-content) .leader {
	height: auto !important;
	padding-top: 150px;
	min-height: var(--leader-height);
	overflow: visible !important;
	padding-bottom: 0px;
}

/* Ensure background image still covers the area */
body:has(.leader-content) .leader figure {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	min-height: var(--leader-height);
	z-index: 0;
}

/* Keep text on top */
body:has(.leader-content) .leader-text-container {
	position: relative;
	z-index: 1;
}

/* Mobile Layout - Form appears right after prose content */
@media screen and (max-width: 71.99rem) {
	.contact-form {
		margin-top: 0;
		margin-bottom: 0px;
	}
}

@media screen and (min-width: 40rem) {
	:root {
		--leader-height: 500px;
	}
}

@media screen and (min-width: 72rem) {
	.grid {
		grid-template-columns: 1fr 1fr;
	}

	.leader-content {
		padding-bottom: var(--spacing-12);
	}

	.contact-form {
		margin: 0;
	}

	.contact-map iframe {
		height: 500px;
	}
}