.teaser + .teaser {
	margin-block-start: 4rem;
}
.teaser {
	--item-w: min(100%,24rem);
	--gap:2rem;
}
.teaser-grid {
	display: grid;
	gap: var(--gap,1rem);
	grid-template-columns: repeat(auto-fill,minmax(var(--item-w),1fr))
}
.teaser-item {
	border: 1px solid var(--color-grey-lightest);
	display: flex;
	flex-flow: column;
	color: var(--text-color);
	background-color: var(--bg-color,transparent);
}
.teaser-item:hover,
.teaser-item:focus,
.teaser-item:focus-within {
	border-color: var(--color-primary);
}
.teaser-item:target {
	box-shadow: 0 0 1rem var(--color-grey);
}
.teaser-item:target .header {
	--bg-color: var(--color-red);
	--text-color: var(--color-white);
}
.teaser-item .header {
	--text-color: var(--header-color,var(--text-color));
	--bg-color: var(--bg-color);
	padding: 1rem;
	color: var(--text-color);
	background-color: var(--bg-color,transparent);
}
.teaser-item .header .heading {
	color: inherit;
}
.teaser-item .date {
	margin: 0; padding: 0;
	color: inherit;
	font-family: var(--font-variant);
	font-size: var(--font-size-large);
	font-weight: normal;
}
.teaser-item .heading {
	margin: 0; padding: 0;
}

.teaser-item .content {
	padding: 1rem;
	flex-grow: 1;
}
.teaser-item .content:has(>img) {
	padding-block-start: 0;
}

.teaser-item .footer {
	--text-color: var(--color-grey-darkest);
	--color-active: var(--color-black);
	--bg-color: var(--color-secondary);
	padding: 1rem;
	padding-inline-end: 2rem;
	margin-block-start: 1rem;
}
.teaser-item  .link--more {
	margin: 0; padding: 0;
	font-family: var(--font-variant);
	font-weight: normal;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
.teaser-item .link--more a {
	display: inline-block;
	color: var(--text-color);
	background-color: var(--bg-color);
	padding: 0.5rem 0.7rem;
	text-decoration: none;
}
.teaser-item .link--more a:hover,
.teaser-item .link--more a:focus,
.teaser-item .link--more a:active {
	color: var(--color-active);
	text-decoration: underline;
}

/* test event teaser styles */
.teaser-item.event,
.teaser-item:has(>.image) {
	position: relative;
}

.teaser-item.event .content p,
.teaser-item:has(>.image) .content p {
	margin: 0;
}

.teaser-item.event .header,
.teaser-item:has(>.image) .header {
	--text-color: var(--color-white);
	position: absolute;
	backdrop-filter: blur(2px);
}
.teaser-item.event .header .heading,
.teaser-item:has(>.image) .header .heading {
	color: var(--color-secondary);
	backdrop-filter: blur(1);
}
.teaser-item.event .teaser_image,
.teaser-item:has(>.image) .teaser_image {
	display: block;
	width: 100%;
	aspect-ratio: 16/9;
	object-fit: cover;
}
.teaser-item.event .image,
.teaser-item:has(>.image) .image {
	position: relative;
}
.teaser-item.event .image::after,
.teaser-item:has(>.image) .image::after {
	content: '';
	background-image: linear-gradient(to bottom, rgba(0,0,0,0.85), rgba(0,0,0,0) );
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 25%;
	width: 100%;
	display: block;
}
.teaser-item.event .link--more a::after,
.teaser-item:has(>.image) .link--more a::after {
	position: absolute;
	content: '';
	left: 0; right: 0; top: 0; bottom: 0;
}
