/**
 * LSG — mobile header: collapsible HFE search + single-row header + hamburger tweaks
 * Breakpoint aligned with Astra (921px).
 */

@media (max-width: 921px) {
	/*
	 * LAYOUT: logo | search-icon | hamburger in una riga unica.
	 *
	 * Struttura reale (da Elementor DB + ispezione browser):
	 *   header#masthead
	 *     .elementor-location-header
	 *       .elementor-element-268b6de   ← sezione: logo (10%) + search (90%)
	 *         .e-con-inner / .elementor-container
	 *           .elementor-element-2682977  ← logo
	 *           .elementor-element-1e7dda3  ← widget ricerca
	 *       .elementor-element-5f5c2d5   ← sezione nav / hamburger
	 *
	 * Problema: Elementor forza width:100% sulle sezioni top-level anche
	 * dentro un flex-row → 5f5c2d5 va a capo.
	 * Soluzione: posizioniamo 5f5c2d5 in absolute nell'angolo destro
	 */

	/* L'header è il riferimento per il posizionamento assoluto */
	header#masthead {
		position: relative !important;
		overflow: visible !important;
	}

	#masthead .elementor-element-268b6de {
		box-sizing: border-box !important;
	}

	/* Hamburger nav: posizionato in assoluto nell'angolo destro dell'header */
	#masthead .elementor-element-5f5c2d5 {
		position: absolute !important;
		top: 50% !important;
		right: 12px !important;
		transform: translateY(-50%) !important;
		z-index: 100 !important;
		width: auto !important;
		max-width: none !important;
		pointer-events: auto !important;
	}

	/* Interno Logo+Search: riga orizzontale con allineamento verticale */
	#masthead .elementor-element-268b6de > .e-con-inner,
	#masthead .elementor-element-268b6de > .elementor-container {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		flex-wrap: nowrap !important;
		gap: 8px !important;
	}

	/* Colonna logo: si stringe al contenuto */
	#masthead .elementor-element-2682977 {
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	/* Colonna search: occupa lo spazio rimanente (tra logo e padding-right) */
	#masthead .elementor-element-1e7dda3 {
		flex: 1 1 0 !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	/* Nascondi il resto del menu nav (link desktop) nella sezione hamburger;
	   lasciam mostrare solo il toggle mobile dell'HFE nav widget */
	#masthead .elementor-element-5f5c2d5 .hfe-nav-menu__toggle,
	#masthead .elementor-element-5f5c2d5 .hfe-nav-menu-icon {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
	}

	/* ---- HFE search: collapsed to lens (any header root) ---- */
	#masthead .elementor-widget-hfe-search-button.lsg-mh-search--ready:not(.is-open) .hfe-search-button-wrapper,
	#ast-mobile-header .elementor-widget-hfe-search-button.lsg-mh-search--ready:not(.is-open) .hfe-search-button-wrapper,
	header .elementor-widget-hfe-search-button.lsg-mh-search--ready:not(.is-open) .hfe-search-button-wrapper {
		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;
	}

	#masthead .elementor-widget-hfe-search-button.lsg-mh-search--ready:not(.is-open),
	#ast-mobile-header .elementor-widget-hfe-search-button.lsg-mh-search--ready:not(.is-open),
	header .elementor-widget-hfe-search-button.lsg-mh-search--ready:not(.is-open) {
		flex: 0 0 auto !important;
		max-width: none !important;
		width: auto !important;
		min-width: 0 !important;
		margin-left: auto;
	}

	#masthead .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle,
	#ast-mobile-header .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle,
	header .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 48px;
		height: 48px;
		padding: 0;
		border: 1px solid #d0d7e2;
		border-radius: 12px;
		background: #f8fafc;
		color: #0f172a;
		cursor: pointer;
		-webkit-tap-highlight-color: transparent;
		transition: background 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
	}

	#masthead .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:hover,
	#masthead .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:focus-visible,
	#ast-mobile-header .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:hover,
	#ast-mobile-header .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:focus-visible,
	header .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:hover,
	header .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:focus-visible {
		background: #eef2f7;
		border-color: #94a3b8;
		outline: none;
	}

	#masthead .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:active,
	#ast-mobile-header .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:active,
	header .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:active {
		transform: scale(0.96);
	}

	#masthead .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle svg,
	#ast-mobile-header .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle svg,
	header .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle svg {
		display: block;
	}

	#masthead .ast-primary-header-bar.ast-header-dark .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle,
	#ast-mobile-header .ast-primary-header-bar.ast-header-dark .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle {
		border-color: rgba(255, 255, 255, 0.55);
		background: rgba(255, 255, 255, 0.12);
		color: #fff;
	}

	#masthead .ast-primary-header-bar.ast-header-dark .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:hover,
	#masthead .ast-primary-header-bar.ast-header-dark .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:focus-visible,
	#ast-mobile-header .ast-primary-header-bar.ast-header-dark .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:hover,
	#ast-mobile-header .ast-primary-header-bar.ast-header-dark .elementor-widget-hfe-search-button.lsg-mh-search--ready .lsg-mh-search-toggle:focus-visible {
		background: rgba(255, 255, 255, 0.22);
		border-color: rgba(255, 255, 255, 0.85);
	}

	#masthead .elementor-widget-hfe-search-button.is-open .hfe-search-button-wrapper,
	#ast-mobile-header .elementor-widget-hfe-search-button.is-open .hfe-search-button-wrapper,
	header .elementor-widget-hfe-search-button.is-open .hfe-search-button-wrapper {
		position: fixed !important;
		left: 0 !important;
		right: 0 !important;
		top: var(--lsg-masthead-bottom, 72px) !important;
		width: auto !important;
		height: auto !important;
		margin: 0 !important;
		padding: 12px 16px 16px !important;
		overflow: visible !important;
		clip: auto !important;
		clip-path: none !important;
		z-index: 100001 !important;
		background: #ffffff;
		box-shadow: 0 12px 40px rgba(15, 23, 42, 0.12);
		border-bottom: 1px solid #e8eaef;
		animation: lsg-mh-search-slide 0.22s ease-out;
	}

	@keyframes lsg-mh-search-slide {
		from {
			opacity: 0;
			transform: translateY(-8px);
		}
		to {
			opacity: 1;
			transform: translateY(0);
		}
	}

	#masthead .elementor-widget-hfe-search-button.is-open .hfe-search-form__container,
	#ast-mobile-header .elementor-widget-hfe-search-button.is-open .hfe-search-form__container,
	header .elementor-widget-hfe-search-button.is-open .hfe-search-form__container {
		width: 100% !important;
		max-width: 720px;
		margin: 0 auto;
		height: auto !important;
		min-height: 52px !important;
	}

	#masthead .elementor-widget-hfe-search-button.is-open .hfe-search-form__input,
	#ast-mobile-header .elementor-widget-hfe-search-button.is-open .hfe-search-form__input,
	header .elementor-widget-hfe-search-button.is-open .hfe-search-form__input {
		width: 100% !important;
		opacity: 1 !important;
		padding-top: 12px !important;
		padding-bottom: 12px !important;
	}

	#masthead .elementor-widget-hfe-search-button.is-open .hfe-search-form__container::before,
	#ast-mobile-header .elementor-widget-hfe-search-button.is-open .hfe-search-form__container::before,
	header .elementor-widget-hfe-search-button.is-open .hfe-search-form__container::before {
		display: none !important;
	}

	body.lsg-mh-search-open {
		overflow: hidden;
	}

	.lsg-mh-search-backdrop {
		position: fixed;
		inset: 0;
		z-index: 100000;
		background: rgba(15, 23, 42, 0.35);
		-webkit-backdrop-filter: blur(2px);
		backdrop-filter: blur(2px);
	}

	/* Hamburger: Astra builder (masthead or mobile wrap) */
	#masthead [data-section="section-header-mobile-trigger"] .ast-button-wrap .menu-toggle,
	#masthead [data-section="section-header-mobile-trigger"] .ast-button-wrap button.ast-mobile-menu-trigger-outline,
	#ast-mobile-header [data-section="section-header-mobile-trigger"] .ast-button-wrap .menu-toggle,
	#ast-mobile-header [data-section="section-header-mobile-trigger"] .ast-button-wrap button.ast-mobile-menu-trigger-outline {
		min-width: 48px !important;
		min-height: 48px !important;
		padding: 0 10px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		border-radius: 12px !important;
		transition: background 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
	}

	#masthead [data-section="section-header-mobile-trigger"] .ast-button-wrap .menu-toggle:active,
	#masthead [data-section="section-header-mobile-trigger"] .ast-button-wrap button.ast-mobile-menu-trigger-outline:active,
	#ast-mobile-header [data-section="section-header-mobile-trigger"] .ast-button-wrap .menu-toggle:active,
	#ast-mobile-header [data-section="section-header-mobile-trigger"] .ast-button-wrap button.ast-mobile-menu-trigger-outline:active {
		transform: scale(0.96);
	}

	#masthead [data-section="section-header-mobile-trigger"] .mobile-menu-toggle-icon .ast-mobile-svg,
	#masthead [data-section="section-header-mobile-trigger"] .ast-mobile-svg,
	#ast-mobile-header [data-section="section-header-mobile-trigger"] .mobile-menu-toggle-icon .ast-mobile-svg,
	#ast-mobile-header [data-section="section-header-mobile-trigger"] .ast-mobile-svg {
		width: 22px !important;
		height: 22px !important;
	}

	.ast-mobile-popup-drawer.active .ast-builder-menu-mobile .main-navigation .main-header-menu > .menu-item > .menu-link {
		padding-top: 14px !important;
		padding-bottom: 14px !important;
		font-size: 1.05rem !important;
	}

	.ast-mobile-popup-drawer.active .menu-toggle-close {
		min-width: 44px !important;
		min-height: 44px !important;
		padding: 10px !important;
		border-radius: 10px !important;
	}

	/*
	 * HFE Navigation Menu — Flyout (Main Menu) su tablet/mobile.
	 * HFE imposta testo bianco su .hfe-flyout-content; con sfondo bianco le voci
	 * spariscono o si sovrappongono. Forziamo lista verticale, colori e padding.
	 */
	header .elementor-widget-navigation-menu .hfe-flyout-content {
		padding: 52px 16px 24px !important;
		color: #111827 !important;
	}

	header .elementor-widget-navigation-menu .hfe-flyout-content ul.hfe-nav-menu,
	header .elementor-widget-navigation-menu .hfe-flyout-container ul.hfe-nav-menu {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		position: relative !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}

	/*
	 * CSS custom Elementor (homepage, @media 768px) nasconde #menu-item-33 ecc. e
	 * imposta .hfe-nav-menu { flex-direction: row }. Gli ID battono i selettori
	 * solo-classe: qui li sovrascriviamo solo dentro il pannello flyout.
	 */
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-33,
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-32,
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-31,
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-30,
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-29,
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-736,
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-982,
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-808,
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-816 {
		display: block !important;
		width: 100% !important;
		margin-left: 0 !important;
		border-left: none !important;
		padding-left: 0 !important;
	}

	header .elementor-widget-navigation-menu .hfe-flyout-content ul.hfe-nav-menu > li.menu-item,
	header .elementor-widget-navigation-menu .hfe-flyout-container ul.hfe-nav-menu > li.menu-item {
		display: block !important;
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		float: none !important;
		flex: 0 0 auto !important;
		margin: 0 !important;
		font-size: medium !important;
		color: #111827 !important;
	}

	header .elementor-widget-navigation-menu .hfe-flyout-content ul.hfe-nav-menu a.hfe-menu-item,
	header .elementor-widget-navigation-menu .hfe-flyout-content ul.hfe-nav-menu a.hfe-sub-menu-item,
	header .elementor-widget-navigation-menu .hfe-flyout-container ul.hfe-nav-menu a.hfe-menu-item {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		width: 100% !important;
		color: #111827 !important;
		padding: 14px 16px !important;
		font-size: 16px !important;
		line-height: 1.4 !important;
		white-space: normal !important;
	}

	header .elementor-widget-navigation-menu .hfe-flyout-content ul.hfe-nav-menu > li.menu-item + li.menu-item,
	header .elementor-widget-navigation-menu .hfe-flyout-container ul.hfe-nav-menu > li.menu-item + li.menu-item {
		border-top: 1px solid #e8eaef;
	}

	/* Carrello / Profilo: testo al posto delle icone (CSS custom Elementor) */
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-808 a.hfe-menu-item {
		font-size: 16px !important;
		justify-content: flex-start !important;
		height: auto !important;
	}

	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-808 a.hfe-menu-item::before,
	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-816 a.hfe-menu-item::before {
		content: none !important;
		display: none !important;
	}

	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-816 a.hfe-menu-item {
		font-size: 0 !important;
		justify-content: flex-start !important;
		height: auto !important;
	}

	header .elementor-widget-navigation-menu .hfe-flyout-content #menu-item-816 a.hfe-menu-item::after {
		content: 'Profilo';
		font-size: 16px !important;
		line-height: 1.4 !important;
		color: #111827 !important;
	}

	/* Ultima voce come CTA Elementor: stesso stile delle altre, senza sfondo blu */
	header .elementor-widget-navigation-menu .hfe-flyout-content li.menu-item:last-child a.hfe-menu-item.elementor-button,
	header .elementor-widget-navigation-menu .hfe-flyout-content li.menu-item:last-child a.hfe-menu-item.elementor-button:hover,
	header .elementor-widget-navigation-menu .hfe-flyout-content li.menu-item:last-child a.hfe-menu-item.elementor-button:focus {
		background-color: transparent !important;
		background-image: none !important;
		color: #111827 !important;
		border: none !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		padding: 14px 16px !important;
	}

	header .elementor-widget-navigation-menu .hfe-flyout-wrapper .hfe-side {
		width: min(300px, 88vw) !important;
		max-width: 88vw !important;
	}

	header .elementor-widget-navigation-menu .hfe-flyout-wrapper .hfe-side.hfe-flyout-show {
		z-index: 1000001 !important;
	}

	/* Dropdown orizzontale (se usato al posto del flyout) */
	#masthead .elementor-widget-navigation-menu nav.hfe-nav-menu__layout-horizontal.menu-is-active,
	#masthead .elementor-widget-navigation-menu .hfe-active-menu + nav.hfe-nav-menu__layout-horizontal {
		position: fixed !important;
		top: var(--lsg-masthead-bottom, 72px) !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: 100vw !important;
		margin: 0 !important;
		z-index: 100002 !important;
		background: #ffffff;
		box-shadow: 0 12px 40px rgba(15, 23, 42, 0.12);
		border-bottom: 1px solid #e8eaef;
		overflow-y: auto;
		max-height: calc(100vh - var(--lsg-masthead-bottom, 72px));
		-webkit-overflow-scrolling: touch;
		visibility: visible !important;
		opacity: 1 !important;
		height: auto !important;
		display: block !important;
	}

	#masthead .elementor-widget-navigation-menu nav.hfe-nav-menu__layout-horizontal.menu-is-active .hfe-nav-menu,
	#masthead .elementor-widget-navigation-menu .hfe-active-menu + nav.hfe-nav-menu__layout-horizontal .hfe-nav-menu {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		width: 100% !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	#masthead .elementor-widget-navigation-menu nav.hfe-nav-menu__layout-horizontal.menu-is-active .hfe-nav-menu > li.menu-item,
	#masthead .elementor-widget-navigation-menu .hfe-active-menu + nav.hfe-nav-menu__layout-horizontal .hfe-nav-menu > li.menu-item {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 auto !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
	}

	#masthead .elementor-widget-navigation-menu nav.hfe-nav-menu__layout-horizontal.menu-is-active .hfe-nav-menu a.hfe-menu-item,
	#masthead .elementor-widget-navigation-menu .hfe-active-menu + nav.hfe-nav-menu__layout-horizontal .hfe-nav-menu a.hfe-menu-item {
		width: 100%;
		justify-content: flex-start !important;
	}
}

@media (min-width: 922px) {
	.lsg-mh-search-toggle,
	.lsg-mh-search-backdrop {
		display: none !important;
	}

	/* Hamburger / flyout solo mobile. */
	#masthead .elementor-element-aae67b0,
	#masthead .elementor-element-aae67b0 .elementor-widget-container,
	#masthead .elementor-element-aae67b0 .hfe-flyout-trigger {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	#masthead .elementor-element-f0df0da.e-con {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		flex-wrap: nowrap !important;
		gap: 12px !important;
	}

	/* Header: logo | navbar custom | ricerca (icona) */
	#masthead .elementor-element-268b6de > .e-con-inner,
	#masthead .elementor-element-268b6de > .elementor-container {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		flex-wrap: nowrap !important;
		gap: 20px !important;
	}

	#masthead .elementor-element-2682977 {
		flex: 0 0 auto !important;
		width: auto !important;
	}

	/* Area destra: menu centrato + azioni a destra */
	#masthead .elementor-element-f0df0da {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		width: auto !important;
		position: relative !important;
		min-height: 52px !important;
		overflow: visible !important;
	}

	#masthead .elementor-element-f0df0da > .e-con-inner,
	#masthead .elementor-element-f0df0da > .elementor-container {
		display: block !important;
		width: 100% !important;
		min-height: 52px !important;
	}

	/* Navbar desktop: voci centrate nell'header */
	#masthead .lsg-desktop-nav {
		display: flex !important;
		position: absolute !important;
		left: 50% !important;
		top: 50% !important;
		transform: translate(-50%, -50%) !important;
		z-index: 1 !important;
		width: max-content !important;
		max-width: calc(100% - 200px) !important;
		pointer-events: none !important;
	}

	#masthead .lsg-desktop-nav__links {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 4px 22px !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
		pointer-events: auto !important;
	}

	#masthead .lsg-desktop-nav__links a {
		display: inline-block !important;
		padding: 8px 0 !important;
		font-family: Montserrat, sans-serif !important;
		font-size: 15px !important;
		font-weight: 600 !important;
		line-height: 1.3 !important;
		color: #111827 !important;
		text-decoration: none !important;
		white-space: nowrap !important;
		transition: color 0.2s ease;
	}

	#masthead .lsg-desktop-nav__links a:hover,
	#masthead .lsg-desktop-nav__links a:focus-visible {
		color: #257af8 !important;
		outline: none;
	}

	#masthead .lsg-desktop-nav__icons {
		display: flex !important;
		position: absolute !important;
		right: 0 !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		z-index: 2 !important;
		align-items: center !important;
		gap: 8px !important;
	}

	#masthead .lsg-desktop-nav__icon {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 44px !important;
		height: 44px !important;
		border: 1px solid #d0d7e2 !important;
		border-radius: 12px !important;
		background: #f8fafc !important;
		color: #0f172a !important;
		text-decoration: none !important;
		transition: background 0.2s ease, border-color 0.2s ease;
	}

	#masthead .lsg-desktop-nav__icon:hover,
	#masthead .lsg-desktop-nav__icon:focus-visible {
		background: #eef2f7 !important;
		border-color: #94a3b8 !important;
		outline: none;
	}

	/* Ricerca HFE: solo icona; il campo si espande al click (hfe-input-focus) */
	#masthead .elementor-element-b82600f {
		position: absolute !important;
		right: 104px !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		z-index: 3 !important;
		width: auto !important;
		min-width: 0 !important;
		margin: 0 !important;
	}

	#masthead .elementor-element-b82600f .hfe-search-button-wrapper {
		margin: 0 !important;
		overflow: visible !important;
	}

	#masthead .elementor-element-b82600f .hfe-search-icon-toggle {
		display: block !important;
		position: relative !important;
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		max-width: 44px !important;
		line-height: 44px !important;
		border: 1px solid #d0d7e2 !important;
		border-radius: 12px !important;
		background: #f8fafc !important;
		cursor: pointer !important;
		overflow: hidden !important;
		transition: max-width 0.25s ease, width 0.25s ease;
	}

	#masthead .elementor-element-b82600f .hfe-search-button-wrapper.hfe-input-focus .hfe-search-icon-toggle {
		width: min(280px, 42vw) !important;
		min-width: 280px !important;
		max-width: min(280px, 42vw) !important;
		overflow: visible !important;
	}

	#masthead .elementor-element-b82600f .hfe-search-icon-toggle .hfe-search-form__input {
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		left: auto !important;
		width: 0 !important;
		min-width: 0 !important;
		max-width: none !important;
		height: 44px !important;
		margin: 0 !important;
		padding: 0 !important;
		border: none !important;
		border-radius: 12px !important;
		background: transparent !important;
		opacity: 0 !important;
		pointer-events: none !important;
		cursor: pointer !important;
		color: #111827 !important;
		transition: width 0.25s ease, opacity 0.2s ease;
	}

	#masthead .elementor-element-b82600f .hfe-search-button-wrapper.hfe-input-focus .hfe-search-icon-toggle .hfe-search-form__input {
		width: 100% !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		cursor: text !important;
		background: #ffffff !important;
		border: 1px solid #d0d7e2 !important;
	}

	#masthead .elementor-element-b82600f .hfe-search-icon-toggle i.fa-search {
		position: absolute !important;
		left: 50% !important;
		top: 50% !important;
		transform: translate(-50%, -50%) !important;
		width: auto !important;
		height: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		font-size: 16px !important;
		color: #0f172a !important;
		pointer-events: none !important;
		z-index: 2 !important;
	}

	#masthead .elementor-element-b82600f .hfe-search-button-wrapper.hfe-input-focus .hfe-search-icon-toggle i.fa-search {
		left: auto !important;
		right: 14px !important;
		transform: translateY(-50%) !important;
	}
}

@media (max-width: 921px) {
	#masthead .lsg-desktop-nav,
	#masthead .lsg-desktop-nav__icons {
		display: none !important;
	}
}
