@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/poppins-400.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/poppins-500.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/poppins-600.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/poppins-700.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/ibm-plex-mono-400.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/ibm-plex-mono-500.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

  :root{
    /* il blu del marchio approvato: #17356F */
    --carta:#0B1C3D;
    --sup:rgba(255,255,255,.07);
    --sup-alt:#17356F;
    --blu:#2A4E93;
    --blu-scuro:#0B1C3D;
    --blu-chiaro:#7C90B8;
    --ink:#FFFFFF;
    --testo:#FFFFFF;
    --testo-pieno:#FFFFFF;
    --linea:rgba(255,255,255,.17);
    --su-blu:#FFFFFF;
    --su-blu-soft:#FFFFFF;
    /* accento di partenza: petrolio, come la cifra 4 */
    --rosa:#12A6C4;
    --rosa-scuro:#9BDAE6;
    /* il fucsia del punto: fisso in tutta la pagina */
    --su-accento:#0A1B3A;
    --punto:#F221B8;
    --punto-chiaro:#F88CDA;
    /* variante azzurra: tasti e passaggi del cursore nel turchese tenue #66D4CF (prova del 24.09.2026, prima #0ABAB5); il fucsia resta raro */
    --azione:#66D4CF;
    --azione-chiaro:#9BE4E0;
    --su-azione:#0B1C3D;
    --r-g:18px; --r-m:12px; --r-s:9px;
  }

  /* Variante azzurra: blu notte, blu profondo, petrolio, turchese e due respiri in azzurro chiaro.
     Tasti e voci di menu restano come nella versione principale: fucsia o bianchi. */
  .apertura-video{background:#0B1C3D}
  .hero     {background:#13365F}
  #servizi  {background:#0B1C3D;--rosa:#45A5ED;--rosa-scuro:#D6E9F7;--su-accento:#0B1C3D}
  #settori  {background:#0F4C5C;--rosa:#BFE9EE;--rosa-scuro:#BFE9EE;--su-accento:#0B1C3D}
  #soluzioni{background:#134B7A;--rosa:#8FE0EA;--rosa-scuro:#D6F1F5;--su-accento:#0B1C3D}
  #academy  {background:#E4F2F8;--rosa:#1F6FA3;--rosa-scuro:#134B7A;--su-accento:#FFFFFF}
  #metodo   {background:#0B1C3D;--rosa:#5DB7E8;--rosa-scuro:#D6E9F7;--su-accento:#0B1C3D}
  #numeri   {background:#0E6E7A;--rosa:#C9F3F5;--rosa-scuro:#C9F3F5;--su-accento:#0B1C3D}
  #voce     {background:#13365F;--rosa:#BFE3F5;--rosa-scuro:#BFE3F5;--su-accento:#0B1C3D}
  #team     {background:#E4F2F8;--rosa:#134B7A;--rosa-scuro:#134B7A;--su-accento:#FFFFFF}
  #contatti {background:#0B1C3D;--rosa:#45A5ED;--rosa-scuro:#D6E9F7;--su-accento:#0B1C3D}
  footer.piede{background:#0B1C3D}

  /* le due fasce chiare ribaltano l'inchiostro */
  #academy, #team{
    color:#0B1C3D;
    --ink:#0B1C3D; --testo:#3F5A73; --testo-pieno:#2A4560;
    --linea:rgba(11,28,61,.16); --sup:rgba(11,28,61,.045);
    --su-blu-soft:#3F5A73;
  }
  #academy h2, #team h2, #academy h3, #team h3{color:#0B1C3D}



  *{box-sizing:border-box}
  body{
    margin:0;background:var(--carta);color:var(--ink);
    font-family:Poppins,"Helvetica Neue",Arial,sans-serif;
    font-size:17px;font-weight:400;line-height:1.62;-webkit-font-smoothing:antialiased;
  }
  .wrap{max-width:1140px;margin:0 auto;padding-inline:20px}
  section{padding-block:clamp(56px,8vw,104px)}
  h1,h2,h3,h4{font-family:Poppins,"Helvetica Neue",Arial,sans-serif;margin:0;text-wrap:balance}
  h1{font-weight:700;font-size:clamp(34px,5.4vw,60px);line-height:1.06;letter-spacing:-.025em}
  h2{font-weight:600;font-size:clamp(27px,3.8vw,40px);line-height:1.14;letter-spacing:-.02em}
  h3{font-weight:600;font-size:19px;letter-spacing:-.01em}
  p{margin:0 0 16px;max-width:64ch}
  p:last-child{margin-bottom:0}
  a{color:var(--rosa-scuro)}
  :focus-visible{outline:3px solid var(--rosa);outline-offset:3px;border-radius:4px}

  .occhiello{
    font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:12.5px;font-weight:500;
    letter-spacing:.24em;text-transform:uppercase;color:var(--rosa-scuro);margin:0 0 18px;
  }
  .occhiello-chiaro{color:var(--rosa)}
  .guida{font-size:clamp(17px,2vw,20px);color:var(--testo-pieno);max-width:58ch}

  /* ---------------- marchio ---------------- */
  .marchio{display:inline-flex;align-items:center;line-height:0}
  .marchio img{display:block;width:auto}
  .marchio-testata img{height:26px}
  .marchio-piede img{height:34px}
  .marchio img.solo-scuro{display:none}
  .marchio img.solo-chiaro{display:none}
  .marchio img.solo-scuro{display:block}

  /* ---------------- testata ---------------- */
  header.top{--rosa:#66D4CF;--rosa-scuro:#9BE4E0;
    position:sticky;top:env(safe-area-inset-top,0px);z-index:40;
    background:color-mix(in srgb,var(--carta) 88%,transparent);
    backdrop-filter:saturate(1.4) blur(10px);
    border-bottom:1px solid var(--linea);
  }
  .top-in{display:flex;align-items:center;gap:20px;min-height:68px;flex-wrap:wrap}
  nav.menu{display:flex;gap:22px;margin-left:auto;flex-wrap:wrap}
  nav.menu a{
    font-family:Poppins,sans-serif;font-size:15.5px;font-weight:500;color:#FFFFFF;
    text-decoration:none;padding-block:6px;
  }
  nav.menu a:hover{color:var(--azione-chiaro)}

  .solo-telefono{display:none}
  @media (max-width:860px){nav.menu a.solo-telefono{display:inline-flex;border-bottom:none}}

  /* ---------------- testata sul telefono ---------------- */
  .menu-tasto{
    display:none;margin-left:auto;align-items:center;gap:9px;cursor:pointer;
    background:transparent;border:1px solid var(--linea);border-radius:var(--r-s);
    padding:8px 12px;color:#fff;font-family:Poppins,sans-serif;font-size:14px;font-weight:500;
  }
  .menu-tasto i{display:block;width:17px;height:11px;position:relative}
  .menu-tasto i::before,.menu-tasto i::after,.menu-tasto i span{
    content:"";position:absolute;left:0;right:0;height:1.6px;background:#fff;border-radius:2px;
  }
  .menu-tasto i::before{top:0} .menu-tasto i span{top:4.7px} .menu-tasto i::after{bottom:0}
  @media (max-width:860px){
    .top-in{gap:12px;min-height:60px;flex-wrap:nowrap}
    .menu-tasto{display:inline-flex}
    nav.menu{
      display:none;position:absolute;left:0;right:0;top:100%;margin:0;gap:0;
      flex-direction:column;background:var(--carta);
      border-bottom:1px solid var(--linea);padding:4px 20px 16px;
    }
    header.top.aperto nav.menu{display:flex}
    nav.menu a{padding:13px 0;border-bottom:1px solid var(--linea);font-size:16px}
    nav.menu a:last-child{border-bottom:none}
    .top-in > a.btn-piccola{display:none}
  }

  /* ---------------- apertura ---------------- */
  .hero{
    --figura:url("img/hero-figura.webp");
    color:#fff;padding-block:clamp(60px,9vw,120px);position:relative;overflow:hidden;
    background-color:#13365F;
    background-image:var(--figura);
    background-size:min(46vw,760px) auto;
    background-position:right 24px;
    background-repeat:no-repeat;
  }
  .hero .wrap{position:relative;z-index:1}
  .hero h1, .hero .guida{max-width:min(100%,600px)}
  @media (max-width:980px){
    .hero{
      background-image:linear-gradient(180deg,rgba(19,54,95,.95) 0%,rgba(19,54,95,.88) 60%,rgba(19,54,95,.74) 100%),var(--figura);
      background-size:auto,min(92vw,620px) auto;
      background-position:center,right bottom;
    }
  }
  .hero::after{display:none}
  /* banda d'apertura a tutta pagina col marchio in movimento */
  .apertura-video{padding:0;line-height:0}
  .video-pieno{margin:0;width:100%}
  .video-pieno video{
    display:block;width:100%;height:auto;
    max-height:520px;object-fit:contain;background:#0B1C3D;
  }
  .hero h1{color:#fff;max-width:17ch}
  .hero .guida{color:var(--su-blu-soft);margin-top:22px}
  .hero-azioni{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
  .hero-fatti{
    display:flex;gap:34px;flex-wrap:wrap;margin-top:56px;padding-top:26px;
    border-top:1px solid rgba(255,255,255,.16);position:relative;
  }
  .fatto{display:flex;flex-direction:column;gap:2px}
  .fatto b{font-family:Poppins,sans-serif;font-size:26px;font-weight:600;color:#fff;line-height:1.1}
  .fatto span{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.14em;
              text-transform:uppercase;color:var(--su-blu-soft)}

  /* ---------------- blocchi ---------------- */
  .intestazione{margin-bottom:clamp(30px,4vw,48px)}
  .griglia{display:grid;gap:18px}
  @media (min-width:640px){.g2{grid-template-columns:1fr 1fr}}
  @media (min-width:900px){.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
                           .g3{grid-template-columns:repeat(3,minmax(0,1fr))}}
  .scheda{
    background:var(--sup);border:1px solid var(--linea);border-radius:var(--r-g);
    padding:26px 24px 24px;display:flex;flex-direction:column;gap:11px;
  }
  .scheda h3{color:var(--ink)}
  .scheda p{font-size:16px;color:var(--testo-pieno);margin:0}
  .scheda .linea-nome{
    font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--rosa-scuro);
  }
  .scheda-prodotto{border-color:var(--linea);position:relative}
  .scheda-prodotto .stato{
    font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.12em;
    text-transform:uppercase;color:var(--testo-pieno);margin-top:auto;padding-top:14px;
  }

  .servizio{display:flex;gap:16px;padding-block:24px;border-bottom:1px solid var(--linea)}
  .servizio:last-child{border-bottom:0}
  .servizio .num{
    font-family:"IBM Plex Mono",monospace;font-size:12px;font-weight:500;
    color:var(--su-accento);background:var(--rosa);border-radius:999px;
    padding:0;margin-top:3px;letter-spacing:.06em;
    flex:none;align-self:flex-start;
    width:34px;height:34px;max-height:34px;
    display:flex;align-items:center;justify-content:center;line-height:1;
  }
  .servizio h3{margin-bottom:6px}
  .servizio p{font-size:16px;color:var(--testo-pieno);margin:0}






  /* ---------------- servizi: illustrazione di sfondo, testo a sinistra ---------------- */
  #servizi{
    --illustrazione:url("img/servizi-illustrazione.webp");
    background-color:#0B1C3D;
    background-image:
      linear-gradient(90deg,rgba(11,28,61,.95) 0%,rgba(11,28,61,.9) 40%,rgba(11,28,61,.55) 52%,rgba(11,28,61,0) 64%),
      var(--illustrazione);
    background-size:auto,min(62vw,960px) auto;
    background-position:center,right top;
    background-repeat:no-repeat,no-repeat;
  }
  @media (min-width:981px){
    #servizi .intestazione, #servizi .servizio{max-width:640px}
    /* l'illustrazione scorre con la pagina, centrata sull'elenco dei servizi */
    #servizi{
      background-attachment:scroll,scroll;
      background-size:auto,min(68vw,1040px) auto;
      background-position:center,right 62%;
    }
  }
  @media (max-width:980px){
    #servizi{
      background-image:linear-gradient(180deg,rgba(11,28,61,.55) 0%,rgba(11,28,61,.92) 30%,#0B1C3D 46%),var(--illustrazione);
      background-size:auto,100% auto;
    }
  }


  /* ---------------- settori: le aziende sullo sfondo, fotografiche e velate ---------------- */
  #settori{
    position:relative;
    background-color:#0F4C5C;
    background-image:
      linear-gradient(90deg,rgba(15,76,92,.6) 0%,rgba(15,76,92,.35) 42%,rgba(15,76,92,0) 62%),
      linear-gradient(180deg,rgba(15,76,92,0) 55%,rgba(15,76,92,.55) 100%),
      url("img/settori-img.webp");
    background-size:auto,auto,cover;
    background-position:center,center,center top;
    background-repeat:no-repeat;
  }
  #settori .wrap{position:relative;z-index:1}
  /* schede smerigliate: lo sfondo si intravede ma non disturba la lettura */
  #settori .scheda{
    background:rgba(15,76,92,.6);
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  }
  @media (max-width:760px){
    #settori{background-position:center,center,72% top}
  }


  /* ---------------- metodo: la scrivania con le carte, solo a destra e mai sotto le scritte ---------------- */
  #metodo{
    --foto:url("img/metodo-foto.webp");
    position:relative;
    background-color:#0B1C3D;
    background-image:linear-gradient(90deg,#0B1C3D 0%,#0B1C3D 44%,rgba(11,28,61,.55) 58%,rgba(11,28,61,0) 72%),var(--foto);
    background-size:auto,auto 100%;
    background-position:center,right top;
    background-repeat:no-repeat;
  }
  #metodo .wrap{position:relative;z-index:1}
  #metodo .scheda{
    background:rgba(11,28,61,.62);
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  }
  /* sotto i 900 px il testo prende tutta la larghezza: la foto resta un'ombra leggera */
  @media (max-width:900px){
    #metodo{
      background-image:linear-gradient(rgba(11,28,61,.86),rgba(11,28,61,.86)),var(--foto);
      background-size:auto,auto 100%;
    }
  }

  /* ---------------- voce dei clienti: il tavolo della riunione, solo a destra e mai sotto le scritte ---------------- */
  #voce{
    --foto:url("img/voce-foto.webp");
    position:relative;
    background-color:#13365F;
    background-image:linear-gradient(90deg,#13365F 0%,#13365F 44%,rgba(19,54,95,.55) 58%,rgba(19,54,95,0) 72%),var(--foto);
    background-size:auto,auto 100%;
    background-position:center,right top;
    background-repeat:no-repeat;
  }
  #voce .wrap{position:relative;z-index:1}
  #voce blockquote{
    background:rgba(19,54,95,.62);
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  }
  @media (max-width:900px){
    #voce{
      background-image:linear-gradient(rgba(19,54,95,.86),rgba(19,54,95,.86)),var(--foto);
      background-size:auto,auto 100%;
    }
  }

  /* ---------------- soluzioni: la rete che scorre sullo sfondo, lontana dal testo ---------------- */
  #soluzioni{position:relative;overflow:hidden}
  #soluzioni .wrap{position:relative;z-index:1}
  .onda-ia{
    position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;display:block;
  }
  #soluzioni .scheda{
    background:rgba(19,75,122,.62);
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  }
  /* sotto i 980 px il testo occupa tutta la larghezza: la rete scorre in una striscia sotto le schede */
  #soluzioni{padding-bottom:calc(clamp(56px,8vw,104px) + 170px)}   /* la rete passa in una striscia sotto il testo */


  /* ---------------- servizi: un solo tasto «Approfondisci», sotto l'ultimo servizio ---------------- */
  .servizio > div{flex:1;min-width:0}
  .servizio-testa{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:6px}
  .servizio-testa h3{margin:0}
  /* fascia ridotta: solo i nomi, che aprono la pagina del servizio */
  #servizi .servizio{padding-block:16px;align-items:center}
  #servizi .servizio h3{margin:0}
  .servizio-link{display:inline;color:#fff;text-decoration:none}
  .servizio-link .freccia{display:inline-block;margin-left:12px;color:var(--azione);transition:transform .18s ease}
  .servizio-link:hover{color:var(--azione-chiaro)}
  .servizio-link:hover .freccia{transform:translateX(4px)}
  #servizi .approfondisci-sotto{margin-top:26px}
  .lettore-altri .altri-servizi{list-style:none;margin:0;padding:0;display:grid;gap:0}
  .lettore-altri .altri-servizi li{border-top:1px solid rgba(11,28,61,.14)}
  .lettore-altri .altri-servizi a{display:flex;gap:14px;align-items:center;padding:13px 2px;color:#0B1C3D;text-decoration:none;font-weight:500}
  .lettore-altri .altri-servizi a:hover{color:#087F7B}
  /* pagina «Con quali realtà abbiamo lavorato» */
  .realta-griglia{display:grid;gap:16px;margin:6px 0 22px}
  @media (min-width:640px){.realta-griglia{grid-template-columns:1fr 1fr}}
  .realta-blocco{background:#E4F2F8;border-radius:14px;padding:22px 22px 20px}
  .lettore-testo .realta-blocco h3{margin:0 0 8px;font-size:19px}
  .lettore-testo .realta-blocco p{margin:0;font-size:16px;line-height:1.6}
  .lettore-testo .realta-chiusa{margin-top:8px}
  #settori .intestazione{margin-bottom:26px}
  .piattaforma-blocco{display:flex;flex-direction:column;gap:6px}
  .lettore-testo .piattaforma-blocco .piattaforma-nome{margin:0;font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:#134B7A}
  .lettore-testo .piattaforma-blocco h3{margin:0 0 4px}
  .lettore-testo .piattaforma-blocco .piattaforma-stato{margin:6px 0 0;font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.06em;color:#3F5A73}
  #soluzioni .intestazione{margin-bottom:26px}
  #metodo .intestazione, #voce .intestazione, #team .intestazione{margin-bottom:26px}
  .realta-griglia.griglia-una{grid-template-columns:1fr}
  .voce-pagina blockquote{margin:0 0 16px;padding:20px 22px;border:0;border-left:3px solid var(--azione);background:#E4F2F8;border-radius:0 12px 12px 0;display:block}
  .lettore-testo .voce-pagina blockquote p{margin:0;font-size:17.5px;line-height:1.7;color:#1B2F4B}
  .voce-pagina blockquote footer{margin-top:12px;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#3F5A73}
  .team-pagina{--sup:#fff;--linea:rgba(11,28,61,.16);--ink:#0B1C3D;--testo-pieno:#2A4560;--blu-scuro:#0B1C3D;--rosa-scuro:#134B7A}
  .lettore-testo .team-pagina a.persona{text-decoration:none;color:inherit}
  .lettore-testo .team-pagina .gruppo-eti{margin:30px 0 14px;font-size:10.5px;line-height:1.4}
  .lettore-testo .team-pagina .gruppo-eti:first-child{margin-top:0}
  .lettore-testo .team-pagina .chi span{display:block}
  .lettore-altri .altri-servizi span{font-family:"IBM Plex Mono",monospace;font-size:12px;color:#3F5A73}
  .approfondisci{flex:none}
  .approfondisci-sotto{margin-top:18px}
  @media (max-width:520px){ .servizio-testa{flex-wrap:wrap;gap:8px} }




  /* ---------------- academy: catalogo alimentato dai contenuti del sito ---------------- */
  .solo-lettori{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .catalogo-strumenti{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:-8px 0 22px}
  .cerca input{
    font-family:Poppins,sans-serif;font-size:15px;color:var(--ink);background:#fff;
    border:1.5px solid var(--linea);border-radius:999px;padding:10px 18px;width:min(420px,86vw);
  }
  .cerca input:focus{outline:none;border-color:var(--rosa)}
  .conteggio{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.06em;color:var(--testo);margin:0}
  .voce-foto{display:block;margin:-22px -22px 4px;border-radius:var(--r-g) var(--r-g) 0 0;overflow:hidden;aspect-ratio:16/9;background:#cfe3ee}
  .voce-foto img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
  .voce:hover .voce-foto img{transform:scale(1.03)}
  .voce h3 a{cursor:pointer}
  .altri-riga{display:flex;justify-content:center;margin-top:26px}

  /* ---------------- lettore degli articoli ---------------- */
  html.lettura{overflow:hidden}
  .lettore{position:fixed;inset:0;z-index:80;overflow-y:auto;background:#F4F9FC;color:#0B1C3D;-webkit-overflow-scrolling:touch}
  .lettore[hidden]{display:none}
  .lettore-barra{position:sticky;top:0;z-index:2;background:rgba(11,28,61,.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.12)}
  .lettore-barra-in{display:flex;align-items:center;gap:16px;min-height:62px}
  .lettore-marchio{margin:0 auto;display:flex;align-items:center}
  .lettore-marchio img{height:24px;width:auto;display:block}
  .lettore-video{margin:0;background:#0B1C3D;line-height:0}
  .lettore-video video{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;background:#0B1C3D}
  .lettore-corpo{max-width:820px;padding-top:44px;padding-bottom:80px}
  .lettore-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 16px;font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.06em;color:#3F5A73}
  .lettore .tipo{color:#134B7A;border-color:rgba(11,28,61,.2)}
  .lettore h1{font-family:Poppins,sans-serif;font-weight:700;font-size:clamp(28px,4vw,42px);line-height:1.15;color:#0B1C3D;margin:0 0 12px}
  .lettore-temi{margin:0 0 26px;font-size:13.5px;color:#3F5A73}
  .lettore-testa{margin-bottom:28px}
  .lettore-copertina{display:block;width:100%;height:auto;border-radius:16px;margin:0 0 34px;box-shadow:0 18px 40px -24px rgba(11,28,61,.45)}
  .lettore-testo{font-size:17.5px;line-height:1.75;color:#1B2F4B}
  .lettore-testo h2,.lettore-testo h3,.lettore-testo h4,.lettore-testo h5{font-family:Poppins,sans-serif;color:#0B1C3D;line-height:1.3;margin:34px 0 12px}
  .lettore-testo h2{font-size:25px}.lettore-testo h3{font-size:21px}.lettore-testo h4,.lettore-testo h5{font-size:18px}
  .lettore-testo p{margin:0 0 18px}
  .lettore-testo ul,.lettore-testo ol{margin:0 0 18px;padding-left:24px}
  .lettore-testo li{margin:0 0 8px}
  .lettore-testo a{color:#1F6FA3;text-decoration:underline;text-underline-offset:3px}
  .lettore-testo a:hover{color:#087F7B}
  .lettore-testo blockquote{margin:22px 0;padding:14px 20px;border-left:3px solid #66D4CF;background:#E4F2F8;border-radius:0 10px 10px 0}
  .lettore-testo table{border-collapse:collapse;width:100%;margin:0 0 20px;font-size:15px}
  .lettore-testo th,.lettore-testo td{border:1px solid rgba(11,28,61,.18);padding:8px 10px;text-align:left;vertical-align:top}
  .lettore-azioni{display:flex;gap:12px;flex-wrap:wrap;margin:34px 0 10px;padding-top:26px;border-top:1px solid rgba(11,28,61,.14)}
  .lettore-fonte{font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.04em;color:#3F5A73;margin:14px 0 0}
  .lettore-fonte a{color:#1F6FA3}
  .lettore-altri{margin-top:46px}
  .lettore-altri h2{font-family:Poppins,sans-serif;font-size:20px;color:#0B1C3D;margin:0 0 16px}
  .lettore-altri .catalogo{--ink:#0B1C3D;--testo:#3F5A73;--testo-pieno:#2A4560;--linea:rgba(11,28,61,.16);--sup:#fff;--rosa-scuro:#134B7A}
  @media (min-width:1000px){.lettore-altri .catalogo{grid-template-columns:repeat(3,minmax(0,1fr))}}
  @media (max-width:640px){.lettore-barra-in{gap:10px}.lettore-marchio{display:none}.lettore-barra .btn,.lettore-chiudi{font-size:13px;padding:8px 14px}}


  .scheda-evento{display:grid;grid-template-columns:max-content 1fr;gap:10px 22px;margin:30px 0 0;padding:22px 24px;background:#E4F2F8;border-radius:14px;font-size:15.5px;line-height:1.55}
  .scheda-evento dt{font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#134B7A;padding-top:3px}
  .scheda-evento dd{margin:0;color:#0B1C3D}
  @media (max-width:560px){.scheda-evento{grid-template-columns:1fr;gap:4px}.scheda-evento dd{margin-bottom:10px}}

  .fascia{color:#fff}
  .fascia h2{color:#fff}
  .fascia .guida{color:var(--su-blu-soft)}
  .fascia .scheda{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.17)}
  .fascia .scheda h3{color:#fff}
  .fascia .scheda p{color:var(--su-blu-soft)}
  .fascia .scheda .linea-nome{color:var(--rosa)}
  .fascia .scheda .stato{color:var(--su-blu-soft)}

  blockquote{
    margin:0;background:var(--sup);border:1px solid var(--linea);border-radius:var(--r-g);
    padding:26px 24px;display:flex;flex-direction:column;gap:14px;
  }
  blockquote p{font-size:17px;margin:0;color:var(--ink)}
  blockquote footer{
    font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.12em;
    text-transform:uppercase;color:var(--testo-pieno);margin-top:auto;
  }

  /* ---------------- team ---------------- */
  .squadra{display:grid;gap:16px}
  @media (min-width:620px){.squadra{grid-template-columns:1fr 1fr}}
  @media (min-width:980px){.squadra{grid-template-columns:repeat(3,minmax(0,1fr))}}
  .persona{
    background:var(--sup);border:1px solid var(--linea);border-radius:var(--r-g);
    padding:24px 22px;display:flex;align-items:center;gap:18px;
  }
  .ritratto{
    width:66px;height:66px;flex:none;border-radius:20px;background:var(--blu-scuro);
    display:flex;align-items:center;justify-content:center;position:relative;
    font-family:Poppins,sans-serif;font-weight:600;font-size:21px;color:#fff;letter-spacing:.01em;
  }
  .ritratto i{
    position:absolute;right:9px;bottom:9px;width:7px;height:7px;border-radius:50%;
    background:var(--punto);font-style:normal;
  }
  .persona .chi{display:flex;flex-direction:column;gap:5px;min-width:0}
  .persona b{font-family:Poppins,sans-serif;font-size:18.5px;font-weight:600;line-height:1.24;color:var(--ink)}
  .persona span{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.13em;
                text-transform:uppercase;color:var(--testo-pieno);line-height:1.5}
  .gruppo-eti{
    font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;
    color:var(--rosa-scuro);margin:34px 0 14px;padding-top:24px;border-top:1px solid var(--linea);
  }
  .gruppo-eti:first-of-type{margin-top:0;padding-top:0;border-top:0}
  /* schede del team: aprono il profilo */
  a.persona{text-decoration:none;color:inherit;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
  a.persona:hover,a.persona:focus-visible{border-color:var(--azione);transform:translateY(-2px);box-shadow:0 14px 30px -22px rgba(11,28,61,.55)}
  .persona .vai{margin-left:auto;font-style:normal;font-size:18px;color:#089A96;transition:transform .18s ease}
  a.persona:hover .vai{transform:translateX(3px)}
  /* profilo nel lettore */
  .lettore-ritratto .ritratto{width:104px;height:104px;border-radius:30px;font-size:34px;background:#0B1C3D;margin:0 0 24px}
  .lettore-ritratto .ritratto i{right:14px;bottom:14px;width:10px;height:10px}
  .lettore-temi.ruolo{font-family:"IBM Plex Mono",monospace;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:#134B7A;line-height:1.6}
  .lettore-altri .squadra{--sup:#fff;--linea:rgba(11,28,61,.16);--ink:#0B1C3D;--testo-pieno:#2A4560;--blu-scuro:#0B1C3D}
  @media (min-width:980px){.lettore-altri .squadra{grid-template-columns:repeat(3,minmax(0,1fr))}}

  .nota{display:flex;flex-direction:column;gap:9px;padding-block:22px;border-top:1px solid var(--linea)}
  .nota time{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.12em;color:var(--rosa-scuro)}
  .nota a{font-family:Poppins,sans-serif;font-size:18px;font-weight:600;color:var(--ink);text-decoration:none;line-height:1.3}
  .nota a:hover{color:var(--rosa-scuro)}

  /* ---------------- contatti ---------------- */
  .contatti-griglia{display:grid;gap:34px}
  @media (min-width:860px){.contatti-griglia{grid-template-columns:1fr 1fr;gap:56px}}
  form{display:flex;flex-direction:column;gap:15px}
  .campo{display:flex;flex-direction:column;gap:6px}
  label{font-family:Poppins,sans-serif;font-size:13px;font-weight:500;color:var(--ink)}
  input,textarea{
    font-family:Poppins,sans-serif;font-size:16px;color:var(--ink);
    background:var(--sup);border:1px solid var(--linea);border-radius:var(--r-s);
    padding:11px 13px;width:100%;
  }
  textarea{min-height:110px;resize:vertical}
  .consenso{display:flex;gap:10px;align-items:flex-start}
  .consenso input{width:auto;margin-top:5px;accent-color:var(--rosa)}
  .consenso label{font-size:13px;color:var(--testo-pieno);font-family:Poppins,sans-serif;line-height:1.5}
  .consenso label a{color:inherit;text-decoration:underline;text-underline-offset:2px;font-weight:600}
  .consenso label a:hover{color:var(--azione)}
  .consenso + .consenso{margin-top:-2px}
  .esito{
    font-family:"IBM Plex Mono",monospace;font-size:12px;line-height:1.6;
    color:var(--rosa-scuro);background:var(--sup-alt);border-radius:var(--r-s);padding:11px 13px;
  }
  .recapito{display:flex;flex-direction:column;gap:3px;padding-block:16px;border-top:1px solid var(--linea)}
  .recapito span{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.14em;
                 text-transform:uppercase;color:var(--testo-pieno)}
  .recapito b{font-family:Poppins,sans-serif;font-size:17px;font-weight:500;color:var(--ink)}
  .segnaposto{color:var(--rosa-scuro);font-family:"IBM Plex Mono",monospace;font-size:14px}

  /* ---------------- piede ---------------- */
  footer.piede{color:#fff;padding-block:52px 34px}
  .piede-griglia{display:grid;gap:30px}
  @media (min-width:760px){.piede-griglia{grid-template-columns:1.4fr 1fr 1fr}}
  .piede h4{font-family:"IBM Plex Mono",monospace;font-size:10.5px;font-weight:500;
            letter-spacing:.18em;text-transform:uppercase;color:var(--su-blu-soft);margin-bottom:12px}
  .piede ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
  .piede a{color:#fff;text-decoration:none;font-family:Poppins,sans-serif;font-size:14.5px}
  .piede a:hover{color:var(--rosa)}
  .piede small{color:var(--su-blu-soft);font-size:13px;line-height:1.6;display:block}
  .piede-basso{
    margin-top:38px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);
    display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:space-between;
  }
  /* ---------------- academy ---------------- */
  .filtri{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:28px}

  .catalogo{display:grid;gap:16px}
  @media (min-width:660px){.catalogo{grid-template-columns:1fr 1fr}}
  @media (min-width:1000px){.catalogo{grid-template-columns:repeat(3,minmax(0,1fr))}}
  .voce{
    background:var(--sup);border:1px solid var(--linea);border-radius:var(--r-g);
    padding:22px 22px 20px;display:flex;flex-direction:column;gap:11px;
  }
  .voce-alto{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
  .tipo{
    font-family:"IBM Plex Mono",monospace;font-size:10px;font-weight:500;letter-spacing:.14em;
    text-transform:uppercase;color:var(--rosa-scuro);border:1px solid var(--linea);
    border-radius:999px;padding:4px 10px;
  }
  .tipo-prossimo{background:var(--rosa);border-color:var(--rosa);color:var(--su-accento)}
  .voce time,.voce .quando{
    font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;color:var(--testo-pieno);
  }
  .voce h3{line-height:1.32}
  .voce h3 a{color:var(--ink);text-decoration:none}
  .voce h3 a:hover{color:var(--rosa-scuro)}
  .voce p{font-size:15.5px;color:var(--testo-pieno);margin:0}
  .voce .dettagli{
    font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.08em;
    color:var(--testo-pieno);margin-top:auto;padding-top:13px;border-top:1px solid var(--linea);
  }
  .vuoto{
    font-family:"IBM Plex Mono",monospace;font-size:13px;color:var(--testo-pieno);
    padding:26px 0;
  }
  .iscrizione{
    margin-top:34px;background:var(--sup);border:1px solid var(--linea);border-radius:var(--r-g);
    padding:26px 24px;display:flex;gap:22px;flex-wrap:wrap;align-items:center;justify-content:space-between;
  }
  .iscrizione > div{max-width:46ch}
  .iscrizione h3{margin-bottom:5px}
  .iscrizione p{font-size:15.5px;color:var(--testo-pieno);margin:0}
  .modulo-breve{display:flex;flex-direction:column;gap:12px;min-width:min(100%,290px);flex:1 1 290px}
  .modulo-breve .consenso label{font-size:12.5px;line-height:1.45}
  .modulo-breve button{align-self:flex-start}
  /* ---------------- numeri ---------------- */
  .numeri-griglia{display:grid;gap:26px}
  @media (min-width:680px){.numeri-griglia{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media (min-width:1000px){.numeri-griglia{grid-template-columns:repeat(4,minmax(0,1fr))}}
  .numero{display:flex;flex-direction:column;gap:9px;padding-top:20px;
          border-top:2px solid rgba(255,255,255,.20)}
  .numero b{
    font-family:Poppins,"Helvetica Neue",Arial,sans-serif;font-weight:700;
    font-size:clamp(60px,8vw,96px);line-height:.95;color:var(--rosa);
    font-variant-numeric:tabular-nums;letter-spacing:-.03em;white-space:nowrap;
  }
  .numero > span{font-family:Poppins,sans-serif;font-size:15px;font-weight:500;color:#fff;line-height:1.35}
  .numero [data-conta]{display:inline-block;text-align:left;font-variant-numeric:tabular-nums}
  .numero .piu{margin-left:.03em}
  /* il piu' segue la cifra mentre sale: nessuna larghezza riservata, cosi' non resta staccato */
  .numero b [data-conta]{min-width:0!important}

  .cap-numeri{
    font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:11px;letter-spacing:.1em;
    color:var(--su-blu-soft);margin-top:36px;
  }
  .avviso-posta{
    position:fixed;left:50%;bottom:26px;z-index:95;transform:translate(-50%,12px);opacity:0;pointer-events:none;
    max-width:min(92vw,520px);padding:13px 20px;border-radius:12px;background:#0B1C3D;color:#fff;
    border:1px solid #66D4CF;box-shadow:0 18px 40px -18px rgba(0,0,0,.55);
    font-family:Poppins,sans-serif;font-size:14px;line-height:1.45;text-align:center;
    transition:opacity .2s ease,transform .2s ease;
  }
  .avviso-posta.su{opacity:1;transform:translate(-50%,0)}
  .avviso-posta b{color:#9BE4E0;font-weight:600}
  @media (prefers-reduced-motion:reduce){*{transition:none!important}}

  /* ---------------- tasti: una sola forma in tutto il sito ----------------
     ovale, del colore dello sfondo, filo sottile; al passaggio si illumina di turchese.
     Sulle fasce scure il testo e' bianco, su quelle chiare e' blu notte. */
  .btn, .approfondisci, .filtro, .lettore-chiudi{
    --t-testo:#FFFFFF; --t-filo:rgba(255,255,255,.46);
    --t-luce:rgba(102,212,207,.15); --t-luce-filo:#66D4CF; --t-alone:rgba(102,212,207,.42);
    display:inline-flex;align-items:center;justify-content:center;gap:9px;
    font-family:Poppins,sans-serif;font-size:14.5px;font-weight:500;line-height:1.2;letter-spacing:.005em;
    padding:11px 22px;border-radius:999px;border:1.5px solid var(--t-filo);
    background:transparent;color:var(--t-testo);text-decoration:none;white-space:nowrap;cursor:pointer;
    transition:background-color .22s ease,border-color .22s ease,box-shadow .28s ease,color .22s ease;
  }
  #academy :is(.btn,.filtro), #team .btn, .lettore-corpo .btn{
    --t-testo:#0B1C3D; --t-filo:rgba(11,28,61,.30);
    --t-luce:rgba(102,212,207,.22); --t-luce-filo:#1FA9A3; --t-alone:rgba(31,169,163,.38);
  }
  :is(.btn, .approfondisci, .filtro, .lettore-chiudi):is(:hover, :focus-visible){
    background-color:var(--t-luce);border-color:var(--t-luce-filo);color:var(--t-testo);outline:none;
    box-shadow:0 0 0 3px var(--t-luce),0 0 24px var(--t-alone);
  }
  .filtro[aria-pressed="true"]{background-color:var(--t-luce);border-color:var(--t-luce-filo);font-weight:600}
  .btn:active,.approfondisci:active{transform:translateY(1px)}
  :is(.btn, .approfondisci) > span[aria-hidden="true"]{transition:transform .22s ease}
  :is(.btn, .approfondisci):hover > span[aria-hidden="true"]{transform:translateX(3px)}
  .btn[hidden]{display:none}
  .btn.solo-telefono{display:none}
  nav.menu a.btn{padding:11px 22px;font-size:14.5px;border-bottom:1.5px solid var(--t-filo)}
  nav.menu a.btn:hover{color:var(--t-testo);border-color:var(--t-luce-filo)}
  @media (max-width:420px){.btn{white-space:normal;text-align:center}}

  /* ---------------- titoli: un solo peso in tutto il sito ----------------
     600 ovunque; il blu notte sulle fasce chiare riceve un filo di compensazione,
     perche' a parita' di peso il bianco sul blu appare piu' pieno. */
  h1, .lettore h1{font-weight:600}
  #academy h2, #team h2, .lettore h1, .lettore-testo h2, .lettore-altri h2{-webkit-text-stroke:.45px currentColor}

  /* ---------------- fucsia sporadico: l'occhiello che apre ogni fascia ----------------
     lo stesso fucsia del marchio (#F221B8) su tutte le fasce */
  .hero .occhiello, section .occhiello{color:#F221B8}
  /* sulle fasce blu e petrolio un alone scuro appena percettibile aiuta la lettura senza cambiare la tinta */
  .hero .occhiello, #settori .occhiello, #soluzioni .occhiello, #numeri .occhiello, #voce .occhiello{text-shadow:0 1px 12px rgba(6,16,36,.55)}

  /* ================= sito «ricerca»: componenti delle pagine interne ================= */
  .nastro-anteprima{background:#F221B8;color:#fff;font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.06em;text-align:center;padding:6px 12px}
  .salta{position:absolute;left:-9999px;top:0;z-index:100;background:#fff;color:#0B1C3D;padding:10px 16px;border-radius:0 0 8px 0}
  .salta:focus{left:0}
  nav.menu a[aria-current="page"]{color:var(--azione-chiaro)}
  .hero h1 .h1-tema{display:block;font-size:clamp(15px,1.7vw,19px);font-weight:500;letter-spacing:0;line-height:1.4;color:#CFE3F2;margin:0 0 16px;-webkit-text-stroke:0}

  /* testata delle pagine interne: blu notte, percorso, occhiello fucsia, titolo */
  .pagina-testa{background:#0B1C3D radial-gradient(120% 140% at 100% 0%,rgba(102,212,207,.10),transparent 55%);padding-block:clamp(40px,6vw,76px) clamp(34px,5vw,60px)}
  .pagina-testa h1{font-size:clamp(30px,4.4vw,50px);line-height:1.1;max-width:24ch;color:#fff}
  .pagina-testa.testa-articolo h1{font-size:clamp(26px,3.4vw,40px);max-width:32ch}
  .pagina-testa .guida{margin-top:18px;color:#DCE8F3}
  .pagina-testa .occhiello{color:#F221B8;text-shadow:none}
  .briciole{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.04em;color:#9DB3CC;margin:0 0 26px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
  .briciole a{color:#CFE3F2;text-decoration:none;border-bottom:1px solid rgba(207,227,242,.35)}
  .briciole a:hover{color:#fff;border-color:#66D4CF}
  .briciole [aria-current]{color:#9DB3CC}

  /* corpo chiaro delle pagine interne */
  .pagina-corpo{background:#F4F9FC;color:#0B1C3D;padding-block:clamp(40px,6vw,72px);
    --ink:#0B1C3D;--testo:#3F5A73;--testo-pieno:#2A4560;--linea:rgba(11,28,61,.16);--sup:#fff;--rosa-scuro:#134B7A;--rosa:#134B7A}
  .pagina-corpo + .pagina-corpo{padding-top:0}
  .pagina-corpo .occhiello{color:#B80F88}
  .pagina-corpo .titolo-sezione{color:#0B1C3D;margin:0 0 22px;-webkit-text-stroke:.45px currentColor}
  .pagina-corpo .btn, .pagina-correlati .btn, .pagina-corpo .filtro{
    --t-testo:#0B1C3D; --t-filo:rgba(11,28,61,.30); --t-luce:rgba(102,212,207,.22); --t-luce-filo:#1FA9A3; --t-alone:rgba(31,169,163,.38)}
  .pagina-griglia{display:grid;gap:40px}
  @media (min-width:980px){.pagina-griglia{grid-template-columns:250px minmax(0,1fr);gap:56px;align-items:start}}
  .pagina-testo{max-width:760px}
  .pagina-testo.largo{max-width:860px}
  .pagina-testo h2{scroll-margin-top:90px}
  .pagina-testo > h2:first-child{margin-top:0}
  .pagina-testo ol{padding-left:22px}
  .pagina-testo strong{color:#0B1C3D}

  /* indice laterale e guida al Modello 231 */
  .pagina-laterale{display:grid;gap:18px;align-content:start}
  @media (min-width:980px){.pagina-laterale{align-self:stretch}}
  .pagina-indice{background:#fff;border:1px solid rgba(11,28,61,.12);border-radius:14px;padding:18px 18px 12px}
  @media (min-width:980px){.pagina-indice{position:sticky;top:88px}}
  .indice-eti{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#B80F88;margin:0 0 10px}
  .pagina-indice ol{list-style:none;margin:0;padding:0}
  .pagina-indice li{border-top:1px solid rgba(11,28,61,.08)}
  .pagina-indice a{display:block;padding:8px 2px;color:#1B2F4B;text-decoration:none;font-size:14.5px}
  .pagina-indice a:hover{color:#087F7B}
  .cluster{display:grid;gap:10px}
  .cluster-voce{display:block;background:#fff;border:1px solid rgba(11,28,61,.12);border-radius:12px;padding:12px 14px;text-decoration:none;color:#0B1C3D;transition:border-color .2s,box-shadow .2s}
  .cluster-voce b{display:block;font-weight:600;font-size:15px}
  .cluster-voce span{display:block;font-size:13px;color:#3F5A73;line-height:1.45;margin-top:2px}
  .cluster-voce:hover,.cluster-voce.attivo{border-color:#1FA9A3;box-shadow:0 0 0 3px rgba(102,212,207,.18)}
  .pagina-corpo > .wrap > .cluster{margin-top:36px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}

  /* riquadri, tabelle e domande frequenti */
  .riquadro{background:#E4F2F8;border-radius:14px;padding:22px 24px;margin:30px 0}
  .lettore-testo .riquadro h3{margin:0 0 8px}
  .lettore-testo .riquadro p{margin:0 0 16px}
  .tabella{overflow-x:auto;margin:0 0 22px;border-radius:12px;border:1px solid rgba(11,28,61,.14)}
  .lettore-testo .tabella table{margin:0;background:#fff}
  .lettore-testo .tabella th{background:#0B1C3D;color:#fff;font-weight:600;font-size:14px}
  .lettore-testo .tabella td:first-child{white-space:nowrap;font-family:"IBM Plex Mono",monospace;font-size:13px;color:#134B7A}
  .faq{display:grid;gap:10px}
  .faq details{background:#fff;border:1px solid rgba(11,28,61,.14);border-radius:12px;padding:0 18px}
  .faq summary{cursor:pointer;list-style:none;padding:15px 28px 15px 0;font-weight:600;color:#0B1C3D;position:relative;font-size:16.5px;line-height:1.4}
  .faq summary::-webkit-details-marker{display:none}
  .faq summary::after{content:"+";position:absolute;right:2px;top:12px;font-size:22px;color:#1FA9A3;font-weight:400}
  .faq details[open] summary::after{content:"\2212"}
  .lettore-testo .faq p{margin:0 0 16px}

  /* approfondimenti collegati e invito al contatto */
  .pagina-correlati{background:#E4F2F8;color:#0B1C3D;padding-block:clamp(44px,6vw,76px);--ink:#0B1C3D;--testo:#3F5A73;--testo-pieno:#2A4560;--linea:rgba(11,28,61,.16);--sup:#fff;--rosa-scuro:#134B7A}
  .pagina-correlati h2{color:#0B1C3D;margin-bottom:24px;-webkit-text-stroke:.45px currentColor}
  .pagina-correlati .occhiello{color:#B80F88}
  .altri-articoli{margin-top:44px}
  .pagina-cta{background:#0B1C3D;padding-block:clamp(48px,7vw,86px)}
  .pagina-cta .wrap{display:flex;flex-wrap:wrap;gap:26px;align-items:flex-end;justify-content:space-between}
  .pagina-cta h2{max-width:22ch}
  .pagina-cta .occhiello{color:#F221B8}

  /* elenco dei servizi */
  .elenco-servizi{display:grid;gap:12px;margin-top:26px}
  @media (min-width:760px){.elenco-servizi{grid-template-columns:1fr 1fr}}
  .elenco-servizio{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid rgba(11,28,61,.12);border-radius:14px;padding:18px 20px;text-decoration:none;color:#0B1C3D;transition:border-color .2s,box-shadow .2s}
  .elenco-servizio:hover{border-color:#1FA9A3;box-shadow:0 0 0 3px rgba(102,212,207,.18)}
  .elenco-servizio .num{font-family:"IBM Plex Mono",monospace;font-size:12px;width:34px;height:34px;border-radius:999px;background:#0B1C3D;color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
  .elenco-servizio b{display:block;font-weight:600;font-size:17px}
  .elenco-servizio em{display:block;font-style:normal;font-size:14px;color:#3F5A73;line-height:1.45}
  .elenco-servizio .freccia{margin-left:auto;color:#1FA9A3}

  /* academy nelle pagine interne: filtri come collegamenti */
  a.filtro{text-decoration:none}
  .pagina-corpo#academy{background:#F4F9FC}
  .lettore-testo .lettore-meta{margin-bottom:22px}
  .lettore-testo .lettore-azioni .btn{text-decoration:none}
  .lettore-testo .riquadro .btn{text-decoration:none}
  .lettore-testo a.btn{color:var(--t-testo)}
  .team-pagina .squadra{margin-bottom:10px}
  .lettore-temi.ruolo{margin-bottom:22px}
  .filtro[aria-current="page"]{background-color:var(--t-luce);border-color:var(--t-luce-filo);font-weight:600}

  /* collegamento alla pagina aziendale LinkedIn, nel piede */
  .piede .social-link{display:inline-flex;align-items:center;gap:10px;margin-top:16px;font-size:14px}
  .piede .social-ico{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#66D4CF;color:#0B1C3D;font-family:Poppins,sans-serif;font-weight:700;font-size:13px;line-height:1;transition:box-shadow .2s}
  .piede .social-link:hover{color:#66D4CF}
  .piede .social-link:hover .social-ico{box-shadow:0 0 0 3px rgba(102,212,207,.25),0 0 18px rgba(102,212,207,.4)}

/* ---------------- modulo contatti: menu dei servizi e campo facoltativo ---------------- */
select{font-family:Poppins,sans-serif;font-size:16px;color:var(--ink);background-color:var(--sup);border:1px solid var(--linea);border-radius:var(--r-s);
  padding:11px 38px 11px 13px;width:100%;-webkit-appearance:none;appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235C6E96' stroke-width='1.6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center}
.facoltativo{font-weight:400;opacity:.72}

/* ---------------- fotografie del team ---------------- */
.ritratto.con-foto{overflow:hidden;background:#0B1C3D}
.ritratto.con-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%;border-radius:inherit;display:block}
.ritratto.con-foto i{z-index:1;box-shadow:0 0 0 2px #fff}
.persona-foto{float:right;width:min(260px,42%);margin:4px 0 22px 30px}
.persona-foto img{display:block;width:100%;height:auto;border-radius:22px;background:#E4F2F8;box-shadow:0 18px 40px -26px rgba(11,28,61,.55)}
@media (max-width:640px){.persona-foto{float:none;width:min(240px,70%);margin:0 0 24px}}

/* ================================================================================================
   Home, 02.10.2026: banda d'apertura tutta video, nuovo ordine delle fasce, testi alternati
   Ordine: apertura, Obblighi (testo a sinistra), Servizi (destra), Metodo (sinistra), Team (destra),
   Soluzioni AI (sinistra), Academy, Numeri, Settori (destra), Voce dei clienti (sinistra), Parla con noi.
   ================================================================================================ */
/* 1. la banda d'apertura e' tutta video, a ogni larghezza: nessun riquadro di colore diverso intorno */
.apertura-video{background:#0A1B3C}
.video-pieno video{width:100%;height:auto;aspect-ratio:2560/740;max-height:520px;object-fit:cover;background:#0A1B3C}

/* 2. testi alternati: nelle fasce «lato-destro» la colonna (testo e tasti) va a destra, l'immagine a sinistra */
@media (min-width:981px){
  .lato-destro .colonna{max-width:640px;margin-left:auto}
  #servizi.lato-destro .intestazione, #servizi.lato-destro .servizio{max-width:none}
}

/* 3. immagini come sfondo, senza bordi: ogni immagine sta in un livello proprio (::before) e si dissolve con una maschera
   graduale nel colore della fascia, a ogni larghezza dello schermo. Il testo resta sopra (z-index 1). */
#servizi, #settori, #metodo, #voce{position:relative;overflow:hidden}
#servizi > .wrap, #settori > .wrap, #metodo > .wrap, #voce > .wrap{position:relative;z-index:1}
#servizi::before, #settori::before, #voce::before{content:"";position:absolute;pointer-events:none;z-index:0}

/* Servizi (blu notte): l'illustrazione occupa la meta' sinistra e sfuma sotto l'elenco */
#servizi{background:#0B1C3D}
#servizi::before{
  top:0;bottom:0;left:0;width:min(74vw,1200px);
  background:url("img/servizi-illustrazione.webp") 40% 45%/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 28%,rgba(0,0,0,.4) 48%,rgba(0,0,0,.12) 64%,transparent 82%);
          mask-image:linear-gradient(90deg,#000 0%,#000 28%,rgba(0,0,0,.4) 48%,rgba(0,0,0,.12) 64%,transparent 82%);
}
@media (max-width:980px){
  #servizi::before{
    width:100%;bottom:auto;height:min(120vw,640px);background-position:center top;opacity:.42;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.55) 45%,transparent 95%);
            mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.55) 45%,transparent 95%);
  }
}

/* Metodo: niente foto, uno sfumato su tutta la fascia nel petrolio («Transformative Teal», tendenza 2026) con una luce morbida */
#metodo{
  background-color:#0F4C5C;--rosa:#BFE9EE;--rosa-scuro:#BFE9EE;--su-accento:#0B1C3D;
  background-image:
    radial-gradient(70% 120% at 88% 18%,rgba(155,228,224,.20) 0%,rgba(155,228,224,0) 60%),
    linear-gradient(115deg,#1F5C63 0%,#145060 45%,#0D3D4E 100%);
  background-size:auto;background-position:center;background-repeat:no-repeat;
}
#metodo .occhiello{text-shadow:0 1px 12px rgba(6,16,36,.45)}

/* Settori: lo skyline delle attivita' (agricoltura, sanita', energia, edilizia) nitido, in blu notte e tiffany, che sfuma verso il testo */
#settori{background:#081630;--rosa:#9BE4E0;--rosa-scuro:#D6F1F5;--su-accento:#0B1C3D}
#settori::before{
  inset:0;
  background:url("img/settori-skyline.webp") left center/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 45%,rgba(0,0,0,.45) 70%,rgba(0,0,0,.25) 100%);
          mask-image:linear-gradient(90deg,#000 0%,#000 45%,rgba(0,0,0,.45) 70%,rgba(0,0,0,.25) 100%);
}
#settori .scheda{background:rgba(8,22,48,.6)}
@media (max-width:980px){
  #settori::before{
    background-position:left top;opacity:.42;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.5) 55%,rgba(0,0,0,.2) 100%);
            mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.5) 55%,rgba(0,0,0,.2) 100%);
  }
}

/* Voce dei clienti: niente foto; sfumato blu profondo e una grande virgoletta di chiusura in trasparenza sul lato libero */
#voce{
  background-color:#13365F;
  background-image:linear-gradient(100deg,#163B66 0%,#13365F 50%,#0F2D52 100%);
  background-size:auto;background-position:center;background-repeat:no-repeat;
}
#voce::before{
  content:"\201D";top:50%;right:max(4px,calc(50% - 600px));transform:translateY(-40%);
  font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(240px,24vw,360px);line-height:1;
  color:rgba(155,228,224,.12);
}

@media (max-width:640px){
  #voce::before{font-size:170px;top:auto;bottom:-46px;transform:none;color:rgba(155,228,224,.09)}
}

/* 5. colori delle fasce secondo il nuovo ordine (nessuna fascia accanto a una dello stesso colore):
   apertura blu notte, Obblighi blu profondo, Servizi blu notte, Metodo petrolio, Team azzurro chiaro, Soluzioni blu,
   Academy azzurro chiaro, Numeri turchese, Settori notte con skyline, Voce blu profondo, Parla con noi blu notte */
/* nelle pagine Modello 231 e GDPR il titolo «Metodo» ha id="metodo" (ancora dell'indice): non deve prendere lo sfondo della fascia della home */
h2#metodo{background:none;position:static;padding:0}

/* ================================================================================================
   Leggibilita' delle etichette sopra i titoli (02.10.2026): il rosa del marchio resta dove il contrasto
   e' sufficiente (fondi blu notte); sugli altri fondi si usa una tinta dello stesso rosa con contrasto
   di almeno 4,5:1 (WCAG 2.1, livello AA, testo piccolo).
   ================================================================================================ */
.hero .occhiello, #voce .occhiello{color:#FF6FD3}
#metodo .occhiello{color:#FFC2EE}
#soluzioni .occhiello{color:#FFA8E7}
#numeri .occhiello{color:#FFD6F3}
#academy .occhiello, #team .occhiello{color:#B0127F}
/* pagina Metodo: la riga sul nome precedente (Code4Com, gia' CO.DE S.r.l.) */
.lettore-testo .nome-precedente{margin-top:22px;padding:14px 18px;border-left:3px solid var(--azione);background:#E4F2F8;border-radius:0 12px 12px 0;font-size:16px;color:#1B2F4B}

/* immagini degli articoli dell'Academy (copertina in testa e immagini nel testo, dalla libreria dei media) */
figure.articolo-copertina,figure.articolo-immagine{margin:6px 0 28px;padding:0}
figure.articolo-copertina img,figure.articolo-immagine img{display:block;max-width:100%;width:auto;height:auto;max-height:min(78vh,760px);margin:0 auto;border-radius:14px;background:#E4F2F8;box-shadow:0 18px 40px -28px rgba(11,28,61,.45)}
figure.articolo-immagine figcaption{font-size:.86rem;color:#5C6E96;margin-top:8px;text-align:center}

/* ================================================================================================
   Logo definitivo (15.10.2026): simbolo CC4 e scritta Code4Com, senza payoff e senza punto, in vettoriale.
   Il simbolo rende il logo piu' alto a parita' di scritta: testata 36 px (30 px sui telefoni stretti), piede 44 px.
   ================================================================================================ */
.marchio-testata img{height:36px}
.marchio-piede img{height:44px}
@media (max-width:380px){.marchio-testata img{height:30px}}

/* Apertura della home (15.10.2026): descrizione aziendale fornita dal cliente, riportata alla lettera.
   Il titolo e' piu' lungo del precedente e contiene «COmpliance&DEvelopment»: corpo ridotto perche' stia nella colonna. */
.hero h1.h1-apertura{font-size:clamp(28px,4.1vw,50px);line-height:1.1;max-width:min(100%,600px)}

/* ================================================================================================
   WordPress + Elementor: le sezioni del sito stanno in contenitori Elementor (classe c4c-sezione).
   I contenitori non aggiungono margini, spaziature o colonne: l'aspetto resta quello delle sezioni.
   ================================================================================================ */
.e-con.c4c-sezione,
.e-con.c4c-sezione .e-con{
  --padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;
  --gap:0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;
  --width:100%;
}
.e-con.c4c-sezione, .e-con.c4c-sezione > .e-con.wrap{display:block}
.e-con.c4c-sezione{padding:0;margin:0;width:100%;max-width:none}
.e-con.c4c-sezione .elementor-widget,
.e-con.c4c-sezione .elementor-widget > .elementor-widget-container{width:100%;margin:0;padding:0}
.e-con.c4c-sezione .elementor-widget:not(:last-child){margin-bottom:0}
.e-con.c4c-dati-strutturati{display:none}

/* contenitore che fa da .wrap */
.e-con.wrap{max-width:1140px;margin-inline:auto;padding-inline:20px;box-sizing:border-box;width:100%}

/* sezioni costruite con contenitori: stessa spaziatura delle sezioni del sito */
section.e-con.c4c-sezione{padding-block:clamp(56px,8vw,104px)}
section.e-con.c4c-sezione.pagina-testa{padding-block:clamp(40px,6vw,76px) clamp(34px,5vw,60px)}
section.e-con.c4c-sezione.pagina-corpo{padding-block:clamp(40px,6vw,72px)}

/* titoli dinamici del modello articolo e archivio (widget Titolo di Elementor Pro) */
.pagina-testa .c4c-titolo .elementor-heading-title{font-family:Poppins,"Helvetica Neue",Arial,sans-serif;font-size:clamp(30px,4.4vw,50px);
  line-height:1.1;max-width:24ch;color:#fff;margin:0;-webkit-text-stroke:.45px currentColor}
.pagina-testa.testa-articolo .c4c-titolo .elementor-heading-title{font-size:clamp(26px,3.4vw,40px);max-width:32ch}

/* ---------------- elenchi dell'Academy (widget Articoli e Archivio articoli di Elementor Pro) ---------------- */
.c4c-articoli .elementor-posts-container{display:grid;gap:16px;grid-template-columns:1fr}
@media (min-width:660px){.c4c-articoli .elementor-posts-container{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.c4c-articoli .elementor-posts-container{grid-template-columns:repeat(3,minmax(0,1fr))}}
.c4c-articoli .elementor-post{background:var(--sup);border:1px solid var(--linea);border-radius:var(--r-g);
  padding:22px 22px 20px;display:flex;flex-direction:column;gap:11px;margin:0}
.c4c-articoli .elementor-post__text{display:flex;flex-direction:column;gap:11px}
.c4c-articoli .elementor-post__title{font-family:Poppins,"Helvetica Neue",Arial,sans-serif;font-size:19px;line-height:1.32;margin:0;order:2}
.c4c-articoli .elementor-post__title a{color:var(--ink);text-decoration:none}
.c4c-articoli .elementor-post__title a:hover{color:var(--rosa-scuro)}
.c4c-articoli .elementor-post__meta-data{order:1;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;color:var(--testo-pieno);margin:0}
.c4c-articoli .elementor-post__excerpt{order:3}
.c4c-articoli .elementor-post__excerpt p{font-size:15.5px;color:var(--testo-pieno);margin:0}
.c4c-articoli .elementor-pagination{margin-top:28px;display:flex;gap:8px;justify-content:center;font-family:"IBM Plex Mono",monospace;font-size:13px}
.c4c-articoli .elementor-pagination .page-numbers{padding:6px 11px;border-radius:999px;border:1px solid var(--linea);color:var(--ink);text-decoration:none}
.c4c-articoli .elementor-pagination .page-numbers.current{background:var(--ink);color:#fff;border-color:var(--ink)}

/* ---------------- newsletter (modulo di Elementor Pro) ---------------- */
.e-con.c4c-iscrizione{display:flex;flex-direction:row;flex-wrap:wrap;gap:22px;align-items:center;justify-content:space-between;
  margin-top:34px;background:var(--sup);border:1px solid var(--linea);border-radius:var(--r-g);padding:26px 24px;box-sizing:border-box}
.e-con.c4c-iscrizione > .elementor-widget{width:auto;flex:1 1 290px}
.e-con.c4c-iscrizione > .elementor-widget-html{flex:0 1 46ch}
.c4c-iscrizione-testo h3{margin-bottom:5px}
.c4c-iscrizione-testo p{font-size:15.5px;color:var(--testo-pieno);margin:0}
.c4c-modulo-newsletter .elementor-form-fields-wrapper{display:flex;flex-direction:column;gap:12px;margin:0}
.c4c-modulo-newsletter .elementor-field-group{padding:0 !important;margin:0 !important;display:flex;flex-direction:column;gap:6px;width:100%}
.c4c-modulo-newsletter .elementor-field-label{font-family:Poppins,sans-serif;font-size:13px;font-weight:500;color:var(--ink);padding:0}
.c4c-modulo-newsletter .elementor-field-textual{font-family:Poppins,sans-serif;font-size:16px;color:var(--ink);background:var(--sup);
  border:1px solid var(--linea);border-radius:var(--r-s);padding:11px 13px;min-height:0}
.c4c-modulo-newsletter .elementor-field-type-acceptance .elementor-field-subgroup{display:flex}
.c4c-modulo-newsletter .elementor-field-type-acceptance label{font-size:12.5px;line-height:1.45;color:var(--testo-pieno)}
.c4c-modulo-newsletter .elementor-field-type-acceptance label a{color:inherit;text-decoration:underline;font-weight:600}
.c4c-modulo-newsletter .elementor-field-type-acceptance input{accent-color:var(--rosa);margin-top:3px}
.c4c-modulo-newsletter .elementor-field-type-submit{flex-direction:row}
.c4c-modulo-newsletter .elementor-button{display:inline-flex;align-items:center;justify-content:center;font-family:Poppins,sans-serif;font-size:14.5px;
  font-weight:500;padding:11px 22px;border-radius:999px;border:1.5px solid rgba(11,28,61,.30);background:transparent;color:#0B1C3D;
  width:auto;min-height:0;transition:background-color .22s ease,border-color .22s ease,box-shadow .28s ease}
.c4c-modulo-newsletter .elementor-button:hover{background-color:rgba(102,212,207,.22);border-color:#1FA9A3;box-shadow:0 0 0 3px rgba(102,212,207,.22),0 0 24px rgba(31,169,163,.38)}
.c4c-modulo-newsletter .elementor-message{font-family:"IBM Plex Mono",monospace;font-size:12px;line-height:1.6;color:var(--rosa-scuro);margin-top:8px}

/* ---------------- modulo contatti (Contact Form 7) ---------------- */
.wpcf7 form.wpcf7-form{display:flex;flex-direction:column;gap:15px;margin:0}
.wpcf7 form.wpcf7-form > p{margin:0}
.wpcf7-form-control-wrap{display:block}
.consenso .wpcf7-form-control-wrap{display:inline}
.consenso .wpcf7-acceptance .wpcf7-list-item{margin:0}
.consenso .wpcf7-acceptance label{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--testo-pieno);font-family:Poppins,sans-serif;line-height:1.5;font-weight:400}
.consenso .wpcf7-acceptance input{width:auto;margin-top:5px;accent-color:var(--rosa)}
.consenso .wpcf7-acceptance a{color:inherit;text-decoration:underline;text-underline-offset:2px;font-weight:600}
.wpcf7 input.wpcf7-submit.btn{width:auto;align-self:flex-start;background:transparent;-webkit-appearance:none;appearance:none}
.wpcf7 .wpcf7-spinner{margin:0 0 0 12px;vertical-align:middle}
.wpcf7-not-valid-tip{font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:#F7A3DC;margin-top:5px}
.wpcf7 form .wpcf7-response-output{margin:4px 0 0;font-family:"IBM Plex Mono",monospace;font-size:12px;line-height:1.6;
  color:var(--rosa-scuro);background:var(--sup-alt);border-radius:var(--r-s);padding:11px 13px;border:0}
.screen-reader-response{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* fotografia nelle pagine delle persone: Elementor azzera i margini delle figure nei widget
   (.elementor .elementor-widget:not(...):not(...) figure), qui si ripristinano quelli del sito */
body .elementor .elementor-widget .lettore-testo figure.persona-foto{margin:4px 0 22px 30px}
@media (max-width:640px){body .elementor .elementor-widget .lettore-testo figure.persona-foto{margin:0 0 24px}}

/* intestazione del Theme Builder: resta in alto durante lo scorrimento, come nel sito */
.elementor-location-header{position:sticky;top:0;z-index:40}
.elementor-location-header header.top{position:relative}
body .elementor .elementor-widget figure.articolo-copertina,body .elementor .elementor-widget figure.articolo-immagine{margin:6px 0 28px}

/* ---------------- Academy: blocco con il modulo di richiesta di webinar e white paper (REV17) ---------------- */
.c4c-risorsa{display:grid;gap:20px 40px;margin:34px 0 12px;padding:26px 24px 28px;background:#E4F2F8;border-radius:14px;color:#0B1C3D;
  --ink:#0B1C3D;--testo:#3F5A73;--testo-pieno:#2A4560;--linea:rgba(11,28,61,.18);--sup:#FFFFFF;--rosa:#134B7A;--rosa-scuro:#134B7A}
@media (min-width:860px){.c4c-risorsa{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:start;padding:34px 36px}}
.c4c-risorsa + .c4c-risorsa{margin-top:16px}
.c4c-risorsa .occhiello{margin:0 0 8px}
.c4c-risorsa h2,.lettore-testo .c4c-risorsa h2{margin:0 0 10px;color:#0B1C3D;font-size:clamp(22px,2.4vw,28px);line-height:1.2}
.c4c-risorsa-testo p:last-child,.lettore-testo .c4c-risorsa-testo p:last-child{margin:0;color:var(--testo-pieno)}
.c4c-risorsa .wpcf7 form.wpcf7-form{gap:13px}
.c4c-risorsa .wpcf7 form.wpcf7-form p{margin:0}
.c4c-risorsa .consenso label,.c4c-risorsa .consenso .wpcf7-acceptance label{font-size:12.5px;line-height:1.45}
.c4c-risorsa .btn{--t-testo:#0B1C3D;--t-filo:rgba(11,28,61,.30);--t-luce:rgba(102,212,207,.22);--t-luce-filo:#1FA9A3;--t-alone:rgba(31,169,163,.38);text-decoration:none}
.c4c-risorsa-evento .c4c-risorsa-modulo{align-self:center}
.c4c-risorsa .wpcf7 form .wpcf7-response-output{background:#FFFFFF;color:#0B1C3D;border:1px solid rgba(11,28,61,.18)}
.c4c-risorsa .wpcf7 form.sent .wpcf7-response-output{border-color:#1FA9A3}
.c4c-risorsa .wpcf7-not-valid-tip{color:#B4235A}
