/**
 * Sektion: Werte – Musterpanel mit gerissener Kante und drei Karten.
 * Mobile: Panel entfällt, jede Karte trägt das Muster selbst.
 */
.values {
	--pattern-size: 20rem;

	margin-inline: var(--gutter);
	min-block-size: clamp(34rem, 38vw, 48rem);
	padding: clamp(5rem, 8vw, 8rem) var(--gutter);
}

.values__title {
	margin-block-end: clamp(3rem, 5.8vw, 7.25rem);
	text-align: center;
}

.values__grid {
	display: grid;
	gap: var(--grid-gap-sm);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0;
	padding: 0;
}

.values__card {
	align-items: center;
	background: var(--theme-bg);
	display: flex;
	gap: var(--space-8);
	justify-content: center;
	min-block-size: 10.625rem;
	padding: var(--space-3) var(--space-6);
}

.values__icon {
	block-size: 6rem;
	flex: 0 0 6rem;
	inline-size: 6rem;
	object-fit: contain;
	transition: transform var(--duration-base) var(--ease-out);
}

@media (hover: hover) {
	.values__card:hover .values__icon {
		transform: rotate(-6deg) scale(1.06);
	}
}

.values__text {
	font-size: var(--font-size-xl);
	line-height: 1.2;
}

@media (max-width: 64em) {
	.values__card {
		flex-direction: column;
		gap: var(--space-4);
		padding: var(--space-6);
		text-align: center;
	}
}

@media (max-width: 48.75em) {
	.values {
		margin-inline: var(--gutter);
		min-block-size: 0;
		padding: 0;
	}

	.values::before {
		display: none;
	}

	.values__title {
		margin-block-end: var(--space-9);
	}

	.values__grid {
		gap: var(--space-4);
		grid-template-columns: 1fr;
	}

	.values__card {
		--pattern-size: 12rem;

		background: transparent;
		flex-direction: row;
		isolation: isolate;
		justify-content: flex-start;
		min-block-size: 7rem;
		padding: var(--space-5) var(--space-6);
		position: relative;
		text-align: start;
	}

	.values__card::before {
		background-image: var(--pattern-image);
		background-repeat: repeat;
		background-size: var(--pattern-size) auto;
		content: "";
		filter: var(--pattern-filter, none);
		inset: 0;
		-webkit-mask: var(--mask-paper-panel) center / 100% 100% no-repeat;
		mask: var(--mask-paper-panel) center / 100% 100% no-repeat;
		position: absolute;
		z-index: -1;
	}

	.values__icon {
		block-size: 4.5rem;
		flex-basis: 4.5rem;
		inline-size: 4.5rem;
	}

	.values__text {
		font-size: var(--font-size-md);
	}
}
