/* KW Biohof – geteilter plastischer Karten-CTA (aus der Galerie-Fußleiste).
   Glanz-Verlauf + Innen-Highlight oben und Tiefe unten; beim Hover wechselt nur
   die Flächenfarbe (Verläufe würden sonst springen). Fläche aus
   --biohof-card-cta-color (jedes Widget reicht sein Token rein). Kein !important.

   Layout bleibt unter .biohof-card-cta (0,1,0) – so gewinnen die Widget-eigenen
   Overrides (Breite/Radius/Andocken). Plastik + Knopffarbe stehen unter
   .biohof a.biohof-card-cta (0,2,1): das schlägt Elementors `.elementor a`
   (setzt box-shadow) und reset.css `a` (setzt Hintergrund) – ohne !important. */

.biohof-card-cta {
	--biohof-card-cta-color: var(--biohof-color-primary);

	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--biohof-space-2xs);
	min-block-size: 48px;
	padding: 0.85rem 1.25rem;
	font-family: var(--biohof-font-body);
	font-weight: var(--biohof-weight-semibold);
	text-decoration: none;
	transition:
		background-color var(--biohof-duration) var(--biohof-ease),
		box-shadow var(--biohof-duration) var(--biohof-ease),
		transform var(--biohof-duration) var(--biohof-ease);
}

.biohof a.biohof-card-cta {
	color: var(--biohof-color-on-primary);
	background-color: var(--biohof-card-cta-color);
	background-image: linear-gradient(
		to bottom,
		color-mix(in srgb, white 16%, transparent),
		transparent 55%
	);
	box-shadow:
		inset 0 1px 0 color-mix(in srgb, white 30%, transparent),
		inset 0 -2px 0 color-mix(in srgb, var(--biohof-card-cta-color) 55%, black);
}

/* Link-Farbe in allen Zuständen halten (:focus PFLICHT, :visited mit dabei). */
.biohof a.biohof-card-cta:visited,
.biohof a.biohof-card-cta:is(:hover, :focus, :focus-visible, :active) {
	color: var(--biohof-color-on-primary);
}

@media (hover: hover) {
	.biohof a.biohof-card-cta:hover {
		background-color: color-mix(in srgb, var(--biohof-card-cta-color) 80%, black);
		box-shadow:
			inset 0 1px 0 color-mix(in srgb, white 40%, transparent),
			inset 0 -2px 0 color-mix(in srgb, var(--biohof-card-cta-color) 50%, black);
	}
}

.biohof-card-cta:focus-visible {
	outline: 3px solid var(--biohof-color-focus);
	outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
	.biohof-card-cta {
		transition: none;
	}
}
