/**
 * Footer newsletter: form MailUp nello slot Elementor 0fe1879 (ex widget Search).
 * Layout orizzontale (campo + pulsante) su desktop, tablet e mobile.
 */

.elementor-597.elementor-location-footer .elementor-element-0fe1879 .elementor-widget-shortcode {
	width: 100%;
	max-width: 100%;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container {
	width: 100%;
	max-width: 100%;
	margin: 0;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form-content {
	width: 100%;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form {
	--aiop-newsletter-bar-height: 3rem;
	position: relative;
	display: flex;
	flex-flow: row nowrap;
	align-items: stretch;
	gap: 0;
	margin: 0;
	padding: 0;
	height: var(--aiop-newsletter-bar-height);
	min-height: var(--aiop-newsletter-bar-height);
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form-title,
.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form-description,
.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form-terms,
.elementor-597.elementor-location-footer .elementor-element-0fe1879 .separator-20px-top {
	display: none !important;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form-fields {
	flex: 1 1 auto;
	display: flex;
	align-items: stretch;
	min-width: 0;
	margin: 0 !important;
	width: auto;
	height: 100%;
}

/* mailup-public.css: #mpwp-container .mupwp-form-field { margin: 20px 0 } — va annullato */
.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container .mupwp-form-field {
	position: relative;
	flex: 1 1 auto;
	display: flex;
	align-items: stretch;
	margin: 0 !important;
	padding: 0;
	height: 100%;
	min-height: 0;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 .mupwp-form-field label {
	display: none;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 .mupwp-form-field span.error {
	position: absolute;
	left: 0;
	top: calc(100% + 0.15rem);
	margin: 0;
	white-space: nowrap;
	font-size: 0.75rem;
	line-height: 1.2;
	z-index: 2;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #email.label-field {
	box-sizing: border-box;
	display: block;
	width: 100%;
	height: var(--aiop-newsletter-bar-height);
	min-height: var(--aiop-newsletter-bar-height);
	max-height: var(--aiop-newsletter-bar-height);
	margin: 0 !important;
	padding: 0 0.75rem;
	border: 1px solid var(--e-global-color-fifth, #f0643b);
	border-right-width: 0;
	border-radius: 10px 0 0 0;
	background: #fff;
	color: var(--e-global-color-main, #212121);
	font-family: var(--e-global-typography-d909070-font-family, "Supreme"), sans-serif;
	font-size: var(--e-global-typography-d909070-font-size, 1.375rem);
	font-weight: var(--e-global-typography-d909070-font-weight, 100);
	line-height: var(--e-global-typography-d909070-line-height, 1.2);
	letter-spacing: var(--e-global-typography-d909070-letter-spacing, normal);
	transition: none;
	-webkit-tap-highlight-color: transparent;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #email.label-field::placeholder {
	color: #c3c3c3;
	opacity: 1;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #email.label-field:focus {
	outline: none;
	border-color: var(--e-global-color-fifth, #f0643b);
	box-shadow: none;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form-submit-container {
	position: static;
	flex: 0 0 clamp(6.75rem, 28%, 10.5rem);
	display: grid !important;
	grid-template: 1fr / 1fr;
	align-items: stretch;
	align-self: stretch;
	width: auto;
	min-width: 0;
	max-width: none;
	height: 100%;
	margin: 0 !important;
}

/* GTranslate avvolge il submit in <font>: non deve creare righe extra nella griglia */
.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form-submit-container font {
	display: contents;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container #mupwp-form-save.button-primary {
	box-sizing: border-box;
	display: block !important;
	grid-area: 1 / 1;
	align-self: stretch;
	justify-self: stretch;
	width: 100%;
	min-width: 0;
	height: var(--aiop-newsletter-bar-height);
	min-height: var(--aiop-newsletter-bar-height);
	max-height: var(--aiop-newsletter-bar-height);
	margin: 0 !important;
	padding: 0 0.65rem;
	border: 1px solid var(--e-global-color-fifth, #f0643b);
	border-left-width: 0;
	border-radius: 0 0 10px 0;
	background-color: var(--e-global-color-fifth, #f0643b);
	color: #fff;
	cursor: pointer;
	font-family: var(--e-global-typography-b88779a-font-family, "Supreme"), sans-serif;
	font-size: var(--e-global-typography-b88779a-font-size, 1rem);
	font-weight: var(--e-global-typography-b88779a-font-weight, 400);
	text-transform: var(--e-global-typography-b88779a-text-transform, uppercase);
	line-height: var(--e-global-typography-b88779a-line-height, 1.2);
	letter-spacing: var(--e-global-typography-b88779a-letter-spacing, 0.04em);
	box-shadow: none;
	transition: none;
	transform: none;
	-webkit-appearance: none;
	appearance: none;
	touch-action: manipulation;
	-webkit-tap-highlight-color: transparent;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container #mupwp-form-save.button-primary:hover {
	filter: brightness(0.95);
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container #mupwp-form-save.button-primary:focus,
.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container #mupwp-form-save.button-primary:active {
	outline: none;
	box-shadow: none;
	transform: none;
	filter: brightness(0.95);
	background-color: var(--e-global-color-fifth, #f0643b);
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container #mupwp-form-save.button-primary:disabled {
	opacity: 0.92;
	cursor: wait;
	transform: none;
}

/* Loader in overlay sulla griglia del pulsante (non allarga il layout) */
.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container .ajax-loader {
	grid-area: 1 / 1;
	place-self: center;
	visibility: hidden;
	opacity: 0;
	width: 1.25rem;
	height: 1.25rem;
	margin: 0;
	pointer-events: none;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container .ajax-loader.active {
	visibility: visible;
	opacity: 0.85;
}

/* Feedback sotto l’intera barra (containing block = #mupwp-form) */
.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container .feedback {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% + 0.35rem);
	display: none;
	width: auto;
	margin: 0;
	padding: 0;
	font-size: 0.8125rem;
	line-height: 1.3;
	z-index: 1;
}

.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container .feedback.error,
.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container .feedback:not(:empty) {
	display: block;
}

/* Tablet */
@media (max-width: 1024px) {
	.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form {
		--aiop-newsletter-bar-height: 3rem;
	}

	.elementor-597.elementor-location-footer .elementor-element-0fe1879 #email.label-field {
		font-size: clamp(0.875rem, 2.2vw, 1.125rem);
		padding-inline: 0.65rem;
	}

	.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form-submit-container {
		flex-basis: clamp(6.25rem, 30%, 9rem);
	}

	.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container #mupwp-form-save.button-primary {
		font-size: clamp(0.8125rem, 2.4vw, 0.9375rem);
		padding-inline: 0.5rem;
	}
}

/* Mobile: stessa disposizione (campo sinistra, pulsante destra), tipografia compatta */
@media (max-width: 767px) {
	.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form {
		--aiop-newsletter-bar-height: 2.75rem;
	}

	.elementor-597.elementor-location-footer .elementor-element-0fe1879 #email.label-field {
		/* Evita zoom iOS al focus (< 16px) */
		font-size: max(1rem, clamp(0.8125rem, 3.2vw, 0.9375rem));
	}

	.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mupwp-form-submit-container {
		flex-basis: clamp(5.75rem, 34%, 7.5rem);
	}

	.elementor-597.elementor-location-footer .elementor-element-0fe1879 #mpwp-container #mupwp-form-save.button-primary {
		font-size: clamp(0.75rem, 3.2vw, 0.875rem);
		font-weight: 600;
		letter-spacing: 0.03em;
	}
}
