@import url('https://use.fontawesome.com/releases/v6.0.0/css/all.css');

@font-face {
  font-family: 'Onest';
  src: url('../fonts/Onest/Onest-Medium.ttf') format('truetype');
  font-weight: 500;

  font-style: normal;
}

@font-face {
  font-family: 'Onest';
  src: url('../fonts/Onest-Black.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
}

@font-face {
    font-family: 'Roboto Black';
    src: url('../fonts/Roboto-Black.ttf') format('truetype');
}


body {
  font-family: 'Onest', sans-serif;
  font-weight: 500;
  color:#212121;
}



p {
  font-size: 17px;
}

a {
    color:#2b6eb2;
    text-decoration: none;
}

h1 {
    color:#2b6eb2;
    font-family: 'Onest', sans-serif;
  font-weight: 900;
}


h2 {
    font-family: 'Onest', sans-serif;
  font-weight: 900;
}



h3 {
    font-family: 'Onest', sans-serif;
  font-weight: 900;
  font-size:1.3em;
}
/**
.nuova-posizione {
    float: right;
    padding-top: 20px;
}
*/

/* Nasconde il modulo 'Cerca mobile' (ID 137) su Desktop e Laptop */
@media (min-width: 992px) {
    div#mod-custom137, 
    div.moduletable.solo-mobile,
    aside.module.solo-mobile {
        display: none !important;
    }
}
/* Nasconde il modulo in posizione below-top solo su mobile */
@media (max-width: 991.98px) {
    .container-below-top {
        display: none !important;
    }
}

.container-below-top 
{background:#e3f2fd;}

/* Stato normale del link */
.container-below-top .metismenu-item a {
    color: #2b6eb1 !important;
    text-decoration: none;
    transition: all 0.3s ease; /* Transizione fluida per colore e hover */
}

/* Stato visitato (manteniamo lo stesso blu per pulizia estetica) */
.container-below-top .metismenu-item a:visited {
    color: #1877F2 !important;
}

/* Stato Hover (passaggio del mouse - blu più chiaro stile Facebook) */
.container-below-top .metismenu-item a:hover {
    color: #4e94f4 !important; 
    background-color: rgba(24, 119, 242, 0.05) !important; /* Leggerissimo sfondo azzurrato */
    text-decoration: none;
}

/* Stato Active (mentre clicchi il tasto) */
.container-below-top .metismenu-item a:active {
    color: #145dbf !important;
}

/* Stato della pagina corrente (voce attiva in Joomla) */
.container-below-top .metismenu-item.active > a,
.container-below-top .metismenu-item.active > a:focus {
    color: #1877F2 !important;
    font-weight: 700; /* Testo in grassetto */
    border-bottom: 2px solid #1877F2; /* Sottolineatura marcata sulla pagina attiva */
}


.container-below-top .navbar-toggler {
color:#2b6eb1  
}


@media (min-width: 992px) {
    /* Forza la visualizzazione del menu al passaggio del mouse */
    .container-header .mod-menu li.item-highlight:hover > ul,
    .container-header .mod-menu li.parent:hover > ul,
    .container-header .mod-menu .dropdown:hover > .dropdown-menu {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        top: 100%; /* Allinea il dropdown esattamente sotto la voce principale */
    }

    /* Evita che il menu scompaia se c'è un piccolo spazio vuoto tra voce e tendina */
    .container-header .mod-menu .dropdown-menu {
        margin-top: 0 !important;
    }
}

/* Sposta il modulo di ricerca a destra nel modulo header */
.container-below-top .mod-finder {
    margin-left: auto !important;
    display: flex; /* Assicura che si comporti correttamente come elemento flex */
}

/* Opzionale: allinea verticalmente se necessario */
.container-below-top {
    display: flex;
    align-items: center;
}

.container-header {

 /* menu accanto al logo display:flex */
 background-color: white;
 background-image: none;

}

@media (max-width: 768px) {
    ..container-header {
        display: inline-flex;
    }
}

@media (max-width: 767px) {
  .nuova-posizione {
    display: none;
  }
}

.container-search .input-group {
    width:307px;
}

/*@media (min-width: 768px) {
  .container-search {
    display: none;
  }
}*/


.container-header .container-nav {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 1em;
   background-color: #2b6eb2;
   border-radius: 0.25rem;
} 




.container-header .mod-menu {
    -webkit-box-flex: 1;
    color: white;
    -ms-flex: 1 0 100%;
    flex: 1 0 100%;
    list-style: none;
    margin: 0;
    padding: 0;
    font-size:1.2em;
      font-family: 'Onest', sans-serif;
  font-weight: 700;
}


.container-header .mod-menu a:hover{
        color: #d9dbff;
    
}

.metismenu.mod-menu .metismenu-item {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: 1.1rem;
    line-height: 1.5;
    padding: .5em 0.4em;
}

.metismenu.mod-menu .mm-collapse>li>a{
  color:#2b6eb2;
}

.metismenu.mod-menu .mm-collapse>li>a:hover{
color:#4191c8;
}

.drop-cap {
			float: left;
			font-size: 2.5em;
			line-height: 0.6em;
			padding-right: 0.1em;
		}

.btn-primary{
      background-color: #2b6eb2;
        border-color:#22568b;

}

.container-header .metismenu>li.active>a:after,
.container-header .metismenu>li.active>button:before,
.container-header .metismenu>li>a:hover:after,
.container-header .metismenu>li>button:hover:before {
  background:white;
  left:0;
  right:0;
  border-bottom: 8px solid white !important;
}

.btn-primary:focus,
.btn-primary:hover {
  background-color:#1f4f7f;/*var(--cassiopeia-color-hover)*/;
  border-color:#2968a8;
}

.card-header{

  background: linear-gradient(to right, #8bc43f 0%, #8bc43f 20%, #7f1f80 20%, #7f1f80 40%, #1a75bb 40%, #1a75bb 60%, #f90000 60%, #f90000 80%, #ff8800 80%, #ff8800 100%);
  background-size: 100% 5px;
  background-repeat: no-repeat;
  background-position: bottom;
  background-color:#e3f2fd;
  color: #2b6eb2;
  font-size:1.9em;
  font-family: 'Onest', sans-serif;
  font-weight: 900;
}



.card-body {
    background-color: #e3f2fd;
}

.breadcrumb {
    background-color: #e3f2fd;
    border-radius: 0.25rem;

}

label{
  font-size:1.2rem;
}

.form-control {
border: 1px solid #999;
}
.form-check-input[type=checkbox] {
    border-radius: 0.25em;
    border-color:#777;
}


.footer {
  color: white;
  background: #2b6eb2;
  text-decoration: none;
  width: 100%;
  padding-left:20px;
  padding-right:20px;
  border-radius: 0.25rem;

}




@media only screen and (min-width: 1320px) {
  .footer {
  width: 1320px;
  margin: 0 auto 14px;
  }
}

.footer a {
  text-decoration: none;

}

.footer a:hover {
  text-decoration: none;
  color:silver;
}

@-moz-document url-prefix() {
  /* CSS specifico per Firefox */

  body { 

    font-family: Roboto, sans-serif;

  }

  h1 {
        
        font-family: 'Roboto Black', sans-serif;

  }

  h2 {
        
        font-family: 'Roboto Black', sans-serif;

  }

  
  h3 { 

    font-family: 'Roboto Black', sans-serif;
  
  }

    .container-header .mod-menu {
          font-weight: 700;
  }

 .card-header {

        font-family: 'Roboto Black', sans-serif;
  }

  .container-header .mod-menu{
          font-weight: 700;


  }

 .metismenu.mod-menu .metismenu-item{
  padding: 0.5em 0.7em;

  }
}