/* sito/partiti.css — i siti dei partiti (sito/partiti.mjs). Una base comune e tre stili: istituzionale, moderno,
   movimento. Il colore del partito arriva da --c (con --su-c, il testo che ci si legge sopra, e --c-scuro). */
:root{color-scheme:light;--testo:#1b1d22;--tenue:#626873;--linea:#e2e4e8;--carta:#f6f6f4}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;background:#fff;color:var(--testo);font:17px/1.6 "Source Sans 3","Segoe UI",Roboto,Arial,sans-serif;overflow-wrap:break-word}
img{max-width:100%;height:auto}
a{color:var(--c-scuro,#24304a)}
:focus-visible{outline:3px solid var(--c);outline-offset:2px}
.salta{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:10px 14px;z-index:50}.salta:focus{left:8px;top:8px}
.wrap{max-width:1140px;margin:0 auto;padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left))}
.wrap.stretto{max-width:820px}
.occhiello{font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.nota{color:var(--tenue);font-size:15px}
.sigla{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--c);color:var(--su-c);font-weight:800;font-size:14px;letter-spacing:.02em;flex:none}

/* la fascia della Repubblica, uguale per tutti */
.repubblica{background:#15171c;color:#aeb3bd;font-size:13px}
.repubblica .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;min-height:32px;align-items:center}
.repubblica span{display:flex;align-items:center}.repubblica .conto{margin-left:16px}
.repubblica a{color:#d6d9df;text-decoration:none}.repubblica span a{margin-left:16px}.repubblica a:hover{color:#fff}
.piede-rep{background:#15171c;color:#aeb3bd;font-size:13px;padding:16px 0}
.piede-rep .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.piede-rep a{color:#fff}

/* indice */
.indice-testa{background:#24304a;color:#fff;padding:48px 0 40px}
.indice-testa .occhiello{color:#c8d1e4}
.indice-testa h1{font:700 clamp(38px,6vw,60px)/1.05 "Libre Baskerville",Georgia,serif;margin:8px 0 12px}
.indice-testa p{max-width:60ch;color:#dfe5f1;font-size:18px;margin:0 0 22px}
.barra-seggi{display:flex;height:16px;border-radius:3px;overflow:hidden;background:#3a4664;max-width:760px}
.indice{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;padding:36px 0 56px}
.carta{display:flex;flex-direction:column;text-decoration:none;color:inherit;border:1px solid var(--linea);border-radius:10px;overflow:hidden;transition:transform .15s,box-shadow .15s}
.carta:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.08)}
.carta-testa{height:110px;background:var(--c);display:flex;align-items:center;justify-content:center}
.carta-testa img{width:78px;height:78px;border-radius:50%;object-fit:contain;background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.35)}
.carta-testa .sigla{width:78px;height:78px;font-size:22px;background:rgba(255,255,255,.18);box-shadow:0 0 0 2px rgba(255,255,255,.5)}
.carta-corpo{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px}
.carta-corpo b{font:700 21px/1.2 "Libre Baskerville",Georgia,serif}
.carta .motto{color:var(--tenue);font-size:15.5px;font-style:italic;min-height:1.6em}
.numeri{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px;color:var(--tenue);margin-top:4px}
.numeri strong{color:var(--testo);font-size:17px}
.gov{background:var(--c);color:var(--su-c);border-radius:20px;padding:0 10px;font-weight:700;font-size:12.5px}

/* la mini-hub: base */
.hub-testa{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--linea)}
.hub-testa .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;flex-wrap:wrap}
.hub-marchio{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--testo);font-weight:700;font-size:18px}
.hub-marchio img{width:44px;height:44px;border-radius:50%;object-fit:contain;background:#fff;box-shadow:0 0 0 1px var(--linea)}
.hub-menu{display:flex;flex-wrap:wrap;gap:4px 22px}
.hub-menu a{color:var(--testo);text-decoration:none;font-weight:600;font-size:15px;padding:6px 0;border-bottom:2px solid transparent}
.hub-menu a:hover{border-bottom-color:var(--c)}
.eroe{background:var(--c);color:var(--su-c);position:relative}
.eroe.con-foto{background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.35) 60%,rgba(0,0,0,.1)),var(--foto) center/cover no-repeat;color:#fff}
.eroe .wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px;align-items:end;padding-top:64px;padding-bottom:56px;min-height:380px}
.eroe h1{margin:10px 0 8px;line-height:1.08}
.nome-partito{font-size:18px;opacity:.9;margin:0}
.eroe-numeri{display:grid;grid-template-columns:repeat(3,auto);gap:14px 26px;justify-content:start}
.eroe-numeri strong{display:block;font-size:34px;line-height:1}
.eroe-numeri span{font-size:13.5px;opacity:.85}
.eroe-numeri .grafico{grid-column:1/-1;width:100%;max-width:340px;height:auto;color:currentColor;opacity:.9}
.blocco{padding:56px 0}
.blocco.tinto{background:var(--carta)}
.blocco h2{margin:0 0 22px;line-height:1.1}
.testo{font-size:18.5px;line-height:1.75}
.programma{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px}
.programma li{display:flex;gap:16px;background:#fff;padding:20px;border-radius:8px;border:1px solid var(--linea)}
.programma .n{font-weight:800;font-size:22px;color:var(--c-scuro);min-width:34px}
.programma h3{margin:0 0 4px;font-size:19px;line-height:1.3}.programma p{margin:0;color:#444a54}
.ritratto{display:block;width:110px;aspect-ratio:4/5;object-fit:cover;object-position:50% 22%;border-radius:6px;background:#e9eaee}
.ritratto.vuoto{display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,var(--c),var(--c-scuro));color:var(--su-c)}
.ritratto.vuoto b{font-size:26px;opacity:.85}
.ritratto.grande{width:200px}.ritratto.grande.vuoto b{font-size:46px}
.leader{display:flex;gap:26px;align-items:center;margin-bottom:30px}
.leader h3{font-size:30px;margin:6px 0 0}.leader h3 a{color:inherit;text-decoration:none}
.leader .occhiello{color:var(--c-scuro)}
.squadra{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:22px}
.membro{display:flex;flex-direction:column;gap:4px}.membro .ritratto{width:100%}
.membro b{font-size:16.5px;line-height:1.25;margin-top:6px}.membro b a{color:inherit;text-decoration:none}.membro b a:hover{text-decoration:underline}
.membro span{font-size:13.5px;color:var(--tenue)}
.ministri{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.ministri a{display:block;background:#fff;border-left:5px solid var(--c);padding:16px 18px;text-decoration:none;color:inherit;border-radius:4px}
.ministri span{display:block;font-size:13px;color:var(--tenue);text-transform:uppercase;letter-spacing:.06em;font-weight:700}
.ministri b{font-size:20px}
.tre{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
h3.piccolo{font-size:14px;text-transform:uppercase;letter-spacing:.1em;color:var(--c-scuro);margin:0 0 12px}
.lista{list-style:none;margin:0;padding:0}
.lista li{border-bottom:1px solid var(--linea)}.lista a{display:block;padding:10px 0;color:var(--testo);text-decoration:none;line-height:1.4}
.lista a:hover{color:var(--c-scuro);text-decoration:underline}.lista small{display:block;color:var(--tenue);font-size:12.5px}
.voti{list-style:none;margin:0;padding:0}
.voti li{display:flex;gap:10px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--linea);font-size:15px;line-height:1.4}
.voti a{color:var(--testo);text-decoration:none}.voti a:hover{text-decoration:underline}
.linea{flex:none;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:1px 7px;border-radius:3px;background:#eee;color:#555}
.linea.favorevole{background:#e3f1e6;color:#25693a}.linea.contrario{background:#f7e2e2;color:#9a2626}.linea.astenuto{background:#efefe8;color:#6a6650}
.hub-piede{background:var(--c-scuro);color:#fff;padding:26px 0}
.hub-piede .wrap{display:flex;gap:18px;align-items:center;justify-content:flex-start;flex-wrap:nowrap;text-align:left}
.hub-piede img{width:52px;height:52px;border-radius:50%;background:#fff;object-fit:contain}
.hub-piede .wrap > div{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start}.hub-piede b{font-size:18px}.hub-piede span{font-size:14px;opacity:.85}
.hub-piede a{color:#fff;font-weight:700}

/* stile istituzionale: sobrio, con le grazie */
.stile-istituzionale h1,.stile-istituzionale h2,.stile-istituzionale .leader h3,.stile-istituzionale .hub-marchio{font-family:"Libre Baskerville",Georgia,serif}
.stile-istituzionale .eroe h1{font-size:clamp(32px,4.8vw,52px);font-weight:400}
.stile-istituzionale .blocco h2{font-size:30px;font-weight:400;padding-bottom:10px;border-bottom:3px solid var(--c);display:inline-block}
.stile-istituzionale .programma li{border-top:3px solid var(--c)}

/* stile moderno: grandi blocchi, angoli morbidi */
.stile-moderno{font-family:Inter,"Segoe UI",sans-serif}
.stile-moderno h1,.stile-moderno h2,.stile-moderno h3,.stile-moderno .hub-marchio,.stile-moderno .eroe-numeri strong{font-family:"Inter Tight",Inter,sans-serif;letter-spacing:-.02em}
.stile-moderno .eroe h1{font-size:clamp(40px,6.4vw,76px);font-weight:800}
.stile-moderno .eroe .wrap{min-height:460px}
.stile-moderno .blocco h2{font-size:clamp(30px,4vw,44px);font-weight:800}
.stile-moderno .programma li{border:0;border-radius:18px;box-shadow:0 8px 28px rgba(0,0,0,.06)}
.stile-moderno .programma .n{background:var(--c);color:var(--su-c);border-radius:12px;height:44px;display:flex;align-items:center;justify-content:center;font-size:17px;min-width:44px}
.stile-moderno .ritratto{border-radius:18px}
.stile-moderno .ministri a{border-left:0;border-radius:16px;background:var(--c);color:var(--su-c)}.stile-moderno .ministri span{color:inherit;opacity:.8}
.stile-moderno .blocco.tinto{background:color-mix(in srgb,var(--c) 9%,#fff)}

/* stile movimento: maiuscolo condensato, contrasto forte */
.stile-movimento{font-family:Archivo,"Segoe UI",sans-serif}
.stile-movimento h1,.stile-movimento h2,.stile-movimento h3,.stile-movimento .hub-marchio,.stile-movimento .eroe-numeri strong,.stile-movimento .hub-menu a{font-family:Oswald,Impact,sans-serif;text-transform:uppercase;letter-spacing:.01em}
.stile-movimento .eroe{background:#111;color:#fff}
.stile-movimento .eroe::after{content:"";position:absolute;left:0;right:0;bottom:0;height:10px;background:var(--c)}
.stile-movimento .eroe h1{font-size:clamp(44px,7.5vw,92px);font-weight:700;line-height:.95}
.stile-movimento .eroe h1::first-line{color:var(--c)}
.stile-movimento .eroe .occhiello{color:var(--c)}
.stile-movimento .blocco h2{font-size:clamp(34px,5vw,56px);font-weight:700;color:#111}
.stile-movimento .blocco h2::after{content:"";display:block;width:80px;height:8px;background:var(--c);margin-top:8px}
.stile-movimento .programma li{border:0;border-radius:0;background:#111;color:#fff}.stile-movimento .programma p{color:#cfd2d8}
.stile-movimento .programma .n{color:var(--c)}
.stile-movimento .ritratto{border-radius:0;filter:grayscale(1) contrast(1.1)}
.stile-movimento .blocco.tinto{background:#f1f1ee}
.stile-movimento .hub-testa{background:#111;border-color:#111}.stile-movimento .hub-marchio,.stile-movimento .hub-menu a{color:#fff}

@media (max-width:900px){
  .eroe .wrap{grid-template-columns:1fr;gap:26px;min-height:0;padding-top:44px;padding-bottom:44px}
  .tre{grid-template-columns:1fr;gap:26px}
}
@media (max-width:640px){
  .repubblica .wrap{flex-wrap:nowrap}.repubblica .wrap > a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repubblica span > a{display:none}
  .hub-menu{display:none}
  .leader{flex-direction:column;align-items:flex-start;gap:14px}
  .ritratto.grande{width:150px}
  .squadra{grid-template-columns:repeat(2,minmax(0,1fr))}
  .programma{grid-template-columns:1fr}
  .indice{grid-template-columns:1fr}
  .eroe-numeri strong{font-size:28px}
  .blocco{padding:40px 0}
}

/* ===== su misura: Democrazia Cristiana — «Scudo crociato» (11/10) =====
   I manifesti DC degli anni Cinquanta: carta avorio, blu notte, rosso dello scudo, Libertas sul nastro. */
.stile-dc_scudo{--avorio:#f6f0e1;--blu-dc:#1f3c88;--rosso-dc:#c8102e;--inchiostro-dc:#1d2433;font-family:"Source Serif 4",Georgia,serif;background:var(--avorio);color:var(--inchiostro-dc)}
.stile-dc_scudo h1,.stile-dc_scudo h2,.stile-dc_scudo h3,.stile-dc_scudo .hub-marchio,.stile-dc_scudo .eroe-numeri strong,.stile-dc_scudo .leader h3{font-family:"Playfair Display",Georgia,serif}
.stile-dc_scudo .hub-testa{background:var(--avorio);border-bottom:3px double var(--blu-dc)}
.stile-dc_scudo .hub-marchio{color:var(--blu-dc);font-weight:800;letter-spacing:.01em}
.stile-dc_scudo .hub-menu a{color:var(--blu-dc);font-family:"Source Serif 4",Georgia,serif;font-style:italic;font-weight:600}
.stile-dc_scudo .hub-menu a:hover{border-bottom-color:var(--rosso-dc)}
.stile-dc_scudo .eroe{background:radial-gradient(120% 90% at 50% 0%,#2a4ea3 0%,var(--blu-dc) 55%,#142a63 100%);color:#fff;text-align:center;border-bottom:8px solid var(--rosso-dc)}
.stile-dc_scudo .eroe::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 2px,transparent 2px 22px);pointer-events:none}
.stile-dc_scudo .eroe .wrap{grid-template-columns:1fr;justify-items:center;align-items:center;gap:18px;padding-top:54px;padding-bottom:50px;min-height:0;position:relative}
.stile-dc_scudo .eroe-logo{width:150px;height:150px;border-radius:50%;background:#fff;object-fit:contain;box-shadow:0 0 0 6px rgba(255,255,255,.18),0 18px 40px rgba(0,0,0,.35)}
.stile-dc_scudo .eroe-fascia{display:inline-block;background:var(--rosso-dc);color:#fff;font-family:"Playfair Display",Georgia,serif;font-weight:800;letter-spacing:.42em;text-transform:uppercase;font-size:15px;padding:6px 22px 6px 30px;margin-bottom:14px;clip-path:polygon(0 0,100% 0,96% 50%,100% 100%,0 100%,4% 50%)}
.stile-dc_scudo .eroe .occhiello{color:#d9e2f7;letter-spacing:.2em}
.stile-dc_scudo .eroe h1{font-size:clamp(34px,5.4vw,62px);font-style:italic;font-weight:500;max-width:22ch;margin-inline:auto}
.stile-dc_scudo .nome-partito{font-family:"Playfair Display",Georgia,serif;font-weight:800;letter-spacing:.24em;text-transform:uppercase;font-size:14px;opacity:.9}
.stile-dc_scudo .eroe-numeri{justify-content:center;text-align:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);padding:16px 26px;border-radius:4px}
.stile-dc_scudo .eroe-numeri .grafico{margin:0 auto}
.stile-dc_scudo .blocco{background:var(--avorio)}
.stile-dc_scudo .blocco.tinto{background:#ece3cc}
.stile-dc_scudo .blocco h2{font-size:clamp(30px,4vw,42px);font-weight:800;color:var(--blu-dc);text-align:center;margin-bottom:30px}
.stile-dc_scudo .blocco h2::after{content:"";display:block;width:120px;height:14px;margin:12px auto 0;background:linear-gradient(var(--rosso-dc),var(--rosso-dc)) center/2px 100% no-repeat,linear-gradient(var(--rosso-dc),var(--rosso-dc)) center/100% 2px no-repeat}
.stile-dc_scudo .testo{font-size:19px;line-height:1.8;text-align:justify;hyphens:auto}
.stile-dc_scudo .testo p:first-child::first-letter{float:left;font-family:"Playfair Display",Georgia,serif;font-weight:800;font-size:3.6em;line-height:.85;margin:.06em .1em 0 0;color:var(--rosso-dc)}
.stile-dc_scudo .programma{counter-reset:dc;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.stile-dc_scudo .programma li{counter-increment:dc;background:#fffaf0;border:1px solid #d9ccae;border-top:4px solid var(--blu-dc);border-radius:0;box-shadow:0 2px 0 #d9ccae}
.stile-dc_scudo .programma .n{font-size:0;min-width:42px}
.stile-dc_scudo .programma .n::before{content:counter(dc,upper-roman);font-family:"Playfair Display",Georgia,serif;font-size:26px;font-weight:800;color:var(--rosso-dc)}
.stile-dc_scudo .programma h3{color:var(--blu-dc);font-family:"Playfair Display",Georgia,serif}
.stile-dc_scudo .ritratto{border-radius:2px;border:6px solid #fff;box-shadow:0 1px 0 #d9ccae,0 10px 24px rgba(31,60,136,.18);filter:sepia(.12)}
.stile-dc_scudo .ritratto.vuoto{background:linear-gradient(160deg,var(--blu-dc),#142a63);color:#fff}
.stile-dc_scudo .ritratto.vuoto b{color:#fff;opacity:.75;font-family:"Playfair Display",Georgia,serif}
.stile-dc_scudo .leader{justify-content:center;text-align:left}
.stile-dc_scudo .leader .occhiello{color:var(--rosso-dc)}
.stile-dc_scudo .leader h3{color:var(--blu-dc);font-size:34px}
.stile-dc_scudo .membro b{font-family:"Playfair Display",Georgia,serif;color:var(--blu-dc)}
.stile-dc_scudo .ministri a{background:#fffaf0;border-left:5px solid var(--rosso-dc);color:var(--inchiostro-dc)}
.stile-dc_scudo h3.piccolo{color:var(--rosso-dc);font-family:"Source Serif 4",Georgia,serif;font-style:italic;text-transform:none;letter-spacing:0;font-size:18px}
.stile-dc_scudo .lista a,.stile-dc_scudo .voti a{color:var(--inchiostro-dc)}
.stile-dc_scudo .lista li,.stile-dc_scudo .voti li{border-color:#d9ccae}
.stile-dc_scudo .hub-piede{background:var(--blu-dc);border-top:8px solid var(--rosso-dc)}
.stile-dc_scudo .hub-piede img{box-shadow:0 0 0 3px #fff}
@media (max-width:640px){
  .stile-dc_scudo .eroe-logo{width:110px;height:110px}
  .stile-dc_scudo .testo{text-align:left}
  .stile-dc_scudo .eroe-fascia{letter-spacing:.3em}
}

/* ===== su misura: Idea Libera — «Fiamma» (11/10) =====
   Dal logo: la fiamma arancio-ambra su bianco, la scritta grafite. Contemporaneo, civico, molto spazio bianco. */
.stile-il_fiamma{--grafite:#262626;--ambra:#ffb21a;--arancio:#f08a00;--carta-il:#fffaf3;font-family:Inter,"Segoe UI",sans-serif;color:var(--grafite);background:#fff}
.stile-il_fiamma h1,.stile-il_fiamma h2,.stile-il_fiamma h3,.stile-il_fiamma .hub-marchio,.stile-il_fiamma .eroe-numeri strong,.stile-il_fiamma .leader h3{font-family:Sora,Inter,sans-serif;letter-spacing:-.02em}
.stile-il_fiamma .hub-testa{background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid #f1e6d6}
.stile-il_fiamma .hub-marchio{font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:16px}
.stile-il_fiamma .hub-menu a{font-weight:600;font-size:14.5px}
.stile-il_fiamma .hub-menu a:hover{border-bottom-color:var(--arancio)}
.stile-il_fiamma .eroe{background:radial-gradient(60% 90% at 85% 50%,#fff3df 0%,#fff 60%);color:var(--grafite);overflow:hidden}
.stile-il_fiamma .eroe::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:linear-gradient(90deg,var(--arancio),var(--ambra) 60%,#ffd36b)}
.stile-il_fiamma .eroe .wrap{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;padding-top:64px;padding-bottom:64px;min-height:520px;position:relative}
.stile-il_fiamma .eroe-logo{grid-column:2;grid-row:1/span 2;justify-self:center;width:min(340px,80%);aspect-ratio:1;border-radius:50%;background:#fff;object-fit:contain;padding:8px;box-shadow:0 0 0 14px rgba(255,178,26,.14),0 0 0 34px rgba(240,138,0,.07),0 30px 60px rgba(168,90,0,.18)}
.stile-il_fiamma .eroe-testo{grid-column:1;grid-row:1}
.stile-il_fiamma .eroe-numeri{grid-column:1;grid-row:2}
.stile-il_fiamma .eroe .occhiello{color:var(--arancio);letter-spacing:.16em}
.stile-il_fiamma .eroe h1{font-size:clamp(40px,5.8vw,74px);font-weight:800;line-height:1.02;margin:14px 0 14px}
.stile-il_fiamma .eroe h1::after{content:"";display:block;width:110px;height:8px;border-radius:8px;margin-top:20px;background:linear-gradient(90deg,var(--arancio),var(--ambra))}
.stile-il_fiamma .nome-partito{font-weight:600;color:#6b6157;opacity:1}
.stile-il_fiamma .eroe-numeri{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.stile-il_fiamma .eroe-numeri>div{background:#fff;border:1px solid #f1e3cc;border-radius:999px;padding:10px 20px;box-shadow:0 6px 18px rgba(168,90,0,.07)}
.stile-il_fiamma .eroe-numeri strong{display:inline;font-size:22px;color:var(--arancio);margin-right:6px}
.stile-il_fiamma .eroe-numeri span{display:inline;font-size:14px;color:#6b6157;opacity:1}
.stile-il_fiamma .eroe-numeri .grafico{flex-basis:100%;max-width:320px;color:var(--arancio)}
.stile-il_fiamma .blocco{padding:72px 0}
.stile-il_fiamma .blocco.tinto{background:var(--carta-il)}
.stile-il_fiamma .blocco h2{font-size:clamp(32px,4.4vw,52px);font-weight:800}
.stile-il_fiamma .blocco h2::before{content:"";display:inline-block;width:14px;height:20px;margin-right:14px;vertical-align:.08em;background:linear-gradient(180deg,var(--ambra),var(--arancio));border-radius:60% 60% 60% 60%/80% 80% 40% 40%;transform:rotate(12deg)}
.stile-il_fiamma .testo{font-size:19.5px;line-height:1.75;color:#3a342e}
.stile-il_fiamma .programma{counter-reset:il;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.stile-il_fiamma .programma li{counter-increment:il;background:#fff;border:1px solid #f1e3cc;border-radius:22px;padding:24px;box-shadow:0 10px 30px rgba(168,90,0,.06);flex-direction:column;gap:12px}
.stile-il_fiamma .programma .n{font-size:0;width:46px;height:56px;min-width:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--ambra),var(--arancio));border-radius:60% 60% 50% 50%/75% 75% 35% 35%}
.stile-il_fiamma .programma .n::before{content:counter(il);font-family:Sora,sans-serif;font-size:20px;font-weight:800;color:#fff;margin-top:8px}
.stile-il_fiamma .programma h3{font-size:20px}
.stile-il_fiamma .programma p{color:#5d544b}
.stile-il_fiamma .ritratto{border-radius:50%;aspect-ratio:1;object-position:50% 25%}
.stile-il_fiamma .ritratto.vuoto{background:linear-gradient(160deg,#ffd27a,var(--arancio))}
.stile-il_fiamma .ritratto.vuoto b{color:#fff;opacity:.9;font-family:Sora,sans-serif}
.stile-il_fiamma .ritratto.grande{width:220px;box-shadow:0 0 0 10px rgba(255,178,26,.18)}
.stile-il_fiamma .leader h3{font-size:36px;font-weight:800}
.stile-il_fiamma .leader .occhiello{color:var(--arancio)}
.stile-il_fiamma .membro{align-items:center;text-align:center}
.stile-il_fiamma .ministri a{background:#fff;border:1px solid #f1e3cc;border-left:0;border-radius:18px;position:relative;padding-left:26px}
.stile-il_fiamma .ministri a::before{content:"";position:absolute;left:12px;top:16px;bottom:16px;width:4px;border-radius:4px;background:linear-gradient(180deg,var(--ambra),var(--arancio))}
.stile-il_fiamma h3.piccolo{color:var(--arancio)}
.stile-il_fiamma .hub-piede{background:var(--grafite)}
.stile-il_fiamma .hub-piede a{color:var(--ambra)}
@media (max-width:900px){
  .stile-il_fiamma .eroe .wrap{grid-template-columns:1fr;min-height:0;padding-top:40px;padding-bottom:48px}
  .stile-il_fiamma .eroe-logo{grid-column:1;grid-row:1;width:180px;box-shadow:0 0 0 10px rgba(255,178,26,.14),0 20px 40px rgba(168,90,0,.16)}
  .stile-il_fiamma .eroe-testo{grid-row:2}.stile-il_fiamma .eroe-numeri{grid-row:3}
}

/* ===== su misura: Azione Verandia — «Concreto» (11/10) =====
   «Il coraggio dell'ovvio»: tecnocratico, griglia svizzera, blu notte e arancione, numeri in Plex Mono. */
.stile-av_concreto{--notte:#10233d;--notte-2:#183453;--arancio-av:#f77f00;--grigio-av:#f2f4f7;--riga:#dde3ea;font-family:"IBM Plex Sans","Segoe UI",sans-serif;color:#15202e;counter-reset:sezione}
.stile-av_concreto h1,.stile-av_concreto h2,.stile-av_concreto h3,.stile-av_concreto .hub-marchio,.stile-av_concreto .leader h3{font-family:"IBM Plex Sans",sans-serif;letter-spacing:-.015em}
.stile-av_concreto .hub-testa{background:var(--notte);border-bottom:0}
.stile-av_concreto .hub-marchio,.stile-av_concreto .hub-menu a{color:#fff}
.stile-av_concreto .hub-marchio .sigla{border-radius:2px;background:var(--arancio-av);color:var(--notte)}
.stile-av_concreto .hub-menu a{font-family:"IBM Plex Mono",monospace;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.stile-av_concreto .hub-menu a:hover{border-bottom-color:var(--arancio-av)}
.stile-av_concreto .eroe{background:var(--notte);color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.stile-av_concreto .eroe::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:56px 56px;pointer-events:none}
.stile-av_concreto .eroe .wrap{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"logo testo" "numeri numeri";gap:28px 48px;align-items:center;padding-top:64px;padding-bottom:0;min-height:0;position:relative}
.stile-av_concreto .eroe-logo{grid-area:logo;width:200px;height:200px;object-fit:contain;background:#fff;border-radius:2px}
.stile-av_concreto .eroe-sigla{display:flex;align-items:center;justify-content:center;background:var(--arancio-av);color:var(--notte);font:700 88px/1 "IBM Plex Sans",sans-serif;letter-spacing:-.04em}
.stile-av_concreto .eroe-testo{grid-area:testo}
.stile-av_concreto .eroe .occhiello{font-family:"IBM Plex Mono",monospace;color:var(--arancio-av);letter-spacing:.08em}
.stile-av_concreto .eroe h1{font-size:clamp(40px,6vw,80px);font-weight:700;line-height:1;margin:10px 0 12px}
.stile-av_concreto .nome-partito{font-family:"IBM Plex Mono",monospace;font-size:14px;text-transform:uppercase;letter-spacing:.1em;opacity:.7}
.stile-av_concreto .eroe-numeri{grid-area:numeri;display:grid;grid-template-columns:repeat(3,1fr) 1.4fr;gap:0;border-top:1px solid rgba(255,255,255,.18);margin-top:12px}
.stile-av_concreto .eroe-numeri>div{padding:22px 24px 26px 0;border-right:1px solid rgba(255,255,255,.12)}
.stile-av_concreto .eroe-numeri>div+div{padding-left:24px}
.stile-av_concreto .eroe-numeri strong{font:600 44px/1 "IBM Plex Mono",monospace;color:var(--arancio-av)}
.stile-av_concreto .eroe-numeri span{display:block;line-height:1.35;margin-top:6px;font-family:"IBM Plex Mono",monospace;font-size:12.5px;text-transform:uppercase;letter-spacing:.08em;opacity:.7}
.stile-av_concreto .eroe-numeri .grafico{align-self:center;justify-self:end;max-width:300px;color:var(--arancio-av);padding:12px 0}
.stile-av_concreto .blocco{counter-increment:sezione;border-bottom:1px solid var(--riga)}
.stile-av_concreto .blocco.tinto{background:var(--grigio-av)}
.stile-av_concreto .blocco h2{font-size:clamp(28px,3.6vw,44px);font-weight:700;display:flex;align-items:baseline;gap:18px}
.stile-av_concreto .blocco h2::before{content:counter(sezione,decimal-leading-zero) " —";font:600 15px/1 "IBM Plex Mono",monospace;color:var(--arancio-av);letter-spacing:.04em}
.stile-av_concreto .testo{font-size:19px;line-height:1.7;max-width:62ch}
.stile-av_concreto .programma{display:block;counter-reset:pr;border-top:2px solid var(--notte)}
.stile-av_concreto .programma li{counter-increment:pr;display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;background:transparent;border:0;border-bottom:1px solid var(--riga);border-radius:0;padding:20px 0}
.stile-av_concreto .programma .n{font-size:0}
.stile-av_concreto .programma .n::before{content:counter(pr,decimal-leading-zero);font:600 22px/1.3 "IBM Plex Mono",monospace;color:var(--arancio-av)}
.stile-av_concreto .programma h3{font-size:21px}
.stile-av_concreto .ritratto{border-radius:0}
.stile-av_concreto .ritratto.vuoto{background:var(--notte-2)}
.stile-av_concreto .ritratto.vuoto b{color:var(--arancio-av);font-family:"IBM Plex Mono",monospace;opacity:1}
.stile-av_concreto .leader .occhiello,.stile-av_concreto h3.piccolo{font-family:"IBM Plex Mono",monospace;color:var(--arancio-av)}
.stile-av_concreto .ministri{gap:0;border-top:2px solid var(--notte)}
.stile-av_concreto .ministri a{border-left:0;border-bottom:1px solid var(--riga);border-radius:0;background:transparent;padding:18px 4px}
.stile-av_concreto .ministri span{font-family:"IBM Plex Mono",monospace;color:var(--arancio-av)}
.stile-av_concreto .linea{font-family:"IBM Plex Mono",monospace;border-radius:0}
.stile-av_concreto .hub-piede{background:var(--notte);border-top:6px solid var(--arancio-av)}
.stile-av_concreto .hub-piede .sigla{border-radius:2px;background:var(--arancio-av);color:var(--notte)}
.stile-av_concreto .hub-piede a{color:var(--arancio-av)}
@media (max-width:900px){
  .stile-av_concreto .eroe .wrap{grid-template-columns:1fr;grid-template-areas:"logo" "testo" "numeri";padding-top:40px}
  .stile-av_concreto .eroe-logo{width:120px;height:120px}.stile-av_concreto .eroe-sigla{font-size:54px}
  .stile-av_concreto .eroe-numeri{grid-template-columns:repeat(3,1fr)}
  .stile-av_concreto .eroe-numeri .grafico{grid-column:1/-1;justify-self:start}
  .stile-av_concreto .eroe-numeri strong{font-size:30px}
}
