/* Futura — token, componenti e layout copiati dal design system (handoff-sito).
   Unica modifica: il percorso dei font in @font-face. Non modificare a mano:
   riallinea i sorgenti e rigenera. */
/* Work Sans variabile (100–900), locale */
@font-face{font-family:'Work Sans';font-style:italic;font-weight:100 900;font-display:swap;src:url('../fonts/WorkSans-var-italic-latin-ext.woff2') format('woff2-variations'),url('../fonts/WorkSans-var-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Work Sans';font-style:italic;font-weight:100 900;font-display:swap;src:url('../fonts/WorkSans-var-italic-latin.woff2') format('woff2-variations'),url('../fonts/WorkSans-var-italic-latin.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:'Work Sans';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/WorkSans-var-normal-latin-ext.woff2') format('woff2-variations'),url('../fonts/WorkSans-var-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/WorkSans-var-normal-latin.woff2') format('woff2-variations'),url('../fonts/WorkSans-var-normal-latin.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;}
/* Palette Futura — HEX ufficiali, esattamente questi. Regole d'uso: in ogni sezione un colore domina e l'altro punteggia; mai rosso e blu al 50/50 o a bande affiancate; il rosso mai per i testi correnti; un solo elemento rosso per schermata. Mai bianco puro come fondo. */
:root{
--panna:#FFFBF2;--blu-futura:#34539C;--rosso-futura:#D44937;--inchiostro:#1A1A1A;
/* Derivati funzionali: stati e veli, NON nuovi colori di marca */
--blu-scuro:#2A4485;--rosso-scuro:#B93D2D;
--inchiostro-70:rgba(26,26,26,.72);--inchiostro-55:rgba(26,26,26,.55);
--linea:rgba(26,26,26,.15);--linea-forte:rgba(26,26,26,.32);--linea-blu:rgba(52,83,156,.3);
--velo-blu:rgba(52,83,156,.07);--velo-rosso:rgba(212,73,55,.08);
--panna-70:rgba(255,251,242,.74);--panna-linea:rgba(255,251,242,.24);
--campo:rgba(255,255,255,.55);
/* Semantici */
--surface-page:var(--panna);--surface-card:var(--panna);--surface-invito:var(--blu-futura);--surface-footer:var(--inchiostro);
--text-body:var(--inchiostro);--text-muted:var(--inchiostro-55);--text-heading:var(--blu-futura);--text-on-dark:var(--panna);
--link:var(--blu-futura);--link-hover:var(--blu-scuro);--accent:var(--rosso-futura);
--btn-primario-bg:var(--blu-futura);--btn-primario-bg-hover:var(--blu-scuro);--btn-primario-fg:var(--panna);
--btn-accento-bg:var(--rosso-futura);--btn-accento-bg-hover:var(--rosso-scuro);--btn-accento-fg:var(--panna);
--focus-ring:rgba(52,83,156,.4);
}/* Tutto in Work Sans: Bold titoli, SemiBold titoletti, Regular testi, Medium maiuscolo con tracking aperto per etichette/date/menu. Testi correnti mai sotto i 16px. */
:root{
--font-sans:'Work Sans',system-ui,-apple-system,'Segoe UI',sans-serif; /* @kind font */
/* Display in Work Sans Bold (decisione attuale). Per cambiarlo: sostituire --font-display e --w-display. */
--font-display:var(--font-sans); /* @kind font */
--w-display:700; /* @kind font */
--w-regular:400; /* @kind font */
--w-medium:500; /* @kind font */
--w-semibold:600; /* @kind font */
--w-bold:700; /* @kind font */
--fs-display:clamp(46px,6.5vw,80px); /* @kind font */
--fs-h1:clamp(38px,4.6vw,56px); /* @kind font */
--fs-h2:clamp(30px,3.2vw,40px); /* @kind font */
--fs-h3:clamp(22px,2vw,26px); /* @kind font */
--fs-h4:20px; /* @kind font */
--fs-body-lg:19px; /* @kind font */
--fs-body:17px; /* @kind font */
--fs-body-min:16px; /* @kind font */
--fs-label:14px; /* @kind font */
--lh-display:1.03; /* @kind font */
--lh-heading:1.12; /* @kind font */
--lh-body:1.6; /* @kind font */
--track-display:-.02em; /* @kind font */
--track-label:.14em; /* @kind font */
--misura:34em; /* @kind spacing */
}/* Molta aria: sezioni generose, angoli appena arrotondati, ombre quasi assenti. */
:root{
--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--sp-10:128px;
--sezione-y:clamp(72px,9vw,120px); /* @kind spacing */
--container:1200px;--container-largo:1320px;
--gutter:clamp(20px,4.5vw,56px); /* @kind spacing */
--radius-card:8px;--radius-btn:10px;--radius-foto:8px;--radius-tag:6px;--radius-campo:10px;
--ombra-velo:0 1px 2px rgba(26,26,26,.05);
--ombra-alzata:0 10px 30px -12px rgba(26,26,26,.14);
}*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--surface-page);color:var(--text-body);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--w-regular);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5{margin:0;color:var(--text-heading);font-weight:var(--w-bold);line-height:var(--lh-heading);text-wrap:balance}
h1,h2{font-family:var(--font-display);font-weight:var(--w-display);letter-spacing:0}
p{margin:0;text-wrap:pretty}
a{color:var(--link);text-decoration:underline;text-decoration-color:var(--linea-blu);text-decoration-thickness:1.5px;text-underline-offset:3px;transition:color .15s,text-decoration-color .15s}
a:hover{color:var(--link-hover);text-decoration-color:currentColor}
::selection{background:var(--blu-futura);color:var(--panna)}
img{max-width:100%;display:block}
:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}
.etichetta{font-size:var(--fs-label);font-weight:var(--w-medium);letter-spacing:var(--track-label);text-transform:uppercase;line-height:1.35}
.container{max-width:var(--container);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.container--largo{max-width:var(--container-largo)}
.colonna-lettura{max-width:var(--misura)}/* Classi componente Futura (.fut-*) — spedite ai consumatori via styles.css */
/* Bottoni */
.fut-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-sans);font-size:17px;font-weight:var(--w-semibold);line-height:1;letter-spacing:.005em;padding:15px 26px;border-radius:var(--radius-btn);border:1.5px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background-color .15s,color .15s,border-color .15s,transform .15s,box-shadow .15s}
.fut-btn--primario:hover,.fut-btn--accento:hover,.fut-btn--secondario:hover,.fut-btn--panna:hover{transform:translateY(-2px);box-shadow:var(--ombra-alzata)}
.fut-btn:active{transform:translateY(1px);box-shadow:none}
.fut-btn--primario{background:var(--btn-primario-bg);color:var(--btn-primario-fg)}
.fut-btn--primario:hover{background:var(--btn-primario-bg-hover);color:var(--btn-primario-fg)}
.fut-btn--accento{background:var(--btn-accento-bg);color:var(--btn-accento-fg)}
.fut-btn--accento:hover{background:var(--btn-accento-bg-hover);color:var(--btn-accento-fg)}
.fut-btn--secondario{background:transparent;color:var(--blu-futura);border-color:var(--blu-futura)}
.fut-btn--secondario:hover{background:var(--velo-blu);color:var(--blu-scuro)}
.fut-btn--panna{background:transparent;color:var(--panna);border-color:var(--panna-linea)}
.fut-btn--panna:hover{background:rgba(255,251,242,.12);color:var(--panna);border-color:var(--panna-70)}
.fut-btn--link{background:none;border:none;padding:0;border-radius:0;color:var(--link);text-decoration:underline;text-decoration-color:var(--linea-blu);text-decoration-thickness:1.5px;text-underline-offset:4px}
.fut-btn--link:hover{color:var(--link-hover);text-decoration-color:currentColor}
.fut-btn--sm{font-size:16px;padding:11px 18px}
.fut-btn--lg{font-size:19px;padding:18px 34px}
.fut-btn[disabled],.fut-btn--disabilitato{opacity:.45;pointer-events:none}
.fut-freccia{display:inline-block;transition:transform .15s;font-weight:400}
.fut-btn:hover .fut-freccia,a:hover .fut-freccia{transform:translateX(3px)}
/* Tag */
.fut-tag{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);font-size:13px;font-weight:var(--w-medium);letter-spacing:.12em;text-transform:uppercase;line-height:1;padding:7px 10px;border-radius:var(--radius-tag);border:1px solid}
.fut-tag--blu{color:var(--blu-futura);border-color:var(--linea-blu);background:var(--velo-blu)}
.fut-tag--rosso{color:var(--rosso-scuro);border-color:rgba(212,73,55,.35);background:var(--velo-rosso)}
.fut-tag--neutro{color:var(--inchiostro-70);border-color:var(--linea);background:transparent}
/* Card */
.fut-card{background:var(--surface-card);border:1px solid var(--linea);border-radius:var(--radius-card);box-shadow:var(--ombra-velo)}
a.fut-card{display:block;text-decoration:none;color:inherit}
.fut-card--vivo{transition:transform .18s,box-shadow .18s,border-color .18s}
.fut-card--vivo:hover{transform:translateY(-3px);box-shadow:var(--ombra-alzata);border-color:var(--linea-forte)}
/* Campi modulo */
.fut-field{display:flex;flex-direction:column;gap:8px}
.fut-field>label{font-size:var(--fs-label);font-weight:var(--w-medium);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--inchiostro-70)}
.fut-input,.fut-textarea{width:100%;font-family:var(--font-sans);font-size:17px;line-height:1.4;color:var(--text-body);background:var(--campo);border:1.5px solid var(--linea-forte);border-radius:var(--radius-campo);padding:13px 14px;transition:border-color .15s,box-shadow .15s;appearance:none}
.fut-input::placeholder,.fut-textarea::placeholder{color:var(--inchiostro-55)}
.fut-input:focus,.fut-textarea:focus{outline:none;border-color:var(--blu-futura);box-shadow:0 0 0 3px var(--focus-ring)}
.fut-textarea{min-height:130px;resize:vertical}
.fut-nota{font-size:16px;color:var(--text-muted)}
/* Segno a mano (max uno per schermata, sempre rosso) */
.fut-segno{position:relative;display:inline-block}
.fut-segno>svg{position:absolute;pointer-events:none;overflow:visible;color:var(--rosso-futura)}
.fut-segno--sottolineatura>svg{left:-2%;width:104%;height:.32em;bottom:-.16em}
.fut-segno--cerchio>svg{left:-9%;top:-24%;width:118%;height:148%}
/* Header */
.fut-header{background:var(--panna);border-bottom:1px solid var(--linea);position:sticky;top:0;z-index:50;transition:background-color .25s,box-shadow .25s}
.fut-header.scrolled{background:color-mix(in srgb,var(--panna) 80%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px 14px rgba(26,26,26,.06)}
.fut-header__inner{max-width:var(--container-largo);margin:0 auto;padding:0 var(--gutter);height:78px;display:flex;align-items:center;gap:28px}
.fut-logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.fut-nav{display:flex;gap:24px;margin-left:auto;align-items:center}
.fut-nav a{position:relative;font-size:var(--fs-label);font-weight:var(--w-medium);letter-spacing:var(--track-label);text-transform:uppercase;text-decoration:none;color:var(--inchiostro);padding:6px 0;border-bottom:2px solid transparent;transition:color .15s}
.fut-nav a::after{content:'';position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--blu-futura);transition:right .22s ease}
.fut-nav a:hover::after{right:0}
.fut-nav a[aria-current="page"]::after{content:none}
.fut-nav a:hover{color:var(--blu-futura)}
.fut-nav a[aria-current="page"]{color:var(--blu-futura);border-bottom-color:var(--blu-futura)}
.fut-burger{display:none;width:44px;height:44px;margin-left:auto;background:none;border:1.5px solid var(--linea-forte);border-radius:8px;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0}
.fut-burger span{display:block;width:18px;height:2px;background:var(--inchiostro);border-radius:2px}
.fut-header__panel{display:none}
@media (max-width:940px){
.fut-nav{display:none}
.fut-burger{display:inline-flex}
.fut-header .fut-header__cta{display:none}
.fut-header__panel.aperto{display:block;position:absolute;top:100%;left:0;right:0;background:var(--panna);border-bottom:1px solid var(--linea);box-shadow:var(--ombra-alzata);padding:8px var(--gutter) 24px}
.fut-header__panel a:not(.fut-btn){display:block;padding:15px 0;border-bottom:1px solid var(--linea);font-size:16px;font-weight:var(--w-medium);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--inchiostro)}
.fut-header__panel .fut-btn{margin-top:18px;width:100%}
}
/* Footer */
.fut-footer{background:var(--surface-footer);color:var(--panna);padding:var(--sp-8) 0 var(--sp-5);font-size:16px}
.fut-footer a{color:var(--panna);text-decoration:none}
.fut-footer a:hover{color:var(--panna);text-decoration:underline;text-decoration-color:var(--panna-linea)}
.fut-footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;max-width:var(--container-largo);margin:0 auto;padding:0 var(--gutter)}
.fut-footer__titolo{font-size:13px;font-weight:var(--w-medium);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--panna-70);margin:0 0 14px}
.fut-footer__col a{display:block;padding:4px 0}
.fut-footer__legal{max-width:var(--container-largo);margin:52px auto 0;padding:20px var(--gutter) 0;border-top:1px solid var(--panna-linea);display:flex;gap:8px 24px;flex-wrap:wrap;justify-content:space-between;font-size:14px;color:var(--panna-70)}
.fut-footer__legal a{color:var(--panna-70)}
@media (max-width:880px){.fut-footer__grid{grid-template-columns:1fr 1fr}}
@media (max-width:540px){.fut-footer__grid{grid-template-columns:1fr}}
/* Card evento / progetto / news */
.fut-evento{display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}
.fut-evento__corpo{padding:clamp(24px,3.4vw,44px);display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.fut-evento__media{min-height:280px;position:relative}
@media (max-width:820px){.fut-evento{grid-template-columns:1fr}.fut-evento__media{min-height:220px;order:-1}}
.fut-progetto{overflow:hidden;display:flex;flex-direction:column;height:100%}
.fut-progetto__media{aspect-ratio:4/3;position:relative;background:var(--velo-blu);overflow:hidden}
.fut-progetto__media img{transition:transform .4s ease}
a.fut-card:hover .fut-progetto__media img{transform:scale(1.045)}
.fut-progetto__corpo{padding:20px 22px 26px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;flex:1}
.fut-news{padding:22px 22px 26px;display:flex;flex-direction:column;gap:10px;align-items:flex-start;height:100%}
.fut-news h4{font-size:var(--fs-h4)}
/* Placeholder fotografico documentario */
.fut-foto-placeholder{position:absolute;inset:0;display:flex;align-items:flex-end;background:linear-gradient(160deg,rgba(52,83,156,.14),rgba(52,83,156,.05) 55%,rgba(212,73,55,.06));border:0}
.fut-foto-placeholder figcaption{padding:12px 14px;font-size:13px;font-weight:var(--w-medium);letter-spacing:.1em;text-transform:uppercase;color:var(--inchiostro-55)}/* Animazioni in entrata */
.rivela{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
.rivela--vista{opacity:1;transform:none}
.rivela-foto{opacity:0;filter:blur(14px);transform:scale(1.03);transition:opacity .9s ease,filter 1.1s ease,transform 1.1s ease}
.rivela-foto.rivela--vista{opacity:1;filter:blur(0);transform:none}
.testata-hero .rivela,.testata-hero__foto.rivela-foto{transition-duration:1s,1.2s,1.2s}
@media (prefers-reduced-motion:reduce){.rivela,.rivela-foto{opacity:1;transform:none;filter:none;transition:none}}
/* Layout del sito Futura — solo per il kit; i componenti stanno in components.css */
.pagina{min-height:100vh;display:flex;flex-direction:column}
.pagina main{flex:1}
.sezione{padding:var(--sezione-y) 0}
.sezione--senza-testa{padding-top:0}
.testa-sezione{display:flex;flex-direction:column;gap:14px;margin-bottom:clamp(26px,4vw,44px)}
/* Testata hero: foto di sfondo, testo sopra */
.testata-hero{position:relative;display:flex;align-items:flex-end;min-height:clamp(440px,72vh,860px);overflow:hidden}
.testata-hero__foto{position:absolute;inset:0}
.testata-hero__foto::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(26,26,26,.72) 0%,rgba(26,26,26,.32) 45%,rgba(26,26,26,.08) 75%,rgba(26,26,26,.15) 100%)}
.testata-hero__testo{position:relative;z-index:1;width:100%;padding-top:clamp(48px,8vh,96px);padding-bottom:clamp(40px,7vh,84px)}
.testata-hero__testo h1{color:var(--panna);font-size:var(--fs-h1);line-height:var(--lh-display);letter-spacing:0;max-width:16em}
.testata-hero__testo .hero__sotto,.testata-hero__testo .articolo-sotto{color:var(--panna);opacity:.92;text-shadow:0 1px 12px rgba(26,26,26,.3);font-size:clamp(18px,1.5vw,21px);line-height:1.55;max-width:30em;margin-top:16px}
.hero{padding:clamp(36px,5vh,56px) 0 clamp(28px,4.5vh,44px)}
.hero__grid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(36px,5vw,80px);align-items:center}
.hero h1{font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:0}
.hero__sotto{font-size:clamp(18px,1.6vw,21px);line-height:1.55;max-width:28em;margin-top:16px}
.hero__foto{position:relative;aspect-ratio:4/5;border-radius:var(--radius-foto);overflow:hidden}
@media (max-width:880px){.hero__grid{grid-template-columns:1fr}.hero__foto{aspect-ratio:16/11}}
.griglia-3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
@media (max-width:980px){.griglia-3{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.griglia-3{grid-template-columns:1fr}}
.chi-testo{font-size:clamp(22px,2.3vw,29px);line-height:1.5;max-width:36em}
.invito{background:var(--surface-invito)}
.invito .etichetta{color:var(--panna-70)}
.invito h2{color:var(--panna);font-size:clamp(28px,3.4vw,42px);line-height:1.2;max-width:26em}
.invito p{color:var(--panna)}
/* Pagina contenuto */
.articolo-testa{padding:clamp(40px,6vh,72px) 0 clamp(28px,4.5vh,48px)}
.articolo-testa h1{font-size:var(--fs-h1);letter-spacing:-.015em;max-width:16em}
.articolo-sotto{font-size:clamp(18px,1.5vw,21px);line-height:1.55;max-width:34em;margin-top:18px;color:var(--inchiostro-70)}
.foto-largo{position:relative;aspect-ratio:21/9;border-radius:var(--radius-foto);overflow:hidden}
.testata-foto{position:relative;height:clamp(420px,80vh,900px);overflow:hidden;margin-bottom:var(--sezione-y)}
.testata-foto img{object-position:center 32%}
@media (max-width:700px){.testata-foto{height:clamp(260px,48vh,420px)}}
@media (max-width:700px){.foto-largo{aspect-ratio:16/10}}
.prosa{max-width:var(--misura)}
.chi-grid{display:grid;grid-template-columns:minmax(0,var(--misura)) 1fr;gap:clamp(40px,6vw,100px);align-items:start}
.chi-grid__foto{position:relative;aspect-ratio:4/5;border-radius:var(--radius-foto);overflow:hidden;position:sticky;top:32px}
@media (max-width:880px){.chi-grid{grid-template-columns:1fr}.chi-grid__foto{position:relative;top:0;aspect-ratio:16/10;order:2}}
.prosa p+p{margin-top:1.15em}
.citazione{margin:clamp(36px,5vw,60px) 0;font-size:clamp(25px,2.8vw,34px);font-weight:700;color:var(--blu-futura);letter-spacing:-.015em;line-height:1.3;max-width:22em}
.galleria{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.6vw,20px)}
.galleria>div{position:relative;aspect-ratio:4/3;border-radius:var(--radius-foto);overflow:hidden}
.galleria img{transition:transform .4s ease}
.galleria>div:hover img{transform:scale(1.035)}
@media (max-width:640px){.galleria{grid-template-columns:1fr}.galleria>div{aspect-ratio:16/10}}
/* Pagina partecipa */
.modi{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,24px)}
@media (max-width:900px){.modi{grid-template-columns:1fr}}
.modo{padding:28px 26px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.modo h4{font-size:21px}
.modo p{color:var(--inchiostro-70);font-size:16px}
.modulo{max-width:680px;padding:clamp(24px,3.5vw,44px)}
.modulo form{display:grid;gap:18px}
@media (min-width:640px){.modulo .due-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}}
/* Pagina contatti */
.contatto-mail{display:inline-block;font-family:var(--font-display);font-weight:var(--w-display);font-size:clamp(30px,5vw,64px);line-height:1.1;color:var(--blu-futura);text-decoration:none;border-bottom:3px solid var(--linea-blu);padding-bottom:6px;transition:color .15s,border-color .15s;overflow-wrap:anywhere}
.contatto-mail:hover{color:var(--blu-scuro);border-color:var(--blu-scuro)}
/* Fascia social (al posto delle news) */
.social-lista{display:flex;flex-direction:column;max-width:760px}
.social-lista a{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:22px 0;border-top:1.5px solid var(--linea);text-decoration:none}
.social-lista a:last-child{border-bottom:1.5px solid var(--linea)}
.social-nome{font-weight:600;font-size:clamp(22px,2.2vw,28px);color:var(--blu-futura)}
.social-nome::after{content:' ↗';display:inline-block;transition:transform .18s}
.social-lista a:hover .social-nome::after{transform:translate(3px,-3px)}
.social-lista a:hover .social-nome{color:var(--blu-scuro)}
.social-desc{font-size:16px;color:var(--inchiostro-55);text-align:right}
@media (max-width:560px){.social-lista a{flex-direction:column;gap:6px}.social-desc{text-align:left}}
/* Repertorio (Cosa facciamo) */
.storico{display:flex;flex-direction:column;max-width:860px}
.storico__riga{display:grid;grid-template-columns:170px 1fr auto;gap:20px;align-items:baseline;padding:18px 0;border-top:1.5px solid var(--linea)}
.storico__riga:last-child{border-bottom:1.5px solid var(--linea)}
.storico__quando{color:var(--blu-futura)}
.storico__cosa{font-weight:600;font-size:19px}
.storico__dove{font-size:16px;color:var(--inchiostro-55)}
@media (max-width:640px){.storico__riga{grid-template-columns:1fr;gap:4px}}
a.storico__riga{text-decoration:none;color:inherit}
a.storico__riga:hover .storico__cosa{color:var(--blu-futura)}
/* Cosa facciamo: lista a sinistra, scheda a destra */
.cf{display:grid;grid-template-columns:minmax(230px,320px) 1fr;gap:clamp(32px,5vw,80px);align-items:start}
.cf__lista{display:flex;flex-direction:column;position:sticky;top:24px}
.cf__voce{display:flex;flex-direction:column;gap:3px;padding:18px 0;border-top:1.5px solid var(--linea);text-decoration:none;transition:padding-left .2s ease}
@media (min-width:821px){.cf__voce:not(.attiva):hover{padding-left:8px}}
.cf__voce:last-child{border-bottom:1.5px solid var(--linea)}
.cf__nome{font-weight:600;font-size:20px;color:var(--inchiostro-70)}
.cf__sub{font-size:15px;color:var(--inchiostro-55)}
.cf__voce:hover .cf__nome{color:var(--blu-futura)}
.cf__voce.attiva .cf__nome{color:var(--blu-futura)}
.cf__voce.attiva{box-shadow:inset 3px 0 0 var(--rosso-futura);padding-left:14px}
.cf__scheda{min-width:0}
.cf__foto{position:relative;aspect-ratio:16/9;border-radius:var(--radius-foto);overflow:hidden;margin-bottom:clamp(22px,3vw,34px)}
.cf__galleria{position:absolute;inset:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.cf__galleria::-webkit-scrollbar{display:none}
.cf__slide{flex:0 0 100%;width:100%;height:100%;object-fit:cover;scroll-snap-align:start;scroll-snap-stop:always}
.cf__freccia{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:999px;border:none;background:var(--panna);color:var(--blu-futura);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 12px rgba(0,0,0,.2);opacity:.92;transition:transform .2s ease,opacity .2s ease}
.cf__freccia:hover{transform:translateY(-50%) scale(1.08);opacity:1}
.cf__freccia:disabled{opacity:0;pointer-events:none}
.cf__freccia--sx{left:14px}
.cf__freccia--dx{right:14px}
.cf__conta{position:absolute;right:14px;bottom:12px;padding:4px 12px;border-radius:999px;background:rgba(15,20,30,.55);color:#fff;font-size:13px;font-weight:600;letter-spacing:.02em;backdrop-filter:blur(6px)}
.cf__date{margin-top:clamp(26px,3.5vw,40px);display:flex;flex-direction:column;gap:0}
.cf__data{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:baseline;padding:14px 0;border-top:1.5px solid var(--linea)}
.cf__data:last-child{border-bottom:1.5px solid var(--linea)}
.cf__date .etichetta{margin-bottom:12px}
.cf__quando{font-weight:600;color:var(--blu-futura);font-size:16px}
.cf__dove{font-size:16px;color:var(--inchiostro-70)}
@media (max-width:820px){
.cf{grid-template-columns:1fr}
.cf__lista{position:static;flex-direction:row;overflow-x:auto;gap:10px;padding-bottom:6px}
.cf__voce,.cf__voce:last-child{border:1.5px solid var(--linea);border-radius:999px;padding:10px 18px;white-space:nowrap;flex:none}
.cf__voce.attiva{box-shadow:none;border-color:var(--blu-futura);background:var(--blu-futura)}
.cf__voce.attiva .cf__nome{color:var(--panna)}
.cf__voce .cf__sub{display:none}
.cf__nome{font-size:16px}
.cf__data{grid-template-columns:1fr;gap:2px}
.cf__freccia{display:none}
}
/* Schede progetto (Cosa facciamo) */
.prj{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(28px,4.5vw,72px);align-items:center}
.prj__foto{position:relative;aspect-ratio:4/3;border-radius:var(--radius-foto);overflow:hidden}
.prj__testo p{font-size:var(--fs-body-lg,18px)}
@media (max-width:820px){.prj{grid-template-columns:1fr}.prj__foto{order:0!important}}