/* LO STILE DI CASA — quel che vale su tutte le pagine, in un posto solo.
 *
 * Va linkato **dopo** il <style> di ogni pagina. Qui non si inventa niente:
 * ci sono le voci accettate nella review v24 (13/08/2026), e basta.
 *
 *   premuto   qualcosa deve muoversi sotto il dito
 *   a-capo    niente parole orfane nei titoloni
 *
 * Quel che NON c'e', e' perche' non e' stato votato: le regole del fuoco da
 * tastiera e il salto al contenuto (voce `tastiera`, lasciata in sospeso).
 */

:root{ --molla:cubic-bezier(.34, 1.4, .5, 1); }

/* ─── premuto ─────────────────────────────────────────────────────────────
   `:active` non compariva mai, in nessuna delle undici pagine. Su desktop
   non si nota perche' c'e' l'hover; qui si pedala e si guarda col pollice,
   e un bottone che non cede sotto il dito si tocca due volte. */
button:active,
.btn:active,
.chip:active,
.bu:active,
a.pill:active,
.rowlink:active,
.row:active{transform:translateY(1px) scale(.985)}

/* la transizione va riscritta per intero (non si somma a quella della
   pagina): dentro ci sono anche fondo, bordo e colore, che erano l'hover */
button,
.btn,
.chip,
.bu,
a.pill,
.rowlink,
.row{transition:transform .1s var(--molla),background-color .14s,border-color .14s,color .14s}

/* i comandi della mappa sono di Leaflet: non li tocchiamo */
.leaflet-container button:active,
.leaflet-control button:active,
.leaflet-container a:active{transform:none}

/* ─── a capo ──────────────────────────────────────────────────────────────
   I titoli qui arrivano a 4,4rem e stanno in mezzo: quando vanno a capo
   lasciano una parola sola sull'ultima riga, e centrata si vede. Chi non
   conosce la proprieta' la ignora e basta. */
h1,h2,h3{text-wrap:balance}
p,.lede,.sub,.cap,.caption{text-wrap:pretty}

@media(prefers-reduced-motion:reduce){
  /* chi ha chiesto meno movimento non vuole nemmeno il rimbalzo sotto il dito */
  button:active,.btn:active,.chip:active,.bu:active,
  a.pill:active,.rowlink:active,.row:active{transform:none}
}
