/**
 * Contact Information section styles.
 */

.contact-information {
	--contact-information-pad-block: 3.75rem;
	--contact-information-pad-inline: var(--container-gutter);
	--contact-information-inner-max: var(--container-narrow-max); /* 1080 → scales wide */
	/* Figma 2267:10098 — Frame 228 gap 19; cards gap 19; card px 35 / py 60; title→body 28 */
	--contact-information-stack-gap: 1rem; /* 16px */
	--contact-information-info-gap: 1.1875rem; /* 19px between cards */
	--contact-information-item-pad-block: 2.75rem; /* 60px — space into map heading */
	--contact-information-item-pad-inline: 2.1875rem; /* 35px */
	--contact-information-item-gap: 1.75rem; /* 28px */
	--contact-information-map-gap: 1.125rem; /* ~18px heading → address */
	--contact-information-map-radius: 0.75rem;
	--contact-information-headline-size: var(--type-h2-size); /* 28–38px */
	--contact-information-title-size: clamp(1.25rem, 1.8vw, 1.375rem); /* 20–22px */
	--contact-information-body-size: 1rem;
	--contact-information-address-max: calc(23.75rem * var(--container-content-scale)); /* 380px */

	padding: var(--contact-information-pad-block) var(--contact-information-pad-inline);
	color: var(--color-white);
	background-color: var(--color-navy);
}

.contact-information__inner {
	display: flex;
	flex-direction: column;
	gap: var(--contact-information-stack-gap);
	align-items: center;
	width: 100%;
	max-width: var(--contact-information-inner-max);
	margin-inline: auto;
}

.contact-information__header {
	width: 100%;
	padding-bottom: 2rem;
	border-bottom: 0.5px solid var(--color-deck);
}

.contact-information__headline {
	margin: 0;
	width: 100%;
	font-family: var(--font-family-display);
	font-size: var(--contact-information-headline-size);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: -0.01em;
	text-align: center;
	color: var(--color-white);
}

.contact-information__info {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--contact-information-info-gap);
	align-items: start;
	width: 100%;
}

.contact-information__item {
	display: flex;
	flex-direction: column;
	gap: var(--contact-information-item-gap);
	align-items: flex-start;
	padding: 1rem var(--contact-information-item-pad-inline) var(--contact-information-item-pad-block) var(--contact-information-item-pad-inline);
}

.contact-information__item-title {
	margin: 0;
	width: 100%;
	font-family: var(--font-family-display);
	font-size: var(--contact-information-title-size);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: var(--color-white);
}

.contact-information__item-body {
	width: 100%;
	font-family: var(--font-family-sans);
	font-size: var(--contact-information-body-size);
	font-weight: 400;
	line-height: 1.5;
	color: var(--color-white);
}

.contact-information__item-body > *:first-child {
	margin-block-start: 0;
}

.contact-information__item-body > *:last-child {
	margin-block-end: 0;
}

.contact-information__item-body p {
	color: inherit;
}

.contact-information__item-body a {
	color: var(--content-link, var(--color-teal));
}

.contact-information__map-block {
	display: flex;
	flex-direction: column;
	gap: var(--contact-information-map-gap);
	align-items: center;
	width: 100%;
}

.contact-information__map-heading {
	margin: 0;
	width: 100%;
	font-family: var(--font-family-display);
	font-size: var(--contact-information-title-size);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: -0.01em;
	text-align: center;
	color: var(--color-white);
}

.contact-information__map-address {
	max-width: var(--contact-information-address-max);
	font-family: var(--font-family-sans);
	font-size: var(--contact-information-body-size);
	font-weight: 400;
	line-height: 1.5;
	text-align: center;
	color: var(--color-white);
}

.contact-information__map-address > *:first-child {
	margin-block-start: 0;
}

.contact-information__map-address > *:last-child {
	margin-block-end: 0;
}

.contact-information__map-address p {
	color: inherit;
}

.contact-information__map-address a {
	color: var(--content-link, var(--color-teal));
}

.contact-information__map {
	width: 100%;
	margin-block-start: 1.25rem; /* Figma address → map ~38px with map-gap 18 */
	overflow: hidden;
	border-radius: var(--contact-information-map-radius);
	aspect-ratio: 1080 / 512;
	background-color: rgba(255, 255, 255, 0.06);
}

.contact-information__map--embed iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: var(--contact-information-map-radius);
}

@media (min-width: 48rem) {
	.contact-information__info {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 47.9375rem) {
	.contact-information {
		--contact-information-pad-inline: var(--container-pad-inline);
		--contact-information-item-pad-block: 1.5rem;
		--contact-information-item-pad-inline: 0;
		--contact-information-item-gap: 1rem;
	}

	.contact-information__item {
		text-align: center;
		align-items: center;
	}

	.contact-information__item-title,
	.contact-information__item-body {
		text-align: center;
	}
}
