/* Layout pagine con template "Aurora - Pagina pulita" */

.m2-aurora-main{
  max-width:900px;
  margin:0 auto;
  padding:32px 20px 60px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

/* Il font va imposto anche ai figli: alcuni CSS di plugin
   (visual composer, moduli) dichiarano un serif piu' specifico. */
.m2-aurora-main h1,
.m2-aurora-main h2,
.m2-aurora-main h3,
.m2-aurora-main p,
.m2-aurora-main li,
.m2-aurora-main span,
.m2-aurora-main div{
  font-family:inherit;
}

.m2-aurora-hero h1{
  font-size:clamp(26px,4vw,38px);
  line-height:1.2;
  margin:0 0 24px;
}

.m2-aurora-contenuto{
  font-size:17px;
  line-height:1.7;
  color:rgba(255,255,255,.88);
}

.m2-aurora-contenuto h2{
  font-size:clamp(20px,3vw,26px);
  margin:32px 0 12px;
}

.m2-aurora-contenuto p{
  margin:0 0 16px;
}

.m2-aurora-contenuto img{
  max-width:100%;
  height:auto;
  display:block;
  margin:0 auto 24px;
  border-radius:10px;
}

@media (max-width:600px){
  .m2-aurora-main{padding:20px 16px 40px}
  .m2-aurora-contenuto{font-size:16px}
}

/* ---- TABELLE DATI (modulo stazioni) ----
   Struttura: thead a due righe con colspan/rowspan, table senza classi. */

.m2-aurora-contenuto table{
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
  font-family:inherit;
  font-size:15px;
  background:#f7f9fb;
}

.m2-aurora-contenuto table th,
.m2-aurora-contenuto table td{
  color:#1b2733;
  border:1px solid rgba(0,0,0,.40);
  padding:10px 8px;
  line-height:1.4;
  text-align:center;
  vertical-align:middle;
  overflow-wrap:break-word;
}

.m2-aurora-contenuto table th{
  color:#44586e;
  font-weight:600;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.3px;
  background:#eef2f6;
}

/* prima colonna piu larga, nomi a sinistra */
.m2-aurora-contenuto table th:first-child,
.m2-aurora-contenuto table td:first-child{
  text-align:left;
  width:19%;
  padding-left:12px;
}

/* Mobile: impilamento verticale compatto, una scheda per stazione */
@media (max-width:760px){
  .m2-aurora-contenuto table,
  .m2-aurora-contenuto table tbody,
  .m2-aurora-contenuto table tr,
  .m2-aurora-contenuto table td{
    display:block;
    width:auto !important;
  }
  .m2-aurora-contenuto table thead{display:none}

  .m2-aurora-contenuto table tr{
    margin:0 0 14px;
    border:1px solid rgba(0,0,0,.35);
    border-radius:8px;
    overflow:hidden;
    background:#f7f9fb;
  }

  .m2-aurora-contenuto table td{
    display:flex;
    justify-content:space-between;
    align-items:baseline;
    gap:10px;
    border:none;
    border-bottom:1px solid rgba(0,0,0,.10);
    padding:6px 12px;
    font-size:14px;
    text-align:right;
  }
  .m2-aurora-contenuto table td:last-child{border-bottom:none}

  /* nome stazione come titolo della scheda */
  .m2-aurora-contenuto table td:first-child{
    background:#e7edf3;
    font-weight:700;
    font-size:15px;
    justify-content:flex-start;
    text-align:left;
    padding:9px 12px;
  }
}

/* Mobile: tolgo lo spazio vuoto sopra la prima scheda */
@media (max-width:760px){
  .m2-aurora-contenuto table{margin-top:0}
  .m2-aurora-contenuto table tr:first-child{margin-top:0}
  .m2-aurora-contenuto table caption{display:none}
}

/* Archivio articoli /news/ */
.m2-news-griglia{display:grid;gap:26px}
.m2-news-item{display:flex;gap:16px;align-items:flex-start}
.m2-news-thumb img{width:180px;height:auto;border-radius:8px;display:block}
.m2-news-testo h2{font-size:19px;margin:0 0 6px;line-height:1.3}
.m2-news-testo h2 a{color:inherit;text-decoration:none}
.m2-news-testo h2 a:hover{color:#4AB9FF}
.m2-news-data{font-size:13px;opacity:.6;margin:0 0 8px}
.m2-news-testo p{font-size:15px;margin:0}
.m2-news-paginazione{margin:36px 0 0;display:flex;gap:10px;flex-wrap:wrap}
.m2-news-paginazione a,
.m2-news-paginazione span{
  padding:7px 12px;border:1px solid rgba(255,255,255,.20);
  border-radius:6px;text-decoration:none;color:inherit;font-size:14px;
}
.m2-news-paginazione .current{background:rgba(255,255,255,.12)}
@media (max-width:600px){
  .m2-news-item{flex-direction:column}
  .m2-news-thumb img{width:100%}
}

/* Archivio articoli /news/ */
.m2-news-griglia{display:grid;gap:26px}
.m2-news-item{display:flex;gap:16px;align-items:flex-start}
.m2-news-thumb img{width:180px;height:auto;border-radius:8px;display:block}
.m2-news-testo h2{font-size:19px;margin:0 0 6px;line-height:1.3}
.m2-news-testo h2 a{color:inherit;text-decoration:none}
.m2-news-testo h2 a:hover{color:#4AB9FF}
.m2-news-data{font-size:13px;opacity:.6;margin:0 0 8px}
.m2-news-testo p{font-size:15px;margin:0}
.m2-news-paginazione{margin:36px 0 0;display:flex;gap:10px;flex-wrap:wrap}
.m2-news-paginazione a,
.m2-news-paginazione span{
  padding:7px 12px;border:1px solid rgba(255,255,255,.20);
  border-radius:6px;text-decoration:none;color:inherit;font-size:14px;
}
.m2-news-paginazione .current{background:rgba(255,255,255,.12)}
@media (max-width:600px){
  .m2-news-item{flex-direction:column}
  .m2-news-thumb img{width:100%}
}

/* Articolo singolo */
.m2-articolo-occhiello{font-size:13px;text-transform:uppercase;letter-spacing:.6px;margin:0 0 10px}
.m2-articolo-occhiello a{color:#4AB9FF;text-decoration:none}
.m2-articolo-meta{font-size:13px;opacity:.6;margin:10px 0 0}
.m2-articolo-copertina{margin:24px 0}
.m2-articolo-copertina img{width:100%;height:auto;border-radius:10px;display:block}
.m2-articolo-tag{margin:36px 0 0;display:flex;gap:8px;flex-wrap:wrap}
.m2-articolo-tag a{
  font-size:13px;padding:5px 11px;border-radius:20px;text-decoration:none;
  background:rgba(255,255,255,.08);color:rgba(255,255,255,.85);
}

/* Articoli vecchi: il contenuto ha colori inline scritti per fondo chiaro */
.m2-aurora-contenuto [style*="color:#000"],
.m2-aurora-contenuto [style*="color: #000"],
.m2-aurora-contenuto [style*="color:black"],
.m2-aurora-contenuto [style*="color: black"],
.m2-aurora-contenuto font[color]{
  color:rgba(255,255,255,.88) !important;
}
.m2-aurora-contenuto td,
.m2-aurora-contenuto th{color:rgba(255,255,255,.88)}

/* Articoli con testo evidenziato: il fondo giallo/chiaro richiede testo scuro */
.m2-aurora-contenuto [style*="background"]{
  color:#1b2733 !important;
  padding:1px 4px;
  border-radius:3px;
}
/* ma il testo normale del contenuto resta chiaro */
.m2-aurora-contenuto p,
.m2-aurora-contenuto li,
.m2-aurora-contenuto strong,
.m2-aurora-contenuto span:not([style*="background"]){
  color:rgba(255,255,255,.88);
}

/* Forzatura: qualche CSS residuo sovrascrive il colore del testo */
.m2-aurora-contenuto,
.m2-aurora-contenuto p,
.m2-aurora-contenuto strong,
.m2-aurora-contenuto em,
.m2-aurora-contenuto h2,
.m2-aurora-contenuto h3,
.m2-aurora-contenuto li{
  color:rgba(255,255,255,.88) !important;
}
.m2-aurora-contenuto [style*="background"]{
  color:#1b2733 !important;
}

/* Ultima parola sul colore del testo negli articoli */
.m2-articolo,
.m2-articolo *:not([style*="background"]):not(a){
  color:rgba(255,255,255,.90) !important;
}
.m2-articolo a{color:#4AB9FF !important}
.m2-articolo [style*="background"]{color:#1b2733 !important}

/* Il testo degli articoli, con la massima specificita' possibile */
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto,
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto p,
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto strong,
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto h2,
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto h3,
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto li,
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto span{
  color:#ffffff !important;
}
html body.m2-aurora-page article.m2-articolo span[style*="background"]{
  color:#1b2733 !important;
}

/* Solo gli evidenziati GIALLI hanno testo scuro */
html body.m2-aurora-page article.m2-articolo [style*="yellow"]{
  color:#111 !important;
  font-weight:700;
  padding:1px 5px;
  border-radius:3px;
}

/* Testo scuro sugli evidenziati: selettore piu' specifico di quello generale */
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto span[style*="yellow"],
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto span[style*="orange"],
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto span[style*="red"],
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto strong span[style],
html body.m2-aurora-page main.m2-aurora-main article.m2-articolo div.m2-aurora-contenuto span[style*="background"]{
  color:#111111 !important;
  font-weight:700;
}

/* Titoli degli articoli in /news/ e negli archivi */
html body.m2-aurora-page .m2-news-testo h2,
html body.m2-aurora-page .m2-news-testo h2 a{
  color:#ffffff !important;
}
html body.m2-aurora-page .m2-news-testo p,
html body.m2-aurora-page .m2-news-data{
  color:rgba(255,255,255,.75) !important;
}
