/* ====================================================================
   Polo80 - Frontend pagina Eventi.
   Riusa le classi già esistenti per tab (.pop-menu-tabs*) e griglia
   (.pop-menu-grid) della pagina Menu invece di duplicarle: sono generiche,
   non specifiche del menu. Qui restano solo gli stili propri della card
   evento, diversa nei contenuti dalla card prodotto.
   ==================================================================== */

.pop-evento-card {
	background-color: var(--e-global-color-panna-crema);
	border: var(--pop-border-width) solid var(--pop-border-color);
	border-radius: 0;
	box-shadow: 6px 6px 0 var(--pop-border-color);
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: visible;
}

.pop-evento-card__media {
	position: relative;
	border-bottom: var(--pop-border-width) solid var(--pop-border-color);
}
.pop-evento-card__media img {
	display: block;
	width: 100%;
	height: 180px;
	max-height: 180px;
	object-fit: cover;
	object-position: center;
}

/* Adesivi diagonali: "In Evidenza" (giallo, stessa logica della "Novità" del
   menu) e "In Corso" (verde inglese scuro, per distinguerlo a colpo
   d'occhio da tutti gli altri adesivi del sito, nessuno dei quali usa
   questo colore) possono comparire insieme: il secondo scende più in basso
   con --secondaria, stessa tecnica già usata per le card prodotto. */
.pop-evento-badge--evidenza {
	background-color: var(--e-global-color-primary);
	color: var(--e-global-color-text);
}
.pop-evento-badge--in-corso {
	background-color: var(--e-global-color-secondary);
	color: var(--e-global-color-panna-crema);
}
.pop-evento-badge--secondaria {
	top: 56px !important;
}
.pop-evento-badge--no-media {
	position: static;
	display: inline-block;
	transform: none;
	margin: 12px 0 0 12px;
}
.pop-evento-badge--no-media.pop-evento-badge--secondaria {
	margin-top: 4px;
}

.pop-evento-card__body {
	padding: 16px 18px 18px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex-grow: 1;
}

.pop-evento-card__title {
	font-family: var(--e-global-typography-primary-font-family), sans-serif;
	text-transform: uppercase;
	font-size: 19px;
	line-height: 1.15;
	margin: 0;
	/* Regola di contrasto del sito: verde scuro su crema/arancione. */
	color: var(--e-global-color-secondary);
}

.pop-evento-card__data {
	font-family: var(--e-global-typography-accent-font-family), sans-serif;
	font-size: 13.5px;
	font-weight: 700;
	color: var(--e-global-color-accent);
	margin: 0;
}

/* Evento con programma delle serate: chi suona (in evidenza) e nota (piccola). */
.pop-evento-card__serata {
	font-family: var(--e-global-typography-primary-font-family), sans-serif;
	font-size: 15px;
	font-weight: 700;
	/* Regola di contrasto del sito: verde scuro su crema/arancione. */
	color: var(--e-global-color-secondary);
	margin: 0;
	line-height: 1.3;
}

.pop-evento-card__nota {
	font-family: var(--e-global-typography-text-font-family), sans-serif;
	font-size: 12.5px;
	font-style: italic;
	color: var(--e-global-color-secondary);
	opacity: 0.75;
	margin: 0;
}

.pop-evento-card__luogo,
.pop-evento-card__prezzo {
	font-family: var(--e-global-typography-text-font-family), sans-serif;
	font-size: 13.5px;
	/* Regola di contrasto del sito: verde scuro su crema/arancione. */
	color: var(--e-global-color-secondary);
	opacity: 0.75;
	margin: 0;
	line-height: 1.4;
}

.pop-evento-card__link {
	margin-top: auto;
	align-self: flex-start;
	padding-top: 8px;
}

/* ---- Sezioni Home "Prossimi Eventi" ed "Eventi della Settimana": lo
   spazio/intestazione è già quello comune di ".pop-home-sezione .pop-menu-grid"
   in menu.css (Eventi ora è una tab del gruppo Novità/Offerte/Eventi invece
   di avere un proprio contenitore dedicato), niente da aggiungere qui. ---- */

/* ====================================================================
   Card cliccabile: il titolo è il collegamento alla pagina dell'evento e il
   suo ::after copre tutta la card; il pulsante "Scopri di più" (esterno)
   resta sopra, cliccabile a parte.
   ==================================================================== */
.pop-evento-card {
	position: relative;
	transition: box-shadow 0.15s ease, transform 0.15s ease;
}
.pop-evento-card:hover {
	box-shadow: 8px 8px 0 var(--pop-border-color);
	transform: translate(-1px, -1px);
}
.pop-evento-card__titolo-link {
	color: inherit;
	text-decoration: none;
}
.pop-evento-card__titolo-link::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}
.pop-evento-card__link {
	position: relative;
	z-index: 2;
}
.pop-evento-card__categoria {
	margin: 0;
	font-family: var(--e-global-typography-accent-font-family), sans-serif;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--e-global-color-secondary);
	opacity: 0.75;
}

/* ====================================================================
   Pagina dell'evento (single-evento.php, ct_render_pagina_evento()).
   ==================================================================== */
.pop-evento-pagina {
	padding: 60px 32px 80px;
	font-family: var(--e-global-typography-text-font-family), sans-serif;
	/* Regola di contrasto del sito: verde scuro su crema/arancione. */
	color: var(--e-global-color-secondary);
}
.pop-evento-pagina__inner {
	max-width: 1040px;
	margin: 0 auto;
}
.pop-evento-pagina a {
	color: var(--e-global-color-secondary);
}
.pop-evento-pagina a.elementor-button {
	color: inherit;
}
.pop-evento-pagina__anteprima {
	margin: 0 0 20px;
	padding: 10px 14px;
	font-size: 13px;
	background-color: #fff3cd;
	border: var(--pop-border-width) solid var(--pop-border-color);
}
.pop-evento-pagina__indietro {
	margin: 0 0 28px;
	font-weight: 700;
}
.pop-evento-pagina__indietro a {
	text-decoration: underline;
}
.pop-evento-pagina__categoria {
	margin: 0 0 8px;
	font-family: var(--e-global-typography-accent-font-family), sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.pop-evento-pagina__categoria a {
	text-decoration: none;
	border-bottom: 2px solid currentColor;
}
.pop-evento-percorso__sep {
	margin: 0 6px;
}
.pop-evento-pagina .pop-evento-pagina__titolo {
	margin: 0;
	font-family: var(--e-global-typography-primary-font-family), sans-serif;
	font-size: clamp(36px, 7vw, 68px);
	line-height: 1.05;
	text-transform: uppercase;
	color: var(--e-global-color-secondary);
}
.pop-evento-pagina__badge {
	margin: 14px 0 0;
}
.pop-evento-pagina__badge .pop-badge {
	margin: 0;
}
.pop-evento-badge--concluso {
	background-color: var(--e-global-color-secondary);
	color: var(--e-global-color-panna-crema);
}
.pop-evento-pagina__corpo {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
	gap: 40px;
	align-items: start;
	margin-top: 32px;
}
.pop-evento-pagina__media {
	border: var(--pop-border-width) solid var(--pop-border-color);
	box-shadow: 8px 8px 0 var(--pop-border-color);
	background-color: var(--e-global-color-panna-crema);
}
.pop-evento-pagina__media img {
	display: block;
	width: 100%;
	height: auto;
}
.pop-evento-pagina__media--logo {
	background-color: var(--e-global-color-secondary);
	padding: 48px 32px;
	text-align: center;
}
.pop-evento-pagina__media--logo img {
	display: inline-block;
	width: auto;
	max-width: 70%;
	max-height: 220px;
}
.pop-evento-pagina__etichetta {
	margin: 0 0 4px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 0.75;
}
.pop-evento-pagina__data {
	margin: 0 0 14px;
	font-family: var(--e-global-typography-accent-font-family), sans-serif;
	font-size: clamp(20px, 3vw, 28px);
	font-weight: 700;
	line-height: 1.2;
}
.pop-evento-pagina .pop-evento-pagina__serata {
	margin: 0 0 4px;
	font-family: var(--e-global-typography-primary-font-family), sans-serif;
	font-size: clamp(22px, 3.4vw, 32px);
	text-transform: uppercase;
	color: var(--e-global-color-secondary);
}
.pop-evento-pagina__nota {
	margin: 0 0 14px;
	font-style: italic;
	opacity: 0.85;
}
.pop-evento-pagina__riga {
	margin: 0 0 6px;
	line-height: 1.5;
}
.pop-evento-pagina__riga strong {
	display: inline-block;
	min-width: 76px;
	text-transform: uppercase;
	font-size: 12px;
	letter-spacing: 0.06em;
}
.pop-evento-pagina__testo {
	margin: 20px 0 0;
	line-height: 1.7;
	font-size: 17px;
}
.pop-evento-pagina__testo p {
	margin: 0 0 14px;
}
.pop-evento-pagina__testo--ripiego {
	font-style: italic;
	opacity: 0.85;
}
.pop-evento-pagina__pulsanti {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 24px 0 0;
}
.pop-evento-altre-date {
	margin-top: 56px;
}
.pop-evento-pagina .pop-evento-pagina__sezione-titolo {
	margin: 0 0 18px;
	font-family: var(--e-global-typography-primary-font-family), sans-serif;
	text-transform: uppercase;
	color: var(--e-global-color-secondary);
}
/* Elenco delle altre date: una tabella con il bordo pieno del sito e le righe
   alternate arancione / crema (colori della palette). */
.pop-evento-programma {
	list-style: none;
	margin: 0;
	padding: 0;
	border: var(--pop-border-width) solid var(--pop-border-color);
}
/* Tre colonne: data, chi suona (con la nota sotto), testo breve della serata. */
.pop-evento-programma__riga {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr) minmax(0, 1.4fr);
	gap: 4px 28px;
	align-items: start;
	padding: 16px 20px;
}
.pop-evento-programma__riga:nth-child(odd) {
	background-color: var(--e-global-color-accent);
}
.pop-evento-programma__riga:nth-child(even) {
	background-color: var(--e-global-color-panna-crema);
}
.pop-evento-programma__riga + .pop-evento-programma__riga {
	border-top: 2px solid var(--pop-border-color);
}
.pop-evento-programma__data {
	font-weight: 700;
}
.pop-evento-programma__col {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.pop-evento-programma__chi {
	font-weight: 700;
	text-transform: uppercase;
}
.pop-evento-programma__nota,
.pop-evento-programma__testo {
	font-size: 14.5px;
	line-height: 1.5;
}
.pop-evento-programma__nota {
	font-style: italic;
}
.pop-evento-programma__annullata {
	display: inline-block;
	margin-left: 8px;
	padding: 1px 8px;
	font-size: 11px;
	letter-spacing: 0.06em;
	background-color: var(--e-global-color-secondary);
	color: var(--e-global-color-panna-crema);
}
.pop-evento-programma__riga.is-annullata .pop-evento-programma__data,
.pop-evento-programma__riga.is-annullata .pop-evento-programma__chi {
	text-decoration: line-through;
	opacity: 0.7;
}
@media (max-width: 800px) {
	.pop-evento-pagina {
		padding: 40px 20px 60px;
	}
	.pop-evento-pagina__corpo {
		grid-template-columns: minmax(0, 1fr);
		gap: 28px;
	}
	.pop-evento-programma__riga {
		grid-template-columns: minmax(0, 1fr);
	}
}
