/* Shared Fluent Forms phone flag / dial-code styles */
.ff-contact-phone-wrap .iti,
.fluentform .iti {
	width: 100%;
	display: block;
}

.ff-contact-phone-wrap .iti__tel-input,
.fluentform .iti__tel-input {
	width: 100% !important;
}

.ff-contact-phone-wrap .iti__country-container,
.fluentform .iti__country-container {
	z-index: 30;
}

/* Flag / dial-code control: reset theme button padding + background */
.fluentform .iti__selected-country,
.fluentform .iti__selected-country:hover,
.fluentform .iti__selected-country:focus,
.fluentform .iti__selected-country:focus-visible,
.fluentform .iti__selected-country:active {
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	border: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	outline-offset: 0 !important;
	min-width: 0 !important;
	min-height: 0 !important;
	height: 100%;
	line-height: 1;
}

.fluentform .iti__selected-country:hover {
	color: #234d58 !important;
}

.fluentform .iti__selected-country-primary,
.fluentform .iti__selected-country-primary:hover,
.fluentform .iti__selected-country-primary:focus,
.fluentform .iti__selected-country-primary:focus-visible,
.fluentform .iti--allow-dropdown .iti__country-container .iti__selected-country-primary:hover {
	padding: 0 6px 0 10px !important;
	background: transparent !important;
	background-color: transparent !important;
	outline: none !important;
	box-shadow: none !important;
}

/* Remove focus-visible ring on flag / country control across all forms */
.fluentform .iti__country-container button:focus,
.fluentform .iti__country-container button:focus-visible,
.fluentform .iti__selected-country:focus-visible,
.fluentform .iti__selected-country-primary:focus-visible,
.fluentform .iti__selected-country:focus,
.fluentform .iti__selected-country-primary:focus {
	outline: none !important;
	box-shadow: none !important;
}

/* Country dropdown: rounded outer shell; list scrolls independently */
.fluentform .iti__dropdown-content,
.fluentform .iti--container .iti__dropdown-content,
.iti--container .iti__dropdown-content {
	border-radius: 12px !important;
	overflow: hidden !important;
}

.fluentform .iti__country-list,
.fluentform .iti--container .iti__country-list,
.iti--container .iti__country-list {
	max-height: 200px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
}

/*
 * Country search only.
 * Hello Elementor reset.css targets input[type=text] (0,1,1) and overrides
 * intl-tel-input's .iti__search-input (padding / radius / etc.).
 * Use input.iti__search-input[type=text] so only this field is corrected.
 */
input.iti__search-input[type="text"],
.iti--container input.iti__search-input[type="text"],
.iti__dropdown-content input.iti__search-input[type="text"] {
	width: 100%;
	/* Reset Elementor Fluent Forms field border-width only (keeps style/color unused at 0) */
	border-width: 0 !important;
	border-radius: 12px 12px 0 0;
	padding: 9px 12px;
	transition: none;
	color: #234d58;
	-webkit-text-fill-color: #234d58;
	caret-color: #234d58;
	background-color: #ffffff;
	background: #ffffff;
	outline: none;
	box-shadow: none;
}

input.iti__search-input[type="text"]:focus,
input.iti__search-input[type="text"]:focus-visible,
.iti--container input.iti__search-input[type="text"]:focus,
.iti--container input.iti__search-input[type="text"]:focus-visible,
.iti__dropdown-content input.iti__search-input[type="text"]:focus,
.iti__dropdown-content input.iti__search-input[type="text"]:focus-visible {
	outline: none;
	box-shadow: none;
}

input.iti__search-input[type="text"]::placeholder,
.iti--container input.iti__search-input[type="text"]::placeholder,
.iti__dropdown-content input.iti__search-input[type="text"]::placeholder {
	color: #6a7282;
	-webkit-text-fill-color: #6a7282;
	opacity: 1;
}

.fluentform .iti__country-name,
.iti__country-name {
	color: #234d58 !important;
	-webkit-text-fill-color: #234d58 !important;
}

/* Home Schedule Consultation form: dial code + arrow white on dark field */
.home .fluentform_wrapper_3,
.fluentform_wrapper_3 {
	--iti-arrow-color: #ffffff;
}

.home .fluentform_wrapper_3 .iti__selected-dial-code,
.fluentform_wrapper_3 .iti__selected-dial-code,
.home .fluentform_wrapper_3 .iti__selected-country,
.fluentform_wrapper_3 .iti__selected-country,
.home .fluentform_wrapper_3 .iti__selected-country-primary,
.fluentform_wrapper_3 .iti__selected-country-primary {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
}

.home .fluentform_wrapper_3 .iti__selected-country:hover,
.fluentform_wrapper_3 .iti__selected-country:hover,
.home .fluentform_wrapper_3 .iti__selected-country:focus,
.fluentform_wrapper_3 .iti__selected-country:focus,
.home .fluentform_wrapper_3 .iti__selected-country:focus-visible,
.fluentform_wrapper_3 .iti__selected-country:focus-visible,
.home .fluentform_wrapper_3 .iti__selected-country:active,
.fluentform_wrapper_3 .iti__selected-country:active {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
}

.home .fluentform_wrapper_3 .iti__arrow,
.fluentform_wrapper_3 .iti__arrow {
	border-top-color: #ffffff !important;
	border-bottom-color: transparent !important;
}

.home .fluentform_wrapper_3 .iti__arrow--up,
.fluentform_wrapper_3 .iti__arrow--up {
	border-top: none !important;
	border-bottom: 4px solid #ffffff !important;
}
