/* Blocchi dalla proposta di newsletter «Percorsi» (26/10/2026): barra data e luogo, invito, quattro temi,
   esperienze, chiusura. Colori del visual 2026; testo scuro sui riquadri colorati per la leggibilità. */

.pv-info, .pv-invito, .pv-percorsi, .pv-esperienze, .pv-chiusura, .pv-tema {
	--pv-nero: #1e1e1e; --pv-rosso: #dc1f1c;
	--pv-verde: #8cbe64; --pv-azzurro: #3cbcdc; --pv-giallo: #f8cc4c; --pv-viola: #b870ec;
	font-family: 'Outfit', system-ui, sans-serif; color: var(--pv-nero); box-sizing: border-box;
}
.pv-info *, .pv-invito *, .pv-percorsi *, .pv-esperienze *, .pv-chiusura * { box-sizing: border-box; }
.pv-info p, .pv-invito p, .pv-percorsi p, .pv-esperienze p, .pv-chiusura p { padding: 0 !important; }
.pv-percorsi ul, .pv-esperienze ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.pv-percorsi li, .pv-esperienze li { padding: 0 !important; margin: 0; }
.pv-perc-icona { display: block; flex: none; }

/* Fasce scure a tutta larghezza anche dentro una riga di Divi (senza barra di scorrimento orizzontale). */
.pv-info, .pv-esperienze { background: var(--pv-nero); box-shadow: 0 0 0 100vmax var(--pv-nero); clip-path: inset(0 -100vmax); color: #fff; }

/* ---------- Pulsante rosso con freccia ---------- */
a.pv-perc-bottone { display: inline-block; background: var(--pv-rosso); color: #fff !important; text-decoration: none !important;
	font-weight: 700; font-size: 18px; line-height: 1.2; padding: 15px 34px; border-radius: 10px; transition: background .15s; }
a.pv-perc-bottone:hover { background: #b51614; }
a.pv-perc-bottone:focus-visible, .pv-percorsi a:focus-visible, .pv-esperienze a:focus-visible { outline: 3px solid var(--pv-azzurro); outline-offset: 3px; }

/* ---------- Barra data e luogo ---------- */
.pv-info { padding: 22px 0; }
.pv-info-dentro { display: flex; justify-content: center; align-items: center; gap: 22px 0; flex-wrap: wrap; }
.pv-info .pv-info-voce { display: flex; align-items: center; gap: 14px; margin: 0 !important; font-size: 19px; line-height: 1.3; color: #fff; padding: 0 34px !important; }
.pv-info-voce + .pv-info-voce { border-left: 1px solid rgba(255,255,255,.35); }
.pv-info-voce strong { font-weight: 700; color: #fff; }
.pv-info .pv-perc-icona { width: 30px; height: 30px; color: var(--pv-rosso); }

/* ---------- Invito ---------- */
.pv-invito { text-align: center; padding: 56px 16px 52px; }
.pv-invito h2 { font-size: clamp(30px, 4.2vw, 46px); font-weight: 800; line-height: 1.1; margin: 0 0 14px; padding: 0; color: var(--pv-nero); letter-spacing: -.01em; }
.pv-invito-sotto { font-size: clamp(19px, 2vw, 23px); font-weight: 600; margin: 0 0 6px !important; line-height: 1.3; }
.pv-invito-testo { font-size: 18px; margin: 0 0 26px !important; color: #3a3a3a; }

/* ---------- Quattro temi ---------- */
.pv-percorsi { padding: 8px 0 56px; }
.pv-percorsi-titolo { text-align: center; font-size: clamp(22px, 2.4vw, 28px); font-weight: 700; margin: 0 0 22px; padding: 0; color: var(--pv-nero); }
.pv-percorsi ul { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.pv-perc > a, .pv-perc > div { position: relative; display: flex; flex-direction: column; min-height: 250px; height: 100%;
	padding: 30px 190px 30px 30px; color: var(--pv-nero) !important; text-decoration: none !important; }
.pv-perc-verde { background: var(--pv-verde); --pv-perc-fondo: var(--pv-verde); }
.pv-perc-azzurro { background: var(--pv-azzurro); --pv-perc-fondo: var(--pv-azzurro); }
.pv-perc-giallo { background: var(--pv-giallo); --pv-perc-fondo: var(--pv-giallo); }
.pv-perc-viola { background: var(--pv-viola); --pv-perc-fondo: var(--pv-viola); }
.pv-perc-num { font-size: 22px; font-weight: 700; line-height: 1; }
.pv-perc-nome { display: block; font-size: clamp(28px, 3vw, 38px); font-weight: 800; line-height: 1.05; margin: 4px 0 auto; padding-bottom: 18px; }
.pv-perc-testo { font-size: 18px; line-height: 1.35; max-width: 20em; }
.pv-perc .pv-perc-icona { position: absolute; right: 28px; top: 50%; transform: translateY(-50%); width: 140px; height: 140px; color: #fff; }
.pv-perc > a { transition: filter .15s; }
.pv-perc > a:hover { filter: brightness(1.06); }
.pv-perc > a:hover .pv-perc-nome { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 5px; }

/* ---------- Esperienze ---------- */
.pv-esperienze { padding: 48px 0 40px; }
.pv-esp-dentro { max-width: 1080px; margin: 0 auto; }
.pv-esperienze h2 { color: #fff; font-size: clamp(26px, 2.8vw, 34px); font-weight: 800; margin: 0 0 18px; padding: 0; }
.pv-esperienze ul { display: grid; grid-template-columns: 1fr 1fr; column-gap: 48px; }
.pv-esperienze .pv-esp { display: flex; gap: 26px; align-items: flex-start; padding: 24px 0 26px !important; border-top: 1px solid rgba(255,255,255,.28); }
.pv-esp .pv-perc-icona { width: 64px; height: 64px; margin-top: 2px; }
.pv-esp-rosso .pv-perc-icona { color: var(--pv-rosso); }
.pv-esp-azzurro .pv-perc-icona { color: var(--pv-azzurro); }
.pv-esp-giallo .pv-perc-icona { color: var(--pv-giallo); }
.pv-esp-viola .pv-perc-icona { color: var(--pv-viola); --pv-perc-fondo: var(--pv-nero); }
.pv-esperienze .pv-esp h3 { color: #fff; font-size: 24px; font-weight: 700; line-height: 1.2; margin: 0 0 6px; padding: 0; }
.pv-esperienze .pv-esp p { color: #e6e6e6; font-size: 17px; line-height: 1.4; margin: 0 0 10px !important; }
.pv-esp a { color: #fff !important; font-weight: 600; font-size: 17px; text-decoration: underline; text-underline-offset: 4px; }
.pv-esp a:hover { color: var(--pv-giallo) !important; }

/* ---------- Chiusura ---------- */
.pv-chiusura { position: relative; overflow: hidden; text-align: center; padding: 56px 16px 60px; }
.pv-chiusura::after { content: ''; position: absolute; right: -110px; top: 50%; width: 220px; height: 220px; transform: translateY(-50%);
	border-radius: 50%; background: var(--pv-rosso); }
.pv-chiusura::before { content: ''; position: absolute; right: 40px; top: 50%; width: 150px; height: 56px; transform: translateY(-50%);
	border: 4px solid var(--pv-rosso); border-radius: 28px; }
.pv-chiusura-date { font-size: clamp(32px, 4.4vw, 50px); font-weight: 800; line-height: 1.05; margin: 0 0 12px !important; letter-spacing: -.01em; }
.pv-chiusura-luogo { font-size: 20px; line-height: 1.35; margin: 0 0 18px !important; }
.pv-chiusura-luogo strong { font-weight: 700; }
.pv-chiusura-nota { display: inline-block; font-size: 17px; margin: 0 0 18px !important; padding-top: 14px !important; border-top: 3px solid var(--pv-rosso); }
.pv-chiusura > * { position: relative; z-index: 1; }

/* ---------- Secondo pulsante (contorno) ---------- */
.pv-invito-bottoni { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin: 0 !important; }
a.pv-perc-bottone.pv-perc-bottone-2 { background: transparent; color: var(--pv-rosso) !important; box-shadow: inset 0 0 0 2px var(--pv-rosso); }
a.pv-perc-bottone.pv-perc-bottone-2:hover { background: var(--pv-rosso); color: #fff !important; }

/* ---------- Invito, variante «diviso»: domanda grande a sinistra, testo e pulsanti a destra ---------- */
.pv-invito-diviso { display: grid; grid-template-columns: 1.1fr 1fr; gap: 40px; align-items: center; text-align: left; padding: 60px 0 56px; }
.pv-invito-diviso h2 { font-size: clamp(36px, 5vw, 62px); margin: 0; padding-left: 26px !important; border-left: 10px solid var(--pv-rosso); }
.pv-invito-diviso .pv-invito-bottoni { justify-content: flex-start; }

/* ---------- Invito, variante «temi»: la domanda ha quattro risposte ---------- */
.pv-invito-temi { list-style: none !important; margin: 4px auto 28px !important; padding: 0 !important; display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; max-width: 900px; }
.pv-invito-temi li { padding: 0 !important; margin: 0; }
.pv-invito-temi a { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 20px 10px 16px; border-radius: 14px; text-decoration: none !important;
	color: var(--pv-nero) !important; font-weight: 700; font-size: 19px; line-height: 1.15; transition: transform .15s; }
.pv-invito-temi .pv-perc-verde a { background: var(--pv-verde); --pv-perc-fondo: var(--pv-verde); }
.pv-invito-temi .pv-perc-azzurro a { background: var(--pv-azzurro); --pv-perc-fondo: var(--pv-azzurro); }
.pv-invito-temi .pv-perc-giallo a { background: var(--pv-giallo); --pv-perc-fondo: var(--pv-giallo); }
.pv-invito-temi .pv-perc-viola a { background: var(--pv-viola); --pv-perc-fondo: var(--pv-viola); }
.pv-invito-temi .pv-perc-icona { width: 58px; height: 58px; color: #fff; }
.pv-invito-temi a:hover { transform: translateY(-3px); }
.pv-invito-temi a:focus-visible { outline: 3px solid var(--pv-nero); outline-offset: 3px; }

/* ---------- Temi: conteggio degli appuntamenti ---------- */
.pv-perc-quanti { margin-top: 14px; font-weight: 700; font-size: 16px; }

/* ---------- Temi, variante «fascia»: quattro colonne in una riga ---------- */
.pv-percorsi-fascia ul { grid-template-columns: repeat(4, 1fr); }
.pv-percorsi-fascia .pv-perc > a { min-height: 0; padding: 120px 22px 24px; }
.pv-percorsi-fascia .pv-perc .pv-perc-icona { top: 22px; left: 22px; right: auto; transform: none; width: 82px; height: 82px; }
.pv-percorsi-fascia .pv-perc-nome { font-size: clamp(22px, 2vw, 27px); padding-bottom: 10px; margin-bottom: 0; }
.pv-percorsi-fascia .pv-perc-testo { font-size: 16px; }

/* ---------- Temi, variante «righe»: strisce a tutta larghezza, come la newsletter sul telefono ---------- */
.pv-percorsi-righe ul { grid-template-columns: 1fr; gap: 4px; }
.pv-percorsi-righe .pv-perc > a { min-height: 0; display: grid; grid-template-columns: 52px minmax(180px, 280px) 1fr auto; align-items: center; column-gap: 24px; padding: 20px 150px 20px 28px; }
.pv-percorsi-righe .pv-perc-nome { margin: 0; padding: 0; font-size: clamp(24px, 2.4vw, 30px); }
.pv-percorsi-righe .pv-perc-quanti { margin: 0; white-space: nowrap; }
.pv-percorsi-righe .pv-perc .pv-perc-icona { width: 84px; height: 84px; }

/* ---------- Esperienze: quando ---------- */
.pv-esperienze .pv-esp p.pv-esp-quando { color: var(--pv-giallo); font-weight: 600; font-size: 15px; margin: 0 0 6px !important; letter-spacing: .01em; }
.pv-esp-segno { display: block; flex: none; }

/* ---------- Esperienze, variante «schede»: quattro schede su fondo scuro ---------- */
.pv-esperienze-schede ul { grid-template-columns: repeat(4, 1fr); column-gap: 14px; }
.pv-esperienze.pv-esperienze-schede .pv-esp { flex-direction: column; gap: 0; padding: 0 !important; border: 0; background: #2a2a2a; border-radius: 14px; overflow: hidden; }
.pv-esperienze-schede .pv-esp-segno { width: 100%; padding: 26px 0; display: flex; justify-content: center; background: #151515; }
.pv-esperienze-schede .pv-esp-viola .pv-perc-icona { --pv-perc-fondo: #151515; }
.pv-esperienze-schede .pv-esp .pv-perc-icona { width: 76px; height: 76px; margin: 0; }
.pv-esperienze-schede .pv-esp > div { padding: 20px 20px 22px; }

/* ---------- Esperienze, variante «chiaro»: fondo bianco, schede grigie ---------- */
.pv-esperienze.pv-esperienze-chiaro { background: #fff; box-shadow: none; clip-path: none; color: var(--pv-nero); padding: 40px 0; }
.pv-esperienze-chiaro h2 { color: var(--pv-nero) !important; }
.pv-esperienze-chiaro ul { column-gap: 14px; row-gap: 14px; }
.pv-esperienze.pv-esperienze-chiaro .pv-esp { background: #f3f3f1; border: 0; border-radius: 14px; padding: 24px 24px !important; }
.pv-esperienze.pv-esperienze-chiaro .pv-esp h3 { color: var(--pv-nero); }
.pv-esperienze.pv-esperienze-chiaro .pv-esp p { color: #3a3a3a; }
.pv-esperienze.pv-esperienze-chiaro .pv-esp p.pv-esp-quando { color: #8a5a00; }
.pv-esperienze-chiaro .pv-esp a { color: var(--pv-nero) !important; }
.pv-esperienze-chiaro .pv-esp a:hover { color: var(--pv-rosso) !important; }
.pv-esperienze-chiaro .pv-esp-giallo .pv-perc-icona { color: #e0a800; }
.pv-esperienze-chiaro .pv-esp-viola .pv-perc-icona { --pv-perc-fondo: #f3f3f1; }

/* ---------- Pagina di un tema ---------- */
.pv-tema h2 { font-size: clamp(26px, 2.8vw, 34px); font-weight: 800; color: var(--pv-nero); margin: 0 0 18px; padding: 0; }
.pv-tema-testa { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 40px 44px; margin: 0 0 48px; }
.pv-tema-testa.pv-perc-verde { background: var(--pv-verde); --pv-perc-fondo: var(--pv-verde); }
.pv-tema-testa.pv-perc-azzurro { background: var(--pv-azzurro); --pv-perc-fondo: var(--pv-azzurro); }
.pv-tema-testa.pv-perc-giallo { background: var(--pv-giallo); --pv-perc-fondo: var(--pv-giallo); }
.pv-tema-testa.pv-perc-viola { background: var(--pv-viola); --pv-perc-fondo: var(--pv-viola); }
.pv-tema .pv-perc-num { font-size: 22px; font-weight: 700; }
.pv-tema h2.pv-tema-nome { font-size: clamp(36px, 4.6vw, 56px); margin: 6px 0 10px; line-height: 1.02; }
.pv-tema p.pv-tema-motto { font-size: clamp(19px, 2vw, 23px); font-weight: 600; margin: 0 0 10px !important; padding: 0 !important; }
.pv-tema p.pv-tema-descr { font-size: 18px; line-height: 1.5; max-width: 40em; margin: 0 !important; }
.pv-tema p.pv-tema-manca { background: rgba(255,255,255,.6); border: 2px dashed var(--pv-nero); padding: 8px 12px !important; font-size: 15px; }
.pv-tema-testa .pv-perc-icona { width: 170px; height: 170px; color: #fff; }
.pv-tema-app { margin-bottom: 48px; }
.pv-tema-app ul { list-style: none !important; margin: 0 0 24px !important; padding: 0 !important; display: grid; gap: 10px; }
.pv-tema-app li { padding: 0 !important; margin: 0; }
.pv-tema-app li a { display: flex; flex-direction: column; gap: 4px; padding: 16px 20px 16px 22px; background: #f6f6f4; border-left: 8px solid var(--pv-sp); color: var(--pv-nero) !important; text-decoration: none !important; }
.pv-tema-app li a:hover { background: #ececea; }
.pv-tema-app li a:hover .pv-tema-titolo { text-decoration: underline; }
.pv-tema-app li a:focus-visible { outline: 3px solid var(--pv-azzurro); outline-offset: 2px; }
.pv-tema-quando { font-size: 15px; font-weight: 700; color: #555; }
.pv-tema-titolo { font-size: 20px; font-weight: 700; line-height: 1.25; }
.pv-tema-con { font-size: 16px; color: #444; }
.pv-tema-rel { margin-bottom: 48px; }
.pv-tema-altri .pv-percorsi { padding-bottom: 40px; }

/* ---------- Telefono ---------- */
@media (max-width: 760px) {
	.pv-info .pv-info-voce { padding: 0 !important; font-size: 17px; }
	.pv-info-voce + .pv-info-voce { border-left: 0; }
	.pv-info-dentro { flex-direction: column; align-items: flex-start; padding: 0 16px; gap: 14px; }
	.pv-percorsi ul, .pv-esperienze ul { grid-template-columns: 1fr; }
	.pv-perc > a, .pv-perc > div { min-height: 0; padding: 22px 120px 22px 20px; }
	.pv-perc-nome { font-size: 26px; padding-bottom: 8px; }
	.pv-perc-testo { font-size: 16px; }
	.pv-perc .pv-perc-icona { width: 84px; height: 84px; right: 18px; }
	.pv-esperienze { padding: 36px 16px 28px; }
	.pv-esperienze .pv-esp { gap: 18px; }
	.pv-esp .pv-perc-icona { width: 48px; height: 48px; }
	.pv-chiusura::after { width: 140px; height: 140px; right: -90px; top: auto; bottom: -40px; transform: none; }
	.pv-chiusura::before { display: none; }
}
@media (max-width: 980px) {
	.pv-percorsi-fascia ul, .pv-esperienze-schede ul { grid-template-columns: 1fr 1fr; row-gap: 14px; }
	.pv-percorsi-righe .pv-perc > a { grid-template-columns: 52px 1fr; row-gap: 6px; }
	.pv-percorsi-righe .pv-perc-quanti, .pv-percorsi-righe .pv-perc-testo { grid-column: 2; }
}
@media (max-width: 760px) {
	.pv-invito-diviso { grid-template-columns: 1fr; gap: 18px; padding: 40px 0; }
	.pv-invito-temi { grid-template-columns: 1fr 1fr; }
	.pv-percorsi-fascia ul, .pv-esperienze-schede ul { grid-template-columns: 1fr; }
	.pv-percorsi-fascia .pv-perc > a { padding: 22px 120px 22px 20px; }
	.pv-percorsi-fascia .pv-perc .pv-perc-icona { left: auto; right: 18px; top: 50%; transform: translateY(-50%); }
	.pv-percorsi-righe .pv-perc > a { padding: 20px 110px 20px 20px; grid-template-columns: 1fr; }
	.pv-percorsi-righe .pv-perc-num, .pv-percorsi-righe .pv-perc-quanti, .pv-percorsi-righe .pv-perc-testo { grid-column: 1; }
	.pv-tema-testa { padding: 26px 20px; flex-direction: column-reverse; align-items: flex-start; }
	.pv-tema-testa .pv-perc-icona { width: 90px; height: 90px; }
	.pv-esperienze.pv-esperienze-chiaro { padding: 30px 0; }
}
@media (prefers-reduced-motion: reduce) { a.pv-perc-bottone, .pv-perc > a, .pv-invito-temi a { transition: none; } .pv-invito-temi a:hover { transform: none; } }


/* Pagina del tema: gli altri tre temi su tre colonne. */
@media (min-width: 761px) { .pv-tema-altri .pv-percorsi-fascia ul { grid-template-columns: repeat(3, 1fr); } }

/* ---------- Edizioni (VisionART e simili): indice e rimando alle altre edizioni ---------- */
.pv-edizioni { --pv-nero: #1e1e1e; --pv-rosso: #dc1f1c; font-family: 'Outfit', system-ui, sans-serif; color: var(--pv-nero); margin: 0 0 48px; }
.pv-edizioni a { text-decoration: none !important; color: inherit !important; }
.pv-edizioni a.pv-ediz-corrente { color: #fff !important; }
.pv-ediz-corrente { display: flex; align-items: center; gap: 34px; background: var(--pv-nero); color: #fff !important; padding: 34px 40px; border-radius: 14px; margin: 0 0 40px; transition: background .15s; }
.pv-ediz-corrente:hover { background: #2c2c2c; }
.pv-ediz-corrente .pv-ediz-anno { font-size: clamp(54px, 7vw, 96px); font-weight: 800; line-height: .9; color: var(--pv-rosso); letter-spacing: -.02em; }
.pv-ediz-testi { display: flex; flex-direction: column; gap: 6px; }
.pv-ediz-etichetta { font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #f8cc4c; }
.pv-ediz-corrente strong { font-size: clamp(26px, 2.6vw, 36px); font-weight: 600; line-height: 1.2; }
.pv-ediz-corrente .pv-ediz-frase { font-size: 22px; font-weight: 300; line-height: 1.5; color: #e6e6e6; }
.pv-ediz-vai { margin-top: 8px; font-weight: 700; font-size: 17px; text-decoration: underline; text-underline-offset: 4px; }
.pv-edizioni h2.pv-ediz-titolo { font-size: 36px; font-weight: 600; line-height: 1.2; margin: 0 0 16px; padding: 0; color: var(--pv-nero); }
.pv-ediz-elenco { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.pv-ediz-elenco li { padding: 0 !important; margin: 0; }
.pv-ediz-elenco a { display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 22px 22px 24px; background: #f3f3f1; border-radius: 14px; border-top: 6px solid var(--pv-rosso); transition: background .15s; }
.pv-ediz-elenco a:hover { background: #e9e9e6; }
.pv-ediz-elenco a:hover strong { text-decoration: underline; }
.pv-ediz-elenco .pv-ediz-anno { font-size: 36px; font-weight: 600; line-height: 1; color: var(--pv-rosso); }
.pv-ediz-elenco strong { font-size: 22px; font-weight: 600; line-height: 1.3; }
.pv-ediz-elenco .pv-ediz-frase { font-size: 18px; font-weight: 300; color: #000; line-height: 1.5; }
.pv-edizioni a:focus-visible { outline: 3px solid #3cbcdc; outline-offset: 3px; }

/* ---------- Quando e dove (dal programma) ---------- */
.pv-quando { --pv-rosso: #dc1f1c; --pv-azzurro: #3cbcdc; display: flex; align-items: center; gap: 18px; flex-wrap: wrap; font-family: 'Outfit', system-ui, sans-serif; background: #f3f3f1; border-left: 8px solid #dc1f1c; padding: 20px 24px; margin: 0 0 36px; color: #1e1e1e; }
.pv-quando .pv-perc-icona { width: 36px; height: 36px; color: #dc1f1c; }
.pv-quando p { flex: 1 1 260px; margin: 0 !important; padding: 0 !important; font-size: 22px; font-weight: 300; line-height: 1.5; color: #000; }
.pv-quando strong { font-weight: 600; color: #1e1e1e; }
@media (max-width: 760px) {
	.pv-quando p, .pv-ediz-corrente .pv-ediz-frase { font-size: 16px; }
	.pv-edizioni h2.pv-ediz-titolo, .pv-ediz-elenco .pv-ediz-anno { font-size: 30px; }
	.pv-ediz-elenco strong { font-size: 20px; }
	.pv-ediz-elenco .pv-ediz-frase { font-size: 16px; }
	.pv-ediz-corrente { flex-direction: column; align-items: flex-start; gap: 12px; padding: 26px 22px; }
}
@media (prefers-reduced-motion: reduce) { .pv-ediz-corrente, .pv-ediz-elenco a { transition: none; } }
