/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/



.bg-blu-logo {
    /*background-color: #054686 !important;*/
    background-color: #14421d !important;
    font-family: var(--cnvs-primary-font) !important;
}

.voce-sottomenu {
    font-size: 1em !important;
    text-transform: capitalize !important;
    font-weight: 700 !important;
}

.voce-menu-principale {
    font-size: 1.7em !important;
    text-transform: capitalize !important;
}

    .voce-menu-principale:hover, .voce-menu-principale:active {
        text-decoration: underline !important;
        text-decoration-thickness: 4px !important;
        text-underline-offset: 10px !important;
    }

#footer a:hover {
    text-decoration: underline !important;
}

.font-contributo {
    font-size: 0.8em !important;
}

.link-primario-footer {
    font-family: var(--cnvs-primary-font) !important;
}

.menu-interno {
    border-color: #14421d !important;
}

.menu-interno .voce-menu-principale {
    color: #212529 !important;
}

/*.leaf-separator {
    background-image: url('/assets/images/green-patt.svg');
    background-repeat: repeat-x;
    background-position: center;
    background-size: auto;
    height: 24px;
    -webkit-mask-image: linear-gradient(to bottom, black, transparent);
    mask-image: linear-gradient(to bottom, black, transparent);
}
*/

.bg-primario {
    background-color: #267D38 !important;
}

.text-primario {
    color: #267D38 !important;
}

.sb-msg p{
    margin-bottom: 0 !important;
}

.bg-secondario {
    background-color: #d66500 !important;
}

.text-secondario {
    color: #d66500 !important;
}

.bg-secondario input::placeholder {
    color: #ffffff;
}

.area-testo a {
    color: #267D38;
    font-weight: bold;
}

#dove-evento, #quando-evento, #programma-evento, #collegamento-evento, #materiali-evento {
    scroll-margin-top: 80px;
}



/*Per gestione bottone laterale "Risorse"*/
.btn-sidepanel {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1040;
    border-radius: 6px 0 0 6px;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    padding: 10px 6px;
    /* DEFAULT per mobile e tablet */
    right: 10px;
}

/* xl */
@media (min-width: 1200px) {
    .btn-sidepanel {
        right: calc((100vw - 1140px) / 2 - 40px);
    }
}

/* xxl */
@media (min-width: 1400px) {
    .btn-sidepanel {
        right: calc((100vw - 1320px) / 2 - 40px);
    }
}

/*Anteprima su cover pubblicazione di evento terminato*/
.img-wrapper-anteprima {
    display: inline-block;
    position: relative;
}

.watermark-anteprima {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-30deg);
    font-size: 3rem; /* regola la dimensione */
    font-weight: bold;
    color: rgba(34, 139, 34, 0.5); /* forest green trasparente */
    text-transform: uppercase;
    pointer-events: none;
}

.step-concluso {
    color: #adb5bd;
}

.step-corrente {
    color: #267D38;
}

.step-futuro {
    color: #000000;
}

#scroll-progress {
    position: fixed;
    bottom: 0;
    left: 0;
    height: 6px;
    width: 0%;
    background-color: #d66500;
    z-index: 9999;
    transition: width 0.1s linear;
}


.process-steps li::before,
.process-steps li::after {
    background: none !important; /* rimuove eventuali sfondi */
    border-top: 1px solid #000 !important; /* linea nera marcata */
    height: 0 !important; /* evita blocchi verticali */
    opacity: 1 !important; /* visibilità piena */
}


body.scrolled .logo-default-home {
    content: url('/assets/images/logo-green.jpg');
}
body:not(.scrolled) .logo-default-home {
    content: url('/assets/images/logo.png');
}

body:not(.scrolled) #logo {
    background-color: transparent;
}

body.scrolled #logo {
    background-color: #ffffff !important;
}


.voce-sottomenu {
    text-transform: none !important;
}

.voce-sottomenu-secondaria {
    text-transform: none !important;
    font-size: 3pt;
}

.bg-green-light {
    background-color: #EBF9EE;
}

.nav-link.active{
    font-weight: bold;
}

.border-green-primary {
    border-color: #267D38 !important;
}


:target {
    scroll-margin-top: 120px; /* altezza del tuo menu */
}


/*Inizio gestione header rivista*/




/* Header sempre opaco */
/*.transparent-header,
.transparent-header-responsive {
    background-color: #fff !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
}*/

/* Header sempre ridotto */
/*#header-wrap,
#header-wrap.sticky-header,
#header-wrap:not(.sticky-header) {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    height: 70px !important;
    transition: none !important;
}*/

/* Blocca ogni animazione di scroll */
/*#header,
#header-wrap {
    transition: none !important;
}*/

/* Logo sempre ridotto */
/*#logo img {
    max-height: 45px !important;
    transition: none !important;
}*/

/* Menu sempre compatto */
/*.primary-menu .menu-container > .menu-item > .menu-link {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}*/

/* Clone ridotto */
/*.header-wrap-clone {
    height: 70px !important;
    padding: 0 !important;
    margin: 0 !important;
}*/

/* Sfondo bianco per il menu mobile */
/*@media (max-width: 991px) {
    #header,
    #header-wrap,
    .primary-menu,
    .primary-menu .menu-container {
        background-color: #fff !important;
    }*/

    /* Sfondo bianco anche al menu aperto */
    /*.primary-menu-trigger + .primary-menu {
        background-color: #fff !important;
    }
}*/

/*Fine gestione header rivista*/





/* Dropdown del secondo navbar su hover */
.navbar-nav .nav-item.dropdown:hover .dropdown-menu {
    display: block;
    margin-top: 0; /* evita il salto */
}

/* Evita che il click richiuda il menu immediatamente */
.navbar-nav .nav-item.dropdown .dropdown-toggle::after {
    pointer-events: none;
}


.mega-bg-img-accademia {
    background-image: url('/assets/images/img-menu-attivita.jpg');
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}
.mega-bg-img-attivita {
    background-image: url('/assets/images/img-menu-attivita.jpg');
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}
.mega-bg-img-eventi {
    background-image: url('/assets/images/img-menu-attivita.jpg');
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

.bg-primario-rosso {
    background-color: #8C2434 !important;
}
.primario-rosso {
    color: #8C2434 !important;
}

/*Link dentro scheda fascicolo e scheda articolo (catalogo-digitale e capitolo-digitale)*/
.bg-green-light a {
    font-weight: bold;
/*    text-decoration: underline;*/
}

.autore-item {
    margin-bottom: 1rem;
    padding: .75rem 1rem;
    background: #f8faf8;
    border-left: 4px solid #4caf50;
    border-radius: 6px;
    list-style: none;
}

.autore-header {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-bottom: .35rem;
}

.autore-nome {
    font-weight: 600;
    font-size: 1.05rem;
    color: #2a4d2a;
    text-decoration: none;
}

    .autore-nome:hover {
        text-decoration: underline;
    }

.autore-email i {
    color: #4caf50;
    font-size: 1rem;
}

.autore-email:hover i {
    color: #2e7d32;
}

.autore-orcid {
    font-size: .9rem;
    color: #2a7f62;
    text-decoration: none;
    margin-left: .25rem;
}

    .autore-orcid:hover {
        text-decoration: underline;
        color: #1b5e48;
    }

.autore-afferenze {
    margin-left: .25rem;
    font-size: .9rem;
    color: #333;
}

.afferenza-item {
    display: block;
    padding-left: .5rem;
    position: relative;
}

    .afferenza-item::before {
        font-family: 'unicons-line';
        font-weight: 400;
        content: "\ec3f"; /* uil-comment-alt-share */
        color: #4caf50;
        position: absolute;
        left: -1.2rem;
        font-size: 1rem;
    }

.bg-verde-primario {
    background-color: #14421d;
    color: #ffffff;
}

.toggle-accent.toggle-active {
    border-left-color: #8C2434;
}

.toggle-accent {
    border-left: 4px solid var(--bs-gray-300);
    padding-left: 0;
    margin-bottom: 0.5rem !important;
    transition: border-color .3s ease;
}

.active-tree-selection {
    background-color: #BBFCD4 !important;
}