/**
 * Imagicle Nav 2026 — CSS (enqueue dal tema).
 *
 * Sorgente mirror (wrapper widget): menu-2026-elementor-widgets.css
 * Non incollare più in widget HTML Elementor.
 *
 * @package imagicle
 */

:root {
	--imgc-nav-cyan: #00c0f0;
	--imgc-nav-cyan-active: #02b0dc;
	--imgc-nav-navy: #00225a;
	--imgc-nav-ink: #001139;
	--imgc-nav-muted: #86898c;
	--imgc-nav-body: #44505a;
	--imgc-nav-border: #e5e7eb;
	--imgc-nav-soft: #e9edf3;
	--imgc-nav-white: #ffffff;
	--imgc-nav-bar-h: 80px;
	--imgc-nav-max: 1400px;
	/* Burger / layout mobile sotto 992px (invariato). */
	--imgc-nav-bp: 991px;
	--imgc-nav-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
	--imgc-nav-card-gradient: linear-gradient(90deg, rgba(0, 192, 240, 0.6), rgba(66, 154, 255, 0.6));
	--imgc-nav-font-ui: "Source Sans Pro", "Source Sans 3", "Source Sans Variable", sans-serif;
	--imgc-nav-font-display: "Gotham Rounded", "Gotham Rounded Book", sans-serif;
	--imgc-nav-font-book: "Gotham Rounded Book", "Gotham Rounded", sans-serif;
	--imgc-nav-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--imgc-nav-item-fs: 16px;
	--imgc-nav-item-fw: 400;
	--imgc-nav-item-gap: 24px;
	/* Gutter orizzontale condiviso: bar + pannelli (allineamento) */
	--imgc-nav-gutter: 24px;
}

/* —— Root ——
 * z-index alto SEMPRE: con sticky, le section Elementor (transform / z-index)
 * finiscono sopra l’header e i mega-panel spariscono allo scroll.
 * 10050 > Bootstrap sticky-top (1020) e tipici layer di content.
 */
.imgc-nav {
	position: sticky !important;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 10050 !important;
	width: 100%;
	overflow: visible !important;
}

/* Theme Builder Header: sticky come il masthead ACF */
.elementor-location-header {
	position: sticky !important;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 10050 !important;
	width: 100%;
	overflow: visible !important;
	isolation: isolate;
}

.imgc-nav .elementor-widget-container {
	margin: 0 !important;
}

/* —— Barra cyan — altezza allineata al menu live (~80px / menu__bottom top 79px) —— */
.imgc-nav__bar {
	background-color: var(--imgc-nav-cyan) !important;
	min-height: var(--imgc-nav-bar-h) !important;
	height: var(--imgc-nav-bar-h) !important;
	max-height: var(--imgc-nav-bar-h) !important;
	position: relative;
	z-index: 1002; /* sopra drawer mobile / pannelli fixed */
	-webkit-box-shadow: -1px 6px 5px 0px rgba(0, 65, 130, 0.15) !important;
	box-shadow: -1px 6px 5px 0px rgba(0, 65, 130, 0.15) !important;
	box-sizing: border-box !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	overflow: visible !important;
}

/* Menu aperto: bar sempre sopra il drawer bianco */
.imgc-nav[data-state="mobile-open"] .imgc-nav__bar,
.imgc-nav.is-mobile-submenu .imgc-nav__bar {
	position: relative;
	z-index: 1002;
}

.imgc-nav__bar.e-con,
.imgc-nav__bar > .e-con-inner {
	min-height: var(--imgc-nav-bar-h) !important;
	height: var(--imgc-nav-bar-h) !important;
	max-height: var(--imgc-nav-bar-h) !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	box-sizing: border-box !important;
}

.imgc-nav__bar-inner,
.imgc-nav__bar-inner.e-con,
.imgc-nav__bar-inner.e-con-boxed,
.imgc-nav__bar-inner.e-con-full {
	max-width: var(--imgc-nav-max) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	width: 100% !important;
	min-height: var(--imgc-nav-bar-h) !important;
	height: var(--imgc-nav-bar-h) !important;
	max-height: var(--imgc-nav-bar-h) !important;
	padding-left: var(--imgc-nav-gutter, 24px) !important;
	padding-right: var(--imgc-nav-gutter, 24px) !important;
	box-sizing: border-box !important;
	--padding-left: var(--imgc-nav-gutter, 24px);
	--padding-right: var(--imgc-nav-gutter, 24px);
	--padding-inline-start: var(--imgc-nav-gutter, 24px);
	--padding-inline-end: var(--imgc-nav-gutter, 24px);
}

/*
 * Gutter SOLO su bar-inner / panel-inner (stesso modello).
 * Gli .e-con-inner interni devono avere padding L/R a 0, altrimenti
 * Elementor aggiunge un secondo inset e bar/pannello si disallineano.
 */
.imgc-nav__bar-inner.e-con > .e-con-inner,
.imgc-nav__bar > .e-con-inner .imgc-nav__bar-inner > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
	width: 100% !important;
	max-width: 100% !important;
	min-height: var(--imgc-nav-bar-h) !important;
	height: var(--imgc-nav-bar-h) !important;
	max-height: var(--imgc-nav-bar-h) !important;
	overflow: visible !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box !important;
}

/*
 * I 3 figli NON devono essere width:100% (e-con-full li collassa).
 * Layout: logo (auto) | primary (flex 1, centro) | actions (auto, a destra)
 */
.imgc-nav__bar-inner > .e-con-inner > .imgc-nav__logo,
.imgc-nav__bar-inner > .e-con-inner > .imgc-nav__primary,
.imgc-nav__bar-inner > .e-con-inner > .imgc-nav__actions,
.imgc-nav__bar-inner > .e-con-inner > .imgc-nav__burger,
.imgc-nav__bar-inner > .e-con-inner > .imgc-nav_primary,
.imgc-nav__bar-inner > .e-con-inner > .imgc-nav_actions {
	width: auto !important;
	max-width: none !important;
	min-height: 0 !important;
}

/* Logo: come live (#masthead .logo { width: 142px }) */
.imgc-nav__logo,
.imgc-nav__logo.elementor-element,
.imgc-nav__logo.e-con,
.imgc-nav__logo.e-con-full {
	flex: 0 0 142px !important;
	flex-grow: 0 !important;
	flex-shrink: 0 !important;
	width: 142px !important;
	max-width: 142px !important;
	min-width: 142px !important;
	height: 100% !important;
	max-height: var(--imgc-nav-bar-h) !important;
	display: flex !important;
	align-items: center !important;
	position: relative;
	z-index: 2;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin: 0 !important;
	overflow: visible !important;
}

.imgc-nav__logo .elementor-widget-container,
.imgc-nav__logo .elementor-image,
.imgc-nav__logo .elementor-site-logo,
.imgc-nav__logo .elementor-widget-image,
.imgc-nav__logo .wp-caption,
.imgc-nav__logo figure,
.imgc-nav__logo a,
.imgc-nav__logo > .e-con-inner {
	width: 142px !important;
	max-width: 142px !important;
	min-width: 142px !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	height: auto !important;
	max-height: none !important;
	line-height: 0 !important;
	overflow: visible !important;
}

/*
 * Forza 142px anche contro CSS Elementor pagina
 * (.elementor-XXXX .elementor-element-ce7a45b img { width: 120px })
 * e contro .elementor-widget-image img[src$=".svg"] { width: 48px }.
 */
.imgc-nav .imgc-nav__logo img,
.imgc-nav .imgc-nav__logo .elementor-widget-image img,
.imgc-nav .imgc-nav__logo .elementor-site-logo img,
.imgc-nav .imgc-nav__logo .elementor-element img,
.imgc-nav .imgc-nav__logo a img,
.imgc-nav .imgc-nav__logo figure img,
.imgc-nav .imgc-nav__logo .wp-caption img,
.imgc-nav .imgc-nav__logo img[src$=".svg"],
.imgc-nav .imgc-nav__logo img.attachment-large,
.imgc-nav__logo img,
.imgc-nav__logo .elementor-widget-image img,
.imgc-nav__logo .elementor-site-logo img,
.imgc-nav__logo a img,
.imgc-nav__logo img[src$=".svg"] {
	display: block !important;
	width: 142px !important;
	min-width: 142px !important;
	max-width: 142px !important;
	height: auto !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: contain !important;
	object-position: left center !important;
}

/* Primary: prende tutto lo spazio rimanente (centro) */
.imgc-nav__primary,
.imgc-nav__primary.elementor-element,
.imgc-nav__primary.e-con,
.imgc-nav__primary.e-con-full,
.imgc-nav_primary,
.imgc-nav_primary.e-con,
.imgc-nav_primary.e-con-full {
	flex: 1 1 auto !important;
	flex-grow: 1 !important;
	flex-shrink: 1 !important;
	flex-basis: 0 !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	position: relative;
	z-index: 1;
}

.imgc-nav__primary > .e-con-inner,
.imgc-nav_primary > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: center !important;
	gap: var(--imgc-nav-item-gap) !important;
	width: 100% !important;
	min-height: 0 !important;
	height: 100% !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Widget voce: niente padding Elementor che alza la bar */
.imgc-nav__primary .imgc-nav__trigger,
.imgc-nav__primary .imgc-nav__link,
.imgc-nav__primary .imgc-nav__cta,
.imgc-nav__primary .elementor-widget {
	margin: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	align-self: center !important;
}

.imgc-nav__primary .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}

.imgc-nav__primary .elementor-nav-menu--main,
.imgc-nav__primary .elementor-nav-menu,
.imgc-nav_primary .elementor-nav-menu--main {
	display: flex !important;
	justify-content: center;
	flex-wrap: nowrap;
	width: 100%;
}

.imgc-nav__primary .elementor-nav-menu--main .elementor-item,
.imgc-nav__primary .elementor-nav-menu a.elementor-item,
.imgc-nav_primary .elementor-nav-menu a.elementor-item {
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: var(--imgc-nav-item-fs) !important;
	font-weight: var(--imgc-nav-item-fw) !important;
	padding: 10px 12px !important;
	white-space: nowrap;
}

/* Actions: destra, non si comprime */
.imgc-nav__actions,
.imgc-nav__actions.e-con,
.imgc-nav__actions.e-con-full,
.imgc-nav_actions,
.imgc-nav_actions.e-con {
	flex: 0 0 auto !important;
	flex-grow: 0 !important;
	flex-shrink: 0 !important;
	width: auto !important;
	margin-left: auto !important;
	position: relative;
	z-index: 2;
}

.imgc-nav__actions > .e-con-inner,
.imgc-nav_actions > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 8px !important;
	width: auto !important;
	flex-wrap: nowrap !important;
}

/* —— Voci nav (widget Pulsante) —— */
.imgc-nav__trigger .elementor-button,
.imgc-nav__link .elementor-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: 40px;
	padding: 0 12px !important;
	border: 0 !important;
	border-radius: 8px !important;
	background: transparent !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: var(--imgc-nav-item-fs) !important;
	font-weight: var(--imgc-nav-item-fw) !important;
	line-height: 1 !important;
	text-transform: none !important;
	text-decoration: none !important;
	box-shadow: none !important;
	fill: var(--imgc-nav-navy);
	cursor: pointer !important;
	outline: none !important;
}

.imgc-nav__trigger .elementor-button .elementor-button-text,
.imgc-nav__link .elementor-button .elementor-button-text {
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: var(--imgc-nav-item-fs) !important;
	font-weight: var(--imgc-nav-item-fw) !important;
}

/*
 * Hover anche a sottomenu chiuso (wrapper o button).
 * :focus-visible al posto di :focus → evita pill “incollata” dopo click/chiusura.
 */
.imgc-nav__trigger:hover .elementor-button,
.imgc-nav__link:hover .elementor-button,
.imgc-nav__trigger .elementor-button:hover,
.imgc-nav__link .elementor-button:hover,
.imgc-nav__trigger .elementor-button:focus-visible,
.imgc-nav__link .elementor-button:focus-visible,
.imgc-nav__trigger.is-active .elementor-button,
.imgc-nav__trigger[aria-expanded="true"] .elementor-button {
	background: var(--imgc-nav-cyan-active) !important;
	color: var(--imgc-nav-navy) !important;
	text-decoration: none !important;
}

.imgc-nav__trigger .elementor-button .elementor-button-text,
.imgc-nav__trigger .elementor-button:hover .elementor-button-text,
.imgc-nav__trigger .elementor-button:focus-visible .elementor-button-text {
	text-decoration: none !important;
}

.imgc-nav__trigger .elementor-button-icon {
	margin: 0 !important;
	order: 2;
}

.imgc-nav__trigger .elementor-button-icon svg,
.imgc-nav__trigger .elementor-button-icon i,
.imgc-nav__trigger .imgc-nav__chevron {
	width: 16px;
	height: 16px;
	display: inline-block;
	transition: transform 180ms var(--imgc-nav-ease);
	transform: rotate(0deg);
}

/* Chevron ruotato solo a pannello aperto (non sul solo hover) */
.imgc-nav__trigger.is-active .elementor-button-icon svg,
.imgc-nav__trigger[aria-expanded="true"] .elementor-button-icon svg,
.imgc-nav__trigger.is-active .elementor-button-icon i,
.imgc-nav__trigger[aria-expanded="true"] .elementor-button-icon i,
.imgc-nav__trigger.is-active .imgc-nav__chevron,
.imgc-nav__trigger[aria-expanded="true"] .imgc-nav__chevron {
	transform: rotate(180deg);
}

/* CTA Contact sales */
.imgc-nav__cta,
.imgc-nav__cta.elementor-widget {
	flex: 0 0 auto !important;
	flex-shrink: 0 !important;
}

.imgc-nav__cta .elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 33px;
	padding: 10px 16px !important;
	border-radius: 999px !important;
	border: 1.5px solid var(--imgc-nav-navy) !important;
	background: var(--imgc-nav-navy) !important;
	color: #fff !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	flex-shrink: 0 !important;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.imgc-nav__cta .elementor-button-text {
	white-space: nowrap !important;
	text-decoration: none !important;
}

/* Hover come live: .contact-sale-top-btn:hover → #2363BE */
.imgc-nav__cta .elementor-button:hover,
.imgc-nav__cta .elementor-button:focus-visible {
	background-color: #2363be !important;
	border-color: #2363be !important;
	color: #ffffff !important;
	text-decoration: none !important;
}

/* Utility icons */
.imgc-nav__util .elementor-button,
.imgc-nav__util .elementor-icon-wrapper,
.imgc-nav__util a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background: transparent !important;
	color: var(--imgc-nav-navy) !important;
	box-shadow: none !important;
	border: 0 !important;
	padding: 0 !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	text-transform: uppercase;
}

.imgc-nav__util img,
.imgc-nav__util svg {
	width: 20px;
	height: 20px;
}

/*
 * Desktop “stretto” (992–1360): burger resta <992.
 * Stesso schema del desktop largo: padding laterale (logo non tagliato),
 * voci centrate nel primary, gap simile al desktop.
 */
@media (min-width: 992px) and (max-width: 1360px) {
	/* Outer bar full-bleed; contenuto resta nel rail 1400 + gutter */
	.imgc-nav__bar.e-con,
	.imgc-nav__bar.e-con-boxed,
	.imgc-nav__bar.e-con-full {
		--padding-left: 0px;
		--padding-right: 0px;
		--padding-inline-start: 0px;
		--padding-inline-end: 0px;
		padding-left: 0 !important;
		padding-right: 0 !important;
		max-width: 100% !important;
	}

	.imgc-nav__bar > .e-con-inner {
		padding-left: 0 !important;
		padding-right: 0 !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	.imgc-nav__bar-inner,
	.imgc-nav__bar-inner.e-con,
	.imgc-nav__bar-inner.e-con-boxed,
	.imgc-nav__bar-inner.e-con-full {
		max-width: var(--imgc-nav-max) !important;
		margin-left: auto !important;
		margin-right: auto !important;
		width: 100% !important;
		padding-left: var(--imgc-nav-gutter, 24px) !important;
		padding-right: var(--imgc-nav-gutter, 24px) !important;
		box-sizing: border-box !important;
	}

	.imgc-nav__bar-inner.e-con > .e-con-inner,
	.imgc-nav__bar > .e-con-inner .imgc-nav__bar-inner > .e-con-inner {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 16px !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		box-sizing: border-box !important;
		max-width: 100% !important;
		width: 100% !important;
		min-height: var(--imgc-nav-bar-h) !important;
		height: var(--imgc-nav-bar-h) !important;
		max-height: var(--imgc-nav-bar-h) !important;
	}

	/* Logo: resta 142px come live anche su desktop stretto */
	.imgc-nav__logo,
	.imgc-nav__logo.elementor-element,
	.imgc-nav__logo.e-con,
	.imgc-nav__logo.e-con-full {
		width: 142px !important;
		min-width: 142px !important;
		max-width: 142px !important;
		flex: 0 0 142px !important;
		overflow: visible !important;
		margin: 0 !important;
	}

	.imgc-nav__logo > .e-con-inner,
	.imgc-nav__logo .elementor-widget-container,
	.imgc-nav__logo .elementor-image,
	.imgc-nav__logo .elementor-site-logo,
	.imgc-nav__logo .wp-caption,
	.imgc-nav__logo figure,
	.imgc-nav__logo a {
		width: 142px !important;
		max-width: 142px !important;
		overflow: visible !important;
	}

	.imgc-nav .imgc-nav__logo img,
	.imgc-nav .imgc-nav__logo img[src$=".svg"],
	.imgc-nav__logo img,
	.imgc-nav__logo .elementor-widget-image img,
	.imgc-nav__logo .elementor-site-logo img,
	.imgc-nav__logo a img {
		width: 142px !important;
		min-width: 142px !important;
		max-width: 142px !important;
		height: auto !important;
		max-height: none !important;
	}

	.imgc-nav__primary,
	.imgc-nav__primary.elementor-element,
	.imgc-nav__primary.e-con,
	.imgc-nav__primary.e-con-full,
	.imgc-nav_primary,
	.imgc-nav_primary.e-con {
		flex: 1 1 0 !important;
		min-width: 0 !important;
		overflow: visible !important;
		margin: 0 !important;
	}

	/* Come desktop: voci centrate nello spazio tra logo e actions */
	.imgc-nav__primary > .e-con-inner,
	.imgc-nav_primary > .e-con-inner {
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 16px !important;
		min-width: 0 !important;
		width: 100% !important;
		overflow: visible !important;
	}

	.imgc-nav__trigger,
	.imgc-nav__trigger.elementor-widget,
	.imgc-nav__link,
	.imgc-nav__link.elementor-widget {
		flex: 0 0 auto !important;
		max-width: none !important;
		margin: 0 !important;
	}

	.imgc-nav__trigger .elementor-button,
	.imgc-nav__link .elementor-button {
		padding: 0 10px !important;
		font-size: 15px !important;
		font-weight: var(--imgc-nav-item-fw) !important;
		min-height: 40px;
		gap: 4px;
	}

	.imgc-nav__trigger .elementor-button .elementor-button-text,
	.imgc-nav__link .elementor-button .elementor-button-text {
		font-size: 15px !important;
		font-weight: var(--imgc-nav-item-fw) !important;
	}

	.imgc-nav__trigger .elementor-button-icon svg,
	.imgc-nav__trigger .elementor-button-icon i,
	.imgc-nav__trigger .imgc-nav__chevron {
		width: 14px;
		height: 14px;
	}

	.imgc-nav__cta,
	.imgc-nav__cta.elementor-widget,
	.imgc-nav__actions,
	.imgc-nav__actions.e-con,
	.imgc-nav__actions.e-con-full {
		flex: 0 0 auto !important;
		flex-shrink: 0 !important;
		margin-left: 0 !important;
	}

	.imgc-nav__actions > .e-con-inner,
	.imgc-nav_actions > .e-con-inner {
		gap: 8px !important;
	}

	.imgc-nav__util .elementor-button,
	.imgc-nav__util .elementor-icon-wrapper,
	.imgc-nav__util a {
		width: 36px;
		height: 36px;
		font-size: 14px !important;
	}
}

/* iPad / desktop stretto ~992–1200: comprimi voci per evitare overlap Blog↔CTA */
@media (min-width: 992px) and (max-width: 1200px) {
	.imgc-nav__bar-inner,
	.imgc-nav__bar-inner.e-con,
	.imgc-nav__bar-inner.e-con-boxed,
	.imgc-nav__bar-inner.e-con-full {
		padding-left: 12px !important;
		padding-right: 12px !important;
	}

	.imgc-nav__bar-inner.e-con > .e-con-inner,
	.imgc-nav__bar > .e-con-inner .imgc-nav__bar-inner > .e-con-inner {
		gap: 8px !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* Logo invariato a 142px (come live) */
	.imgc-nav__logo,
	.imgc-nav__logo.elementor-element,
	.imgc-nav__logo.e-con,
	.imgc-nav__logo.e-con-full {
		width: 142px !important;
		min-width: 142px !important;
		max-width: 142px !important;
		flex: 0 0 142px !important;
	}

	.imgc-nav .imgc-nav__logo img,
	.imgc-nav .imgc-nav__logo img[src$=".svg"],
	.imgc-nav__logo img,
	.imgc-nav__logo .elementor-widget-image img,
	.imgc-nav__logo .elementor-site-logo img,
	.imgc-nav__logo a img {
		width: 142px !important;
		min-width: 142px !important;
		max-width: 142px !important;
		height: auto !important;
		max-height: none !important;
	}

	.imgc-nav__primary,
	.imgc-nav__primary.e-con,
	.imgc-nav_primary,
	.imgc-nav_primary.e-con {
		flex: 1 1 0 !important;
		min-width: 0 !important;
	}

	.imgc-nav__primary > .e-con-inner,
	.imgc-nav_primary > .e-con-inner {
		justify-content: center !important;
		gap: 16px !important;
	}

	.imgc-nav__trigger,
	.imgc-nav__trigger.elementor-widget,
	.imgc-nav__link,
	.imgc-nav__link.elementor-widget {
		flex: 0 0 auto !important;
	}

	.imgc-nav__trigger .elementor-button,
	.imgc-nav__link .elementor-button {
		padding: 0 6px !important;
		font-size: 15px !important;
		font-weight: var(--imgc-nav-item-fw) !important;
		min-height: 36px;
		gap: 2px;
	}

	.imgc-nav__trigger .elementor-button .elementor-button-text,
	.imgc-nav__link .elementor-button .elementor-button-text {
		font-size: 15px !important;
		font-weight: var(--imgc-nav-item-fw) !important;
	}

	.imgc-nav__trigger .elementor-button-icon {
		display: inline-flex !important;
		margin: 0 !important;
		order: 2;
	}

	.imgc-nav__trigger .elementor-button-icon svg,
	.imgc-nav__trigger .elementor-button-icon i,
	.imgc-nav__trigger .imgc-nav__chevron {
		display: inline-block !important;
		width: 14px;
		height: 14px;
	}

	.imgc-nav__actions,
	.imgc-nav__actions.e-con,
	.imgc-nav__cta,
	.imgc-nav__cta.elementor-widget {
		flex: 0 0 auto !important;
		flex-shrink: 0 !important;
	}

	.imgc-nav__actions > .e-con-inner,
	.imgc-nav_actions > .e-con-inner {
		gap: 4px !important;
	}

	.imgc-nav__util .elementor-button,
	.imgc-nav__util .elementor-icon-wrapper,
	.imgc-nav__util a {
		width: 30px;
		height: 30px;
	}
}

/* ~992–1080: ancora più compatto (zona overlap peggiore) */
@media (min-width: 992px) and (max-width: 1080px) {
	.imgc-nav__bar-inner,
	.imgc-nav__bar-inner.e-con,
	.imgc-nav__bar-inner.e-con-boxed,
	.imgc-nav__bar-inner.e-con-full {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}

	.imgc-nav__bar-inner.e-con > .e-con-inner,
	.imgc-nav__bar > .e-con-inner .imgc-nav__bar-inner > .e-con-inner {
		gap: 6px !important;
	}

	.imgc-nav__primary > .e-con-inner,
	.imgc-nav_primary > .e-con-inner {
		gap: 16px !important;
	}

	.imgc-nav__trigger .elementor-button,
	.imgc-nav__link .elementor-button {
		padding: 0 4px !important;
		font-size: 15px !important;
		min-height: 34px;
		gap: 1px;
	}

	.imgc-nav__trigger .elementor-button .elementor-button-text,
	.imgc-nav__link .elementor-button .elementor-button-text {
		font-size: 15px !important;
	}

	.imgc-nav__trigger .elementor-button-icon {
		display: inline-flex !important;
		margin: 0 !important;
		order: 2;
	}

	.imgc-nav__trigger .elementor-button-icon svg,
	.imgc-nav__trigger .elementor-button-icon i,
	.imgc-nav__trigger .imgc-nav__chevron {
		display: inline-block !important;
		width: 14px;
		height: 14px;
	}

	.imgc-nav__actions > .e-con-inner,
	.imgc-nav_actions > .e-con-inner {
		gap: 2px !important;
	}
}

/* ~992–1023: ultimo step desktop prima del burger (<992) */
@media (min-width: 992px) and (max-width: 1023px) {
	.imgc-nav__primary > .e-con-inner,
	.imgc-nav_primary > .e-con-inner {
		gap: 4px !important;
	}
}

/*
 * Burger cluster (mobile) — come live: [Account] [EN] [☰ / ✕]
 * Spacing live: padding-left 20px tra utils; icone 18px; EN 20px.
 */
.imgc-nav__burger,
.imgc-nav__burger.e-con,
.imgc-nav__burger.elementor-widget,
.imgc-nav__burger.elementor-widget-icon {
	display: none;
	flex: 0 0 auto !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	position: relative !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	height: auto !important;
	min-height: 0 !important;
	margin-left: auto !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	align-items: center !important;
	justify-content: flex-end !important;
	z-index: 2;
	overflow: visible !important;
	/* Elementor usa queste var su .e-con — senza override resta in colonna */
	--flex-direction: row !important;
	--flex-wrap: nowrap !important;
	--justify-content: flex-end !important;
	--align-items: center !important;
	--gap: 0px !important;
	--container-widget-width: auto !important;
	--container-widget-flex-grow: 0 !important;
	--container-widget-flex-shrink: 0 !important;
}

.imgc-nav__burger.e-con > .e-con-inner,
.imgc-nav__burger > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 0 !important;
	width: auto !important;
	max-width: none !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	position: relative !important;
	overflow: visible !important;
	--flex-direction: row !important;
	--flex-wrap: nowrap !important;
	--justify-content: flex-end !important;
	--align-items: center !important;
	--gap: 0px !important;
}

/* Figli del cluster: mai width 100% / colonna (Elementor default) */
.imgc-nav__burger.e-con > .e-con-inner > .e-con,
.imgc-nav__burger.e-con > .e-con-inner > .elementor-element,
.imgc-nav__burger > .e-con-inner > .e-con,
.imgc-nav__burger > .e-con-inner > .elementor-element {
	flex: 0 0 auto !important;
	flex-grow: 0 !important;
	flex-shrink: 0 !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	margin: 0 !important;
	align-self: center !important;
}

/* Account / LANG dentro il cluster mobile (classi dedicate) */
.imgc-nav__burger .imgc-nav__util,
.imgc-nav__burger .imgc-nav__util.elementor-widget,
.imgc-nav__burger .imgc-nav__util.elementor-widget-icon,
.imgc-nav__burger .imgc-nav__util.elementor-widget-button,
.imgc-nav__burger .imgc-nav__account,
.imgc-nav__burger .imgc-nav__lang,
.imgc-nav__burger .imgc-nav__account-mobile,
.imgc-nav__burger .imgc-nav__lang-mobile,
.imgc-nav__burger [data-imgc-nav-dd] {
	display: inline-flex !important;
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 0 0 20px !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
	inset: auto !important;
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	z-index: 5 !important;
	cursor: pointer !important;
	touch-action: manipulation;
}

.imgc-nav__burger .imgc-nav__util .elementor-button,
.imgc-nav__burger .imgc-nav__util .elementor-icon-wrapper,
.imgc-nav__burger .imgc-nav__util a,
.imgc-nav__burger .imgc-nav__util .elementor-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 0 !important;
	height: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	color: var(--imgc-nav-navy) !important;
	fill: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 20px !important;
	font-weight: 400 !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Live: .svg-blu height 18px */
.imgc-nav__burger .imgc-nav__util img,
.imgc-nav__burger .imgc-nav__util svg {
	width: auto !important;
	height: 18px !important;
	max-width: none !important;
	max-height: 18px !important;
	color: var(--imgc-nav-navy) !important;
	fill: currentColor;
	stroke: currentColor;
}

/* LANG: testo "EN" — live 20px */
.imgc-nav__burger .imgc-nav__lang,
.imgc-nav__burger .imgc-nav__lang.elementor-widget,
.imgc-nav__burger .imgc-nav__util.imgc-nav__lang {
	min-width: 0 !important;
}

.imgc-nav__burger .imgc-nav__lang .elementor-button,
.imgc-nav__burger .imgc-nav__lang .elementor-button-text,
.imgc-nav__burger .imgc-nav__lang .elementor-heading-title,
.imgc-nav__burger .imgc-nav__lang a {
	width: auto !important;
	font-size: 20px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	color: var(--imgc-nav-navy) !important;
}

.imgc-nav__burger .elementor-icon-wrapper,
.imgc-nav__burger .elementor-icon,
.imgc-nav__burger .elementor-widget-icon .elementor-icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	height: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	color: var(--imgc-nav-navy) !important;
	fill: var(--imgc-nav-navy) !important;
	cursor: pointer;
}

.imgc-nav__burger .elementor-icon svg,
.imgc-nav__burger .elementor-icon i,
.imgc-nav__burger .elementor-icon img {
	width: 20px !important;
	height: 15px !important;
	max-width: 20px !important;
	max-height: 15px !important;
	color: var(--imgc-nav-navy) !important;
	fill: currentColor;
	stroke: currentColor;
}

/* X di chiusura: proporzioni quadrate (l’hamburger resta 20×15) */
.imgc-nav__burger .imgc-nav__burger-close .elementor-icon svg,
.imgc-nav__burger .imgc-nav__burger-close .elementor-icon img,
.imgc-nav__burger .imgc-nav__burger-close svg,
.imgc-nav__burger .imgc-nav__burger-close img {
	width: 18px !important;
	height: 18px !important;
	max-width: 18px !important;
	max-height: 18px !important;
}

/*
 * Slot ☰ / ✕ — live hamburger 20×15; padding-left 20px come gli altri utils.
 */
.imgc-nav__burger .imgc-nav__burger-toggle,
.imgc-nav__burger .imgc-nav__burger-toggle.e-con,
.imgc-nav__burger .imgc-nav__burger-toggle.elementor-widget {
	position: relative !important;
	flex: 0 0 auto !important;
	width: 20px !important;
	min-width: 20px !important;
	max-width: 20px !important;
	height: 18px !important;
	margin: 0 !important;
	padding: 0 0 0 20px !important;
	box-sizing: content-box !important;
	cursor: pointer;
}

.imgc-nav__burger .imgc-nav__burger-toggle > .e-con-inner {
	position: relative !important;
	width: 20px !important;
	height: 18px !important;
	padding: 0 !important;
}

.imgc-nav__burger .imgc-nav__burger-open,
.imgc-nav__burger .imgc-nav__burger-close {
	position: relative !important;
	inset: auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 0 0 0 20px !important;
	width: 20px !important;
	min-width: 20px !important;
	max-width: 20px !important;
	height: 18px !important;
	box-sizing: content-box !important;
	cursor: pointer;
	z-index: 1;
}

/* Se open+close sono dentro .imgc-nav__burger-toggle → stack assoluto */
.imgc-nav__burger .imgc-nav__burger-toggle .imgc-nav__burger-open,
.imgc-nav__burger .imgc-nav__burger-toggle .imgc-nav__burger-close {
	position: absolute !important;
	inset: 0 !important;
	flex: none !important;
	padding: 0 !important;
	width: 20px !important;
	min-width: 20px !important;
	max-width: 20px !important;
	height: 18px !important;
	box-sizing: border-box !important;
}

.imgc-nav__burger .imgc-nav__burger-close {
	display: none !important;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.imgc-nav[data-state="mobile-open"] .imgc-nav__burger .imgc-nav__burger-open {
	display: none !important;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.imgc-nav[data-state="mobile-open"] .imgc-nav__burger .imgc-nav__burger-close {
	display: flex !important;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.imgc-nav[data-state="mobile-open"] .imgc-nav__burger .imgc-nav__burger-toggle .imgc-nav__burger-open {
	display: flex !important;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.imgc-nav[data-state="mobile-open"] .imgc-nav__burger .imgc-nav__burger-toggle .imgc-nav__burger-close {
	display: flex !important;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

/* —— Overlay sotto la bar (click fuori = chiudi).
 * Sfondo trasparente + blur sul content dietro (il pannello resta nitido sopra).
 */
.imgc-nav__dimmed,
.imgc-nav [data-imgc-nav-dimmed] {
	position: fixed !important;
	top: calc(var(--imgc-nav-bar-h) + var(--wp-admin--admin-bar--height, 0px)) !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	inset: unset !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	outline: none !important;
	box-shadow: none !important;
	background: transparent !important;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	transition: opacity 200ms var(--imgc-nav-ease), backdrop-filter 200ms var(--imgc-nav-ease);
	z-index: 998;
	flex: none !important;
	overflow: hidden !important;
}

/* Chiuso: invisibile e senza footprint */
.imgc-nav__dimmed[hidden],
.imgc-nav [data-imgc-nav-dimmed][hidden],
.imgc-nav:not([data-state="open"]):not([data-dd-open="1"]) .imgc-nav__dimmed,
.imgc-nav:not([data-state="open"]):not([data-dd-open="1"]) [data-imgc-nav-dimmed] {
	opacity: 0 !important;
	pointer-events: none !important;
	visibility: hidden !important;
	width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	top: 0 !important;
	right: auto !important;
	bottom: auto !important;
	left: 0 !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}

/* Aperto mega-panel: blur sotto i pannelli (z-index < panel 999) */
.imgc-nav[data-state="open"] .imgc-nav__dimmed,
.imgc-nav[data-state="open"] [data-imgc-nav-dimmed] {
	display: block !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	visibility: visible !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	top: calc(var(--imgc-nav-bar-h) + var(--wp-admin--admin-bar--height, 0px)) !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	border: 0 !important;
	background: rgba(0, 17, 60, 0.18) !important;
	-webkit-backdrop-filter: blur(2px) !important;
	backdrop-filter: blur(2px) !important;
	z-index: 998 !important;
}

/* Aperto dropdown Lang/Account (portale body z 10050): blur sopra il content, sotto il dd */
.imgc-nav[data-dd-open="1"] .imgc-nav__dimmed,
.imgc-nav[data-dd-open="1"] [data-imgc-nav-dimmed] {
	display: block !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	visibility: visible !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	top: calc(var(--imgc-nav-bar-h) + var(--wp-admin--admin-bar--height, 0px)) !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	border: 0 !important;
	background: rgba(0, 17, 60, 0.18) !important;
	-webkit-backdrop-filter: blur(2px) !important;
	backdrop-filter: blur(2px) !important;
	z-index: 10040 !important;
}

/* Se mega + dropdown insieme, resta sotto i pannelli mega */
.imgc-nav[data-state="open"][data-dd-open="1"] .imgc-nav__dimmed,
.imgc-nav[data-state="open"][data-dd-open="1"] [data-imgc-nav-dimmed] {
	z-index: 998 !important;
}

/* —— Mega panel ——
 * Alias Elementor CSS ID usati in editor:
 *   #sub-prodotti / .sub-prodotti  → panel
 *   #prodotti-menu / .prodotti-menu → panel-inner
 *   + sub-solutions, sub-integrations, sub-resources, sub-company
 *
 * Animazione: opacity + slide (no display:none, altrimenti non si anima).
 */
.imgc-nav__panel,
.imgc-nav .sub-prodotti,
.imgc-nav #sub-prodotti,
.imgc-nav .sub-solutions,
.imgc-nav #sub-solutions,
.imgc-nav .sub-integrations,
.imgc-nav #sub-integrations,
.imgc-nav .sub-resources,
.imgc-nav #sub-resources,
.imgc-nav .sub-company,
.imgc-nav #sub-company {
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	top: 100% !important;
	width: 100% !important;
	max-width: none !important;
	z-index: 999;
	background: #fff !important;
	border-bottom: 1px solid #e5e7eb !important;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1) !important;
	display: block !important;
	text-align: left !important;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate3d(0, -10px, 0);
	transition:
		opacity 220ms var(--imgc-nav-ease),
		transform 220ms var(--imgc-nav-ease),
		visibility 220ms;
}

/* HTML [hidden] altrimenti forza display:none e blocca l'animazione */
.imgc-nav__panel[hidden],
.imgc-nav .sub-prodotti[hidden],
.imgc-nav #sub-prodotti[hidden],
.imgc-nav .sub-solutions[hidden],
.imgc-nav #sub-solutions[hidden],
.imgc-nav .sub-integrations[hidden],
.imgc-nav #sub-integrations[hidden],
.imgc-nav .sub-resources[hidden],
.imgc-nav #sub-resources[hidden],
.imgc-nav .sub-company[hidden],
.imgc-nav #sub-company[hidden] {
	display: block !important;
}

.imgc-nav__panel.is-open,
.imgc-nav .sub-prodotti.is-open,
.imgc-nav #sub-prodotti.is-open,
.imgc-nav .sub-solutions.is-open,
.imgc-nav #sub-solutions.is-open,
.imgc-nav .sub-integrations.is-open,
.imgc-nav #sub-integrations.is-open,
.imgc-nav .sub-resources.is-open,
.imgc-nav #sub-resources.is-open,
.imgc-nav .sub-company.is-open,
.imgc-nav #sub-company.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translate3d(0, 0, 0);
	max-height: calc(100vh - var(--imgc-nav-bar-h) - var(--wp-admin--admin-bar--height, 0px));
	max-height: calc(100dvh - var(--imgc-nav-bar-h) - var(--wp-admin--admin-bar--height, 0px));
	overflow-x: hidden !important;
	overflow-y: auto !important;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

/*
 * Switch tra pannelli (hover o click con mega già aperto):
 * solo opacity, niente slide verticale ripetuto (stile Apple).
 */
.imgc-nav[data-imgc-nav-panel-swap="1"] .imgc-nav__panel,
.imgc-nav[data-imgc-nav-panel-swap="1"] .sub-prodotti,
.imgc-nav[data-imgc-nav-panel-swap="1"] #sub-prodotti,
.imgc-nav[data-imgc-nav-panel-swap="1"] .sub-solutions,
.imgc-nav[data-imgc-nav-panel-swap="1"] #sub-solutions,
.imgc-nav[data-imgc-nav-panel-swap="1"] .sub-integrations,
.imgc-nav[data-imgc-nav-panel-swap="1"] #sub-integrations,
.imgc-nav[data-imgc-nav-panel-swap="1"] .sub-resources,
.imgc-nav[data-imgc-nav-panel-swap="1"] #sub-resources,
.imgc-nav[data-imgc-nav-panel-swap="1"] .sub-company,
.imgc-nav[data-imgc-nav-panel-swap="1"] #sub-company {
	transform: none !important;
	transition:
		opacity 180ms cubic-bezier(0.4, 0, 0.2, 1),
		visibility 180ms cubic-bezier(0.4, 0, 0.2, 1);
}

/* Hover mode: prima apertura un filo più soft */
.imgc-nav[data-imgc-nav-hover="1"] .imgc-nav__panel,
.imgc-nav[data-imgc-nav-hover="1"] .sub-prodotti,
.imgc-nav[data-imgc-nav-hover="1"] #sub-prodotti,
.imgc-nav[data-imgc-nav-hover="1"] .sub-solutions,
.imgc-nav[data-imgc-nav-hover="1"] #sub-solutions,
.imgc-nav[data-imgc-nav-hover="1"] .sub-integrations,
.imgc-nav[data-imgc-nav-hover="1"] #sub-integrations,
.imgc-nav[data-imgc-nav-hover="1"] .sub-resources,
.imgc-nav[data-imgc-nav-hover="1"] #sub-resources,
.imgc-nav[data-imgc-nav-hover="1"] .sub-company,
.imgc-nav[data-imgc-nav-hover="1"] #sub-company {
	transform: translate3d(0, -6px, 0);
	transition:
		opacity 240ms cubic-bezier(0.4, 0, 0.2, 1),
		transform 240ms cubic-bezier(0.4, 0, 0.2, 1),
		visibility 240ms;
}

/* Scrollbar sottomenu (WebKit + Firefox) */
.imgc-nav__panel.is-open,
.imgc-nav .sub-prodotti.is-open,
.imgc-nav #sub-prodotti.is-open,
.imgc-nav .sub-solutions.is-open,
.imgc-nav #sub-solutions.is-open,
.imgc-nav .sub-integrations.is-open,
.imgc-nav #sub-integrations.is-open,
.imgc-nav .sub-resources.is-open,
.imgc-nav #sub-resources.is-open,
.imgc-nav .sub-company.is-open,
.imgc-nav #sub-company.is-open {
	scrollbar-width: thin;
	scrollbar-color: rgba(0, 34, 90, 0.35) transparent;
}

.imgc-nav__panel.is-open::-webkit-scrollbar,
.imgc-nav .sub-prodotti.is-open::-webkit-scrollbar,
.imgc-nav #sub-prodotti.is-open::-webkit-scrollbar,
.imgc-nav .sub-solutions.is-open::-webkit-scrollbar,
.imgc-nav #sub-solutions.is-open::-webkit-scrollbar,
.imgc-nav .sub-integrations.is-open::-webkit-scrollbar,
.imgc-nav #sub-integrations.is-open::-webkit-scrollbar,
.imgc-nav .sub-resources.is-open::-webkit-scrollbar,
.imgc-nav #sub-resources.is-open::-webkit-scrollbar,
.imgc-nav .sub-company.is-open::-webkit-scrollbar,
.imgc-nav #sub-company.is-open::-webkit-scrollbar {
	width: 8px;
}

.imgc-nav__panel.is-open::-webkit-scrollbar-thumb,
.imgc-nav .sub-prodotti.is-open::-webkit-scrollbar-thumb,
.imgc-nav #sub-prodotti.is-open::-webkit-scrollbar-thumb,
.imgc-nav .sub-solutions.is-open::-webkit-scrollbar-thumb,
.imgc-nav #sub-solutions.is-open::-webkit-scrollbar-thumb,
.imgc-nav .sub-integrations.is-open::-webkit-scrollbar-thumb,
.imgc-nav #sub-integrations.is-open::-webkit-scrollbar-thumb,
.imgc-nav .sub-resources.is-open::-webkit-scrollbar-thumb,
.imgc-nav #sub-resources.is-open::-webkit-scrollbar-thumb,
.imgc-nav .sub-company.is-open::-webkit-scrollbar-thumb,
.imgc-nav #sub-company.is-open::-webkit-scrollbar-thumb {
	background: rgba(0, 34, 90, 0.35);
	border-radius: 8px;
}

/*
 * Scroll-lock SENZA overflow:hidden (JS blocca wheel/touch/keys).
 * overflow:hidden toglieva la scrollbar (~15px) → layout-shift navbar/logo
 * e spezzava position:sticky (serviva il pin fixed). Non serve più.
 * La classe resta per nascondere overlay (Tiledesk, reserved, …).
 */
html.imgc-nav-scroll-lock,
html.imgc-nav-scroll-lock body,
body.imgc-nav-scroll-lock {
	overscroll-behavior: none;
}

/*
 * Overlay / sticky siblings sopra i mega-panel:
 * nascondi mentre menu o dropdown sono aperti (come Tiledesk / HubSpot).
 * - .navbar-reserved → sticky z-index 1000 (area riservata)
 * - .supertop-blog → sticky-top z-index 1020 (blog “Imagicle Beat” + search)
 * - #menu-prod → sticky product subnav
 * - Tiledesk / HubSpot chat → z-index altissimi
 */
html.imgc-nav-scroll-lock .navbar-reserved,
html.imgc-nav-dd-open .navbar-reserved,
body.imgc-nav-scroll-lock .navbar-reserved,
body.imgc-nav-dd-open .navbar-reserved,
html.imgc-nav-scroll-lock .supertop-blog,
html.imgc-nav-dd-open .supertop-blog,
body.imgc-nav-scroll-lock .supertop-blog,
body.imgc-nav-dd-open .supertop-blog,
html.imgc-nav-scroll-lock #menu-prod,
html.imgc-nav-dd-open #menu-prod,
body.imgc-nav-scroll-lock #menu-prod,
body.imgc-nav-dd-open #menu-prod,
html.imgc-nav-scroll-lock #top_fixed_menu,
html.imgc-nav-dd-open #top_fixed_menu,
body.imgc-nav-scroll-lock #top_fixed_menu,
body.imgc-nav-dd-open #top_fixed_menu,
html.imgc-nav-scroll-lock #tiledesk-container,
html.imgc-nav-scroll-lock #tiledeskdiv,
html.imgc-nav-scroll-lock #tiledeskiframe,
body.imgc-nav-scroll-lock #tiledesk-container,
body.imgc-nav-scroll-lock #tiledeskdiv,
body.imgc-nav-scroll-lock #tiledeskiframe,
html.imgc-nav-dd-open #tiledesk-container,
html.imgc-nav-dd-open #tiledeskdiv,
html.imgc-nav-dd-open #tiledeskiframe,
body.imgc-nav-dd-open #tiledesk-container,
body.imgc-nav-dd-open #tiledeskdiv,
body.imgc-nav-dd-open #tiledeskiframe,
html.imgc-nav-scroll-lock #hubspot-messages-iframe-container,
html.imgc-nav-dd-open #hubspot-messages-iframe-container,
body.imgc-nav-scroll-lock #hubspot-messages-iframe-container,
body.imgc-nav-dd-open #hubspot-messages-iframe-container {
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* Tiledesk chiuso: offset nativi del widget (non tagliare ulteriormente). */
#tiledesk-container.closed #tiledeskdiv {
	right: -10px !important;
	bottom: -10px !important;
	left: auto !important;
	top: auto !important;
}

/*
 * Footer social: solo l’icona X (<img>) va corretta otticamente rispetto alle FA.
 */
.site-footer .social a img {
	display: block !important;
	width: 20px !important;
	height: 20px !important;
	object-fit: contain !important;
	transform: translateY(-2px) !important;
}

#top_fixed_menu.top-fixed-menu--visible,
#top_fixed_menu.elementor-sticky--active.top-fixed-menu--visible {
	z-index: 10070 !important;
	min-height: var(--imgc-nav-bar-h, 65px) !important;
}

/*
 * Product pages: #top_fixed_menu (barra bianca on scroll-down) vive nel content
 * Elementor. Il Menu 2026 sticky (z-index 10050) resta SEMPRE sopra quel
 * stacking context → la barra bianca finisce sotto / “troppo bassa” o invisibile.
 * Stesso pattern del vecchio #masthead: quando la barra bianca è attiva, nascondi
 * l’header globale così la sostituisce a pieno viewport.
 * Fix tema unico → non serve ritoccare ogni template WPML in Elementor.
 */
body.top-fixed-menu-visible .elementor-location-header,
body.top-fixed-menu-visible .imgc-nav {
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

@media (prefers-reduced-motion: reduce) {
	.imgc-nav__panel,
	.imgc-nav .sub-prodotti,
	.imgc-nav #sub-prodotti,
	.imgc-nav .sub-solutions,
	.imgc-nav #sub-solutions,
	.imgc-nav .sub-integrations,
	.imgc-nav #sub-integrations,
	.imgc-nav .sub-resources,
	.imgc-nav #sub-resources,
	.imgc-nav .sub-company,
	.imgc-nav #sub-company {
		transition: none !important;
		transform: none !important;
	}
}

.imgc-nav__panel.e-con > .e-con-inner,
.imgc-nav .sub-prodotti.e-con > .e-con-inner,
.imgc-nav #sub-prodotti.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	width: 100% !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	--padding-left: 0px;
	--padding-right: 0px;
	--padding-inline-start: 0px;
	--padding-inline-end: 0px;
}

.imgc-nav__panel-inner,
.imgc-nav__panel-inner.e-con,
.imgc-nav .prodotti-menu,
.imgc-nav .prodotti-menu.e-con,
.imgc-nav #prodotti-menu,
.imgc-nav #prodotti-menu.e-con {
	max-width: var(--imgc-nav-max) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	width: 100% !important;
	padding-top: 32px !important;
	padding-bottom: 48px !important;
	padding-left: var(--imgc-nav-gutter, 24px) !important;
	padding-right: var(--imgc-nav-gutter, 24px) !important;
	text-align: left !important;
	box-sizing: border-box !important;
	--padding-left: var(--imgc-nav-gutter, 24px);
	--padding-right: var(--imgc-nav-gutter, 24px);
	--padding-inline-start: var(--imgc-nav-gutter, 24px);
	--padding-inline-end: var(--imgc-nav-gutter, 24px);
}

/* Elementor flex vive su .e-con-inner: forza colonna stretch (evita Align=Center) */
.imgc-nav__panel-inner.e-con > .e-con-inner,
.imgc-nav .prodotti-menu.e-con > .e-con-inner,
.imgc-nav #prodotti-menu.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	gap: 40px !important;
	width: 100% !important;
	max-width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	--padding-left: 0px;
	--padding-right: 0px;
	--padding-inline-start: 0px;
	--padding-inline-end: 0px;
}

.imgc-nav__panel-top.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	gap: 80px !important;
	width: 100% !important;
}

.imgc-nav__core,
.imgc-nav__core.e-con,
.imgc-nav__core.e-con-full {
	flex: 0 0 528px !important;
	width: 528px !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

.imgc-nav__core.e-con > .e-con-inner,
.imgc-nav__product-list.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 16px !important;
	width: 100% !important;
}

.imgc-nav__components,
.imgc-nav__components.e-con,
.imgc-nav__components.e-con-full {
	flex: 1 1 360px !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	padding-top: 40px !important;
}

.imgc-nav__components.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 24px !important;
	width: 100% !important;
}

.imgc-nav__components-grid.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: flex-start !important;
	gap: 16px 32px !important;
	width: 100% !important;
}

.imgc-nav__components-grid.e-con > .e-con-inner > .e-con {
	flex: 1 1 220px !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
}

.imgc-nav__kicker .elementor-heading-title,
.imgc-nav__kicker.elementor-widget-heading .elementor-heading-title,
.imgc-nav__kicker .elementor-widget-container {
	margin: 0 0 8px !important;
	color: var(--imgc-nav-muted) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	line-height: 1.2 !important;
	text-align: left !important;
}

/*
 * Visibilità kicker: solo Elementor (Responsive hide/show per elemento).
 * Nessun display:none / display:block forzato qui.
 */
@media (max-width: 991px) {
	.imgc-nav .imgc-nav__kicker .elementor-heading-title,
	.imgc-nav .imgc-nav__kicker.elementor-widget-heading .elementor-heading-title {
		margin: 0 0 8px !important;
		color: var(--imgc-nav-muted) !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		text-transform: uppercase !important;
		line-height: 1.2 !important;
		text-align: left !important;
	}
}

/* Product cards — classe Elementor prod-icon-wrp (+ alias BEM) */
.prod-icon-wrp,
.prod-icon-wrp.e-con,
.imgc-nav__product-card,
.imgc-nav__product-card.e-con {
	width: 100% !important;
	max-width: 528px !important;
	padding: 12px !important;
	border-radius: 8px !important;
	background: linear-gradient(90deg, rgba(0, 192, 240, 0.6) 0%, rgba(66, 154, 255, 0.6) 100%) !important;
	text-decoration: none !important;
	transition: box-shadow 160ms var(--imgc-nav-ease);
	text-align: left !important;
}

.prod-icon-wrp.e-con > .e-con-inner,
.imgc-nav__product-card.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 16px !important;
	width: 100% !important;
}

.prod-icon-wrp:hover,
.imgc-nav__product-card:hover {
	box-shadow: 0 12px 16px -4px rgba(26, 61, 156, 0.08), 0 4px 4px 0 rgba(26, 61, 156, 0.25);
}

.prod-icon-wrp:hover .imgc-nav__product-card-title .elementor-heading-title,
.prod-icon-wrp:hover .imgc-nav__product-card-title.elementor-widget-heading .elementor-heading-title,
.imgc-nav__product-card:hover .imgc-nav__product-card-title .elementor-heading-title,
.imgc-nav__product-card:hover .imgc-nav__product-card-title.elementor-widget-heading .elementor-heading-title,
.prod-icon-wrp:hover > .e-con-inner > .elementor-widget-heading .elementor-heading-title,
.prod-icon-wrp:hover > .e-con-inner > .e-con .elementor-widget-heading .elementor-heading-title {
	text-decoration: underline !important;
	text-underline-offset: 2px;
}

.imgc-nav__product-card-icon,
.imgc-nav__product-card-icon.e-con {
	flex: 0 0 45px !important;
	width: 45px !important;
	max-width: 45px !important;
	min-width: 45px !important;
}

.imgc-nav__product-card-icon img {
	width: 45px !important;
	height: 45px !important;
	object-fit: contain;
	display: block !important;
}

.imgc-nav__product-card-title .elementor-heading-title,
.imgc-nav__product-card-title.elementor-widget-heading .elementor-heading-title {
	margin: 0 0 2px !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-display) !important;
	font-size: 24px !important;
	font-weight: 500 !important;
	line-height: 1.1 !important;
	text-align: left !important;
}

.imgc-nav__product-card-desc,
.imgc-nav__product-card-desc .elementor-widget-container,
.imgc-nav__product-card-desc p {
	margin: 0 !important;
	color: var(--imgc-nav-ink) !important;
	font-family: var(--imgc-nav-font-book) !important;
	font-size: 14px !important;
	line-height: 1.2 !important;
	text-align: left !important;
}

.imgc-nav__feature-item {
	display: block;
	width: 100% !important;
	text-decoration: none !important;
	padding: 8px 8px 8px 0 !important;
	border-radius: 10px;
	text-align: left !important;
}

.imgc-nav__feature-title .elementor-heading-title,
.imgc-nav__feature-title.elementor-widget-heading .elementor-heading-title {
	margin: 0 0 2px !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-display) !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 1.1 !important;
	transition: color 160ms var(--imgc-nav-ease);
	text-align: left !important;
}

.imgc-nav__feature-item:hover .imgc-nav__feature-title .elementor-heading-title {
	color: var(--imgc-nav-cyan) !important;
}

.imgc-nav__feature-desc,
.imgc-nav__feature-desc p {
	margin: 0 !important;
	color: var(--imgc-nav-body) !important;
	font-family: var(--imgc-nav-font-book) !important;
	font-size: 14px !important;
	line-height: 1.2 !important;
	text-align: left !important;
}

.imgc-nav__discover {
	align-self: flex-start !important;
	width: auto !important;
}

.imgc-nav__discover .elementor-button {
	background: transparent !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	padding: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	gap: 16px;
}

.imgc-nav__panel-bottom.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 40px !important;
	width: 100% !important;
	padding-top: 24px !important;
	border-top: 1px solid var(--imgc-nav-border);
}

.imgc-nav__integrations.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 24px !important;
}

.imgc-nav__integration-row.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	gap: 24px !important;
	align-items: center !important;
}

.imgc-nav__integration {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 200px !important;
	height: 100px !important;
	padding: 10px 16px !important;
	border-radius: 8px !important;
	background: var(--imgc-nav-soft) !important;
}

.imgc-nav__integration img {
	max-width: 100%;
	max-height: 80px;
	object-fit: contain;
}

/* Integration logo boxes (Teams / Cisco / Webex) */
.integ-logo-wrp,
.integ-logo-wrp.e-con {
	border-radius: 8px !important;
	background: var(--background-a, #e9edf3) !important;
	min-height: 100px !important;
	text-decoration: none !important;
	transition: box-shadow 160ms var(--imgc-nav-ease);
}

.integ-logo-wrp.e-con > .e-con-inner {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
}

.integ-logo-wrp:hover,
.integ-logo-wrp.menu-products-teams:hover {
	box-shadow: 0 12px 16px -4px rgba(26, 61, 156, 0.20), 0 4px 6px -2px rgba(26, 61, 156, 0.10) !important;
}

.imgc-nav__cta-banner,
.imgc-nav__cta-banner.e-con,
.imgc-span-3.imgc-nav__cta-banner,
.menu-products-footer-cta-main {
	flex: 1 1 320px !important;
	min-height: 100px !important;
	padding: 10px 40px !important;
	border-radius: 8px !important;
	background: linear-gradient(90deg, #00225a 11.06%, #004182 59.13%) !important;
	text-decoration: none !important;
	transition: box-shadow 160ms var(--imgc-nav-ease);
}

.imgc-nav__cta-banner:hover,
.imgc-nav__cta-banner.e-con:hover,
.imgc-span-3.imgc-nav__cta-banner:hover,
.menu-products-footer-cta-main:hover {
	box-shadow: 0 12px 16px -4px rgba(26, 61, 156, 0.20), 0 4px 6px -2px rgba(26, 61, 156, 0.10) !important;
}

.imgc-nav__cta-banner:hover .elementor-widget-heading p,
.imgc-nav__cta-banner:hover .elementor-widget-heading .elementor-heading-title {
	text-decoration: none !important;
}

/* Utility: container che occupa 3 colonne in un grid Elementor */
.imgc-span-3 {
	grid-column: span 3 !important;
	width: auto !important;
	max-width: none !important;
}

.imgc-nav__cta-banner.e-con > .e-con-inner,
.imgc-span-3.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px !important;
	width: 100% !important;
	min-height: 80px;
}

.imgc-nav__cta-banner-text .elementor-heading-title,
.imgc-nav__cta-banner-text.elementor-widget-heading .elementor-heading-title {
	margin: 0 !important;
	color: #fff !important;
	font-family: var(--imgc-nav-font-display) !important;
	font-size: 24px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
}

.imgc-nav__cta-secondary .elementor-button,
.imgc-nav__cta-secondary.elementor-widget-heading .elementor-heading-title,
.imgc-nav__cta-secondary .elementor-heading-title {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 12px 32px !important;
	border-radius: 999px !important;
	background: #fff !important;
	border: 1.5px solid var(--imgc-nav-navy) !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
	white-space: nowrap !important;
	box-sizing: border-box !important;
	text-decoration: none !important;
}

/* Heading CTA: niente link annidato — solo aspetto bottone dentro container cliccabile */
.imgc-nav__cta-secondary.elementor-widget-heading {
	width: auto !important;
	max-width: none !important;
}

/*
 * Pannello Search — come live (.submenu-search):
 * titolo + input full-width con solo border-bottom, submit nascosto.
 */
.imgc-nav__panel--search {
	/* pannello più basso dei mega: non forzare min-height Elementor */
	min-height: 0 !important;
}

.imgc-nav__panel--search .imgc-nav__search-inner,
.imgc-nav__panel--search > .e-con-inner {
	max-width: 720px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 40px 24px 56px !important;
	box-sizing: border-box !important;
}

.imgc-nav__search-title,
.imgc-nav__panel--search .imgc-nav__search-title.elementor-heading-title,
.imgc-nav__panel--search .elementor-widget-heading .elementor-heading-title {
	margin: 0 0 12px !important;
	padding: 0 !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-display) !important;
	font-size: 28px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	text-align: left !important;
}

.imgc-nav__search-form,
.imgc-nav__panel--search .search-form {
	margin: 0 !important;
	width: 100% !important;
}

.imgc-nav__search-label,
.imgc-nav__panel--search .search-form label {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
}

.imgc-nav__search-field,
.imgc-nav__panel--search .search-field,
.imgc-nav__panel--search input[type="search"] {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 8px 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	border-bottom: 2px solid var(--imgc-nav-navy) !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 26px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	-webkit-appearance: none;
	appearance: none;
}

.imgc-nav__search-field:focus,
.imgc-nav__panel--search .search-field:focus,
.imgc-nav__panel--search input[type="search"]:focus {
	border-bottom-color: var(--imgc-nav-cyan) !important;
	outline: none !important;
	box-shadow: none !important;
}

.imgc-nav__search-field::placeholder,
.imgc-nav__panel--search .search-field::placeholder,
.imgc-nav__panel--search input[type="search"]::placeholder {
	color: var(--imgc-nav-muted) !important;
	opacity: 1 !important;
}

.imgc-nav__search-submit,
.imgc-nav__panel--search .search-submit,
.imgc-nav__panel--search input[type="submit"] {
	display: none !important;
}

.imgc-nav__panel--search .screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* Icona cerca attiva (come le altre voci trigger) */
.imgc-nav__search.is-active,
.imgc-nav__search.is-active .elementor-button,
.imgc-nav__search.is-active .elementor-icon-wrapper,
.imgc-nav__search[aria-expanded="true"] {
	background: var(--imgc-nav-cyan-active) !important;
	border-radius: 10px !important;
}

@media (max-width: 991px) {
	.imgc-nav__panel--search .imgc-nav__search-inner,
	.imgc-nav__panel--search > .e-con-inner {
		padding: 28px 20px 40px !important;
	}

	.imgc-nav__search-title {
		font-size: 24px !important;
	}

	.imgc-nav__search-field,
	.imgc-nav__panel--search .search-field,
	.imgc-nav__panel--search input[type="search"] {
		font-size: 20px !important;
	}
}

/*
 * Mega-panel desktop stretto (992–1360): evita colonne fisse / box che
 * sforano gli sfondi (core 528px + gap 80px non entra a ~1024).
 */
@media (min-width: 992px) and (max-width: 1360px) {
	.imgc-nav__panel-inner,
	.imgc-nav__panel-inner.e-con,
	.imgc-nav .prodotti-menu,
	.imgc-nav #prodotti-menu {
		padding-top: 24px !important;
		padding-bottom: 32px !important;
		padding-left: var(--imgc-nav-gutter, 24px) !important;
		padding-right: var(--imgc-nav-gutter, 24px) !important;
	}

	.imgc-nav__panel-inner.e-con > .e-con-inner,
	.imgc-nav .prodotti-menu.e-con > .e-con-inner,
	.imgc-nav #prodotti-menu.e-con > .e-con-inner {
		gap: 24px !important;
	}

	.imgc-nav__panel-top.e-con > .e-con-inner {
		gap: 32px !important;
		flex-wrap: nowrap !important;
	}

	/* Colonne generiche (Solutions / Resources / …): evitano overflow dagli sfondi */
	.imgc-nav__panel-top.e-con > .e-con-inner > .e-con,
	.imgc-nav__panel-top.e-con > .e-con-inner > .e-con-full {
		flex: 1 1 0 !important;
		min-width: 0 !important;
		max-width: 100% !important;
		width: auto !important;
		box-sizing: border-box !important;
	}

	.imgc-nav__panel-top.e-con > .e-con-inner > .e-con > .e-con-inner,
	.imgc-nav__panel-top .elementor-widget,
	.imgc-nav__panel-top .elementor-widget-container,
	.imgc-nav__panel-top .elementor-heading-title,
	.imgc-nav__panel-top .elementor-button,
	.imgc-nav__panel-top a {
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	.imgc-nav__panel-top .elementor-heading-title,
	.imgc-nav__panel-top .elementor-button-text,
	.imgc-nav__panel-top p {
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.imgc-nav__core,
	.imgc-nav__core.e-con,
	.imgc-nav__core.e-con-full {
		flex: 1 1 0 !important;
		width: auto !important;
		max-width: 48% !important;
		min-width: 0 !important;
	}

	.imgc-nav__components,
	.imgc-nav__components.e-con,
	.imgc-nav__components.e-con-full {
		flex: 1 1 0 !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		padding-top: 24px !important;
	}

	.imgc-nav__components-grid.e-con > .e-con-inner {
		gap: 12px 20px !important;
	}

	.imgc-nav__components-grid.e-con > .e-con-inner > .e-con {
		flex: 1 1 160px !important;
		min-width: 0 !important;
	}

	.prod-icon-wrp,
	.prod-icon-wrp.e-con,
	.imgc-nav__product-card,
	.imgc-nav__product-card.e-con {
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box !important;
		overflow: hidden !important;
	}

	.prod-icon-wrp.e-con > .e-con-inner,
	.imgc-nav__product-card.e-con > .e-con-inner {
		min-width: 0 !important;
	}

	.imgc-nav__product-card-title .elementor-heading-title,
	.imgc-nav__product-card-title.elementor-widget-heading .elementor-heading-title {
		font-size: 20px !important;
	}

	.imgc-nav__feature-item {
		box-sizing: border-box !important;
		max-width: 100% !important;
		overflow: hidden !important;
	}

	/* Voci sottomenu: un filo più piccole */
	.imgc-nav__feature-title .elementor-heading-title,
	.imgc-nav__feature-title.elementor-widget-heading .elementor-heading-title {
		font-size: 14px !important;
	}

	.imgc-nav__feature-desc,
	.imgc-nav__feature-desc p {
		font-size: 12px !important;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.imgc-nav__feature-title .elementor-heading-title,
	.imgc-nav__feature-desc,
	.imgc-nav__feature-desc p {
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	/* Heading link nelle colonne (Download, Finance, …) — non kicker / non card title */
	.imgc-nav__panel-top .elementor-widget-heading:not(.imgc-nav__kicker):not(.imgc-nav__cta-banner-text):not(.imgc-nav__product-card-title):not(.imgc-nav__product-card-desc) .elementor-heading-title,
	.imgc-nav__panel-inner .elementor-widget-heading:not(.imgc-nav__kicker):not(.imgc-nav__cta-banner-text):not(.imgc-nav__product-card-title) .elementor-heading-title,
	.imgc-nav .prodotti-menu .elementor-widget-heading:not(.imgc-nav__kicker):not(.imgc-nav__cta-banner-text):not(.imgc-nav__product-card-title) .elementor-heading-title {
		font-size: 14px !important;
		line-height: 1.25 !important;
	}

	.imgc-nav__discover .elementor-button {
		font-size: 13px !important;
	}

	/* CTA box grigi (Prenota / Prova / Chiedi) + LEARN MORE / LET'S TALK */
	.integ-logo-wrp .elementor-heading-title,
	.integ-logo-wrp .elementor-button,
	.integ-logo-wrp .elementor-button-text,
	.imgc-nav__integration .elementor-heading-title,
	.imgc-nav__integration .elementor-button,
	.imgc-nav__integration .elementor-button-text,
	.imgc-nav__panel-bottom .elementor-widget-heading:not(.imgc-nav__kicker):not(.imgc-nav__cta-banner-text):not(.imgc-nav__cta-secondary) .elementor-heading-title {
		font-size: 13px !important;
		line-height: 1.25 !important;
	}

	.imgc-nav__panel .imgc-nav__cta-secondary .elementor-button,
	.imgc-nav__panel .imgc-nav__cta-secondary.elementor-widget-heading .elementor-heading-title,
	.imgc-nav__panel .imgc-nav__cta-secondary .elementor-heading-title,
	.imgc-nav__panel .carousel-card .elementor-button,
	.imgc-nav .sub-solutions .imgc-nav__cta-secondary .elementor-button,
	.imgc-nav .sub-solutions .imgc-nav__cta-secondary .elementor-heading-title,
	.imgc-nav .sub-resources .imgc-nav__cta-secondary .elementor-button,
	.imgc-nav .sub-resources .imgc-nav__cta-secondary .elementor-heading-title,
	.imgc-nav .sub-prodotti .imgc-nav__cta-secondary .elementor-button,
	.imgc-nav .sub-prodotti .imgc-nav__cta-secondary .elementor-heading-title,
	.imgc-nav #sub-solutions .imgc-nav__cta-secondary .elementor-button,
	.imgc-nav #sub-solutions .imgc-nav__cta-secondary .elementor-heading-title,
	.imgc-nav #sub-resources .imgc-nav__cta-secondary .elementor-button,
	.imgc-nav #sub-resources .imgc-nav__cta-secondary .elementor-heading-title {
		padding: 8px 14px !important;
		font-size: 12px !important;
	}

	/* Featured card: titolo resta un filo più grande delle voci lista */
	.imgc-nav__panel .carousel-card .elementor-heading-title,
	.imgc-nav__panel .carousel-card .elementor-widget-heading .elementor-heading-title {
		font-size: 18px !important;
	}

	.imgc-nav__panel .carousel-card .elementor-widget-text-editor,
	.imgc-nav__panel .carousel-card .elementor-widget-text-editor p {
		font-size: 12px !important;
	}

	.imgc-nav__panel-bottom.e-con > .e-con-inner {
		gap: 16px !important;
		align-items: stretch !important;
	}

	.imgc-nav__panel-bottom.e-con > .e-con-inner > .e-con,
	.imgc-nav__panel-bottom.e-con > .e-con-inner > .e-con-full,
	.imgc-nav__panel-bottom .e-grid > .e-con-inner > .e-con,
	.imgc-nav__panel-bottom .e-grid > .e-con-inner > .e-con-full {
		min-width: 0 !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		overflow: hidden !important;
	}

	.imgc-nav__integration,
	.integ-logo-wrp,
	.integ-logo-wrp.e-con {
		width: auto !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: 1 1 120px !important;
		box-sizing: border-box !important;
		overflow: hidden !important;
	}

	.imgc-nav__integration {
		height: auto !important;
		min-height: 72px !important;
		padding: 10px 12px !important;
	}

	.integ-logo-wrp,
	.integ-logo-wrp.e-con {
		min-height: 72px !important;
	}

	.imgc-nav__cta-banner,
	.imgc-nav__cta-banner.e-con,
	.imgc-span-3.imgc-nav__cta-banner,
	.imgc-span-3 {
		flex: 1 1 240px !important;
		min-width: 0 !important;
		max-width: 100% !important;
		padding: 10px 16px !important;
		box-sizing: border-box !important;
		overflow: hidden !important;
	}

	.imgc-nav__cta-banner-text .elementor-heading-title,
	.imgc-nav__cta-banner-text.elementor-widget-heading .elementor-heading-title {
		font-size: 18px !important;
	}

	.imgc-nav__cta-secondary .elementor-button,
	.imgc-nav__cta-secondary.elementor-widget-heading .elementor-heading-title,
	.imgc-nav__cta-secondary .elementor-heading-title {
		padding: 8px 14px !important;
		font-size: 12px !important;
		white-space: nowrap !important;
	}

	.imgc-nav__integration-row.e-con > .e-con-inner {
		gap: 12px !important;
	}
}

@media (min-width: 992px) and (max-width: 1100px) {
	.imgc-nav__panel-inner,
	.imgc-nav .prodotti-menu,
	.imgc-nav #prodotti-menu {
		padding: 20px 16px 28px !important;
	}

	.imgc-nav__panel-top.e-con > .e-con-inner {
		gap: 20px !important;
	}

	.imgc-nav__core,
	.imgc-nav__core.e-con,
	.imgc-nav__core.e-con-full {
		max-width: 46% !important;
	}

	.imgc-nav__product-card-title .elementor-heading-title {
		font-size: 18px !important;
	}

	.imgc-nav__product-card-desc,
	.imgc-nav__product-card-desc p,
	.imgc-nav__feature-desc,
	.imgc-nav__feature-desc p {
		font-size: 12px !important;
	}

	.imgc-nav__feature-title .elementor-heading-title {
		font-size: 13px !important;
	}

	.imgc-nav__cta-banner-text .elementor-heading-title {
		font-size: 16px !important;
	}

	.imgc-nav__cta-secondary .elementor-button,
	.imgc-nav__cta-secondary.elementor-widget-heading .elementor-heading-title,
	.imgc-nav__cta-secondary .elementor-heading-title {
		padding: 8px 12px !important;
		font-size: 11px !important;
	}

	.integ-logo-wrp .elementor-heading-title,
	.integ-logo-wrp .elementor-button-text,
	.imgc-nav__panel-bottom .elementor-widget-heading:not(.imgc-nav__kicker):not(.imgc-nav__cta-banner-text):not(.imgc-nav__cta-secondary) .elementor-heading-title {
		font-size: 12px !important;
	}
}

/* —— Mobile drawer —— */
.imgc-nav__mobile,
.imgc-nav__mobile.e-con,
.imgc-nav__mobile.e-con-full {
	display: none !important;
	position: fixed !important;
	/* Fallback CSS; il JS allinea top alla base reale della bar */
	top: calc(var(--imgc-nav-bar-h) + var(--wp-admin--admin-bar--height, 0px)) !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	inset: unset !important;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	min-height: calc(100vh - var(--imgc-nav-bar-h) - var(--wp-admin--admin-bar--height, 0px)) !important;
	min-height: calc(100dvh - var(--imgc-nav-bar-h) - var(--wp-admin--admin-bar--height, 0px)) !important;
	max-height: none !important;
	margin: 0 !important;
	z-index: 1000; /* sotto .imgc-nav__bar (1002) */
	background: #fff !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	padding: 16px !important;
	box-sizing: border-box !important;
	flex: none !important;
}

.imgc-nav__mobile.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 100% !important;
	height: auto !important;
	padding: 0 !important;
	margin: 0 !important;
}

.imgc-nav[data-state="mobile-open"] .imgc-nav__mobile,
.imgc-nav[data-state="mobile-open"] .imgc-nav__mobile.e-con {
	display: flex !important;
	flex-direction: column !important;
}

.imgc-nav__mobile-list[hidden],
.imgc-nav__mobile-panel[hidden],
.imgc-nav [data-imgc-nav-mobile-panel][hidden] {
	display: none !important;
}

/* Lista nascosta quando un sottomenu mobile è aperto */
.imgc-nav__mobile.is-panel-open .imgc-nav__mobile-list,
.imgc-nav__mobile.is-panel-open > .imgc-nav__mobile-list,
.imgc-nav__mobile.is-panel-open .e-con.imgc-nav__mobile-list {
	display: none !important;
}

.imgc-nav__mobile-item .elementor-button,
.imgc-nav__mobile-item .elementor-heading-title,
a.imgc-nav__mobile-item {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 16px 10px 16px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid var(--imgc-nav-border) !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
	text-align: left;
}

/* Prima voce della lista mobile (.first-item): senza padding-top */
.imgc-nav__mobile-item.first-item .elementor-button,
.imgc-nav__mobile-item.first-item .elementor-heading-title,
a.imgc-nav__mobile-item.first-item,
.first-item.imgc-nav__mobile-item .elementor-button,
[data-imgc-nav-mobile-item].first-item .elementor-button,
.imgc-nav__mobile-list .first-item .elementor-button,
.imgc-nav__mobile-item .elementor-button.first-item,
a.first-item.elementor-button,
.first-item > .elementor-widget-container > .elementor-button,
.first-item .elementor-button-link {
	padding: 0 10px 16px 0 !important;
	padding-top: 0 !important;
}

.imgc-nav__mobile-item .elementor-button .elementor-button-content-wrapper {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	flex-direction: row !important;
}

.imgc-nav__mobile-item .elementor-button-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 24px !important;
	height: 24px !important;
	flex-shrink: 0 !important;
	margin-left: auto !important;
	order: 2 !important;
	transform: rotate(90deg) !important;
}

.imgc-nav__mobile-item .elementor-button-text {
	order: 1 !important;
}

.imgc-nav__mobile-item .elementor-button-icon svg,
.imgc-nav__mobile-item .elementor-button-icon img,
.imgc-nav__mobile-item .elementor-button-icon i {
	width: 16px !important;
	height: 16px !important;
	transform: none !important;
}

.imgc-nav__mobile-cta .elementor-button {
	width: 100%;
	margin-top: 32px;
	min-height: 44px;
	border-radius: 999px !important;
	background: var(--imgc-nav-navy) !important;
	color: #fff !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
}

/* Search sotto Contact sales (drawer mobile) */
.imgc-nav__mobile-search {
	width: 100% !important;
	margin-top: 20px !important;
	/* spazio extra per scrollare l’input sopra la tastiera */
	padding: 0 0 120px !important;
	box-sizing: border-box !important;
	scroll-margin-bottom: 80px !important;
}

.imgc-nav__mobile-search-title {
	margin: 0 0 10px !important;
	padding: 0 !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-display) !important;
	font-size: 22px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	text-align: left !important;
}

.imgc-nav__mobile-search-form {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 12px !important;
	margin: 0 !important;
	width: 100% !important;
}

.imgc-nav__mobile-search-label {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
}

.imgc-nav__mobile-search-field,
.imgc-nav__mobile-search .search-field,
.imgc-nav__mobile-search input[type="search"] {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 10px 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	border-bottom: 2px solid var(--imgc-nav-navy) !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	scroll-margin: 72px !important;
	-webkit-appearance: none;
	appearance: none;
}

.imgc-nav__mobile-search-field:focus,
.imgc-nav__mobile-search .search-field:focus,
.imgc-nav__mobile-search input[type="search"]:focus {
	border-bottom-color: var(--imgc-nav-cyan) !important;
	outline: none !important;
}

.imgc-nav__mobile-search-field::placeholder,
.imgc-nav__mobile-search .search-field::placeholder {
	color: var(--imgc-nav-muted) !important;
	opacity: 1 !important;
}

.imgc-nav__mobile-search-submit,
.imgc-nav__mobile-search button[type="submit"],
.imgc-nav__mobile-search input[type="submit"] {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 10px 16px !important;
	border-radius: 999px !important;
	border: 1.5px solid var(--imgc-nav-navy) !important;
	background: #fff !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	box-shadow: none !important;
}

.imgc-nav__mobile-search-submit:hover,
.imgc-nav__mobile-search button[type="submit"]:hover {
	background: var(--imgc-nav-soft) !important;
}

.imgc-nav__mobile-search .screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* Sottomenu mobile: nascosti finché non .is-open */
.imgc-nav__mobile-panel,
.imgc-nav__mobile-panel.e-con,
.imgc-nav [data-imgc-nav-mobile-panel],
.imgc-nav [data-imgc-nav-mobile-panel].e-con {
	display: none !important;
	padding: 8px 0 24px;
}

.imgc-nav__mobile-panel.is-open,
.imgc-nav__mobile-panel.e-con.is-open,
.imgc-nav [data-imgc-nav-mobile-panel].is-open,
.imgc-nav [data-imgc-nav-mobile-panel].e-con.is-open {
	display: flex !important;
	flex-direction: column !important;
}

.imgc-nav__mobile-core {
	display: flex;
	flex-direction: column;
	gap: 15px;
	margin-bottom: 0;
}

.imgc-nav__mobile-core-link .elementor-button,
a.imgc-nav__mobile-core-link {
	display: block !important;
	width: 100%;
	margin: 0 !important;
	padding: 19px !important;
	border-radius: 8px !important;
	background: var(--imgc-nav-card-gradient) !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-display) !important;
	font-size: 24px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	text-align: left !important;
	text-transform: none !important;
	box-shadow: none !important;
	border: 0 !important;
}

.imgc-nav__mobile-features {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.imgc-nav__mobile-integrations {
	display: flex;
	flex-direction: column;
	gap: 4px;
	width: 100%;
}

.imgc-nav__mobile-integrations .imgc-nav__integration-row {
	display: flex;
	flex-direction: column;
	gap: 24px;
	width: 100%;
}

.imgc-nav__mobile-integrations .integ-logo-wrp,
.imgc-nav__mobile-integrations .imgc-nav__integration {
	width: 100% !important;
	max-width: none !important;
}

.imgc-nav__mobile-cta-banner.imgc-nav__cta-banner,
.imgc-nav__mobile-cta-banner.imgc-nav__cta-banner.e-con {
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center;
	width: 100%;
	padding: 16px 20px !important;
	gap: 13px !important;
}

.imgc-nav__mobile-cta-banner .imgc-nav__cta-banner-text .elementor-heading-title {
	font-size: 20px !important;
	text-align: center !important;
}

.imgc-nav__mobile-cta-banner .imgc-nav__cta-secondary .elementor-button,
.imgc-nav__mobile-cta-banner .imgc-nav__cta-secondary.elementor-widget-heading .elementor-heading-title,
.imgc-nav__mobile-cta-banner .imgc-nav__cta-secondary .elementor-heading-title {
	width: 100% !important;
	padding: 12px 16px !important;
}

/* —— Responsive visibility helpers —— */
@media (max-width: 991px) {
	/*
	 * Live ACF ≤1199: .menu__top { padding: 22px 40px } → bar ≈ 80px
	 * Un solo layer di padding (niente gutter bar-inner + padding e-con-inner).
	 */
	.imgc-nav {
		--imgc-nav-bar-h: 80px;
		--imgc-nav-gutter: 40px;
	}

	/* Navbar mobile — logo SX, cluster [Account][EN][☰] DX, centrati in altezza */
	.imgc-nav__bar,
	.imgc-nav__bar.e-con,
	.imgc-nav__bar > .e-con-inner {
		min-height: var(--imgc-nav-bar-h) !important;
		height: var(--imgc-nav-bar-h) !important;
		max-height: var(--imgc-nav-bar-h) !important;
		padding: 0 !important;
		box-sizing: border-box !important;
	}

	.imgc-nav__bar-inner,
	.imgc-nav__bar-inner.e-con,
	.imgc-nav__bar-inner.e-con-boxed,
	.imgc-nav__bar-inner.e-con-full {
		min-height: var(--imgc-nav-bar-h) !important;
		height: var(--imgc-nav-bar-h) !important;
		max-height: var(--imgc-nav-bar-h) !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		/* Padding orizzontale SOLO qui (come .menu__top live) */
		padding-left: var(--imgc-nav-gutter, 40px) !important;
		padding-right: var(--imgc-nav-gutter, 40px) !important;
		--padding-left: var(--imgc-nav-gutter, 40px);
		--padding-right: var(--imgc-nav-gutter, 40px);
		--padding-inline-start: var(--imgc-nav-gutter, 40px);
		--padding-inline-end: var(--imgc-nav-gutter, 40px);
		box-sizing: border-box !important;
	}

	.imgc-nav__bar-inner.e-con > .e-con-inner,
	.imgc-nav__bar > .e-con-inner .imgc-nav__bar-inner > .e-con-inner {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 12px !important;
		min-height: var(--imgc-nav-bar-h) !important;
		height: var(--imgc-nav-bar-h) !important;
		max-height: var(--imgc-nav-bar-h) !important;
		padding: 0 !important;
		overflow: visible !important;
		box-sizing: border-box !important;
	}

	.imgc-nav__bar-inner > .e-con-inner > .imgc-nav__logo,
	.imgc-nav__bar-inner > .e-con-inner > .imgc-nav__burger {
		min-height: 0 !important;
		align-self: center !important;
	}

	.imgc-nav__logo,
	.imgc-nav__logo.elementor-element,
	.imgc-nav__logo.e-con,
	.imgc-nav__logo.e-con-full {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: flex-start !important;
		align-self: center !important;
		width: 142px !important;
		min-width: 142px !important;
		max-width: 142px !important;
		flex: 0 0 142px !important;
		height: auto !important;
		max-height: none !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
	}

	.imgc-nav__logo > .e-con-inner,
	.imgc-nav__logo .elementor-widget-container,
	.imgc-nav__logo .elementor-image,
	.imgc-nav__logo .elementor-site-logo,
	.imgc-nav__logo .wp-caption,
	.imgc-nav__logo figure,
	.imgc-nav__logo a,
	.imgc-nav__logo .elementor-widget-image {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: flex-start !important;
		width: 142px !important;
		min-width: 142px !important;
		max-width: 142px !important;
		height: auto !important;
		max-height: none !important;
		margin: 0 !important;
		padding: 0 !important;
		line-height: 0 !important;
	}

	.imgc-nav__logo img,
	.imgc-nav__logo .elementor-widget-image img,
	.imgc-nav__logo .elementor-site-logo img,
	.imgc-nav__logo a img,
	.imgc-nav__logo img[src$=".svg"] {
		display: block !important;
		width: 142px !important;
		min-width: 142px !important;
		max-width: 142px !important;
		height: auto !important;
		max-height: 36px !important;
		margin: 0 !important;
		padding: 0 !important;
		object-fit: contain !important;
		object-position: left center !important;
		vertical-align: middle !important;
	}

	.imgc-nav__burger,
	.imgc-nav__burger.e-con,
	.imgc-nav__burger.elementor-widget {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: flex-end !important;
		height: auto !important;
		max-height: none !important;
		width: auto !important;
		max-width: none !important;
		align-self: center !important;
		margin: 0 0 0 auto !important;
		padding: 0 !important;
		--flex-direction: row !important;
		--flex-wrap: nowrap !important;
		--justify-content: flex-end !important;
		--align-items: center !important;
		--gap: 0px !important;
		--container-widget-width: auto !important;
	}

	.imgc-nav__burger.e-con > .e-con-inner,
	.imgc-nav__burger > .e-con-inner {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: flex-end !important;
		width: auto !important;
		max-width: none !important;
		height: auto !important;
		min-height: 0 !important;
		gap: 0 !important;
		padding: 0 !important;
		--flex-direction: row !important;
		--flex-wrap: nowrap !important;
		--align-items: center !important;
	}

	.imgc-nav__burger.e-con > .e-con-inner > .e-con,
	.imgc-nav__burger.e-con > .e-con-inner > .elementor-element,
	.imgc-nav__burger > .e-con-inner > .e-con,
	.imgc-nav__burger > .e-con-inner > .elementor-element {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
		min-height: 0 !important;
		height: auto !important;
		align-self: center !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	/* Live: ul.nav.dx .nav-link { padding-left: 20px } → gap flex tra Account / EN / ☰ */
	.imgc-nav__burger.e-con > .e-con-inner,
	.imgc-nav__burger > .e-con-inner {
		gap: 20px !important;
		--gap: 20px !important;
	}

	.imgc-nav__burger .imgc-nav__util,
	.imgc-nav__burger .imgc-nav__util.elementor-widget,
	.imgc-nav__burger .imgc-nav__account,
	.imgc-nav__burger .imgc-nav__lang,
	.imgc-nav__burger .imgc-nav__account-mobile,
	.imgc-nav__burger .imgc-nav__lang-mobile,
	.imgc-nav__burger [data-imgc-nav-dd]:not(.imgc-nav__burger-toggle):not(.imgc-nav__burger-open):not(.imgc-nav__burger-close) {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		align-self: center !important;
		height: 30px !important;
		min-height: 30px !important;
		max-height: 30px !important;
		line-height: 1 !important;
		padding: 0 !important;
		margin: 0 !important;
		box-sizing: border-box !important;
	}

	/*
	 * Slot ☰/✕: spacing via gap del parent (niente padding-left qui,
	 * altrimenti con border-box/width fissi l’icona collassa).
	 */
	.imgc-nav__burger .imgc-nav__burger-toggle,
	.imgc-nav__burger .imgc-nav__burger-toggle.e-con,
	.imgc-nav__burger .imgc-nav__burger-open,
	.imgc-nav__burger .imgc-nav__burger-close {
		align-self: center !important;
		margin: 0 !important;
		padding-left: 0 !important;
	}

	.imgc-nav__burger .imgc-nav__burger-toggle .imgc-nav__burger-open,
	.imgc-nav__burger .imgc-nav__burger-toggle .imgc-nav__burger-close {
		padding-left: 0 !important;
	}

	/* Account face / iniziali nel cluster mobile (non solo .imgc-nav__actions) */
	.imgc-nav__burger .imgc-nav__account .elementor-widget-container,
	.imgc-nav__burger .imgc-nav__account .elementor-icon-wrapper,
	.imgc-nav__burger .imgc-nav__account .elementor-icon,
	.imgc-nav__burger .imgc-nav__account [data-imgc-nav-account-face],
	.imgc-nav__burger [data-imgc-nav-account-face],
	.imgc-nav__burger .imgc-nav__account .nav-link,
	.imgc-nav__burger .imgc-nav__account a.nav-link {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		height: 30px !important;
		min-height: 30px !important;
		margin: 0 !important;
		padding: 0 !important;
		line-height: 0 !important;
	}

	.imgc-nav__burger .imgc-nav__account .iniziali,
	.imgc-nav__burger [data-imgc-nav-account-face] .iniziali {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 30px !important;
		height: 30px !important;
		min-width: 30px !important;
		min-height: 30px !important;
		margin: 0 !important;
		padding: 0 !important;
		line-height: 1 !important;
	}

	.imgc-nav__desktop-only {
		display: none !important;
	}

	/* Desktop actions (Search + Account + LANG) nascosti: su mobile stanno in .imgc-nav__burger */
	.imgc-nav__actions,
	.imgc-nav__actions.e-con,
	.imgc-nav_actions,
	.imgc-nav_actions.e-con {
		display: none !important;
	}

	.imgc-nav__primary,
	.imgc-nav__primary.e-con,
	.imgc-nav_primary,
	.imgc-nav_primary.e-con {
		display: none !important;
	}

	.imgc-nav__burger,
	.imgc-nav__burger.e-con,
	.imgc-nav__burger.elementor-widget {
		display: flex !important;
	}

	/* Pannelli desktop nascosti su mobile… */
	.imgc-nav__panel,
	.imgc-nav .sub-prodotti,
	.imgc-nav #sub-prodotti,
	.imgc-nav .sub-solutions,
	.imgc-nav #sub-solutions,
	.imgc-nav .sub-integrations,
	.imgc-nav #sub-integrations,
	.imgc-nav .sub-resources,
	.imgc-nav #sub-resources,
	.imgc-nav .sub-company,
	.imgc-nav #sub-company {
		display: none !important;
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	/* Dimmed: nascosto di default su mobile, attivo con dropdown Lang/Account */
	.imgc-nav__dimmed,
	.imgc-nav [data-imgc-nav-dimmed] {
		display: none !important;
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	.imgc-nav[data-dd-open="1"] .imgc-nav__dimmed,
	.imgc-nav[data-dd-open="1"] [data-imgc-nav-dimmed] {
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;
		position: fixed !important;
		top: calc(var(--imgc-nav-bar-h) + var(--wp-admin--admin-bar--height, 0px)) !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: auto !important;
		background: rgba(0, 17, 60, 0.18) !important;
		-webkit-backdrop-filter: blur(2px) !important;
		backdrop-filter: blur(2px) !important;
		z-index: 10040 !important;
	}

	/*
	 * …tranne quando il mobile riusa lo stesso pannello come sottomenu
	 * (root.is-mobile-submenu + pannello.is-open).
	 */
	.imgc-nav.is-mobile-submenu .imgc-nav__panel.is-open,
	.imgc-nav.is-mobile-submenu .imgc-nav__panel.is-open.imgc-nav__desktop-only,
	.imgc-nav.is-mobile-submenu .sub-prodotti.is-open,
	.imgc-nav.is-mobile-submenu #sub-prodotti.is-open,
	.imgc-nav.is-mobile-submenu .sub-solutions.is-open,
	.imgc-nav.is-mobile-submenu #sub-solutions.is-open,
	.imgc-nav.is-mobile-submenu .sub-integrations.is-open,
	.imgc-nav.is-mobile-submenu #sub-integrations.is-open,
	.imgc-nav.is-mobile-submenu .sub-resources.is-open,
	.imgc-nav.is-mobile-submenu #sub-resources.is-open,
	.imgc-nav.is-mobile-submenu .sub-company.is-open,
	.imgc-nav.is-mobile-submenu #sub-company.is-open {
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;
		position: fixed !important;
		top: calc(var(--imgc-nav-bar-h) + var(--wp-admin--admin-bar--height, 0px)) !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		width: 100% !important;
		max-width: none !important;
		max-height: none !important;
		margin: 0 !important;
		z-index: 1000 !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		transform: none !important;
		box-shadow: none !important;
		border-bottom: 0 !important;
		background: #fff !important;
		padding: 16px !important;
	}

	/* Layout interno pannello → colonna su mobile */
	.imgc-nav.is-mobile-submenu .imgc-nav__panel.is-open .imgc-nav__panel-top,
	.imgc-nav.is-mobile-submenu .sub-prodotti.is-open .imgc-nav__panel-top,
	.imgc-nav.is-mobile-submenu #sub-prodotti.is-open .imgc-nav__panel-top,
	.imgc-nav.is-mobile-submenu .prodotti-menu .imgc-nav__panel-top {
		flex-direction: column !important;
		gap: 24px !important;
	}

	.imgc-nav.is-mobile-submenu .imgc-nav__panel.is-open .imgc-nav__panel-bottom,
	.imgc-nav.is-mobile-submenu .sub-prodotti.is-open .imgc-nav__panel-bottom,
	.imgc-nav.is-mobile-submenu #sub-prodotti.is-open .imgc-nav__panel-bottom,
	.imgc-nav.is-mobile-submenu .prodotti-menu .imgc-nav__panel-bottom {
		flex-direction: column !important;
		gap: 12px !important;
	}

	.imgc-nav.is-mobile-submenu .imgc-nav__core,
	.imgc-nav.is-mobile-submenu .imgc-nav__product-card,
	.imgc-nav.is-mobile-submenu .prod-icon-wrp,
	.imgc-nav.is-mobile-submenu .integ-logo-wrp,
	.imgc-nav.is-mobile-submenu .imgc-nav__integration {
		width: 100% !important;
		max-width: none !important;
	}

	.imgc-nav.is-mobile-submenu .imgc-nav__integration-row,
	.imgc-nav.is-mobile-submenu .imgc-nav__integration-row.e-con > .e-con-inner {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		width: 100% !important;
	}

	/* CTA banner + button — Figma mobile 5296:2265 */
	.imgc-nav.is-mobile-submenu .imgc-nav__cta-banner,
	.imgc-nav.is-mobile-submenu .imgc-nav__cta-banner.e-con {
		flex: none !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		text-align: center;
		width: 100% !important;
		max-width: none !important;
		min-height: 0 !important;
		padding: 16px 20px !important;
		border-radius: 8px !important;
		background: linear-gradient(90deg, #00225a 20.764%, #004182 100%) !important;
		grid-column: 1 / -1 !important;
	}

	.imgc-nav.is-mobile-submenu .imgc-nav__cta-banner.e-con > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 13px !important;
		width: 100% !important;
		min-height: 0 !important;
	}

	.imgc-nav.is-mobile-submenu .imgc-nav__cta-banner-text,
	.imgc-nav.is-mobile-submenu .imgc-nav__cta-banner-text.elementor-widget-heading {
		width: 100% !important;
		max-width: 100% !important;
		text-align: center !important;
	}

	.imgc-nav.is-mobile-submenu .imgc-nav__cta-banner-text .elementor-heading-title,
	.imgc-nav.is-mobile-submenu .imgc-nav__cta-banner-text.elementor-widget-heading .elementor-heading-title {
		margin: 0 !important;
		color: #fff !important;
		font-family: var(--imgc-nav-font-display) !important;
		font-size: 20px !important;
		font-weight: 500 !important;
		line-height: 1.2 !important;
		text-align: center !important;
	}

	.imgc-nav.is-mobile-submenu .imgc-nav__cta-secondary,
	.imgc-nav.is-mobile-submenu .imgc-nav__cta-secondary.elementor-widget-button,
	.imgc-nav.is-mobile-submenu .imgc-nav__cta-secondary.elementor-widget-heading {
		width: 100% !important;
		max-width: 100% !important;
	}

	.imgc-nav.is-mobile-submenu .imgc-nav__cta-secondary .elementor-button-wrapper {
		width: 100% !important;
	}

	.imgc-nav.is-mobile-submenu .imgc-nav__cta-secondary .elementor-button,
	.imgc-nav.is-mobile-submenu .imgc-nav__cta-secondary.elementor-widget-heading .elementor-heading-title,
	.imgc-nav.is-mobile-submenu .imgc-nav__cta-secondary .elementor-heading-title {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
		max-width: 100% !important;
		padding: 12px 16px !important;
		border-radius: 999px !important;
		background: #fff !important;
		border: 1.5px solid var(--imgc-nav-navy) !important;
		color: var(--imgc-nav-navy) !important;
		font-family: var(--imgc-nav-font-ui) !important;
		font-size: 16px !important;
		font-weight: 600 !important;
		line-height: 1 !important;
		text-transform: uppercase !important;
		text-align: center !important;
		box-sizing: border-box !important;
		text-decoration: none !important;
	}

	.imgc-nav.is-mobile-submenu .imgc-nav__cta-secondary .elementor-button-text {
		color: var(--imgc-nav-navy) !important;
		font-family: var(--imgc-nav-font-ui) !important;
		font-size: 16px !important;
		font-weight: 600 !important;
		text-transform: uppercase !important;
	}
}

/*
 * Grid integrations + CTA (mobile submenu aperto).
 * Classe da mettere sul container Elementor: imgc-nav__panel-bottom
 */
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom.e-grid,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom.e-con,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom.e-con-full {
	--e-con-grid-template-columns: 1fr !important;
	grid-template-columns: 1fr !important;
	grid-auto-columns: 1fr !important;
	grid-auto-flow: row !important;
	display: grid !important;
	width: 100% !important;
	max-width: 100% !important;
}

.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom > .e-con-inner {
	display: grid !important;
	--e-con-grid-template-columns: 1fr !important;
	grid-template-columns: 1fr !important;
	grid-auto-columns: 1fr !important;
	grid-auto-flow: row !important;
	width: 100% !important;
	gap: 12px !important;
	flex-direction: column !important;
}

.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom > .e-con-inner > *,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom > .e-con-inner > .e-con,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom > .e-con-inner > .e-con-full,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom .integ-logo-wrp,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom .imgc-nav__integration,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom .imgc-span-3,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom .imgc-nav__cta-banner,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom .e-con,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom .e-con-full {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	grid-column: 1 / -1 !important;
	grid-row: auto !important;
	flex: none !important;
}

/* imgc-span-3: padding 10px anche L/R su mobile (desktop resta 10px 40px sul CTA) */
.imgc-nav.is-mobile-submenu .imgc-span-3,
.imgc-nav.is-mobile-submenu .imgc-span-3.e-con,
.imgc-nav.is-mobile-submenu .imgc-span-3.imgc-nav__cta-banner {
	padding-left: 10px !important;
	padding-right: 10px !important;
}

/* Mobile <768: conferma gap 20px come live (non azzerare il gap del 991) */
@media (max-width: 767px) {
	.imgc-nav__burger.e-con > .e-con-inner,
	.imgc-nav__burger > .e-con-inner {
		gap: 20px !important;
		--gap: 20px !important;
	}

	.imgc-nav__burger .imgc-nav__util,
	.imgc-nav__burger .imgc-nav__util.elementor-widget,
	.imgc-nav__burger .imgc-nav__util.elementor-widget-icon,
	.imgc-nav__burger .imgc-nav__util.elementor-widget-button,
	.imgc-nav__burger .imgc-nav__account,
	.imgc-nav__burger .imgc-nav__lang,
	.imgc-nav__burger .imgc-nav__account-mobile,
	.imgc-nav__burger .imgc-nav__lang-mobile,
	.imgc-nav__burger [data-imgc-nav-dd],
	.imgc-nav__burger .imgc-nav__burger-toggle,
	.imgc-nav__burger .imgc-nav__burger-toggle.e-con,
	.imgc-nav__burger .imgc-nav__burger-toggle.elementor-widget,
	.imgc-nav__burger .imgc-nav__burger-open,
	.imgc-nav__burger .imgc-nav__burger-close {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.imgc-nav__burger .imgc-nav__burger-toggle .imgc-nav__burger-open,
	.imgc-nav__burger .imgc-nav__burger-toggle .imgc-nav__burger-close {
		padding: 0 !important;
	}
}

/* Phone — live ≤575: .menu__top { padding: 22px 0 } + container ~15px */
@media (max-width: 575px) {
	.imgc-nav {
		--imgc-nav-gutter: 15px;
	}

	.imgc-nav__bar-inner,
	.imgc-nav__bar-inner.e-con,
	.imgc-nav__bar-inner.e-con-boxed,
	.imgc-nav__bar-inner.e-con-full {
		padding-left: 15px !important;
		padding-right: 15px !important;
		--padding-left: 15px;
		--padding-right: 15px;
		--padding-inline-start: 15px;
		--padding-inline-end: 15px;
	}

	.imgc-nav__bar-inner.e-con > .e-con-inner,
	.imgc-nav__bar > .e-con-inner .imgc-nav__bar-inner > .e-con-inner {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

/*
 * Phone stretto — live ≤480 (misurato in DevTools):
 * .menu__top { padding: 12px 0; height: 73px }; logo 140px
 */
@media (max-width: 480px) {
	.imgc-nav {
		--imgc-nav-bar-h: 73px;
		--imgc-nav-gutter: 15px;
	}

	.imgc-nav__bar,
	.imgc-nav__bar.e-con,
	.imgc-nav__bar > .e-con-inner,
	.imgc-nav__bar-inner,
	.imgc-nav__bar-inner.e-con,
	.imgc-nav__bar-inner.e-con > .e-con-inner,
	.imgc-nav__bar > .e-con-inner .imgc-nav__bar-inner > .e-con-inner {
		min-height: 73px !important;
		height: 73px !important;
		max-height: 73px !important;
		box-sizing: border-box !important;
	}

	.imgc-nav__bar-inner,
	.imgc-nav__bar-inner.e-con {
		/* Come live: 12px verticali; 15px L/R (container) */
		padding-top: 12px !important;
		padding-bottom: 12px !important;
		padding-left: 15px !important;
		padding-right: 15px !important;
	}

	.imgc-nav__bar-inner.e-con > .e-con-inner,
	.imgc-nav__bar > .e-con-inner .imgc-nav__bar-inner > .e-con-inner {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		min-height: 0 !important;
		height: 100% !important;
		max-height: none !important;
	}

	.imgc-nav__logo,
	.imgc-nav__logo.elementor-element,
	.imgc-nav__logo.e-con,
	.imgc-nav__logo.e-con-full,
	.imgc-nav__logo > .e-con-inner,
	.imgc-nav__logo .elementor-widget-container,
	.imgc-nav__logo .elementor-image,
	.imgc-nav__logo .elementor-site-logo,
	.imgc-nav__logo .wp-caption,
	.imgc-nav__logo figure,
	.imgc-nav__logo a,
	.imgc-nav__logo .elementor-widget-image {
		width: 140px !important;
		min-width: 140px !important;
		max-width: 140px !important;
		flex: 0 0 140px !important;
		flex-basis: 140px !important;
		height: auto !important;
		max-height: none !important;
	}

	.imgc-nav__logo img,
	.imgc-nav__logo .elementor-widget-image img,
	.imgc-nav__logo .elementor-site-logo img,
	.imgc-nav__logo a img,
	.imgc-nav__logo img[src$=".svg"] {
		width: 140px !important;
		min-width: 140px !important;
		max-width: 140px !important;
		/* 73 − 12 − 12 = 49px area utile */
		max-height: 49px !important;
	}

	.imgc-nav__burger,
	.imgc-nav__burger.e-con {
		height: auto !important;
		max-height: none !important;
	}
}

/*
 * Resources featured card (.carousel-card) su mobile:
 * su desktop immagine + testo sono in riga; su mobile wrap + altezza widget
 * bloccata → l'immagine overflow e si sovrappone al testo.
 * Compatta in verticale: meno padding/gap, immagine limitata, tipografia più piccola.
 */
@media (max-width: 991px) {
	.imgc-nav .carousel-card,
	.imgc-nav .carousel-card.e-con,
	.imgc-nav.is-mobile-submenu .carousel-card,
	.imgc-nav.is-mobile-submenu .carousel-card.e-con {
		display: flex !important;
		flex-direction: column !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		overflow: visible !important;
		padding: 10px !important;
		gap: 0 !important;
	}

	/* Evita min-height Elementor sui figli (causa card altissime) */
	.imgc-nav .carousel-card .e-con,
	.imgc-nav .carousel-card .e-con-full,
	.imgc-nav .carousel-card .elementor-widget {
		min-height: 0 !important;
	}

	.imgc-nav .carousel-card > .e-con-inner,
	.imgc-nav .carousel-card .e-con,
	.imgc-nav .carousel-card .e-con > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		gap: 8px !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.imgc-nav .carousel-card .elementor-widget,
	.imgc-nav .carousel-card .elementor-widget-container {
		margin: 0 !important;
		padding: 0 !important;
	}

	.imgc-nav .carousel-card .elementor-widget-image,
	.imgc-nav .carousel-card .elementor-widget-image .elementor-widget-container,
	.imgc-nav .carousel-card .elementor-widget-image img {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: 120px !important;
	}

	.imgc-nav .carousel-card .elementor-widget-image img {
		display: block !important;
		object-fit: cover !important;
		object-position: center !important;
		max-height: 120px !important;
	}

	.imgc-nav .carousel-card .elementor-heading-title,
	.imgc-nav .carousel-card .elementor-widget-heading .elementor-heading-title {
		margin: 0 !important;
		font-size: 18px !important;
		line-height: 1.2 !important;
	}

	.imgc-nav .carousel-card .elementor-widget-text-editor,
	.imgc-nav .carousel-card .elementor-widget-text-editor p {
		margin: 0 !important;
		font-size: 13px !important;
		line-height: 1.3 !important;
	}

	.imgc-nav .carousel-card .elementor-button {
		padding: 12px 16px !important;
		font-size: 16px !important;
		font-weight: 600 !important;
		min-height: 44px !important;
		text-transform: uppercase !important;
	}

	.imgc-nav .carousel-card .elementor-button-text {
		font-size: 16px !important;
		font-weight: 600 !important;
	}
}

.elementor-device-mobile .imgc-nav .carousel-card,
.elementor-device-mobile .imgc-nav .carousel-card.e-con,
.elementor-device-tablet .imgc-nav .carousel-card,
.elementor-device-tablet .imgc-nav .carousel-card.e-con {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	overflow: visible !important;
	padding: 10px !important;
}

.elementor-device-mobile .imgc-nav .carousel-card > .e-con-inner,
.elementor-device-mobile .imgc-nav .carousel-card .e-con,
.elementor-device-mobile .imgc-nav .carousel-card .e-con > .e-con-inner,
.elementor-device-tablet .imgc-nav .carousel-card > .e-con-inner,
.elementor-device-tablet .imgc-nav .carousel-card .e-con,
.elementor-device-tablet .imgc-nav .carousel-card .e-con > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	gap: 8px !important;
	padding: 0 !important;
	margin: 0 !important;
}

.elementor-device-mobile .imgc-nav .carousel-card .elementor-widget,
.elementor-device-mobile .imgc-nav .carousel-card .elementor-widget-container,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-widget,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
}

.elementor-device-mobile .imgc-nav .carousel-card .elementor-widget-image,
.elementor-device-mobile .imgc-nav .carousel-card .elementor-widget-image .elementor-widget-container,
.elementor-device-mobile .imgc-nav .carousel-card .elementor-widget-image img,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-widget-image,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-widget-image .elementor-widget-container,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-widget-image img {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: 120px !important;
}

.elementor-device-mobile .imgc-nav .carousel-card .elementor-widget-image img,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-widget-image img {
	display: block !important;
	object-fit: cover !important;
	object-position: center !important;
	max-height: 120px !important;
}

.elementor-device-mobile .imgc-nav .carousel-card .elementor-heading-title,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-heading-title {
	margin: 0 !important;
	font-size: 18px !important;
	line-height: 1.2 !important;
}

.elementor-device-mobile .imgc-nav .carousel-card .elementor-widget-text-editor,
.elementor-device-mobile .imgc-nav .carousel-card .elementor-widget-text-editor p,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-widget-text-editor,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-widget-text-editor p {
	margin: 0 !important;
	font-size: 13px !important;
	line-height: 1.3 !important;
}

.elementor-device-mobile .imgc-nav .carousel-card .elementor-button,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-button {
	padding: 12px 16px !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	min-height: 44px !important;
	text-transform: uppercase !important;
}

.elementor-device-mobile .imgc-nav .carousel-card .elementor-button-text,
.elementor-device-tablet .imgc-nav .carousel-card .elementor-button-text {
	font-size: 16px !important;
	font-weight: 600 !important;
}

/* Loghi / grid annidati dentro panel-bottom → colonna */
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom .e-grid,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom .e-grid > .e-con-inner,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom .imgc-nav__integration-row,
.imgc-nav.is-mobile-submenu .imgc-nav__panel-bottom .imgc-nav__integration-row > .e-con-inner {
	--e-con-grid-template-columns: 1fr !important;
	grid-template-columns: 1fr !important;
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	gap: 12px !important;
}

/* Back per-pannello (dentro sub-prodotti, sub-solutions, …)
 * Nascosto su desktop e nella lista mobile; visibile solo nel sub aperto su mobile.
 */
.imgc-nav__mobile-back,
.imgc-nav__mobile-back.elementor-element,
.imgc-nav__mobile-back.elementor-widget,
.imgc-nav__mobile-back.e-con {
	display: none !important;
}

.imgc-nav.is-mobile-submenu .imgc-nav__panel.is-open .imgc-nav__mobile-back,
.imgc-nav.is-mobile-submenu .imgc-nav__panel.is-open .imgc-nav__mobile-back.elementor-element,
.imgc-nav.is-mobile-submenu .imgc-nav__panel.is-open .imgc-nav__mobile-back.e-con,
.imgc-nav.is-mobile-submenu .sub-prodotti.is-open .imgc-nav__mobile-back,
.imgc-nav.is-mobile-submenu #sub-prodotti.is-open .imgc-nav__mobile-back,
.imgc-nav.is-mobile-submenu .sub-solutions.is-open .imgc-nav__mobile-back,
.imgc-nav.is-mobile-submenu #sub-solutions.is-open .imgc-nav__mobile-back,
.imgc-nav.is-mobile-submenu .sub-integrations.is-open .imgc-nav__mobile-back,
.imgc-nav.is-mobile-submenu #sub-integrations.is-open .imgc-nav__mobile-back,
.imgc-nav.is-mobile-submenu .sub-resources.is-open .imgc-nav__mobile-back,
.imgc-nav.is-mobile-submenu #sub-resources.is-open .imgc-nav__mobile-back,
.imgc-nav.is-mobile-submenu .sub-company.is-open .imgc-nav__mobile-back,
.imgc-nav.is-mobile-submenu #sub-company.is-open .imgc-nav__mobile-back {
	display: block !important;
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	z-index: auto !important;
}

.imgc-nav__mobile-back .elementor-widget-container,
.imgc-nav__mobile-back .elementor-button-wrapper,
.imgc-nav__mobile-back.e-con > .e-con-inner {
	width: 100% !important;
	margin: 0 !important;
}

.imgc-nav__mobile-back .elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	width: 100% !important;
	min-height: 40px !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 8px 8px 8px 16px !important;
	border: 0 !important;
	border-radius: 8px !important;
	background: var(--imgc-nav-soft) !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
	text-align: left !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
}

.imgc-nav__mobile-back .elementor-button-content-wrapper {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	width: 100% !important;
	flex-direction: row !important;
}

/*
 * Icona back a destra (come le voci list), ruotata -90deg.
 * Background SVG: stessa icona dropdown delle voci mobile.
 */
.imgc-nav__mobile-back .elementor-button-text {
	order: 1 !important;
	margin-right: auto !important;
}

.imgc-nav__mobile-back .elementor-button-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
	order: 2 !important;
	width: 24px !important;
	height: 24px !important;
	flex-shrink: 0 !important;
	margin: 0 0 0 auto !important;
	padding: 0 !important;
	transform: rotate(-90deg) !important;
	background: url("/wp-content/uploads/2026/07/icon-dropdown-mobile.svg") center / 11px 19px no-repeat !important;
}

.imgc-nav__mobile-back .elementor-button-icon svg,
.imgc-nav__mobile-back .elementor-button-icon img,
.imgc-nav__mobile-back .elementor-button-icon i,
.imgc-nav__mobile-back .elementor-button-icon .e-font-icon-svg {
	opacity: 0 !important;
	visibility: hidden !important;
	width: 11px !important;
	height: 19px !important;
	margin: 0 !important;
	transform: none !important;
	fill: none !important;
}

@media (min-width: 992px) {
	.imgc-nav__mobile-only,
	.imgc-nav__mobile,
	.imgc-nav__mobile-back,
	.imgc-nav__mobile-back.e-con,
	.imgc-nav__mobile-back.elementor-element {
		display: none !important;
	}

	/* Nascondi burger solo sul frontend desktop (non in editor) */
	body:not(.elementor-editor-active):not(.elementor-editor-preview) .imgc-nav__burger,
	body:not(.elementor-editor-active):not(.elementor-editor-preview) .imgc-nav__burger.e-con {
		display: none !important;
	}
}

/* Editor / preview Elementor: burger sempre visibile e in riga */
body.elementor-editor-active .imgc-nav__burger,
body.elementor-editor-preview .imgc-nav__burger,
body.elementor-editor-active .imgc-nav__burger.e-con,
body.elementor-editor-preview .imgc-nav__burger.e-con,
.elementor-device-mobile .imgc-nav__burger,
.elementor-device-tablet .imgc-nav__burger,
.elementor-device-mobile .imgc-nav__burger.e-con,
.elementor-device-tablet .imgc-nav__burger.e-con,
body[data-elementor-device-mode="tablet"] .imgc-nav__burger,
body[data-elementor-device-mode="mobile"] .imgc-nav__burger,
body[data-elementor-device-mode="tablet"] .imgc-nav__burger.e-con,
body[data-elementor-device-mode="mobile"] .imgc-nav__burger.e-con {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-end !important;
	--flex-direction: row !important;
	--flex-wrap: nowrap !important;
	--container-widget-width: auto !important;
}

body.elementor-editor-active .imgc-nav__burger.e-con > .e-con-inner,
body.elementor-editor-preview .imgc-nav__burger.e-con > .e-con-inner,
.elementor-device-mobile .imgc-nav__burger.e-con > .e-con-inner,
.elementor-device-tablet .imgc-nav__burger.e-con > .e-con-inner,
body[data-elementor-device-mode="tablet"] .imgc-nav__burger.e-con > .e-con-inner,
body[data-elementor-device-mode="mobile"] .imgc-nav__burger.e-con > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-end !important;
	width: auto !important;
	--flex-direction: row !important;
	--flex-wrap: nowrap !important;
}

body.elementor-editor-active .imgc-nav__burger.e-con > .e-con-inner > .e-con,
body.elementor-editor-active .imgc-nav__burger.e-con > .e-con-inner > .elementor-element,
body.elementor-editor-preview .imgc-nav__burger.e-con > .e-con-inner > .e-con,
body.elementor-editor-preview .imgc-nav__burger.e-con > .e-con-inner > .elementor-element,
.elementor-device-mobile .imgc-nav__burger.e-con > .e-con-inner > .e-con,
.elementor-device-mobile .imgc-nav__burger.e-con > .e-con-inner > .elementor-element,
.elementor-device-tablet .imgc-nav__burger.e-con > .e-con-inner > .e-con,
.elementor-device-tablet .imgc-nav__burger.e-con > .e-con-inner > .elementor-element,
body[data-elementor-device-mode="tablet"] .imgc-nav__burger.e-con > .e-con-inner > .e-con,
body[data-elementor-device-mode="tablet"] .imgc-nav__burger.e-con > .e-con-inner > .elementor-element,
body[data-elementor-device-mode="mobile"] .imgc-nav__burger.e-con > .e-con-inner > .e-con,
body[data-elementor-device-mode="mobile"] .imgc-nav__burger.e-con > .e-con-inner > .elementor-element {
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: none !important;
}

/* Editor mobile/tablet: altezza bar come live (~80 tablet / ~58 phone) */
.elementor-device-mobile .imgc-nav,
.elementor-device-tablet .imgc-nav {
	--imgc-nav-bar-h: 80px;
}

.elementor-device-mobile .imgc-nav__bar,
.elementor-device-mobile .imgc-nav__bar.e-con,
.elementor-device-mobile .imgc-nav__bar > .e-con-inner,
.elementor-device-mobile .imgc-nav__bar-inner,
.elementor-device-mobile .imgc-nav__bar-inner.e-con > .e-con-inner,
.elementor-device-tablet .imgc-nav__bar,
.elementor-device-tablet .imgc-nav__bar.e-con,
.elementor-device-tablet .imgc-nav__bar > .e-con-inner,
.elementor-device-tablet .imgc-nav__bar-inner,
.elementor-device-tablet .imgc-nav__bar-inner.e-con > .e-con-inner {
	min-height: 80px !important;
	height: 80px !important;
	max-height: 80px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.elementor-device-mobile .imgc-nav__bar-inner.e-con > .e-con-inner,
.elementor-device-tablet .imgc-nav__bar-inner.e-con > .e-con-inner {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
}

.elementor-device-mobile .imgc-nav__logo,
.elementor-device-tablet .imgc-nav__logo,
.elementor-device-mobile .imgc-nav__logo.e-con,
.elementor-device-tablet .imgc-nav__logo.e-con {
	display: flex !important;
	align-items: center !important;
	width: 142px !important;
	min-width: 142px !important;
	max-width: 142px !important;
	height: 80px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.elementor-device-mobile .imgc-nav__logo img,
.elementor-device-tablet .imgc-nav__logo img,
.elementor-device-mobile .imgc-nav__logo img[src$=".svg"],
.elementor-device-tablet .imgc-nav__logo img[src$=".svg"] {
	width: 142px !important;
	min-width: 142px !important;
	max-width: 142px !important;
	max-height: 36px !important;
	height: auto !important;
	object-fit: contain !important;
	object-position: left center !important;
	margin: 0 !important;
}

/* Editor: mostra pannelli mentre costruisci (solo se stai editando il menu/Header) */
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav__panel,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav__panel,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav .sub-prodotti,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav .sub-prodotti,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav #sub-prodotti,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav #sub-prodotti,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav .sub-solutions,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav .sub-solutions,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav #sub-solutions,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav #sub-solutions,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav .sub-integrations,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav .sub-integrations,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav #sub-integrations,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav #sub-integrations,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav .sub-resources,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav .sub-resources,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav #sub-resources,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav #sub-resources,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav .sub-company,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav .sub-company,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav #sub-company,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav #sub-company {
	position: relative !important;
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	transform: none !important;
	box-shadow: none;
}

body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav__mobile,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav__mobile {
	position: relative !important;
	display: block !important;
	inset: auto !important;
}

/* In editor: mostra i back dentro i pannelli per editarli/tradurli */
body.elementor-editor-active .imgc-nav__mobile-back,
body.elementor-editor-active .imgc-nav__mobile-back.elementor-element,
body.elementor-editor-active .imgc-nav__mobile-back.e-con {
	display: block !important;
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	width: 100% !important;
	z-index: auto !important;
	margin: 8px 0 16px !important;
}

/* In editor mostra i pannelli per editarli; sul frontend restano nascosti */
body.elementor-editor-active .imgc-nav__mobile-panel,
body.elementor-editor-active .imgc-nav [data-imgc-nav-mobile-panel] {
	display: flex !important;
	flex-direction: column;
}

body.elementor-editor-active .imgc-nav__dimmed,
body.elementor-editor-preview .imgc-nav__dimmed {
	display: none !important;
}

/*
 * Solo editando il template Header (edit-area contiene .imgc-nav):
 * nasconde chrome del tema sotto/attorno al canvas. Su HP/pagine NON
 * applicare, altrimenti content/hero spariscono o restano coperti.
 */
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) #content:not(:has(.imgc-nav)):not(:has(.elementor-edit-area)),
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) #primary:not(:has(.imgc-nav)):not(:has(.elementor-edit-area)),
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) #main:not(:has(.imgc-nav)),
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .site-main:not(:has(.imgc-nav)),
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) #colophon,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .site-footer,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) footer,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .elementor-location-footer,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .elementor-location-single,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .elementor-location-archive,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) #tiledesk-container,
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) #tiledeskdiv,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) #content:not(:has(.imgc-nav)):not(:has(.elementor-edit-area)),
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) #primary:not(:has(.imgc-nav)):not(:has(.elementor-edit-area)),
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .site-main:not(:has(.imgc-nav)),
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) #colophon,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .site-footer,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) footer,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .elementor-location-footer,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .elementor-location-single,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) #tiledesk-container,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) #tiledeskdiv {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

/* Header template: pulisci sibling di #page fuori dal canvas header */
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) #page.site > *:not(.elementor-location-header):not(#wpadminbar),
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) #page.empty > *:not(.elementor-location-header):not(#wpadminbar),
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) #page.site > *:not(.elementor-location-header):not(#wpadminbar),
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) #page.empty > *:not(.elementor-location-header):not(#wpadminbar) {
	display: none !important;
}

/* Canvas header: sticky off in editor */
body.elementor-editor-active .elementor-location-header,
body.elementor-editor-preview .elementor-location-header,
body.elementor-editor-active .imgc-nav,
body.elementor-editor-preview .imgc-nav {
	position: relative !important;
	top: auto !important;
	z-index: 10 !important;
}

/*
 * Editing PAGE (HP, ecc.): header Theme Builder compatto.
 * Prima min-height:100vh + drawer mobile visibile riempivano lo schermo
 * e coprivano hero/content. I pannelli/mobile restano editabili aprendo
 * il template Header (edit-area contiene .imgc-nav).
 */
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header {
	min-height: 0 !important;
	height: auto !important;
	background: transparent !important;
	z-index: 1 !important;
}

body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .imgc-nav__mobile,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .imgc-nav__mobile,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .imgc-nav__panel,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .imgc-nav__panel,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .sub-prodotti,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .sub-prodotti,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header #sub-prodotti,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header #sub-prodotti,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .sub-solutions,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .sub-solutions,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header #sub-solutions,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header #sub-solutions,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .sub-integrations,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .sub-integrations,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header #sub-integrations,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header #sub-integrations,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .sub-resources,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .sub-resources,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header #sub-resources,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header #sub-resources,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .sub-company,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header .sub-company,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header #sub-company,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .elementor-location-header #sub-company,
body.elementor-editor-active:not(:has(.elementor-edit-area .imgc-nav)) .imgc-nav__dropdown,
body.elementor-editor-preview:not(:has(.elementor-edit-area .imgc-nav)) .imgc-nav__dropdown {
	display: none !important;
}

/* Editing template Header: canvas alto per lavorare sul menu */
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .elementor-location-header,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .elementor-location-header {
	min-height: 100vh !important;
	background: #f3f5f7 !important;
}

/* —— Dropdown util (Lingua / Account) — UI tipo Slack: soft shadow, radius, spacing —— */
.imgc-nav__dropdown {
	position: fixed;
	z-index: 10050;
	min-width: 240px;
	max-width: min(300px, calc(100vw - 24px));
	padding: 8px;
	border-radius: 12px;
	background: #fff !important;
	border: 0;
	box-shadow:
		0 0 0 1px rgba(0, 34, 90, 0.06),
		0 12px 28px -6px rgba(0, 34, 90, 0.18),
		0 4px 10px -4px rgba(0, 34, 90, 0.1);
	box-sizing: border-box;
	animation: imgc-nav-dd-in 160ms var(--imgc-nav-ease);
}

@keyframes imgc-nav-dd-in {
	from {
		opacity: 0;
		transform: translateY(-6px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.imgc-nav__dropdown[hidden],
.imgc-nav__dropdown:not(.is-open) {
	display: none !important;
}

.imgc-nav__dropdown.is-open {
	display: block !important;
}

.imgc-nav__dropdown-list {
	list-style: none !important;
	margin: 0 !important;
	padding: 4px !important;
}

.imgc-nav__dropdown-item {
	margin: 0 !important;
	padding: 0 !important;
}

.imgc-nav__dropdown-link {
	display: flex !important;
	align-items: center;
	width: 100%;
	min-height: 44px;
	padding: 10px 14px !important;
	border-radius: 8px;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	text-decoration: none !important;
	box-sizing: border-box;
	cursor: pointer !important;
	transition: background 140ms var(--imgc-nav-ease);
}

.imgc-nav__dropdown-link:hover,
.imgc-nav__dropdown-link:focus {
	background: #f4f6f9 !important;
	color: var(--imgc-nav-navy) !important;
	text-decoration: none !important;
}

.imgc-nav__dropdown--account {
	padding: 16px;
}

.imgc-nav__dropdown-kicker {
	margin: 16px 0 8px !important;
	padding: 0 4px;
	color: var(--imgc-nav-muted) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em;
	text-transform: uppercase !important;
	line-height: 1.2 !important;
}

.imgc-nav__dropdown-kicker:first-child {
	margin-top: 0 !important;
}

.imgc-nav__dropdown-btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 40px;
	padding: 10px 16px !important;
	border-radius: 999px !important;
	background: var(--imgc-nav-navy) !important;
	border: 1.5px solid var(--imgc-nav-navy) !important;
	color: #fff !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	box-sizing: border-box;
	cursor: pointer !important;
	transition: background 140ms var(--imgc-nav-ease), box-shadow 140ms var(--imgc-nav-ease);
}

.imgc-nav__dropdown-btn:hover,
.imgc-nav__dropdown-btn:focus {
	background: #001a45 !important;
	color: #fff !important;
	text-decoration: none !important;
	box-shadow: 0 4px 12px rgba(0, 34, 90, 0.2);
}

.imgc-nav__dropdown-btn--ghost {
	background: #fff !important;
	color: var(--imgc-nav-navy) !important;
	box-shadow: none;
}

.imgc-nav__dropdown-btn--ghost:hover,
.imgc-nav__dropdown-btn--ghost:focus {
	background: #f4f6f9 !important;
	color: var(--imgc-nav-navy) !important;
	box-shadow: none;
}

.imgc-nav__account-guest {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.imgc-nav__account-user {
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 14px !important;
	color: var(--imgc-nav-body) !important;
	line-height: 1.35;
	padding: 0;
}

.imgc-nav__account-user-name {
	margin: 0 !important;
	color: var(--imgc-nav-body) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
}

.imgc-nav__account-user .menu-title,
.imgc-nav__account-user .titolo3,
.imgc-nav__account-user h3 {
	margin: 0 0 4px !important;
	color: var(--imgc-nav-navy) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
}

.imgc-nav__account-user > div {
	margin: 0 !important;
}

/* Link testo normali (HTML cookie); non le CTA .imgc-nav__dropdown-btn */
.imgc-nav__account-user a:not(.imgc-nav__dropdown-btn) {
	color: var(--imgc-nav-navy) !important;
	text-decoration: none !important;
	cursor: pointer !important;
}

.imgc-nav__account-user a:not(.imgc-nav__dropdown-btn):hover {
	text-decoration: underline !important;
}

.imgc-nav__account-user a.imgc-nav__dropdown-btn,
.imgc-nav__account-user .imgc-nav__dropdown-btn {
	color: #fff !important;
	text-decoration: none !important;
	margin: 0 !important;
}

.imgc-nav__account-user a.imgc-nav__dropdown-btn:hover,
.imgc-nav__account-user a.imgc-nav__dropdown-btn:focus,
.imgc-nav__account-user .imgc-nav__dropdown-btn:hover,
.imgc-nav__account-user .imgc-nav__dropdown-btn:focus {
	color: #fff !important;
	text-decoration: none !important;
}

.imgc-nav__account-user .imgc-nav__dropdown-btn--ghost,
.imgc-nav__account-user a.imgc-nav__dropdown-btn--ghost {
	color: var(--imgc-nav-navy) !important;
	background: #fff !important;
}

.imgc-nav__account-user .imgc-nav__dropdown-btn--ghost:hover,
.imgc-nav__account-user .imgc-nav__dropdown-btn--ghost:focus,
.imgc-nav__account-user a.imgc-nav__dropdown-btn--ghost:hover,
.imgc-nav__account-user a.imgc-nav__dropdown-btn--ghost:focus {
	color: var(--imgc-nav-navy) !important;
	background: #f4f6f9 !important;
	text-decoration: none !important;
}

.imgc-nav__account-user .nav,
.imgc-nav__account-user ul {
	list-style: none !important;
	margin: 4px 0 0 !important;
	padding: 6px 0 0 !important;
	border-top: 1px solid #eef1f5;
}

.imgc-nav__account-user .nav a,
.imgc-nav__account-user li a {
	display: block;
	padding: 6px 4px !important;
	border-radius: 8px;
	font-weight: 600;
	transition: background 140ms var(--imgc-nav-ease);
}

.imgc-nav__account-user .nav a:hover,
.imgc-nav__account-user li a:hover {
	background: #f4f6f9;
	text-decoration: none !important;
}

/* .spazio del tema (padding 20px) — annulla box, tiene i figli (cookie reali) */
.imgc-nav__account-user .spazio {
	display: contents !important;
	padding: 0 !important;
	margin: 0 !important;
}

.imgc-nav__account-user #logout_form,
.imgc-nav__account-user form {
	margin: 8px 0 0 !important;
	width: 100% !important;
}

.imgc-nav__account-user #logout_form_submit,
.imgc-nav__account-user submit,
.imgc-nav__account-user [id="logout_form_submit"] {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	width: 100% !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 10px 16px !important;
	border-radius: 999px !important;
	border: 1.5px solid var(--imgc-nav-navy) !important;
	background: var(--imgc-nav-navy) !important;
	color: #fff !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	box-sizing: border-box !important;
	transition: background 140ms var(--imgc-nav-ease);
}

.imgc-nav__account-user #logout_form_submit:hover,
.imgc-nav__account-user submit:hover,
.imgc-nav__account-user [id="logout_form_submit"]:hover {
	background: #001a45 !important;
	color: #fff !important;
}

.imgc-nav__account-user #logout_form_submit i,
.imgc-nav__account-user submit i {
	color: #fff !important;
}

/* Cursor hand su tutti i trigger che aprono sottomenu / dropdown */
.imgc-nav__trigger,
.imgc-nav__trigger.elementor-widget,
.imgc-nav__trigger .elementor-button,
.imgc-nav__trigger a,
.imgc-nav__lang,
.imgc-nav__lang.elementor-widget,
.imgc-nav__lang .elementor-button,
.imgc-nav__lang a,
.imgc-nav__lang-mobile,
.imgc-nav__lang-mobile.elementor-widget,
.imgc-nav__lang-mobile .elementor-button,
.imgc-nav__lang-mobile a,
.imgc-nav__account,
.imgc-nav__account.elementor-widget,
.imgc-nav__account .elementor-button,
.imgc-nav__account a,
.imgc-nav__account-mobile,
.imgc-nav__account-mobile.elementor-widget,
.imgc-nav__account-mobile .elementor-button,
.imgc-nav__account-mobile a,
.imgc-nav__util,
.imgc-nav__util.elementor-widget,
.imgc-nav__util .elementor-button,
.imgc-nav__util .elementor-icon-wrapper,
.imgc-nav__util a,
.imgc-nav__burger-open,
.imgc-nav__burger-close,
.imgc-nav__burger-toggle,
.imgc-nav__mobile-item,
.imgc-nav__mobile-item .elementor-button,
.imgc-nav__mobile-back,
.imgc-nav__mobile-back .elementor-button,
[data-imgc-nav-dd],
[data-imgc-nav-trigger],
[data-imgc-nav-burger],
[data-imgc-nav-mobile-item],
[data-imgc-nav-mobile-back] {
	cursor: pointer !important;
}

/* Trigger lingua: codice corrente uppercase */
.imgc-nav__lang .elementor-button-text,
.imgc-nav__lang .elementor-heading-title,
.imgc-nav__lang [data-imgc-nav-lang-label] {
	text-transform: uppercase !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	color: var(--imgc-nav-navy) !important;
}

.imgc-nav__lang.is-open,
.imgc-nav__account.is-open {
	outline: none;
}

.imgc-nav__lang.is-open .elementor-button,
.imgc-nav__account.is-open .elementor-button,
.imgc-nav__lang.is-open .elementor-icon,
.imgc-nav__account.is-open .elementor-icon {
	opacity: 0.85;
}

/* Iniziali account (cookie / sim) — allineate alle altre util desktop */
.imgc-nav__actions .imgc-nav__account,
.imgc-nav__actions .imgc-nav__account.elementor-widget,
.imgc-nav__actions [data-imgc-nav-account-face],
.imgc-nav__account.imgc-nav__util {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	align-self: center !important;
	height: 36px !important;
	min-height: 36px !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
	vertical-align: middle !important;
}

.imgc-nav__actions .imgc-nav__account .elementor-widget-container,
.imgc-nav__actions .imgc-nav__account .elementor-icon-wrapper,
.imgc-nav__actions .imgc-nav__account .elementor-icon,
.imgc-nav__account [data-imgc-nav-account-face],
.imgc-nav [data-imgc-nav-account-face] {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 36px !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
}

/* HTML da cookie: <span class="nav-link"><div class="iniziali">… */
.imgc-nav__account .nav-link,
.imgc-nav [data-imgc-nav-account-face] .nav-link,
.imgc-nav__account a.nav-link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 0 !important;
	height: 36px !important;
	line-height: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.imgc-nav__account .iniziali,
.imgc-nav [data-imgc-nav-account-face] .iniziali,
.imgc-nav__actions .iniziali {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	align-self: center !important;
	width: 30px !important;
	height: 30px !important;
	min-width: 30px !important;
	min-height: 30px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 50% !important;
	background: var(--imgc-nav-navy) !important;
	color: #fff !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: 0.02em;
	text-transform: uppercase !important;
	cursor: pointer !important;
	box-sizing: border-box !important;
	vertical-align: middle !important;
}

/* Dropdown Lang/Account: editabili solo nel template Header */
body.elementor-editor-active:has(.elementor-edit-area .imgc-nav) .imgc-nav__dropdown,
body.elementor-editor-preview:has(.elementor-edit-area .imgc-nav) .imgc-nav__dropdown {
	position: relative !important;
	display: block !important;
	inset: auto !important;
	margin: 12px 0 !important;
	max-width: 280px;
	animation: none;
}

/* —— Carousel card (shortcode [imagicle_nav_carousel_card]) —— */
.imgc-nav__carousel-card.carousel-card {
	display: flex !important;
	width: 100% !important;
	max-width: 100% !important;
	padding: 12px !important;
	border-radius: 8px !important;
	background: var(--imgc-nav-soft, #e9edf3) !important;
	box-sizing: border-box !important;
}

.imgc-nav__carousel-card-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 16px !important;
	width: 100% !important;
	text-decoration: none !important;
	color: inherit !important;
}

.imgc-nav__carousel-card-media {
	flex: 0 0 auto !important;
	max-width: 45% !important;
}

.imgc-nav__carousel-card-media img {
	display: block !important;
	width: 100% !important;
	max-width: 220px !important;
	height: auto !important;
	border-radius: 10px !important;
	object-fit: cover !important;
}

/* Immagine card via shortcode field (widget Shortcode in Elementor) */
.imgc-nav .carousel-card img,
.imgc-nav .carousel-card .elementor-widget-shortcode img,
.imgc-nav .carousel-card .elementor-widget-image img {
	border-radius: 10px !important;
}

.imgc-nav__carousel-card-body {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 8px !important;
}

.imgc-nav__carousel-card-title {
	margin: 0 !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-display) !important;
	font-size: 20px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
}

.imgc-nav__carousel-card-text,
.imgc-nav__carousel-card-text p {
	margin: 0 !important;
	color: var(--imgc-nav-body) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 14px !important;
	line-height: 1.35 !important;
}

.imgc-nav__carousel-card-cta.news-btn-uno,
.imgc-nav__carousel-card-cta.elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	margin-top: 4px !important;
	padding: 8px 14px !important;
	border: 1.5px solid var(--imgc-nav-navy) !important;
	border-radius: 999px !important;
	background: transparent !important;
	color: var(--imgc-nav-navy) !important;
	font-family: var(--imgc-nav-font-ui) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
}

.imgc-nav__carousel-card-inner:hover .imgc-nav__carousel-card-title {
	text-decoration: underline !important;
	text-underline-offset: 2px;
}

@media (max-width: 991px) {
	.imgc-nav__carousel-card-inner {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 8px !important;
	}

	.imgc-nav__carousel-card-media {
		max-width: 100% !important;
	}

	.imgc-nav__carousel-card-media img {
		max-width: 100% !important;
		max-height: 120px !important;
	}

	.imgc-nav__carousel-card-title {
		font-size: 18px !important;
	}

	.imgc-nav__carousel-card-text,
	.imgc-nav__carousel-card-text p {
		font-size: 13px !important;
	}
}
