.elementor-widget-container .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );}.elementor-widget-container .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );}.elementor-261 .elementor-element.elementor-element-13fac711{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:120px;--padding-bottom:120px;--padding-left:0px;--padding-right:0px;}.elementor-261 .elementor-element.elementor-element-1829d574{--display:flex;--gap:48px 48px;--row-gap:48px;--column-gap:48px;}.elementor-261 .elementor-element.elementor-element-6f88606f{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-261 .elementor-element.elementor-element-6f88606f.e-con{--align-self:center;}.elementor-widget-heading .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );}.elementor-widget-heading .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-261 .elementor-element.elementor-element-22da3728{text-align:center;}.elementor-261 .elementor-element.elementor-element-f75c187{--display:flex;}.elementor-widget-text-editor .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );}.elementor-widget-text-editor .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-261 .elementor-element.elementor-element-281032d2{text-align:center;}.elementor-261 .elementor-element.elementor-element-5e8785ec{--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:center;}.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-widget-button .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );}.elementor-widget-button .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );}.elementor-261 .elementor-element.elementor-element-5deebdb3 .elementor-button{background-color:var( --e-global-color-3a36767 );font-family:"avenir-next-lt-pro", Sans-serif;font-size:16px;font-weight:500;line-height:120%;}.elementor-261 .elementor-element.elementor-element-5deebdb3 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-261 .elementor-element.elementor-element-5deebdb3 .elementor-button .elementor-button-content-wrapper{gap:12px;}.elementor-261 .elementor-element.elementor-element-5e67e00 .elementor-button{background-color:var( --e-global-color-secondary );font-family:"avenir-next-lt-pro", Sans-serif;font-size:16px;font-weight:500;line-height:120%;fill:var( --e-global-color-3a36767 );color:var( --e-global-color-3a36767 );}.elementor-261 .elementor-element.elementor-element-5e67e00 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-261 .elementor-element.elementor-element-5e67e00 .elementor-button .elementor-button-content-wrapper{gap:12px;}@media(min-width:768px){.elementor-261 .elementor-element.elementor-element-1829d574{--width:50%;}.elementor-261 .elementor-element.elementor-element-f75c187{--width:55%;}}@media(max-width:1024px) and (min-width:768px){.elementor-261 .elementor-element.elementor-element-1829d574{--width:55%;}}@media(max-width:1024px){.elementor-261 .elementor-element.elementor-element-13fac711{--padding-top:60px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-261 .elementor-element.elementor-element-1829d574{--gap:24px 24px;--row-gap:24px;--column-gap:24px;}}@media(max-width:767px){.elementor-261 .elementor-element.elementor-element-6f88606f{--gap:12px 12px;--row-gap:12px;--column-gap:12px;}.elementor-261 .elementor-element.elementor-element-5e8785ec{--gap:12px 12px;--row-gap:12px;--column-gap:12px;}}/* Start custom CSS for heading, class: .elementor-element-22da3728 *//* Il widget del titolo deve occupare tutta la larghezza */
.hero-title-together {
    width: 100% !important;
    max-width: 100% !important;
    --container-widget-width: 100% !important;
}

/* H1 */
.hero-title-together .elementor-heading-title {
    width: 100%;
    max-width: 100%;
    margin: 0;
    text-align: center;
    overflow: visible;
}

/* Prima riga */
.hero-title-together .hero-line-1 {
    display: block;
    width: 100%;
    white-space: nowrap;
    text-align: center;
}

/* Seconda riga */
.hero-title-together .hero-line-2 {
    display: flex;
    justify-content: center;
    align-items: baseline;
    width: 100%;
    gap: 0.16em;
    white-space: nowrap;
}

/* Mantiene unite le parole */
.hero-title-together .hero-line-2 > span {
    display: inline-block;
    white-space: nowrap;
}

/* Tablet */
@media (max-width: 1024px) {
    .hero-title-together .elementor-heading-title {
        font-size: clamp(40px, 6vw, 62px) !important;
        line-height: 1.05 !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .hero-title-together .elementor-heading-title {
        font-size: clamp(32px, 9vw, 40px) !important;
        line-height: 1.05 !important;
    }

    .hero-title-together .hero-line-2 {
        gap: 0.13em;
    }
}

/* Smartphone stretti */
@media (max-width: 390px) {
    .hero-title-together .elementor-heading-title {
        font-size: clamp(29px, 8.5vw, 34px) !important;
    }
}

.hero-title-animated .hero-line {
    white-space: nowrap;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5deebdb3 */.elementor-element-660e88e .elementor-button-icon svg {
  transition: transform 0.3s ease;
  transform-origin: center;
}

.elementor-element-660e88e .elementor-button:hover .elementor-button-icon svg {
  transform: rotate(45deg);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5e67e00 */.elementor-element-660e88e .elementor-button-icon svg {
  transition: transform 0.3s ease;
  transform-origin: center;
}

.elementor-element-660e88e .elementor-button:hover .elementor-button-icon svg {
  transform: rotate(45deg);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1829d574 */.cf-dot-content {
    width: min(100% - 40px, 1280px);
    max-width: 1280px;
    margin-inline: auto;
    position: relative;
    z-index: 2;
}

@media (max-width: 767px) {
    .cf-dot-content {
        width: calc(100% - 32px);
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-13fac711 */.cf-dot-field {
    --cf-dot-color: #e6007e;
    --cf-dot-gap: 14;
    --cf-dot-opacity: 1;
--cf-dot-radius: 1.8;

    /* Area radiale statica attorno al contenuto */
    --cf-fade-center-x: 0.5;
    --cf-fade-center-y: 0.48;
    --cf-fade-radius-x: 0.60;
--cf-fade-radius-y: 0.80;
    --cf-fade-inner: 0.10;
    --cf-fade-outer: 1.05;

    /* Interazione puntatore */
    --cf-cursor-radius: 300;
    --cf-cursor-push: 30;
    --cf-touch-strength: 0.24;

    position: relative;
    overflow: hidden;
    isolation: isolate;
    background-color: #f6f5f1;
    
      /* Sezione a tutta larghezza dello schermo */
    width: 100vw !important;
    max-width: 100vw !important;

    /* Esce dall'eventuale contenitore boxed di Elementor */
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}

html,
body {
    overflow-x: clip;
}

/* Canvas contenente il pattern */
.cf-dot-field .cf-dots-canvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none;
}

/* Porta testi e pulsanti sopra il canvas */
.cf-dot-field > *:not(.cf-dots-canvas) {
    position: relative;
    z-index: 2;
}

@media (max-width: 1024px) {
    .cf-dot-field {
        --cf-dot-gap: 13;
        --cf-dot-radius: 1.55;
        --cf-dot-opacity: 0.75;

        --cf-fade-radius-x: 0.44;
        --cf-fade-radius-y: 0.47;

        --cf-cursor-radius: 115;
        --cf-cursor-push: 10;
    }
}

@media (max-width: 767px) {
    .cf-dot-field {
        --cf-dot-gap: 14;
        --cf-dot-radius: 1.15;
        --cf-dot-opacity: 0.52;

        --cf-fade-center-x: 0.5;
        --cf-fade-center-y: 0.48;

        /* Area chiara più ampia dietro ai testi */
        --cf-fade-radius-x: 0.62;
        --cf-fade-radius-y: 0.50;
        --cf-fade-inner: 0.20;
        --cf-fade-outer: 1.12;

        /* Interazione touch molto più delicata */
        --cf-cursor-radius: 80;
        --cf-cursor-push: 3;
        --cf-touch-strength: 0.24;
    }
}/* End custom CSS */