body {
    background: var(--colore-sfondo);
}

p, ul, table {
    color: var(--testi-colore);
    font-size: var(--testi-size);
    font-family: var(--testi-font);
    line-height: 1.6;
}

a {
    color: var(--link-colore);
    font-weight: var(--link-weight);
    font-style: var(--link-style);
    text-decoration: var(--link-underline);
}

    a:hover {
        color: var(--link-hover-colore);
        font-weight: var(--link-hover-weight);
        font-style: var(--link-hover-style);
        text-decoration: var(--link-hover-underline);
    }

img {
    max-width: 100%;
    max-height: 100%;
}

h1, h2, h3, .h1, .h2, .h3
h1 > a, h2 > a, h3 > a {
    font-family: var(--titoli-font);
    font-size: var(--titoli-size);
    color: var(--titoli-colore);
    font-weight: var(--titoli-weight);
    font-style: var(--titoli-style);
    text-transform: var(--titoli-underline);
}

h4, .h4, h5, .h5, h6 {
    font-family: var(--titoli-font);
    color: var(--titoli-colore);
    font-weight: var(--titoli-weight);
    font-style: var(--titoli-style);
    text-transform: var(--titoli-underline);
}

.h6, h6 {
    font-size: 0.8rem;
}

/*Loader*/
.page-loader {
    position: fixed;
    background: var(--colore-sfondo);
    opacity: 0.8;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
}

/*Form*/
label, input, input.form-control,
textarea, textarea.form-control {
    color: var(--testi-colore);
    font-size: var(--testi-size);
    font-family: var(--testi-font);
    line-height: 1.6;
}
.grecaptcha-badge {
    bottom: 150px !important; /* spostala pił in alto */
}
.form-label {
    margin-bottom: .1rem;
}

.field-validation-error {
    font-size: var(--testi-size);
    font-family: var(--testi-font);
    line-height: 1.6;
}

.form-check .form-check-input {
    margin-top: 7px;
}

.alert p {
    margin: 0px !important;
}
#FormConsultaPratiche {
    width: 100%;
    min-height: 500px;
}

/*Galleria Immagini*/
.boxgallery .item-boxgallery div {
    width: 100%;
    height: 140px;
    text-align: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    transition: all 0.7s ease;
}
.boxgallery .item-boxgallery div a{
    width: 100%;
    height: 100%;
    display: inline-block;
}
    .boxgallery .item-boxgallery div:hover {
        transform: scale(1.02);
        opacity: 0.6;
    }
#GalleriaMansoryPagina .grid-sizer,
#GalleriaMansoryPagina .grid-item {
    width: 33.33%;
    overflow: hidden;
}
    #GalleriaMansoryPagina .grid-item a img {
        transition: all 0.7s ease;
    }
    #GalleriaMansoryPagina .grid-item:hover a img {
        transform: scale(1.02);
        opacity: 0.6;
    }
    /*banner cookie*/
    .bannerCookiePolicy {
        position: fixed;
        bottom: 0px;
        left: 0px;
        right: 0px;
        z-index: 999;
        padding: 1.4rem;
        background: var(--colore-base);
        border-top: 1px solid var(--colore-dettaglio2);
    }

.cookiedisabledpanel {
    width: 100%;
    text-align: center;
    padding: 20px 10px;
    background: #ddd;
    margin: 20px 0px;
}

    .cookiedisabledpanel p a {
        cursor: pointer;
    }

/*Slider Home*/
#CarouselHome .carousel-caption p.h3 {
    margin: 0px;
}

/*logo*/
.logo {
    display: flex;
    column-gap: 10px;
    align-items: center;
}

    .logo .logo-img {
        max-height: 100px;
    }

    .logo .logo-txt a {
        display: flex;
        flex-direction: column;
        text-decoration: none;
    }

    .logo .logo-txt .prima-riga {
        color: var(--logo-1riga-colore);
        font-size: var(--logo-1riga-size);
        font-family: var(--logo-1riga-font);
        font-weight: var(--logo-1riga-weight);
        font-style: var(--logo-1riga-style);
        text-decoration: var(--logo-1riga-underline);
    }

    .logo .logo-txt .seconda-riga {
        color: var(--logo-2riga-colore);
        font-size: var(--logo-2riga-size);
        font-family: var(--logo-2riga-font);
        font-weight: var(--logo-2riga-weight);
        font-style: var(--logo-2riga-style);
        text-decoration: var(--logo-2riga-underline);
    }

/*Menu*/
.menu {
    background: var(--menu-colore-sfondo);
    padding: 0.3rem 0.5rem;
}

.menu-1livello li {
    position: relative;
}

    .menu-1livello li a {
        color: var(--menu-colore);
        font-size: var(--menu-size);
        font-weight: var(--menu-weight);
        font-style: var(--menu-style);
        text-decoration: var(--menu-underline);
    }

    .menu-1livello li > .open-submenu {
        color: var(--menu-colore);
    }

    .menu-1livello li:hover > a, .menu-1livello li > a:hover,
    .menu-1livello li:hover > div > a, .menu-1livello li > div > a:hover {
        color: var(--menu-active-colore);
        font-size: var(--menu-active-size);
        font-weight: var(--menu-active-weight);
        font-style: var(--menu-active-style);
        text-decoration: var(--menu-active-underline);
    }

    .menu-1livello li:hover > .open-submenu, .menu-1livello li > .open-submenu:hover {
        color: var(--menu-active-colore);
    }

    .menu-1livello li > .open-submenu {
        color: var(--menu-colore);
    }

.menu-2livello {
    display: none;
    list-style: none;
    position: absolute;
    top: 100%;
    left: 0px;
    padding: 0.3rem var(--bs-navbar-nav-link-padding-x);
    margin: 0px;
    background: var(--menu-colore-sfondo);
    z-index: 2;
}

.open-submenu i {
    font-size: 0.7rem;
    margin-left: 10px;
}

.menu-1livello li:hover .menu-2livello,
.open-submenu:hover + .menu-2livello {
    display: block;
}

.menu-2livello > li {
    position: relative;
    min-width: 180px;
    margin-bottom: 0.3rem
}

.menu-2livello > li {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

    .menu-2livello > li:last-child {
        margin-bottom: 0rem
    }

.menu-3livello {
    display: none;
    position: absolute;
    left: 100%;
    top: 0px;
    list-style: none;
    padding: 0.3rem 0.9rem 0.3rem;
    margin: 0px 0px 0px 0rem;
    background: var(--menu-colore-sfondo);
}

    .menu-3livello > li {
        margin-bottom: 0.3rem
    }

        .menu-3livello > li:last-child {
            margin-bottom: 0rem
        }

.menu-2livello li:hover .menu-3livello,
.open-submenu:hover + .menu-3livello {
    display: block;
}

/*struttura home*/
.struttura-home iframe {
    max-width: 100% !important;
}
/*Pagine interne*/
.guide-utili h5 a{
    font-weight: bold;
    font-size: 1rem;
}
.item-staff {
    display: flex;
    border: 1px solid var(--colore-base);
    padding: 0.6rem;
    column-gap: 1rem;
    align-items: start;
}
.item-staff .foto{
    max-width: 150px;
}
    .item-staff h5 {
        font-weight: bold;
    }

/*News*/
.elenco-news .news-item {
    column-gap: 0.8rem;
}
.elenco-news .news-item h4 a {
    font-weight: bold;
    font-size: 1rem;
}
.elenco-news .news-item .immagine-news {
    max-width:150px;
}
/*Paginazione*/
.page-item a {
    color: var(--link-colore);
}
    .page-item:hover a, .page-item a:hover {
        color: var(--link-hover-colore);
    }
.page-item a i{
    font-size: 0.7rem;
}
.page-item.active a {
    color: var(--colore-dettaglio1);
    background-color: var(--colore-dettaglio2);
    border-color: var(--colore-dettaglio2);
}

/*Gestione Popup*/

.ajs-dialog.popupVideo,
.ajs-dialog.dialogImage {
    border: 0px;
    border-radius: 0px;
}

.ajs-dialog.grande {
    max-width: 90%;
    min-height: 80%;
}

.ajs-dialog.medio {
    max-width: 60%;
    min-height: 60%;
}

.ajs-dialog.piccolo {
    max-width: 40%;
    min-height: 40%;
}
@media (max-width: 750px) {

    .ajs-dialog.medio {
        max-width: 90%;
        min-height: 80%;
    }

    .ajs-dialog.piccolo {
        max-width: 90%;
        min-height: 80%;
    }
}

.popupImage {
    width: 100%;
    height: 100%;
    display: block;
    background-position: center center;
    background-size: cover;
}

.ajs-header {
    font-family: var(--titoli-font);
    color: var(--titoli-colore);
    font-weight: var(--titoli-weight);
    font-style: var(--titoli-style);
    text-transform: var(--titoli-underline);
}

.ajs-content p,
.ajs-content ul,
.ajs-content h1 {
    line-height: 20px;
}

/*Footer*/
.testo-copyright li, .testo-copyright li a {
    font-size: 0.72rem;
}

.testo-copyright li {
    margin-right: 0.2rem !important;
}

    .testo-copyright li::after {
        content: "-";
        margin-left: 0.2rem;
    }

    .testo-copyright li:first-child:after,
    .testo-copyright li:last-child:after {
        content: "";
        margin-left: 0px;
    }

/*Contatti Studio*/
.contatti-studio {
    position: fixed;
    right: 15px;
    bottom: 15px;
    z-index: 99;
    margin: 0px;
}

    .contatti-studio li {
        position: relative;
    }

        .contatti-studio li .btn-contatti-studio {
            color: var(--colore-sfondo);
            background: var(--colore-dettaglio2);
            display: inline-block;
            border-radius: 50%;
            width: 48px;
            height: 48px;
            text-align: center;
            font-size: 1.4rem;
            vertical-align: middle;
            line-height: 48px;
        }

            .contatti-studio li .btn-contatti-studio.whatsapp {
                background: #25d366;
                color: #fff;
            }

            .contatti-studio li .btn-contatti-studio:hover {
                background: var(--colore-sfondo);
                color: var(--colore-dettaglio2);
            }

            .contatti-studio li .btn-contatti-studio.whatsapp:hover {
                background: #fff;
                color: #25d366;
            }

        .contatti-studio li ul {
            position: absolute;
            bottom: 100%;
            right: 0px;
            display: none;
            list-style: none;
            padding: 0px;
            margin: 0px;
            text-align: right;
        }

            .contatti-studio li ul li {
                margin-bottom: 20px;
                color: var(--colore-sfondo);
                background: var(--colore-dettaglio2);
                padding: 2px 6px;
                border-radius: 5px;
            }

                .contatti-studio li ul li a {
                    color: var(--colore-sfondo);
                    font-size: 0.85rem;
                    white-space: nowrap;
                }

/*news*/
.boxnewsgiuridiche .news-testo,
.boxnewsgoogle .news-testo {
    display: none;
}

/*Pagina interne*/
#AccordionPaginaLaterale .accordion-button:not(.collapsed) {
    color: var(--titoli-colore) !important;
    background-color: transparent !important;
    box-shadow: none !important;
}
.IN-widget {
    vertical-align: unset !important;
}
/*classi variabili*/
.bg-colore-sfondo {
    background: var(--colore-sfondo);
}

.bg-colore-base {
    background: var(--colore-base);
}

.bg-colore-dettaglio1 {
    background: var(--colore-dettaglio1);
}

.bg-colore-dettaglio2 {
    background: var(--colore-dettaglio2);
}
