/*
 * Traydon – Grundgestaltung der Ausgaben dynamischer Blöcke
 * (.tr-nav, .tr-sprachwahl, .tr-brotkrumen, .tr-kurzinfo, .tr-produktfinder, .tr-schnellsuche/.tr-suche, .tr-assistent, .tr-anfrage).
 * Feinschliff liefern die Block-Agenten in assets/css/blocks/.
 */


/* Hauptnavigation – Desktop: eine Zeile ab 80 rem, darunter eigene Zeile unter Logo/Werkzeugen;
   mobil (< 60 em, gleiche Grenze wie core.js): Menü-Schaltfläche öffnet eine Tafel unter dem Kopf. */
.tr-nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.tr-nav > ul,
.tr-nav__liste {
	display: flex;
	flex-wrap: wrap;
	gap: 0 0.25rem;
}

.tr-nav li {
	position: relative;
	margin: 0;
}

.tr-nav__item {
	display: flex;
	align-items: center;
}

.tr-nav a,
.tr-nav button {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	min-height: var(--tr-ziel);
	padding: 0 0.5rem;
	font: inherit;
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--tr-text);
	text-decoration: none;
	background: none;
	border: 0;
	cursor: pointer;
}

.tr-nav__link {
	position: relative;
}

/* Unterstrich wächst beim Zeigen von links (nur transform) */
.tr-nav__link::after {
	content: "";
	position: absolute;
	inset-inline-start: 0.5rem;
	inset-inline-end: 0.5rem;
	bottom: 0.5rem;
	height: 2px;
	background: var(--tr-rot);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform var(--tr-dauer) var(--tr-kurve);
}

.tr-nav__link:hover::after,
.tr-nav__link[aria-current]::after {
	transform: scaleX(1);
}

.tr-nav__link[aria-current]::after {
	background: var(--tr-text);
}

.tr-nav__sub-toggle.tr-nav__sub-toggle {
	min-width: 24px;
	padding: 0 0.375rem 0 0;
	/* Kein negativer Rand: der Schalter darf den Link nicht überlappen (WCAG 2.5.8, axe target-size). */
	margin-inline-start: 0;
}

.tr-nav__sub-toggle:hover {
	color: var(--tr-rot-dunkel);
}

.tr-nav button[aria-expanded]::after {
	content: "";
	width: 0.4rem;
	height: 0.4rem;
	border: solid currentColor;
	border-width: 0 2px 2px 0;
	transform: translateY(-2px) rotate(45deg);
	transition: transform var(--tr-dauer) var(--tr-kurve);
}

.tr-nav button[aria-expanded="true"]::after {
	transform: translateY(2px) rotate(-135deg);
}

.tr-nav li > ul {
	display: none;
	position: absolute;
	top: calc(100% + 0.625rem);
	inset-inline-start: 0;
	z-index: 60;
	min-width: 17rem;
	padding: 0.5rem 0;
	background: var(--tr-weiss);
	border: 1px solid var(--tr-linie);
	border-top: 2px solid var(--tr-text);
	box-shadow: 0 18px 32px -18px rgb(35 31 32 / 0.35);
}

/* Ohne JS per Hover/Fokus erreichbar, mit JS über aria-expanded */
.tr-nav li:hover > ul,
.tr-nav li:focus-within > ul,
.tr-nav [aria-expanded="true"] + ul {
	display: block;
}

.tr-nav li > ul a {
	display: flex;
	width: 100%;
	padding-inline: 1rem;
}

.tr-nav li > ul a:hover {
	background: var(--tr-alt);
	text-decoration: underline;
}

.tr-nav [hidden] {
	display: none !important;
}

/* Menü-Schaltfläche (nur mobil sichtbar, core.js entfernt dort „hidden“) */
.tr-nav .tr-nav__toggle {
	gap: 0.5rem;
	padding-inline: 0.75rem;
	font-size: var(--wp--preset--font-size--klein);
	font-weight: 600;
	border: 1px solid var(--tr-linie-stark);
	border-radius: var(--tr-radius);
}

.tr-nav .tr-nav__toggle::after {
	display: none;
}

.tr-nav__toggle-icon {
	position: relative;
	width: 1.125rem;
	height: 2px;
	background: currentColor;
	box-shadow: 0 -6px 0 currentColor, 0 6px 0 currentColor;
	transition: transform var(--tr-dauer) var(--tr-kurve);
}

.tr-nav__toggle[aria-expanded="true"] .tr-nav__toggle-icon {
	box-shadow: none;
	transform: rotate(45deg);
}

.tr-nav__toggle[aria-expanded="true"] .tr-nav__toggle-icon::after {
	content: "";
	position: absolute;
	inset: 0;
	background: currentColor;
	transform: rotate(90deg);
}

/* Kopf: Reihenfolge und Zeilen */
.tr-kopf__leiste > .tr-nav {
	order: 3;
	flex: 1 1 100%;
}

.tr-kopf__leiste > .tr-kopf__werkzeuge {
	order: 2;
}

@media (min-width: 60.0625em) {
	.tr-kopf__leiste > .tr-nav {
		margin-inline: -0.5rem;
		padding-top: 0.25rem;
		border-top: 1px solid var(--tr-linie);
	}

	.tr-nav > .tr-nav__liste {
		flex-wrap: nowrap;
	}
}

@media (min-width: 80rem) {
	.tr-kopf__leiste.tr-kopf__leiste {
		flex-wrap: nowrap;
	}

	.tr-kopf__leiste > .tr-nav {
		order: 1;
		flex: 1 1 auto;
		margin-inline: 0;
		padding-top: 0;
		border-top: 0;
	}

	.tr-logo {
		margin-inline-end: var(--wp--preset--spacing--30);
	}
}

@media (min-width: 80rem) and (max-width: 89.99rem) {
	.tr-nav a,
	.tr-nav button {
		padding-inline: 0.375rem;
		font-size: 0.875rem;
	}

	.tr-nav__link::after {
		inset-inline-start: 0.375rem;
		inset-inline-end: 0.375rem;
	}
}

/* Mobil mit JS: Logo · Anfrage · Menü in einer Zeile; Suche und Sprache erscheinen bei offenem Menü */
@media (max-width: 60em) {
	.tr-js .tr-kopf__leiste.tr-kopf__leiste {
		flex-wrap: nowrap;
		gap: 0.375rem;
	}

	.tr-js .tr-kopf__leiste > .tr-nav {
		order: 3;
		flex: 0 0 auto;
	}

	.tr-js .tr-kopf__werkzeuge > :is(.tr-schnellsuche, .tr-sprachwahl) {
		display: none;
	}

	.tr-js .tr-kopf__leiste:has(.tr-nav--offen) .tr-kopf__werkzeuge > :is(.tr-schnellsuche, .tr-sprachwahl) {
		display: inline-flex;
	}

	.tr-js .tr-kopf__leiste:has(.tr-nav--offen) .tr-kopf__aktion {
		display: none;
	}

	.tr-js .tr-nav__liste {
		position: absolute;
		top: 100%;
		inset-inline-start: 0;
		inset-inline-end: 0;
		display: block;
		max-height: calc(100dvh - var(--tr-kopf));
		overflow-y: auto;
		padding: 0.5rem var(--tr-rand) var(--wp--preset--spacing--50);
		background: var(--tr-weiss);
		border-top: 1px solid var(--tr-linie);
		box-shadow: 0 24px 32px -24px rgb(35 31 32 / 0.4);
	}

	.tr-js .tr-nav__item {
		flex-wrap: wrap;
		justify-content: space-between;
		border-bottom: 1px solid var(--tr-linie);
	}

	.tr-js .tr-nav__link {
		flex: 1 1 auto;
		min-height: 3rem;
		font-size: var(--wp--preset--font-size--mittel);
		font-weight: 600;
	}

	.tr-js .tr-nav__link::after {
		display: none;
	}

	.tr-js .tr-nav__sub-toggle.tr-nav__sub-toggle {
		min-width: var(--tr-ziel);
		justify-content: center;
		padding: 0;
		margin: 0;
	}

	.tr-js .tr-nav li > ul {
		position: static;
		flex: 1 1 100%;
		min-width: 0;
		padding: 0 0 0.5rem 0.75rem;
		border: 0;
		box-shadow: none;
	}
}

/* Mit JS, vor core.js (defer): Kopf schon kompakt, sonst springt der Hero ~140 px (CLS 0,30 @412 px). */
@media (scripting: enabled) and (max-width: 60em) {
	html:not(.tr-js) .tr-kopf__leiste.tr-kopf__leiste {
		flex-wrap: nowrap;
		gap: 0.375rem;
	}

	html:not(.tr-js) .tr-kopf__leiste > .tr-nav {
		flex: 0 0 auto;
	}

	html:not(.tr-js) .tr-nav__liste,
	html:not(.tr-js) .tr-kopf__werkzeuge > :is(.tr-schnellsuche, .tr-sprachwahl) {
		display: none;
	}

	html:not(.tr-js) .tr-nav .tr-nav__toggle[hidden] {
		display: inline-flex !important; /* Platz freihalten, core.js entfernt „hidden“ */
		visibility: hidden;
	}
}

/* 320 px: Logo · Anfrage · Menü passen sonst nicht in 288 px (Querscrollen). */
@media (max-width: 22.4375em) {
	.tr-logo img {
		width: 100px !important;
	}

	.tr-kopf__aktion .wp-block-button__link,
	.tr-nav .tr-nav__toggle.tr-nav__toggle {
		padding-inline: 0.5rem;
	}

	/* FR/IT/RU: die Wörter für „Anfrage“ und „Menü“ sind länger – sonst 5 px Querscrollen */
	html:is(:lang(fr), :lang(it), :lang(ru)) .tr-kopf__aktion .wp-block-button__link,
	html:is(:lang(fr), :lang(it), :lang(ru)) .tr-nav .tr-nav__toggle.tr-nav__toggle {
		gap: 0.25rem;
		padding-inline: 0.375rem;
	}
}

/* Sprachwahl: Knopf mit Weltkugel + Kürzel der aktuellen Sprache öffnet eine Liste nach unten (core.js); ohne JS direkter Link DE↔EN */
.tr-sprachwahl {
	position: relative;
	display: inline-flex;
}

.tr-sprachwahl [hidden] {
	display: none !important;
}

.tr-sprachwahl__link,
.tr-sprachwahl__knopf {
	display: inline-flex;
	gap: 0.4rem;
	align-items: center;
	justify-content: center;
	min-width: var(--tr-ziel);
	min-height: var(--tr-ziel);
	padding-inline: 0.625rem;
	font: inherit;
	font-size: var(--wp--preset--font-size--klein);
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--tr-text);
	text-decoration: none;
	background: transparent;
	border: 1px solid var(--tr-linie-stark);
	border-radius: var(--tr-radius);
	cursor: pointer;
}

.tr-sprachwahl__link:hover,
.tr-sprachwahl__knopf:hover,
.tr-sprachwahl__knopf[aria-expanded="true"] {
	border-color: var(--tr-text);
	background: var(--tr-alt);
}

.tr-sprachwahl__welt {
	flex: none;
}

.tr-sprachwahl__pfeil {
	width: 0.4rem;
	height: 0.4rem;
	margin-top: -0.2rem;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
}

.tr-sprachwahl__knopf[aria-expanded="true"] .tr-sprachwahl__pfeil {
	margin-top: 0.2rem;
	transform: rotate(-135deg);
}

.tr-sprachwahl__liste {
	position: absolute;
	top: calc(100% + 0.375rem);
	inset-inline-end: 0;
	z-index: 60;
	min-width: 11rem;
	max-height: min(16rem, 60vh);
	margin: 0;
	padding: 0.25rem;
	overflow-y: auto;
	overscroll-behavior: contain;
	list-style: none;
	background: var(--tr-weiss);
	border: 1px solid var(--tr-linie-stark);
	border-radius: var(--tr-radius);
	box-shadow: 0 8px 24px rgb(0 0 0 / 0.12);
}

.tr-sprachwahl__eintrag {
	display: flex;
	gap: 0.625rem;
	align-items: center;
	min-height: var(--tr-ziel);
	padding: 0.25rem 0.75rem;
	color: var(--tr-text);
	text-decoration: none;
	border-inline-start: 3px solid transparent;
	border-radius: 4px;
}

.tr-sprachwahl__eintrag:is(:hover, :focus-visible) {
	background: var(--tr-alt);
}

.tr-sprachwahl__eintrag[aria-current] {
	font-weight: 600;
	border-inline-start-color: var(--tr-rot);
}

.tr-sprachwahl__kurz {
	min-width: 1.75rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: var(--tr-leise);
}

/* Brotkrumen */
.tr-brotkrumen ol {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: var(--wp--preset--font-size--klein);
	color: var(--tr-leise);
}

.tr-brotkrumen li + li::before {
	content: "/";
	margin-inline: 0.5rem;
	color: var(--tr-linie-stark);
}

.tr-brotkrumen a {
	display: inline-block;
	min-height: 24px;
	color: var(--tr-leise);
}

.tr-brotkrumen a:hover {
	color: var(--tr-text);
}

.tr-brotkrumen [aria-current] {
	color: var(--tr-text);
	font-weight: 500;
}

/* Kurzinfo „Auf einen Blick“ als Datenblattzeilen */
.tr-kurzinfo {
	margin-block: var(--wp--preset--spacing--50) 0;
}

.tr-kurzinfo :where(h2, h3) {
	margin: 0 0 var(--wp--preset--spacing--20);
	font-size: var(--wp--preset--font-size--basis);
	font-weight: 600;
	letter-spacing: 0;
}

.tr-kurzinfo :where(dl, ul) {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr));
	gap: 0 var(--wp--preset--spacing--40);
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 2px solid var(--tr-text);
}

.tr-kurzinfo :where(dl > div, li) {
	padding-block: 0.75rem;
	border-bottom: 1px solid var(--tr-linie);
}

.tr-kurzinfo dt,
.tr-kurzinfo__label {
	display: block;
	font-size: var(--wp--preset--font-size--klein);
	font-weight: 500;
	color: var(--tr-leise);
}

.tr-kurzinfo dd,
.tr-kurzinfo__text {
	display: block;
	margin: 0.125rem 0 0;
	font-weight: 600;
}

/* Produktfinder */
.tr-produktfinder {
	display: grid;
	gap: var(--wp--preset--spacing--50);
}

.tr-produktfinder > :where(ul, ol) {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 17rem), 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.tr-produktfinder [role="status"],
.tr-produktfinder output {
	font-size: var(--wp--preset--font-size--klein);
	color: var(--tr-leise);
}

/* Schnellsuche: Auslöser als Symbol-Schaltfläche; Name „Suchen“/„Search“ bleibt für Screenreader,
   sichtbar als Hinweis bei Zeigen und Tastaturfokus. */
.tr-schnellsuche {
	position: relative;
}

.tr-schnellsuche__ausloeser,
.tr-suche button {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: var(--tr-ziel);
	min-width: var(--tr-ziel);
	padding: 0;
	font: inherit;
	font-size: var(--wp--preset--font-size--klein);
	font-weight: 600;
	color: var(--tr-text);
	background: var(--tr-weiss);
	border: 1px solid var(--tr-linie-stark);
	border-radius: var(--tr-radius);
	cursor: pointer;
}

.tr-schnellsuche__ausloeser:hover,
.tr-suche button:hover {
	color: var(--tr-text);
	border-color: var(--tr-text);
	background: var(--tr-alt);
}

.tr-schnellsuche__ausloeser .tr-schnellsuche__beschriftung,
.tr-schnellsuche__ausloeser .tr-schnellsuche__taste {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

.tr-schnellsuche__ausloeser::after {
	content: "Suchen (Taste /)";
	position: absolute;
	top: calc(100% + 0.5rem);
	inset-inline-end: 0;
	z-index: 70;
	padding: 0.375rem 0.625rem;
	font-size: 0.8125rem;
	font-weight: 600;
	white-space: nowrap;
	color: var(--tr-weiss);
	background: var(--tr-text);
	border-radius: var(--tr-radius);
	opacity: 0;
	transform: translateY(-0.25rem);
	pointer-events: none;
	transition: opacity var(--tr-dauer) var(--tr-kurve), transform var(--tr-dauer) var(--tr-kurve);
}

.tr-schnellsuche__ausloeser:lang(en)::after {
	content: "Search (key /)";
}

.tr-schnellsuche__ausloeser[data-ohne-js]::after {
	content: "Suchen";
}

.tr-schnellsuche__ausloeser[data-ohne-js]:lang(en)::after {
	content: "Search";
}

.tr-schnellsuche__ausloeser:lang(fr)::after {
	content: "Rechercher (touche /)";
}

.tr-schnellsuche__ausloeser[data-ohne-js]:lang(fr)::after {
	content: "Rechercher";
}

.tr-schnellsuche__ausloeser:lang(es)::after {
	content: "Buscar (tecla /)";
}

.tr-schnellsuche__ausloeser[data-ohne-js]:lang(es)::after {
	content: "Buscar";
}

.tr-schnellsuche__ausloeser:lang(ar)::after {
	content: "بحث (المفتاح /)";
}

.tr-schnellsuche__ausloeser[data-ohne-js]:lang(ar)::after {
	content: "بحث";
}

.tr-schnellsuche__ausloeser:lang(zh)::after {
	content: "搜索（按 / 键）";
}

.tr-schnellsuche__ausloeser[data-ohne-js]:lang(zh)::after {
	content: "搜索";
}

.tr-schnellsuche__ausloeser:lang(it)::after {
	content: "Cerca (tasto /)";
}

.tr-schnellsuche__ausloeser[data-ohne-js]:lang(it)::after {
	content: "Cerca";
}

.tr-schnellsuche__ausloeser:hover::after,
.tr-schnellsuche__ausloeser:focus-visible::after {
	opacity: 1;
	transform: none;
}

.tr-schnellsuche kbd,
.tr-suche kbd {
	padding: 0 0.3rem;
	font: inherit;
	font-size: 0.75rem;
	color: var(--tr-leise);
	border: 1px solid var(--tr-linie);
	border-radius: var(--tr-radius);
}

dialog.tr-schnellsuche__dialog,
.tr-suche dialog {
	width: min(44rem, calc(100% - 2rem));
	max-height: min(80vh, 40rem);
	margin: 10vh auto auto;
	padding: var(--wp--preset--spacing--40);
	color: var(--tr-text);
	background: var(--tr-weiss);
	border: 0;
	border-top: 4px solid var(--tr-rot);
	border-radius: var(--tr-radius-m);
	box-shadow: 0 24px 48px rgb(35 31 32 / 0.24);
}

.tr-suche dialog::backdrop,
dialog.tr-schnellsuche__dialog::backdrop {
	background: rgb(35 31 32 / 0.6);
}

/* Anfrage-Assistent: drei Einstiege */
.tr-assistent > :where(ul, ol) {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
	gap: var(--wp--preset--spacing--40);
	margin: 0;
	padding: 0;
	list-style: none;
}

:where(.tr-assistent) a:not([class]) {
	display: block;
	height: 100%;
	padding: var(--wp--preset--spacing--40);
	color: var(--tr-text);
	text-decoration: none;
	background: var(--tr-weiss);
	border: 1px solid var(--tr-linie-stark);
	border-top: 2px solid var(--tr-text);
}

:where(.tr-assistent) a:not([class]):hover {
	border-top-color: var(--tr-rot);
}

.tr-assistent a strong {
	display: block;
	font-size: var(--wp--preset--font-size--mittel);
}

/* Anfrageformular (Basis) */
.tr-anfrage {
	display: grid;
	gap: var(--wp--preset--spacing--40);
	max-width: 48rem;
}

.tr-anfrage label {
	display: block;
	margin-bottom: 0.375rem;
}

.tr-anfrage [aria-live],
.tr-anfrage [role="alert"] {
	font-weight: 500;
}

.tr-anfrage [role="alert"] {
	padding: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--fehler);
	border: 2px solid currentColor;
	border-radius: var(--tr-radius);
}

.tr-anfrage abbr[title],
.tr-anfrage .tr-pflicht {
	color: var(--wp--preset--color--fehler);
	text-decoration: none;
}

/* Formulare, Suchformular und Ergebnislisten (aus komponenten.css verschoben, Inhalt unverändert) */
/* ---------- 18. Formulare (Basis) ---------- */
:where(input[type="text"], input[type="email"], input[type="tel"], input[type="search"], input[type="number"], input[type="url"], select, textarea) {
	box-sizing: border-box;
	width: 100%;
	min-height: var(--tr-ziel);
	padding: 0.625rem 0.75rem;
	font: inherit;
	color: var(--tr-text);
	background: var(--tr-weiss);
	border: 1px solid var(--tr-linie-stark);
	border-radius: var(--tr-radius);
}

:where(input, select, textarea):hover {
	border-color: var(--tr-text);
}

textarea {
	min-height: 8rem;
	resize: vertical;
}

label {
	font-weight: 600;
}

fieldset {
	margin: 0 0 var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--40);
	border: 1px solid var(--tr-linie);
	border-radius: var(--tr-radius);
}

legend {
	padding-inline: 0.5rem;
	font-weight: 700;
}

:where(input, select, textarea)[aria-invalid="true"] {
	border-color: var(--wp--preset--color--fehler);
	border-width: 2px;
}

.wp-block-search__label {
	font-weight: 600;
}

.wp-block-search__inside-wrapper {
	gap: 0.5rem;
}

.wp-block-search__input {
	min-height: var(--tr-ziel);
	border: 1px solid var(--tr-linie-stark) !important;
	border-radius: var(--tr-radius);
}

.wp-block-search__button {
	margin-inline-start: 0;
	min-height: var(--tr-ziel);
}

.tr-suchformular {
	margin-block: var(--wp--preset--spacing--50);
}

/* ---------- 19. Listen (Suche, Archiv, 404) ---------- */
.tr-liste .wp-block-post-template {
	list-style: none;
	padding: 0;
	border-top: 2px solid var(--tr-text);
}

.tr-liste .wp-block-post-template > li {
	margin: 0;
	padding-block: var(--wp--preset--spacing--40);
	border-bottom: 1px solid var(--tr-linie);
}

.tr-liste__eintrag > * {
	margin-block: 0 var(--wp--preset--spacing--20);
}

.tr-liste .wp-block-post-title a {
	text-decoration: none;
}

.tr-liste .wp-block-post-title a:hover {
	text-decoration: underline;
}

.tr-liste .wp-block-post-excerpt {
	color: var(--tr-leise);
}

.tr-linkliste {
	list-style: none;
	padding: 0;
	border-top: 2px solid var(--tr-text);
}

.tr-linkliste li {
	border-bottom: 1px solid var(--tr-linie);
}

.tr-linkliste a {
	display: block;
	padding-block: 0.75rem;
	font-weight: 600;
	text-decoration: none;
}

.tr-linkliste a:hover {
	text-decoration: underline;
}


/* 404 und Suche: linksbündig im breiten Raster, eigenes Suchformular (DE/EN) */
:is(.tr-inhalt--404, .tr-inhalt--suche, .tr-inhalt--liste) > *,
.tr-fehlerseite > * {
	margin-inline: 0 !important;
}

.tr-fehlerseite > :is(h1, .tr-einleitung, .tr-suchformular) {
	max-width: 44rem;
}

.tr-fehlerseite h1 {
	margin-block: var(--wp--preset--spacing--40);
}

.tr-fehlerseite__wege {
	margin-block: var(--wp--preset--spacing--60) var(--wp--preset--spacing--30);
	font-size: var(--wp--preset--font-size--mittel);
}

.tr-suchformular--eigen label {
	display: block;
	margin-bottom: 0.375rem;
}

.tr-suchformular__zeile {
	display: flex;
	gap: 0.5rem;
	max-width: 44rem;
}

.tr-suchformular__zeile input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
}

.tr-suchformular__zeile button {
	min-height: var(--tr-ziel);
	cursor: pointer;
}

.tr-linkliste--raster {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
	column-gap: var(--wp--preset--spacing--40);
}

.tr-inhalt--suche .tr-liste {
	max-width: var(--tr-lese);
}

/* FR/ES/IT/RU: längere Menütexte – zwischen Burger-Grenze und 80rem etwas enger, notfalls zweizeilig statt Überlauf (ADR-002) */
@media (min-width: 60.0625em) and (max-width: 79.99rem) {
	html:is(:lang(fr), :lang(es), :lang(it), :lang(ru)) .tr-nav > .tr-nav__liste {
		flex-wrap: wrap;
	}

	html:is(:lang(fr), :lang(es), :lang(it), :lang(ru)) .tr-nav > .tr-nav__liste > .tr-nav__item > .tr-nav__link,
	html:is(:lang(fr), :lang(es), :lang(it), :lang(ru)) .tr-nav > .tr-nav__liste > .tr-nav__item > button {
		padding-inline: 0.375rem;
		font-size: 0.875rem;
	}
}

/* FR/ES/IT/RU ab 80rem: Menü bleibt in eigener Zeile unter Logo und Werkzeugen – in der Kopfzeile verdeckten Suche,
   Sprachwahl und Anfrage-Knopf sonst „Contact“ und „À propos“ (Kalt-Review 14.10.) */
@media (min-width: 80rem) {
	html:is(:lang(fr), :lang(es), :lang(it), :lang(ru)) .tr-kopf__leiste.tr-kopf__leiste {
		flex-wrap: wrap;
	}

	html:is(:lang(fr), :lang(es), :lang(it), :lang(ru)) .tr-kopf__leiste > .tr-nav {
		order: 3;
		flex: 1 1 100%;
		margin-inline: -0.5rem;
		padding-top: 0.25rem;
		border-top: 1px solid var(--tr-linie);
	}
}
