/* Contact page parity with the supplied AHS reference, rebranded for VMC. */
.vmc-contact-page {
	--vmc-contact-primary: #b10f1b;
	--vmc-contact-secondary: #ccb169;
	--vmc-contact-text: #7a7a7a;
	--vmc-contact-input-bg: #eef0f5;
	--vmc-contact-input-bg-focus: #f5f6f9;
	color: var(--vmc-contact-text);
}

.vmc-contact-page .row {
	max-width: 1180px;
}

.vmc-contact-hero {
	min-height: 446px;
	background-color: #f3f4f4 !important;
	background-image: url("../images/vmc-contact-hero.png") !important;
	background-position: top center !important;
	background-size: cover !important;
}

.vmc-contact-hero::before,
.vmc-contact-hero::after {
	display: none !important;
}

.vmc-contact-hero > .section-content {
	display: flex;
	min-height: 446px;
	align-items: center;
}

.vmc-contact-hero-title {
	width: 100%;
	padding: 25px;
	text-align: center;
}

.vmc-contact-hero-title p {
	margin: 0;
	color: var(--vmc-contact-primary);
	font-size: 46px;
	font-weight: 700;
	line-height: 1.2;
}

.vmc-contact-info {
	padding-top: 100px !important;
	padding-bottom: 100px !important;
}

.vmc-contact-info h1 {
	margin: 0 0 22px;
	color: var(--vmc-contact-secondary);
	font-size: 44px;
	font-weight: 700;
	line-height: 1.15;
}

.vmc-contact-info h2 {
	max-width: 90%;
	margin: 0;
	color: var(--vmc-contact-primary);
	font-size: 28px;
	font-weight: 700;
	line-height: 1.35;
}

.vmc-contact-details {
	margin: 0;
	padding: 0;
	list-style: none;
	border: 0;
}

.vmc-contact-details--single {
	margin-bottom: 18px;
}

.vmc-contact-details--single:last-child {
	margin-bottom: 0;
}

.vmc-contact-details li {
	margin: 0 0 18px;
	padding: 0;
	border: 0;
}

.vmc-contact-details li:last-child {
	margin-bottom: 0;
}

.vmc-contact-details a {
	display: flex;
	min-height: 0;
	align-items: center;
	gap: 14px;
	padding: 0;
	color: var(--vmc-contact-text);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.55;
	transition: color .2s ease;
}

.vmc-contact-details a:hover {
	padding-left: 0;
	color: var(--vmc-contact-primary);
}

.vmc-contact-details__icon {
	display: inline-block;
	width: 22px;
	height: auto;
	flex: 0 0 22px;
	border: 0;
	border-radius: 0;
	color: var(--vmc-contact-primary);
	font-size: 20px;
}

.vmc-contact-details__copy {
	display: inline;
	min-width: 0;
}

.vmc-contact-main {
	padding-top: 100px !important;
	padding-bottom: 100px !important;
	background: #f0f1f1 !important;
}

.vmc-contact-main > .section-content > .row {
	max-width: 1180px !important;
}

.vmc-contact-map-panel > .col-inner {
	overflow: hidden;
	border-radius: 10px;
	box-shadow: 0 4px 11px rgba(0, 0, 0, .1);
}

.vmc-contact-map,
.vmc-contact-map iframe {
	display: block;
	width: 100%;
	height: 625px;
	min-height: 625px;
	border: 0;
}

.vmc-contact-form-panel > .col-inner {
	min-height: 625px;
	padding: 45px !important;
	background: transparent !important;
}

.vmc-contact-form-heading h2 {
	margin: 0 0 28px;
	color: var(--vmc-contact-primary);
	font-size: 28px;
	font-weight: 700;
	line-height: 1.35;
}

.vmc-contact-form-heading p {
	display: none;
}

.vmc-contact-form-panel .wpcf7 {
	margin-top: 0;
}

.vmc-contact-form-panel .vmc-contact-form-row {
	display: block;
}

.vmc-contact-form-panel label {
	display: block;
	margin-bottom: 15px;
	color: var(--vmc-contact-text);
	font-size: 14px;
	font-weight: 500;
}

.vmc-contact-form-panel input:not([type="submit"]),
.vmc-contact-form-panel textarea {
	width: 100%;
	margin-top: 9px;
	border: 1px solid #d9dde7;
	border-radius: 2px;
	background: var(--vmc-contact-input-bg);
	box-shadow: 0 6px 16px rgba(31, 45, 68, .08), inset 0 1px 0 rgba(255, 255, 255, .72);
	color: #2b3342;
	font-size: 15px;
	transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.vmc-contact-form-panel input:not([type="submit"]):hover,
.vmc-contact-form-panel textarea:hover {
	border-color: #c9cfdd;
	box-shadow: 0 8px 18px rgba(31, 45, 68, .1), inset 0 1px 0 rgba(255, 255, 255, .8);
}

.vmc-contact-form-panel input:not([type="submit"]) {
	height: 48px;
	padding: 0 14px;
}

.vmc-contact-form-panel textarea {
	min-height: 112px;
	padding: 12px 14px;
	resize: vertical;
}

.vmc-contact-form-panel input::placeholder,
.vmc-contact-form-panel textarea::placeholder {
	color: #a5a9b3;
}

.vmc-contact-form-panel input:focus,
.vmc-contact-form-panel textarea:focus {
	border-color: rgba(177, 15, 27, .38);
	background: var(--vmc-contact-input-bg-focus);
	box-shadow: 0 0 0 3px rgba(177, 15, 27, .1), 0 8px 20px rgba(31, 45, 68, .1);
	outline: 0;
}

.vmc-contact-form-panel input[type="submit"] {
	width: 230px;
	max-width: 100%;
	height: 48px;
	margin-top: 25px;
	border: 1px solid var(--vmc-contact-secondary);
	border-radius: 999px;
	background: transparent;
	color: var(--vmc-contact-primary);
	font-size: 14px;
	font-weight: 700;
	text-transform: none;
}

.vmc-contact-form-panel input[type="submit"]:hover {
	border-color: var(--vmc-contact-secondary);
	background: var(--vmc-contact-secondary);
	color: #fff;
}

.vmc-contact-form-panel .wpcf7-not-valid-tip {
	color: #b10f1b;
	font-size: 12px;
}

.vmc-contact-form-panel .wpcf7-response-output {
	margin: 20px 0 0;
	color: var(--vmc-contact-text);
}

@media (max-width: 767px) {
	.vmc-contact-hero,
	.vmc-contact-hero > .section-content {
		min-height: 210px;
	}

	.vmc-contact-hero-title {
		padding: 20px;
	}

	.vmc-contact-hero-title p {
		font-size: 29px;
	}

	.vmc-contact-info {
		padding-top: 86px !important;
		padding-bottom: 86px !important;
	}

	.vmc-contact-info h1 {
		font-size: 36px;
	}

	.vmc-contact-info h2 {
		max-width: 100%;
		margin-bottom: 38px;
		font-size: 24px;
	}

	.vmc-contact-main {
		padding: 86px 10px !important;
	}

	.vmc-contact-form-panel {
		order: 1;
	}

	.vmc-contact-map-panel {
		order: 2;
	}

	.vmc-contact-form-panel > .col-inner {
		min-height: 0;
		padding: 10px 10px 40px !important;
	}

	.vmc-contact-form-panel input[type="submit"] {
		width: 100%;
	}

	.vmc-contact-map-panel > .col-inner {
		padding: 10px;
	}

	.vmc-contact-map,
	.vmc-contact-map iframe {
		height: 480px;
		min-height: 480px;
	}
}
