
/* ─── RESET ──────────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --bg:        #ffffff;
  --text:      #111111;
  --muted:     #555555;
  --accent:    #cc4400;
  --line:      #cccccc;
  --nav-bg:    #000000;
  --nav-text:  #999999;
  --nav-hover: #ffffff;
  --col-l:     150px;   /* 110 × 1.2 */
  --nav-h:     48px;    /*  36 × 1.2 */
  /* passepartout e colore enfasi — invariati (dettaglio grafico) */
  --frame:     #d0d0d0;
  --frame-p:   6px;
  --frame-p-ev: 3px;
  --visited:   #8b6fa8;
}
html { scroll-behavior: smooth; }
body {
  background: #e8e8e8;
  color: var(--text);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  line-height: 1.5;
  min-height: 100vh;
}

/* ── LINK GLOBALI ───────────────────────────────────────────────
   Non visitati: grassetto, colore --frame (grigio enfasi).
   Visitati: viola leggero.
   NOTA EDITOR: stile link e stile paragrafo enfasi nel pannello eventi. */
a { color: var(--frame); font-weight: bold; text-decoration: none; }
a:hover { color: var(--accent); text-decoration: underline; }
a:visited { color: var(--frame); font-weight: bold; }

/* ── ECCEZIONI LINK: bio, evlk, contatti ── */
.bio-sub a               { color: var(--frame); font-weight: bold; }
.bio-sub a:visited       { color: var(--visited); font-weight: normal; }
.evlk                    { color: var(--accent) !important; font-weight: bold; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; }
.evlk:visited            { color: var(--visited) !important; }
.c-title a               { color: var(--text); font-weight: bold; }
.c-title a:hover         { color: var(--accent); }
.c-title a:visited       { color: var(--visited); }
.c-link, .c-link:link    { color: var(--accent); font-weight: bold; }
.c-link:visited          { color: var(--visited); }

img { display: block; }

/* ─── WRAPPER ────────────────────────────────────────────────── */
#wrapper {
  max-width: 960px;
  margin: 0;
  background: var(--bg);
  box-shadow: 0 0 8px rgba(0,0,0,.25);
  min-height: 100vh;
}

/* ─── HEADER NAV ─────────────────────────────────────────────── */
#hd {
  background: var(--nav-bg);
  display: flex; align-items: center;
  height: var(--nav-h); padding: 0 12px; gap: 0;
  position: relative;   /* ancora per i dropdown assoluti */
  overflow: visible;    /* permette ai dropdown di uscire */
}
.site-title {
  font-size: 16px; font-weight: bold; letter-spacing: .12em;   /* 13×1.2 */
  color: #fff !important; white-space: nowrap; margin-right: 19px; cursor: pointer;
}
#mnav { display: flex; align-items: center; flex: 1; }
/* .ni NON ha position:relative — il .dd si ancora a #hd (che ha position:relative) */
.ni { position: static; }

/* dropdown — il posizionamento è interamente gestito da JS (positionDD).
   Il CSS imposta solo display, z-index e direzione.               */
.dd {
  display: none;
  position: absolute;
  top: calc(var(--nav-h) - 3px); /* 3px più in alto */
  left: 0;
  background: transparent;
  z-index: 300;
  flex-direction: row;
  align-items: center;
  white-space: nowrap;
  padding-top: 4px;       /* spaziatura visiva senza gap hover */
}
.ni:hover .dd { display: flex; }

/* ponte invisibile sopra il dd che copre qualsiasi micro-gap residuo
   e i percorsi diagonali del mouse verso le voci laterali            */
.dd::before {
  content: '';
  position: absolute;
  top: -6px;
  left: -30px;
  right: -30px;
  height: 6px;
  background: transparent;
}
.ni:hover .dd { display: flex; }

.dd a,
.dd a:link,
.dd a:visited {
  display: block;
  padding: 4px 8px;
  font-size: 14px;               /* stesso della nav principale */
  letter-spacing: .07em;
  text-transform: uppercase;     /* maiuscolo come richiesto */
  color: #999 !important;
  font-weight: normal !important;
  text-decoration: none !important;
  background: transparent;
  transition: color .15s;
  white-space: nowrap;
}
.dd a:hover { color: #111 !important; text-decoration: none !important; }

/* separatore pipe tra voci */
.dd a + a::before {
  content: ' | ';
  color: #e63418;
  font-weight: normal;
}

/* tutte le voci: BIANCO di default, sempre, override di qualsiasi regola globale */
.ni > a,
.ni > a:link,
.ni > a:visited,
.ni > span {
  display: block; padding: 0 12px; line-height: var(--nav-h);   /* 10px→12px, 10px→12px */
  color: #fff !important;
  font-weight: bold !important;
  cursor: pointer;
  font-size: 14px; letter-spacing: .13em; text-transform: uppercase;  /* 10→12 */
  transition: color .15s; white-space: nowrap; text-decoration: none !important;
}

/* hover: GRIGIO */
.ni > a:hover,
.ni > span:hover,
.ni:hover > span {
  color: #999 !important;
}

/* sezione aperta/attiva: GRIGIO (stesso tono hover) */
.ni.active > a,
.ni.active > a:link,
.ni.active > a:visited,
.ni.active > span { color: #999 !important; }

/* separatore tra voci nav: border-left invece di ::before posizionato */
.ni + .ni > a,
.ni + .ni > span {
  border-left: 1px solid #e63418;
}
/* sovrascrive il ::before che non funziona più senza position:relative su .ni */
.ni + .ni > a::before, .ni + .ni > span::before { content: none; }

/* separatori pipe tra voci principali */
.flags {
  display: flex; align-items: center; gap: 5px;
  padding-left: 10px; margin-left: 8px;
  border-left: 1px solid #e63418; flex-shrink: 0;
}
.fl { width: 18px; height: 12px; object-fit: cover; cursor: pointer; opacity: .5; border: 1px solid transparent; transition: opacity .15s; }
.fl:hover, .fl.on { opacity: 1; border-color: #555; }
.ham { display: none; flex-direction: column; gap: 4px; background: none; border: none; cursor: pointer; padding: 6px; margin-left: auto; flex-shrink: 0; }
.ham span { display: block; width: 18px; height: 1px; background: #888; transition: all .2s; }
#mobnav { display: none; flex-direction: column; background: #111; border-bottom: 1px solid #333; padding: 4px 0; }
#mobnav.open { display: flex; }
#mobnav a, #mobnav .mh { display: block; padding: 7px 16px; font-size: 12px; font-weight: bold; letter-spacing: .12em; text-transform: uppercase; color: #888; }
#mobnav .mh { color: #ccc; padding-top: 10px; font-size: 11px; }
#mobnav a:hover { color: #fff; text-decoration: none; }
#mobnav .ms a { padding-left: 28px; }

/* ─── LAYOUT 2 COLONNE ───────────────────────────────────────── */
#layout {
  display: grid;
  grid-template-columns: var(--col-l) 1fr;
  min-height: calc(100vh - var(--nav-h));
  align-items: start;
}

/* ── COLONNA SINISTRA ARANCIONE ── */
#cleft {
  background: #e63418;
  position: sticky; top: var(--nav-h);
  height: calc(100vh - var(--nav-h));
  overflow: hidden;
  display: flex; flex-direction: column; align-items: center;
}
.sec-label {
  writing-mode: vertical-rl; text-orientation: mixed;
  transform: rotate(180deg);
  font-size: 16px; font-weight: bold; letter-spacing: .18em; text-transform: lowercase;  /* 13→16 */
  color: rgba(255,255,255,.85); padding: 14px 0 10px; flex-shrink: 0;  /* 12→14, 8→10 */
  font-family: Arial Narrow, Arial, sans-serif; transition: opacity .3s;
}
#cleft-img-wrap { flex: 1; width: 100%; overflow: hidden; position: relative; }
.si {
  display: none; width: 100%; height: 100%;
  object-fit: contain; object-position: top center;
  position: absolute; inset: 0;
  opacity: 0; transition: opacity .5s;
}
.si.cur { display: block; }
.si.vis { opacity: 1; }
.sig {
  font-size: 13px; font-weight: bold; letter-spacing: .22em; text-transform: uppercase;  /* 11→13 */
  color: rgba(255,255,255,.7); padding: 10px 0 12px;   /* 8→10, 10→12 */
  font-family: Arial Narrow, Arial, sans-serif; flex-shrink: 0;
}

/* ── COLONNA DESTRA ── */
#cright { background: var(--bg); padding: 22px 29px 58px; min-width: 0; border-left: 1px solid var(--line); }  /* 18→22, 24→29, 48→58 */

/* ─── SEZIONI ─────────────────────────────────────────────────── */
.sec { display: none; }
.sec.on { display: block; }
.stit { font-size: 17px; font-weight: bold; color: var(--accent); margin-bottom: 17px; }  /* 14→17, 14→17 */

/* ── HOME ── */
#sec-home { padding-top: 8px; color: var(--muted); font-size: 11px; letter-spacing: .08em; }

/* ══════════════════════════════════════════════════════════════
   BIO — foto editoriali senza passepartout (non sono thumbnail linkate)
   ══════════════════════════════════════════════════════════════ */
.bio-text { font-size: 12px; line-height: 1.62; color: var(--text); text-align: justify; }
.bio-b1 { overflow: hidden; margin-bottom: 24px; }                         /* 20→24 */
.bio-photo-r { float: right; width: 210px; margin: 6px 0 12px 22px; }        /* 175→210, 10→12, 18→22 */
.bio-photo-r img { width: 100%; display: block; }
.bio-photo-r figcaption { font-size: 12px; color: var(--muted); margin-top: 5px; text-align: center; font-style: italic; }
.bio-b2 { overflow: hidden; margin-bottom: 24px; }                         /* 20→24 */
.bio-photo-l { float: left; width: 276px; margin: 6px 22px 12px 0; }         /* 230→276, 18→22, 10→12 */
.bio-photo-l img { width: 100%; display: block; }
.bio-photo-l figcaption { font-size: 12px; color: var(--muted); margin-top: 5px; text-align: center; font-style: italic; }
.bio-sub { margin-top: 17px; }                                              /* 14→17 */
.bio-sub-h { font-size: 14px; font-weight: bold; color: var(--accent); letter-spacing: .04em; margin-bottom: 7px; text-transform: uppercase; }  /* 12→14, 6→7 */
.bio-sub p { font-size: 12px; line-height: 1.6; color: var(--text); }      /* testo paragrafo: invariato */
.bio-sub p strong { color: var(--text); }

/* ══════════════════════════════════════════════════════════════
   CARD UNIVERSALE — usata da: Biblio, Pubblicazioni recenti, Video, Gallery-list
   
   Layout: immagine in cima con passepartout, testo sotto.
   Misura base: 130px larghezza colonna immagine con passepartout 6px.
   Grid 2 colonne, gap 1px su linea interna.
   +30% rispetto alla precedente .pg: img 75px → 75px*1.3=~98px (arrotondiamo a 100px)
   ══════════════════════════════════════════════════════════════ */

/* griglia 2 colonne per card */
.card-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
}
/* singola card */
.card {
  display: flex;
  gap: 0;
  padding: 14px 17px 19px 0;          /* 12→14, 14→17, 16→19 */
  border-bottom: 1px solid var(--line);
  align-items: flex-start;
}
.card-grid .card:nth-child(odd)  { padding-right: 17px; border-right: 1px solid var(--line); }  /* 14→17 */
.card-grid .card:nth-child(even) { padding-left: 17px; padding-right: 0; }

/* wrapper immagine con passepartout */
.cimg {
  position: relative;
  width: 120px;         /* 100 × 1.2 */
  flex-shrink: 0;
  margin-right: 14px;   /* 12→14 */
  background: var(--frame);
  overflow: hidden;
  align-self: flex-start;
}
/* shimmer dentro il passepartout */
.cimg::before {
  content: ''; position: absolute; inset: var(--frame-p);
  background: linear-gradient(90deg, #d0d0d0 0%, #e8e8e8 50%, #d0d0d0 100%);
  background-size: 200% 100%;
  animation: sh 1.8s infinite; transition: opacity .3s;
}
.cimg.ok::before { opacity: 0; }
.cimg img {
  display: block;
  width: calc(100% - var(--frame-p) * 2);
  margin: var(--frame-p);
  opacity: 0; transition: opacity .3s;
}
.cimg img.v { opacity: 1; }

/* testo card */
.ctxt { flex: 1; min-width: 0; }
.c-year  { font-size: 13px; color: var(--muted); margin-bottom: 2px; }         /* 10.5→13 */
.c-title { font-size: 14px; font-weight: bold; color: var(--text); line-height: 1.35; margin-bottom: 4px; }  /* 12→14 */
.c-title a { color: var(--text); font-weight: bold; }
.c-title a:hover { color: var(--accent); }
.c-title a:visited { color: var(--visited); }
.c-sub   { font-size: 13px; color: var(--muted); line-height: 1.45; }          /* 11→13 */
.c-link  { display: inline-block; margin-top: 7px; font-size: 12px; font-weight: bold; letter-spacing: .1em; text-transform: uppercase; color: var(--accent); }  /* 10→12, 6→7 */
.c-link:hover { text-decoration: underline; }
.c-link:visited { color: var(--visited); }

/* ── skeleton card ── */
.sk { display: flex; flex-direction: column; gap: 1px; }
.skr { background: #f5f5f5; padding: 14px; display: flex; gap: 12px; }  /* 12→14, 10→12 */
.skb { background: #e0e0e0; flex-shrink: 0; animation: sh 1.8s infinite; background-size: 200% 100%; }
@keyframes sh { 0%{background-position:200% 0} 100%{background-position:-200% 0} }

/* ══════════════════════════════════════════════════════════════
   EVENTI — 2 colonne, card orizzontale: thumb sinistra a tutta altezza, testo destra
   ══════════════════════════════════════════════════════════════ */
.ntabs { display: flex; gap: 0; border-bottom: 1px solid var(--line); margin-bottom: 19px; }  /* 16→19 */
.nt {
  background: none; border: none; border-bottom: 2px solid transparent;
  color: var(--muted); font-size: 12px; font-weight: bold; letter-spacing: .12em; text-transform: uppercase;  /* 10→12 */
  padding: 7px 17px 5px; cursor: pointer; margin-bottom: -1px;   /* 6→7, 14→17, 4→5 */
  transition: all .15s; font-family: Arial, Helvetica, sans-serif;
}
.nt:hover { color: var(--text); }
.nt.on { color: var(--accent); border-bottom-color: var(--accent); }

/* griglia 2 colonne — gap colorato crea linee divisorie */
.ev-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: var(--line);
}

/* singola card evento */
.evc {
  background: var(--bg);
  display: flex;
  flex-direction: row;
  align-items: stretch;
  min-height: 156px;   /* 130 × 1.2 */
}

/* immagine a sinistra a tutta altezza */
.ev-imgw {
  position: relative;
  width: 132px;        /* 110 × 1.2 */
  flex-shrink: 0;
  background: var(--frame);
  overflow: hidden;
  align-self: stretch;
}
.ev-imgw::before {
  content: ''; position: absolute; inset: var(--frame-p-ev);
  background: linear-gradient(90deg, #d0d0d0 0%, #e8e8e8 50%, #d0d0d0 100%);
  background-size: 200% 100%;
  animation: sh 1.8s infinite; transition: opacity .3s;
}
.ev-imgw.ok::before { opacity: 0; }
.ev-imgw img {
  position: absolute; inset: var(--frame-p-ev);
  width: calc(100% - var(--frame-p-ev) * 2);
  height: calc(100% - var(--frame-p-ev) * 2);
  object-fit: cover; opacity: 0; transition: opacity .3s;
}
.ev-imgw img.v { opacity: 1; }
.evc.no-img .ev-imgw { display: none; }

/* testo a destra */
.ev-body {
  flex: 1; min-width: 0;
  padding: 14px 17px;    /* 12→14, 14→17 */
  display: flex; flex-direction: column;
}
.ev-date  { font-size: 13px; color: var(--muted); margin-bottom: 5px; font-weight: bold; }  /* 10.5→13, 4→5 */
.ev-title { font-size: 14px; font-weight: bold; color: var(--text); line-height: 1.4; margin-bottom: 6px; }  /* 12→14, 5→6 */
.ev-desc  { font-size: 12px; color: var(--muted); line-height: 1.55; }  /* testo: 11.5 invariato→12 (piccolo arrotondamento) */
.ev-loc   { font-size: 11px; color: #aaa; margin-top: 6px; font-style: italic; }   /* invariato */
.evlk     { display: inline-block; margin-top: 10px; }  /* 8→10 */

/* ══════════════════════════════════════════════════════════════
   GALLERY — passepartout su tutte le thumbnail
   ══════════════════════════════════════════════════════════════ */
.gfrow { display: flex; gap: 0; margin-bottom: 14px; border: 1px solid var(--line); width: fit-content; }  /* 12→14 */
.gf {
  background: none; border: none; border-right: 1px solid var(--line);
  color: var(--muted); font-size: 11px; font-weight: bold; letter-spacing: .1em; text-transform: uppercase;  /* 9.5→11 */
  padding: 6px 13px; cursor: pointer; transition: all .15s; font-family: Arial, Helvetica, sans-serif;  /* 5→6, 11→13 */
}
.gf:last-child { border-right: none; }
.gf:hover, .gf.on { background: var(--accent); color: #fff; }
.gg { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 8px; }  /* 100→120 */
.gc {
  position: relative; aspect-ratio: 1/1;
  overflow: hidden; background: var(--frame); cursor: pointer;
}
.gc::before {
  content: ''; position: absolute; inset: var(--frame-p);
  background: linear-gradient(90deg, #d0d0d0 0%, #e8e8e8 50%, #d0d0d0 100%);
  background-size: 200% 100%; animation: sh 1.8s infinite; z-index: 1; transition: opacity .3s;
}
.gc.ok::before { opacity: 0; pointer-events: none; }
.gc img {
  position: absolute; inset: var(--frame-p);
  width: calc(100% - var(--frame-p) * 2);
  height: calc(100% - var(--frame-p) * 2);
  object-fit: cover; opacity: 0; transition: opacity .3s;
}
.gc.ok img { opacity: 1; }
.gc:hover img { filter: brightness(1.08); }

/* ══════════════════════════════════════════════════════════════
   BIBLIO — usa .card-grid / .card
   ══════════════════════════════════════════════════════════════ */
.bfrow { display: flex; flex-wrap: wrap; gap: 0; margin-bottom: 17px; border: 1px solid var(--line); width: fit-content; }  /* 14→17 */
.bf {
  background: none; border: none; border-right: 1px solid var(--line);
  color: var(--muted); font-size: 11px; font-weight: bold; letter-spacing: .1em; text-transform: uppercase;  /* 9.5→11 */
  padding: 6px 12px; cursor: pointer; transition: all .15s; font-family: Arial, Helvetica, sans-serif;  /* 5→6, 10→12 */
}
.bf:last-child { border-right: none; }
.bf:hover, .bf.on { background: var(--accent); color: #fff; }

/* ══════════════════════════════════════════════════════════════
   VIDEO — usa .card-grid / .card, con icona play al posto del link
   ══════════════════════════════════════════════════════════════ */
.c-play {
  display: inline-flex; align-items: center; gap: 6px;
  margin-top: 7px; font-size: 12px; font-weight: bold;   /* 10→12, 5→6, 6→7 */
  letter-spacing: .1em; text-transform: uppercase; color: var(--accent);
}
.c-play::before { content: '▶'; font-size: 10px; }   /* 8→10 */
.c-play:hover { text-decoration: underline; }

/* ── CONTATTI ── */
.ctw { font-size: 12px; line-height: 1.75; color: var(--muted); max-width: 460px; }
.ctw a { color: var(--frame); font-weight: bold; }
.ctw a:hover { color: var(--accent); }
.ctw a:visited { color: var(--visited); font-weight: normal; }

/* ─── FOOTER ──────────────────────────────────────────────────── */
#ft {
  background: #f5f5f5; border-top: 1px solid var(--line);
  padding: 11px 17px; display: flex; justify-content: space-between; align-items: center;   /* 9→11, 14→17 */
  font-size: 12px; color: #aaa; letter-spacing: .06em; flex-wrap: wrap; gap: 7px;            /* 10→12, 6→7 */
}
#ft a { font-weight: normal; color: #aaa; }

/* ─── MOBILE ──────────────────────────────────────────────────── */
@media (max-width: 680px) {
  :root { --col-l: 0px; }
  #mnav, .flags { display: none; }
  .ham { display: flex; }
  #layout { grid-template-columns: 1fr; }
  #cleft { position: relative; top: 0; height: 108px; flex-direction: row; align-items: center; padding: 0 14px; }  /* 90→108, 12→14 */
  .sec-label { writing-mode: horizontal-tb; transform: none; font-size: 14px; padding: 0; margin-right: 12px; }     /* 12→14, 10→12 */
  #cleft-img-wrap { height: 108px; flex: 1; }   /* 90→108 */
  .sig { display: none; }
  .bio-photo-r { width: 156px; }   /* 130→156 */
  .bio-photo-l { width: 192px; }   /* 160→192 */
  .card-grid, .ev-grid { grid-template-columns: 1fr; }
  .card-grid .card:nth-child(odd) { padding-right: 0; border-right: none; }
  .card-grid .card:nth-child(even) { padding-left: 0; }
  .gg { grid-template-columns: repeat(auto-fill, minmax(80px, 1fr)); }
}

/* ── LIGHTBOX ────────────────────────────────────────────────── */
#lightbox {
  display: none; position: fixed; inset: 0;
  background: rgba(0,0,0,.93); z-index: 999;
  align-items: center; justify-content: center;
  flex-direction: column; padding: 20px;
}
#lightbox.open { display: flex; }
#lightbox img { max-width: 90vw; max-height: 84vh; object-fit: contain; }
#lb-cap { margin-top: 14px; font-size: 13px; color: #888; text-align: center; font-family: Arial, sans-serif; }
#lb-close { position: fixed; top: 16px; right: 20px; background: none;
  border: none; color: #888; font-size: 32px; cursor: pointer; line-height:1; }
#lb-close:hover { color: #fff; }
#lb-prev, #lb-next { position: fixed; top: 50%; transform: translateY(-50%);
  background: none; border: none; color: #888; font-size: 36px; cursor: pointer; padding: 20px; }
#lb-prev:hover, #lb-next:hover { color: #fff; }
#lb-prev { left: 0; }
#lb-next { right: 0; }

body.page-home { background: #e8e8e8; }
body.page-home #wrapper { box-shadow: none; position: relative; min-height: calc(100vh); }
body.page-home .site-title { display: none; }
body.page-home #cleft { display: none !important; }
body.page-home #layout { grid-template-columns: 1fr; }
body.page-home .dd a { color: #fff !important; font-size: 13px; font-weight: bold; }
body.page-home #hd { background: #000; justify-content: center; position: relative; }
body.page-home #mnav { margin-left: 0; padding-left: 120px;}
body.page-home #cright {
    background:  left top  #f90000;
    background-position: left -43px;  /* -43px = altezza nav */
    border: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(100vh - var(--nav-h));
    position: relative;
    z-index: 2;
}
body.page-home #cright img {
    margin-top: -25px;
}
body.page-home #ft { background: #f90000; border-top: none; color: #c00; display: none; }
@media (max-width: 680px) {
    body.page-home #hd::before { display: none; }

/* ─── ZONE LIBERE A DESTRA: nav nero, sotto rosso (WP) ───────── */
body:not(.page-home) { background: linear-gradient(to bottom, #000 0, #000 var(--nav-h), #e63418 var(--nav-h)); background-attachment: scroll; }

/* titoli con link esterno incorporato, in grassetto */
.ev-title a { font-weight: bold; text-decoration: none; }
.ev-title a:hover { text-decoration: underline; }
.cimg a { display: block; }

/* estensione colore a destra: nero in alto (menu), sotto il colore del content.
   Cambia --ext per pagina: es. body.page-gallery { --ext:#e63418; } */
html body:not(.page-home) { --ext: var(--bg); background: linear-gradient(to bottom, #000 0, #000 var(--nav-h), var(--ext) var(--nav-h)) !important; }

/* scheda dispari finale: occupa tutta la riga (niente cella grigia) */
.ev-grid > .evc:last-child:nth-child(odd) { grid-column: 1 / -1; }
/* anni/date uniformi in tutte le sezioni */
.ev-date, .c-year { font-size: 13px; color: var(--muted); font-weight: bold; margin-bottom: 4px; }
