.elementor-kit-1019{--e-global-color-primary:#2391F8;--e-global-color-secondary:#54595F;--e-global-color-text:#202020;--e-global-color-accent:#2391F8;--e-global-color-65857a6:#2391F8;--e-global-color-c67581d:#00519C;--e-global-color-2e1cc7f:#202020;--e-global-color-5887a63:#FFFFFF;color:var( --e-global-color-2e1cc7f );font-family:"Raleway", Sans-serif;font-size:1em;}.elementor-kit-1019 p{margin-bottom:1em;}.elementor-kit-1019 a{color:#2391F8;font-family:"Raleway", Sans-serif;font-size:1em;font-weight:600;}.elementor-kit-1019 a:hover{color:#00519C;font-size:1em;font-weight:600;}.elementor-kit-1019 h1{color:var( --e-global-color-65857a6 );font-family:"Oswald", Sans-serif;font-size:4em;font-weight:500;}.elementor-kit-1019 h2{color:var( --e-global-color-65857a6 );font-family:"Oswald", Sans-serif;font-size:2em;font-weight:500;}.elementor-kit-1019 h3{color:var( --e-global-color-65857a6 );font-family:"Oswald", Sans-serif;font-size:1.5em;font-weight:300;}.elementor-kit-1019 h4{color:var( --e-global-color-65857a6 );font-family:"Oswald", Sans-serif;}.elementor-kit-1019 h5{color:var( --e-global-color-65857a6 );font-family:"Oswald", Sans-serif;}.elementor-kit-1019 h6{color:var( --e-global-color-65857a6 );font-family:"Oswald", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-kit-1019 e-page-transition{background-color:#FFBC7D;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */:root {
--h01-font: 'Nunito';
--b01-font: 'Montserrat';
--b02-font: 'Montserrat';
--cb: #000000; /*Deep Black*/
--cw: #FFFFFF; /*Pure White*/
--cg01: #eeeced; /* Light Gray */
--cg02: #d0cfd1; /* Medium Gray */
--cg03: #b4b3b5;  /* Dark Charcoal */
--cg04: #737273; /* Slate Gray */
--cg05: #3c3b3a; /* Deep Charcoal */
--cc01: #2391F8; /* Verde Avathor */
--cc02: #00519C; /* Verde scuro Avathor */
--cc03: #97ccba; /* Verde chiaro Avathor */
--cc04: #009B77; /* Rosso Intenso */
--cc05: #00664B; /* Rosso Vivo */
--cc06: #922776; /* Viola Scuro */
--cc07: #3A127A; /* Viola Profondo */
--cc08: #00026F; /* Blu Notte */
--cc09: #005ABA;  /* Blu Brillante */
--cc010: #00FFFF; /* Ciano */
--link-color: #009B77;
--hover-color: #00664B;
--visited-color: #00664B;
--gradient01: linear-gradient(90deg, var(--cc01), var(--cc02), var(--cc03), var(--cc04), var(--cc05),var(--cc05), var(--cc04), var(--cc03), var(--cc02), var(--cc01)); /* Gradient full color */
--gradient02: linear-gradient(90deg, var(--cc04), var(--cc05));
--gradient03: linear-gradient(90deg, var(--cc05), var(--cc05));
--gradient04: linear-gradient(90deg, #922776, #FF4270);
--gradient02-infinite: linear-gradient(90deg, #FF4270, #FF9600, #FF4270);
--gradient03-infinite: linear-gradient(90deg, #FF1E1E, #FF4270,#FF1E1E);
--gradient04-infinite: linear-gradient(90deg, #922776, #FF4270, #922776);
}


/* START IMPOSTAZIONI PAG GLOBALI */
html, body {
    max-width: 100%;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
/* width */
 ::-webkit-scrollbar {
		width: 4px;
 }
 /* Track */
 ::-webkit-scrollbar-track {
     box-shadow: inset 0 0 1px grey; 
     border-radius: 0px;
	 	 background: #000000;
	 	 border: #000000;
	 
 }
 /* Handle */
 ::-webkit-scrollbar-thumb {
     background: linear-gradient( var(--cc01),  var(--cc02));;
	 border-radius: 2px;
 }
 /* Handle on hover */
 ::-webkit-scrollbar-thumb:hover {
     background: linear-gradient( var(--cc02),  var(--cc02));;
	 border-radius: 2px; 
 }
 /* END IMPOSTAZIONI PAG GLOBALI */
/* START COLOR */
.bgcb{
    background: var(--cb);
}
.bgcw{
    background: var(--cw);
}
.bgcg01{
    background: var(--cg01);
}
.bgcg02{
    background: var(--cg02);
}
.bgcg03{
    background: var(--cg03);
}
.bgcg04{
    background: var(--cg04);
}
.bgcg05{
    background: var(--cg05);
}
.bgcc01{
    background: var(--cc01);
}
.bgcc02{
    background: var(--cc02);
}
.bgcc03{
    background: var(--cc03);
}
.bgcc04{
    background: var(--cc04);
}
.bgcc05{
    background: var(--cc05);
}
.bgcc06{
    background: var(--cc06);
}
.bgcc07{
    background: var(--cc07);
}
.bgcc08{
    background: var(--cc08);
}
.bgcc09{
    background: var(--cc09);
}
.bgcc10{
    background: var(--cc010);
}
.bg-grad01{
    background: var(--gradient01);
}
.bg-grad02{
    background: var(--gradient02);
}
.bg-grad03{
    background: var(--gradient03);
}
.bg-grad04{
    background: var(--gradient03);
}
/* END COLOR */
/* START TEXT COLOR */
.tcb {
    color: var(--cb);
}
.cw {
    color: var(--cw);
}
.tcg01 {
    color: var(--cg01);
}
.tcg02 {
    color: var(--cg02);
}
.tcg03 {
    color: var(--cg03);
}
.tcg04 {
    color: var(--cg04);
}
.tcg05 {
    color: var(--cg05);
}
.tcc01 {
    color: var(--cc01);
}
.tcc02 {
    color: var(--cc02);
}
.tcc03 {
    color: var(--cc03);
}
.tcc04 {
    color: var(--cc04);
}
.tcc05 {
    color: var(--cc05);
}
.tcc06 {
    color: var(--cc06);
}
.tcc07 {
    color: var(--cc07);
}
.tcc08 {
    color: var(--cc08);
}
.tcc09 {
    color: var(--cc09);
}
.tcc010 {
    color: var(--cc010);
}
.text-grad01 {
    background: var(--gradient01);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.text-grad02 {
    background: var(--gradient02);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.text-grad03 {
    background: var(--gradient03);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.text-grad04 {
    background: var(--gradient04);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
/* END TEXT COLOR */
/* START FONT TITLE */
h1, h2, h3, h4  {
    font-family: var(--h01-font);
}
h5, h6 {
    font-family: var(--b01-font);
}
.elementor-kit-1019 h1 {
    font-size: 4em !important; 
    line-height: 1.2 !important;
    font-weight: 600;
}
.elementor-kit-1019 h2 {
    font-size: 3em!important;
    line-height: 1.2 !important;
    font-weight: 500;
}
.elementor-kit-1019 h3 {
    font-size: 2em !important;
    line-height: 1 !important;
    font-weight: 400;
}
.elementor-kit-1019 h4 {
    font-size: 1.75em !IMPORTANT;
    line-height: 1 !IMPORTANT;
    font-weight: 300;

}
.elementor-kit-1019 h5 {
    font-size: 1.5em !important;
    line-height: 1 !important;
    font-weight: 300;
}
.elementor-kit-1019 h6 {
    font-size: 1.25em !important;
    line-height: 1 !important;
    font-weight: 300;
}
h1 {
    font-size: 2em !important; 
    line-height: 1.3 !important;
    font-weight: 600;
}
@media (min-width: 1024px) and (max-width: 1920px) {
}
/* Stili per Tablet */
@media (min-width: 767px) and (max-width: 1024px) {
.elementor-kit-1019 h1 { font-size: 3em !important;
    line-height: 1.2 !important;
    }
.elementor-kit-1019 h2 { font-size: 2.2em !important;
    line-height: 1.3 !important;
    }
.elementor-kit-1019 h3 { font-size: 1.75em !important;
    line-height: 1 !important;
    }
.elementor-kit-1019 h4 { font-size: 1.5em !important;
    line-height: 1 !important;
    }
.elementor-kit-1019 h5 { font-size: 1.25em !important;
    line-height: 1 !IMPORTANT;

    }
.elementor-kit-1019 h6 { font-size: 1.1em !important;
    line-height: 1;
    }
}
/* Stili per Mobile */
@media (max-width: 767px) {
.elementor-kit-1019 h1 { font-size: 2.5em !important;
         line-height: 1.2 !important;
    }
.elementor-kit-1019 h2 { font-size: 2em !important;
         line-height: 1 !important;
    }
.elementor-kit-1019 h3 { font-size: 1.5em !important;
         line-height: 1 !important;
    }
.elementor-kit-1019 h4 { font-size: 1.25em !important;
         line-height: 1 !important;
    }
.elementor-kit-1019 h5 { font-size: 1.1em !important;
         line-height: 1 !important;
    }
.elementor-kit-1019 h6 { font-size: 1em !important;
         line-height: 1 !important;
    }
}
/* END FONT TITLE */
/* START FONT BODY */
p {
    font-family: var(--b01-font);
    font-size: 1em !IMPORTANT;
    line-height: 1.3em !IMPORTANT;
}
body {
        font-family: var(--b01-font);
        font-size: 1.1em;
        line-height: 1.5em;
        font-weight: 300;
        color: #FFF;
}
.body-bold {
        font-family: var(--b01-font);
        font-weight: 400;
}
.body-light {
        font-weight: 200;
}
.body-plus {
    font-family: var(--b01-font);
    font-size: 1.4em !IMPORTANT;
    line-height: 1.5em !IMPORTANT;
    font-weight: 300;
}
.body-small01 {
    font-family: var(--b01-font);
    font-size: 0.9em !IMPORTANT;
    line-height: 1em !IMPORTANT;
    font-weight: 200;
}
.body-small02 {
    font-family: var(--b01-font);
    font-size: 0.8em !IMPORTANT;
    line-height: 1em !IMPORTANT;
    font-weight: 200;
}
.body-small02-300 {
    font-family: var(--b01-font);
    font-size: 0.8em !IMPORTANT;
    line-height: 1em !IMPORTANT;
    font-weight: 300;
}
.body-small03 {
    font-family: var(--b01-font);
    font-size: 0.7em !IMPORTANT;
    line-height: 1em !IMPORTANT;
    font-weight: 200;
}
/* END FONT BODY */
/*START FONT TABLET*/
@media (min-width: 767px) and (max-width: 1024px) {
.body-plus {
    font-family: var(--b01-font);
    font-size: 1.2em !IMPORTANT;
    line-height: 1.4em !IMPORTANT;
    font-weight: 300;
}
}
/*END FONT TABLET*/
/*START FONT MOBILE*/
@media (max-width: 767px) {
.body-plus {
    font-family: var(--b01-font);
    font-size: 1.1em !IMPORTANT;
    line-height: 1.3em !IMPORTANT;
    font-weight: 300;
}
}
/*END FONT MOBILE*/
/*START LINK*/
a {
    color: var(--link-color);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease-in-out;
    position: relative;
}

/* Effetto sottolineatura animata */
a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 2px;
    background-color: var(--link-color);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 0.3s ease-in-out;
}
/*
a:hover, a:focus {
    color: var(--hover-color);
}

a:hover::after, a:focus::after {
    transform: scaleX(1);
    transform-origin: left;
}

/* Stile per link visitati */
a:visited {
    color: var(--visited-color);
}

/* Stile per link attivo */
a:active {
    color: var(--hover-color);
    font-weight: bold;
} 
/*END LINK*/
/*START SECTION & BOX*/
.section-menu {
        padding-right: 60px;
        padding-left: 60px;
        padding-top: 20px;
        padding-right: 20px;
    }
.start-space {
        padding-top: 50px;
    }
.section-title {
        padding-left: 0px;
        padding-right: 0px;
        padding-top: 200px;
        padding-bottom: 100px;
    }
.section {
        padding-left: 0px;
        padding-right: 0px;
        padding-top: 150px;
        padding-bottom: 150px;
    }
.section-small {
        padding: 20px;
    }
.section-full {
        padding-left: 15%;
        padding-right: 15%;
        padding-top: 150px;
        padding-bottom: 150px;
    }
.section-null {
        padding: 0px;
        margin: 0px;
    }
.box {
        padding: 0px;
}
.box-null{
        padding: 0px;
        margin: 0px;
}
.box-pad{
        padding: 50px;
        margin: 0px;
}
.box-pad2{
        padding-top: 50px;
        padding-bottom: 50px;
        margin: 0px;
}
.colum{
        column-gap: 50px;
}
.shadow-box {
        box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
}
.hover-box {
        box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
}
.hover-box:hover {
        box-shadow: 0px 1px 2px rgba(0, 0,0, 0.25);
}    
.box-line{
    border-top: 4px solid var(--cw);
}
.box-line:hover{
    border-top: 4px solid var(--cc02);
}
@media (min-width: 1024px) and (max-width: 1920px) {
.section-menu {
        padding-right: 40px;
        padding-left: 40px;
        padding-top: 20px;
        padding-right: 20px;
    }
.section-title {
        padding-left: 50px;
        padding-right: 50px;
        padding-top: 100px;
        padding-bottom: 50px;
    }
.section {
        padding-left: 50px;
        padding-right: 50px;
        padding-top: 100px;
        padding-bottom: 100px;
    }
.section-full {
        padding-left: 5%;
        padding-right: 5%;
        padding-top: 100px;
        padding-bottom: 100px;
    }
}
@media (min-width: 767px) and (max-width: 1024px) {
.section-menu {
        padding: 40px;
    }
.section-title {
        padding-left: 40px;
        padding-right: 40px;
        padding-top: 150px;
        padding-bottom: 50px;
        
    }
.section {
        padding-left: 40px;
        padding-right: 40px;
        padding-top: 75px;
        padding-bottom: 75px;
    }
.section-full {
        padding-left: 40px;
        padding-right: 40px;
        padding-top: 75px;
        padding-bottom: 75px;
    }
.colum{
        column-gap: 30px;
}
.section, .section-title, .section-full, .box {
        flex: 1 1 calc(50% - 20px); /* Cambia da 4 colonne a 2 colonne */
    }
.section-small {
        padding: 40px;
    }
}
@media (max-width: 767px) {
.section-menu {
        padding: 20px;
        flex-wrap: 0px;
    }
.section-title {
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 150px;
        padding-bottom: 50px;
    }
.section {
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 50px;
        padding-bottom: 50px;
    }
.section-full {
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 50px;
        padding-bottom: 50px;
    }
.box{
        padding-top: 10px;
        padding-bottom: 10px;
        column-gap: 0px;
        
}
.box-pad{
        padding: 20px;
        margin: 0px;
}
.box-pad2{
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 50px;
        padding-bottom: 50px;
        margin: 0px;
}
}
/*END SECTION & BOX*/
/* INIZIO LINEE */
.line{
    background: var(--cc01);
    border-radius: 3px;
    height: 4px;
}
/*END LINEE*/
/* INIZIO BOTTONI */
.custom-button {
        background: var(--cc01);
        border: 1px solid var(--cc01);
        border-radius: 3px;
        padding: 1px 15px 1px 15px;
        box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.20);
        color: white !important;
        text-align: center;
        text-decoration: none;
        font-family: var(--b02-font);
        font-weight: 500;
        transition: all 0.4s ease;
}
.custom-button:hover {
        background: var(--gradient03);
        color: white;
        transform: scale(0.98);
        box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.20); 
}
.custom-button-transparent {
        background: #FFFFFF00;
        border: 1px solid var(--cc04);
        border-radius: 3px;
        padding: 1px 15px 1px 15px;
        box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.20);
        color: white;
        text-align: center;
        text-decoration: none;
        font-family: var(--b02-font);
        font-weight: 500;
        transition: all 0.4s ease;
}
.custom-button-transparent:hover {
        background: var(--cb);
        border: 1px solid var(--cc04);
        color: black;
        transform: scale(0.98);
        box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.20);
}
.custom-button-white {
        background: #FFFFFF;
        border: 1px solid var(--cc04);
        border-radius: 3px;
        padding: 1px 15px 1px 15px;
        box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.20);
        color: black;
        text-align: center;
        text-decoration: none;
        font-family: var(--b02-font);
        font-weight: 500;
        transition: all 0.4s ease;
}
.custom-button-white:hover {
        background: var(--cc01);
        border: 1px solid var(--cc04);
        color: black;
        transform: scale(0.98);
        box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.20);
}
/* FINE BOTTONI *//* End custom CSS */