/* ITALYPAA — stile ispirato ad aa.org: barra blu, titoli serif, card bianche su grigio */
@font-face{font-family:"Crete Round";src:url(fonts/crete-round-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Roboto;src:url(fonts/roboto-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Roboto;src:url(fonts/roboto-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Roboto;src:url(fonts/roboto-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}

:root{
  --blu:#3977c3; --blu-scuro:#2c62a6; --navy:#164580; --notte:#10335f;
  --arancio:#e9a151; --arancio-chiaro:#f3c48f;
  --verde:#26762f; --rosso:#cf3a2e;
  --sfondo:#f3f3f3; --carta:#fff; --testo:#4f4f4f; --tenue:#6b6b6b; --linea:#dcdcdc;
  --serif:"Crete Round",Georgia,serif; --sans:Roboto,"Helvetica Neue",Arial,sans-serif;
  --larghezza:1180px; --raggio:6px; --ombra:0 1px 3px rgba(0,0,0,.08),0 8px 24px rgba(0,0,0,.05);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--sfondo);color:var(--testo);font:400 1.0625rem/1.65 var(--sans)}
img{max-width:100%;height:auto;display:block}
a{color:var(--blu-scuro)}
a:hover{color:var(--navy)}
:focus-visible{outline:3px solid var(--arancio);outline-offset:2px}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.2;color:var(--navy);margin:0 0 .5em}
h1{font-size:clamp(1.9rem,4vw,2.6rem)}
h2{font-size:clamp(1.6rem,3vw,2.2rem)}
h3{font-size:1.4rem}
p{margin:0 0 1em}
.contenitore{max-width:var(--larghezza);margin:0 auto;padding:0 16px}
.solo-lettori{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.salta{position:absolute;left:-999px;top:0;background:var(--arancio);color:var(--notte);padding:.6em 1em;z-index:100;font-weight:700}
.salta:focus{left:8px;top:8px}

/* ---------- testata ---------- */
.testata{background:var(--blu);color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.testata .contenitore{display:flex;align-items:center;gap:1rem;min-height:84px}
.marchio{display:flex;align-items:center;gap:.75rem;color:#fff;text-decoration:none;margin-right:auto}
.marchio img{width:auto;height:52px;border-radius:8px;background:#fff;padding:3px}
.marchio b{display:block;font:400 1.75rem/1 var(--serif);letter-spacing:.02em}
.marchio b span:nth-child(1){color:#9be39f}.marchio b span:nth-child(3){color:#ffd0c8}
.marchio small{display:block;font-size:.8rem;opacity:.92;margin-top:.2rem}
.menu{display:flex;align-items:center;gap:.25rem;list-style:none;margin:0;padding:0}
.menu a{display:block;color:#fff;text-decoration:none;padding:.55rem .8rem;border-radius:999px;font-weight:500;font-size:.98rem}
.menu a:hover,.menu a[aria-current=page]{background:rgba(255,255,255,.16)}
.menu .lingua a{border:2px solid rgba(255,255,255,.7);display:flex;gap:.4rem;align-items:center;padding:.4rem .8rem}
.menu svg,.apri-menu svg{width:20px;height:20px}
.apri-menu{display:none;background:none;border:0;color:#fff;padding:.5rem;cursor:pointer}
@media (max-width:900px){
  .apri-menu{display:block}
  .menu{display:none;position:absolute;left:0;right:0;top:100%;background:var(--navy);flex-direction:column;align-items:stretch;padding:.5rem 16px 1rem;gap:0}
  .menu.aperto{display:flex}
  .menu a{border-radius:0;padding:.85rem .25rem;border-bottom:1px solid rgba(255,255,255,.12)}
  .menu .lingua a{margin-top:.75rem;justify-content:center;border-radius:999px}
  .marchio small{display:none}
}

/* ---------- pulsanti ---------- */
.pulsante{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.6rem;border-radius:999px;font:500 1.02rem/1.2 var(--sans);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:background .15s,color .15s,transform .15s}
.pulsante:hover{transform:translateY(-1px)}
.pulsante svg{width:18px;height:18px;flex:none}
.p-arancio{background:var(--arancio);color:var(--notte);border-color:#fff}
.p-arancio:hover{background:var(--arancio-chiaro);color:var(--notte)}
.p-navy{background:var(--navy);color:#fff}
.p-navy:hover{background:var(--notte);color:#fff}
.p-bordo{border-color:var(--blu);color:var(--blu-scuro);background:transparent}
.p-bordo:hover{background:var(--blu);color:#fff}
.p-bianco{border-color:#fff;color:#fff;background:transparent}
.p-bianco:hover{background:#fff;color:var(--navy)}
.pulsanti{display:flex;flex-wrap:wrap;gap:.75rem}

/* ---------- apertura ---------- */
.apertura{background:#fefdfb;border-bottom:1px solid var(--linea);overflow:hidden}
.apertura .contenitore{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:2rem;padding-top:2.5rem;padding-bottom:2.5rem}
.apertura img{width:100%;border-radius:var(--raggio)}
.carosello{position:relative;aspect-ratio:1942/809;border-radius:var(--raggio);overflow:hidden;background:#fefdfb}
.carosello figure{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .9s ease;overflow:hidden}
.carosello figure.attiva{opacity:1}
.carosello figure[style]::before{content:"";position:absolute;inset:-30px;background:var(--sfondo) center/cover;filter:blur(22px) brightness(.85)}
.carosello figure img{position:relative;width:100%;height:100%;object-fit:contain;border-radius:0}
@media (prefers-reduced-motion:reduce){.carosello figure{transition:none}}
.apertura .occhiello{font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:var(--verde);margin-bottom:.4rem}
.apertura h1{margin-bottom:.4em}
.apertura p.grande{font-size:1.2rem;color:#555}
@media (max-width:860px){.apertura .contenitore{grid-template-columns:1fr;text-align:center;padding-top:1.5rem}.apertura .pulsanti{justify-content:center}}

/* ---------- "io sono…" ---------- */
.iosono{display:flex;justify-content:center;padding:2rem 0 0}
.iosono form{display:flex;align-items:stretch;background:var(--carta);border-radius:999px;box-shadow:var(--ombra);max-width:100%;overflow:hidden}
.iosono label{background:var(--blu);color:#fff;font-weight:700;padding:.8rem 1.4rem;display:flex;align-items:center;white-space:nowrap}
.iosono select{border:0;font:inherit;color:var(--testo);padding:.6rem 2.2rem .6rem 1rem;min-width:0;background:transparent;appearance:none;max-width:60vw;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23164580' stroke-width='3'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center}
.iosono button{border:0;background:var(--arancio);color:var(--notte);font:700 1rem var(--sans);padding:0 1.3rem;cursor:pointer}
.iosono button:hover{background:var(--arancio-chiaro)}
.iosono ul{list-style:none;margin:0;padding:0}
@media (max-width:640px){.iosono form{flex-direction:column;border-radius:var(--raggio);width:100%}.iosono select{max-width:none;padding:.9rem 2.2rem .9rem 1rem}.iosono button{padding:.8rem}}

/* ---------- blocchi ---------- */
.blocco{padding:2rem 0}
.carta{background:var(--carta);border-radius:var(--raggio);box-shadow:var(--ombra)}
.diviso{display:grid;grid-template-columns:1fr 1fr;overflow:hidden}
.diviso .media{background:#140d33;display:flex;align-items:center;justify-content:center;padding:1.5rem}
.diviso .media img{max-height:560px;width:auto;border-radius:4px;box-shadow:0 10px 30px rgba(0,0,0,.4)}
.diviso .richiamo{background:var(--blu);color:#fff;padding:2.5rem}
.richiamo h2,.richiamo h3{color:#fff}
.richiamo .occhiello{text-transform:uppercase;letter-spacing:.1em;font-size:.82rem;font-weight:700;color:#ffe2bd}
.fatti{list-style:none;padding:0;margin:1.25rem 0 1.75rem;display:grid;gap:.8rem}
.fatti li{display:flex;gap:.8rem;align-items:flex-start}
.fatti svg{width:22px;height:22px;flex:none;margin-top:.15rem;color:#ffe2bd}
.fatti b{display:block}
@media (max-width:860px){.diviso{grid-template-columns:1fr}.diviso .richiamo{padding:1.75rem}.diviso .media img{max-height:440px}}

.domanda{display:grid;grid-template-columns:1fr 1.3fr;gap:2rem;padding:2.5rem}
.domanda h2{color:var(--blu)}
.liste{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.liste h3{font-size:1.3rem;color:var(--blu)}
.elenco{list-style:none;padding:0;margin:0}
.elenco a{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.7rem 0;border-bottom:1px solid var(--linea);color:#555;text-decoration:none;text-transform:uppercase;font-weight:700;font-size:.9rem;letter-spacing:.02em}
.elenco a:hover{color:var(--blu)}
.elenco svg{width:16px;height:16px;flex:none;color:var(--blu)}
@media (max-width:860px){.domanda{grid-template-columns:1fr;padding:1.75rem}}
@media (max-width:560px){.liste{grid-template-columns:1fr}}

/* card citazione stile "Daily Reflections" */
.citazione .barra{display:flex;justify-content:space-between;align-items:center;background:var(--blu);color:#fff;border-radius:var(--raggio) var(--raggio) 0 0;padding:0 0 0 1.5rem}
.citazione .barra h2{color:#fff;margin:0;font-size:1.6rem;padding:1rem 0}
.citazione .barra span{background:var(--navy);align-self:stretch;display:flex;align-items:center;padding:.6rem 1.3rem 0;border-radius:0 var(--raggio) 0 0;font:400 3.2rem/1 var(--serif)}
.citazione .corpo{padding:2rem 2.5rem 2.25rem;text-align:center}
.citazione .data{font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.06em;font-size:.9rem}
.citazione blockquote{margin:1rem auto 1.25rem;max-width:46rem;font:400 clamp(1.25rem,2.4vw,1.6rem)/1.45 var(--serif);color:var(--navy)}
.citazione cite{display:block;font-style:normal;color:var(--tenue);margin-bottom:1.5rem}
.citazione .pulsanti{justify-content:center}
.citazione .nota{font-size:.82rem;color:var(--tenue);margin:1.25rem 0 0}

/* tre colonne con iniziale */
.tre{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.tre .carta{padding:1.75rem}
.tre .icona{width:52px;height:52px;border-radius:50%;background:var(--blu);color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.tre .icona svg{width:26px;height:26px}
.tre h3{color:var(--blu)}
.tre p{margin:0}
@media (max-width:860px){.tre{grid-template-columns:1fr}}

.titolo-sezione{display:flex;justify-content:space-between;align-items:end;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}
.titolo-sezione h2{margin:0}

/* anni in fila */
.anni{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}
@media (max-width:1000px){.anni{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.anni{grid-template-columns:repeat(2,1fr);gap:.75rem}}
.anno{scroll-snap-align:start;text-decoration:none;color:inherit;display:flex;flex-direction:column;overflow:hidden;transition:transform .15s}
.anno:hover{transform:translateY(-3px);color:inherit}
.anno .figura{background:#111;display:block}
.anno .figura img{width:100%;aspect-ratio:4/3;height:auto;object-fit:contain}
.anno div.testo{padding:.9rem 1rem 1rem}
.anno strong{font:400 1.5rem/1 var(--serif);color:var(--navy);display:block}
.anno .luogo{font-weight:700;color:var(--blu);font-size:.95rem}
.anno em{display:block;font-size:.92rem;color:var(--tenue);margin-top:.3rem}

/* fascia blu "responsabilità" */
.fascia{background:var(--navy);color:#fff;text-align:center;padding:3.5rem 0}
.fascia h2{color:#fff}
.fascia p.dichiarazione{font:400 clamp(1.3rem,2.8vw,1.9rem)/1.45 var(--serif);max-width:44rem;margin:0 auto 1rem}
.fascia small{opacity:.85}

/* candidature */
.invito{display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:center;padding:2.25rem}
.invito img{width:180px;border-radius:var(--raggio)}
@media (max-width:700px){.invito{grid-template-columns:1fr;text-align:center}.invito img{margin:0 auto;width:140px}.invito .pulsanti{justify-content:center}}

/* ---------- pagine interne ---------- */
.intestazione{background:var(--blu);color:#fff;padding:2.75rem 0 2.5rem}
.intestazione h1{color:#fff;margin:0}
.intestazione p{margin:.6rem 0 0;font-size:1.15rem;opacity:.95;max-width:48rem}
.briciole{font-size:.9rem;margin-bottom:.6rem}
.briciole a{color:#fff}
.articolo{padding:2.5rem;max-width:860px;margin:0 auto}
.articolo h2{color:var(--blu);margin-top:1.6em}
.articolo h2:first-child{margin-top:0}
.articolo blockquote{margin:1.5em 0;padding:1.25rem 1.5rem;border-left:5px solid var(--arancio);background:#fbf7f1;font:400 1.2rem/1.55 var(--serif);color:var(--navy)}
.articolo blockquote p:last-child{margin:0}
.lettera{border:1px solid var(--linea);border-radius:var(--raggio);padding:1.75rem;margin:1.5em 0;background:#fffefb}
.lettera .firma{text-align:right;font-style:italic}
.lettera .meta{color:var(--tenue);font-size:.92rem}
.glossario{background:var(--sfondo);border-radius:var(--raggio);padding:1.25rem 1.5rem;margin-top:1.5rem}
.glossario dt{font-weight:700;color:var(--navy)}
.glossario dd{margin:0 0 1rem}
.glossario dd:last-child{margin:0}
.avviso{display:flex;gap:1rem;align-items:flex-start;background:#eef4fb;border:1px solid #cddcf0;border-radius:var(--raggio);padding:1.1rem 1.25rem;margin:1.5em 0}
.avviso svg{width:24px;height:24px;flex:none;color:var(--blu)}
.avviso p{margin:0}
.con-indice{display:grid;grid-template-columns:240px 1fr;gap:2rem;align-items:start}
.indice{position:sticky;top:104px;padding:1.25rem}
.indice h2{font-size:1.1rem;margin-bottom:.5rem}
.indice ol{list-style:none;margin:0;padding:0}
.indice a{display:block;padding:.35rem 0;text-decoration:none;color:#555;border-bottom:1px solid var(--linea);font-size:.95rem}
.indice a:hover{color:var(--blu)}
@media (max-width:900px){.con-indice{grid-template-columns:1fr}.indice{position:static}}
@media (max-width:640px){.articolo{padding:1.5rem}}

/* archivio */
.cronologia{list-style:none;margin:0;padding:0;display:grid;gap:1.25rem}
.edizione{display:grid;grid-template-columns:220px 1fr;overflow:hidden;scroll-margin-top:100px}
.edizione .figura{background:#111;display:flex;align-items:center;justify-content:center;min-height:180px}
.edizione .figura img{max-height:260px;width:100%;object-fit:contain}
.edizione .testo{padding:1.5rem 1.75rem}
.edizione .numero{display:inline-block;background:var(--blu);color:#fff;border-radius:999px;padding:.15rem .8rem;font-weight:700;font-size:.85rem;margin-bottom:.5rem}
.edizione .numero.prossima{background:var(--arancio);color:var(--notte)}
.edizione h2{font-size:1.7rem;margin-bottom:.2rem}
.edizione .motto{font:400 1.2rem/1.4 var(--serif);color:var(--blu-scuro);margin-bottom:.6rem}
.edizione .quando{color:var(--tenue);font-weight:500}
.edizione .testo p:last-child{margin-bottom:0}
@media (max-width:640px){.edizione{grid-template-columns:1fr}.edizione .figura img{max-height:300px}}

/* download */
.scarica{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:1.5rem 0}
.scarica a{display:flex;gap:1rem;align-items:center;padding:1.25rem 1.4rem;text-decoration:none;color:inherit;border:2px solid var(--linea);border-radius:var(--raggio);transition:border-color .15s}
.scarica a:hover{border-color:var(--blu)}
.scarica svg{width:40px;height:40px;color:var(--rosso);flex:none}
.scarica b{display:block;color:var(--navy);font-size:1.08rem}
.scarica span{font-size:.9rem;color:var(--tenue)}
.capitoli{columns:2;column-gap:2rem;padding-left:1.2rem}
.capitoli li{break-inside:avoid;margin-bottom:.3rem}
@media (max-width:640px){.scarica{grid-template-columns:1fr}.capitoli{columns:1}}

/* ---------- piede ---------- */
.piede{background:var(--navy);color:#dfe8f5;margin-top:3rem;font-size:.95rem}
.piede .torna{display:flex;justify-content:flex-end}
.piede .torna a{background:var(--arancio);color:var(--notte);text-decoration:none;font-weight:700;padding:.6rem 1rem;border-radius:0 0 var(--raggio) var(--raggio);font-size:.85rem;display:flex;gap:.3rem;align-items:center}
.piede .torna svg{width:16px;height:16px}
.piede .griglia{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem;padding:2rem 16px 2.5rem}
.piede h2{color:#fff;font-size:1.25rem}
.piede a{color:#fff}
.piede ul{list-style:none;padding:0;margin:0}
.piede li{margin-bottom:.45rem}
.piede .nota{border-top:1px solid rgba(255,255,255,.15);padding:1.25rem 16px 1.5rem;font-size:.85rem;color:#b9c9e2}
.piede .nota p{margin:0 0 .4rem}
.piede .credito{display:flex;justify-content:center;padding:.9rem 16px 1.2rem;border-top:1px solid rgba(255,255,255,.15)}
.piede .credito a{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;color:#b9c9e2;font-size:.82rem;line-height:1.3}
.piede .credito a:hover b,.piede .credito a:focus-visible b{text-decoration:underline}
.piede .credito b{color:#fff}
.tricolore{display:flex;height:5px}
.tricolore i{flex:1}.tricolore i:nth-child(1){background:var(--verde)}.tricolore i:nth-child(2){background:#fff}.tricolore i:nth-child(3){background:var(--rosso)}
@media (max-width:800px){.piede .griglia{grid-template-columns:1fr;gap:1.5rem}}

/* comparsa al passaggio */
@media (prefers-reduced-motion:no-preference){
.js .entra{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.js .entra.vista{opacity:1;transform:none}
.js:not(.io) .entra:not(.vista){animation:compari 0s 3s forwards}
}
/* rete di sicurezza: se lo script non parte, i blocchi compaiono comunque */
@keyframes compari{to{opacity:1;transform:none}}
