.elementor-2484 .elementor-element.elementor-element-2feaabec{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:-30px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2484 .elementor-element.elementor-element-2feaabec:not(.elementor-motion-effects-element-type-background), .elementor-2484 .elementor-element.elementor-element-2feaabec > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-2484 .elementor-element.elementor-element-6368fc5c{--display:flex;}.elementor-2484 .elementor-element.elementor-element-6368fc5c.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-2484 .elementor-element.elementor-element-60a758e6{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;--align-content:flex-start;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2484 .elementor-element.elementor-element-60a758e6.e-con{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-2484 .elementor-element.elementor-element-6f1b9e5f{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;}.elementor-2484 .elementor-element.elementor-element-6f1b9e5f.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-2484 .elementor-element.elementor-element-499568e0{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-2484 .elementor-element.elementor-element-499568e0.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-2484 .elementor-element.elementor-element-5420c6f1{--display:flex;--border-radius:43px 43px 43px 43px;}.elementor-2484 .elementor-element.elementor-element-5420c6f1.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-2484 .elementor-element.elementor-element-119d23e3{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-2484 .elementor-element.elementor-element-119d23e3.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-2484 .elementor-element.elementor-element-5295724c{--display:flex;--min-height:0px;--border-radius:43px 43px 43px 43px;}.elementor-2484 .elementor-element.elementor-element-5295724c.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-2484 .elementor-element.elementor-element-724b268b img{border-radius:24px 24px 24px 24px;}.elementor-2484 .elementor-element.elementor-element-3f1907f7 img{border-radius:24px 24px 24px 24px;}@media(max-width:1200px){.elementor-2484 .elementor-element.elementor-element-499568e0{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-2484 .elementor-element.elementor-element-2feaabec{--content-width:1320px;}.elementor-2484 .elementor-element.elementor-element-6368fc5c{--width:33%;}.elementor-2484 .elementor-element.elementor-element-60a758e6{--width:100%;}.elementor-2484 .elementor-element.elementor-element-499568e0{--width:56%;}.elementor-2484 .elementor-element.elementor-element-5420c6f1{--width:100%;}.elementor-2484 .elementor-element.elementor-element-5295724c{--width:81%;}}@media(max-width:1024px) and (min-width:768px){.elementor-2484 .elementor-element.elementor-element-6368fc5c{--width:412.24px;}.elementor-2484 .elementor-element.elementor-element-60a758e6{--width:88.198px;}}@media(max-width:1024px){.elementor-2484 .elementor-element.elementor-element-6f1b9e5f{width:var( --container-widget-width, 61.198px );max-width:61.198px;--container-widget-width:61.198px;--container-widget-flex-grow:0;}.elementor-2484 .elementor-element.elementor-element-499568e0{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-2484 .elementor-element.elementor-element-2feaabec{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2484 .elementor-element.elementor-element-6f1b9e5f > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-2484 .elementor-element.elementor-element-499568e0{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for cms_cta, class: .elementor-element-119d23e3 */.cms-cta.cms-cta-4 {
  padding-top: 30px;   /* prima 50px */
  padding-bottom: 30px;
}

.cms-cta.cms-cta-4 .cms-desc {
  --pb: 60px;          /* prima 100px */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2feaabec */@media (max-width: 767px){

  /* pannello menu scrollabile */
  .site-navigation.site-navigation-dropdown.navigation-open{
    max-height: calc(100vh - 90px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* megamenu: full width e layout in colonna */
  #mastmenu .sub-menu.sub-megamenu{
    position: static !important;
    width: 100% !important;
    transform: none !important;
    padding: 10px 0 0 !important;
  }

  /* Elementor: da griglia/colonne a stack */
  #mastmenu .sub-megamenu .e-con-inner,
  #mastmenu .sub-megamenu .e-con{
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    width: 100% !important;
  }

  /* padding laterale coerente */
  #mastmenu .sub-megamenu .e-con-inner{
    padding: 0 18px 18px !important;
  }

  /* Lista link: stile pulito */
  #mastmenu .sub-megamenu ul.cms-navigation-menu > li{
    border-top: 1px solid rgba(255,255,255,.12);
  }
  #mastmenu .sub-megamenu ul.cms-navigation-menu > li > a{
    padding: 12px 0 !important;
    display: flex;
    align-items: center;
    gap: 10px;
  }

  /* ✅ RI-ABILITA e sistema le sezioni grafiche */
  #mastmenu .sub-megamenu .elementor-widget-cms_cta,
  #mastmenu .sub-megamenu .elementor-widget-image,
  #mastmenu .sub-megamenu .elementor-widget-cms_button{
    display: block !important;
    width: 100% !important;
  }

  /* Card CTA (venture builder): full width + margini */
  #mastmenu .sub-megamenu .cms-cta{
    width: 100% !important;
    margin-top: 10px !important;
    border-radius: 22px !important;
    overflow: hidden;
  }

  /* Immagini promo: full width e proporzione simile allo screenshot */
  #mastmenu .sub-megamenu .elementor-widget-image img{
    width: 100% !important;
    height: auto !important;
    display: block;
    border-radius: 22px !important;
  }

  /* Bottoni/link sotto immagini: allineamento e spazi */
  #mastmenu .sub-megamenu .elementor-widget-cms_button a{
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    padding: 10px 6px 0 !important;
  }

  /* Se qualche colonna “desktop” restringe la larghezza, la forziamo */
  #mastmenu .sub-megamenu .elementor-widget__width-initial{
    width: 100% !important;
  }
}

/* Spark.ai / CMS: rendi il dropdown full-width e NON farlo traslare dal tema */
.sub-menu.sub-megamenu.cms-megamenu-full{
  position: absolute;
  left: 50% !important;
  right: auto !important;

  /* full width viewport */
  width: 100vw;
  max-width: 100vw;

  /* centra davvero sul viewport */
  margin-left: calc(-50vw + 50%) !important;

  /* IMPORTANTISSIMO: il tema spesso mette transform -> va azzerato */
  transform: none !important;

  /* evita overflow orizzontale */
  box-sizing: border-box;
  z-index: 9999;
}

/* contenuto interno: centrato e con padding */
.sub-menu.sub-megamenu.cms-megamenu-full .e-con-inner{
  max-width: 1200px;         /* adattalo al tuo container */
  margin: 0 auto;
  padding: 24px;
  box-sizing: border-box;
}

/* tablet */
@media (max-width: 1024px){
  .sub-menu.sub-megamenu.cms-megamenu-full .e-con-inner{
    max-width: 100%;
    padding: 20px 16px;
  }
}

/* mobile: meglio farlo diventare "normale" dentro il menu */
@media (max-width: 767px){
  .sub-menu.sub-megamenu.cms-megamenu-full{
    position: static;
    width: 100%;
    max-width: 100%;
    left: auto !important;
    margin-left: 0 !important;
  }

  .sub-menu.sub-megamenu.cms-megamenu-full .e-con-inner{
    padding: 16px 14px;
  }

  /* se la griglia stringe troppo, impila */
  .sub-menu.sub-megamenu.cms-megamenu-full .e-grid{
    display: block !important;
  }
}/* End custom CSS */