.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-menu-toggle{margin-left:auto;}.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--main .elementor-item{color:#211E1C;fill:#211E1C;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}@media(max-width:767px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}/* Start custom CSS for nav-menu, class: .elementor-element-5f5c8651 */.elementor-122 .elementor-element.elementor-element-5f5c8651 { position: static !important; }
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-menu-toggle { margin: 0 0 0 auto; }
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown.elementor-nav-menu__container { position: absolute; top: 100% !important; left: 0 !important; right: 0; width: auto !important; margin-top: 1px !important; z-index: 9997; }
/* Menu mobile: nessun rientro anomalo */
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown ul,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown li { margin: 0 !important; padding: 0 !important; width: 100% !important; left: 0 !important; }
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown a,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown a:hover,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown a:focus,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown a.highlighted { border-left: 0 !important; border-inline-start: 0 !important; margin: 0 !important; }
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown a.elementor-item { padding: 16px 24px !important; }
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown .sub-menu a.elementor-sub-item { padding: 13px 24px 13px 40px !important; }
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown .vv-menu-cta { padding: 20px 24px 24px !important; }
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--dropdown .vv-menu-cta > a.elementor-item { padding: 14px 24px !important; border: 2px solid #EE7F1D !important; }
/* Desktop: nessuno spostamento delle voci al passaggio del mouse */
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item:hover,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item:focus,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item.highlighted,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item.elementor-item-active { padding: 10px 12px; transition: color 0.2s; }
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--main .sub-menu a.elementor-sub-item,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--main .sub-menu a.elementor-sub-item:hover,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--main .sub-menu a.elementor-sub-item:focus,
.elementor-122 .elementor-element.elementor-element-5f5c8651 .elementor-nav-menu--main .sub-menu a.elementor-sub-item.elementor-item-active { padding: 11px 20px; transition: color 0.2s, background-color 0.2s; }
/* Header ad altezza costante durante lo scroll */
.elementor-122.elementor .e-b973719-ee65 { padding-block: 16px !important; }
.elementor-122.elementor .e-14207adb-a56e { height: 52px !important; transform: scale(calc(1 - 0.2 * var(--vv-s, 0))); transform-origin: left center; will-change: transform; } @media (max-width: 767px) { .elementor-122.elementor .e-b973719-ee65 { padding-block: 10px !important; }
.elementor-122.elementor .e-14207adb-a56e { height: 40px !important; transform: scale(calc(1 - 0.12 * var(--vv-s, 0))); } }/* End custom CSS */
/* Start custom CSS *//* ===== Header Vivedile ===== */
@property --vv-s { syntax: '<number>'; inherits: true; initial-value: 0; }
@keyframes vv-header-scroll { from { --vv-s: 0; } to { --vv-s: 1; } }

/* Sticky */
.elementor-122 { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 1000; }
@supports (animation-timeline: scroll()) {
  .elementor-122 { animation: vv-header-scroll linear both; animation-timeline: scroll(root block); animation-range: 0px 120px; }
}

/* Riduzione + ombra allo scroll */
.elementor-122.elementor .e-4deff6db-3a6e { box-shadow: 0 6px 20px rgba(44, 42, 41, calc(0.12 * var(--vv-s))); }
.elementor-122.elementor .e-b973719-ee65 { padding-block: calc(16px - 6px * var(--vv-s)); }
.elementor-122.elementor .e-14207adb-a56e { height: calc(52px - 10px * var(--vv-s)); width: auto; }
@media (max-width: 767px) {
  .elementor-122.elementor .e-b973719-ee65 { padding-block: calc(10px - 2px * var(--vv-s)); }
  .elementor-122.elementor .e-14207adb-a56e { height: calc(40px - 6px * var(--vv-s)); }
}

/* Menu desktop: voci principali */
.elementor-122 .elementor-nav-menu--main .elementor-item { font-family: "Public Sans", sans-serif; font-size: 14px; font-weight: 900; line-height: 1.3; letter-spacing: 0.6px; text-transform: uppercase; color: #2C2A29; padding: 10px 12px; }
.elementor-122 .elementor-nav-menu--main .elementor-item:hover,
.elementor-122 .elementor-nav-menu--main .elementor-item:focus,
.elementor-122 .elementor-nav-menu--main .elementor-item.highlighted,
.elementor-122 .elementor-nav-menu--main .elementor-item.elementor-item-active { color: #B35500; }
.elementor-122 .elementor-nav-menu--main .elementor-item::after { background-color: #EE7F1D; height: 3px; }
.elementor-122 .elementor-nav-menu--main .sub-arrow { padding-left: 6px; font-size: 10px; }
.elementor-122 .elementor-nav-menu--main .vv-menu-cta { display: none; }

/* Menu desktop: sottomenu */
.elementor-122 .elementor-nav-menu--main .sub-menu { background-color: #FFFFFF; border: 1px solid #E5E1DC; border-top: 3px solid #EE7F1D; border-radius: 0 0 4px 4px; box-shadow: 0 12px 28px rgba(44, 42, 41, 0.12); min-width: 300px !important; padding: 8px 0; }
.elementor-122 .elementor-nav-menu--main .sub-menu .elementor-sub-item { font-family: "Public Sans", sans-serif; font-size: 15px; font-weight: 500; text-transform: none; letter-spacing: 0; color: #2C2A29; background-color: transparent; padding: 11px 20px; border-left: 3px solid transparent; }
.elementor-122 .elementor-nav-menu--main .sub-menu .elementor-sub-item:hover,
.elementor-122 .elementor-nav-menu--main .sub-menu .elementor-sub-item:focus,
.elementor-122 .elementor-nav-menu--main .sub-menu .elementor-sub-item.elementor-item-active { color: #B35500; background-color: #F6F4F1; border-left-color: #EE7F1D; }

/* CTA desktop nascosta sotto 1200px (compare nel menu mobile) */
@media (max-width: 1200px) {
  .elementor-122.elementor .e-564a135e-594e { display: none; }
}

/* Icona hamburger */
.elementor-122 .elementor-menu-toggle { --nav-menu-icon-size: 28px; color: #2C2A29; background-color: transparent; padding: 6px; border-radius: 4px; }
.elementor-122 .elementor-menu-toggle:hover, .elementor-122 .elementor-menu-toggle.elementor-active { color: #B35500; }
.elementor-122 .elementor-menu-toggle svg { fill: currentColor; }

/* Menu mobile (tendina) */
.elementor-122 .elementor-nav-menu--dropdown.elementor-nav-menu__container { background-color: #FFFFFF; border-top: 1px solid #E5E1DC; box-shadow: 0 16px 32px rgba(44, 42, 41, 0.14); margin-top: 0; max-height: calc(100vh - 64px); overflow-y: auto; }
.elementor-122 .elementor-nav-menu--dropdown .elementor-item { font-family: "Public Sans", sans-serif; font-size: 16px; font-weight: 900; letter-spacing: 0.6px; text-transform: uppercase; color: #2C2A29; background-color: #FFFFFF; padding: 16px 24px; border-bottom: 1px solid #E5E1DC; }
.elementor-122 .elementor-nav-menu--dropdown .elementor-sub-item { font-family: "Public Sans", sans-serif; font-size: 15px; font-weight: 600; text-transform: none; letter-spacing: 0; color: #4A4644; background-color: #F6F4F1; padding: 13px 24px 13px 40px !important; border-bottom: 1px solid #E5E1DC; border-left: 0; }
.elementor-122 .elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-122 .elementor-nav-menu--dropdown .elementor-item.highlighted,
.elementor-122 .elementor-nav-menu--dropdown .elementor-item.elementor-item-active,
.elementor-122 .elementor-nav-menu--dropdown .elementor-sub-item:hover,
.elementor-122 .elementor-nav-menu--dropdown .elementor-sub-item.elementor-item-active { color: #B35500; background-color: #F6F4F1; }

/* CTA dentro il menu mobile */
.elementor-122 .elementor-nav-menu--dropdown .vv-menu-cta { padding: 20px 24px 24px; background-color: #FFFFFF; font-weight: 600; }
.elementor-122 .elementor-nav-menu--dropdown .vv-menu-cta > a.elementor-item { display: block; text-align: center; background-color: #EE7F1D; color: #2C2A29; border: 2px solid #EE7F1D; border-radius: 4px; padding: 14px 24px; font-size: 15px; }
.elementor-122 .elementor-nav-menu--dropdown .vv-menu-cta > a.elementor-item:hover,
.elementor-122 .elementor-nav-menu--dropdown .vv-menu-cta > a.elementor-item:focus { background-color: #2C2A29; border-color: #2C2A29; color: #FFFFFF; }/* End custom CSS */