

/* ---------------------------------------------------
    SFONDI
----------------------------------------------------- */

.bg-bluscuro {
    /* background-color:#003183; */
    background-color:#0059b3 !important;
    color: #fff !important;
}

.bg-blu {
    /* background-color:  #0059b3; */
    background-color: #0073e6 !important;
    color: #fff !important;
}

/* ---------------------------------------------------
    FINE SFONDI
-------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    BODY
----------------------------------------------------- */
@media (min-width: 360px){

    html,
    body {
        height: 100%;
        font-size: 8px;
        font-family: Titillium Web,HelveticaNeue-Light,Helvetica Neue Light,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif !important;
        color: #19191a;
        transition: all 0.1s ease;
    }
    
    .wrapper {
        margin-top: 150px;
        display: flex;
        width: 100%;
        align-items: stretch;
        perspective: 1500px;
        transition: all 0.1s ease;
    }

    .wrapper.push{
        padding-top: 40px;
        transition: all 0.1s ease;
    }

    .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, .col-xl-auto {
        position: relative;
        width: 100%;
        padding-right: 10px;
        padding-left: 10px;
        transition: all 0.1s ease;
    }

    p {
        margin-top: 0;
        margin-bottom: 0rem;
    }

    .grassetto {
        font-weight: bold;
    }

    .single-content {
        padding: 20px 20px;
        width: 100%;
        height: 100%    
    }

    .single-title {
        width: 100%; 
        padding: 20px 10px;
        font-size: 1.4rem;
        font-weight: 800;

    }
    .single-title-xl {
        width: 100%; 
        padding: 20px 10px;
        font-size: 2.0rem;
        font-weight: 800;

    }

    .single-title-justify {
        width: 100%; 
        padding: 10px 10px;
        font-size: 1.4rem;
        font-weight: 800;
        text-align: justify;
    }

    .single-subtitle{
        width: 100%; 
        padding: 10px 10px;
        font-size: 1.0rem;
    }

    .single-text{
        width: 100%; 
        padding: 10px 10px;
        font-size: 1.2rem;
        text-align: justify;
    }

    .single-text a , .single-text a:hover{    
        color: #000000;
        text-decoration: underline;
        font-weight: bold;
    }

    .table .thead-blue th{
        color: #fff !important;
        background-color:  #0059b3; 
    }

    td a , td a:hover{    
        color: #000000;
        text-decoration: none;
        font-weight: bold;
    }



    @media (min-width: 560px){

        html,
        body {
            font-size: 12px;
            transition: all 0.1s ease;

        }  

        @media (min-width: 768px){

            html,
            body {
                font-size: 12px;
                transition: all 0.1s ease;
            }   

            @media (min-width: 1200px){

                html,
                body {
                    font-size: 14px;
                    transition: all 0.1s ease;
                }                  

            }

        }

    }

}
/* ---------------------------------------------------
    FINE BODY
-------------------------------------------------------------------------------------------------------- */


/* ---------------------------------------------------
    HEADER
----------------------------------------------------- */
@media (min-width: 360px){

    header { 
        top: 0;
        left: 0;
        width: 100%;
        z-index: 9999;
        transition: all 0.1s ease;
    }

    .ridotto {
        width: 100%; 
        transition: all 0.1s ease;
    }

    header a,
    header a:hover {
        color: #fff;
        text-decoration: none; 
        transition: all 0.1s ease;
    }

    .pre-header {
        width: 100%;
        opacity: 1;
        height: 60px;
        padding: 0px 5px;
        margin: 0px;
        transition: all 0.1s ease;
    }

    .sticky-header {
        position:absolute;
        top:60px;
        width: 100%;
        height: 150px; 
        z-index: 5;
        transition: all 0.1s ease;
    }

    header.ridotto .sticky-header{    
        position:fixed;
        top:0;  
        height: 115px; 
        box-shadow: 0px 0px 13px rgba(0, 0, 0, 0.5);
        transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 2.775);  
    }

    .med-header {
        padding: 0px 10px;
        margin: 0px;
        transition: all 0.1s ease;
    }

    .last-header {
        padding: 5px 20px;
        margin: 0px;
        border-top: 1px solid;
        border-top-color: rgba(245, 245, 245, 0.7);
        transition: all 0.1s ease;
    }

    .preheader-container {
        padding: 0px 10px;
    }

    .pre-header .logo-ministero{
        display: inline-block;
        /* height: 100%; */
        padding: 0px 0px;
        transition: all 0.1s ease;
    }

    .pre-header .logo-ministero .logoimg {                   
        max-height: 50px;
        display:inline-block;
        transition: all 0.1s ease;
    }

    .pre-header .logo-ministero .logoimg img {
        max-height: 60px; 
        padding: 5px 0px; 
        border-style: none;  
        transition: all 0.1s ease;
    }

    .pre-header .logo-ministero .logotxt {  
        display: inline-block;
        margin: 0px 5px;
        text-decoration: none !important;
        transition: all 0.1s ease;
    }

    .pre-header .logo-ministero .logotxt .main-title {
        display: inline-block;    
        /*height: 100%;   */ 
        vertical-align: middle;  
        letter-spacing: 0;
        font-size: 1.2rem;
        font-weight: 600;  
        transition: all 0.1s ease;
    }

    .pre-header .logo-agenas {
        display: inline-block;
        height: 100%;
        padding: 0px 5px;
        transition: all 0.1s ease;
    }

    .pre-header .logo-agenas img {
        height: 55px;
        max-width: 90%;
        padding: 12px 0px;
        border-style: none; 
        transition: all 0.1s ease;
    }

    .med-header .med-header-container {
        padding: 0px 5px;
    }

    .med-header .logo-portale{
        display: inline-block;
        width: 100%;
        max-height:  100px;  
        padding: 5px 10px;  
        transition: all 0.1s ease;
    }

    header.ridotto .med-header .logo-portale{
        padding: 5px 10px;  
        transition: all 0.3s ease;
    }

    .med-header .logo-portale .logoimg {    
        display:inline-block;
        transition: all 0.1s ease;
    }

    .med-header .logo-portale .logoimg img {
        max-height: 80px;
        transition: all 0.1s ease;
    }

    header.ridotto .med-header .logo-portale .logoimg img {
        max-height: 60px;
        padding-left: 4px;
        transition: all 0.3s ease;
    }

    .med-header .logo-portale .logotxt {  
        display: inline-block;
        margin: 0px 5px;
        text-decoration: none !important;
        color: #fff !important;
        transition: all 0.1s ease;
    }

    .med-header .logo-portale .logotxt .main-title {
        display: inline-block;
        /* height: 100%; */
        vertical-align: middle;
        margin-top: 0px;
        letter-spacing: 0;
        font-size: 2.0rem;
        font-weight: 800;  
        transition: all 0.1s ease;
    }

    header.ridotto .logo-portale .logotxt .main-title {
        display: inline-block;
        /* height: 100%; */
        vertical-align: middle;
        margin-top: 0px;
        letter-spacing: 0;
        font-size: 1.8rem;
        font-weight: 800;  
        transition: all 0.3s ease;
    }

    .med-header .sub-title{    
        width: 100%;
        height: 100%;
        font-size: 0.9rem;
        margin-top: -30px;
        padding: 0px 0px 0px 90px;  
        transition: all 0.1s ease;
    }   

    header.ridotto .med-header .sub-title{    
        visibility: hidden;
        opacity: 0;
        transition: all 0.3s ease;
    }   

    .last-header .navbar {      
        min-height: 2.0rem;
        padding: 0.25rem 1.2rem;
        transition: all 0.1s ease;
    }

    .last-header .navbar .navbar-toggler-personal{
        min-height: 40px;
        min-width: 40px;
        color: rgba(255, 255, 255, 1.0);
        border-color: rgba(255, 255, 255, 0.5);
        transition: all 0.1s ease;
    }

    .last-header .navbar .navbar-toggler-icon-personal {
        font-size: 2.0rem;
        font-weight: bold;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.8)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='3' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
        transition: all 0.1s ease;
    }       

    .last-header .navbar-nav li a {
        display: block;
        padding: 1.25rem 0.5rem;
        font-size: 1.35rem;
        font-weight: 700; 
        transition: all 0.1s ease;
    } 

    .dropdown-menu {
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 1000;
        display: none;
        float: left;
        min-width: 10rem;
        padding: 0.5rem 0;
        margin: 0.725rem 0 0;
        font-size: 0.9rem;
        font-weight: 800;   
        color: #212529;
        text-align: left;
        list-style: none;
        background-color: #fff;
        background-clip: padding-box;
        border: 1px solid rgba(0, 0, 0, 0.25);
        border-radius: 0.25rem;
        transition: all 0.1s ease;
    }

    @media (min-width: 560px){ 

        .pre-header .logo-agenas img {
            height: 60px;
            max-width: 90%;
            padding: 8px 0px;
            border-style: none;   
            transition: all 0.1s ease;
        }  

        .pre-header .logo-ministero .logotxt .main-title {
            font-size: 1.2rem;
            font-weight: 600;  
            transition: all 0.1s ease;
        }

        .med-header {
            padding: 0px 10px;
            margin: 0px;
            transition: all 0.1s ease;
        }

        .med-header .logo-portale{ 
            padding: 8px 20px; 
            transition: all 0.1s ease;
        }

        header.ridotto .med-header .logo-portale{ 
            padding: 5px 20px; 
            transition: all 0.3s ease;
        }        


        .med-header .logo-portale .logotxt .main-title {
            font-size: 2.2rem;
            font-weight: 800;
            transition: all 0.1s ease;
        }

        header.ridotto .med-header .logo-portale .logotxt .main-title {
            font-size: 2.0rem;
            font-weight: 800;
            transition: all 0.3s ease;
        }

        .med-header .sub-title{    
            padding: 0px 0px 0px 100px;    
            transition: all 0.1s ease;
        }   

        .last-header .navbar .navbar-toggler-icon-personal {
            font-size: 1.8rem;  
            transition: all 0.1s ease;
        }

        .last-header .navbar-nav li a {
            font-size: 1.0rem;
            transition: all 0.1s ease;
        } 

        @media (min-width: 768px){         


            .pre-header .logo-ministero .logotxt .main-title {
                font-size: 1.25rem;
                font-weight: 800;
                transition: all 0.1s ease;
            }

            .med-header {
                padding: 0px 20px;
                margin: 0px;
                transition: all 0.1s ease;
            }

            .med-header .logo-portale{ 
                padding: 8px 30px;     
                transition: all 0.1s ease;
            }

            header.ridotto .med-header .logo-portale{ 
                padding: 5px 30px; 
                transition: all 0.3s ease;
            }

            .med-header .logo-portale .logotxt .main-title {
                font-size: 2.5rem;
                font-weight: 800;
                transition: all 0.1s ease;
            }

            header.ridotto .med-header .logo-portale .logotxt .main-title {
                font-size: 2.2rem;
                font-weight: 800;
                transition: all 0.3s ease;
            }

            .med-header .sub-title{    
                padding: 0px 0px 0px 110px;  
                transition: all 0.1s ease;
            }   

            .last-header .navbar .navbar-toggler-icon-personal {
                font-size: 1.8rem;   
                transition: all 0.1s ease;
            }

            .last-header .navbar-nav li a {
                font-size: 1.0rem;
                transition: all 0.1s ease;
            } 

            @media (min-width: 992px){


                .med-header {
                    padding: 0px 40px;
                    margin: 0px;
                    transition: all 0.1s ease;
                }

                .last-header {
                    padding: 0px 40px;
                    margin: 0px;
                    transition: all 0.1s ease;
                }

                .pre-header .logo-ministero .logotxt .main-title {
                    font-size: 1.5rem;
                    font-weight: 800;  
                    transition: all 0.1s ease;
                }

                .pre-header .logo-agenas {
                    display: inline-block;
                    height: 100%;
                    padding: 0px 40px;
                    transition: all 0.1s ease;
                }

                .pre-header .logo-agenas img {
                    max-height: 60px; 
                    padding: 5px 0px; 
                    border-style: none; 
                    transition: all 0.1s ease;
                }

                .med-header .logo-portale{               
                    max-height:  100px;  
                    padding: 10px 40px;   
                    transition: all 0.1s ease;
                }

                header.ridotto .med-header .logo-portale{ 
                    padding: 5px 40px; 
                    transition: all 0.3s ease;
                }

                .med-header .logo-portale .logoimg {    
                    display:inline-block;
                    transition: all 0.1s ease;
                }

                .med-header .logo-portale .logoimg img {
                    max-height: 80px;
                    transition: all 0.1s ease;
                }

                .med-header .logo-portale .logotxt {  
                    margin: 0px 5px;
                    transition: all 0.1s ease;
                }

                .med-header .logo-portale .logotxt .main-title {   
                    margin-top: -10px;
                    letter-spacing: 0;
                    font-size: 3.5rem;
                    font-weight: 800;  
                    transition: all 0.1s ease;
                }

                header.ridotto .med-header .logo-portale .logotxt .main-title {
                    font-size: 3.2rem;
                    transition: all 0.3s ease;
                }

                .med-header .sub-title{    
                    width: 100%;
                    height: 100%;
                    font-size: 1.2rem;
                    margin-top: -30px;
                    padding: 0px 0px 0px 122px;  
                    transition: all 0.1s ease;
                }

                .last-header {  
                    padding: 0px 40px;
                    transition: all 0.1s ease;
                }

                .last-header .navbar {      
                    min-height: 2.0rem;
                    padding: 0.25rem 1.2rem;
                    transition: all 0.1s ease;
                }

                .last-header  .navbar-nav li a {
                    display: block;
                    padding: 0.8rem 1.0rem;
                    font-weight: 700;  
                    transition: all 0.1s ease;
                }

                .dropdown-menu {
                    padding: 0.5rem 0;
                    margin: 0.725rem -1.5rem 0;
                    transition: all 0.1s ease;
                }

            }

        }
    }
}
/* ---------------------------------------------------
    FINE HEADER
-------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    FOOTER
----------------------------------------------------- */
@media (min-width: 360px){

    footer {
        /*  background: #00264d; */
        background-color:#0059b3 !important; 
        color: #fff !important;
        padding-top: 10px;
        transition: all 0.1s ease;
    }

    footer .contenitore {
        padding: 10px 40px;
        transition: all 0.1s ease;
    }

    footer section {
        padding: 5px 0px;
        transition: all 0.1s ease;
    }

    footer .logo-portale{
        display: inline-block;
        padding: 5px 0px;
        width: 100%;
        transition: all 0.1s ease;
    }

    footer .logo-portale .logoimg {    
        display:inline-block;
        transition: all 0.1s ease;
    }

    footer .logo-portale .logoimg img {
        max-height: 45px;
        transition: all 0.1s ease;
    }

    footer .logo-portale .logotxt {  
        display: inline-block;
        margin: 0px 5px;
        text-decoration: none !important; 
        transition: all 0.1s ease;
    }

    footer .logo-portale .logotxt .main-title {
        display: inline-block;    
        /*     height: 100%; */
        vertical-align: middle;     
        letter-spacing: 0;
        font-size: 1.8rem;
        font-weight: 800; 
        transition: all 0.1s ease;
    }

    footer .postFooter {   
        padding: 20px 0px 20px 0px;
        transition: all 0.1s ease;
    }

    footer .postFooter a:first-of-type {
        margin-left: 0;
        transition: all 0.1s ease;
    }

    footer .postFooter .pt-footer-title{
        font-size: 1.5rem;
        font-weight: bold; 
        padding-bottom: 0.35rem;    
        border-bottom: 1px solid rgba(255, 255, 255, 0.5);;
        transition: all 0.1s ease;
    } 

    footer .postFooter .footer-subBlock {
        padding: 0.5rem 0rem;
        font-weight: 1.0rem;
        text-align: justify;
        transition: all 0.1s ease;
    }

    footer .postFooter .footer-list {
        list-style-type: none;
        margin-left: 0;
        padding-left:0;
        transition: all 0.1s ease;
    }

    footer .postFooter a, 
    footer .postFooter a:hover {
        display: block;    
        color: #fff;
        font-weight: bold;
        padding-top: 0.25rem; 
        transition: all 0.1s ease;
    }

    @media (min-width: 560px){

        footer .contenitore {
            padding: 10px 80px;
            transition: all 0.1s ease;
        }
        
        

        @media (min-width: 768px){  

            footer .postFooter {   
                padding: 30px 0px 20px 0px;
                transition: all 0.1s ease;
            }

            footer .contenitore {
                padding: 10px 100px;
                transition: all 0.1s ease;
            }

            footer .logo-portale .logoimg img {
                max-height: 55px;
                transition: all 0.1s ease;
            }
    
            footer .logo-portale .logotxt .main-title {
                font-size: 2.0rem;
                transition: all 0.1s ease;
            }

            @media (min-width: 992px){

                footer .contenitore {
                    padding: 10px 120px;
                    transition: all 0.1s ease;
                }

                footer .logo-portale .logoimg img {
                    max-height: 60px;
                    transition: all 0.1s ease;
                }
            
                footer .logo-portale .logotxt .main-title {
                    font-size: 2.2rem;
                    transition: all 0.1s ease;

                }
                footer .postFooter {   
                    padding: 40px 0px 20px 0px;
                    transition: all 0.1s ease;
                }
            }           

        }
    }
}
/* ---------------------------------------------------
    FINE FOOTER
-------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    CARD
-------------------------------------------------------------------------------------------------------- */
@media (min-width: 360px){

    .card {
        /*  min-height: 250px; */
        box-shadow: 0 5px 8px 0 rgba(0, 0, 0, 0.2), 0 9px 26px 0 rgba(0, 0, 0, 0.19); 
        border-right: none;
        transition: all 0.1s ease;
    }

    .card-w-responsive {
        width: 100% !important;
        transition: all 0.1s ease;
    }

    .card-title {
        padding: 0px 10px;
        transition: all 0.1s ease;
    }

    .card-title-icon {
        display: inline-block;
        vertical-align: middle;
        margin: 0px;  
        max-width: 50px;
        max-height: 50px; 
        transition: all 0.1s ease;

    }

    .card-title-sezione {
        display: inline-block; 
        vertical-align: middle;
        padding: 0px 5px;
        font-size: 1.2rem;
        font-weight: 800;
        text-align: justify; 
        transition: all 0.1s ease;
    }

    .card-title-name {    
        font-size: 1.2em;
        text-align: justify;
        transition: all 0.1s ease;
    }

    .card-subtitle {
        padding: 0px 10px;
        font-size: 0.9em;
        text-align: justify;
        transition: all 0.1s ease;
    }

    .card-text {
        padding: 0px 10px;
        font-size: 1.0em;
        text-align: justify;
        transition: all 0.1s ease;
    }

    .card-body .logo {
        display: inline-block;
        width: 100%;

    }

    .card-body .logo  .logoimg {    
        display:inline-block;
    }

    .card-body .logo .logoimg img {
        max-height: 80px;
    }

    .card-body .logo .logotxt {  
        display: inline-block;
        margin: 0px 5px;
        text-decoration: none !important;  
    }

    .card-body .logo .logotxt .main-title {
        display: inline-block;    
        height: 100%;
        vertical-align: middle;     
        letter-spacing: 0;
        font-size: 2.2rem;
        font-weight: 800; 
    }

    .card-body-form {      
        padding: 20px 30px 0px 30px;
        transition: all 0.1s ease;

    }

    .card-body-form-multiple {      
        padding: 30px 30px 0px 30px;
        margin-top: 20px;
        border-radius: 2px;
        border: 1px solid rgba(0, 0, 0, 0.2);
        transition: all 0.1s ease;
    }

    .box-image {
        height: 120px;
        width: 120px;
        padding: 20px 20px;   
    }   

    .icon-header {
        padding: 10px 0px;
    } 

    .icon-title {     
        display: inline-block;
        width: 100%;
        padding: 20px 0px 10px 0px;
        vertical-align: middle;    
        border-bottom: 2px solid  #bbb;
    }

    .icon-title-img {
        display: inline-block;
    }

    .icon-title-text{
        display: inline-block;
        padding-left: 5px;
        letter-spacing: 0;
        font-size: 0.7rem;
        font-weight: 800;
        text-transform: uppercase;
    }

    .icon-container {
        height: 100%;

    }

    .icon {
        position: relative;
        overflow: hidden;
        display: inline-block; 
    }

    .icon span {
        position: absolute; 
    }

    .icon span:after {
        content: '';
        position: absolute; 
    }

    .icon-add, .icon-remove, .icon-todelete {
        border-bottom: none;
        height: 22px;
        width: 22px;
        margin-left: 5px;
        border-radius: 3px;
        border: 2px solid #4D4F53;
        float: left; 
    }

    .icon-add span, .icon-remove span, .icon-todelete span {
        width: 8px;
        height: 2px;
        background-color: #4D4F53;
        top: 8px;
        left: 5px;
    }

    .icon-add span:after, .icon-remove span:after, .icon-todelete span:after {
        width: 2px;
        height: 8px;
        background-color: #4D4F53;
        left: 3px;
        top: -3px; 
    }

    .icon-remove span:after, .icon-todelete span:after {
        content: none; 
    }

    .icon-todelete {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        border-radius: 50%;
        background-color: #CF0000;
        border-color: #CF0000;
        color: #fff; 
    }

    .icon-todelete span {
        background-color: #fff; 
    }

    .icon-todelete span::after {
        background-color: #fff;
        content: ''; 
    }

    @media (min-width: 560px){    

        .card-w-responsive {
            width: 95% !important;
            transition: all 0.1s ease;
        }

        .box-image {
            height: 200px;
            width: 200px;
            padding: 20px 20px;   
        }   


        @media (min-width: 768px){

            .card-w-responsive {
                width: 85% !important;
                transition: all 0.1s ease;
            }            


            @media (min-width: 992px){

                .card-w-responsive {
                    width: 75% !important;
                    transition: all 0.1s ease;
                }     

                .box-image {
                    height: 250px;
                    width: 250px;
                    padding: 20px 20px;   
                }   


            }

        }

    }

}
/* ---------------------------------------------------
    Fine CARD
-------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    ACCORDION STYLE
------------------------------------------------------ */
@media (min-width: 360px){


    .admin-menu ul {
        list-style-type: none;
    }


    .admin-menu .accordion  {
        width: 100%;        
        padding: 0;
        margin: 0;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
    }

    .admin-menu .accordion .link  {
        cursor: pointer;
        display: block;
        width: 100%;
        min-height: 120px;
        padding: 40px 8px 5px 25px;
        font-size: 1.25rem;
        font-weight: bold;
        border-bottom: 1px solid #b1b1b3;
        position: relative;
        -webkit-transition: all 0.4s ease;
        -o-transition: all 0.4s ease;
        transition: all 0.4s ease;
    }

    .admin-menu .accordion .link a{
        padding: 0px 0px !important;
        color: #000000 !important;        
    }

    .admin-menu .accordion .link a .link-nome-regione{
        display: inline;   
    }

    .admin-menu .accordion a .icon-menu-regioni{
        height: 35px;
        width: 35px; 
        padding-right: 8px;
    }

    .admin-menu .accordion a .fake-space{
        height: 35px;
        width: 35px; 
        padding-right: 8px;
    }   

    .admin-menu .accordion li a i {
        position: absolute;
        top: 50px;
        left: 12px;
        font-size: 1.25rem;
        -webkit-transition: all 0.4s ease;
        -o-transition: all 0.4s ease;
        transition: all 0.4s ease;
    }

    .admin-menu .accordion li a i.fa-chevron-down {
        right: 60px;
        left: auto;
    }

    .admin-menu .accordion li.open a i.fa-chevron-down {
        -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
        -o-transform: rotate(180deg);
        transform: rotate(180deg);
    }

    /**
    * Submenu
    **/

    .admin-menu .accordion .submenu {
        display: none;
    }

    .admin-menu .accordion .submenu i {
        position: relative;
        top: 0px;        
    }

    .admin-menu .accordion .submenu small i {
        font-size: 70%;
        top: -1px;
        left: 0;
    }


    .admin-menu.active-menu .accordion {
        display: initial;
        opacity: 1.0;
        list-style-type: none;
        transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275); 
    }

}
/* ---------------------------------------------------
    FINE ACCORDION 
-------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    CONTENT/SIDEBAR STYLE
----------------------------------------------------- */
@media (min-width: 360px){

    /* ---------------------------------------------------
       CONTENT STYLE
   ----------------------------------------------------- */

    #content {    
        padding: 5px 15px;
        min-height: 100vh;
        width: 100%;
        transition: all 0.3s;
    }

    #content .info {
        min-height: 60px;
        padding: 27px 0px;
        align-items: flex-start;
        background-color: #fff !important;
        background-clip: border-box;
        -ms-flex-flow: wrap;
        flex-flow: wrap;
        -ms-flex-pack: start;
    }

    #content .info .navbar-btn {
        box-shadow: none;
        outline: none !important;
        border: none;
    }

    #content .info .titolo{
        padding: 0px 20px;
        letter-spacing: 0;
        font-size: 1.1rem;
        font-weight: 800;
        text-align: center;
        text-transform: uppercase;
    }      

    #sidebarCollapse {
        min-width: 50px;
        min-height: 40px;
        background: #fff;
        cursor: pointer;
    }

    #sidebarCollapse span {
        width: 80%;
        height: 2px;
        margin: 0 auto;
        display: block;
        background: #555;
        transition: all 0.8s cubic-bezier(0.810, -0.330, 0.345, 1.375);
        transition-delay: 0.2s;
    }

    #sidebarCollapse span:first-of-type {
        transform: rotate(45deg) translate(2px, 2px);
    }
    #sidebarCollapse span:nth-of-type(2) {
        opacity: 0;
    }
    #sidebarCollapse span:last-of-type {
        transform: rotate(-45deg) translate(1px, -1px);
    }

    #sidebarCollapse.active span {
        transform: none;
        opacity: 1;
        margin: 5px auto;
    }


    /* ---------------------------------------------------
        SIDEBAR
    ----------------------------------------------------- */

    #sidebar {
        width: 120px;
        margin-left: -120px;
        transform: rotateY(90deg);
        padding: 10px 2px;
        background: #fff;
        transition: all 0.6s cubic-bezier(0.945, 0.020, 0.270, 0.665);
        transform-origin: bottom left;
    }

    #sidebar.active {
        margin-left: -120px;
        transform: rotateY(100deg);
    }


    #sidebar.active {
        margin-left: 0;
        transform: none;
    }

    #sidebar .sidebar-header {
        padding: 10px 20px;
    }

    #sidebar .sidebar-header .main-title{
        padding: 10px 10px;    
        border-bottom: 2px solid #4C4C4C;
    }

    #sidebar .sidebar-header .main-title .main-title-text{
        margin-left: -1.4rem;
        text-align: center;
        letter-spacing: 0;
        font-size: 1.1rem;
        font-weight: 800;
        text-transform: uppercase;
    }

    #sidebarCollapse span:first-of-type,
    #sidebarCollapse span:nth-of-type(2),
    #sidebarCollapse span:last-of-type {
        transform: none;
        opacity: 1;
        margin: 5px auto;
    }
    #sidebarCollapse.active span {
        margin: 0 auto;
    }
    #sidebarCollapse.active span:first-of-type {
        transform: rotate(45deg) translate(2px, 2px);
    }
    #sidebarCollapse.active span:nth-of-type(2) {
        opacity: 0;
    }
    #sidebarCollapse.active span:last-of-type {
        transform: rotate(-45deg) translate(1px, -1px);
    }

    #sidebar .list-group {
        margin: 0px;
        font-size: 1.0rem;
        background: #fff;
        box-shadow: 0 5px 8px 0 rgba(0, 0, 0, 0.2), 0 9px 26px 0 rgba(0, 0, 0, 0.19);
        border-right: none;
        transition: all 0.6s cubic-bezier(0.945, 0.020, 0.270, 0.665);
        transform-origin: bottom left;
    }

    .list-group-item-action {
        width: 100%;
        color: #000;
        text-align: inherit;
    }

    .list-group-item-action:hover, .list-group-item-action:focus {
        z-index: 1;
        color: #000;
        text-decoration: none;
        background-color: #f8f9fa;
    }

    .list-group-item.active {
        z-index: 2;
        color: #fff;
        background-color:#0059b3;
        border-color: #0059b3;
    }

    .list-group-item.disabled, .list-group-item:disabled, .list-group-item.disabled:hover {
        color: #6c757d;
        pointer-events: all !important;
        background-color: #fff;
    }
    
    .list-group-item .btn-delete-section {
        float:right;
        font-size: 0.6rem;
        line-height: 0.8;
        border-color: #032F89;
        font-weight: 400;
        color: #04308A;
        background-color: transparent;

    }
    
    .list-group-item.active .btn-delete-section {
        float: right;
        font-size: 0.6rem;
        line-height: 0.8;
        border-color: #032F89;
        font-weight: 400;
        color: #04308A;
        background-color: #fff;
    }

    @media (min-width: 560px){

        #sidebar {
            min-width: 160px;
            width: 160px;
            margin-left: -160px;
            transform: rotateY(90deg);
            padding: 10px 2px;
            background: #fff;
            transition: all 0.6s cubic-bezier(0.945, 0.020, 0.270, 0.665);
            transform-origin: bottom left;
        }

        #sidebar.active {
            margin-left: -160px;
            transform: rotateY(100deg);
        }


        #sidebar.active {
            margin-left: 0;
            transform: none;
        }

        #sidebar .list-group {
            font-size: 0.725rem;
        }


        @media (min-width: 768px){


            #sidebar {
                min-width: 250px;
                width: 250px;
                margin-left: -250px;
                transform: rotateY(90deg);
                padding: 10px 5px;
                background: #fff;
                transition: all 0.6s cubic-bezier(0.945, 0.020, 0.270, 0.665);
                transform-origin: bottom left;
            }

            #sidebar.active {
                margin-left: -250px;
                transform: rotateY(100deg);
            }


            #sidebar.active {
                margin-left: 0;
                transform: none;
            }

            #sidebar .list-group {
                font-size: 0.825rem;
            }
            
            .list-group-item .btn-delete-section {
                font-size: 0.7rem;
                line-height: 1.0;
            }

            .list-group-item.active .btn-delete-section {
                font-size: 0.7rem;
                line-height: 1.0;
            }


            @media (min-width: 992px){

                #sidebar {
                    min-width: 380px;
                    width: 380px;
                    margin-left: -380px;
                    transform: rotateY(90deg);
                    padding: 10px 10px;
                    background: #fff;
                    transition: all 0.6s cubic-bezier(0.945, 0.020, 0.270, 0.665);
                    transform-origin: bottom left;
                }

                #sidebar.active {
                    margin-left: -380px;
                    transform: rotateY(100deg);
                }


                #sidebar.active {
                    margin-left: 0;
                    transform: none;
                }

                #sidebar .list-group {
                    font-size: 0.825rem;
                }
                
                .list-group-item .btn-delete-section {
                    font-size: 0.8rem;
                    line-height: 1.0;
                }

                .list-group-item.active .btn-delete-section {
                    font-size: 0.8rem;
                    line-height: 1.0;
                }

                @media (min-width: 1200px){

                    #sidebar {
                        min-width: 500px;
                        width: 500px;
                        margin-left: -500px;
                        transform: rotateY(90deg);
                        padding: 10px 15px;
                        background: #fff;
                        transition: all 0.6s cubic-bezier(0.945, 0.020, 0.270, 0.665);
                        transform-origin: bottom left;
                    }

                    #sidebar.active {
                        margin-left: -500px;
                        transform: rotateY(100deg);
                    }


                    #sidebar.active {
                        margin-left: 0;
                        transform: none;
                    }

                    #sidebar .list-group {
                        font-size: 0.925rem;
                    }

                }
            }
        }



    }
}
/* ---------------------------------------------------
    FINE CONTENT/SIDEBAR STYLE
-------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    FORM ElEMENTS STYLE
----------------------------------------------------- */
@media (min-width: 360px){

    .form-group {
        margin-bottom: 0.5rem;
    }

    label {
        display: inline-block;
        padding-top: 0.45rem;
        padding-right: 0.5rem;
        font-weight: 700;
        text-align: justify;
        width: 100%;
    }

    .help-block-error{
        color:#e51717;
        font-weight: 700; 
    }

    .radio label {
        display: inline-block;
        margin-bottom: auto !important;
        margin-top: auto !important;
        padding-right: 0.5rem;
        font-weight: 400;
    }    

    .select2-dropdown {
        z-index: 100;
    }

    select2-search__field::-webkit-input-placeholder,
    .select2-search__field::placeholder {
        color: #6c757d !important;
    }

    .link-wrapper{  
        padding: 20px 20px;
    }

    .link-wrapper a , .link-wrapper a:hover{    
        color: #212529;
        text-decoration: underline;
        font-weight: bold;
    }

    .declaration {
        text-align: justify;
    }

    .radiolistdeclarationwrapper{
        text-align: center !important;
    }

    .btn-wrapper{  
        padding: 20px 0px;
    }

    .btn-sezione {
        display: block;
        width: 80px;
        height: 50px;        
    }    

    .btn-blu {
        background-color:  #0059b3; 
        color: #fff !important;
        border: 2px solid #0049b3;        
    }

    .btn-accedi, .btn-report {
        display: block;
        background-color:  #0059b3; 
        color: #fff !important;
        border: 2px solid #0049b3;
    }

    .btn-close {

    }

    @media (min-width: 560px){

        .btn-sezione {
            width: 100px;
            height: 60px;
        }


        @media (min-width: 766px){

            .btn-sezione {
                width: 140px;
                height: 60px;
            }


            @media (min-width: 992px){             

                .btn-sezione {
                    width: 250px;
                    height: 70px;
                }


            }

        }
    }
}
/* ---------------------------------------------------
    END FORM ElEMENTS STYLE
-------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    Table ElEMENTS STYLE
----------------------------------------------------- */

/* ---------------------------------------------------
    END Table ElEMENTS STYLE
-------------------------------------------------------------------------------------------------------- */

@media (min-width: 360px){ 
    
    .under-table {
        width: 90%;
        margin-left: 5%;
        box-shadow: 0 5px 8px 0 rgba(0, 0, 0, 0.2), 0 9px 26px 0 rgba(0, 0, 0, 0.19);
    }
    
    .under-table .thead-grey th {
        color: #fff !important;
        background-color: #4f4f4f;
    }
    
}

/* ---------------------------------------------------
    TOOLTIP ElEMENTS STYLE
----------------------------------------------------- */
@media (min-width: 360px){ 

    .tooltip-inner {
        background-color:  #0059b3; 
        opacity: 1;
        color: #fff !important;
    }
    .tooltip.bs-tooltip-right .arrow:before {
        border-right-color: #0059b3 !important;
    }
    .tooltip.bs-tooltip-left .arrow:before {
        border-right-color: #0059b3 !important;
    }
    .tooltip.bs-tooltip-bottom .arrow:before {
        border-right-color: #0059b3 !important;
    }
    .tooltip.bs-tooltip-top .arrow:before {
        border-right-color: #0059b3 !important;
    }

}
/* ---------------------------------------------------
    END TOOLTIP ElEMENTS STYLE
------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    SPINNER ElEMENTS STYLE
----------------------------------------------------- */
@media (min-width: 360px) {

    .loader {
        position: relative;
        text-align: center;
        margin: 15px auto 35px auto;
        z-index: 9999;
        display: block;
        width: 80px;
        height: 80px;
        border: 10px solid rgba(0, 0, 0, .3);
        border-radius: 50%;
        border-top-color: #000;
        animation: spin 1s ease-in-out infinite;
        -webkit-animation: spin 1s ease-in-out infinite;
    }

    @keyframes spin {
        to {
            -webkit-transform: rotate(360deg);
        }
    }

    @-webkit-keyframes spin {
        to {
            -webkit-transform: rotate(360deg);
        }
    }

}
/* ---------------------------------------------------
    END SPINNER ElEMENTS STYLE
------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    MODAL ElEMENTS STYLE
----------------------------------------------------- */
@media (min-width: 360px) {
    .modal-content {
        border-radius: 0px;
        box-shadow: 0 0 20px 8px rgba(0, 0, 0, 0.7);
    }

    .modal-backdrop.show {
        opacity: 0.75;
    }

    .loader-txt {
        p {
            font-size: 13px;
            color: #666;
            small {
                font-size: 11.5px;
                color: #999;
            }
        }
    }

    #output {
        padding: 25px 15px;
        background: #222;
        border: 1px solid #222;
        max-width: 350px;
        margin: 35px auto;
        p.subtle {
            color: #555;

        }
        h4 {
            font-weight: 300 !important;
            font-size: 1.1em;
        }
        p {
            font-size: 0.9em;
            b {
                text-transform: uppercase;
                text-decoration: underline;
            }
        }
    }

}
/* ---------------------------------------------------
   FINE MODAL ElEMENTS STYLE
------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    Torna-su ElEMENTS STYLE
----------------------------------------------------- */
@media (min-width: 360px){

    #torna-su {
        position: fixed;
        bottom: 25px;
        right: 25px;
        opacity: 0; 
        visibility: hidden;
        overflow: hidden;
        -webkit-transition: all .2s ease-in-out 0s;
        -moz-transition: all .2s ease-in-out 0s;
        -o-transition: all .2s ease-in-out 0s;
        transition: all .2s ease-in-out 0s; 
    }


    #torna-su.visible {
        visibility: visible;
        opacity: 1;
        /*background-color:  #00264d; */
        background-color:#0059b3 !important; 
        color: #fff !important;
        border: 2px solid #fff;
        -webkit-transition: all .2s ease-in-out 0s;
        -moz-transition: all .2s ease-in-out 0s;
        -o-transition: all .2s ease-in-out 0s;
        transition: all .2s ease-in-out 0s; 
    }


}
/* ---------------------------------------------------
   FINE Torna-su ElEMENTS STYLE
------------------------------------------------------------------------------------------------------- */

/* ---------------------------------------------------
    Toast ElEMENTS STYLE
----------------------------------------------------- */

@media (min-width: 360px){


    .jq-toast-wrap.bottom-right {
        bottom: 20px;
        right: 20px;
    }

    .jq-toast-wrap {
        display: block;
        position: fixed;
        width: 250px;
        pointer-events: none !important;
        letter-spacing: normal;
        z-index: 9000 !important;
    }

    @media (min-width: 766px){

        .jq-toast-wrap {
            width: 300px;
        }

        @media (min-width: 992px){

            .jq-toast-wrap {
                width: 350px;
            }
        }
    }

}

/* ---------------------------------------------------
   FINE Toast ElEMENTS STYLE
------------------------------------------------------------------------------------------------------- */


/* ---------------------------------------------------
    Index ElEMENTS STYLE
----------------------------------------------------- */

@media (min-width: 360px){

    .bg-index {
        background-image: linear-gradient(to left, rgba(171,205,239,0), rgba(171,205,239,1));
        background-size: contain;
        background-size: 100%;
        background-size: 130vw 100vh;
        padding-right: 0;
        padding-left: 0;
        border-radius: 0;
    } 

    .hero-header {
        min-height: 55vh;
        color: #000 !important;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        position: relative;
    }
    
    
    .index-box{
        height: 300px !important;
        border-radius: 0.75rem;
    }  
    
    .index-box-md{
        height: 280px !important;
        border-radius: 0.75rem;
    }    

    .index-box .scroll {
        max-height: 300px;
        overflow-y: auto;
    }
    
    .index-box-md .scroll {
        max-height: 280px;
        overflow-y: auto;
    }

    .index-box .scroll::-webkit-scrollbar, .index-box-md .scroll::-webkit-scrollbar {
        width: 10px;
    }

    .index-box .scroll::-webkit-scrollbar-track, .index-box-md .scroll::-webkit-scrollbar-track {
        -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); 
        border-radius: 10px;
    }

    .index-box .scroll::-webkit-scrollbar-thumb, .index-box-md .scroll::-webkit-scrollbar-thumb {
        border-radius: 10px;
        -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5); 
    }

    .index-box .index-box-img-top {
        height: 170px;
        border-radius: 0.75rem;
        padding: 0.25rem !important
    }
    
    .index-box-md .index-box-img-top {
        height: 155px;
        border-radius: 0.75rem;
        padding: 0.25rem !important
    }
    
    .index-box-md .card-text {
        padding: 0px 10px;
        font-size: 0.9em;
        text-align: justify;
        transition: all 0.1s ease;
    }
    
    .index-box-md a.disabled {
        /* Make the disabled links grayish*/
        color: #696969;
        /* And disable the pointer events */
        pointer-events: none;
    }
    
    .index-box-md .adapted-overlay {
        background-color: rgba(0,0,0,.25);
        border-radius: 0.75rem;
    }
    
    .wrapper-index {
        padding-top: 50px;
        padding-bottom: 50px;
    }


    @media (min-width: 560px){

        .index-box {
            height: 450px !important;
        }    
        
        .index-box-md {
            height: 380px !important;
        }    

        .index-box .index-box-img-top {
            height: 275px;
        }
        
        .index-box-md .index-box-img-top{
            height: 195px;
        }

        @media (min-width: 766px){

            .hero-header {
                min-height: 60vh;
            }

            .bg-resilienza {
                background-size: 120vw 100vh;
            }

            .index-box{
                height: 380px !important;
            }  
            
             .index-box-md{
                    height: 320px !important;
                }  

            .index-box .index-box-img-top {
                height: 188px;
            }
            
             .index-box-md .index-box-img-top {
                    height: 155px;
                }


            @media (min-width: 992px){
                
                .hero-header {
                    min-height: 50vh;
                }

                .bg-index {
                    background-size: 100vw 100vh;
                }

                .index-box{
                    height: 450px !important;
                }   

                .index-box-md{
                    height: 360px !important;
                }  
               
                .index-box .index-box-img-top {
                    height: 242px;
                }               
                              
                .index-box-md .index-box-img-top {
                    height: 175px;
                }
                
                @media (min-width: 1600px){

                    .container-box {                
                        max-width: 1380px;
                    }

                    .index-box{
                        height: 500px !important;
                    }  
                    
                    .index-box-md{
                        height: 420px !important;
                    }  

                    .index-box .index-box-img-top {
                        height: 312px;                        
                    }

                    .index-box-md .index-box-img-top {
                        height: 215px;
                    }

                }

            }
        }

    }

}
/* ---------------------------------------------------
   FINE Index ElEMENTS STYLE
------------------------------------------------------------------------------------------------------- */