a:not([class]) {
    text-decoration: none;
}
h4, .h4 {
    font-size: calc(1.1rem);
}

.container-header nav {
    margin-top: .0em;
    padding: 0;
}

div.mod-languages img {
    border: 1px solid #d1d5db !important;
    display: inline-block;
}

/* Nasconde esclusivamente il blocco/lista delle sottocategorie a fine pagina */
.blog .com-content-category-blog__children,
.blog .cat-children,
.category-children {
    display: none !important;
}

/* Nasconde l'icona della cartella aperta */
.icon-folder-open {
    display: none !important;
}

/* Mostra sempre le voci figlie nei menu laterali di Cassiopeia */
.sidebar-left .mod-menu ul,
.container-sidebar-left .mod-menu ul {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}


/* Rientro visivo per distinguere i sottomenu dalle voci principali */
.sidebar-left .mod-menu .nav-child,
.container-sidebar-left .mod-menu .nav-child {
    padding-left: 1.25rem !important;
    margin-top: 0.25rem;
    margin-bottom: 0.5rem;
}

.container-header .mod-menu {
    color: rgb(255 255 255);
}

.metismenu.mod-menu .metismenu-item {
    flex-wrap: wrap;
    align-items: center;
    padding: .5em .5em;
    font-size: 1.0rem;
    line-height: 1.2;
    display: flex;
}

/* Stile personalizzato per il pulsante di stampa/PDF compatto */
.btn-print-sm {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.35rem 0.75rem;
  font-size: 0.7rem;
  font-weight: 500;
  line-height: 1.4;
  color: #0d6efd;
  background-color: transparent;
  border: 1px solid #0d6efd;
  border-radius: 0.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  text-decoration: none;
}

.btn-print-sm:hover {
  color: #ffffff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}

/* Stile personalizzato per il pulsante di stampa/PDF compatto */
.btn-print-sm {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.35rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4;
  color: #0d6efd;
  background-color: transparent;
  border: 1px solid #0d6efd;
  border-radius: 0.25rem;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  text-decoration: none;
}

.btn-print-sm:hover {
  color: #ffffff;
  background-color: #0d6efd;
  border-color: #0d6efd;
}

/* Nascosto durante la normale navigazione web */
.print-copyright {
  display: none;
}

/* Stili specifici per la STAMPA / Generazione PDF */
@media print {

  /* Inserisce il copyright alla fine dell'articolo in automatico */
  .com-content-article::after {
    content: "© Sito web della Comunità Redemptor hominis - Tutti i diritti riservati - Riproduzione vietata senza autorizzazione.";
    display: block;
    margin-top: 2rem;
    padding-top: 0.5rem;
    border-top: 1px solid #ccc;
    font-size: 0.75rem;
    color: #555;
    text-align: center;
  }

  
  /* 1. Nasconde menu, header, footer e pulsanti */
  header,
  footer,
  .header,
  .container-header,
  .navbar,
  .nav,
  .sidebar-right,
  .sidebar-left,
  .burger-icon,
  .no-print,
  .btn,
  .btn-print-sm {
    display: none !important;
  }

  /* 2. Resetta il layout della griglia a tutta pagina */
  body,
  main,
  .site-grid,
  .container-main {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    color: #000000 !important;
    box-shadow: none !important;
  }

  /* 3. Mantiene l'articolo a tutta larghezza */
  .com-content-article {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 4. Rende visibile e formatta la nota di Copyright in stampa */
  .print-copyright {
    display: block !important;
    margin-top: 2rem;
    padding-top: 0.5rem;
    border-top: 1px solid #cccccc;
    font-size: 0.75rem;
    color: #555555;
    text-align: center;
  }

  /* 5. Evita di spezzare immagini e tabelle a metà foglio */
  img, 
  table, 
  pre {
    page-break-inside: avoid;
  }
}

/* 1. Pulizia dei contenitori nidificati */
.mod-languages ul.lang-inline li,
.mod-languages ul.lang-inline li a,
.mod-languages .lang-active {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 4px !important;
  margin: 0 4px !important;
  display: inline-flex;
  align-items: center;
}

/* 2. Ingrandimento di TUTTE le bandierine */
.mod-languages img {
  height: 18px !important;     /* Modifica questo valore per ingrandirle (es. 20px, 24px, 28px) */
  width: auto !important;      /* Mantiene le proporzioni originali dell'immagine */
  vertical-align: middle;
}

/* 3. Bordo applicato ESCLUSIVAMENTE alla bandiera della lingua selezionata */
.mod-languages li.lang-active img,
.mod-languages li.lang-active a img {
  background-color: transparent !important;
  border: 1px solid #d1d5db !important; /* Bordo grigio chiaro */
  border-radius: 3px !important;        /* Smussatura angoli leggera */
  padding: 2px !important;              /* Spazio interno tra bandiera e bordo */
}

/* 1. Sfondo azzurrino per TUTTA la pagina (fasce esterne) */
html, 
body {
    background-color: #d4e4f7 !important;
}

/* 2. Forziamo il blocco centrale (site-grid) a essere bianco e centrato */
.site-grid {
    background-color: #ffffff !important;
    max-width: 1320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 20px !important;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.08) !important;
}

/* Nasconde il testo nativo dell'icona e applica la nuova */
i._access-icon._access {
    font-size: 0 !important; /* Nasconde l'icona vecchia */
}

i._access-icon._access::before {
    content: "visibility"; /* Inserisci qui il nome della nuova icona */
    font-family: 'Material Icons';
    font-size: 40px;
    line-height: 45px;
    display: block;
}

/* Disabilita tutte le transizioni e animazioni di caricamento pagina */
html, body, #wrapper, .site-grid {
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
}

/* Annulla eventuali effetti di dissolvenza AOS/Animate.css */
[data-aos] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
}