/**
 * front page - grid - hovers
 */
 
.path-frontpage .field--name-field-featured-photograph-front {
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.path-frontpage .field--name-field-featured-photograph-front:hover {
  background-color: #f0f0f0; /* Light grey background */
  box-shadow: 0px 10px 13px -7px rgba(0, 0, 0, 0.6); /* Soft shadow */
}

/**
 * front page - grid - dates
 */

.path-frontpage time,
.path-frontpage .field--name-field-event-dates {
	text-align: center ;
	margin-bottom: 0.5em ;
	padding: 0.25em ;
	font-family: 'Source Sans 3', arial ;
	font-style: normal ;
	font-size: 1em ;
	font-weight: bold ;
}

.path-frontpage .field--name-body p {
	text-align: center ;
	margin-bottom: 0.5em ;
	padding: 0.25em ;
	font-family: 'Source Sans 3', arial ;
	font-style: normal ;
	font-size: 1em ;
	font-weight: bold ;
}

/**
 * front page - grid - flexibility
 */
 
/* Apply to both Views Bootstrap grids */
#views-bootstrap-events-block-pages-front,
#views-bootstrap-events-block-events-front {
  justify-content: center; /* centers last-row stragglers */
}

/* Center content inside each column */
#views-bootstrap-events-block-pages-front .col,
#views-bootstrap-events-block-events-front .col {
  text-align: center;
}

/* Restrict and center images */
#views-bootstrap-events-block-pages-front img,
#views-bootstrap-events-block-events-front img {
  display: block;
  margin: 0 auto;
  max-width: 400px;
  max-height: 400px;
  width: 100%;   /* makes it responsive */
  height: auto;  /* preserves aspect ratio */
  object-fit: cover; /* optional: crops to fill without distortion */
}
