/**
 * Contact pages FR/EN — layout only.
 */

.met-contact-page {
	--met-contact-accent: #f0a126;
}

.met-contact-page,
.elementor .met-contact-page.e-con {
	background: #ffffff;
	padding-block: clamp(3.5rem, 8vw, 6.5rem) clamp(4rem, 9vw, 7.5rem);
}

.met-contact-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.18fr);
	gap: clamp(2.5rem, 6vw, 5rem);
	align-items: start;
}

.elementor .met-contact-layout.e-con {
	display: block;
}

.elementor .met-contact-layout.e-con,
.elementor .met-contact-layout > .e-con-inner {
	display: grid !important;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.18fr);
	gap: clamp(2.5rem, 6vw, 5rem);
	align-items: start;
}

.met-contact-aside {
	position: relative;
	padding-bottom: 8.5rem;
}

.met-contact-title,
.met-contact-form-title,
.met-contact-title .elementor-heading-title,
.met-contact-form-title .elementor-heading-title {
	position: relative;
	margin: 0;
	padding-top: 1.15rem;
	color: var(--met-forest);
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 1.08;
}

.met-contact-title,
.met-contact-title .elementor-heading-title {
	font-size: clamp(2.8rem, 6vw, 4.35rem);
}

.met-contact-form-title,
.met-contact-form-title .elementor-heading-title {
	margin-bottom: 1.6rem;
	font-size: clamp(1.55rem, 2.4vw, 1.9rem);
}

.met-contact-title::before,
.met-contact-form-title::before,
.met-contact-aside::after {
	content: "";
	position: absolute;
	left: 0;
	background: #f0a126;
	border-radius: 99px;
}

.met-contact-title::before,
.met-contact-form-title::before {
	top: 0;
	width: 2.65rem;
	height: 0.28rem;
}

.met-contact-aside::after {
	bottom: 5.35rem;
	width: 2.65rem;
	height: 0.28rem;
}

.met-contact-lead {
	max-width: 34ch;
	margin: 1.35rem 0 2.35rem;
	color: #243833;
	font-size: clamp(1.05rem, 1.5vw, 1.18rem);
	font-weight: 450;
	line-height: 1.65;
}

.met-contact-details {
	margin: 0 0 0.4rem;
	padding: 0;
	list-style: none;
}

.met-contact-details__item {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	margin: 0 0 1.45rem;
}

.met-contact-details__icon {
	flex: 0 0 3rem;
	width: 3rem;
	height: 3rem;
	border: 1.5px solid rgba(240, 161, 38, 0.38);
	border-radius: 50%;
	background-color: #fff8eb;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1.15rem;
}

.met-contact-details__icon--mail {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23F0A126' stroke-width='1.8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M4 7.5h16v9H4z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m4.5 8 7.5 5 7.5-5'/%3E%3C/svg%3E");
}

.met-contact-details__icon--web {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23F0A126' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Cpath stroke-linecap='round' d='M4 12h16M12 4c2.4 2.4 3.6 4.8 3.6 8s-1.2 5.6-3.6 8c-2.4-2.4-3.6-4.8-3.6-8s1.2-5.6 3.6-8z'/%3E%3C/svg%3E");
}

.met-contact-details__icon--pin {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23F0A126' stroke-width='1.8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M12 21s6.5-5.4 6.5-10.2A6.5 6.5 0 0 0 5.5 10.8C5.5 15.6 12 21 12 21z'/%3E%3Ccircle cx='12' cy='10.8' r='2'/%3E%3C/svg%3E");
}

.met-contact-details__copy {
	display: flex;
	flex-direction: column;
	gap: 0.18rem;
	padding-top: 0.15rem;
}

.met-contact-details__copy strong {
	color: var(--met-forest);
	font-size: 1.02rem;
	font-weight: 700;
}

.met-contact-details__copy a,
.met-contact-details__copy {
	color: #1f2d29;
	font-size: 1.02rem;
	line-height: 1.4;
	text-decoration: none;
}

.met-contact-details__copy a {
	color: var(--met-teal);
	font-weight: 600;
}

.met-contact-details__copy a:hover,
.met-contact-details__copy a:focus-visible {
	text-decoration: underline;
}

.met-contact-flora {
	position: absolute;
	left: -0.6rem;
	bottom: -1.4rem;
	width: 13.5rem;
	height: 8.5rem;
	pointer-events: none;
	background:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 140'%3E%3Cpath fill='%23F0A126' fill-opacity='0.18' d='M28 118c22-38 48-62 86-74-18 28-16 54 8 78-38 2-68-2-94-4z'/%3E%3Cpath fill='%23F0A126' fill-opacity='0.12' d='M86 128c18-44 52-70 96-78-8 30 2 52 28 70-46 8-86 10-124 8z'/%3E%3Cpath fill='%23F0A126' fill-opacity='0.22' d='M18 126c10-26 28-40 54-46-14 18-8 34 10 48-26 4-46 2-64-2z'/%3E%3C/svg%3E") no-repeat left bottom / contain;
}

.met-contact-form-panel,
.elementor .met-contact-form-panel.e-con {
	width: 100%;
	padding: 2.15rem 2rem 2rem;
	background: #ffffff;
	border: 1px solid rgba(240, 161, 38, 0.28);
	border-radius: 22px;
	box-shadow: 0 22px 48px rgba(240, 161, 38, 0.08);
}

.met-contact-form {
	margin: 0;
}

.met-contact-form .met-form__field {
	margin: 0 0 1.2rem;
}

.met-contact-form label {
	display: block;
	margin-bottom: 0.5rem;
	color: var(--met-forest);
	font-size: 0.98rem;
	font-weight: 700;
}

.met-contact-form .met-form__req {
	color: #d6453d;
	font-weight: 700;
	text-decoration: none;
}

.met-contact-form input,
.met-contact-form select,
.met-contact-form textarea {
	width: 100%;
	padding: 0.95rem 1rem 0.95rem 2.85rem;
	border: 1px solid #d9e3df;
	border-radius: 12px;
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-position: 1rem 50%;
	background-size: 1.05rem;
	color: var(--met-ink);
	font: inherit;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.met-contact-form textarea {
	min-height: 9.5rem;
	padding-top: 1rem;
	background-position: 1rem 1.05rem;
	resize: vertical;
}

.met-contact-form select {
	appearance: none;
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23004b3c' stroke-width='1.8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M8 7h8M8 12h8M8 17h5'/%3E%3C/svg%3E"),
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23004b3c' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	background-position: 1rem 50%, calc(100% - 0.95rem) 50%;
	background-size: 1.05rem, 0.95rem;
	padding-right: 2.6rem;
	color: #6b7a75;
}

.met-contact-form select:invalid {
	color: #6b7a75;
}

.met-contact-form select:valid {
	color: var(--met-ink);
}

.met-contact-form__field--name input {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23004b3c' stroke-width='1.8'%3E%3Ccircle cx='12' cy='8' r='3.2'/%3E%3Cpath stroke-linecap='round' d='M5.5 19c1.2-3.2 3.4-4.6 6.5-4.6S16.8 15.8 18.5 19'/%3E%3C/svg%3E");
}

.met-contact-form__field--org input {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23004b3c' stroke-width='1.8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M4 20V8l8-4 8 4v12H4z'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/svg%3E");
}

.met-contact-form__field--email input {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23004b3c' stroke-width='1.8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M4 7.5h16v9H4z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m4.5 8 7.5 5 7.5-5'/%3E%3C/svg%3E");
}

.met-contact-form__field--message textarea {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23004b3c' stroke-width='1.8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M5 6h14v9H8l-3 3V6z'/%3E%3C/svg%3E");
}

.met-contact-form input::placeholder,
.met-contact-form textarea::placeholder {
	color: #8a9893;
}

.met-contact-form input:hover,
.met-contact-form select:hover,
.met-contact-form textarea:hover {
	border-color: #b7cfc8;
}

.met-contact-form input:focus,
.met-contact-form select:focus,
.met-contact-form textarea:focus {
	outline: none;
	border-color: var(--met-teal);
	box-shadow: 0 0 0 3px rgba(0, 142, 137, 0.14);
}

.met-contact-form .met-form__actions {
	margin: 1.15rem 0 0;
}

.met-contact-form .met-btn.met-contact-form__submit,
.met-contact-form__submit {
	width: 100%;
	min-height: 3.15rem;
	border-color: #f0a126;
	border-radius: 999px;
	background: #f0a126;
	color: #ffffff;
	font-size: 1.02rem;
}

.met-contact-form .met-btn.met-contact-form__submit:hover,
.met-contact-form .met-btn.met-contact-form__submit:focus-visible,
.met-contact-form__submit:hover,
.met-contact-form__submit:focus-visible {
	border-color: #f0a126;
	background: #f0a126;
	color: #ffffff;
	filter: brightness(0.94);
}

.met-contact-form__send-icon {
	display: inline-block;
	width: 1.05rem;
	height: 1.05rem;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23ffffff' stroke-width='1.9'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M4 12 20 4l-6.5 16-2.2-6.3L4 12z'/%3E%3C/svg%3E") center / contain no-repeat;
}

@media (max-width: 960px) {
	.met-contact-layout,
	.elementor .met-contact-layout.e-con,
	.elementor .met-contact-layout > .e-con-inner {
		grid-template-columns: 1fr;
		gap: 2.25rem;
	}

	.met-contact-lead {
		max-width: 46ch;
	}

	.met-contact-aside {
		padding-bottom: 5.5rem;
	}
}

@media (max-width: 640px) {
	.met-contact-form-panel,
	.elementor .met-contact-form-panel.e-con {
		padding: 1.45rem 1.15rem 1.3rem;
	}

	.met-contact-flora {
		width: 10.5rem;
		height: 6.5rem;
	}
}
