.gl-contact-hero {
	background: var(--gl-black-2);
	color: var(--gl-text-dark);
	padding: clamp(48px, 7vh, 76px) 0;
}
.gl-contact-hero__kicker { color: var(--gl-green); margin-bottom: 12px; }
.gl-contact-hero__heading { font-size: clamp(32px, 4.4vw, 52px); line-height: 0.98; margin: 0 0 14px; }
.gl-contact-hero__subline { max-width: 640px; font-size: 16px; line-height: 1.6; color: var(--gl-text-dark-2); margin: 0; }

.gl-contact-band { background: var(--gl-black); padding: clamp(48px, 7vh, 80px) 0; }
.gl-contact-band--alt { background: var(--gl-black-2); }
.gl-contact-band__inner {
	display: grid;
	grid-template-columns: 0.85fr 1.15fr;
	gap: clamp(32px, 5vw, 64px);
	align-items: start;
}
.gl-contact-band__intro h2 { color: var(--gl-text-dark); font-size: clamp(24px, 2.8vw, 34px); margin: 0 0 14px; }
.gl-contact-band__body { color: var(--gl-text-dark-2); font-size: 15px; line-height: 1.6; margin: 0; max-width: 380px; }
.gl-contact__admin-notice { color: #ff8a80; font-size: 13px; }

.gl-contact-offices { background: var(--gl-bg); padding: clamp(48px, 7vh, 72px) 0; }
.gl-contact-offices__grid {
	margin-top: 22px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 24px;
}
.gl-contact-offices__city { font-style: italic; font-weight: 800; text-transform: uppercase; font-size: 17px; color: var(--gl-text-light); margin-bottom: 6px; }
.gl-contact-offices__addr { font-size: 14px; line-height: 1.5; color: var(--gl-text-light-2); margin-bottom: 6px; }
.gl-contact-offices__phone { display: inline-block; font-size: 14px; font-weight: 600; color: var(--gl-green-dark); }
.gl-contact-offices__phone:hover { color: var(--gl-green); }

@media (max-width: 780px) {
	.gl-contact-band__inner { grid-template-columns: 1fr; }
	.gl-contact-band__body { max-width: none; }
}
