.elementor-3750 .elementor-element.elementor-element-49630e30{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-3750 .elementor-element.elementor-element-49630e30:not(.elementor-motion-effects-element-type-background), .elementor-3750 .elementor-element.elementor-element-49630e30 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-3750 .elementor-element.elementor-element-d84bf76{--display:flex;}.elementor-3750 .elementor-element.elementor-element-d84bf76.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3750 .elementor-element.elementor-element-1fd4b0cf{--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-3750 .elementor-element.elementor-element-1fd4b0cf.e-con{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-3750 .elementor-element.elementor-element-2af3df30{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;}.elementor-3750 .elementor-element.elementor-element-2af3df30.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-3750 .elementor-element.elementor-element-4dd88882{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-3750 .elementor-element.elementor-element-4dd88882.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3750 .elementor-element.elementor-element-78080c73{--display:flex;--border-radius:43px 43px 43px 43px;}.elementor-3750 .elementor-element.elementor-element-78080c73.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3750 .elementor-element.elementor-element-71738ce5{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-3750 .elementor-element.elementor-element-71738ce5.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-3750 .elementor-element.elementor-element-525b3f11{--display:flex;--min-height:0px;--border-radius:43px 43px 43px 43px;}.elementor-3750 .elementor-element.elementor-element-525b3f11.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3750 .elementor-element.elementor-element-60c9bf8e img{border-radius:24px 24px 24px 24px;}.elementor-3750 .elementor-element.elementor-element-710f3c13 img{border-radius:24px 24px 24px 24px;}@media(max-width:1200px){.elementor-3750 .elementor-element.elementor-element-4dd88882{--grid-auto-flow:row;}}@media(max-width:1024px){.elementor-3750 .elementor-element.elementor-element-2af3df30{width:var( --container-widget-width, 61.198px );max-width:61.198px;--container-widget-width:61.198px;--container-widget-flex-grow:0;}.elementor-3750 .elementor-element.elementor-element-4dd88882{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-3750 .elementor-element.elementor-element-4dd88882{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}@media(min-width:768px){.elementor-3750 .elementor-element.elementor-element-49630e30{--content-width:1320px;}.elementor-3750 .elementor-element.elementor-element-d84bf76{--width:33%;}.elementor-3750 .elementor-element.elementor-element-1fd4b0cf{--width:100%;}.elementor-3750 .elementor-element.elementor-element-4dd88882{--width:56%;}.elementor-3750 .elementor-element.elementor-element-78080c73{--width:100%;}.elementor-3750 .elementor-element.elementor-element-525b3f11{--width:81%;}}@media(max-width:1024px) and (min-width:768px){.elementor-3750 .elementor-element.elementor-element-d84bf76{--width:412.24px;}.elementor-3750 .elementor-element.elementor-element-1fd4b0cf{--width:88.198px;}}/* Start custom CSS for cms_cta, class: .elementor-element-71738ce5 */.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-49630e30 */@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 */