.elementor-kit-5{--e-global-color-primary:#092860;--e-global-color-secondary:#357A8A;--e-global-color-text:#7A7A7A;--e-global-color-accent:#B1005E;--e-global-color-1abf302:#FFFFFF;--e-global-color-219a6f6:#FAF02D;--e-global-color-e74f3a9:#000000;--e-global-typography-primary-font-family:"League Spartan";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Red Hat Display";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Red Hat Display";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Red Hat Display";--e-global-typography-accent-font-weight:500;background-color:#FFFFFF;font-family:"Red Hat Display", Sans-serif;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{font-family:"Red Hat Display", Sans-serif;}.elementor-kit-5 h1{font-family:"League Spartan", Sans-serif;font-weight:800;}.elementor-kit-5 h2{font-family:"League Spartan", Sans-serif;font-weight:700;}.elementor-kit-5 h3{font-family:"League Spartan", Sans-serif;font-weight:600;}.elementor-kit-5 h4{font-family:"League Spartan", Sans-serif;font-weight:500;}.elementor-kit-5 h5{font-family:"League Spartan", Sans-serif;font-weight:400;}.elementor-kit-5 h6{font-family:"League Spartan", Sans-serif;font-weight:400;}.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-lightbox{--lightbox-navigation-icons-size:1px;}@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 *//* FONT SOLO PER IL MENU PERSONALIZZATO */
.custom-menu .menu a,
.mobile-bar-internal .custom-menu .menu a {
    font-family: "Source Code Pro", sans-serif !important;
}



/* LOGO FISSO SU TUTTE LE PAGINE */
.logo-fixed {
    position: fixed;
    top: 30px;
    left: 30px;
    z-index: 1001;
}


/* HOMEPAGE MENU */
.btn-nav {
    position: fixed;
    bottom: 50px;
    left: 30px;
    cursor: pointer;
    z-index: 1001;
}
.btn-nav svg {
  display: block;
  height: 6px; /* 👈 forziamo l'altezza per correggere il problema */
  width: 70px; /* 👈 se vuoi più lungo, aumenta qui */
  margin: 6px 0;
}
/* Animazione in X */
.btn-nav.open .line-1 {
    transform: translateY(6px) rotate(45deg);
}
.btn-nav.open .line-2 {
    opacity: 0;
}
.btn-nav.open .line-3 {
    transform: translateY(-6px) rotate(-45deg);
}

.custom-menu {
    position: fixed;
    bottom: 110px;
    left: 30px;
    opacity: 0;
    pointer-events: none;
    transform: translateY(10px);
    transition: all 0.3s ease;
    z-index: 1000;
}
.custom-menu.open {
    opacity: 1;
    pointer-events: all;
    transform: translateY(0);
}
.custom-menu .menu {
    list-style: none;
    padding: 0;
    margin: 0;
}
.custom-menu .menu li {
    margin: 5px 0;
}
.custom-menu .menu a {
    text-decoration: none;
    font-size: 1rem;
    color: #000;
    transition: opacity 0.3s;
    display: inline-block;
}
.custom-menu .menu a:hover {
    opacity: 0.5;
}


/* PAGINE INTERNE - MOBILE BAR IN BASSO A SINISTRA */
.mobile-bar-internal {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100vw;
    height: 50px;
    background-color: white;
    transition: height 0.4s ease;
    z-index: 1000;
}
.mobile-bar-internal.open {
    height: 300px;
}
.mobile-bar-internal .btn-nav {
    position: absolute;
    bottom: 10px;
    left: 20px;
    cursor: pointer;
    z-index: 1001;
}
.mobile-bar-internal .btn-nav svg {
    display: block;
    margin: 5px 0;
    stroke: #000;
    stroke-width: 2;
    transition: 0.3s;
}
.mobile-bar-internal.open .btn-nav svg:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}
.mobile-bar-internal.open .btn-nav svg:nth-child(2) {
    opacity: 0;
}
.mobile-bar-internal.open .btn-nav svg:nth-child(3) {
    transform: rotate(-45deg) translate(5px, -5px);
}
.mobile-bar-internal .custom-menu {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s;
    position: absolute;
    bottom: 60px;
    left: 20px;
}
.mobile-bar-internal.open .custom-menu {
    opacity: 1;
    pointer-events: all;
}
.mobile-bar-internal .custom-menu .menu {
    list-style: none;
    padding: 0;
    margin: 0;
}
.mobile-bar-internal .custom-menu .menu li {
    margin: 10px 0;
}
.mobile-bar-internal .custom-menu .menu a {
    text-decoration: none;
    font-size: 1rem;
    color: #000;
    transition: opacity 0.3s;
}
.mobile-bar-internal .custom-menu .menu a:hover {
    opacity: 0.5;
}


/* SIDEBAR FISSA A SINISTRA (SOLO DESKTOP PAGINE INTERNE) */
@media (min-width: 769px) {
    .fixed-sidebar {
        position: fixed;
        top: 0;
        left: 0;
        width: 150px;
        height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding: 30px 20px;
        box-sizing: border-box;
        z-index: 1000;
        background-color: white;
    }

    .page-content {
        margin-left: 220px;
        padding: 40px;
    }
}


/* MOBILE: DISABILITA LA SIDEBAR FISSA */
@media (max-width: 768px) {
    .fixed-sidebar {
        position: relative;
        width: 100%;
        height: auto;
    }

    .page-content {
        margin-left: 0;
        padding: 20px;
    }
}/* End custom CSS */