/* ---------- Eigene Werte ---------- */

.unyer-contact-firmen {
	--unyer-contact-spalte: 15rem;
}

.unyer-contact-firma {
	--unyer-contact-symbol: 0.9em;
	--unyer-contact-extern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpath d='M15 3h6v6'/%3E%3Cpath d='M10 14 21 3'/%3E%3C/svg%3E");
}

.unyer-contact-hinweis {
	--unyer-contact-marke: 0.1875rem;
}

/* ---------- Sektionen ---------- */

.unyer-contact-band {
	padding-inline: var(--unyer-kante);
}

/* ---------- Kartenraster ---------- */

.wp-block-group.unyer-contact-firmen {
	display: grid;
	gap: var(--wp--preset--spacing--50);
	grid-template-columns: repeat(auto-fit, minmax(min(var(--unyer-contact-spalte), 100%), 1fr));
}

.wp-block-group.unyer-contact-firmen > * {
	margin-block: 0;
}

.unyer-contact-notiz {
	color: var(--wp--preset--color--contrast-soft);
}

/* ---------- Karte ---------- */

.wp-block-group.unyer-contact-firma {
	background-color: var(--wp--preset--color--base);
	border-radius: var(--wp--custom--radius--small);
	box-shadow: var(--wp--preset--shadow--soft);
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--50);
}

.wp-block-group.unyer-contact-firma > * {
	margin-block: 0;
}

.unyer-contact-firma .unyer-contact-firma__name {
	color: var(--wp--preset--color--secondary);
	text-wrap: balance;
}

.unyer-contact-firma .unyer-contact-firma__land {
	color: var(--wp--preset--color--primary-text);
	font-family: var(--wp--preset--font-family--accent);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.wp-block-group.unyer-contact-firma .unyer-contact-firma__link {
	margin-block-start: auto;
	overflow-wrap: anywhere;
}

.unyer-contact-firma .unyer-contact-firma__link a {
	align-items: center;
	display: inline-flex;
	gap: 0.5em;
	min-block-size: var(--wp--custom--target--min);
	text-underline-offset: 0.25em;
}

.unyer-contact-firma .unyer-contact-firma__link a::after {
	background-color: currentcolor;
	block-size: var(--unyer-contact-symbol);
	content: "";
	flex: none;
	inline-size: var(--unyer-contact-symbol);
	mask-image: var(--unyer-contact-extern);
	mask-repeat: no-repeat;
	mask-size: contain;
	transition: transform var(--wp--custom--duration--fast) var(--wp--custom--easing--base);
}

/* ---------- Rechtsform ---------- */

.unyer-contact-hinweis {
	border-inline-start: var(--unyer-contact-marke) solid var(--wp--preset--color--primary);
	padding-inline-start: var(--wp--preset--spacing--50);
}

.unyer-contact-hinweis p {
	color: var(--wp--preset--color--contrast-soft);
}

/* ---------- Zustände ---------- */

.unyer-contact-firma .unyer-contact-firma__link a:is(:hover, :focus-visible)::after {
	transform: translate(0.125rem, -0.125rem);
}

.unyer-contact-firma .unyer-contact-firma__link a:focus-visible {
	outline: 0.1875rem solid var(--wp--preset--color--primary-text);
	outline-offset: 0.25rem;
}

/* ---------- Bewegung ---------- */

@media (prefers-reduced-motion: reduce) {
	.unyer-contact-firma .unyer-contact-firma__link a::after {
		transition: none;
	}
}
