/* --- Reset Globale --- */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; /* Essenziale per il responsive design */
}

/* --- Stili Base del Body (SENZA IMMAGINE DI SFONDO) --- */
body {
  /* Rimuoviamo l'immagine di sfondo come richiesto */
  /* background-image: url('http://www.aimas.it/imgs/skylogo6.jpg'); */
  /* background-repeat: no-repeat; */
  /* background-attachment: fixed; */
  /* background-position: top center; */
  /* background-size: cover; */ /* Rimosso o commentato */

  background-color: #f8f8f8; /* Un colore di sfondo molto chiaro per un look pulito */

  font-family: 'Open Sans', Arial, sans-serif; /* Un font più moderno e leggibile. Assicurati di averlo importato nel tuo HTML */
  font-size: 16px; /* Dimensione base del font, più grande per una migliore leggibilità */
  line-height: 1.6; /* Interlinea più spaziosa per la leggibilità */
  color: #333; /* Un grigio scuro per il testo, meno duro del nero puro */
}

/* --- Tipografia Generale --- */
/* Unifichiamo le definizioni dei font e delle dimensioni per un aspetto più coerente e moderno */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Montserrat', 'Georgia', serif; /* Font moderno per i titoli */
  line-height: 1.2;
  margin-top: 1.8em;
  margin-bottom: 0.8em;
  color: #2c3e50; /* Un colore più profondo per i titoli */
  text-align: center; /* Imposta l'allineamento centrale per tutti i titoli */
}

h1 {
  font-size: 2.8em;
  font-weight: bold;
  color: #0D22C1; /* Manteniamo il tuo blu scuro per il titolo principale */
}

h2 {
  font-size: 2em;
  font-weight: bold;
}

h3 {
  font-size: 1.5em;
  font-weight: bold;
}
/* Rimuovi le definizioni duplicate di H1, H2, H3 separate sotto il body */
/* Esempio: Rimuovi le seguenti regole, ora coperte sopra:
H2 { font: bold 20px "Verdana", "Helvetica", "Arial", "sans-serif"; line-height:100%; }
H1 { font: bold 30px "Verdana", "Helvetica", "Arial", "sans-serif"; color: white; }
H3 { font: bold 18px "Verdana", "Helvetica", "Arial", "sans-serif"; line-height:100%; }
*/


p, ul, ol {
  font-size: 1em; /* Unità relativa basata sul body font-size (16px) */
  margin-top: 1em;
  margin-bottom: 1em;
  /* Rimuovi la definizione font datata qui, ora gestita dal body o da h1/h2/h3:
  font: 12px "Verdana", "Helvetica", "Arial", "sans-serif"; line-height:130%;
  */
}

ul, ol {
  margin-left: 2em; /* Riduci il margine per un aspetto più pulito */
  list-style-position: outside;
}

blockquote {
  margin: 1.5em 2em;
  padding: 0.5em 1em;
  border-left: 4px solid #3C8CBE;
  color: #555;
  font-style: italic;
}

/* --- Link --- */
a {
  color: #3C8CBE; /* Un blu più moderno */
  text-decoration: none;
  transition: color 0.3s ease; /* Transizione fluida */
  /* Rimuovi definizione duplicata: A {font-weight:bold; text-decoration:none} */
}

a:hover {
  color: #FA700A; /* Arancione vivace al hover */
  text-decoration: underline; /* Sottolineatura al hover per chiarezza */
  /* Rimuovi definizione duplicata: A:hover {text-decoration:underline; color: #FF0000} */
}

/* --- Linee Divisorie --- */
hr {
  border: none;
  border-top: 1px solid #eee;
  margin: 40px 0;
}

.hr1 {
  height: 2px;
  background: #ccc; /* Un colore semplice, rimuove l'immagine gif datata */
  margin: 30px 0;
  /* Rimuovi background: url(http://www.aimas.it/new/imgs/img02.gif) repeat-x left top; */
}

/* --- Classi di Testo Specifiche --- */
.t12 {
  font-family: 'Times New Roman', serif;
  font-size: 0.9em; /* Convertito in unità relative */
  line-height: 1.4;
  color: #000080;
}

.rosso {
  color: #C00000;
}

/* --- Contenitori Globali e Layout --- */
/* Rendi i contenitori principali flessibili e centrati */
#content, #pageb, #page, #header, #footer {
  max-width: 1024px; /* Unifica la larghezza massima per tutti i contenitori principali */
  margin: 0 auto; /* Centra questi blocchi */
  padding: 0 15px; /* Aggiungi un padding laterale per evitare che il contenuto tocchi i bordi su schermi piccoli */
}

#pageb, #page {
  background: #fff; /* Sfondo bianco per il contenuto principale */
  padding: 20px 30px; /* Più padding interno */
  box-shadow: 0 4px 10px rgba(0,0,0,0.08); /* Ombra più pronunciata ma morbida */
  border-radius: 10px; /* Angoli più arrotondati */
  margin-top: 20px; /* Spazio dal bordo superiore */
  margin-bottom: 20px; /* Spazio dal bordo inferiore */
}

#header {
  height: auto; /* Rimuovi altezza fissa per essere responsivo */
  padding-top: 20px;
  padding-bottom: 20px;
}

/* --- MODIFICA #contfull (CONTENITORE PRINCIPALE DI SEZIONE) --- */
#contfull {
  position: relative;
  width: 100%;
  color: #26353A;
  text-align: left;
  padding: 25px;
  /* MODIFICA: Sfondo più chiaro per maggiore contrasto */
  background: #fdfdfd; /* Sfondo quasi bianco, molto pulito */
  font-family: 'Open Sans', Arial, sans-serif;
  font-size: 1em;
  margin-bottom: 30px;
  border-radius: 8px;
  /* Ombra più visibile ma morbida per distinguere i blocchi */
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* Modifiche per il testo degli avvisi all'interno di #contfull */
/* Specificatamente per il testo generico degli avvisi */

/* Ho unificato le definizioni di font e colori per i titoli all'interno di #contfull */
#contfull .title,
#contfull .titcent,
#contfull .titcentred,
#contfull .titlecent,
#contfull .titleabs,
#contfull .tit {
  font-family: 'Montserrat', serif; /* Stesso font dei titoli principali */
  font-weight: bold;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  color: #0D22C1; /* Colore blu comune per i titoli */
}
/* NUOVA REGOLA: Centra il contenuto della div con name="mappa" */
#contfull[name="mappa"] {
  text-align: center;
}
#contfull .title, #contfull .titcent, #contfull .titcentred {
    font-size: 1.6em;
}

#contfull .titlecent, #contfull .titleabs, #contfull .tit {
    font-size: 1.2em;
}

#contfull .titcent, #contfull .titcentred, #contfull .titlecent, #contfull .titleabs {
    text-align: center;
}

#contfull .titcentred {
  color: #FA700A; /* Rosso arancio per questo specifico */
}

#contfull .autors,
#contfull .txtabs,
#contfull .aut {
  font-family: 'Open Sans', Arial, sans-serif;
  font-size: 1em;
  font-weight: normal;
  color: #26353A;
  text-align: left;
}

#contfull .affil {
  font-family: 'Open Sans', Arial, sans-serif;
  font-size: 0.8em;
  color: #0D22C1;
  text-align: left;
}

#contfull .pre {
  font-family: 'Open Sans', Arial, sans-serif;
  font-size: 1em;
  font-weight: normal;
  font-style: italic;
  color: #0D22C1;
  text-align: left;
}


/* --- Menu Laterali (mnu, mnu2, mnul) --- */
/* Rivediamo il posizionamento fisso per i menu. Su desktop possono andare, ma su mobile creano problemi. */
/* Per il momento, manteniamo fixed per desktop ma con una media query li renderemo statici per mobile. */
#contfull .mnu,
#contfull .mnu2,
#contfull .mnul {
  width: 250px;
  background: #3C8CBE;
  color: #fff;
  padding: 15px;
  border-radius: 5px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.15);
  font-size: 0.95em;
  line-height: 1.5;
  text-align: left;
  position: fixed; /* Manteniamo fixed per ora, ma lo gestiamo con media query */
}

#contfull .mnu { top: 220px; right: 20px; }
#contfull .mnu2 { top: 320px; right: 20px; }
#contfull .mnul { top: 220px; right: 100px; /* C'era 'right:100px' nell'originale, ma se vuoi 'left' cambialo qui: left: 20px; */ }


.mnul a, .mnu a {
  background: none;
  color: #F9C383;
  display: block;
  padding: 5px 0;
  transition: color 0.3s ease;
}

.mnul a:hover, .mnu a:hover {
  color: #fff;
  text-decoration: underline;
}

#contfull ul {
  /* MODIFICA: Rimuovi il padding-left: 0 e list-style: none se vuoi i pallini di default */
  /* Se vuoi personalizzare i pallini, mantieni list-style: none e usa ::before */
  list-style: disc outside; /* Usa i pallini di default (dischi) */
  margin-left: 1.5em; /* Aggiungi un margine sinistro standard per i pallini */
  padding-left: 0; /* Rimuovi il padding extra se il margine è sufficiente */
  color: #333; /* Assicurati che il colore del testo sia leggibile anche qui */
}

#contfull li {
  /* MODIFICA: Assicurati che il colore del testo dei singoli elementi sia scuro */
  color: #333; /* Colore del testo per i singoli elementi dell'elenco */
  list-style-type: disc; /* Reitera il tipo di pallino, per sicurezza */
  margin-left: 0; /* Rimuovi il margine interno, è gestito dal ul */
  padding-left: 0; /* Rimuovi il padding interno */
  /* Se prima usavi ::before per i pallini personalizzati e ora vuoi quelli di default,
     potresti voler commentare o rimuovere la regola #contfull li::before
     se vuoi tornare a quelli di default del browser. */
  /* #contfull li::before {
      content: none;
  } */
}
/*
#contfull li::before {
  content: '▪'; 
  color: #F9C383;
  position: absolute;
  left: 0;
  top: 0;
}
*/
#contfull p,
#contfull ul li {
  /* MODIFICA: Colore del testo più scuro per una migliore leggibilità su sfondo chiaro */
  color: #333; /* Un grigio scuro, molto leggibile su bianco */
  font-size: 1em; /* Assicurati che la dimensione sia buona */
  line-height: 1.6; /* Aumenta leggermente l'interlinea per la leggibilità */
}
#contfull p font[color="blue"] {
    color: #0D22C1; /* Il tuo blu scuro per testi specifici */
}

/* Header */
#header {
  width: 100%; /* Rendi l'header responsivo */
  max-width: 950px; /* Mantieni la max-width */
  height: auto; /* Rimuovi altezza fissa */
  margin: 0 auto;
  padding: 20px 15px; /* Padding per dare spazio al contenuto */
}

.benv {
  background-color:#ffffee;
  color: #140A60;
  padding: 10px; /* Aggiungi padding per un box più definito */
  border-radius: 5px;
}

/* Page */
/* Le regole per #page sono già state migliorate sopra, queste sono ridondanti */
/* #page {
  width: 1000px;
  margin: 0 auto;
  padding: 0px 25px 0px 25px;
  background: none;
} */

.post {
  float: left; /* Mantieni float per desktop, ma lo cambieremo per mobile */
  width: 650px; /* Mantieni la larghezza fissa per desktop */
  line-height: 1.6; /* Aumenta l'interlinea per leggibilità */
  color: #26353A;
  padding: 0 15px; /* Aggiungi un piccolo padding per separare dal bordo del .post */
}

.post .title {
  letter-spacing: normal; /* Rimuovi il letter-spacing negativo */
  font-family: 'Montserrat', serif; /* Consistenze con i titoli */
  font-size: 1.5em; /* Regola dimensione */
  font-weight: bold;
  color: #0D22C1;
  text-align: left;
  vertical-align: middle; /* Vertical-align è più per le celle di tabella */
  background: none; /* Rimuovi sfondo datato */
  margin-bottom: 15px;
}

.post .benv {
  font-size: 1em; /* Unità relative */
  text-align: left;
  color: #140A60;
}

.post .meta {
  height: auto; /* Rimuovi altezza fissa */
  text-decoration: none;
  font-size: 0.85em; /* Leggermente più grande per leggibilità */
  font-weight: normal;
  color: #26353A;
  margin-top: 10px;
  margin-bottom: 10px;
}

.meta a {
  height: auto; /* Rimuovi altezza fissa */
  padding-left: 0; /* Rimuovi padding laterale strano */
  text-decoration: none;
  font-size: 1em; /* Relativo al meta */
  font-weight: bold;
  display: inline-block; /* Per applicare padding o margine se necessario */
}

.entry {
  margin: 0 0; /* Rimuovi margini specifici e rendili flessibili */
  padding: 20px; /* Aumenta il padding interno */
  background: #fdfdfd; /* Sfondo leggermente diverso per distinguere il blocco */
  text-align: left; /* Preferisci left per una migliore leggibilità online */
  font-size: 1em; /* Unità relative */
  font-weight: normal;
  color: #26353A;
  border-radius: 5px;
  box-shadow: 0 1px 4px rgba(0,0,0,0.05); /* Ombra discreta */
}

/* Sidebar1 */
#sidebar1 {
  float: right; /* Mantenuto per desktop */
  width: 300px;
  padding: 20px; /* Padding interno */
  margin-top: 25px; /* Spazio dal contenuto sopra */
  background-color: #f0f0f0; /* Sfondo leggero per distinguere */
  border-radius: 5px;
  margin-bottom: 30px;
}

#sidebar1 ul {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: right;
}

#sidebar1 li {
  background: #3C8CBE; /* Manteniamo lo sfondo blu per le voci di menu principali */
  color: #D7E6E6;
  padding: 10px 15px; /* Più padding */
  text-align: justify; /* Cambia a left per leggibilità */
  margin-bottom: 5px; /* Spazio tra gli elementi della lista */
  border-radius: 3px;
}

#sidebar1 li ul {
  line-height: 1.5;
  padding: 15px; /* Riduci padding per sottoliste */
  background: #3C8CBE; /* Manteniamo lo sfondo blu */
  margin-bottom: 10px;
}

#sidebar1 li li {
  padding: 5px 0; /* Riduci padding per sottoliste */
  background: none; /* Rimuovi sfondo diretto sulla sub-li */
  color: #D7E6E6;
}

#sidebar1 h2 {
  width: auto;
  margin: 0 0 15px 0;
  padding: 10px 0;
  background: none; /* Rimuovi immagine di sfondo */
  border-bottom: 2px solid #3C8CBE;
  text-transform: uppercase;
  font-family: 'Montserrat', serif;
  color: #3C8CBE; /* Colore blu moderno per il titolo */
  text-align: center;
}

#sidebar1 a {
  color: #FFFFFF;
  text-decoration: none;
  display: block; /* Rende il link un blocco */
  transition: color 0.3s ease;
}

#sidebar1 a:hover {
  color: #F9C383; /* Colore giallo arancio al hover */
  text-decoration: underline;
}

/* Login */
#login{
  width:300px;
  background: #f0f0f0; /* Sfondo leggero */
  color:#000080;
  text-align: center;
  padding: 20px;
  border-radius: 5px;
  margin-top: 15px; /* Aggiungi un margine superiore se necessario */
  margin-bottom: 30px;
}

#login h2{
  width:auto; height:auto;
  position: static; /* Rimuovi positioning se non strettamente necessario */
  background: none; /* Rimuovi immagine di sfondo */
  left: auto;
  margin-left: 0px;
  display:block;
  font-size: 1.3em; /* Dimensioni più moderne */
  line-height: 1.2;
  font-weight:bold;
  padding-left:0;
  text-align: center; /* Allineamento al centro per coerenza */
  text-transform:uppercase;
  color: #3C8CBE; /* Colore più moderno */
}

#login h4{
  color:#C23838;
  font-weight:bold;
  margin-top: 10px;
}

/* Sidebar2 */
#sidebar2 {
  float: right; /* Mantenuto per desktop */
  width: 300px;
  padding: 20px;
  background-color: #f0f0f0;
  border-radius: 5px;
  margin-bottom: 30px;
}

#sidebar2 ul {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left;
}

#sidebar2 li {
  background: #3C8CBE; /* Manteniamo lo sfondo blu */
  padding: 10px 15px;
  margin-bottom: 5px;
  border-radius: 3px;
  color: #D7E6E6;
}

#sidebar2 li ul {
  line-height: 1.5;
  padding: 15px;
  background: #3C8CBE;
  margin-bottom: 10px;
  list-style: none; /* Sovrascrivi il list-style: square outside; */
}

#sidebar2 ul li ul {
  list-style: square outside; /* Riabilita i quadrati per i sottolivelli */
  color: #F9C383; /* Colore per i pallini */
}

#sidebar2 li li {
  padding: 5px 0;
  background: none;
  color: #D7E6E6;
}

#sidebar2 h2, #sidebar2 h3 {
  width: auto;
  margin: 0 0 15px 0;
  padding: 10px 0;
  background: none; /* Rimuovi immagine di sfondo */
  border-bottom: 2px solid #3C8CBE;
  text-transform: uppercase;
  font-family: 'Montserrat', serif;
  color: #3C8CBE;
  text-align: center;
}

#sidebar2 h3 {
  color: #FA700A;
  text-decoration: none; /* Rimuovi 'blink' */
}

#sidebar2 h5 {
  width: auto;
  font-family: 'Montserrat', serif;
  color: #FA700A;
  text-decoration: none; /* Rimuovi 'blink' */
  text-align: center;
  margin-bottom: 15px;
}

#sidebar2 a {
  color: #FFFFFF;
  text-decoration: none;
  display: block;
  transition: color 0.3s ease;
}
#sidebar2 a:hover {
  color: #F9C383;
  text-decoration: underline;
}

#piepagina {clear:both;} /* Mantenuto per clear dei float */

/* Footer */
#footer {
  width: 100%; /* Rendi il footer responsivo */
  max-width: 900px; /* Mantieni la max-width originale */
  bottom: 0px;
  margin: 40px auto 0 auto; /* Centra il footer e dagli spazio sopra */
  padding: 20px 15px; /* Più padding */
  background-color: #2c3e50; /* Un colore scuro per il footer */
  color: #f8f8f8; /* Testo chiaro */
  text-align: center;
  font-size: 0.9em;
  line-height: 1.5;
  border-radius: 5px; /* Angoli arrotondati */
}

#footer p {
  margin: 0;
  padding: 0;
}

#footer a {
  color: #8bb7ec;
}

#footer a:hover {
  color: #fff;
  text-decoration: underline;
}

/* --- Media Queries per la Responsività --- */
@media (max-width: 768px) {
  #page, #content, #header, #footer {
    max-width: 100%;
    padding: 10px 15px;
    margin-left: 0;
    margin-right: 0;
  }

  /* I div con posizione fixed possono creare problemi su mobile, li rendiamo statici */
  #contfull .mnu, #contfull .mnu2, #contfull .mnul {
    position: static; /* Rimuovi posizione fissa */
    width: 100%; /* Occupa tutta la larghezza */
    margin-bottom: 20px; /* Spazio tra i menu */
    right: auto;
    left: auto;
  }

  /* Le sidebar e il contenuto principale si impilano */
  #sidebar1, #sidebar2, .post {
    float: none; /* Rimuovi float */
    width: 100%; /* Occupa tutta la larghezza */
    padding: 15px;
  }

  /* I titoli potrebbero essere leggermente più piccoli su mobile */
  h1 { font-size: 2.2em; }
  h2 { font-size: 1.6em; }
  h3 { font-size: 1.3em; }

  /* Rimuovi completamente lo sfondo del body su schermi piccoli se non si adatta bene */
  body {
    background-image: none;
    background-color: #f8f8f8;
  }
}