/**
 * Homepage Contact section.
 */

.home-contact {
	padding: clamp(4rem, 10vw, 7rem) 0;
	scroll-margin-top: calc(var(--ag-header-main-height) + 1rem);
	color: var(--ag-color-white);
	background: var(--ag-color-brand-secondary);
}

.home-contact__container {
	display: grid;
	width: min(100% - (2 * var(--ag-layout-gutter)), var(--ag-layout-wide));
	margin-inline: auto;
	gap: clamp(2.5rem, 8vw, 6rem);
}

.home-contact__content,
.contact-details {
	min-width: 0;
}

.home-contact__eyebrow {
	display: flex;
	align-items: center;
	margin: 0 0 1rem;
	gap: 0.75rem;
	color: #f0c36a;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.4;
	overflow-wrap: anywhere;
}

.home-contact__eyebrow::before {
	flex: 0 0 2.25rem;
	height: 0.125rem;
	content: "";
	background: var(--ag-color-brand-accent);
}

.home-contact__title {
	max-width: 16ch;
	margin: 0;
	font-size: clamp(2rem, 5vw, 3.5rem);
	letter-spacing: -0.03em;
	line-height: 1.1;
	overflow-wrap: anywhere;
	text-wrap: balance;
}

.home-contact__intro,
.home-contact__supporting {
	max-width: 43rem;
	margin: 1.25rem 0 0;
	color: #e0e8f2;
	font-size: clamp(1rem, 2vw, 1.125rem);
	line-height: 1.7;
	overflow-wrap: anywhere;
}

.home-contact__supporting {
	margin-top: 0.875rem;
	color: #c8d4e3;
	font-size: 1rem;
}

.contact-details {
	display: grid;
	margin: 0;
	font-style: normal;
	border-top: 1px solid rgb(255 255 255 / 20%);
}

.contact-detail {
	padding: 1.25rem 0;
	border-bottom: 1px solid rgb(255 255 255 / 20%);
}

.contact-detail__label {
	margin: 0 0 0.375rem;
	color: #f0c36a;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	line-height: 1.4;
	text-transform: uppercase;
}

.contact-detail__value {
	margin: 0;
	color: var(--ag-color-white);
	font-size: clamp(1rem, 2.2vw, 1.25rem);
	line-height: 1.5;
	overflow-wrap: anywhere;
}

a.contact-detail__value {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	text-decoration: none;
}

a.contact-detail__value:hover {
	text-decoration: underline;
	text-underline-offset: 0.25em;
}

@media (min-width: 48rem) {
	.home-contact__container {
		grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.85fr);
		align-items: center;
	}
}

@media (min-width: 64rem) {
	.home-contact {
		scroll-margin-top: calc(var(--ag-header-total-height) + 1rem);
	}
}
