/* Prodotto a Norma — foglio di stile unico del sito statico */
:root{
  --navy:#1E3A5F; --navy-scuro:#16304f; --rosso:#D0364C; --rosso-scuro:#b52d41;
  --teal:#12A5A0; --oro:#E8A20C;
  --ink:#22303e; --muted:#5b6b7b; --bg:#f7f9fb; --card:#ffffff; --line:#e3e9ef;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:Georgia,'Times New Roman',serif;color:var(--ink);background:var(--bg);line-height:1.65}
.sans{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif}
.wrap{max-width:720px;margin:0 auto;padding:0 24px}
.wrap.largo{max-width:1060px}

a{color:var(--navy)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{
  outline:3px solid var(--oro);outline-offset:2px;border-radius:4px}

/* ---- barra di navigazione ---- */
nav.barra{background:var(--navy);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif}
nav.barra .dentro{max-width:1060px;margin:0 auto;padding:10px 24px;display:flex;
  align-items:center;gap:18px;flex-wrap:wrap}
nav.barra a.marchio{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;
  font-size:1.02rem;letter-spacing:.4px;margin-right:auto}
nav.barra a.marchio img{width:30px;height:30px}
nav.barra a.voce{color:#c9d3dc;text-decoration:none;font-size:.95rem;padding:6px 2px;
  border-bottom:2px solid transparent}
nav.barra a.voce:hover{color:#fff}
nav.barra a.voce[aria-current="page"]{color:#fff;border-bottom-color:var(--oro)}

/* ---- testate ---- */
header.hero{background:var(--navy);color:#fff;padding:56px 0 48px;text-align:center}
header.hero img{width:88px;height:88px;margin-bottom:20px}
header.hero h1{font-size:2.2rem;letter-spacing:.5px;font-weight:normal}
header.hero p.tag{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  margin-top:14px;font-size:1.05rem;color:#c9d3dc;max-width:540px;margin-left:auto;margin-right:auto}

header.pagina{background:var(--navy);color:#fff;padding:36px 0 32px}
header.pagina h1{font-size:1.9rem;font-weight:normal;letter-spacing:.4px}
header.pagina p.tag{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  margin-top:10px;font-size:1rem;color:#c9d3dc;max-width:640px}

/* ---- sezioni e testo ---- */
section{padding:48px 0;border-bottom:1px solid var(--line)}
section:last-of-type{border-bottom:none}
h2{font-size:1.45rem;color:var(--navy);margin-bottom:18px;font-weight:normal}
h3{font-size:1.15rem;color:var(--navy);margin-bottom:10px;font-weight:normal}
p+p{margin-top:14px}
.muted{color:var(--muted)}
.nota{font-size:.92rem;color:var(--muted)}
ul.elenco{margin:14px 0 0 22px}
ul.elenco li+li{margin-top:8px}

.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:32px;margin-top:24px}
.card h3{font-weight:bold}

.btn{display:inline-block;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  background:var(--rosso);color:#fff;text-decoration:none;padding:14px 28px;border-radius:8px;
  font-size:1rem;font-weight:600;margin-top:16px;border:none;cursor:pointer}
.btn:hover{background:var(--rosso-scuro)}
.btn.secondario{background:var(--navy)}
.btn.secondario:hover{background:var(--navy-scuro)}

ul.mensile{list-style:none;margin-top:16px}
ul.mensile li{padding:10px 0 10px 30px;position:relative}
ul.mensile li::before{content:"§";position:absolute;left:4px;color:var(--teal);font-weight:bold}
ul.mensile strong{color:var(--navy)}

.pill{display:inline-block;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  font-size:.78rem;background:#eef4f8;color:var(--navy);border:1px solid var(--line);
  border-radius:99px;padding:4px 12px;margin:4px 4px 0 0}

.bio{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap}
.bio p{flex:1;min-width:260px}

.disclaimer{font-style:italic;font-size:.92rem;color:var(--muted);margin-top:20px}

/* numeri di sintesi (home → sanzioni) */
.numeri{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px;
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif}
.numeri div{flex:1;min-width:130px;background:var(--card);border:1px solid var(--line);
  border-radius:10px;padding:16px;text-align:center}
.numeri strong{display:block;font-size:1.6rem;color:var(--navy)}
.numeri span{font-size:.85rem;color:var(--muted)}

/* ---- embed a caricamento consensuale ---- */
.embed-consenso{border:1px solid var(--line);border-radius:10px;background:var(--card);
  padding:24px;margin-top:20px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif}
.embed-consenso p{font-size:.92rem;color:var(--muted)}
iframe.substack{width:100%;height:150px;border:1px solid var(--line);border-radius:10px;background:#fff;margin-top:20px}

/* ---- tabella sanzioni ---- */
.filtri{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 6px;
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif}
.filtri label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;color:var(--muted)}
.filtri select,.filtri input{font-size:.95rem;padding:10px 12px;border:1px solid var(--line);
  border-radius:8px;background:#fff;color:var(--ink);min-width:200px}
.filtri input{min-width:260px;flex:1}
.conteggio{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  font-size:.88rem;color:var(--muted);margin:10px 0 4px}

.tabella-scroll{overflow-x:auto;margin-top:12px;border:1px solid var(--line);border-radius:10px;background:var(--card)}
table.sanzioni{width:100%;border-collapse:collapse;min-width:640px;
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;font-size:.92rem}
table.sanzioni th{background:var(--navy);color:#fff;text-align:left;padding:12px 14px;
  font-weight:600;position:sticky;top:0}
table.sanzioni td{padding:12px 14px;border-top:1px solid var(--line);vertical-align:top}
table.sanzioni tr:nth-child(even) td{background:#fbfcfe}
table.sanzioni td.regime{white-space:nowrap;font-weight:600;color:var(--navy)}
table.sanzioni td.articolo{min-width:140px}
table.sanzioni td.rubrica{min-width:260px}
table.sanzioni .rubrica{font-family:Georgia,'Times New Roman',serif;color:var(--ink)}

.avviso{background:#fdf6e7;border:1px solid #ecd9a8;border-radius:10px;padding:18px 22px;
  margin-top:24px;font-size:.95rem}
.avviso strong{color:var(--navy)}

/* ---- piè di pagina ---- */
footer{padding:36px 0 48px;text-align:center;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  font-size:.85rem;color:var(--muted)}
footer a{color:var(--navy)}
footer .legali{margin-top:10px}
footer .legali a{margin:0 8px}

@media (max-width:600px){
  header.hero h1{font-size:1.7rem}
  header.pagina h1{font-size:1.5rem}
  section{padding:36px 0}
  .card{padding:22px}
  .filtri input{min-width:0;width:100%}
}
@media print{
  nav.barra,.filtri,.btn,iframe.substack,.embed-consenso{display:none}
  body{background:#fff}
  section{border:none;padding:20px 0}
}
