/* Contact Form Section */
.contact-form-section .container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 34px;
}

.page-contact-us .contact-form-section {
	padding-top: 150px;
}

.contact-form-section .section-introduction img {
	width: 100%;
	height: auto;
	display: inline-block;
	object-fit: contain;
	margin-top: 10px;
}

.contact-form-section form.wpcf7-form {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 15px 19px;
}

.contact-form-section .section-introduction:has(h1,h2,h3,h4) > p:first-child {
	color: #2B363A;
	text-transform: uppercase;
}

.contact-form-section.previous-blue[class*="container-"]::before {
	background: linear-gradient(177deg, rgba(43, 54, 58, 0.00) 55.38%, #022532 145.55%), var(--background-blue, #3080B2);
}

.contact-form-section .additional-content {
	background-color: var(--light-blue, #EFF5FB);
	color: var(--body-text, #151515);
	font-size: 15px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: -0.45px;
	padding: 25px;
	border-radius: 20px;
	margin-top: 20px;
	display: inline-grid;
	width: 100%;
	grid-template-columns: 1fr 1fr;
	grid-gap: 0 15px;
}

.contact-form-section .additional-content > * {
	grid-column: -1 / 1;
}

.contact-form-section .additional-content p:has(br) strong,
.contact-form-section .additional-content p strong:only-child {
	font-size: 18px;
	font-weight: 700;
	line-height: 27px;
	letter-spacing: -0.9px;
}

.contact-form-section .additional-content p:has(a[href*="mailto:"], a[href*="tel:"]):has(br) {
	font-size: 12px;
	font-weight: 400;
	line-height: 19px;
	letter-spacing: -0.351px;
	background-color: #DFEEF8;
	padding: 8px 12px;
	border-radius: 10px;
	grid-column: auto;
}

.contact-form-section .additional-content p:has(a[href*="mailto:"], a[href*="tel:"]):has(br) :is(a[href*="mailto:"], a[href*="tel:"]) {
	font-size: 18px;
	font-weight: 700;
	line-height: 27px;
	letter-spacing: -0.936px;
	color: var(--body-text, #151515);
}

.contact-form-section .additional-content p:has(a[href*="mailto:"]):has(br) {
	grid-column: -1 / 1;
}

.contact-form-section .additional-content a[href*="mailto:"]:not(:hover, :focus),
.contact-form-section .additional-content a[href*="tel:"]:not(:hover, :focus) {
	text-decoration: none;
}

.contact-form-section .map-container {
	height: 765px;
	margin-top: -435px;
	z-index: 0;
}

.contact-form-section:has(.map-container) {
	padding-bottom: 0;
}

/* Contact Page Form */
.contact-page-form .section-introduction {
	font-size: 18px;
	font-weight: 400;
	line-height: 27px;
	letter-spacing: -0.36px;
}

.contact-page-form .contact-form-container {
	color: var(--body-text, #151515);
	background-color: var(--light-blue, #EFF5FB);
	backdrop-filter: blur(2px);
	border-radius: 20px;
	padding: 44px;
	max-width: 857px;
	margin-left: auto;
}

.contact-page-form .container {
	grid-template-columns: 34% auto;
	grid-gap: 14px;
}

.contact-page-form form.wpcf7-form input[type="text"],
.contact-page-form form.wpcf7-form input[type="email"],
.contact-page-form form.wpcf7-form input[type="tel"],
.contact-page-form form.wpcf7-form input[type="number"],
.contact-page-form form.wpcf7-form select,
.contact-page-form form.wpcf7-form textarea,
.contact-page-form .choices__inner {
	background-color: #fff;
}

.container-light-blue form.wpcf7-form input[type="text"],
.container-light-blue form.wpcf7-form input[type="email"],
.container-light-blue form.wpcf7-form input[type="tel"],
.container-light-blue form.wpcf7-form input[type="number"],
.container-light-blue form.wpcf7-form select,
.container-light-blue form.wpcf7-form textarea,
.container-light-blue .choices__inner {
	background-color: #fff;
}

@media screen and (min-width: 992px) {
	.contact-form-section .contact-form-container {
		padding-left: 26px;
	}

	.contact-form-section .section-introduction {
		padding-right: 40px;
	}

	.contact-form-section .section-introduction img {
		width: calc(100% + 40px);
		max-width: calc(100% + 40px);
	}
}

@media screen and (max-width: 991px) {
	.page-contact-us .contact-form-section {
		padding-top: 20px;
	}

	.contact-form-section .container,
	.contact-page-form .container {
		grid-template-columns: 1fr;
	}

	.contact-form-section form.wpcf7-form {
		grid-template-columns: 1fr;
	}

	.contact-form-section[class*="container-"][class*="previous-"]::before {
		max-height: 60%;
	}

	.contact-page-form .contact-form-container {
		padding: 22px;
	}

	.contact-form-section .map-container {
		height: auto;
		padding-top: 66.66%;
		margin: 22px 15px 0;
		width: calc(100% - 30px);
		border-radius: 20px 20px 0 0;
	}

	.contact-form-section .additional-content {
		padding: 22px;
	}
}

@media screen and (max-width: 575px) {
	.contact-form-section .container {
		grid-gap: 14px;
	}

	.contact-form-section[class*="container-"][class*="previous-"]::before {
		height: 375px;
		background: var(--background-blue, #3080B2);
		bottom: unset;
		top: 0;
	}

	.contact-form-section .section-introduction img {
		display: none;
	}
}

/* Sidebar Form */
.sidebar .widget .form-title {
	font-size: 20px;
	font-weight: 700;
	line-height: 26px;
	letter-spacing: -1px;
}

.sidebar .widget form.wpcf7-form {
	color: #fff;
	background-color: var(--dark-blue, #0A3E3F);
	padding: 31px 26px;
	width: calc(100% + 52px);
	margin: 0 -26px;
	border-radius: 20px;
	display: grid;
	grid-gap: 15px;
}

.sidebar .widget form.wpcf7-form input::placeholder,
.sidebar .widget form.wpcf7-form .choices,
.sidebar .widget form.wpcf7-form .choices__placeholder {
	color: var(--body-text, #151515);
}

.sidebar .widget form.wpcf7-form .wpcf7-form-control-wrap {
	margin-top: 0;
}

.sidebar .widget form.wpcf7-form a {
	color: #fff;
}

.sidebar .widget form.wpcf7-form input[type="submit"] {
	border-color: var(--green, #B7CE3F);
}

@media screen and (max-width: 991px) {
	.sidebar .widget:has(form.wpcf7-form) {
		display: none;
	}
}