/* KGV Verein – Bildergalerie [kgv_galerie] in Beiträgen und Seiten (wie die des Vereinshauses). Großansicht: KGV Galerie des Themes. */
.kgv-gallery {
	margin-block: var(--wp--preset--spacing--40, 24px);
}

.kgv-gallery__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: clamp(7rem, 14vw, 10rem);
	gap: var(--wp--preset--spacing--20, 8px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.kgv-gallery__image {
	margin: 0;
	padding: 0;
	min-width: 0;
}

.kgv-gallery__image[hidden] {
	display: none;
}

/* erstes Bild groß */
.kgv-gallery__image:first-child {
	grid-column: span 2;
	grid-row: span 2;
}

.kgv-gallery--1 .kgv-gallery__image:first-child {
	grid-column: 1 / -1;
	grid-row: span 3;
}

.kgv-gallery--2 .kgv-gallery__image {
	grid-column: span 2;
	grid-row: span 2;
}

.kgv-gallery--3 .kgv-gallery__image:not(:first-child) {
	grid-column: span 2;
}

.kgv-gallery__image a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 8px; /* ecke-mittel: Bilder im Text */
	background: var(--kgv-moss, var(--wp--preset--color--moos, #E8EFDD));
	box-shadow: 0 1px 2px rgba(22, 54, 31, 0.05); /* schatten-karte */
}

/* Statt des Beitragsbilds: Ecke wie Beitragsbilder (ecke-gross) */
.wp-block-post-featured-image .kgv-gallery {
	margin-block: 0;
}
.wp-block-post-featured-image .kgv-gallery__image a {
	border-radius: 12px;
}

.kgv-gallery__image img {
	display: block;
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	border-radius: 0 !important;
	transition: transform 0.3s ease;
}

.kgv-gallery__image a:hover img {
	transform: scale(1.03);
}

.kgv-gallery__image a:focus-visible {
	outline: 3px solid var(--kgv-earth, var(--wp--preset--color--erde, #A4561E));
	outline-offset: 2px;
}

.kgv-gallery__more {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(22, 54, 31, 0.68); /* wald-tief */
	color: var(--kgv-on-dark, var(--wp--preset--color--weiss, #fff));
	font-family: var(--wp--preset--font-family--heading, "Bitter", Georgia, "Times New Roman", serif);
	font-weight: 650;
	font-size: var(--wp--preset--font-size--large, 1.5rem);
	line-height: 1.2;
}

@media (max-width: 600px) {
	.kgv-gallery__list {
		grid-template-columns: repeat(2, 1fr);
		grid-auto-rows: 8rem;
		gap: var(--wp--preset--spacing--20, 8px);
	}

	.kgv-gallery__image:first-child,
	.kgv-gallery--2 .kgv-gallery__image,
	.kgv-gallery--3 .kgv-gallery__image:not(:first-child) {
		grid-column: span 2;
		grid-row: span 2;
	}

	.kgv-gallery--3 .kgv-gallery__image:not(:first-child),
	.kgv-gallery--4 .kgv-gallery__image:not(:first-child),
	.kgv-gallery--5 .kgv-gallery__image:not(:first-child) {
		grid-column: span 1;
		grid-row: span 1;
	}

	.kgv-gallery--4 .kgv-gallery__image:last-child {
		grid-column: span 2;
	}
}
