/* =========================
   LINK CARDS
   ========================= */

.link-cards {
	width: 100%;

	padding-bottom:
		var(--content-block-padding-y, 4rem);

	box-sizing: border-box;
}


.link-cards__inner {
	width: 100%;
	max-width: var(--stage-maxwidth, 1400px);

	margin-inline: auto;
}


/* =========================
   MODUL-ÜBERSCHRIFT
   ========================= */

.link-cards__headline {
	margin-top: 0;
	margin-bottom: 0.5rem;
}


.link-cards__subheadline {
	margin-bottom: 2rem;

	font-size: 1.1rem;
	line-height: 1.5;
}


.link-cards__headline + .link-cards__grid {
	margin-top: 1.5rem;
}


/* =========================
   GRID
   ========================= */

.link-cards__grid {
	display: grid;

	grid-template-columns:
		repeat(4, minmax(0, 1fr));

	gap: 1rem;

	width: 100%;
}


/* =========================
   KACHEL
   ========================= */

.link-card {
	display: flex;
	flex-direction: column;

	min-width: 0;
	min-height: 260px;

	overflow: hidden;

	background:
		rgb(var(--bg-color-rgb));

	color:
		var(--neutral-color-dark);

	border-radius:
		var(--border-radius);

	box-shadow:
		0 4px 20px
		rgba(
			var(--shadow-color-rgb),
			0.08
		);

	text-decoration: none !important;

	transition:
		transform var(--transition-time),
		box-shadow var(--transition-time);
}


.link-card:hover,
.link-card:focus-visible {
	color:
		var(--neutral-color-dark);

	text-decoration: none !important;

	transform:
		translateY(-4px);

	box-shadow:
		0 8px 26px
		rgba(
			var(--shadow-color-rgb),
			0.16
		);
}


/* =========================
   BILD / ICON
   ========================= */

.link-card__image-wrapper {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 100%;
	height: 115px;

	padding:
		1rem
		1rem
		0.5rem;

	box-sizing: border-box;

	overflow: visible;
}


.link-card__image {
	display: block;

	width: auto;
	height: auto;

	max-width: 95px;
	max-height: 85px;

	object-fit: contain;

	transition:
		transform var(--transition-time);
}


.link-card:hover .link-card__image,
.link-card:focus-visible .link-card__image {
	transform:
		scale(1.055);
}


/* =========================
   INHALT
   ========================= */

.link-card__content {
	display: flex;
	flex-direction: column;
	align-items: center;

	flex: 1 1 auto;

	width: 100%;

	padding:
		0.8rem
		1.25rem
		1.25rem;

	box-sizing: border-box;

	text-align: center;
}


/* =========================
   KACHEL-ÜBERSCHRIFT
   ========================= */

.link-card__headline {
	margin:
		0
		0
		0.6rem
		0 !important;

	color:
		var(--h2-color);

	font-size: 1.05rem;
	line-height: 1.25;
}


/* =========================
   TEASERTEXT
   ========================= */

.link-card__teaser {
	display: -webkit-box;

	margin:
		0
		0
		1rem
		0 !important;

	overflow: hidden;

	color:
		var(--neutral-color-dark);

	font-size: 0.88rem;
	line-height: 1.45;

	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}


/* =========================
   CTA
   ========================= */

.link-card__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	align-self: center;

	margin-top: auto;

	padding:
		0.5rem
		0.85rem;

	background:
		var(--logo-color-1);

	color:
		var(--font-color-light);

	border-radius:
		var(--border-radius-small);

	box-shadow:
		0 3px 12px
		rgba(
			var(--shadow-color-rgb),
			0.10
		);

	font-size: 0.82rem;
	line-height: 1;

	transition:
		background-color var(--transition-time),
		transform var(--transition-time),
		box-shadow var(--transition-time);
}


.link-card:hover .link-card__cta,
.link-card:focus-visible .link-card__cta {
	background:
		var(--logo-color-1-dark);

	transform:
		translateY(-2px);

	box-shadow:
		0 5px 16px
		rgba(
			var(--shadow-color-rgb),
			0.16
		);
}


/* =========================
   TASTATUR-FOKUS
   ========================= */

.link-card:focus-visible {
	outline:
		3px solid
		var(--logo-color-1-light);

	outline-offset: 3px;
}


/* =========================
   TABLET
   ========================= */

@media (max-width: 1000px) {

	.link-cards__grid {
		grid-template-columns:
			repeat(2, minmax(0, 1fr));
	}

}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 600px) {

	.link-cards__grid {
		grid-template-columns: 1fr;
	}


	.link-card {
		min-height: 230px;
	}


	.link-card__image-wrapper {
		height: 100px;
	}


	.link-card__image {
		max-width: 85px;
		max-height: 75px;
	}


	.link-card__content {
		padding:
			0.8rem
			1rem
			1rem;
	}

}