.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.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-weight:var( --e-global-typography-accent-font-weight );}.elementor-175 .elementor-element.elementor-element-6f924c5b .elementor-menu-toggle{margin-left:auto;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for nav-menu, class: .elementor-element-6f924c5b */.elementor-175 .elementor-element.elementor-element-6f924c5b{flex:1 1 auto; display:flex; flex-direction:column; justify-content:center; position:relative;} .elementor-175 .elementor-element.elementor-element-6f924c5b .elementor-nav-menu--main .elementor-item{color:var(--grafite); fill:var(--grafite); font-family:var(--font-testo), sans-serif; font-weight:600; font-size:16px;} .elementor-175 .elementor-element.elementor-element-6f924c5b .elementor-nav-menu--main .elementor-item:hover, .elementor-175 .elementor-element.elementor-element-6f924c5b .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--rosso);} .elementor-175 .elementor-element.elementor-element-6f924c5b .elementor-nav-menu--main .elementor-item:after{background-color:var(--rosso);} .elementor-175 .elementor-element.elementor-element-6f924c5b .elementor-nav-menu--dropdown{background-color:var(--avorio); border:1.5px solid var(--grafite);} .elementor-175 .elementor-element.elementor-element-6f924c5b .elementor-nav-menu--dropdown a{color:var(--grafite); font-family:var(--font-testo), sans-serif; font-weight:500;} .elementor-175 .elementor-element.elementor-element-6f924c5b .elementor-nav-menu--dropdown a:hover, .elementor-175 .elementor-element.elementor-element-6f924c5b .elementor-nav-menu--dropdown a.elementor-item-active{background-color:var(--grafite); color:var(--avorio);} .elementor-175 .elementor-element.elementor-element-6f924c5b .elementor-menu-toggle{color:var(--grafite); background-color:transparent;} .elementor-175 .elementor-element.elementor-element-6f924c5b nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{position:absolute; top:calc(50% + 41px) !important; margin-top:0; z-index:60;} @media (max-width:767px) { .elementor-175 .elementor-element.elementor-element-6f924c5b nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{top:calc(50% + 33px) !important;} }/* End custom CSS */
/* Start custom CSS *//* ===== ISP – CSS globale (caricato con l'header su tutte le pagine) ===== */

/* --- Sfondo dinamico: solo sfumature radiali animate con transform (nessun filtro blur) --- */
html{background-color:var(--avorio);}
body{background:transparent!important;}
html::before,body::before,body::after{content:"";position:fixed;pointer-events:none;}
html::before{inset:-25vmax;z-index:-3;will-change:transform;
  background:
    radial-gradient(34vmax 34vmax at 18% 22%, color-mix(in srgb,var(--azzurro) 70%,transparent), transparent 70%),
    radial-gradient(30vmax 30vmax at 82% 30%, color-mix(in srgb,var(--giallo) 72%,transparent), transparent 70%),
    radial-gradient(26vmax 26vmax at 30% 88%, color-mix(in srgb,var(--grafite) 22%,transparent), transparent 70%);
  animation:isp-bg-a 16s ease-in-out infinite alternate;}
body::before{inset:-25vmax;z-index:-2;will-change:transform;
  background:
    radial-gradient(28vmax 28vmax at 55% 80%, color-mix(in srgb,var(--rosso) 48%,transparent), transparent 70%),
    radial-gradient(24vmax 24vmax at 85% 82%, color-mix(in srgb,var(--blu-profondo) 40%,transparent), transparent 70%),
    radial-gradient(20vmax 20vmax at 92% 5%, color-mix(in srgb,var(--grafite) 16%,transparent), transparent 70%);
  animation:isp-bg-b 21s ease-in-out infinite alternate;}
body::after{inset:0;z-index:-1;opacity:.13;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");}
@keyframes isp-bg-a{0%{transform:translate3d(0,0,0) rotate(0deg) scale(1)}50%{transform:translate3d(9vmax,6vmax,0) rotate(6deg) scale(1.08)}100%{transform:translate3d(-7vmax,10vmax,0) rotate(-5deg) scale(1.12)}}
@keyframes isp-bg-b{0%{transform:translate3d(0,0,0) rotate(0deg) scale(1.05)}50%{transform:translate3d(-10vmax,-6vmax,0) rotate(-7deg) scale(.95)}100%{transform:translate3d(6vmax,-11vmax,0) rotate(5deg) scale(1.1)}}

/* --- Sezioni neutre trasparenti, sezioni bianche in vetro --- */
body .elementor .isp-bg-avorio{background-color:transparent;}
body .elementor .isp-bg-bianco{background-color:rgba(255,255,255,.38);-webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%);}

/* --- Fasce colorate: sfumatura + grana (stile bento) --- */
:root{--isp-grain:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/></svg>");}
body .elementor .isp-bg-giallo{background-image:var(--isp-grain),radial-gradient(120% 110% at 22% 12%, color-mix(in srgb,var(--giallo) 80%,white) 0%, var(--giallo) 30%, color-mix(in srgb,var(--giallo) 45%,var(--rosso)) 70%, color-mix(in srgb,var(--rosso) 75%,black) 115%);background-blend-mode:overlay,normal;}
body .elementor .isp-bg-rosso{background-image:var(--isp-grain),radial-gradient(120% 110% at 20% 0%, color-mix(in srgb,var(--rosso) 70%,var(--giallo)) 0%, var(--rosso) 35%, color-mix(in srgb,var(--rosso) 55%,black) 75%, color-mix(in srgb,var(--rosso) 15%,black) 115%);background-blend-mode:overlay,normal;}
body .elementor .isp-bg-azzurro{background-image:var(--isp-grain),radial-gradient(120% 120% at 18% 0%, color-mix(in srgb,var(--azzurro) 75%,white) 0%, var(--azzurro) 32%, color-mix(in srgb,var(--azzurro) 50%,var(--blu-profondo)) 75%, color-mix(in srgb,var(--blu-profondo) 70%,black) 120%);background-blend-mode:overlay,normal;}
body .elementor .isp-bg-blu{background-image:var(--isp-grain),radial-gradient(110% 130% at 85% 0%, color-mix(in srgb,var(--blu-profondo) 70%,var(--azzurro)) 0%, var(--blu-profondo) 32%, color-mix(in srgb,var(--blu-profondo) 50%,black) 68%, color-mix(in srgb,var(--blu-profondo) 10%,black) 110%);background-blend-mode:overlay,normal;}
body .elementor .isp-bg-basalto{background-image:var(--isp-grain),radial-gradient(90% 120% at 90% 100%, color-mix(in srgb,var(--rosso) 22%,var(--basalto)) 0%, var(--basalto) 50%, color-mix(in srgb,var(--basalto) 70%,black) 100%);background-blend-mode:overlay,normal;}

/* --- Fasce a tutta larghezza staccate dai bordi, angoli arrotondati --- */
body .elementor .isp-section.isp-bg-giallo,body .elementor .isp-section.isp-bg-rosso,body .elementor .isp-section.isp-bg-azzurro,body .elementor .isp-section.isp-bg-blu,body .elementor .isp-section.isp-bg-basalto,body .elementor .isp-section.isp-bg-bianco{width:calc(100% - 32px);max-width:calc(100% - 32px);margin:14px auto;border-radius:28px;}
@media(max-width:767px){body .elementor .isp-section.isp-bg-giallo,body .elementor .isp-section.isp-bg-rosso,body .elementor .isp-section.isp-bg-azzurro,body .elementor .isp-section.isp-bg-blu,body .elementor .isp-section.isp-bg-basalto,body .elementor .isp-section.isp-bg-bianco{width:calc(100% - 16px);max-width:calc(100% - 16px);margin:10px auto;border-radius:20px;}}

/* --- Prima sezione: spazio per l'header fluttuante --- */
@media(max-width:767px){[data-elementor-type="wp-page"] > .isp-section:first-child{padding-top:118px;}}

/* --- Header: la barra si restringe, niente sbordi --- */
.elementor-location-header [data-id="132524a4"],.elementor-location-header [data-id="28df33a2"]{min-width:0;}
.elementor-location-header [data-id="28df33a2"]{gap:12px;}

/* --- Parallax decorazioni (scroll-driven, solo CSS) --- */
@keyframes isp-par-y{from{translate:0 -90px}to{translate:0 110px}}
@keyframes isp-par-y-fast{from{translate:0 -170px}to{translate:0 210px}}
@keyframes isp-par-x{from{translate:-80px 0}to{translate:100px 0}}
@keyframes isp-par-glyph{from{translate:0 -50px}to{translate:0 90px}}
@supports (animation-timeline: view()){
  .elementor .isp-deco-bar{animation:isp-par-x linear both;animation-timeline:view();animation-range:cover;}
  .elementor .isp-deco-bar.isp-fill-rosso{animation-name:isp-par-y-fast;}
  .elementor .isp-deco-vbar{animation:isp-par-y linear both;animation-timeline:view();animation-range:cover;}
  .elementor .isp-deco-vbar.isp-fill-rosso{animation-name:isp-par-y-fast;}
  .elementor .isp-deco-glyph{animation:isp-par-glyph linear both;animation-timeline:view();animation-range:cover;}
}

/* --- Riduci movimento --- */
@media (prefers-reduced-motion: reduce){
  html::before,body::before{animation:none!important;}
  .elementor .isp-deco-bar,.elementor .isp-deco-vbar,.elementor .isp-deco-glyph{animation:none!important;translate:none!important;}
}/* End custom CSS */