/* Layout allgemein */
.content-area {
	margin: 1rem auto !important;
	padding: 0 !important;
}

.site-main {
	margin: 2rem auto !important;
}

.site-content {
    background-image: url("img/bg-sky.jpg");
    background-size: contain; 
    background-repeat: no-repeat; 
    background-position: top center; 
}

#main > article:first-child {
	background-color: rgba(255,255,255,0.8);
	border-radius: 2rem;
}

/* Karten / Archivdarstellung */
.archive-list,
.termine-list {
	display: grid;
	gap: 1.5rem;
}

.universal-card {
	background: var(--ast-global-color-5) !important;
	border: var(--ast-global-color-7) !important;
	border-radius: 0.5rem !important;
	padding: 0.5rem !important;
	transition: all 0.2s ease;
}

.universal-card:hover {
	box-shadow: 0 2px 8px var(--ast-global-color-7);
}

/* Kartenlayout: Thumbnail links, Text rechts */
.universal-card-link {
	display: flex;
	align-items: flex-start;
	gap: 2rem;
	text-decoration: none !important;
}

.universal-thumb {
	max-width: 300px;
}

.universal-thumb img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 0.3rem;
	object-fit: cover;
}

.universal-content {
	flex: 1;
	padding: 0;
}

.universal-kurztext,
.data-line {
	color: var(--ast-global-color-2);
	font-size: 0.9rem;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem !important;
}

/* Kategorie "goood" */
.universal-card.category-goood {
	background-color: rgb(222 245 243);
	position: relative;
}

.universal-card.category-goood::after {
	content: "goood";
	position: absolute;
	top: -0.9rem;
	right: 1rem;
	background: var(--ast-global-color-1);
	color: #fff;
	font-size: 0.8rem;
	font-weight: 600;
	padding: 4px 8px;
	border-radius: 999px;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
	text-transform: uppercase;
	pointer-events: none;
}

/* Termin-Filter */
.termin-page-header {
	display: flex;
	flex-direction: column;
	align-items: start;
	gap: 1.5rem;
	margin-bottom: 2rem;
}

.termin-page-header.oben {
	align-items: end;
	margin-top: -3.5rem;
}


.termin-category-filter {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .75rem;
}

.termin-category-filter input[type="checkbox"] {
	display: none;
}

.termin-category-filter label {
	display: inline-flex;
	align-items: center;
	padding: .3rem;
	border: 1px solid #ccc;
	border-radius: 30px;
	background: #fff;
	color: #333;
	font-size: .9rem;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.25s ease;
}

.termin-category-filter label:hover {
	background: #f0f0f0;
	border-color: #999;
}

.termin-category-filter input[type="checkbox"]:checked+span {
	background: #0073aa;
	color: #fff;
	border-color: #0073aa;
	border-radius: 30px;
	padding: .3rem .8rem;
}

/* Astra Blockseiten */
.wp-block-page-list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 1.5rem;
	margin-top: 2rem;
}

.wp-block-pages-list__item {
	list-style: none;
}

.wp-block-pages-list__item a {
	border: 1px solid var(--ast-global-color-7);
	border-radius: 0.5rem;
	display: block;
	padding: 2rem;
	text-align: center;
	text-decoration: none !important;
	transition: all 0.2s ease;
}

.wp-block-pages-list__item a:hover {
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.05);
}

.wp-block-separator {
	border-top: 1px solid var(--ast-global-color-5) !important;
}

/* Sonstiges */
.losung-copyright {
	font-size: 0.75rem;
	color: #94abb9;
}


/* Responsive Anpassungen */
@media (max-width: 800px) {

	.content-area {
		margin: 0 !important;
	}

	.termin-page-header.oben {
		align-items: start;
		margin-top: 0 !important;
	}

	.universal-thumb {
		/* display: none; */
	}

	.universal-card-link {
		flex-direction: column;
		/* align-items: center; */
	}
}

@media (max-width: 400px) {
	.ast-builder-grid-row {
		grid-template-columns: 1fr !important;
	}
}