/* D19: Core-Bilder und Rich Text, identisch in Website und Editor-Canvas. */
body .wp-block-group.nebi-provider-hero {
	margin-block: 0;
	padding: 0;
	background: var(--surface-base);
	color: var(--text-primary);
}

body .nebi-provider-hero :where(figure, p, h1, .wp-block-group, .wp-block-buttons) {
	margin: 0;
}

body .nebi-provider-hero .nebi-provider-hero__cover {
	aspect-ratio: 8 / 3;
	overflow: hidden;
}

body .nebi-provider-hero__cover img {

	/* Core verwendet im Editor height:auto: das Bild braucht dort selbst
	   dasselbe Verhältnis wie sein Rahmen. */
	aspect-ratio: 8 / 3;
	inline-size: 100%;
	block-size: 100%;
	object-fit: cover;
}

body .nebi-provider-hero .nebi-provider-hero__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 282px;
	gap: var(--wp--preset--spacing--80);
	max-inline-size: 1440px;
	margin-inline: auto;
	padding: var(--wp--preset--spacing--80) var(--wp--preset--spacing--80) 60px;
}

body .nebi-provider-hero .nebi-provider-hero__logo {
	grid-column: 2;
	grid-row: 1;
	aspect-ratio: var(--ratio-square);
	inline-size: 100%;
	align-self: start;
}

body .nebi-provider-hero__logo img {
	aspect-ratio: var(--ratio-square);
	inline-size: 100%;
	block-size: 100%;
	object-fit: contain;
}

body .nebi-provider-hero .nebi-provider-hero__content,
body .nebi-provider-hero .nebi-provider-hero__copy {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--60);
	min-inline-size: 0;
	overflow-wrap: anywhere;
}

body .nebi-provider-hero .nebi-provider-hero__content {
	grid-column: 1;
	grid-row: 1;
}

body .nebi-provider-hero .nebi-provider-hero__copy {
	gap: var(--wp--preset--spacing--30);
}

body .nebi-provider-hero__eyebrow {
	color: var(--wp--preset--color--brand-strong);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 23px;
	font-weight: 600;
	line-height: 32px;
	text-transform: uppercase;
}

body .nebi-provider-hero .nebi-provider-hero__title {

	/* Der globale XXL-Token ist fluid; Figma verlangt hier exakt 55/66. */
	font-size: 55px;
	font-weight: 300;
	line-height: 1.2;
	text-wrap: wrap;
}

body .nebi-provider-hero__text,
body .nebi-provider-hero__copy > p:not([class*="nebi-"]):not([class*="u-"]) {
	font-size: 18px;
	line-height: 24px;
}

body .nebi-provider-hero__action .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	inline-size: max-content; /* Breite = Inhalt statt Figmas 245/265px für „Website besuchen“ (08.10.2026) */
	max-inline-size: 100%;
	min-block-size: 56px;
	padding: 15px 20px;
	border: 1px solid var(--border-strong);
	border-radius: 0;
	background: var(--fill-accent);
	color: var(--text-primary);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 18px;
	font-weight: 600;
	line-height: 24px;
	text-align: start;
	letter-spacing: -0.12px;
	text-decoration: none;
}

body .nebi-provider-hero__action .wp-block-button__link::after {
	content: "";
	flex: 0 0 20px;
	inline-size: 20px;
	block-size: 20px;
	background: url(../../images/nebi-arrow-right.svg) center / contain no-repeat;
}

body .nebi-provider-hero__action a[href]:hover {
	background: var(--button-hover-fill);
}

body .nebi-provider-hero__action a:focus-visible {
	outline: 3px solid var(--focus-ring);
	outline-offset: 3px;
}

body .nebi-provider-hero__action a:not([href]) {
	cursor: default;
	pointer-events: none;
}

@media (width < 1024px) {

	body .nebi-provider-hero .nebi-provider-hero__layout {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--wp--preset--spacing--60);
		padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--40);
	}

	body .nebi-provider-hero .nebi-provider-hero__logo {
		grid-column: 1;
		inline-size: 175px;
	}

	body .nebi-provider-hero .nebi-provider-hero__content {
		grid-row: 2;
		gap: var(--wp--preset--spacing--40);
	}

	body .nebi-provider-hero .nebi-provider-hero__copy {
		gap: var(--wp--preset--spacing--20);
	}


	body .nebi-provider-hero .nebi-provider-hero__title {
		font-size: 27px;
		line-height: 32px;
	}

	body .nebi-provider-hero__text,
	body .nebi-provider-hero__copy > p:not([class*="nebi-"]):not([class*="u-"]) {
		font-size: var(--wp--preset--font-size--md);
		line-height: 22px;
	}

	body .nebi-provider-hero__action .wp-block-button__link {
		letter-spacing: 0;
	}
}

@media (width < 600px) {
	/* Dachzeile wie in allen Abschnitten erst unter `medium` kleiner (13.10.2026: bei 790 px stand
	   die Hero-Dachzeile 18 px neben der 23-px-Dachzeile des nächsten Abschnitts). */
	body .nebi-provider-hero__eyebrow {
		font-size: 18px;
		line-height: 24px;
	}


	body .nebi-provider-hero .nebi-provider-hero__layout {
		padding-inline: var(--wp--preset--spacing--20);
	}
}
