.wp-site-blocks > .fyh-linkhub-page {
	margin-block-start: 0;
}

.fyh-linkhub-page {
	position: relative;
	display: grid;
	isolation: isolate;
	place-items: center;
	overflow: hidden;
}

.fyh-linkhub-page__content {
	width: 100%;
}

.fyh-linkhub {
	--fyh-linkhub-muted: var(--wp--preset--color--muted);
	--fyh-linkhub-accent: var(--wp--preset--color--ink);
	display: grid;
	width: min(100%, 76rem);
	min-width: 0;
	grid-template-columns: minmax(0, .94fr) minmax(24rem, 1.06fr);
	margin-inline: auto;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--base) 18%, transparent);
	border-radius: var(--wp--custom--radius--lg);
	background: var(--wp--preset--color--base);
	box-shadow: 0 2rem 5rem -3.25rem color-mix(in srgb, var(--wp--preset--color--ink) 72%, transparent);
	color: var(--wp--preset--color--ink);
}

.fyh-linkhub__media {
	position: relative;
	min-width: 0;
	min-height: 100%;
	overflow: hidden;
	background: var(--wp--preset--color--ink);
}

.fyh-linkhub__media::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, color-mix(in srgb, var(--wp--preset--color--ink) 14%, transparent) 0%, color-mix(in srgb, var(--wp--preset--color--ink) 88%, transparent) 100%);
	content: '';
}

.fyh-linkhub__image {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.fyh-linkhub__media-copy {
	position: absolute;
	right: var(--wp--preset--spacing--40);
	bottom: var(--wp--preset--spacing--40);
	left: var(--wp--preset--spacing--40);
	z-index: 1;
	display: flex;
	min-width: 0;
	flex-direction: column;
	color: var(--wp--preset--color--on-dark);
}

.fyh-linkhub__media-copy span {
	font-size: .72rem;
	font-weight: 650;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.fyh-linkhub__media-copy strong {
	margin-top: .35rem;
	font-size: clamp(1.45rem, 2.2vw, 2rem);
	line-height: 1.12;
}

.fyh-linkhub__panel {
	min-width: 0;
	padding: clamp(1.5rem, 3vw, 2.5rem);
	background: var(--wp--preset--color--base);
}

.fyh-linkhub__back {
	display: inline-flex;
	min-height: 2.75rem;
	align-items: center;
	gap: .5rem;
	margin: 0 0 var(--wp--preset--spacing--30);
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: var(--wp--preset--color--ink);
	font-size: .8rem;
	font-weight: 650;
	line-height: 1;
	text-decoration: none;
	transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

.fyh-linkhub__back svg {
	display: block;
	width: 1rem;
	height: 1rem;
}

.fyh-linkhub__back:focus-visible {
	outline: 3px solid var(--wp--preset--color--navy);
	outline-offset: 3px;
}

.fyh-linkhub__brand {
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: flex-start;
}

.fyh-linkhub__logo {
	position: absolute;
	top: var(--wp--preset--spacing--40);
	left: var(--wp--preset--spacing--40);
	z-index: 1;
	width: min(11rem, 48%);
	color: var(--wp--preset--color--on-dark);
}

.fyh-linkhub__logo-image {
	display: block;
	width: 100%;
	height: auto;
	filter: brightness(0) invert(1);
}

.fyh-linkhub__logo-link {
	display: block;
	border-radius: .25rem;
	color: inherit;
	text-decoration: none;
}

.fyh-linkhub__logo-link:focus-visible {
	outline: 3px solid var(--wp--preset--color--on-dark);
	outline-offset: .35rem;
}

.fyh-linkhub__eyebrow {
	--sgui-rubric-margin: var(--wp--preset--spacing--20);
	--sgui-rubric-color: var(--fyh-linkhub-accent);
}

.fyh-linkhub .fyh-linkhub__title {
	margin: 0;
	color: var(--wp--preset--color--ink);
	font-size: clamp(2rem, 3vw, 2.65rem);
	line-height: 1.06;
	letter-spacing: -.035em;
}

.fyh-linkhub__intro {
	max-width: 38ch;
	margin: var(--wp--preset--spacing--20) 0 0;
	color: var(--fyh-linkhub-muted);
	font-size: .94rem;
	line-height: 1.55;
}

.fyh-linkhub__links {
	display: grid;
	gap: .625rem;
	margin-top: var(--wp--preset--spacing--30);
}

.fyh-linkhub__link {
	display: grid;
	min-width: 0;
	min-height: 4rem;
	grid-template-columns: 2.5rem minmax(0, 1fr) 1rem;
	gap: .875rem;
	align-items: center;
	padding: .625rem .875rem;
	border: 1px solid var(--wp--preset--color--hairline);
	border-radius: .875rem;
	background: var(--wp--preset--color--base);
	box-shadow: none;
	color: var(--wp--preset--color--ink);
	text-align: left;
	text-decoration: none;
	transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

/* Die Zeile nutzt die shadcn-Outline-Flaeche (Rand, Rundung, Hover), aber ihr eigenes
   Raster: Icon | Text | Pfeil. Der Button-Vertrag setzt Flex + Zentrierung mit
   !important und muss hier gezielt zurueckgenommen werden. */
.fyh-linkhub__link.sgui-outline-button {
	display: grid !important;
	justify-content: stretch !important;
	text-align: left !important;
	white-space: normal !important;
}

.fyh-linkhub__link:focus {
	outline: 0;
}

.fyh-linkhub__link:focus-visible {
	outline: 3px solid var(--wp--preset--color--navy);
	outline-offset: 3px;
}

.fyh-linkhub__icon {
	display: grid;
	width: 2.5rem;
	height: 2.5rem;
	place-items: center;
	border-radius: .625rem;
	background: color-mix(in srgb, var(--wp--preset--color--ink) 8%, var(--wp--preset--color--base));
	color: var(--wp--preset--color--ink);
	box-shadow: none;
}

.fyh-linkhub__icon svg {
	display: block;
	width: 1.15rem;
	height: 1.15rem;
}

.fyh-linkhub__copy {
	display: flex;
	min-width: 0;
	flex-direction: column;
	line-height: 1.3;
}

.fyh-linkhub__copy strong,
.fyh-linkhub__copy span {
	overflow-wrap: anywhere;
}

.fyh-linkhub__copy strong {
	font-size: .92rem;
	font-weight: 650;
}

.fyh-linkhub__copy span {
	margin-top: .1rem;
	color: var(--fyh-linkhub-muted);
	font-size: .79rem;
	font-weight: 450;
}

.fyh-linkhub__arrow {
	display: block;
	width: 1.2rem;
	height: 1.2rem;
	color: color-mix(in srgb, var(--fyh-linkhub-accent) 52%, transparent);
	transition: transform 160ms ease;
}

.fyh-linkhub__footer {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
	justify-content: space-between;
	align-items: center;
	margin-top: var(--wp--preset--spacing--30);
	padding-top: var(--wp--preset--spacing--20);
	border-top: 1px solid var(--wp--preset--color--hairline);
	color: var(--fyh-linkhub-muted);
	font-size: .75rem;
}

.fyh-linkhub__footer nav {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--20);
}

.fyh-linkhub__footer a {
	color: inherit;
	text-underline-offset: .2em;
}

.fyh-linkhub__footer p {
	margin: 0;
}

@media (max-width: 760px) {
	.fyh-linkhub-page {
		place-items: start center;
		overflow: visible;
	}

	.fyh-linkhub {
		grid-template-columns: minmax(0, 1fr);
		border-radius: 1.25rem;
	}

	.fyh-linkhub__media {
		min-height: 11rem;
		aspect-ratio: 16 / 9;
	}

	.fyh-linkhub__image {
		object-position: center 56%;
	}

	.fyh-linkhub__panel {
		padding: 1.5rem;
	}

	.fyh-linkhub__logo {
		top: var(--wp--preset--spacing--30);
		left: var(--wp--preset--spacing--30);
		width: min(10.5rem, 48%);
	}
}

@media (max-width: 430px) {
	.fyh-linkhub__panel {
		padding: 1.25rem;
	}

	.fyh-linkhub__link {
		grid-template-columns: 2.5rem minmax(0, 1fr) .95rem;
		padding-inline: .75rem;
	}

	.fyh-linkhub__footer {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (hover: hover) {
	.fyh-linkhub__back:hover {
		transform: translateX(-2px);
		color: color-mix(in srgb, var(--wp--preset--color--ink) 70%, transparent);
	}

	.fyh-linkhub__link:hover {
		border-color: color-mix(in srgb, var(--wp--preset--color--ink) 24%, transparent);
		background: color-mix(in srgb, var(--wp--preset--color--surface) 62%, var(--wp--preset--color--base));
	}

	.fyh-linkhub__link:hover .fyh-linkhub__arrow {
		transform: translateX(.2rem);
	}
}

@media (prefers-reduced-motion: reduce) {
	.fyh-linkhub__back,
	.fyh-linkhub__link,
	.fyh-linkhub__arrow {
		transition: none;
	}
}
