.elementor-113661 .elementor-element.elementor-element-544728e:not(.elementor-motion-effects-element-type-background), .elementor-113661 .elementor-element.elementor-element-544728e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F6F6F6;}.elementor-113661 .elementor-element.elementor-element-544728e > .elementor-container{min-height:89vh;}.elementor-113661 .elementor-element.elementor-element-544728e{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:32px 16px 32px 16px;}.elementor-113661 .elementor-element.elementor-element-544728e > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-113661 .elementor-element.elementor-element-fbc9889 > .elementor-widget-container{padding:12px 12px 12px 12px;}.elementor-113661 .elementor-element.elementor-element-fbc9889{text-align:center;}.elementor-113661 .elementor-element.elementor-element-fbc9889 img{width:54%;max-width:368px;border-style:solid;border-width:10px 10px 10px 10px;border-color:#FFFFFF;border-radius:15px 15px 15px 15px;box-shadow:0px 0px 61px 0px rgba(255, 33.979789402173935, 60.7814929291523, 0.05);}.elementor-113661 .elementor-element.elementor-element-236aeff{text-align:center;font-family:"Montserrat", Sans-serif;font-size:27px;font-weight:700;}.elementor-113661 .elementor-element.elementor-element-26df661 > .elementor-container{max-width:631px;}.elementor-113661 .elementor-element.elementor-element-5369805{text-align:left;}.elementor-113661 .elementor-element.elementor-element-7e1728e > .elementor-container{max-width:660px;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-group{padding-right:calc( 12px/2 );padding-left:calc( 12px/2 );margin-bottom:18px;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-form-fields-wrapper{margin-left:calc( -12px/2 );margin-right:calc( -12px/2 );margin-bottom:-18px;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-group > label, .elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-subgroup label{color:#3F3F3F;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-group > label{font-family:"IBM Plex Sans", Sans-serif;font-size:16px;font-weight:600;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-type-html{padding-bottom:0px;font-family:"IBM Plex Sans", Sans-serif;font-size:16px;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-group .elementor-field{color:#000000;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-group .elementor-field, .elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-subgroup label{font-family:"IBM Plex Sans", Sans-serif;font-size:16px;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#FFFFFF;border-color:#D7D7D7;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-group .elementor-select-wrapper select{background-color:#FFFFFF;border-color:#D7D7D7;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-field-group .elementor-select-wrapper::before{color:#D7D7D7;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-button{font-family:"IBM Plex Sans", Sans-serif;font-size:16px;font-weight:600;border-radius:12px 12px 12px 12px;padding:16px 16px 16px 16px;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .e-form__buttons__wrapper__button-next{background-color:#000000;color:#ffffff;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-button[type="submit"]{background-color:#000000;color:#ffffff;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-113661 .elementor-element.elementor-element-e4805d4 .elementor-message{font-family:"IBM Plex Sans", Sans-serif;font-size:16px;}.elementor-113661 .elementor-element.elementor-element-e4805d4{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}@media(max-width:767px){.elementor-113661 .elementor-element.elementor-element-544728e{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-113661 .elementor-element.elementor-element-d03c515 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-113661 .elementor-element.elementor-element-fbc9889 img{width:100%;max-width:1000px;border-radius:0px 0px 0px 0px;}.elementor-113661 .elementor-element.elementor-element-236aeff{text-align:center;font-size:19px;}.elementor-113661 .elementor-element.elementor-element-26df661{padding:0px 24px 0px 24px;}.elementor-113661 .elementor-element.elementor-element-5dcd26b > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-113661 .elementor-element.elementor-element-5369805{text-align:left;}.elementor-113661 .elementor-element.elementor-element-7e1728e{padding:24px 24px 24px 24px;}.elementor-113661 .elementor-element.elementor-element-91276b7 > .elementor-element-populated{padding:0px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-cdfacb6 */.project-form .elementor-field-type-text  label.active, .project-form .elementor-field-type-email  label.active, .project-form .elementor-field-type-tel  label.active  {
    top: 4px;
    font-size: 13px!important;
    opacity: .7;
}

.project-form .elementor-field-type-text label, .project-form .elementor-field-type-email label, .project-form .elementor-field-type-tel label {
    pointer-events: none!important;
}

.project-form .elementor-field-type-text  label, .project-form .elementor-field-type-email  label, .project-form .elementor-field-type-tel  label {
    position: absolute;
    top: 20px;
    left: 18px;
    transition: all .3s ease;
}
.project-form .elementor-field-type-text, .project-form .elementor-field-type-email, .project-form .elementor-field-type-tel {
    position: relative;
}

.project-form .elementor-field-type-text input, .project-form .elementor-field-type-email input, .project-form .elementor-field-type-tel input  {
    height: 64px;
    padding: 40px 13px 21px 13px!important;
}


/*radio*/
.project-form .elementor-field-type-radio .elementor-field-subgroup {
    display: flex!important;
    flex-direction: row;
    flex-wrap: wrap!important;
    gap: 16px;
    margin: 12px 0;
    
}


.project-form .elementor-field-type-radio .elementor-field-subgroup .elementor-field-option {
    flex: 1!important;
        width: 50%!important;
}
@media screen and (max-width: 768px) {
    .project-form .elementor-field-type-radio .elementor-field-subgroup {
    display: flex!important;
    flex-direction: column!important;
    
}

  .project-form .elementor-field-type-radio .elementor-field-subgroup label {
    display: flex;
    align-content: center;
    
}
}
.project-form .elementor-field-type-radio .elementor-field-option label {
display: block!important;
padding: 12px;
border: 1px solid #ccc;
border-radius: 10px;
margin: 0!important;
min-height: 72px;
padding: 12px;
line-height: 1.4;
background: white;

}

.project-form .elementor-field-type-radio .elementor-field-option input {
    float: left;
    display: none!important;
}

.project-form .elementor-field-type-radio .elementor-field-option input:checked + label {
box-shadow: 0px 0px 0px 2px #FFF, 0px 0px 0px 5px black;
font-weight: 600;
padding: 10px;
background-color: #f9f9f9;
}

.project-form button {
    display: block; width: 100%;
}

.elementor-field-option * {
    line-height: 1.2!important;
}

.elementor-field-option a {
    color: black;
    font-size: 15px;
}




/*checkbox*/
.project-form .elementor-field-type-checkbox .elementor-field-subgroup {
    display: flex!important;
    flex-direction: column;
    flex-wrap: wrap!important;
    gap: 16px;
    margin: 12px 0;
    
}


.project-form .elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option {
    flex: 1!important;
        width: 100%!important;
}

.project-form .elementor-field-type-checkbox .elementor-field-option label {
display: block!important;
padding: 12px;
padding-top: 16px!important;
border: 1px solid #ccc;
border-radius: 10px;
margin: 0!important;
min-height: 72px;
padding: 12px;
line-height: 1.4;
background: white;

}

.project-form .elementor-field-type-checkbox .elementor-field-option input {
    float: left;
}

.project-form .elementor-field-type-checkbox .elementor-field-option input:checked + label {
box-shadow: 0px 0px 0px 2px #FFF, 0px 0px 0px 5px black;
font-weight: 600;

background-color: #f9f9f9;
}

.project-form button {
    display: block; width: 100%;
}

.elementor-field-option * {
    line-height: 1.2!important;
}

.elementor-field-option a {
    color: black;
    font-size: 15px;
}


/* Checkbox personalizzato */
.project-form .elementor-field-type-checkbox .elementor-field-option input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid black;
  border-radius: 4px;
  background-color: white;
  position: relative;
  cursor: pointer;
  margin: 0;
  flex-shrink: 0;
}

/* Checkbox selezionato: tutto nero */
.project-form .elementor-field-type-checkbox .elementor-field-option input[type="checkbox"]:checked {
  background-color: black;
  border-color: black;
}

/* Segno ✓ bianco centrato */
.project-form .elementor-field-type-checkbox .elementor-field-option input[type="checkbox"]:checked::after {
  content: "✓";
  font-family: 'Inter'!important;
  color: white;
  font-weight: 800;
  font-size: 14px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none; /* per evitare interferenze */
}


.project-form .elementor-field-type-checkbox .elementor-field-option input {
 position: relative;
  top: 16px;
  left: 16px;
}

  .project-form .elementor-field-type-checkbox .elementor-field-subgroup label {
padding-left: 48px;
    
}




/*checkbox custom*/
.elementor-field-type-acceptance .elementor-field-subgroup {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Nasconde il checkbox di default e lo stilizza */
 .elementor-acceptance-field {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    display: inline-block !important;
    position: relative !important;
    width: 16px !important;
    height: 16px !important;
    border: 2px solid #333 !important; 
    background-color: #fff !important; 
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    border-radius: 4px!important;
}

/* Stile del checkbox quando è attivo (selezionato) */
 .elementor-acceptance-field:checked {
    background-color: #000 !important; 
    border-color: #000 !important; 
}

/* Crea il segno di spunta bianco */
 .elementor-acceptance-field:checked::before {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 6px !important; /* Larghezza del segno di spunta */
    height: 10px !important; /* Altezza del segno di spunta */
    border: solid #fff !important; /* Colore del segno di spunta bianco */
    border-width: 0 2px 2px 0 !important; /* Spessore e forma del segno di spunta */
    transform: translate(-50%, -60%) rotate(45deg) !important; /* Centra e ruota */
}

/* Stile del testo della label */
.elementor-field-option label {
    color: #333; 
    font-size: 16px; 
    cursor: pointer;
}

/* Stile del link all'interno della label */
.elementor-field-option label a {
    color: #888; 
    text-decoration: underline;
}

/* Stile del link all'interno della label al passaggio del mouse */
.elementor-field-option label a:hover {
    color: #0056b3;
}/* End custom CSS */
/* Start custom CSS */.project-typography h1, .project-typography h2, .project-typography h3, .project-typography h4, .project-typography h5, .project-typography h6,  .button a, .button-outline a {
    font-family: "IBM Plex Sans", helvetica, Sans-Serif;
    line-height: 130%;
    font-weight: 600;
}



html {
    font-size: 16px!important;
}

.project-typography h1 {
    font-size: 2.562rem!important;
    
}

.project-typography h2 {
    font-size: 2.250rem;
}

.project-typography h3 {
    font-size: 2rem;
}

.project-typography h4 {
    font-size: 1.812rem;
}

.project-typography h5 {
    font-size: 1.625rem;
}

p {
    font-family: "IBM Plex Sans", helvetica, Sans-Serif;

  text-transform: none!important;
  font-size: 18px;
}

p.small {
  font-weight: normal;
  font-size: 14px;
}

.overline * {
    font-size: 16px!important;
    font-family: "IBM Plex Mono", helvetica, Sans-Serif!important;
    color: #616161!important;
}

@media screen and (max-width: 768px) {
  
.project-typography h1.elementor-heading-title {
    font-size: 1.812rem!important;
}

.project-typography h2 {
    font-size: 1.812rem;
}

.project-typography h3 {
    font-size: 1.625rem;
}

.project-typography h4 {
    font-size: 1.48rem;
}
.project-typography h5 {
    font-size: 1.26rem;
}

.project-typography  h6 {
    font-size: 1.125rem;
}




}


.button a {
    display: inline-flex;
padding: 16px 24px;
color: white;
font-weight: 600!important;
align-items: center;
gap: 8px;
border-radius: 999px;
background: #03060F;
}
.button a:hover {
background: #373737;
color: white;
}


.button a:focus {
color: white!important;
}


.button-outline a:focus {
color: black!important;
}

.button-tonal a {
color: black;
  font-family: "IBM Plex Sans", helvetica, Sans-Serif;
font-weight: 600!important;
align-items: center;
gap: 8px;
border-radius: 999px;
background: #F5F5F5;
}
.button-tonal a:hover {
background: #EEEEEE;
color: black;
}




.button-outline a {
    display: inline-flex;
padding: 16px 24px;
color: black;
font-weight: 600!important;
align-items: center;
gap: 8px;
border-radius: 999px;
border: 1px solid #424242;
background: transparent;

}

.button-outline a:hover {
border-radius: 999px;
border: 1px solid #424242;
background: #EEE;
color: black;
}


.btn-full a {
    width: 100%;
    text-align: center!important;
    display: block;
}


.button-sm a {
    padding: 10px 12px;
}

.button-invert a {
    background-color:white ;
    color: black;
}
.navbar {
    box-shadow: none!important;
    position: static!important;

}

.nav-item a.btn.btn-narrow.btn-third.d-none.d-md-flex {
    font-size: 0!important;
}

.sintesi {
    background-color: #FAFAFA!important;
    border-radius: 16px;
}

.sintesi > .elementor-container .elementor-column .elementor-widget-wrap .elementor-element:not(:last-child) {
  border-bottom: 1px solid #E0E0E0;

}

.sintesi .elementor-container .elementor-column .elementor-widget-wrap .elementor-element {
    margin-bottom: 0!important;
}


.sect {
   
    max-width: 980px;
    margin: 64px auto!important;
} 

.sect-child {
    margin: 0 auto!important;
}


@media screen and (max-width:768px) {
   .sect, .sect-child {
    padding: 0 24px!important;
} 


}


.ma0 p, .ma0 h1, .ma0 h2,.ma0 h3,.ma0 h4,.ma0 h5,.ma0 h6 {
    margin: 0!important;
}

.pa0 p, .pa0 h1, .pa0 h2,.pa0 h3,.pa0 h4,.pa0 h5,.pa0 h6{
    padding: 0!important;
}

.img-feature * {
    font-size: 16px!important;
}

h3 + h4 {
   margin-top: -12px!important;
}





.timelinebtn2 .elementor-button-text strong {
    margin-bottom: 12px;
    display: block;
    text-align: left!important;
}
.timelinebtn2 .elementor-button-text  {

    display: block;
    text-align: left!important;
}


.elementor-section.elementor-section-boxed > .elementor-container {
    margin: auto!important;
}

.timelinebtn .elementor-button-text {
    text-align: left!important;
}

.timeline-icon {
    position: absolute;
    left: -32px;
}

.timeline-col-last .timeline-icon {
     left: -31px;
}

.timeline-col {
    position: relative;
    border-left: 1px solid #c0c0c0; 
    padding-left: 9px;
}

.timeline-col-first {
    padding-top: 0;
}

.timeline-col-last {
    border-left: none; 
}

.timeline-col-before-last {
    border-left: 1px solid #c0c0c0;
    padding-bottom: 32px;
    margin-bottom: -32px;
}

.font16 * {
    font-size: 16px!important;
}

.entry-content {
    overflow-x:hidden!important;
    
}





#glass {
    background: rgba(255, 255, 255, 0.30);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
position: fixed;
top: -128px;
width: 100vw;
z-index: 10;
transition: all .6s ease;
}

#glass.visible {
    top: 0;
}


.rsp-app-action {
    opacity: 0;
    transition: all .6s ease;
}

.rsp-app-action.visible {
    opacity: 1;
}



a.btn.btn-narrow.btn-third.d-none.d-md-flex {
    border: none !important;
	color: white!important;
}
a.btn.btn-narrow.btn-third.d-none.d-md-flex svg {

	color: black!important;
	
}

a.btn.btn-narrow.btn-third.d-none.d-md-flex:hover svg {

	color: white!important;
}


.summary.entry-summary, .onsale, figure.woocommerce-product-gallery__wrapper, ul.tabs.wc-tabs  {
    display: none;
}


@media screen and (max-width: 768px) {
.elementor-popup-modal .dialog-widget-content, .dialog-message.dialog-lightbox-message { width: 100%!important;
    
}
}

#primary {
    overflow-x: hidden!important;
}


.image-full-bk {
    height: 900px;

}

.image-full-bk .elementor-widget-wrap {
        background-size: contain;
    background-position: center ;
    margin: 0!important;
    background-repeat: no-repeat;
    background-color: #F6F5F9;
}
@media screen and (max-width: 768px) {
  .image-full-bk {
    height: 500px;

}  
  .image-full-bk2 {
    height: 700px;

}  
.image-full-bk .elementor-widget-wrap {
        background-size: cover;
    background-position: top left;
    margin: 0!important;
    
}

.image-full-bk2 .elementor-widget-wrap {
        background-size: cover;
    background-position: center!important;
    
}

.image-full-bk3 .elementor-widget-wrap {
        background-size: cover;
    background-position:  30% !important;
    
}
}

.rsp-app-action {
 
    opacity: 1!important;
}/* End custom CSS */