/*	Colore per categoria: ogni Evento riceve una classe Cat-<slug> ricavata da */
/*	Evento.CategoriaUrl in home.htm. Da qui in poi tutto il resto della card */
/*	(titolo, pulsante Acquista) legge --CatColor invece di un colore fisso. */
/*	Limite: se il cliente crea nuove categorie dal pannello, va aggiunta una riga qui. */
	.Evento { --CatColor: var(--Palette1); }
	.Evento.Cat-prosa { --CatColor: var(--Categoria_Prosa); }
	.Evento.Cat-danza { --CatColor: var(--Categoria_Danza); }
	.Evento.Cat-eventi { --CatColor: var(--Categoria_Eventi); }
	.Evento.Cat-musica { --CatColor: var(--Categoria_Musica); }
	.Evento.Cat-bambini { --CatColor: var(--Categoria_Bambini); }
	.Evento.Cat-cinema { --CatColor: var(--Categoria_Cinema); }
	.Evento.Cat-arena { --CatColor: var(--Categoria_Arena); }
	.Evento.Cat-martinitt { --CatColor: var(--Categoria_Martinitt); }
	.Evento.Cat-prosa-abbonamento-fisso-e-libero { --CatColor: var(--Categoria_Prosa_Abbonamento_FissoLibero); }
	.Evento.Cat-prosa-abbonamento-libero-e-pacchetto { --CatColor: var(--Categoria_Prosa_Abbonamento_LiberoPacchetto); }

/*	-------------------------------------------------------------------------- */
/*	Mobile  
/*	-------------------------------------------------------------------------- */
	@media screen and (max-width: 440px) {

		.Evento {
			display: block;
			padding: 0;
			margin: 0;
			box-sizing: border-box;
			position: relative;
			background-color: var(--Box_Evento_Background_Color);
			border-radius: 0.3rem;
			overflow: hidden;
			width: 100%;
		}
		.Evento A {
			text-decoration: none;
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			width: 100%;
			position: relative;
			padding-left: 1rem;
			padding-right: 1rem;
			box-sizing: border-box;
		}
		.Evento a .ImageBox {
			overflow: hidden;
			height: 13rem;
			width: 100%;
			margin-bottom: 0;
			position: relative;
			border: 0.15rem solid var(--Box_Evento_Authors_Color);
		}
		.Evento a.EventoLink div.InfoBox {
			width: 100%;
		}
		.Evento .Image {
			display: block;
			height: 100%;
			width: 100%;
			position: relative;
			object-fit: cover;
			object-position: center 15%;
		}
		/*	Badge "Invito a Teatro": ora mostra il logo reale caricato dal CMS invece */
		/*	di icona+testo generici - la card bianca fa solo da sfondo di contrasto. */
		.Evento .InvitoBadge {
			position: absolute;
			top: 0.6rem;
			left: 0.6rem;
			z-index: 200;
			display: inline-flex;
			align-items: center;
			background-color: transparent;
			/* padding: 0.4rem 0.6rem; */
			border-radius: 0.4rem;
			/*box-shadow: 0 0 10px 4px rgba(255,255,255,0.7);*/
		}
		.Evento .InvitoBadgeLogo {
			display: block;
			height: 2rem;
			width: auto;
			max-width: 8rem;
		}
		.Evento .Date {
			display: block;
			line-height: 1.2em;
			color: var(--Box_Evento_Date_Color);
			font-family: var(--Font_Text);
			padding-bottom: 0.3rem;
			font-weight: 500;
			padding-top: 0.8rem;
			font-size: 1rem;
		}
		.Evento .Date I {
			color: var(--CatColor);
			margin-right: 0.4rem;
			width: 1rem;
			text-align: center;
		}
		.Evento .Titles {
			display: block;
			line-height: 1.5em;
			color: var(--Box_Evento_Titles_Color);
			font-family: var(--Box_Evento_Titles_Font);
			padding-top: 0.2rem;
		}
		.Evento .Titles .Title {
			font-size: 1.45rem;
			font-weight: bold;
			display: block;
			padding-bottom: 0.3rem;
			color: var(--CatColor);
			line-height: 1.3rem;
			font-family: var(--Font_Heading);
		}
		.Evento .Titles .SubTitle {
			display: none;
		}
		.Evento .Authors {
			display: block;
			font-weight: normal;
			font-style: normal;
			line-height: 1.2em;
			color: var(--Box_Evento_Authors_Color);
			padding-bottom: 0.2rem;
			font-family: var(--Box_Evento_Authors_Font);
			font-size: 0.9rem;
		}
		.Evento .Authors:last-of-type {
			padding-bottom: 1rem;
		}
		.Evento .Abstract {
			display: block;
			font-weight: normal;
			line-height: 1.4em;
			color: var(--Box_Evento_Abstract_Color);
			font-style: italic;
			font-family: var(--Box_Evento_Abstract_Font);
			font-size: var(--Box_Evento_Abstract_FontSize);
			padding-bottom: 0.7rem;
		}
		.Evento .Time,
		.Evento .Venue {
			display: block;
			line-height: 1.2em;
			color: var(--Palette6);
			font-family: var(--Font_Text);
			padding-bottom: 0.3rem;
			font-weight: 500;
			padding-top: 0.1rem;
			font-size: 0.9rem;
		}
		.Evento .Time I,
		.Evento .Venue I,
		.Evento .Category I {
			color: var(--CatColor);
			margin-right: 0.4rem;
			width: 1rem;
			text-align: center;
		}
		.Evento .Category {
			display: block;
			text-decoration: none;
			font-size: 0.9rem;
			font-weight: 600;
			color: var(--CatColor);
			padding-left: 1rem;
			padding-right: 1rem;
			padding-bottom: 0.6rem;
			padding-top: 0.1rem;
			box-sizing: border-box;
		}
		/*	Riga pulsanti: Acquista (pieno, colore categoria) + Scheda spettacolo (pillola chiara) */
		.Evento .ButtonsRow {
			display: flex;
			align-items: center;
			gap: 0.6rem;
			flex-wrap: wrap;
			padding-left: 0rem;
			padding-right: 0rem;
			padding-bottom: 1.2rem;
			box-sizing: border-box;
		}
		.Evento .BuyButtonLink,
		.Evento .FakeButtonLink {
			display: block;
			text-decoration: none;
			width: calc(100% - 2rem);
		}
		.Evento .BuyButton {
			display: inline-flex;
			align-items: center;
			gap: 0.4rem;
			white-space: nowrap;
			font-size: 0.85rem;
			line-height: 2.2em;
			font-weight: 600;
			padding: 0 1rem;
			background-color: var(--CatColor);
			color: #ffffff;
			border: 0.07em solid var(--CatColor);
			font-family: var(--Box_Evento_Button_Font);
			border-radius: 999px;
			width: 100%;
			justify-content: center;
		}
		.Evento A:HOVER .BuyButton {
			filter: brightness(0.88);
		}
		.Evento .FakeButton {
			display: inline-block;
			white-space: nowrap;
			text-align: center;
			font-size: 0.85rem;
			line-height: 2.2em;
			font-weight: 600;
			padding: 0 1rem;
			background-color: color-mix(in srgb, var(--CatColor) 12%, white);
			color: var(--CatColor);
			border: 0.07em solid color-mix(in srgb, var(--CatColor) 35%, white);
			font-family: var(--Box_Evento_Button_Font);
			border-radius: 999px;
			width: 100%;
		}
		.Evento A:HOVER .FakeButton {
			background-color: color-mix(in srgb, var(--CatColor) 22%, white);
		}

		/*-----------------------------------------------------------------------------------------------EVENTI PASSATI */

		#eventiPassati .Evento {filter: grayscale(1);}

		#eventiPassati .Evento .EventoLink {}

		#eventiPassati .Evento .ImageBox {}

		#eventiPassati .Evento .InfoBox {}



		
	}

/*	-------------------------------------------------------------------------- */
/*	Desktop  
/*	-------------------------------------------------------------------------- */
	@media screen and (min-width: 441px) {

		.Evento {
			display: flex;
			padding: 0;
			margin: 0;
			box-sizing: border-box;
			position: relative;
			background-color: var(--Box_Evento_Background_Color);
			border-left: none;
			border-right: none;
			padding: 0rem;
			width: 100%;
			flex-direction: row;
			align-items: flex-start;
			justify-content: center;
			flex-wrap: nowrap;
		}
		.Evento:nth-child(4n+1) {
			border-left: none;
		}
		.Evento A {
			text-decoration: none;
			display: flex;
			width: 100%;
			position: relative;
			padding-left: 1rem;
			padding-right: 1rem;
			box-sizing: border-box;
			flex-direction: row;
			align-items: flex-start;
			justify-content: flex-start;
			gap: 1rem;
			height: 15rem;
		}
		.ButtonsRow a.EventoLink {
			width: auto!important;
			display: none;
		}
		.Evento .Image {
			display: block;
			height: 100%;
			width: 100%;
			position: relative;
			z-index: 100;
			transition: all 0.2s ease;
			object-fit: cover;
			object-position: center 15%;
		}
		.Evento a:hover .Image {
		    transform: scale(1.1);
		}
		.Evento a .ImageBox {
			overflow: hidden;
			height: 15rem;
			width: 11rem;
			border-radius: 0rem;
			border: 0.15rem solid var(--Box_Evento_Authors_Color);
			position: relative;
		}

		.Evento a .InfoBox {
			height: 100%;
			width: 60%;
			display: flex;
			flex-direction: column;
			justify-content: space-between;
		}

		/*	Badge "Invito a Teatro": ora mostra il logo reale caricato dal CMS invece */
		/*	di icona+testo generici - la card bianca fa solo da sfondo di contrasto. */
		.Evento .InvitoBadge {
			position: absolute;
			top: 0.5rem;
			left: 0.5rem;
			z-index: 200;
			display: inline-flex;
			align-items: center;
			background-color: transparent;
			/* padding: 0.3rem 0.5rem; */
			border-radius: 0.35rem;
		}
		.Evento .InvitoBadgeLogo {
			display: block;
			height: 1.5rem;
			width: auto;
			max-width: 6rem;
		}
		.Evento .Date {
			display: block;
			line-height: 1.2em;
			color: var(--Box_Evento_Date_Color);
			font-family: var(--Font_Text);
			padding-bottom: 0.2rem;
			font-weight: 500;
			padding-top: 0.6rem;
			font-size: 1rem;
			margin-bottom: -1rem;
		}
		.Evento .Titles {
			display: block;
			line-height:1.6em;
			color: var(--Box_Evento_Titles_Color);
			font-family: var(--Box_Evento_Titles_Font);
			padding-top:0.2rem;
		}
		.Evento .Titles .Title {
			font-weight: bold;
			display: block;
			padding-bottom: 0.1rem;
			color: var(--CatColor);
			font-size: 1.7rem;
			line-height: 1.8rem;
			font-family: var(--Font_Heading);
		}
		.Evento .Titles .SubTitle {
			display: block;
			margin-top: -0.2rem;
			padding-bottom: 0.2rem;
			font-size: 0.75rem;
			line-height: 1rem;
			color: var(--Palette2);
			font-weight: 600;
			letter-spacing: -0.01rem;

			display: none;
		}
		.Evento .AuthorsRow {
			margin-top: 1rem;
		}
		.Evento .Authors {
			display: block;
			font-weight: normal;
			font-style: normal;
			line-height: 1.2em;
			color: var(--Box_Evento_Authors_Color);
			padding-bottom: 0.15rem;
			font-family: var(--Box_Evento_Authors_Font);
			font-size: 0.85rem;
		}
		.Evento .Authors:last-of-type {
			padding-bottom:0.7rem;
		}
		.Evento .Abstract {
			display: block;
			font-weight: normal;
			line-height:1.4em;
			color: var(--Box_Evento_Abstract_Color);
			font-style: italic;
			font-family: var(--Box_Evento_Abstract_Font);
			font-size: var(--Box_Evento_Abstract_FontSize);
			padding-bottom:0.7rem;
		}
		/* Mobile e Desktop - stile icone comune */
		.Evento .Date I {
			color: var(--CatColor);
			margin-right: 0rem;
			width: 1rem;
			text-align: center;
		}
		.Evento .Time {
			display: block;
			line-height: 1.2em;
			color: var(--Palette6);
			font-family: var(--Font_Text);
			padding-bottom: 0.2rem;
			font-weight: 500;
			padding-top: 0.1rem;
			font-size: 0.8rem;
		}
		.Evento .Venue {
			display: block;
			line-height: 1.2em;
			color: var(--Palette6);
			font-family: var(--Font_Text);
			padding-bottom: 0.2rem;
			font-weight: 500;
			padding-top: 0.1rem;
			font-size: 0.8rem;
		}
		.Evento .Time I,
		.Evento .Venue I,
		.Evento .Category I {
			color: var(--CatColor);
			margin-right: 0rem;
			width: 1rem;
			text-align: center;
		}
		.Evento .Category {
			display: block;
			line-height: 1.2em;
			color: var(--CatColor);
			font-family: var(--Font_Text);
			padding-bottom: 0.6rem;
			font-weight: 500;
			padding-top: 0.1rem;
			font-size: 0.8rem;
			text-decoration: none;
			padding-left: 1rem;
			padding-right: 1rem;
			box-sizing: border-box;
			min-height: unset!important;
		}
		.Evento .Category:HOVER {
			text-decoration: underline;
		}
		/*	Riga pulsanti: Acquista (pieno, colore categoria) + Scheda spettacolo (pillola chiara) */
		.Evento .ButtonsRow {
			display: flex;
			align-items: center;
			gap: 0.5rem;
			flex-wrap: nowrap;
			padding-bottom: 0.8rem;
			padding-top: 0.2rem;
			box-sizing: border-box;
			min-height: unset !important;
			flex-direction: row;
			justify-content: flex-start;
			margin-top: -1rem;
		}
		.Evento .BuyButtonLink,
		.Evento .FakeButtonLink {
			display: block;
			text-decoration: none;
			padding-left: 0;
			padding-right: 0;
			padding-bottom: 0;
			min-height: unset!important;
			box-sizing: border-box;
		}
		.Evento .ButtonsRow .BuyButtonLink {
			width: auto!important;
		}
		.Evento .BuyButton {
			display: inline-flex;
			align-items: center;
			gap: 0.35rem;
			white-space: nowrap;
			text-align: center;
			font-size: 0.75rem;
			line-height: 2em;
			font-weight: 600;
			padding: 0 0.9rem;
			background-color: var(--CatColor);
			color: #ffffff;
			border: 0.07em solid var(--CatColor);
			font-family: var(--Box_Evento_Button_Font);
			border-radius: 999px;
			transition: all 0.2s ease;
		}
		.Evento A.BuyButton:HOVER {
			filter: brightness(0.88);
		}
		.Evento .FakeButton {
			display: inline-block;
			white-space: nowrap;
			text-align: center;
			font-size: 0.75rem;
			line-height: 2em;
			font-weight: 600;
			padding: 0 0.9rem;
			background-color: color-mix(in srgb, var(--CatColor) 12%, white);
			color: var(--CatColor);
			border: 0.07em solid color-mix(in srgb, var(--CatColor) 35%, white);
			font-family: var(--Box_Evento_Button_Font);
			border-radius: 999px;
			transition: all 0.2s ease;
		}
		.Evento A .FakeButton:HOVER {
			background-color: color-mix(in srgb, var(--CatColor) 22%, white);
		}

		/*-----------------------------------------------------------------------------------------------EVENTI PASSATI */

		#eventiPassati .Evento {filter: grayscale(1);}

		#eventiPassati .Evento .EventoLink {}

		#eventiPassati .Evento .ImageBox {}

		#eventiPassati .Evento .InfoBox {}





	}