.elementor-5528 .elementor-element.elementor-element-bfb7389{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5528 .elementor-element.elementor-element-fe24baa{--display:flex;}.elementor-5528 .elementor-element.elementor-element-f18ed05 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-5528 .elementor-element.elementor-element-0004391{--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;--justify-content:flex-end;--flex-wrap:nowrap;--margin-top:-22px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-5528 .elementor-element.elementor-element-0004391:not(.elementor-motion-effects-element-type-background), .elementor-5528 .elementor-element.elementor-element-0004391 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-5528 .elementor-element.elementor-element-c17aece{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-5528 .elementor-element.elementor-element-1699943{--display:flex;}.elementor-5528 .elementor-element.elementor-element-1699943.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-5528 .elementor-element.elementor-element-a2a14b0.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu > ul, .elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper:not(.active) .jkit-menu, .elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper:not(.active) .jkit-menu > li > a{display:flex;}.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu{justify-content:flex-start;}.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu .menu-item .sub-menu{left:unset;top:100%;right:unset;bottom:unset;}.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu .menu-item .sub-menu .menu-item .sub-menu{left:100%;top:unset;right:unset;bottom:unset;}.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper{height:80px;}.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu li.menu-item-has-children .sub-menu{min-width:220px;}.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-hamburger-menu{float:right;}.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-nav-identity-panel .jkit-nav-site-title .jkit-nav-logo img{object-fit:cover;}.elementor-5528 .elementor-element.elementor-element-6ebd2b2{--display:flex;}.elementor-5528 .elementor-element.elementor-element-6ebd2b2.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-5528 .elementor-element.elementor-element-c17aece{--width:15%;}}@media(max-width:1024px){.elementor-5528 .elementor-element.elementor-element-0004391{--flex-wrap:wrap;}.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-nav-identity-panel .jkit-nav-site-title .jkit-nav-logo img{max-width:260px;}}@media(max-width:767px){.elementor-5528 .elementor-element.elementor-element-0004391{--justify-content:flex-start;--flex-wrap:wrap;}.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-nav-identity-panel .jkit-nav-site-title .jkit-nav-logo img{max-width:240px;}}/* Start custom CSS for html, class: .elementor-element-f18ed05 */.elementor-5528 .elementor-element.elementor-element-f18ed05 .cs-phone-widget {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #F3EFFA;
  padding: 7px 16px;
  font-size: 13px;
  line-height: 1.4;
  color: #3B3470;
}

.elementor-5528 .elementor-element.elementor-element-f18ed05 .cs-phone-widget svg {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  color: #3B3470;
}

.elementor-5528 .elementor-element.elementor-element-f18ed05 .cs-phone-widget a {
  color: #3B3470;
  font-weight: 500;
  text-decoration: none;
  border-bottom: 1px solid rgba(59, 52, 112, 0.35);
  transition: border-color 0.18s ease;
}

.elementor-5528 .elementor-element.elementor-element-f18ed05 .cs-phone-widget a:hover {
  border-bottom-color: #3B3470;
}

.elementor-5528 .elementor-element.elementor-element-f18ed05 .cs-phone-widget a:focus-visible {
  outline: 2px solid #6B4FA8;
  outline-offset: 2px;
}

@media (max-width: 767px) {
  .elementor-5528 .elementor-element.elementor-element-f18ed05 .cs-phone-widget {
    font-size: 12px;
    padding: 8px 14px;
  }
  .elementor-5528 .elementor-element.elementor-element-f18ed05 .cs-phone-widget svg {
    display: none;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c17aece */.elementor-5528 .elementor-element.elementor-element-c17aece {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0;
}

.elementor-5528 .elementor-element.elementor-element-c17aece img {
  height: 44px !important;
  width: auto !important;
  max-width: none !important;
}

@media (max-width: 1024px) {
  .elementor-5528 .elementor-element.elementor-element-c17aece img {
    height: 39px !important;
  }
}

/* MOBILE: logo centrato in assoluto rispetto al header */
@media (max-width: 767px) {
  .elementor-5528 .elementor-element.elementor-element-c17aece {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 5;
  }
  .elementor-5528 .elementor-element.elementor-element-c17aece img {
    height: 32px !important;
  }
}

@media (max-width: 400px) {
  .elementor-5528 .elementor-element.elementor-element-c17aece img {
    height: 28px !important;
  }
}/* End custom CSS */
@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-hamburger-menu { display: block; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper { width: 100%; max-width: 360px; border-radius: 0; background-color: #f7f7f7; width: 100%; position: fixed; top: 0; left: -110%; height: 100%!important; box-shadow: 0 10px 30px 0 rgba(255,165,0,0); overflow-y: auto; overflow-x: hidden; padding-top: 0; padding-left: 0; padding-right: 0; display: flex; flex-direction: column-reverse; justify-content: flex-end; -moz-transition: left .6s cubic-bezier(.6,.1,.68,.53), width .6s; -webkit-transition: left .6s cubic-bezier(.6,.1,.68,.53), width .6s; -o-transition: left .6s cubic-bezier(.6,.1,.68,.53), width .6s; -ms-transition: left .6s cubic-bezier(.6,.1,.68,.53), width .6s; transition: left .6s cubic-bezier(.6,.1,.68,.53), width .6s; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper.active { left: 0; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu-container { overflow-y: hidden; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-nav-identity-panel { padding: 10px 0px 10px 0px; display: block; position: relative; z-index: 5; width: 100%; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-nav-identity-panel .jkit-nav-site-title { display: inline-block; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-nav-identity-panel .jkit-close-menu { display: block; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu { display: block; height: 100%; overflow-y: auto; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu li.menu-item-has-children > a i { margin-left: auto; border: 1px solid var(--jkit-border-color); border-radius: 3px; padding: 4px 15px; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu li.menu-item-has-children > a svg { margin-left: auto; border: 1px solid var(--jkit-border-color); border-radius: 3px; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu li.menu-item-has-children .sub-menu { position: inherit; box-shadow: none; background: none; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu li { display: block; width: 100%; position: inherit; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu li .sub-menu { display: none; max-height: 2500px; opacity: 0; visibility: hidden; transition: max-height 5s ease-out; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu li .sub-menu.dropdown-open { display: block; opacity: 1; visibility: visible; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu li a { display: block; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu li a i { float: right; } }@media (max-width: 1024px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu li a svg { float: right } }@media (min-width: 1025px) {.elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper .jkit-menu-container { height: 100%; } }@media (max-width: 1024px) {.admin-bar .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper { top: 32px; } }@media (max-width: 782px) {.admin-bar .elementor-element.elementor-element-a2a14b0 .jeg-elementor-kit.jkit-nav-menu .jkit-menu-wrapper { top: 46px; } }
/* Start custom CSS for jkit_nav_menu, class: .elementor-element-a2a14b0 */.elementor-5528 .elementor-element.elementor-element-a2a14b0 {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
}

.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class],
.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-nav-menu[class][class] .jkit-menu {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  gap: 4px;
  width: auto;
}

.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li {
  flex: 0 0 auto;
  white-space: nowrap;
}

.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li > a,
.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-nav-menu[class][class] .jkit-menu > li > a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 4px;
  color: #1C1A4A;
  background: transparent;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  padding: 8px 12px;
  border-radius: 0;
  transition: color .18s ease;
  white-space: nowrap;
}

.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li > a:hover,
.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li:hover > a,
.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li > a:focus-visible {
  color: #6B67A8;
  background-color: transparent;
}

.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li.current-menu-item > a {
  color: #6B67A8;
  background-color: transparent;
  font-weight: 600;
}

.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li#menu-item-10864::before {
  content: "";
  display: inline-block;
  width: 1px;
  height: 16px;
  margin: 0 14px 0 4px;
  background-color: #E2E0EC;
  vertical-align: middle;
}

.elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li.b2b-fine::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 16px;
  margin: 0 4px 0 14px;
  background-color: #E2E0EC;
  vertical-align: middle;
}

@media (max-width: 1024px) {
  .elementor-5528 .elementor-element.elementor-element-a2a14b0 {
    flex: 0 0 auto;
    justify-content: flex-end;
  }
  .elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu-wrapper[class][class] {
    background: #fff;
    border-top: 1px solid #E4E2EC;
    box-shadow: 0 16px 24px -20px rgba(28, 26, 74, .4);
    padding: 8px 20px 20px;
    max-height: calc(100dvh - 60px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li > a {
    min-height: 44px;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 10px;
    border-bottom: 0;
  }
  .elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li {
    border-bottom: 1px solid #F2F0F8;
  }
  .elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li#menu-item-10864::before,
  .elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] > li.b2b-fine::after {
    display: none;
  }
  .elementor-5528 .elementor-element.elementor-element-a2a14b0 .jkit-menu[class][class] .sub-menu {
    box-shadow: none;
    border-radius: 0;
    border-top: 0;
    background: none;
    padding: 0 0 8px 12px;
    min-width: 0;
  }
}

@media (max-width: 767px) {
  .elementor-5528 .elementor-element.elementor-element-a2a14b0 {
    z-index: 10;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1699943 */.elementor-5528 .elementor-element.elementor-element-1699943 {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: fit-content !important;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
}

@media (max-width: 1024px) {
  .elementor-5528 .elementor-element.elementor-element-1699943 {
    flex: 0 0 auto;
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .elementor-5528 .elementor-element.elementor-element-1699943 {
    position: relative;
    z-index: 10;
    order: 1;
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-d311a87 */.elementor-5528 .elementor-element.elementor-element-d311a87 {
  flex: 0 0 auto !important;
  width: auto !important;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  white-space: nowrap;

  background-color: #002D4C !important;
  color: #FFFFFF !important;
  border: 1px solid transparent !important;
  border-radius: 100px !important;

  font-family: "Urbanist", system-ui, sans-serif !important;
  font-weight: 800 !important;
  font-size: 16px;
  line-height: 1.1;

  padding: 12px 20px;
  min-height: 40px;
  margin: 0;

  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.25s ease, color 0.25s ease;
}

.elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button-content-wrapper,
.elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button-text,
.elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button-icon {
  color: #FFFFFF !important;
  pointer-events: none;
}

@media (hover: hover) and (pointer: fine) {
  .elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button:hover {
    background-color: #B8A3CF !important;
    color: #FFFFFF !important;
  }
  .elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button:hover .elementor-button-content-wrapper,
  .elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button:hover .elementor-button-text {
    color: #FFFFFF !important;
  }
}

.elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button:active {
  transform: translateY(1px);
}

.elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button:focus,
.elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button:focus-visible {
  background-color: #002D4C !important;
  color: #FFFFFF !important;
  outline: 2px solid #B8A3CF;
  outline-offset: 2px;
}

@media (max-width: 1024px) {
  .elementor-5528 .elementor-element.elementor-element-d311a87 .elementor-button {
    padding: 10px 18px;
    font-size: 15px;
    min-height: 38px;
  }
}

@media (max-width: 767px) {
  .elementor-5528 .elementor-element.elementor-element-d311a87 {
    display: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ebd2b2 */.elementor-5528 .elementor-element.elementor-element-6ebd2b2 {
  flex: 0 0 auto !important;
  width: auto !important;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

@media (max-width: 767px) {
  .elementor-5528 .elementor-element.elementor-element-6ebd2b2 {
    display: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0004391 */.elementor-5528 .elementor-element.elementor-element-0004391 {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 20px;
  background-color: #FFFFFF !important;
  padding: 0 40px; /* spazio tra logo/bottone e i bordi dello schermo */
}

@media (max-width: 1024px) {
  .elementor-5528 .elementor-element.elementor-element-0004391 {
    position: relative;
    padding: 0 24px;
  }
}

@media (max-width: 767px) {
  .elementor-5528 .elementor-element.elementor-element-0004391 {
    position: relative;
    min-height: 60px;
    justify-content: flex-start;
    padding: 0 16px;
  }
}/* End custom CSS */