/* simonegalloni.it — stile */
@font-face{font-family:"Newsreader";src:url("/fonts/newsreader-latin-opsz-normal.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url("/fonts/newsreader-latin-opsz-italic.woff2") format("woff2");font-weight:200 800;font-style:italic;font-display:swap}
@font-face{font-family:"Figtree";src:url("/fonts/figtree-latin-wght-normal.woff2") format("woff2");font-weight:300 900;font-style:normal;font-display:swap}

:root{
  --petrolio:#1B5C6B;
  --abisso:#0E3640;
  --teal:#2A9D8F;
  --teal-scuro:#1F7A6F;
  --rosa:#E8457A;
  --rosa-scuro:#C93263;
  --oro:#C9A84C;
  --oro-chiaro:#E6D39A;
  --carta:#F2F5F3;
  --carta-2:#E4ECE9;
  --inchiostro:#15292E;
  --grigio:#4A5F64;
  --bianco:#FFFFFF;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --misura:68ch;
  --gutter:clamp(16px,4vw,48px);
  --max:1240px;
  --r:6px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--carta);color:var(--inchiostro);font-family:var(--sans);font-size:1.0625rem;line-height:1.62;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:var(--petrolio);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{color:var(--teal-scuro)}
:focus-visible{outline:3px solid var(--oro);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:-999px;top:8px;background:var(--abisso);color:#fff;padding:10px 14px;z-index:100}
.skip:focus{left:8px}

h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:-.012em;margin:0 0 .5em;color:var(--abisso);font-optical-sizing:auto}
h1{font-size:clamp(2.6rem,6.4vw,5.2rem)}
h2{font-size:clamp(2rem,4vw,3.1rem)}
h3{font-size:clamp(1.3rem,2vw,1.6rem);line-height:1.2}
p{margin:0 0 1.1em;max-width:var(--misura)}
.lead{font-family:var(--serif);font-size:clamp(1.25rem,2.1vw,1.55rem);line-height:1.45;color:var(--inchiostro);max-width:52ch}
.nota{font-size:.92rem;color:var(--grigio)}

.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.sezione{padding:clamp(64px,9vw,120px) 0}
.sezione--stretta{padding:clamp(48px,6vw,80px) 0}

/* Header */
.testata{position:sticky;top:0;z-index:50;background:rgba(242,245,243,.94);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid rgba(27,92,107,.12)}
.testata .wrap{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:24px}
.firma{font-family:var(--serif);font-size:1.45rem;font-weight:500;color:var(--abisso);text-decoration:none;letter-spacing:-.01em;white-space:nowrap}
.firma:hover{color:var(--petrolio)}
.menu{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.menu a{display:block;padding:8px 12px;text-decoration:none;color:var(--inchiostro);font-weight:500;font-size:.98rem;border-radius:4px}
.menu a:hover{background:var(--carta-2);color:var(--abisso)}
.menu a[aria-current="page"]{color:var(--petrolio);box-shadow:inset 0 -2px 0 var(--oro)}
.menu-btn{display:none;background:none;border:1px solid rgba(27,92,107,.3);border-radius:4px;padding:8px 12px;font:600 .95rem var(--sans);color:var(--abisso);cursor:pointer}
@media (max-width:880px){
  .menu-btn{display:block}
  .menu{display:none;position:absolute;left:0;right:0;top:68px;flex-direction:column;background:var(--carta);padding:8px var(--gutter) 20px;border-bottom:1px solid rgba(27,92,107,.15)}
  .menu.aperto{display:flex}
  .menu a{padding:12px 4px;font-size:1.1rem;border-bottom:1px solid rgba(27,92,107,.08);border-radius:0}
  .menu a[aria-current="page"]{box-shadow:none;color:var(--petrolio)}
}

/* Buttons */
.azioni{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:999px;font:600 1rem var(--sans);text-decoration:none;border:1.5px solid transparent;transition:background-color .15s,color .15s,border-color .15s}
.btn--rosa{background:var(--rosa);color:#fff}
.btn--rosa:hover{background:var(--rosa-scuro);color:#fff}
.btn--linea{border-color:currentColor;color:var(--abisso)}
.btn--linea:hover{background:var(--abisso);color:#fff;border-color:var(--abisso)}
.scuro .btn--linea{color:#fff}
.scuro .btn--linea:hover{background:#fff;color:var(--abisso);border-color:#fff}

/* Hero home */
.hero{background:var(--petrolio);color:#fff;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:clamp(60px,9vw,120px);background:var(--carta)}
.hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,5vw,72px);align-items:end;padding-top:clamp(48px,8vw,104px)}
.hero h1{color:#fff;font-size:clamp(3.2rem,9.2vw,8.4rem);font-weight:400;line-height:.92;letter-spacing:-.03em;margin-bottom:.32em}
.hero h1 span{display:block}
.hero .ruolo{font-family:var(--serif);font-size:clamp(1.25rem,2.2vw,1.7rem);line-height:1.38;color:#E9F2F1;max-width:30ch;margin-bottom:0}
.hero .testo{padding-bottom:clamp(100px,13vw,170px)}
.hero .btn--linea{color:#fff}
.hero .btn--linea:hover{background:#fff;color:var(--abisso);border-color:#fff}
.hero figure{margin:0}
.hero figure img{border-radius:var(--r);box-shadow:0 30px 60px -30px rgba(5,25,30,.6);aspect-ratio:4/5;object-fit:cover;width:100%}
@media (max-width:760px){
  .hero .wrap{grid-template-columns:1fr;gap:28px;padding-top:36px}
  .hero .testo{padding-bottom:0}
  .hero figure{max-width:420px}
}

/* Credenziali */
.credenziali{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,3vw,40px)}
.credenziali li{border-top:2px solid var(--oro);padding-top:14px;font-size:1rem;line-height:1.45}
.credenziali strong{display:block;font-family:var(--serif);font-weight:500;font-size:1.35rem;color:var(--abisso);margin-bottom:4px;line-height:1.2}
@media (max-width:900px){.credenziali{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.credenziali{grid-template-columns:1fr}}

/* Stelo (teaser del percorso in home) */
.stelo{position:relative;margin-top:40px}
.stelo ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));position:relative}
.stelo ol::before{content:"";position:absolute;left:0;right:0;top:11px;height:2px;background:linear-gradient(90deg,var(--teal),var(--petrolio) 55%,var(--rosa))}
.stelo li a{display:block;text-decoration:none;color:var(--inchiostro);padding-top:34px;position:relative;padding-right:8px}
.stelo li a::before{content:"";position:absolute;top:4px;left:0;width:16px;height:16px;border-radius:50%;background:var(--carta);border:2px solid var(--petrolio);transition:transform .15s,background-color .15s}
.stelo li a:hover::before,.stelo li a:focus-visible::before{background:var(--oro);border-color:var(--oro);transform:scale(1.25)}
.stelo .anno{display:block;font-family:var(--serif);font-size:1.5rem;color:var(--abisso);line-height:1}
.stelo .cosa{display:block;font-size:.88rem;color:var(--grigio);line-height:1.35;margin-top:6px}
@media (max-width:900px){
  .stelo ol{grid-template-columns:1fr;gap:0}
  .stelo ol::before{left:7px;right:auto;top:0;bottom:0;width:2px;height:auto;background:linear-gradient(180deg,var(--teal),var(--petrolio) 55%,var(--rosa))}
  .stelo li a{padding:10px 0 14px 36px}
  .stelo li a::before{top:13px}
  .stelo .anno{display:inline;font-size:1.3rem;margin-right:10px}
  .stelo .cosa{display:inline}
}

/* Split image/text */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,88px);align-items:center}
.split--inv>figure{order:2}
.split figure{margin:0}
.split figure img{border-radius:var(--r);width:100%;object-fit:cover}
figcaption{font-size:.88rem;color:var(--grigio);margin-top:10px;line-height:1.45}
@media (max-width:820px){.split{grid-template-columns:1fr}.split--inv>figure{order:0}}

/* Sezione scura (libro) */
.scuro{background:var(--abisso);color:#E6EFEE}
.scuro h2,.scuro h3{color:#fff}
.scuro a:not(.btn){color:var(--oro-chiaro)}
.libro-blocco{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:center}
.libro-blocco img{width:100%;max-width:380px;border-radius:3px;box-shadow:18px 24px 50px -18px rgba(0,0,0,.6);transform:rotate(-2deg)}
@media (max-width:760px){.libro-blocco{grid-template-columns:1fr}.libro-blocco img{max-width:260px}}
blockquote{margin:0 0 1.4em;padding:0}
blockquote p{font-family:var(--serif);font-style:italic;font-size:clamp(1.35rem,2.4vw,1.85rem);line-height:1.35;max-width:36ch}
blockquote cite{font-style:normal;font-size:.95rem;color:inherit;opacity:.8}

/* Mosaico */
.mosaico{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:40px}
.mosaico figure{margin:0}
.mosaico img{width:100%;height:100%;object-fit:cover;border-radius:var(--r)}
.mosaico .a{grid-column:span 3;grid-row:span 2}
.mosaico .b{grid-column:span 3}
.mosaico .c{grid-column:span 3}
@media (max-width:700px){.mosaico{grid-template-columns:1fr}.mosaico .a,.mosaico .b,.mosaico .c{grid-column:auto;grid-row:auto}}

/* FAQ */
.faq{max-width:820px}
.faq details{border-top:1px solid rgba(27,92,107,.2)}
.faq details:last-child{border-bottom:1px solid rgba(27,92,107,.2)}
.faq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-family:var(--serif);font-size:1.3rem;color:var(--abisso);position:relative;line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:16px;font-family:var(--sans);font-size:1.6rem;color:var(--petrolio);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details>div{padding:0 0 20px}

/* Testata di pagina interna */
.intestazione{padding:clamp(48px,8vw,104px) 0 clamp(32px,4vw,56px)}
.intestazione .wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,72px);align-items:end}
.intestazione figure{margin:0}
.intestazione figure img{border-radius:var(--r);width:100%;object-fit:cover}
.intestazione--solo .wrap{grid-template-columns:1fr}
@media (max-width:820px){.intestazione .wrap{grid-template-columns:1fr}}
.briciole{font-size:.9rem;color:var(--grigio);margin-bottom:18px}
.briciole a{color:var(--grigio)}

/* Testo lungo */
.prosa{max-width:var(--misura)}
.prosa h2{margin-top:1.4em}
.prosa h2:first-child{margin-top:0}

/* ---------- STORYMAP ---------- */
.percorso{background:var(--bianco);border-top:1px solid rgba(27,92,107,.1);border-bottom:1px solid rgba(27,92,107,.1)}
.percorso-testa{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:20px 40px;margin-bottom:40px}
.percorso-testa h2{margin:0}
.filtri{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}
.filtri legend{font-size:.95rem;color:var(--grigio);margin-bottom:8px;padding:0;width:100%}
.filtri button{font:500 .93rem var(--sans);border:1.5px solid rgba(27,92,107,.35);background:transparent;color:var(--abisso);border-radius:999px;padding:8px 14px;cursor:pointer;min-height:40px}
.filtri button:hover{border-color:var(--petrolio)}
.filtri button[aria-pressed="true"]{background:var(--petrolio);border-color:var(--petrolio);color:#fff}
.conteggio{font-size:.93rem;color:var(--grigio);margin:14px 0 0;min-height:1.5em}

.mappa{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,5vw,80px)}
.quadro{position:sticky;top:100px;align-self:start;height:calc(100vh - 140px);max-height:640px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:20px}
.quadro svg{width:44px;height:100%;overflow:visible}
.quadro .stelo-base{stroke:var(--carta-2);stroke-width:3}
.quadro .stelo-pieno{stroke:var(--teal);stroke-width:3;transition:stroke-dashoffset .25s linear}
.quadro .nodo{fill:var(--bianco);stroke:var(--petrolio);stroke-width:2;transition:fill .2s,r .2s}
.quadro .nodo.fatto{fill:var(--petrolio)}
.quadro .nodo.attivo{fill:var(--oro);stroke:var(--oro)}
.quadro .nodo.spento{opacity:.25}
.quadro .info{display:flex;flex-direction:column;justify-content:center}
.anno-grande{font-family:var(--serif);font-weight:300;font-size:clamp(5rem,11vw,10rem);line-height:.85;letter-spacing:-.04em;color:var(--petrolio);font-variant-numeric:lining-nums;margin:0}
.settore-attivo{margin-top:18px;font-size:1rem;color:var(--grigio)}
.settore-attivo strong{color:var(--abisso);font-weight:600}
.titolo-attivo{font-family:var(--serif);font-size:1.5rem;color:var(--abisso);line-height:1.25;margin-top:6px;max-width:22ch}

.tappe{list-style:none;margin:0;padding:0}
.tappa{padding:0 0 clamp(56px,10vh,110px);scroll-margin-top:110px;transition:opacity .25s}
.tappa:last-child{padding-bottom:0}
.tappa .quando{font-family:var(--serif);font-size:1.15rem;color:var(--teal-scuro);margin-bottom:6px}
.tappa h3{font-size:clamp(1.6rem,2.8vw,2.2rem);margin-bottom:.45em}
.tappa figure{margin:20px 0 0}
.tappa figure img{border-radius:var(--r);width:100%;max-height:420px;object-fit:cover}
.etichette{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0;list-style:none}
.etichette li{font-size:.82rem;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--carta-2);color:var(--abisso)}
.tappa.spenta{opacity:.28}
.tappa .citazione{border-left:3px solid var(--oro);padding-left:16px;font-family:var(--serif);font-style:italic;font-size:1.2rem;line-height:1.45;color:var(--abisso)}
@media (max-width:900px){
  .mappa{grid-template-columns:1fr}
  .quadro{position:sticky;top:68px;z-index:5;height:auto;max-height:none;display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.96);padding:10px 0;margin:0 calc(var(--gutter)*-1);padding-left:var(--gutter);padding-right:var(--gutter);border-bottom:1px solid rgba(27,92,107,.12)}
  .quadro svg{display:none}
  .anno-grande{font-size:2.6rem}
  .settore-attivo{margin:0;font-size:.85rem}
  .titolo-attivo{font-size:1.05rem;margin:0}
  .quadro .info{flex-direction:row;align-items:center;gap:14px}
  .barra{position:absolute;left:0;bottom:-1px;height:3px;background:var(--teal);width:0}
  .tappa{padding-bottom:56px}
}
@media (min-width:901px){.barra{display:none}}

/* Quadranti Metodo4 */
.quadranti{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;max-width:880px;position:relative;margin-top:36px;border-radius:12px;overflow:hidden}
.quadrante{background:var(--bianco);padding:clamp(22px,3vw,36px)}
.quadrante:nth-child(1){border-top-left-radius:200px 120px}
.quadrante:nth-child(2){background:#E3F1EE}
.quadrante:nth-child(3){background:#E3F1EE}
.quadrante:nth-child(4){border-bottom-right-radius:200px 120px}
.quadrante:nth-child(1),.quadrante:nth-child(3){text-align:right}
.quadrante:nth-child(1) p,.quadrante:nth-child(3) p{margin-left:auto}
.quadrante h3{margin-bottom:.35em}
.quadrante p{font-size:1rem;margin-bottom:.6em;max-width:34ch}
.tipo{display:inline-block;font-size:.82rem;font-weight:600;padding:3px 10px;border-radius:999px}
.tipo--evidenze{background:var(--petrolio);color:#fff}
.tipo--tradizione{background:var(--oro-chiaro);color:#4B3D10}
.centro{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:clamp(120px,17vw,168px);aspect-ratio:1;border-radius:50%;background:var(--rosa);color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-family:var(--serif);font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.2;padding:16px;box-shadow:0 0 0 6px var(--carta)}
@media (max-width:640px){
  .quadranti{grid-template-columns:1fr}
  .quadrante,.quadrante:nth-child(1),.quadrante:nth-child(3){text-align:left;border-radius:0}
  .quadrante:nth-child(1) p,.quadrante:nth-child(3) p{margin-left:0}
  .centro{position:static;transform:none;width:auto;aspect-ratio:auto;border-radius:0;box-shadow:none;padding:18px}
}

/* Elenchi */
.lista-segni{list-style:none;padding:0;margin:0 0 1.2em;max-width:var(--misura)}
.lista-segni li{padding:10px 0 10px 30px;position:relative;border-bottom:1px solid rgba(27,92,107,.1)}
.lista-segni li::before{content:"";position:absolute;left:4px;top:19px;width:10px;height:10px;border-radius:50%;background:var(--teal)}
.lista-no li::before{background:none;border:2px solid var(--rosa);width:10px;height:10px}
.colonne{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,5vw,72px)}
@media (max-width:760px){.colonne{grid-template-columns:1fr}}

/* Team */
.team{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.5vw,32px);margin-top:32px}
.team div{border-top:2px solid var(--petrolio);padding-top:14px}
.team h3{font-size:1.25rem;margin-bottom:.2em}
.team .ruolo{font-weight:600;color:var(--teal-scuro);font-size:.95rem;margin-bottom:.4em}
.team p{font-size:.98rem}
@media (max-width:900px){.team{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.team{grid-template-columns:1fr}}

/* Valori */
.valori{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.5vw,32px)}
.valori h3{font-size:1.5rem;margin-bottom:.25em;color:var(--petrolio)}
.valori p{font-size:.98rem}
@media (max-width:900px){.valori{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.valori{grid-template-columns:1fr}}

/* Contatti */
.percorsi-contatto{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;background:rgba(27,92,107,.15);border-radius:var(--r);overflow:hidden}
.percorsi-contatto>div{background:var(--bianco);padding:clamp(24px,3vw,40px);display:flex;flex-direction:column}
.percorsi-contatto p{flex:1}
@media (max-width:860px){.percorsi-contatto{grid-template-columns:1fr}}
.social{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:16px 0 0}

/* Piede */
.piede{background:var(--abisso);color:#BFD3D2;padding:56px 0 40px;font-size:.95rem}
.piede a{color:#fff}
.piede .griglia{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:32px}
.piede .firma{color:#fff;font-size:1.6rem}
.piede ul{list-style:none;margin:0;padding:0}
.piede li{margin:0 0 8px}
.piede h2{font-family:var(--sans);font-size:1rem;font-weight:600;color:#fff;margin:0 0 12px;letter-spacing:0}
.piede .legale{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:20px;font-size:.85rem;color:#9DB6B5}
.piede .legale p{max-width:none;margin:0 0 4px}
@media (max-width:760px){.piede .griglia{grid-template-columns:1fr}}

.centrato{text-align:center}
.mt0{margin-top:0}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.intestazione .wrap.libro-blocco{grid-template-columns:minmax(0,4fr) minmax(0,7fr);align-items:center}
@media (max-width:760px){.intestazione .wrap.libro-blocco{grid-template-columns:1fr}}
@media (max-width:900px){.tappa{scroll-margin-top:150px}}
@media (min-width:641px){
  .quadrante:nth-child(1){padding-right:110px;padding-bottom:56px}
  .quadrante:nth-child(2){padding-left:110px;padding-bottom:56px}
  .quadrante:nth-child(3){padding-right:110px;padding-top:56px}
  .quadrante:nth-child(4){padding-left:110px;padding-top:56px}
}
.split figure.ritratto{max-width:440px;justify-self:center}
/* Corsi */
.corso{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,5vw,72px);padding:clamp(36px,5vw,56px) 0;border-top:1px solid rgba(27,92,107,.18)}
.corso h2{font-size:clamp(1.7rem,3vw,2.4rem);margin-bottom:.2em}
.corso .sotto{font-weight:600;color:var(--teal-scuro);margin-bottom:1em}
.corso--arrivo h2{color:var(--grigio)}
@media (max-width:820px){.corso{grid-template-columns:1fr}}
.corsi-breve{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.5vw,32px)}
.corsi-breve a{display:block;text-decoration:none;color:var(--inchiostro);border-top:2px solid var(--petrolio);padding-top:14px;height:100%}
.corsi-breve a:hover strong{color:var(--teal-scuro);text-decoration:underline;text-underline-offset:.18em}
.corsi-breve strong{display:block;font-family:var(--serif);font-weight:500;font-size:1.35rem;color:var(--abisso);line-height:1.2;margin-bottom:6px}
.corsi-breve span{font-size:.98rem;color:var(--grigio)}
@media (max-width:900px){.corsi-breve{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.corsi-breve{grid-template-columns:1fr}}
.tappa figure.verticale{max-width:340px}
.tappa figure.verticale img{max-height:none}
.intestazione--inv .wrap{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center}
@media (max-width:820px){.intestazione--inv .wrap{grid-template-columns:1fr}.intestazione--inv figure{order:2;max-width:420px}}
.docente{margin-top:clamp(48px,6vw,80px);padding-top:clamp(36px,5vw,56px);border-top:1px solid rgba(27,92,107,.18)}
/* Anno che cambia */
@keyframes gira{from{opacity:0;transform:translateY(.35em)}to{opacity:1;transform:none}}
.anno-grande.gira{animation:gira .45s cubic-bezier(.2,.7,.2,1)}
/* Timeline su mobile: gambo che cresce lungo le tappe */
@media (max-width:900px){
  .anno-grande{font-size:3.4rem;min-width:3.2ch}
  .quadro{padding-top:12px;padding-bottom:12px}
  .tappe{position:relative;padding-left:34px;--p:0}
  .tappe::before{content:"";position:absolute;left:7px;top:8px;bottom:0;width:3px;border-radius:2px;background:var(--carta-2)}
  .tappe::after{content:"";position:absolute;left:7px;top:8px;width:3px;border-radius:2px;background:var(--teal);height:calc((100% - 8px) * var(--p));transition:height .15s linear}
  .tappa{position:relative}
  .tappa::before{content:"";position:absolute;left:-34px;top:6px;width:17px;height:17px;border-radius:50%;background:var(--bianco);border:2px solid var(--petrolio);z-index:1;transition:background-color .2s,transform .2s,border-color .2s}
  .tappa.fatta::before{background:var(--petrolio)}
  .tappa.attiva::before{background:var(--oro);border-color:var(--oro);transform:scale(1.3)}
  .tappa.spenta::before{opacity:.35}
}
