/* MetForm-only overrides this (matched to Elementor widget structure) */

/* 1) Consistent input height/padding/typography across text/email/tel/date/select */
.elementor-widget-mf-text .mf-input-wrapper .mf-input,
.elementor-widget-mf-email .mf-input-wrapper .mf-input,
.elementor-widget-mf-telephone .mf-input-wrapper .mf-input,
.elementor-widget-mf-date .mf-input-wrapper .mf-input,
.elementor-widget-mf-select .mf-input-wrapper .mf-input.mf-input-select,
.elementor-widget-mf-select .mf-input-wrapper select.mf-input-dropdown {
	box-sizing: border-box;
	min-height: 48px !important;
	height: 48px !important;
	padding: 0 14px !important;
}

/* 2) Select reset + prevent height jump after selecting option */
.elementor-widget-mf-select .mf-input-wrapper .mf-input.mf-input-select {
	padding: 0 !important;
}

.elementor-widget-mf-select .mf-input-select .mf_select__control,
.elementor-widget-mf-select .mf-input-select .mf_select__control--is-focused,
.elementor-widget-mf-select .mf-input-select .mf_select__control--menu-is-open {
	min-height: 48px !important;
	height: 48px !important;
	padding: 0 14px !important;
}

.elementor-widget-mf-select .mf-input-select .mf_select__value-container {
	display: block !important;
	height: 100% !important;
	padding: 0 24px 0 0 !important;
	position: relative !important;
}

.elementor-widget-mf-select .mf-input-select .mf_select__single-value,
.elementor-widget-mf-select .mf-input-select .mf_select__placeholder {
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	margin: 0 !important;
	line-height: 1.2 !important;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.elementor-widget-mf-select .mf-input-select .mf_select__input-container {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.2 !important;
	position: absolute !important;
	inset: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* 3) Datepicker: overlap sections below + avoid clipping (Elementor overflow) */
.mf-form-wrapper .metform-form-content,
.mf-form-wrapper .metform-form-main-wrapper,
.elementor-widget-mf-date .mf-input-wrapper,
.elementor-widget-mf-date .mf-input-wrapper .flatpickr-wrapper {
	overflow: visible !important;
}

/* Parents of MetForm date widget often use overflow hidden — unblock so calendar can extend over hero/footer bands */
.elementor-element:has(.elementor-widget-mf-date),
.elementor-element:has(.elementor-widget-mf-date) .e-con,
.elementor-element:has(.elementor-widget-mf-date) .e-con-inner,
.elementor-element:has(.elementor-widget-mf-date) .elementor-widget-container,
.elementor-widget-mf-date.elementor-widget,
.elementor-widget-mf-date .elementor-widget-container,
.elementor-element:has(.flatpickr-wrapper),
.elementor-element:has(.flatpickr-wrapper) .e-con,
.elementor-element:has(.flatpickr-wrapper) .e-con-inner,
.elementor-element:has(.flatpickr-wrapper) .elementor-widget-container {
	overflow: visible !important;
}

/* Lift entire section/column chain — clipping often lives on .elementor-section / .e-con */
.elementor-section:has(.flatpickr-wrapper),
.elementor-section:has(.flatpickr-calendar),
.elementor-top-section:has(.flatpickr-wrapper),
.elementor-element.e-parent:has(.flatpickr-wrapper) {
	overflow: visible !important;
	contain: none !important;
}

.metform-form-wrapper .elementor-widget-wrap,
.metform-form-wrapper .elementor-column-wrap {
	overflow: visible !important;
}

.mf-form-wrapper .flatpickr-calendar .flatpickr-current-month,
.metform-form-content .flatpickr-calendar .flatpickr-current-month {
	overflow: visible !important;
	padding-top: 0;
}

.mf-form-wrapper .flatpickr-calendar .flatpickr-current-month input.cur-year,
.metform-form-content .flatpickr-calendar .flatpickr-current-month input.cur-year {
	padding: 0 0.25ch;
}

/* Year box sometimes clipped when calendar is narrow */
.flatpickr-calendar .flatpickr-current-month .numInputWrapper {
	min-width: 4.75rem;
	overflow: visible !important;
}

/* 4) Button hover cleanup */
.elementor-widget-mf-button .metform-btn,
.elementor-widget-mf-button .mf-button,
.elementor-widget-mf-button .mf-btn {
	position: relative;
	overflow: visible;
	background-image: none !important;
	box-shadow: none !important;
	outline: none !important;
	transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
