/* eeever.it - componenti delle pagine nuove
   Si carica dopo token.css. Ogni componente qui dentro corrisponde a un partial in
   template-parts/: se cambia il markup, cambia anche questo file. */

.eee-pagina{--eee-gap:clamp(2.5rem,6vw,4.5rem)}
.eee-sezione{padding-block:var(--eee-gap)}
.eee-sezione--stretta{padding-block:calc(var(--eee-gap) * .6)}

/* ---------- testata ---------- */
.eee-testata{padding-block:clamp(2.5rem,7vw,5rem)}
.eee-testata .eee-filetto{margin-block:1.1rem}
.eee-testata h1{margin:0 0 .8rem}
.eee-testata__intro{font-size:var(--eee-intro);max-width:60ch;margin:0}
.eee-testata__meta{display:flex;flex-wrap:wrap;gap:.5rem .9rem;margin-top:1.4rem;font-size:.85rem}
.eee-badge{display:inline-block;border:1px solid currentColor;border-radius:var(--eee-pill);
           padding:.22rem .8rem;font-size:.78rem;font-weight:500}

/* ---------- prova in alto ---------- */
.eee-prova{display:grid;gap:1.4rem;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start}
@media (max-width:820px){.eee-prova{grid-template-columns:1fr}}
.eee-citazione{margin:0;font-size:var(--eee-intro);line-height:1.5}
.eee-citazione p{max-width:none;margin:0 0 .8rem}
.eee-citazione footer{font-size:.85rem}
.eee-numeri{display:grid;gap:1.1rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.eee-numero{border-top:3px solid var(--eee-verde);padding-top:.7rem}
.eee-numero .eee-kpi{display:block}

/* ---------- nota sui dati ---------- */
.eee-nota-dati{font-size:.8rem;color:var(--eee-muted);margin-top:1rem;max-width:70ch}
.eee-sezione-blu .eee-nota-dati,.eee-sezione-scura .eee-nota-dati{color:var(--eee-muted-su-blu)}
.eee-nota-dati strong{font-weight:600}

/* ---------- blocchi di testo ---------- */
.eee-blocco{max-width:var(--eee-colonna)}
.eee-blocco h2{margin:0 0 .9rem}
.eee-blocco > * + *{margin-top:.9rem}
.eee-blocchi{display:grid;gap:var(--eee-gap)}

/* ---------- tabella qualifica ---------- */
.eee-qualifica{display:grid;gap:1.2rem;grid-template-columns:1fr 1fr}
@media (max-width:760px){.eee-qualifica{grid-template-columns:1fr}}
.eee-qualifica__col h3{margin:0 0 .8rem}

/* ---------- passi ---------- */
.eee-passi{counter-reset:passo;display:grid;gap:1.2rem}
.eee-passo{counter-increment:passo;position:relative;padding-left:3rem}
.eee-passo::before{content:counter(passo);position:absolute;left:0;top:0;width:2.1rem;height:2.1rem;
                   border-radius:50%;background:var(--eee-blu);color:#fff;display:grid;place-items:center;
                   font-weight:600;font-size:.95rem}
.eee-sezione-blu .eee-passo::before,.eee-sezione-scura .eee-passo::before{background:var(--eee-verde);color:var(--eee-scuro)}
.eee-passo h3{margin:.25rem 0 .4rem}
.eee-consegna{font-size:.85rem;font-weight:600}

/* ---------- faq ---------- */
.eee-faq{display:grid;gap:.6rem;max-width:75ch}
.eee-faq details{border:1px solid var(--eee-bordo);border-radius:var(--eee-r-s);background:var(--eee-bianco)}
.eee-faq summary{cursor:pointer;padding:.95rem 1.1rem;font-weight:600;list-style:none;display:flex;
                 justify-content:space-between;gap:1rem;align-items:center}
.eee-faq summary::-webkit-details-marker{display:none}
.eee-faq summary::after{content:"+";font-weight:400;font-size:1.3rem;line-height:1}
.eee-faq details[open] summary::after{content:"\2013"}
.eee-faq details > div{padding:0 1.1rem 1.1rem}
.eee-faq details > div p{max-width:none}

/* ---------- cta ---------- */
.eee-cta{display:grid;gap:1.2rem;align-items:center;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
@media (max-width:820px){.eee-cta{grid-template-columns:1fr}}
.eee-cta h2{margin:0 0 .6rem}
.eee-cta__azioni{display:flex;flex-wrap:wrap;gap:.8rem}
.eee-cta__contatti{font-size:.9rem}
.eee-cta__contatti a{color:inherit}

/* ---------- card caso studio ---------- */
.eee-casi{display:grid;gap:1.3rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.eee-caso{display:flex;flex-direction:column;gap:.6rem;border:1px solid var(--eee-bordo);
          border-radius:var(--eee-r);padding:1.4rem;background:var(--eee-bianco);color:var(--eee-blu);
          text-decoration:none}
.eee-caso:hover{box-shadow:0 4px 28px rgba(47,42,125,.12)}
.eee-caso h3{margin:0}
.eee-caso__settore{font-size:var(--eee-micro);text-transform:uppercase;letter-spacing:.1em;color:var(--eee-muted)}
.eee-caso__numeri{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:auto;padding-top:.8rem;
                  border-top:1px solid var(--eee-bordo)}
.eee-caso__numero{font-size:.85rem}
.eee-caso__numero b{display:block;font-size:1.25rem;font-variant-numeric:tabular-nums}

/* ---------- filtri archivio ---------- */
.eee-filtri{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.6rem}
.eee-filtro{border:1px solid var(--eee-bordo);border-radius:var(--eee-pill);padding:.35rem 1rem;
            font-size:.85rem;text-decoration:none;color:var(--eee-blu)}
.eee-filtro[aria-current="true"]{background:var(--eee-blu);color:#fff;border-color:var(--eee-blu)}

/* ---------- correlati ---------- */
.eee-correlati{display:flex;flex-wrap:wrap;gap:.6rem}
.eee-correlati a{border:1px solid var(--eee-bordo);border-radius:var(--eee-pill);padding:.35rem 1rem;
                 font-size:.88rem;text-decoration:none;color:inherit}

/* ---------- avvisi in bozza ---------- */
.eee-avviso{border-left:4px solid var(--eee-arancio);background:var(--eee-grigio);color:var(--eee-blu);
            padding:.9rem 1.1rem;border-radius:0 var(--eee-r-s) var(--eee-r-s) 0;font-size:.9rem;margin-bottom:1.4rem}
.eee-avviso p{max-width:none;margin:0}

/* ---------- innesto su Elementor ----------
   Il kit di Elementor colora titoli e link con regole .elementor-kit-7 h1{...}, che hanno
   la stessa specificita' di una classe singola: per vincere serve una classe in piu'.
   Tutte queste regole vivono dentro .eee-pagina, quindi le pagine costruite in Elementor
   non vengono toccate. Senza questo blocco i titoli restano blu scuro anche sopra le
   sezioni blu, che e' illeggibile. */

.eee-pagina .eee-wrap h1,.eee-pagina .eee-wrap h2,.eee-pagina .eee-wrap h3,.eee-pagina .eee-wrap h4{color:var(--eee-blu)}
.eee-pagina .eee-sezione-blu h1,.eee-pagina .eee-sezione-blu h2,.eee-pagina .eee-sezione-blu h3,.eee-pagina .eee-sezione-blu h4,
.eee-pagina .eee-sezione-scura h1,.eee-pagina .eee-sezione-scura h2,.eee-pagina .eee-sezione-scura h3,.eee-pagina .eee-sezione-scura h4{color:var(--eee-su-blu)}
.eee-pagina .eee-sezione-blu p,.eee-pagina .eee-sezione-scura p,
.eee-pagina .eee-sezione-blu li,.eee-pagina .eee-sezione-scura li{color:var(--eee-su-blu)}
.eee-pagina .eee-sezione-blu .eee-muted,.eee-pagina .eee-sezione-scura .eee-muted{color:var(--eee-muted-su-blu)}
.eee-pagina .eee-sezione-blu .eee-kicker,.eee-pagina .eee-sezione-scura .eee-kicker{color:var(--eee-muted-su-blu)}
.eee-pagina .eee-sezione-blu .eee-evidenza,.eee-pagina .eee-sezione-scura .eee-evidenza{color:var(--eee-verde)}
.eee-pagina .eee-sezione-blu .eee-kpi-label,.eee-pagina .eee-sezione-scura .eee-kpi-label{color:var(--eee-muted-su-blu)}

.eee-pagina .eee-blocco a,.eee-pagina .eee-corpo a{color:var(--eee-blu);text-decoration:underline;text-underline-offset:2px}
.eee-pagina .eee-corpo a:hover{color:var(--eee-scuro)}
.eee-pagina .eee-sezione-blu a:not(.eee-btn),.eee-pagina .eee-sezione-scura a:not(.eee-btn){color:var(--eee-su-blu);text-decoration:underline;text-underline-offset:2px}
.eee-pagina .eee-cta .eee-btn{color:var(--eee-scuro);text-decoration:none}
.eee-pagina .eee-cta .eee-btn-ghost{color:var(--eee-verde)}
.eee-pagina .eee-caso{color:var(--eee-blu);text-decoration:none}
.eee-pagina .eee-caso h3{color:var(--eee-blu)}

/* L'intestazione del sito ha il testo bianco: e' disegnata per stare sopra un'immagine
   scura. Sulle pagine nuove la prima sezione e' blu, quindi l'intestazione prende lo
   stesso blu e il menu resta leggibile. Vale solo qui. */
.eee-pagina .elementor-location-header{background:var(--eee-blu)}

/* L'avviso di lavorazione vive dentro una sezione blu: prende una veste scura per non
   spezzare il disegno della pagina. Lo vede solo chi e' loggato. */
.eee-pagina .eee-sezione-blu .eee-avviso,.eee-pagina .eee-sezione-scura .eee-avviso{background:rgba(255,255,255,.10);color:var(--eee-su-blu);border-left-color:var(--eee-giallo)}
.eee-pagina .eee-sezione-blu .eee-avviso p,.eee-pagina .eee-sezione-scura .eee-avviso p{color:var(--eee-su-blu)}
.eee-pagina .eee-testata .eee-avviso{margin-bottom:1.8rem;max-width:70ch}

/* I valori dei numeri non sono sempre cifre: "16,4 mln" a 54px va a capo male.
   Nel gruppo dei numeri la scala scende e il valore non si spezza. */
.eee-pagina .eee-numeri .eee-kpi{font-size:clamp(1.7rem,3.2vw,2.5rem);white-space:nowrap}
.eee-pagina .eee-numeri{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}

/* ---------- corpo delle pagine servizio ----------
   Il corpo arriva dall'editor: elementi nudi, niente classi. Qui prendono la stessa
   veste dei componenti, cosi' chi scrive non deve conoscere il CSS. */
.eee-pagina .eee-corpo{max-width:72ch}
.eee-pagina .eee-corpo > * + *{margin-top:1rem}
.eee-pagina .eee-corpo h2{margin:2.8rem 0 .9rem}
.eee-pagina .eee-corpo h2:first-child{margin-top:0}
.eee-pagina .eee-corpo h3{margin:1.9rem 0 .5rem}
.eee-pagina .eee-corpo p{max-width:none}
.eee-pagina .eee-corpo ul{list-style:none;padding:0;margin:0}
.eee-pagina .eee-corpo ul li{position:relative;padding-left:1.4rem;margin-bottom:.55rem}
.eee-pagina .eee-corpo ul li::before{content:"";position:absolute;left:0;top:.58em;width:7px;height:7px;border-radius:50%;background:var(--eee-verde)}
.eee-pagina .eee-corpo ol{padding-left:1.3rem}
.eee-pagina .eee-corpo ol li{margin-bottom:.55rem}
.eee-pagina .eee-corpo table{border-collapse:collapse;width:100%;margin-block:1.2rem}
.eee-pagina .eee-corpo th,.eee-pagina .eee-corpo td{padding:.65rem .85rem;text-align:left;border-bottom:1px solid var(--eee-bordo);vertical-align:top}
.eee-pagina .eee-corpo th{font-size:var(--eee-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--eee-muted);font-weight:600}
.eee-pagina .eee-corpo blockquote{margin:1.4rem 0;padding:1.1rem 1.3rem;background:var(--eee-grigio);border-radius:var(--eee-r-s);border-left:4px solid var(--eee-verde)}
.eee-pagina .eee-corpo blockquote p{margin:0}
.eee-pagina .eee-corpo blockquote > * + *{margin-top:.6rem}
.eee-pagina .eee-corpo .eee-fonte{font-size:.82rem;color:var(--eee-muted)}
.eee-pagina .eee-corpo .eee-tabella-scroll{overflow-x:auto}

/* ---------- hub del glossario ---------- */
.eee-glossario{display:grid;gap:1.4rem;margin:0}
.eee-voce{border-top:1px solid var(--eee-bordo);padding-top:1.2rem}
.eee-voce dt{font-weight:600;font-size:1.15rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:.7rem}
.eee-voce dt a{color:var(--eee-blu);text-decoration:none}
.eee-voce dt a:hover{text-decoration:underline}
.eee-voce__esteso{font-size:.85rem;font-weight:400;color:var(--eee-muted)}
.eee-voce dd{margin:.4rem 0 0;max-width:75ch}

/* ---------- recensioni ---------- */
.eee-recensioni{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.eee-pagina .eee-corpo .eee-recensione{margin:0;background:var(--eee-grigio);border-left:4px solid var(--eee-verde);
  border-radius:0 var(--eee-r-s) var(--eee-r-s) 0;padding:1.3rem 1.4rem}
.eee-pagina .eee-corpo .eee-recensione p{font-size:1.02rem;line-height:1.5;margin:0 0 .9rem}
.eee-pagina .eee-corpo .eee-recensione footer{font-size:.85rem;color:var(--eee-muted)}
.eee-pagina .eee-corpo .eee-recensione footer strong{color:var(--eee-blu)}

/* ---------- modulo contatti ---------- */
.eee-modulo{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:1.4rem 0 0}
.eee-modulo__campo{display:flex;flex-direction:column;gap:.3rem;margin:0}
.eee-modulo__campo label{font-size:.85rem;font-weight:600}
.eee-modulo__campo input,.eee-modulo__campo select,.eee-modulo__campo textarea{
  font:inherit;font-size:.95rem;padding:.7rem .85rem;border:1px solid var(--eee-bordo);
  border-radius:var(--eee-r-s);background:#fff;color:var(--eee-blu);width:100%}
.eee-modulo__campo textarea{resize:vertical}
.eee-modulo__campo:has(textarea),.eee-modulo__azione,.eee-modulo__nota{grid-column:1/-1}
.eee-modulo__azione{margin:.4rem 0 0}
.eee-modulo__azione .eee-btn{border:0;cursor:pointer;font:inherit;font-weight:600}
.eee-modulo__nota{font-size:.8rem;color:var(--eee-muted);margin:0}
.eee-modulo__trappola{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.eee-modulo__esito{background:var(--eee-verde);color:var(--eee-scuro);border-radius:var(--eee-r-s);padding:1rem 1.2rem;margin:1.4rem 0}
.eee-modulo__esito p{max-width:none;margin:0}
.eee-modulo__esito--no{background:var(--eee-grigio);color:var(--eee-blu);border-left:4px solid var(--eee-arancio)}
