/**
 * Contact Form - "Get In Touch" section
 * Black background, white text, form fields with white bg
 * Matches Figma design
 */

.contact-form-section {
	background-color: #000;
	padding: 40px 24px 56px;
}

@media (min-width: 768px) {
	.contact-form-section {
		padding: 56px 24px 72px;
	}
}

.contact-form-section__inner {
	max-width: 800px;
	margin: 0 auto;
	padding-top: 0;
	padding-bottom: 40px;
}

.contact-form-section__title {
	font-family: "Playfair Display", Georgia, serif;
	color: #fff;
	font-size: 28px;
	font-weight: 600;
	text-align: center;
	margin: 0 0 40px;
	text-transform: capitalize;
}

@media (min-width: 768px) {
	.contact-form-section__title {
		font-size: 32px;
		margin-bottom: 48px;
	}
}

.contact-form-section__form {
	width: 100%;
}

/* Built-in form layout: 2 columns on desktop */
.contact-form-section__fields {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.contact-form-section__row {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

@media (min-width: 600px) {
	.contact-form-section__row--two {
		flex-direction: row;
		gap: 24px;
	}

	.contact-form-section__row--two .contact-form-section__field {
		flex: 1;
	}
}

.contact-form-section__field {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.contact-form-section__field label {
	font-family: "Nunito", Arial, Helvetica, sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: #fff;
}

.contact-form-section__required {
	color: #e74c3c;
}

.contact-form-section__field input,
.contact-form-section__field textarea {
	font-family: "Nunito", Arial, Helvetica, sans-serif;
	font-size: 16px;
	padding: 14px 16px;
	background-color: #fff;
	color: #1a1a1a;
	border: 1px solid #e0e0e0;
	border-radius: 2px;
	width: 100%;
	transition: border-color 0.2s;
}

.contact-form-section__field input:focus,
.contact-form-section__field textarea:focus {
	outline: none;
	border-color: #8ea9a2;
}

.contact-form-section__field input::placeholder,
.contact-form-section__field textarea::placeholder {
	color: #999;
}

.contact-form-section__field textarea {
	min-height: 140px;
	resize: vertical;
}

.contact-form-section__submit-wrap {
	display: flex;
	justify-content: center;
	margin-top: 16px;
}

.contact-form-section__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 60px;
	background-color: #8ea9a2;
	color: #fff;
	border: 2px solid #8ea9a2;
	border-radius: 8px;
	font-family: "Nunito", Arial, Helvetica, sans-serif;
	font-size: 14px;
	text-transform: capitalize;
	cursor: pointer;
	transition: background-color 0.2s, border-color 0.2s;
	text-align: center;
	font-weight: 400;
	line-height: normal;
}

.contact-form-section__submit:hover {
	background-color: black;
	border-color: 2px solid white;
	color: #fff;
}

.contact-form-section__message {
	font-family: "Nunito", Arial, Helvetica, sans-serif;
	font-size: 16px;
	padding: 16px;
	border-radius: 8px;
	text-align: center;
	margin: 0 0 24px;
}

.contact-form-section__message--success {
	background-color: rgba(141, 186, 168, 0.3);
	color: #fff;
	border: 1px solid #8ea9a2;
}

.contact-form-section__message--error {
	background-color: rgba(200, 80, 80, 0.2);
	color: #ffcccc;
	border: 1px solid #c85050;
}

/* Contact Form 7 overrides for this section */
.contact-form-section__form--cf7 .wpcf7 {
	background: transparent;
	padding: 0;
}

.contact-form-section__form--cf7 .wpcf7-form-control-wrap {
	display: block;
}

.contact-form-section__form--cf7 input[type="text"],
.contact-form-section__form--cf7 input[type="email"],
.contact-form-section__form--cf7 input[type="tel"],
.contact-form-section__form--cf7 textarea {
	background-color: #fff;
	color: #1a1a1a;
	border: 1px solid #e0e0e0;
	border-radius: 2px;
	padding: 14px 16px;
	width: 100%;
}

.contact-form-section__form--cf7 .wpcf7-submit {
	background-color: #8ea9a2;
	color: #fff;
	border: none;
	border-radius: 4px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.1s ease-in;
}

.contact-form-section__form--cf7 .wpcf7-submit:hover {
	background-color: var(--color-black);
	box-shadow:0px 0px 0px 1px var(--color-blank) inset;
}

.page-template-page-contact-us .wpcf7-form .wpcf7-response-output {
	color: #fff;
}