/**
 * PPB Core — shared media-card layout primitives.
 * Used by venue-card and event-card (surface / hover / title stay on each block).
 */

.ppb-venue-card,
.ppb-event-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 0;
	overflow: hidden;
}

.ppb-venue-card__media,
.ppb-event-card__media {
	position: relative;
	overflow: hidden;
	flex-shrink: 0;
}

.ppb-venue-card__img,
.ppb-event-card__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.ppb-venue-card__body,
.ppb-event-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 1rem 1rem 1.25rem;
	flex: 1 1 auto;
	min-height: 0;
}

.ppb-venue-card__actions,
.ppb-event-card__actions {
	margin-top: auto;
	padding-top: 0.25rem;
}
