/* --- Altezza uniforme schede --- */
.eventi-carousel .slick-track{
  display: flex !important;
}

.eventi-carousel .slick-slide{
  height: auto !important;
  display: flex !important;
}

.eventi-slide-link{
  display: block;
  height: 100%;
  text-decoration: none;
  width: 100%;
}

.eventi-card {
	width: 100%;
	max-width: 310px;
	height: 100%;
	display: flex;
	flex-direction: column;
	border-radius: 12px;
	overflow: hidden;
	background: #E7EEF3;
	border: 1px solid #ddd;
	margin: 0 10px;
}

@media (max-width: 600px) {
	.eventi-card {
		margin: 0 auto;
		max-width: 96%;
		min-width:96%;
	}
}

.eventi-card-img img{
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}

.eventi-card-body{
  padding: 14px 14px 16px 14px;
  display: flex;
  flex-direction: column;
  flex: 1 1 auto; /* spinge per uniformare */
}

.eventi-card-body p{
	font-size:14px;
	line-height:22.4px;
	color:#102c53;
}

.eventi-title{
  font-size: 18px;
  line-height: 1.25;
  margin: 0 0 10px 0;
  color: #102c53;
}

.eventi-date{
	color:#102C53;
	display: block;
	font-size: 18px;
	font-weight:700;
	/*opacity: .75;*/
	margin-bottom: 8px;
}

/* --- Footer: sinistra controls, destra bottone --- */
.eventi-footer{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 14px 10px;
}

.eventi-footer-left{
  display: flex;
  align-items: center;
  gap: 10px; /* frecce + barra */
}

/* Frecce slick */
.eventi-arrows{
  display: inline-flex;
  gap: 8px;
}
.eventi-arrow{
  width: 48px;
  height: 48px;
  border-radius: 3px;
  border: 1px solid rgba(0,0,0,0.18);
  background: #fff;
  color:#102C53;
  cursor: pointer;
  /*line-height: 1;*/
  font-size: 28px;
  display: inline-flex;
  /*align-items: center;*/
  justify-content: center;  
}
.eventi-arrow:focus{
  outline: 2px solid rgba(0,0,0,0.35);
  outline-offset: 2px;
}

/* Progress bar */
.slick-progress{
  width: 60px; /* coerente con maxWidth in JS */
  height: 4px;
  background: rgba(0,0,0,0.12);
  border-radius: 999px;
}
.slick-progress-bar{
  height: 100%;
  width: 0px;
  background: rgba(0,0,0,0.65);
  border-radius: 999px;
}

/* Bottone */
.mostra-tutto-btn{
  margin-top: 0; /* ora sta nel footer */
}
.btn-polimi-esteso{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 5px 14px;
  border-radius: 999px;
  text-decoration: none;
}
.btn-polimi-blue{
  background: #00366D;
  color: #fff;
}
.btn-text-polimi{ font-size:16px; color:#fff; }
.btn-arrow{ font-size: 18px; line-height: 1; }

/*
allineare a sinistra un singolo elemento in slick carousel 
quando ne sono impostati 4 (e centerMode è attivo o il track 
si centra automaticamente), la soluzione più efficace è forzare 
l'allineamento a sinistra tramite CSS, annullando i margini 
automatici imposti da slick
*/
/* Forza l'allineamento a sinistra */
.slick-track {
    margin-left: 0 !important;
    margin-right: auto !important;
}

/* Opzionale: Assicura che la slide non si allarghi forzatamente */
.slick-slide {
    display: inline-block;
}
