.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* === STATO ATTIVO === */
.nav-active {
    background-color: rgba(56, 189, 248, 0.12) ;
    border-radius: 8px;
    outline: 1px solid #0EA5E9
    }
    .nav-active svg path {
    fill: #1E3A5F ;
    }
    .nav-active .e-paragraph-base {
    color: #1E3A5F;
    }
    
    /* La voce attiva mantiene sempre il suo stile, anche in hover */
    #sidebar-main > [id^="nav-"].nav-active,
    #sidebar-main > [id^="nav-"].nav-active:hover {
    background-color: rgba(56, 189, 248, 0.12);
    }
    #sidebar-main > [id^="nav-"].nav-active svg path,
    #sidebar-main > [id^="nav-"].nav-active:hover svg path {
    fill: #1E3A5F;
    }
    #sidebar-main > [id^="nav-"].nav-active .e-paragraph-base,
    #sidebar-main > [id^="nav-"].nav-active:hover .e-paragraph-base {
    color: #1E3A5F;
    }
    
    /* === STATO HOVER (voci non attive) === */
    #sidebar-main > [id^="nav-"]:not(.nav-active):hover {
    background-color: #F1F5F9;
    border-radius: 8px;
    outline: 1px solid #0EA5E9
    }
    #sidebar-main > [id^="nav-"]:not(.nav-active):hover svg path {
    fill: #1E293B;
    }
    #sidebar-main > [id^="nav-"]:not(.nav-active):hover .e-paragraph-base {
    color: #1E293B;
    }
    
    #sidebar-main > [id^="nav-"] .e-paragraph-base {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    }

/* === DESKTOP === */
@media (min-width: 1025px) {
    #sidebar-main {
        width: 3.75rem;
        overflow: hidden;
        transition: width 0.3s ease;
        z-index: 200;
        max-height: 100vh;
    }
    #sidebar-main:hover {
        width: 13.75rem;
        box-shadow: 5px 0 5px 0 rgba(15, 23, 42, 0.16);
        overflow-y: auto;
    }
}

/* === TABLET === */
@media (max-width: 1024px) {
    #sidebar-main {
        width: 3.75rem;
        overflow: hidden;
        z-index: 200;
        max-height: 100vh;
    }
    #sidebar-main.sidebar-open {
        width: 13.75rem;
        box-shadow: 5px 0 5px 0 rgba(15, 23, 42, 0.16);
        transition: width 0.3s ease;
        overflow-y: auto;
        max-height: 100vh;
    }
}

/* === MOBILE === */
@media (max-width: 767px) {
    #sidebar-main {
        width: 0px;
        min-width: 0 !important;
        overflow: hidden;
        opacity: 0;
        pointer-events: none;
        transition: width 0.3s ease, opacity 0.3s ease;
        z-index: 200;
        max-height: 100vh;
    }
    #sidebar-main.sidebar-open {
        width: 13.75rem;
        box-shadow: 5px 0 5px 0 rgba(15, 23, 42, 0.16);
        opacity: 1;
        pointer-events: auto;
        overflow-y: auto;
        max-height: 100vh;
    }
}

#toggle-nav-sidebar {
    z-index: 1000;
    cursor: pointer;
}/* End custom CSS */