.hero-contact {
	background-image:
		linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.95));
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.contact-layout {
	align-items: flex-start;
}
.contact-panel-left,
.contact-panel-right {
	display: flex;
	flex-direction: column;
	gap: var(--space-10);
}
.contact-intro .contact-routing-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: var(--space-5);
	margin-top: var(--space-6);
}
.btn-routing {
	justify-content: flex-start;
	font-size: var(--text-xs);
}
.contact-hq .timeline-route {
	margin-top: var(--space-6);
}
.contact-form-card {
	align-self: stretch;
}
.contact-form {
	display: flex;
	flex-direction: column;
	gap: var(--space-7);
}
.contact-form-grid {
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
.contact-checkbox-group legend {
	margin-bottom: var(--space-4);
}
.contact-tags-grid {
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.contact-tag {
	display: flex;
	align-items: center;
	gap: var(--space-3);
	padding: 0.4rem 0.7rem;
	border-radius: var(--radius-pill);
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(5, 6, 9, 0.9);
	font-size: var(--text-xs);
	cursor: pointer;
	transition:
		background var(--transition-base),
		border-color var(--transition-base),
		box-shadow var(--transition-base);
}
.contact-tag input {
	accent-color: var(--color-amber);
}
.contact-tag:hover {
	background: rgba(8, 10, 14, 0.95);
	border-color: rgba(246, 166, 35, 0.7);
	box-shadow: 0 0 0 1px rgba(246, 166, 35, 0.2);
}
.contact-meta-panel {
	margin-top: var(--space-4);
}
.contact-privacy {
	margin-top: var(--space-6);
}
.contact-actions {
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
	margin-top: var(--space-4);
}
.contact-lines,
.contact-extras {
	align-items: stretch;
}
.contact-nav-cta .contact-nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-4);
	justify-content: flex-end;
}
@media (max-width: 1024px) {
	.hero-contact {
		min-height: 50vh;
		background-position: top;
	}
	.contact-panel-left,
	.contact-panel-right {
		gap: var(--space-8);
	}
}
@media (max-width: 768px) {
	.hero-contact {
		min-height: 52vh;
	}
	.contact-layout {
		grid-template-columns: 1fr;
	}
	.contact-panel-right {
		order: -1;
	}
	.contact-nav-cta .contact-nav-links {
		justify-content: flex-start;
	}
}
@media (max-width: 480px) {
	.contact-tags-grid {
		grid-template-columns: 1fr;
	}
	.contact-nav-cta .contact-nav-links {
		flex-direction: column;
	}
	.hero-contact {
		background-position: center right;
	}
}
