/*
Accessibilita di VisitCaprarola — fase F6.

SCOPO
Chiudere i difetti di accessibilita che le fasi precedenti non hanno toccato,
senza modificare una riga di markup: collegamento di salto, messa a fuoco
visibile ovunque, contrasto sotto soglia, bersagli tattili e moduli. Il
perimetro sono footer, archivi, ricerca, paginazione, commenti, Contact Form 7,
404 e cartina. Testata, navigazione, homepage e scheda luogo sono gia state
sistemate in F4 e F5 e qui non si toccano.

ORDINE DI CARICAMENTO
Va accodato per ULTIMO e su TUTTE le pagine, dopo vc-foundation-core.css,
style.css, vc-mobile.css, vc-nav.css e i due fogli di pagina (vc-home.css e
vc-scheda.css). A parita di specificita vince l'ultima regola dichiarata,
quindi la tecnica e sempre la stessa dei fogli precedenti: replicare la
specificita esatta della regola da battere e arrivare dopo. In questo file non
c'e nessun !important.

Consuma i token di vc-tokens.css, quindi va dichiarata la dipendenza. Ogni
var() porta comunque con se il proprio valore di ripiego, qui e in ogni punto
d'uso.

I BREAKPOINT sono quelli di Foundation 5 gia in uso: small fino a 40em, medium
da 40.063em, large da 64.063em. Le media query non accettano var(), quindi i
valori andrebbero scritti per esteso — in questo file, di fatto, nessuna regola
ha bisogno di un breakpoint: tutto cio che segue vale a ogni larghezza.

NON SI TOCCANO .row, .columns, .large-*, .medium-*, .small-*: nessuna
dichiarazione di questo foglio ha per bersaglio una di quelle classi.

--------------------------------------------------------------------------
LE COSE DEL BRIEF CHE LA LETTURA DEI FILE HA SMENTITO. Stanno in cima cosi non
sfuggono a nessuno; sono spiegate per esteso nella relazione.

1. IL BERSAGLIO DEL SALTO SI CHIAMA #content, NON #contenuto. Verificato:
   header.php riga 76 stampa gia <a class="vc-salta" href="#content">, e tutti
   e diciotto i template hanno gia <div id="content" tabindex="-1">. Non serve
   aggiungere nessun id: c'e tutto. Questo foglio stila .vc-salta e neutralizza
   il contorno sul contenitore di arrivo (sezione 2.3).

2. IL PEGGIOR "outline: none" DEL TEMA NON E QUELLO CITATO. Il brief indica
   style.css righe 909-918 (i comandi del visualizzatore immagini) e ha
   ragione, ma quello e gia risolto da vc-scheda.css ed e circoscritto a una
   pagina. Quello che conta davvero e vc-foundation-core.css riga 466:
   input[type=...]:focus { outline: none } toglie il contorno a OGNI campo di
   testo del sito — ricerca, commenti, Contact Form 7 — su ogni pagina. E la
   sezione 2.2 di questo foglio.

3. #868787 NON E UN PROBLEMA DEL MIO PERIMETRO. Su bianco da 3.60:1, non 3.0
   come dice il brief, e resta sotto la soglia di 4.5 per il testo normale; ma
   le sue due sole occorrenze sono "header ul li" (navigazione, F5) e
   "#homepage h1" (homepage, e vc-home.css documenta che quella regola non ha
   piu bersagli). Non lo tocco, perche toccarlo vorrebbe dire entrare in F5.
   Il grigio che fa danno davvero, e che sta nel mio perimetro, e #999999:
   2.85:1, sui numeri di pagina e sulla riga di firma degli articoli.

4. #003882 NON E SOTTO SOGLIA. Su bianco da 11.12:1. Il brief lo elenca fra i
   punti di partenza da verificare: verificato, va bene com'e.

5. LA PAGINAZIONE E GIA A 44x44 (vc-mobile.css sezione 1.3) e non va rifatta.
   Restava pero un difetto che quella sezione ha reso visibile: quando non c'e
   pagina precedente o successiva, joints.php stampa comunque un <li> VUOTO, e
   con il min-height di F4 quel vuoto occupa 44px. Sezione 3.1.
--------------------------------------------------------------------------
*/

/* ===============================================================
   0. Variabili locali

   Stanno qui e non in vc-tokens.css perche questa fase tocca un file solo,
   come hanno gia fatto vc-mobile.css, vc-nav.css, vc-home.css e
   vc-scheda.css. Ogni valore poggia su un token dove il token esiste.

   I RAPPORTI IN COMMENTO SONO MISURATI, non stimati: formula della luminanza
   relativa del WCAG, con la soglia indicata accanto.
   =============================================================== */

:root {
	/*
	   Colore del contorno di messa a fuoco. E lo stesso accento chiaro gia
	   scelto in F5 (vc-nav.css, vc-scheda.css): un solo segnale su tutto il
	   sito, non tre. 5.60:1 su bianco, contro il 3:1 che il criterio 1.4.11
	   chiede a un indicatore non testuale.

	   Sul fondo scuro del footer lo stesso blu darebbe 2.73:1, cioe
	   sparirebbe. Vale li lo stesso ribaltamento gia deciso in vc-nav.css:
	   ambra sullo scuro, 6.49:1 su #1C2634.
	*/
	--vc-a11y-fuoco: var(--vc-colore-blu-acceso, #007095);
	--vc-a11y-fuoco-scuro: var(--vc-colore-ambra, #f39207);

	/* 2px come in vc-nav.css. Lo stacco positivo tiene il contorno fuori dal
	   riquadro, cosi non copre ne il testo ne il bordo del campo. */
	--vc-a11y-fuoco-spessore: 2px;
	--vc-a11y-fuoco-stacco: 2px;

	/* Collegamento di salto: 15.20:1, molto sopra il 4.5 richiesto. */
	--vc-a11y-salta-fondo: var(--vc-colore-blu-scuro, #11273d);
	--vc-a11y-salta-testo: var(--vc-colore-sfondo, #ffffff);

	/*
	   Impilamento. vc-nav.css usa 900 per le barre agganciate, 1040 per il
	   velo e 1050 per il pannello. Il collegamento di salto deve stare sopra
	   le barre, che sono l'unica cosa che puo trovarsi sotto di lui: quando
	   il pannello e aperto il fuoco e dentro il pannello e questo link non
	   viene mai raggiunto. Percio 1030, sopra le barre e sotto il velo, e non
	   un numero piu alto che sarebbe una sovrastima.
	*/
	--vc-a11y-z-salta: 1030;

	/* Testo secondario: sostituisce #999999 (2.85:1, sotto il 4.5 del
	   criterio 1.4.3). 5.47:1 su bianco, 4.76:1 sul fondo dei campi del
	   modulo commenti, 4.88:1 sui pannelli grigi. */
	--vc-a11y-testo-tenue: var(--vc-colore-ardesia, #5e6b76);

	/* Numeri di pagina e altre etichette di comando: 9.00:1 su bianco,
	   7.21:1 sul grigio di passaggio del mouse della paginazione. */
	--vc-a11y-testo-azione: var(--vc-colore-blu, #374a66);

	/* Bordo dei campi a riposo: sostituisce #cccccc, che su bianco da 1.61:1
	   contro il 3:1 del criterio 1.4.11. 5.47:1 su bianco, 5.24:1 sul fondo
	   #fafafa delle tendine. E lo stesso bordo che vc-scheda.css ha gia dato
	   alla tendina delle lingue: nessun colore nuovo. */
	--vc-a11y-bordo-campo: var(--vc-colore-ardesia, #5e6b76);

	/*
	   Fondo dei pulsanti d'azione.

	   Foundation usa #008CBA con testo bianco: 3.85:1, sotto il 4.5 che il
	   criterio 1.4.3 chiede al testo normale (i pulsanti del tema sono a
	   16px e a 11px, mai testo grande). #007095 e gia il colore che
	   Foundation stessa usa al passaggio del mouse, quindi non e un colore
	   nuovo: 5.60:1 col bianco sopra. Lo stato attivo scende a #005a78,
	   7.68:1, che e un semplice scurimento dello stesso blu.
	*/
	--vc-a11y-azione-fondo: var(--vc-colore-blu-acceso, #007095);
	--vc-a11y-azione-fondo-forte: #005a78;

	/*
	   Errore ed esito. Sono gli unici due colori davvero nuovi del foglio, e
	   lo sono per necessita: nella tavolozza del progetto non c'e ne un rosso
	   ne un verde utilizzabili. #f04124 di Foundation da 3.83:1 e #f01d4f del
	   marchio non e mai stato un colore di interfaccia. 6.54:1 e 6.56:1 su
	   bianco: entrambi sopra il 4.5 anche come testo.
	*/
	--vc-a11y-errore: #b3261e;
	--vc-a11y-esito: #1e6b2f;
}

/* ===============================================================
   1. Collegamento di salto — criterio 2.4.1 (Bypass Blocks, livello A)

   Il markup e gia in header.php, primo elemento dentro <body>:
   <a class="vc-salta" href="#content">Salta al contenuto</a>.

   La tecnica a riposo e la stessa di .screen-reader-text in vc-grid.css —
   riquadro di un pixel, ritagliato, fuori dal flusso — e per la stessa
   ragione: display:none e visibility:hidden toglierebbero il link anche alla
   tastiera, cioe proprio a chi serve. Qui la classe NON viene riusata perche
   .screen-reader-text deve restare nascosta sempre, mentre questa deve
   riapparire: sono due comportamenti diversi e vanno tenuti separati.

   Al fuoco si ripristinano tutte le misure ritagliate — width, height, margin,
   clip, clip-path, overflow — e si passa a position: fixed, cosi il link e
   visibile anche se la pagina e gia scorsa.

   Il link sta FUORI da .off-canvas-wrap, che vc-nav.css ritaglia con
   overflow-x: clip: nessun antenato lo puo tagliare.

   Uso :focus e non :focus-visible: un link di un pixel non si puo raggiungere
   col mouse, quindi la distinzione non serve, e :focus funziona ovunque.
   =============================================================== */

.vc-salta {
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
	z-index: var(--vc-a11y-z-salta, 1030);
}

/*
   Il selettore e a.vc-salta e non .vc-salta di proposito: (0,2,1) invece di
   (0,1,1). Serve a non perdere il confronto con la regola di ripiego della
   sezione 2.1, che vale a:focus:not(:focus-visible), cioe (0,2,1). Sono stati
   che non si verificano insieme, ma un pareggio scritto a mano vale piu di un
   ragionamento da rileggere fra un anno.
*/
a.vc-salta:focus {
	position: fixed;
	top: var(--vc-spazio-2, 0.9375rem);
	left: var(--vc-spazio-2, 0.9375rem);
	display: inline-flex;
	align-items: center;
	width: auto;
	height: auto;
	min-height: var(--vc-tocco-minimo, 44px);
	margin: 0;
	padding: var(--vc-spazio-1, 0.46875rem) var(--vc-spazio-3, 1.40625rem);
	overflow: visible;
	clip: auto;
	clip-path: none;
	background-color: var(--vc-a11y-salta-fondo, #11273d);
	color: var(--vc-a11y-salta-testo, #ffffff);
	font-family: var(--vc-font-testo, 'Titillium Web', sans-serif);
	font-size: 1rem;
	font-weight: var(--vc-peso-medio, 600);
	line-height: var(--vc-interlinea-stretta, 1.25);
	text-decoration: underline;
	border-radius: var(--vc-raggio-1, 3px);
	box-shadow: var(--vc-ombra-2, 0 4px 12px rgba(0, 0, 0, 0.15));
	/* Il contorno cade sul fondo della pagina, che li e bianco o e la barra
	   agganciata, anch'essa chiara: 5.60:1. */
	outline: var(--vc-a11y-fuoco-spessore, 2px) solid var(--vc-a11y-fuoco, #007095);
	outline-offset: var(--vc-a11y-fuoco-stacco, 2px);
}

/* ===============================================================
   2. Messa a fuoco visibile — criteri 2.4.7 e 1.4.11
   =============================================================== */

/* ---------------------------------------------------------------
   2.1 Regola di base

   Deve dare un contorno a tutto cio che e focalizzabile e, insieme, PERDERE
   il confronto con le regole gia scritte in F5, che sono piu curate e piu
   specifiche. Per questo i selettori sono volutamente poveri: (0,1,1) per gli
   elementi nudi, (0,2,1) per input, che e la specificita minima necessaria a
   battere vc-foundation-core.css (sezione 2.2).

   Come si comporta rispetto a F5, misurato selettore per selettore:
     .vc-pannello-menu a:focus-visible          (0,2,1)  vince su a (0,1,1)
     .vc-barra-desktop .top-bar-section a:...   (0,3,1)  vince
     .vc-luogo-scheda:focus-within              (0,2,0)  vince su a (0,1,1)
     .vc-gallery-item:focus-visible             (0,2,0)  vince su button (0,1,1)
     .entry-content p a:focus-visible           (0,2,2)  vince
     .entry-content + section select:focus-...  (0,3,1)  vince su select (0,1,1)
     #homepage #visitare h2...> a:focus         (2,2,2)  vince su tutto
   Nessuna regola di F5 viene sovrascritta.

   input:not([type="hidden"]) invece dell'elenco dei quattordici tipi: vale
   (0,1,1) come input[type="text"], quindi lo stesso peso con una riga sola, e
   copre anche i tipi che Foundation non elenca.

   IL RIPIEGO. La coppia canonica: si imposta su :focus, poi si toglie su
   :focus:not(:focus-visible). Un browser che non conosce :focus-visible
   considera invalido l'intero selettore della seconda regola e la scarta,
   quindi conserva il contorno anche al clic del mouse. E il comportamento
   voluto: contorno di troppo, mai contorno mancante. Costo: sui browser
   anteriori al 2021 il contorno compare anche cliccando.
   --------------------------------------------------------------- */

a:focus,
button:focus,
input:not([type="hidden"]):focus,
select:focus,
textarea:focus,
summary:focus {
	outline: var(--vc-a11y-fuoco-spessore, 2px) solid var(--vc-a11y-fuoco, #007095);
	outline-offset: var(--vc-a11y-fuoco-stacco, 2px);
}

a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
input:not([type="hidden"]):focus:not(:focus-visible),
select:focus:not(:focus-visible),
textarea:focus:not(:focus-visible),
summary:focus:not(:focus-visible) {
	outline: none;
}

a:focus-visible,
button:focus-visible,
input:not([type="hidden"]):focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
	outline: var(--vc-a11y-fuoco-spessore, 2px) solid var(--vc-a11y-fuoco, #007095);
	outline-offset: var(--vc-a11y-fuoco-stacco, 2px);
}

/* ---------------------------------------------------------------
   2.2 Dove il tema toglie il contorno senza rimpiazzarlo

   Cercato in tutti i fogli. Le dichiarazioni outline:none / outline:0 sono
   quattro, non due:

     vc-foundation-core.css:466  input[...]:focus     — TUTTI i campi del sito
     vc-foundation-core.css:330  .dropdown.button     — sempre, non solo al fuoco
     style.css:442               .respond-form ...:invalid
     style.css:917               .vc-lightbox-close/-nav

   La prima e di gran lunga la piu grave e non e quella indicata dal brief:
   riguarda ogni campo di ricerca, ogni campo del modulo commenti e ogni campo
   di Contact Form 7, su ogni pagina. La sezione 2.1 la batte gia, perche
   input:not([type="hidden"]):focus-visible vale (0,2,1) esattamente come
   input[type="text"]:focus e arriva dopo. Qui restano le altre.

   La quarta, il visualizzatore immagini, e gia risolta da vc-scheda.css, che
   viene caricato esattamente e soltanto dove quel markup esiste
   (is_singular('luoghi_da_visitare'), joints.php riga 191). Non la ripeto:
   sarebbe una regola morta e, arrivando dopo, andrebbe a sovrascrivere una
   regola di F5 senza motivo.
   --------------------------------------------------------------- */

/*
   .dropdown.button vale (0,2,0) e button.dropdown (0,1,1): entrambi battono
   la regola di base. Il contorno va quindi restituito qui. E una cautela: nei
   template non compare nessun pulsante con quelle classi, ma la regola di
   Foundation non e legata al fuoco, e sempre attiva, e basterebbe un widget o
   uno shortcode per riportarla in pagina.
*/
.dropdown.button:focus,
button.dropdown:focus {
	outline: var(--vc-a11y-fuoco-spessore, 2px) solid var(--vc-a11y-fuoco, #007095);
	outline-offset: var(--vc-a11y-fuoco-stacco, 2px);
}

.dropdown.button:focus:not(:focus-visible),
button.dropdown:focus:not(:focus-visible) {
	outline: none;
}

.dropdown.button:focus-visible,
button.dropdown:focus-visible {
	outline: var(--vc-a11y-fuoco-spessore, 2px) solid var(--vc-a11y-fuoco, #007095);
	outline-offset: var(--vc-a11y-fuoco-stacco, 2px);
}

/*
   Modulo commenti: style.css riga 442 azzera il contorno sui campi che il
   browser considera non validi, e un campo puo essere non valido E messo a
   fuoco nello stesso momento, cioe proprio quando il contorno serve di piu.
   Specificita replicata esattamente:
     .respond-form form input[type=text]:invalid        (0,3,2)
     .respond-form form input:not([type=hidden]):focus  (0,3,2)
   Pareggio, e questo foglio arriva dopo.
*/
.respond-form form input:not([type="hidden"]):focus,
.respond-form form textarea:focus {
	outline: var(--vc-a11y-fuoco-spessore, 2px) solid var(--vc-a11y-fuoco, #007095);
	outline-offset: var(--vc-a11y-fuoco-stacco, 2px);
}

.respond-form form input:not([type="hidden"]):focus:not(:focus-visible),
.respond-form form textarea:focus:not(:focus-visible) {
	outline: none;
}

.respond-form form input:not([type="hidden"]):focus-visible,
.respond-form form textarea:focus-visible {
	outline: var(--vc-a11y-fuoco-spessore, 2px) solid var(--vc-a11y-fuoco, #007095);
	outline-offset: var(--vc-a11y-fuoco-stacco, 2px);
}

/* ---------------------------------------------------------------
   2.3 Il contenitore di arrivo del salto

   Questo e l'unico outline: none del foglio, ed e voluto.

   #content ha tabindex="-1" in tutti i template: e un valore NEGATIVO, quindi
   il contenitore non entra mai nella sequenza di tabulazione e nessuno puo
   arrivarci premendo Tab. Ci si arriva solo per via programmatica, seguendo
   il collegamento di salto. Togliere il contorno qui non sottrae quindi
   nessun segnale a nessuno.

   Perche toglierlo: #content avvolge l'intera pagina, dal titolo al footer.
   Il contorno predefinito del browser disegnerebbe una cornice attorno a
   tutto il contenuto, che si legge come un guasto e non come una conferma.
   La conferma che il salto e avvenuto e che la pagina si e mossa e che il Tab
   successivo parte dal primo link del contenuto.

   L'alternativa scartata era dare a #content un contorno discreto e
   volontario, per confermare l'arrivo. Scartata perche una cornice larga
   quanto la finestra non e discreta a nessuno spessore.
   --------------------------------------------------------------- */
#content[tabindex="-1"]:focus {
	outline: none;
}

/* ===============================================================
   3. Contrasto

   Tutti i rapporti citati sono calcolati con la formula della luminanza
   relativa del WCAG. Soglie: 4.5:1 per il testo normale (1.4.3), 3:1 per il
   testo grande e per bordi e indicatori di stato (1.4.11).
   =============================================================== */

/* ---------------------------------------------------------------
   3.1 Paginazione

   Due difetti, uno di contrasto e uno che F4 ha reso visibile.

   COLORE. vc-foundation-core.css riga 638 da ai numeri di pagina #999999 su
   bianco: 2.85:1, cioe poco piu di un terzo di quello che serve. Diventano
   #374a66, 9.00:1, che e il blu del marchio: si leggono come comandi e non
   come testo spento. Cambiamento visibile: i numeri passano da grigio chiaro
   a blu.

   La pillola della pagina corrente era bianco su #008CBA, 3.85:1, sotto
   soglia anche se e in grassetto (il grassetto conta come testo grande solo
   sopra i 18.66px, e qui il carattere e 14px). Diventa #007095: 5.60:1 col
   bianco sopra, e 5.60:1 anche verso il bianco della pagina, quindi la
   pillola resta distinguibile come elemento grafico.

   Non tocco il grigio #e6e6e6 del passaggio del mouse: e decorativo, il testo
   sopra ci sta a 7.21:1, e non e l'unico segnale di stato.

   LI VUOTI. joints.php righe 355-357 e 366-368 stampano <li></li> anche
   quando previous_posts_link o next_posts_link non producono niente, cioe
   sulla prima e sull'ultima pagina. Prima erano alti 24px e non si notavano;
   con il min-height di 44px di vc-mobile.css sono due buchi da 44px nella
   barra, e due voci di elenco senza contenuto per chi usa un lettore di
   schermo. :empty li toglie. La specificita (0,2,2) batte sia
   ul.pagination li di Foundation sia quella di vc-mobile, entrambe (0,1,2).
   --------------------------------------------------------------- */

ul.pagination li a,
ul.pagination li button {
	color: var(--vc-a11y-testo-azione, #374a66);
}

ul.pagination li.current a,
ul.pagination li.current button {
	background: var(--vc-a11y-azione-fondo, #007095);
}

ul.pagination li.current a:hover,
ul.pagination li.current a:focus,
ul.pagination li.current button:hover,
ul.pagination li.current button:focus {
	background: var(--vc-a11y-azione-fondo, #007095);
}

ul.pagination li:empty {
	display: none;
}

/* ---------------------------------------------------------------
   3.2 Righe di firma e date

   .byline e la riga "Posted on ... by ... - categoria" stampata da
   partials/content-byline.php sotto ogni titolo di archivio e di risultato di
   ricerca: #999999 su bianco, 2.85:1. I link che contiene sono leggibili
   (#003882, 11.12:1); e il testo attorno a non esserlo.

   La data dei commenti ha lo stesso grigio, ma su tre fondi diversi: bianco
   per il primo livello, #e7e7e7 per le risposte, #dadada dal terzo livello in
   giu. E un link, quindi prende il blu del marchio e non il grigio ardesia,
   che su #dadada scenderebbe a 3.91:1. #374a66 tiene 9.00:1, 7.3:1 e 6.6:1
   sui tre fondi.
   --------------------------------------------------------------- */

.byline {
	color: var(--vc-a11y-testo-tenue, #5e6b76);
}

.commentlist .vcard time a {
	color: var(--vc-a11y-testo-azione, #374a66);
}

/*
   Definizioni dentro il contenuto: style.css riga 274 le mette a #787878 e a
   0.9em, cioe 14.4px. 4.42:1, sotto il 4.5 per una manciata di centesimi ma
   sotto. Non e un dettaglio da arrotondare: e testo di contenuto.
*/
.entry-content dd {
	color: var(--vc-a11y-testo-tenue, #5e6b76);
}

/* ---------------------------------------------------------------
   3.3 Pulsanti d'azione

   Bianco su #008CBA da 3.85:1. Riguarda il pulsante "Cerca" del modulo di
   ricerca, il "Read more..." degli archivi e della ricerca, il pulsante di
   invio dei commenti e il "Rispondi" dei commenti.

   PERCHE UN ELENCO E NON "button, .button". Nel tema ci sono <button> nudi —
   le miniature della galleria, i tre comandi del visualizzatore immagini, le
   due frecce del carosello, la chiusura del pannello, l'innesco della barra
   mobile e le fisarmoniche del menu — e TUTTI ridefiniscono gia il proprio
   sfondo con specificita piu alta: il blu di Foundation su di loro non si
   vede mai. Cambiarlo li sarebbe rumore, e rumore dentro il perimetro di F5.
   L'elenco tocca solo i pulsanti dove quel blu si vede davvero.

   button.tiny e nell'elenco perche il "Read more..." e proprio un <button>
   nudo con la sola classe .tiny (search.php riga 27, loop-archive.php riga
   15), non un .button.
   --------------------------------------------------------------- */

.button,
button.tiny,
button.small,
input[type="submit"] {
	background-color: var(--vc-a11y-azione-fondo, #007095);
	color: var(--vc-colore-sfondo, #ffffff);
}

.button:hover,
.button:focus,
button.tiny:hover,
button.tiny:focus,
button.small:hover,
button.small:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
	background-color: var(--vc-a11y-azione-fondo-forte, #005a78);
	color: var(--vc-colore-sfondo, #ffffff);
}

/*
   Il "Rispondi" dei commenti si porta dietro una copia delle stesse
   dichiarazioni con specificita (0,2,0), quindi va battuto a parte.
*/
.commentlist .comment-reply-link {
	background-color: var(--vc-a11y-azione-fondo, #007095);
	border-color: var(--vc-a11y-azione-fondo-forte, #005a78);
}

.commentlist .comment-reply-link:hover,
.commentlist .comment-reply-link:focus {
	background-color: var(--vc-a11y-azione-fondo-forte, #005a78);
}

/* ===============================================================
   4. Bersagli tattili — criteri 2.5.8 (AA, 24x24) e 2.5.5 (AAA, 44x44)

   vc-mobile.css ha gia portato a 44px paginazione, social del footer, frecce
   del carosello, miniature e titoli-link, e ha gia deciso, motivandolo, di
   NON toccare i link dentro una frase, che il 2.5.8 esclude esplicitamente.
   Quella decisione qui vale ancora e viene rispettata alla lettera.

   Cosa restava scoperto, misurato: i campi di testo e le tendine, che
   Foundation fissa a height 2.3125rem cioe 37px; il "Read more...", che con i
   suoi padding sta a circa 34px; e i recapiti del footer, che sono link su
   riga propria alti quanto una riga di testo.
   =============================================================== */

/* ---------------------------------------------------------------
   4.1 Campi e tendine

   min-height e non height: min-height vince su height a parita di elemento,
   quindi i 37px di Foundation vengono alzati senza doverli riscrivere. Il
   padding resta quello di Foundation e il testo resta dov'e: il campo cresce
   solo verso il basso.

   height: auto accanto serve solo alla tendina, che Foundation dimensiona con
   height e non con min-height; senza, in qualche motore la freccia di fondo
   resterebbe centrata sui vecchi 37px.

   La tendina delle lingue della scheda luogo e gia a 44px da vc-scheda.css
   con specificita (0,3,1): questa regola, che vale (0,0,1), le perde contro e
   fa solo da rete di sicurezza altrove. Non c'e nessun altro <select> fuori
   da #content: quella della testata e stata rimossa in F5.
   --------------------------------------------------------------- */

input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
select {
	height: auto;
	min-height: var(--vc-tocco-minimo, 44px);
}

/* ---------------------------------------------------------------
   4.2 Pulsanti

   .button e gia oltre soglia (1rem di padding sopra e sotto piu 16px di testo
   fanno circa 52px): il min-height e una rete di sicurezza, come quelle che
   vc-mobile.css ha messo sul menu.

   .tiny e .small invece sono sotto e vanno alzati davvero. Uso inline-flex e
   non del padding perche il padding li allargherebbe anche in orizzontale e
   il "Read more..." e gia largo; con il centramento il testo resta al centro
   del riquadro nuovo. inline-flex qui e sicuro: .tiny e .small compaiono solo
   su quel pulsante e in nessun altro punto del tema.

   Su input[type="submit"] non cambio il display — un campo di modulo non e un
   contenitore flex affidabile in tutti i browser — ma non serve: con
   min-height 44px e i padding di .button il testo resta centrato dal browser.
   --------------------------------------------------------------- */

.button,
input[type="submit"] {
	min-height: var(--vc-tocco-minimo, 44px);
}

button.tiny,
button.small,
.button.tiny,
.button.small {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: var(--vc-tocco-minimo, 44px);
}

/* ---------------------------------------------------------------
   4.3 Recapiti del footer

   Sono i due link "(+39) 328.2042442" e "(+39) 0761647865" della colonna
   Recapiti: stanno su una riga propria, dopo un <strong> e un <br>, e sono
   quindi bersagli autonomi, non link dentro una frase. Su telefono un numero
   di telefono e uno dei link piu premuti di tutto il sito.

   :not(.list-inline) e il discrimine, ed e esatto: le uniche due liste del
   footer che portano quella classe sono le icone social — gia portate a 44px
   da vc-mobile.css sezione 1.4 — e la riga legale "Privacy | Cookie Policy |
   Accessibilita", che vc-mobile.css ha deciso di lasciare stare perche e una
   frase. Restano dentro solo le tre liste dei recapiti.

   Costo visivo: la colonna Recapiti si alza di circa 40px, cioe di 20px per
   ciascuno dei due link.
   --------------------------------------------------------------- */
#footervs .footer-list:not(.list-inline) li a {
	display: inline-flex;
	align-items: center;
	min-height: var(--vc-tocco-minimo, 44px);
}

/*
   Messa a fuoco nel footer. Il fondo e #1C2634: il blu acceso ci darebbe
   2.73:1 e non si vedrebbe. Ambra, 6.49:1, come gia deciso in vc-nav.css per
   il pannello scuro. Specificita (1,0,1) e (1,1,1): batte la regola di base
   della sezione 2.1 e non incontra nient'altro.
*/
#footervs a:focus {
	outline: var(--vc-a11y-fuoco-spessore, 2px) solid var(--vc-a11y-fuoco-scuro, #f39207);
	outline-offset: var(--vc-a11y-fuoco-stacco, 2px);
}

#footervs a:focus:not(:focus-visible) {
	outline: none;
}

#footervs a:focus-visible {
	outline: var(--vc-a11y-fuoco-spessore, 2px) solid var(--vc-a11y-fuoco-scuro, #f39207);
	outline-offset: var(--vc-a11y-fuoco-stacco, 2px);
}

/* ===============================================================
   5. Moduli
   =============================================================== */

/* ---------------------------------------------------------------
   5.1 Bordo visibile a riposo — criterio 1.4.11

   Foundation da ai campi border-color #cccccc: 1.61:1 su bianco, contro il
   3:1 richiesto a un bordo che e l'unico segnale del confine del campo. Con
   la tendina va anche peggio, perche il suo fondo #fafafa e quasi bianco: il
   controllo, di fatto, non ha contorno.

   L'elenco replica quello di vc-foundation-core.css riga 415, specificita
   (0,1,1) per selettore, pareggiata e superata dall'ordine di caricamento.
   Cambio solo border-color: larghezza, stile, padding e fondo restano di
   Foundation, quindi nessun elemento si sposta di un pixel.
   --------------------------------------------------------------- */

input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
input[type="color"],
textarea,
select {
	border-color: var(--vc-a11y-bordo-campo, #5e6b76);
}

/*
   Al passaggio del mouse Foundation schiarisce il fondo della tendina e ne
   scurisce il bordo a #999999, che pero e piu CHIARO del bordo a riposo: lo
   stato attivo risulterebbe meno visibile di quello inattivo. Il bordo si
   scurisce, come ha gia fatto vc-scheda.css per la tendina delle lingue.
*/
select:hover {
	border-color: var(--vc-colore-blu-scuro, #11273d);
}

/*
   Il modulo commenti ha campi propri, con fondo #efefef e bordo #cecece
   (1.57:1). Stessa correzione, specificita (0,2,2) replicata da style.css
   riga 428.
*/
.respond-form form input:not([type="hidden"]),
.respond-form form textarea {
	border-color: var(--vc-a11y-bordo-campo, #5e6b76);
}

/* ---------------------------------------------------------------
   5.2 Etichette del modulo commenti — criterio 3.3.2

   IL DIFETTO PIU GRAVE DI QUESTA SEZIONE, e sta in un foglio di stile, non
   nel PHP: style.css righe 419-421 dichiarano

       .respond-form form li label,
       .respond-form form li small { display: none; }

   e comments.php le etichette le stampa tutte, corrette e con il for giusto.
   display: none pero non nasconde soltanto: toglie l'elemento anche
   dall'albero di accessibilita. Il risultato e che i tre campi Nome, Mail e
   Sito web non hanno oggi NESSUNA etichetta, ne visibile ne annunciata:
   resta solo il testo segnaposto, che sparisce appena si comincia a scrivere
   e che il criterio 3.3.2 non considera un'etichetta.

   Le rimetto visibili invece di limitarmi a renderle udibili con la tecnica
   del riquadro da un pixel: il 3.3.2 chiede etichette visibili, e un modulo
   in cui l'etichetta scompare mentre si scrive e un problema anche per chi
   vede benissimo. Il <small> "(will not be published)" torna visibile per la
   stessa ragione: e un'istruzione, e le istruzioni servono prima di
   compilare, non dopo.

   Costo visivo: il modulo commenti si alza di circa 60px e mostra tre
   etichette che oggi non si vedono. E l'unico punto del foglio in cui compare
   del testo che prima non c'era.
   --------------------------------------------------------------- */

.respond-form form li label {
	display: block;
	margin-bottom: 0.25rem;
	color: var(--vc-colore-blu-scuro, #11273d);
	font-weight: var(--vc-peso-medio, 600);
}

.respond-form form li small {
	display: block;
	margin-top: 0.25rem;
	color: var(--vc-a11y-testo-tenue, #5e6b76);
}

/* ---------------------------------------------------------------
   5.3 Stato di errore del modulo commenti — criterio 1.4.1

   style.css righe 440-449 segnala il campo non valido con bordo #fbc2c4 e
   fondo #f6e7eb: 1.54:1 e 1.20:1 rispetto al bianco. E un rosa cosi chiaro
   che il segnale, oltre a essere fatto di solo colore, e anche quasi
   invisibile a chiunque.

   Due correzioni insieme. Il colore diventa leggibile (6.54:1), e soprattutto
   accanto al colore compare un segnale che colore non e: l'ombra interna
   raddoppia lo spessore percepito del bordo, da 2px a 4px. Uso box-shadow e
   non border-width perche cambiare la larghezza del bordo sposterebbe il
   campo di 2px, e in un elenco di campi si vedrebbe.

   Il fondo torna bianco: il rosa non aggiungeva informazione e peggiorava il
   contrasto del testo digitato.

   Specificita (0,3,2) e (0,2,2), pareggiate con style.css.
   --------------------------------------------------------------- */

.respond-form form input:not([type="hidden"]):invalid,
.respond-form form textarea:invalid {
	border-color: var(--vc-a11y-errore, #b3261e);
	background-color: var(--vc-colore-sfondo, #ffffff);
	box-shadow: inset 0 0 0 2px var(--vc-a11y-errore, #b3261e);
}

/* ---------------------------------------------------------------
   5.4 Contact Form 7

   ATTENZIONE, e la parte piu incerta del foglio e va provata in pagina.
   Contact Form 7 6.1.5 e attivo in produzione (docs/STATO-PROGETTO.md), ma
   nel tema non c'e una sola occorrenza delle sue classi: i moduli arrivano da
   uno shortcode dentro il contenuto e non ho potuto misurarne il markup. Le
   regole che seguono sono scritte sui nomi di classe documentati dal plugin.

   I campi di testo del plugin sono <input type="text|email|tel|url"> e
   <textarea>: bordo, altezza e contorno di messa a fuoco glieli danno gia le
   sezioni 2.1, 4.1 e 5.1, e non servono regole apposite. Qui c'e solo cio che
   e specifico del plugin.

   SULLA SPECIFICITA. L'ordine di stampa dei fogli fra plugin e tema non e
   garantito: WordPress accoda per prime le dipendenze, e il foglio di Contact
   Form 7 viene registrato prima di quello del tema, ma basta un altro plugin
   a cambiare l'ordine. Percio qui non mi affido all'ordine: ogni selettore
   supera di almeno un gradino quello del plugin che deve battere.
   --------------------------------------------------------------- */

/*
   Pulsante di invio. Non porta la classe .button di Foundation, quindi
   Foundation non lo tocca e resta il pulsante grezzo del browser: nessun
   contrasto garantito e altezza a discrezione del sistema operativo. Qui
   prende lo stesso aspetto degli altri pulsanti d'azione del sito.

   Il padding e calcolato perche il testo resti centrato senza flex: 12px
   sopra piu 12px sotto piu circa 19px di riga fanno 43px, che il min-height
   porta a 44.
*/
.wpcf7-form .wpcf7-submit {
	display: inline-block;
	min-height: var(--vc-tocco-minimo, 44px);
	padding: 0.75rem 1.75rem;
	border: 0;
	border-radius: var(--vc-raggio-1, 3px);
	background-color: var(--vc-a11y-azione-fondo, #007095);
	color: var(--vc-colore-sfondo, #ffffff);
	font-family: var(--vc-font-testo, 'Titillium Web', sans-serif);
	font-size: 1rem;
	font-weight: var(--vc-peso-medio, 600);
	line-height: var(--vc-interlinea-stretta, 1.25);
	cursor: pointer;
}

.wpcf7-form .wpcf7-submit:hover,
.wpcf7-form .wpcf7-submit:focus {
	background-color: var(--vc-a11y-azione-fondo-forte, #005a78);
	color: var(--vc-colore-sfondo, #ffffff);
}

/*
   Campo non valido. Il plugin gli aggiunge la classe .wpcf7-not-valid e
   aria-invalid="true" ma nessuno stile: visivamente il campo sbagliato e
   identico agli altri. Stesso trattamento del modulo commenti — colore
   leggibile piu ombra interna che ispessisce il bordo — cosi il segnale non e
   fatto di solo colore.
*/
.wpcf7-form .wpcf7-not-valid {
	border-color: var(--vc-a11y-errore, #b3261e);
	box-shadow: inset 0 0 0 1px var(--vc-a11y-errore, #b3261e);
}

/*
   Messaggio sotto il campo. Tre segnali indipendenti dal colore: e testo, e
   in grassetto, e ha una barra verticale a sinistra. Niente ::before con un
   simbolo: alcuni lettori di schermo leggono il contenuto generato, e un
   "segnale di avvertimento" annunciato in mezzo a un messaggio di errore
   confonde piu di quanto aiuti.
*/
.wpcf7-form .wpcf7-not-valid-tip {
	display: block;
	margin-top: 0.3rem;
	padding-left: 0.6rem;
	border-left: 4px solid var(--vc-a11y-errore, #b3261e);
	color: var(--vc-a11y-errore, #b3261e);
	font-size: 0.9375rem;
	font-weight: var(--vc-peso-medio, 600);
}

/*
   Riepilogo in fondo al modulo. Il plugin lo distingue SOLO con il colore del
   bordo: verde se inviato, giallo se non valido, rosso se fallito. Il testo
   dentro pero cambia a ogni esito, ed e quello il segnale che soddisfa il
   1.4.1; qui aggiungo una differenza di forma — barra sinistra di 3px per
   l'esito positivo, di 6px per i problemi — cosi la distinzione si coglie
   anche a colpo d'occhio e anche senza percepire il colore.

   Specificita: il plugin usa .wpcf7 form .wpcf7-response-output (0,2,1) e
   .wpcf7 form.invalid .wpcf7-response-output (0,3,1). Aggiungendo
   form.wpcf7-form salgo di un gradino in entrambi i casi.
*/
.wpcf7 form.wpcf7-form .wpcf7-response-output {
	margin: var(--vc-spazio-3, 1.40625rem) 0 var(--vc-spazio-2, 0.9375rem);
	padding: var(--vc-spazio-2, 0.9375rem);
	border: 1px solid var(--vc-a11y-bordo-campo, #5e6b76);
	border-left-width: 6px;
	border-radius: var(--vc-raggio-1, 3px);
	color: var(--vc-colore-testo, #000000);
	font-weight: var(--vc-peso-medio, 600);
}

.wpcf7 form.wpcf7-form.sent .wpcf7-response-output {
	border-color: var(--vc-a11y-esito, #1e6b2f);
	border-left-width: 3px;
}

.wpcf7 form.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7 form.wpcf7-form.unaccepted .wpcf7-response-output,
.wpcf7 form.wpcf7-form.failed .wpcf7-response-output,
.wpcf7 form.wpcf7-form.aborted .wpcf7-response-output,
.wpcf7 form.wpcf7-form.spam .wpcf7-response-output {
	border-color: var(--vc-a11y-errore, #b3261e);
	border-left-width: 6px;
}

/* ===============================================================
   6. Preferenze dell'utente
   =============================================================== */

/* ---------------------------------------------------------------
   6.1 Movimento ridotto

   Questo foglio non introduce nessuna animazione e nessuna transizione: un
   contorno di messa a fuoco che compare in dissolvenza e un contorno che per
   un istante non si vede, quindi non se ne mettono.

   Quello che c'e da smorzare e il movimento che il tema applica ai controlli
   di cui questo foglio ha cambiato i colori, e che quindi ora anima i miei
   valori: i pulsanti hanno transition background-color 300ms
   (vc-foundation-core.css riga 217) e i campi hanno transition all 0.15s
   linear (riga 448), che con il bordo nuovo anima anche quello.

   Si azzerano le DURATE, non i comportamenti: gli stati continuano a
   cambiare, semplicemente cambiano subito. Il blocco va per ultimo perche le
   media query non aggiungono specificita e queste regole vincono sulle
   precedenti solo perche arrivano dopo.
   --------------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {

	.button,
	button.tiny,
	button.small,
	input[type="submit"],
	.commentlist .comment-reply-link,
	.wpcf7-form .wpcf7-submit,
	input[type="text"],
	input[type="password"],
	input[type="email"],
	input[type="number"],
	input[type="search"],
	input[type="tel"],
	input[type="url"],
	textarea,
	select {
		transition-duration: 0.01ms;
		transition-delay: 0s;
		animation-duration: 0.01ms;
		animation-delay: 0s;
		animation-iteration-count: 1;
	}
}

/* ---------------------------------------------------------------
   6.2 Contrasto rinforzato

   Chi chiede piu contrasto al sistema operativo chiede di vedere meglio i
   confini, non colori diversi. Si ispessisce il contorno di messa a fuoco da
   2 a 3 pixel e si portano i bordi dei campi dal grigio ardesia al blu quasi
   nero del marchio, 15.20:1 su bianco.

   Non c'e nessun tema scuro qui, e non deve essercene: sarebbe un'altra fase
   e un'altra decisione.
   --------------------------------------------------------------- */

@media (prefers-contrast: more) {

	a:focus,
	button:focus,
	input:not([type="hidden"]):focus,
	select:focus,
	textarea:focus,
	summary:focus,
	a:focus-visible,
	button:focus-visible,
	input:not([type="hidden"]):focus-visible,
	select:focus-visible,
	textarea:focus-visible,
	summary:focus-visible,
	a.vc-salta:focus,
	#footervs a:focus,
	#footervs a:focus-visible {
		outline-width: 3px;
	}

	input[type="text"],
	input[type="password"],
	input[type="date"],
	input[type="email"],
	input[type="number"],
	input[type="search"],
	input[type="tel"],
	input[type="time"],
	input[type="url"],
	textarea,
	select,
	.respond-form form input:not([type="hidden"]),
	.respond-form form textarea {
		border-color: var(--vc-colore-blu-scuro, #11273d);
	}
}
