/* ===== Margine di Cantiere (la testata) ===== */
:root{--carta:#FBFAF7;--carta-2:#EEF2EF;--inchiostro:#0E2A23;--testo:#23302C;--grigio:#5A6661;--linea:#D8DFDB;--verde:#1C5A45;--oro:#B8892B;--rosso:#9C2A1E}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--carta);color:var(--testo);font:400 18px/1.65 Inter,system-ui,sans-serif}
a{color:inherit}
img{max-width:100%;display:block}
.contenitore{max-width:1180px;margin:0 auto;padding:0 24px}

.testata{background:var(--inchiostro);color:#fff}
.testata .riga{display:flex;align-items:center;justify-content:space-between;padding:18px 0;gap:16px}
.marchio{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}
.marchio i{width:40px;height:40px;border-radius:6px;background:var(--oro);display:flex;align-items:flex-end;justify-content:center;gap:4px;padding:8px 7px}
.marchio i span{width:6px;background:var(--inchiostro);border-radius:1px}
.marchio b{font:700 29px/1 Newsreader,Georgia,serif;letter-spacing:-.01em}
.motto{font-size:14px;color:#B9C7C1;margin-top:4px}
.cerca{font-size:14px;color:#B9C7C1;border:1px solid #2F4A42;border-radius:20px;padding:8px 16px;white-space:nowrap}
nav.menu{background:#fff;border-bottom:1px solid var(--linea)}
nav.menu ul{list-style:none;margin:0 auto;padding:0 24px;max-width:1180px;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
nav.menu a{display:block;padding:14px 10px;font:600 15px/1 Inter;text-decoration:none;color:var(--inchiostro);white-space:nowrap;border-bottom:3px solid transparent}
nav.menu a.attivo{border-color:var(--oro)}

.griglia{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;padding-top:28px}
.briciole{font-size:14px;color:var(--grigio)}
.briciole a{color:var(--grigio)}
.etichetta{display:inline-block;font:700 12px/1 Inter;letter-spacing:.09em;text-transform:uppercase;color:var(--verde);background:var(--carta-2);padding:6px 8px;border-radius:3px;margin:18px 0 12px}
h1{font:700 44px/1.1 Newsreader,Georgia,serif;color:var(--inchiostro);margin:0 0 14px;letter-spacing:-.015em}
.sommario{font-size:20px;line-height:1.5;color:var(--grigio);margin:0 0 18px}
.firma{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:15px;color:var(--grigio);margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--linea)}
.firma b{color:var(--inchiostro)}
.in-breve{border-left:5px solid var(--oro);background:#fff;padding:18px 22px;margin:0 0 28px;box-shadow:0 1px 0 var(--linea)}
.in-breve small{display:block;font:700 12px/1 Inter;letter-spacing:.09em;text-transform:uppercase;margin-bottom:8px;color:var(--verde)}
.in-breve p{margin:0}
.foto-apertura{margin:0 0 28px}
.foto-apertura img{border-radius:4px;aspect-ratio:16/9;object-fit:cover;width:100%}
.foto-apertura figcaption{font-size:14px;color:var(--grigio);margin-top:8px}
article h2{font:700 29px/1.2 Newsreader,Georgia,serif;color:var(--inchiostro);margin:40px 0 12px}
article p{margin:0 0 16px}
table.conto{width:100%;border-collapse:collapse;font-size:16px;margin:8px 0 6px;background:#fff;border:1px solid var(--linea)}
table.conto th,table.conto td{padding:10px 12px;border-bottom:1px solid var(--linea);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
table.conto th:first-child,table.conto td:first-child{text-align:left}
table.conto thead th{background:var(--inchiostro);color:#fff;font-weight:600;font-size:14px}
table.conto tr.saldo td{font-weight:700;color:var(--inchiostro);background:var(--carta-2)}
table.conto td.sotto{color:var(--rosso);font-weight:700}
.tabella-scorre{overflow-x:auto}
.nota{font-size:14px;color:var(--grigio)}
article ol.passi{padding-left:22px;margin:0 0 16px}
article ol.passi li{margin-bottom:10px}
.strumento{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--linea);border-radius:6px;padding:18px 20px;margin:24px 0}
.strumento .icona{width:46px;height:46px;border-radius:6px;background:var(--verde);color:#fff;display:grid;place-items:center;font:700 15px Inter}
.strumento b{display:block;color:var(--inchiostro)}
.strumento span{font-size:15px;color:var(--grigio)}
.strumento a{font:600 15px Inter;color:#fff;background:var(--verde);padding:10px 14px;border-radius:4px;text-decoration:none;white-space:nowrap}
details{border-top:1px solid var(--linea);padding:12px 0}
details:last-of-type{border-bottom:1px solid var(--linea)}
summary{font-weight:700;color:var(--inchiostro);cursor:pointer}
details p{margin:8px 0 0}
.fonti{font-size:15px}
.fonti li{margin-bottom:6px}

aside.colonna{display:flex;flex-direction:column;gap:28px}
.scheda{background:#fff;border:1px solid var(--linea);border-radius:6px;padding:18px}
.scheda h3{font:700 19px/1.3 Newsreader,Georgia,serif;margin:0 0 10px;color:var(--inchiostro)}
.autore{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.autore .tondo{width:52px;height:52px;border-radius:50%;background:var(--carta-2);display:grid;place-items:center;font:700 20px Newsreader;color:var(--inchiostro)}
.scheda p{font-size:15px;margin:0 0 8px}
.scheda ul{margin:0;padding:0;list-style:none;font-size:15px}
.scheda ul li{padding:8px 0;border-top:1px solid var(--linea)}
.scheda ul li:first-child{border-top:0;padding-top:0}
.scheda ul li small{display:block;color:var(--grigio);font-size:13px}

footer.piede{background:var(--inchiostro);color:#B9C7C1;margin-top:64px;padding:26px 0 40px;font-size:14px}
footer.piede .riga{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}
footer.piede b{color:#fff}

@media (max-width:1040px){
  .griglia{grid-template-columns:minmax(0,1fr);gap:0}
  aside.colonna{display:none}
}
@media (max-width:720px){
  body{font-size:17px}
  .contenitore{padding:0 16px}
  .marchio b{font-size:24px}
  .marchio i{width:34px;height:34px;padding:7px 6px}
  .cerca{display:none}
  nav.menu ul{padding:0 10px}
  h1{font-size:31px}
  .sommario{font-size:18px}
  article h2{font-size:25px}
  table.conto{font-size:14px}
  table.conto th,table.conto td{padding:8px 8px}
  .strumento{grid-template-columns:auto 1fr}
  .strumento a{grid-column:1/-1;text-align:center}
}
/* le righe della testata e del piede tengono i margini laterali */
.contenitore.riga{padding-left:24px;padding-right:24px}
@media (max-width:720px){.contenitore.riga{padding-left:16px;padding-right:16px}}

/* ===== Aggiunte: link veri, home, sezioni, pagine semplici ===== */
.marchio:hover b{color:#F3E7C9}
nav.menu a:hover{border-color:var(--linea)}
nav.menu a.attivo:hover{border-color:var(--oro)}
.firma time{color:var(--grigio)}
.foto-apertura .credito{font-size:12px;color:var(--grigio)}
article ul.elenco,article>ul{padding-left:22px;margin:0 0 16px}
article ul.elenco li,article>ul li{margin-bottom:8px}
.citazione{border-left:4px solid var(--verde);padding:4px 0 4px 18px;font:500 21px/1.45 Newsreader,Georgia,serif;color:var(--inchiostro);margin:24px 0}
table.tabella{width:100%;border-collapse:collapse;font-size:16px;margin:8px 0 20px;background:#fff;border:1px solid var(--linea)}
table.tabella th,table.tabella td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--linea);vertical-align:top}
table.tabella th{background:var(--inchiostro);color:#fff;font-weight:600;font-size:14px}
.aggiornato{font-size:14px;color:var(--grigio);border-top:1px solid var(--linea);padding-top:12px;margin-top:24px}
.leggi-anche{margin-top:36px;background:#fff;border:1px solid var(--linea);border-radius:6px;padding:16px 20px}
.leggi-anche h2{font:700 19px/1.3 Newsreader,Georgia,serif!important;margin:0 0 6px!important}
.leggi-anche ul{list-style:none;padding:0;margin:0}
.leggi-anche li{border-top:1px solid var(--linea);padding:10px 0;font-weight:600;font-size:16px}
.leggi-anche li:first-child{border-top:0}
.leggi-anche a{text-decoration:none;color:var(--verde)}
.leggi-anche a:hover{text-decoration:underline}
.scheda ol{margin:0;padding:0;list-style:none;counter-reset:n;font-size:15px}
.scheda ol li{counter-increment:n;display:grid;grid-template-columns:26px 1fr;padding:9px 0;border-top:1px solid var(--linea);line-height:1.35}
.scheda ol li:first-child{border-top:0;padding-top:0}
.scheda ol li::before{content:counter(n);font:700 20px/1 Newsreader,Georgia,serif;color:var(--oro)}
.scheda ol a{text-decoration:none;font-weight:600;color:var(--inchiostro)}
.scheda ol a:hover{color:var(--verde)}
.scheda ol small{display:block;color:var(--grigio);font-size:12px;text-transform:uppercase;letter-spacing:.05em;margin-top:3px}

/* home */
.apertura{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;padding-bottom:28px;border-bottom:1px solid var(--linea)}
.apertura a{text-decoration:none;color:inherit}
.apertura img{aspect-ratio:16/10;object-fit:cover;width:100%;border-radius:4px}
.apertura h2{font:700 36px/1.1 Newsreader,Georgia,serif;color:var(--inchiostro);margin:6px 0 12px;letter-spacing:-.01em}
.apertura a:hover h2,.lista-art a:hover h3{color:var(--verde)}
.apertura p{margin:0 0 10px;color:var(--grigio)}
.data{font-size:13px;color:var(--grigio)}
.sezione-home{margin-top:36px}
.sezione-home>h2{font:700 15px/1 Inter,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--inchiostro);border-top:3px solid var(--oro);padding-top:12px;margin:0 0 4px}
.sezione-home>h2 a{text-decoration:none}
.sezione-home>h2 a:hover{color:var(--verde)}
.lista-art{list-style:none;margin:0;padding:0}
.lista-art li{border-bottom:1px solid var(--linea)}
.lista-art a{display:grid;grid-template-columns:160px 1fr;gap:18px;padding:16px 0;text-decoration:none;color:inherit}
.lista-art img{width:160px;height:106px;object-fit:cover;border-radius:3px}
.lista-art h3{font:700 22px/1.2 Newsreader,Georgia,serif;color:var(--inchiostro);margin:0 0 6px}
.lista-art p{margin:0 0 6px;font-size:16px;color:var(--grigio)}
.tutti{margin:12px 0 0;font:600 14px/1 Inter,sans-serif}
.tutti a{color:var(--verde);text-decoration:none}
.tutti a:hover{text-decoration:underline}
.titolo-sezione{margin-top:14px}
.conteggio{font-size:14px;color:var(--grigio);border-bottom:3px solid var(--oro);padding-bottom:10px;margin:0}

/* pagine semplici: chi siamo, privacy, cookie */
.pagina-semplice{max-width:780px;padding-top:28px}
.pagina-semplice h2{font:700 27px/1.2 Newsreader,Georgia,serif;color:var(--inchiostro);margin:36px 0 12px}
.pagina-semplice p{margin:0 0 16px}
.pagina-semplice code{font-size:15px;background:var(--carta-2);padding:1px 5px;border-radius:3px}
footer.piede a{color:#DCE5E1}

@media (max-width:720px){
  .apertura{grid-template-columns:1fr;gap:14px}
  .apertura h2{font-size:28px}
  .lista-art a{grid-template-columns:96px 1fr;gap:12px}
  .lista-art img{width:96px;height:72px}
  .lista-art h3{font-size:19px}
  .lista-art p{display:none}
  table.tabella{font-size:15px}
  .pagina-semplice h2{font-size:24px}
}
