/* Content-led cards and a single, coherent search area. */
#ajax-content-wrap .container.main-content .te-classic-shell .te-classic-hero .te-hero-filter-bar {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 9px !important;
	max-width: 610px !important;
	margin: 16px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-hero-filter-bar .te-filter-control {
	display: grid !important;
	min-width: 0 !important;
	gap: 3px !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-hero-filter-bar .te-filter-control span {
	color: var(--p-brown, #895835) !important;
	font: 700 11px/1 "Dosis", Arial, sans-serif !important;
	letter-spacing: .09em !important;
	text-transform: uppercase !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-hero-filter-bar .te-filter-control select {
	width: 100% !important;
	min-width: 0 !important;
	min-height: 36px !important;
	padding: 5px 28px 5px 10px !important;
	border: 1px solid var(--p-line, rgba(41, 96, 112, .18)) !important;
	border-radius: 8px !important;
	background: rgba(255, 253, 247, .82) !important;
	color: var(--p-sea, #296070) !important;
	font: 600 15px/1 "Dosis", Arial, sans-serif !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-hero-filter-bar .te-filter-reset {
	grid-column: 1 / -1 !important;
	justify-self: start !important;
	min-height: 0 !important;
	padding: 2px 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--p-brown, #895835) !important;
	font: 700 14px/1.2 "Dosis", Arial, sans-serif !important;
	text-decoration: underline !important;
	text-underline-offset: 3px !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-events > .te-filter-bar:not(.te-hero-filter-bar) {
	display: none !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-proto-status.has-only-link {
	justify-content: flex-end !important;
	min-height: 0 !important;
	padding-block: 10px !important;
}

/* The card height follows its content. No artificial empty row sits between copy and tags. */
#ajax-content-wrap .container.main-content .te-classic-shell .te-grid {
	align-items: start !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-classic-card {
	height: auto !important;
	min-height: 0 !important;
	align-self: start !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-card-body {
	display: grid !important;
	flex: 0 0 auto !important;
	grid-template-rows: 23px 63px 28px auto auto 40px !important;
	align-content: start !important;
	row-gap: 0 !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-event-meta {
	justify-content: flex-start !important;
	overflow: visible !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-time-top {
	display: block !important;
	width: 47px !important;
	min-width: 47px !important;
	overflow: visible !important;
	-webkit-line-clamp: unset !important;
	-webkit-box-orient: initial !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-event-meta .te-date {
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-card h3 {
	align-self: start !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-description {
	grid-row: 4 !important;
	align-self: start !important;
	margin: 0 !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-card-filter-tags {
	grid-row: 5 !important;
	align-items: center !important;
	overflow: visible !important;
	padding: 7px 0 4px !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-filter-tag {
	flex: 0 1 auto !important;
	max-width: none !important;
	font-size: 12px !important;
}

#ajax-content-wrap .container.main-content .te-classic-shell .te-card-bottom {
	grid-row: 6 !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding-top: 6px !important;
}

@media (max-width: 560px) {
	#ajax-content-wrap .container.main-content .te-classic-shell .te-classic-hero .te-hero-filter-bar {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
	#ajax-content-wrap .container.main-content .te-classic-shell .te-hero-filter-bar .te-filter-control:last-of-type {
		grid-column: 1 / -1 !important;
	}
}
