/*
Theme Name: ND Klartext
Theme URI: https://nachrichtendienste.org
Description: Theme für nachrichtendienste.org im Stil „Register“ (15.10.2026): warmes Grau, ein Blau, Serifen-Überschriften, Flächen statt Linien.
Version: 0.2.12
Requires at least: 6.7
Requires PHP: 8.1
Text Domain: nd-klartext
License: GNU General Public License v2 or later
*/

/* ---------- Grundlagen ---------- */
:root{ --nd-wrap:72rem; --nd-text:42rem; }
body{ -webkit-text-size-adjust:100%; }
a:hover{ text-decoration-thickness:.16em; }
a:focus-visible, .wp-element-button:focus-visible{ outline:3px solid var(--wp--preset--color--signal); outline-offset:3px; }
.skip-link:focus{ background:#fff; padding:.5rem; }

/* ---------- Kopf und Fuß ---------- */
.nd-top{ border-bottom:2px solid var(--wp--preset--color--ink); }
.nd-top-innen{ padding-top:1.4rem; padding-bottom:1.4rem; transition:padding .25s ease; }
.nd-logo{ margin:0; font-size:clamp(1.7rem,4vw,2.5rem); font-weight:700; letter-spacing:-.02em; line-height:1.1; transition:font-size .25s ease; }
/* Beim Scrollen wird der Kopf schmaler (Klasse setzt assets/kopf.js) */
.nd-gescrollt .nd-top-innen{ padding-top:.6rem; padding-bottom:.6rem; }
.nd-gescrollt .nd-logo{ font-size:clamp(1.25rem,2.4vw,1.5rem); }
@media (prefers-reduced-motion:reduce){ .nd-top-innen,.nd-logo{ transition:none; } }
/* Kopf bleibt beim Scrollen oben stehen */
/* ohne :has(), damit es auch auf älteren iPhones und in App-Browsern greift (Klaus, 14.10.2026) */
.wp-site-blocks > header.wp-block-template-part,header.wp-block-template-part:has(.nd-top){ position:-webkit-sticky; position:sticky; top:0; z-index:100; background:var(--wp--preset--color--paper); }
.admin-bar .wp-site-blocks > header.wp-block-template-part{ top:32px; }
@media (max-width:782px){ .admin-bar .wp-site-blocks > header.wp-block-template-part{ top:46px; } }
@media (max-width:600px){ .admin-bar .wp-site-blocks > header.wp-block-template-part{ top:0; } }
/* Handy: Logo, Menü und Suche immer in einer Zeile */
@media (max-width:47.99rem){
	/* Kopf auf dem Handy fest oben (sticky griff auf manchen iPhones nicht); Platz darunter = volle Starthöhe (--nd-kopf-start aus kopf.js) */
	.wp-site-blocks > header.wp-block-template-part{ position:fixed; top:0; left:0; right:0; }
	.admin-bar .wp-site-blocks > header.wp-block-template-part{ top:var(--wp-admin--admin-bar--height,0px); }
	.wp-site-blocks{ padding-top:var(--nd-kopf-start,4.3rem); }
	/* beim Scrollen etwas kleiner */
	.nd-gescrollt .nd-top-innen{ padding-top:.5rem; padding-bottom:.5rem; }
	.nd-gescrollt .nd-logo{ font-size:clamp(1.2rem,6vw,1.5rem); }
	.nd-top-innen{ flex-wrap:nowrap !important; gap:.75rem; padding-top:.9rem; padding-bottom:.9rem; }
	.nd-logo{ font-size:clamp(1.35rem,6.7vw,1.8rem); min-width:0; white-space:nowrap; }
	.nd-top-rechts{ flex-shrink:0; gap:.9rem !important; }
}
/* Sprungziele nicht unter dem Kopf verstecken */
html{ scroll-padding-top:6rem; }
/* Mehr Luft zwischen festem Kopf und Inhalt */
main.wp-block-group{ padding-top:clamp(3.5rem,8vw,6rem) !important; }
.nd-logo a{ text-decoration:none; color:var(--wp--preset--color--ink); }
.nd-logo span{ color:var(--wp--preset--color--signal); }
.nd-top .wp-block-navigation a{ text-decoration:none; }
.nd-top .wp-block-navigation a:hover,
.nd-top .wp-block-navigation .current-menu-item > a{ color:var(--wp--preset--color--signal); text-decoration:underline; }
.nd-foot{ border-top:2px solid var(--wp--preset--color--ink); }
.nd-foot a{ color:var(--wp--preset--color--ink); }

/* ---------- Startseite ---------- */
.nd-hero h1{ max-width:14ch; }
.nd-hero h1 em{ font-style:normal; color:var(--wp--preset--color--signal); }
.nd-section{ border-top:1px solid var(--wp--preset--color--ink); }
.nd-num{ font-family:var(--wp--preset--font-family--mono); color:var(--wp--preset--color--signal); font-size:.95rem; margin:0; }
.nd-more{ font-weight:700; }

/* Grundlagen-Liste */
.nd-toc{ list-style:none; margin:0; padding:0; border-top:1px solid var(--wp--preset--color--line); }
.nd-toc li{ border-bottom:1px solid var(--wp--preset--color--line); }
.nd-toc a{ display:grid; grid-template-columns:minmax(0,18rem) 1fr; gap:.2rem 2rem; padding:1rem 0; text-decoration:none; color:var(--wp--preset--color--ink); }
.nd-toc a:hover strong{ color:var(--wp--preset--color--signal); text-decoration:underline; }
.nd-toc strong{ font-size:1.25rem; }
.nd-toc span{ color:var(--wp--preset--color--muted); }

/* Dienste-Tabelle */
.nd-filter{ display:flex; flex-wrap:wrap; gap:.5rem; margin:0 0 1.5rem; padding:0; list-style:none; }
.nd-filter a{ display:inline-block; padding:.25rem .8rem; border:1px solid var(--wp--preset--color--ink); color:var(--wp--preset--color--ink); text-decoration:none; font-size:.95rem; border-radius:999px; }
.nd-filter a:hover{ background:var(--wp--preset--color--ink); color:#fff; }
table.nd-dienste{ width:100%; border-collapse:collapse; font-size:1.05rem; }
.nd-dienste caption{ text-align:left; font-size:.95rem; color:var(--wp--preset--color--muted); padding-bottom:.6rem; }
.nd-dienste th,.nd-dienste td{ text-align:left; vertical-align:top; padding:.7rem .9rem .7rem 0; border-bottom:1px solid var(--wp--preset--color--line); }
.nd-dienste thead th{ font-size:.82rem; text-transform:uppercase; letter-spacing:.08em; color:var(--wp--preset--color--muted); border-bottom:2px solid var(--wp--preset--color--ink); }
.nd-dienste tbody th.region{ font-size:1.35rem; padding-top:2rem; border-bottom:2px solid var(--wp--preset--color--ink); }
.nd-dienste td.k a{ font-family:var(--wp--preset--font-family--mono); font-weight:700; }
.nd-dienste td.land{ color:var(--wp--preset--color--muted); white-space:nowrap; }
.nd-leer{ color:var(--wp--preset--color--muted); }

/* Glossar */
.nd-gloss{ display:block; margin:0; }
.nd-gloss div{ border-top:1px solid var(--wp--preset--color--line); padding:1rem 0; }
.nd-gloss dt{ font-family:var(--wp--preset--font-family--mono); font-weight:700; font-size:1.1rem; }
.nd-gloss dd{ margin:.3rem 0 0; }

/* ---------- Bücher / Werbelinks ---------- */
.nd-ad-note{ font-size:.95rem; color:var(--wp--preset--color--muted); }
.nd-tag{ font-size:.75rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; border:1px solid var(--wp--preset--color--ink); color:var(--wp--preset--color--ink); padding:.1rem .45rem; border-radius:2px; margin-right:.5rem; }
.nd-buch{ border-bottom:1px solid var(--wp--preset--color--line); padding:1rem 0; }
.nd-buch .wp-block-image img{ width:3.5rem; height:auto; }
.nd-buch h3{ font-size:1.15rem; letter-spacing:-.01em; line-height:1.3; margin:0; }
.nd-buch p{ margin:.2rem 0 0; color:var(--wp--preset--color--muted); font-size:.98rem; }
.nd-sprung{ font-size:.98rem; border-top:2px solid var(--wp--preset--color--ink); border-bottom:1px solid var(--wp--preset--color--line); padding:.7rem 0; }
.nd-disclosure{ font-size:.95rem; color:var(--wp--preset--color--muted); }
.wp-block-button.is-style-outline > .wp-block-button__link{ border-width:2px; }

/* ---------- Dienst-Porträt ---------- */
.nd-kuerzel{ font-size:clamp(4rem,14vw,10rem); line-height:.9; letter-spacing:-.04em; }
.nd-kennzeile{ font-family:var(--wp--preset--font-family--mono); font-size:.9rem; color:var(--wp--preset--color--muted); }
.nd-steckbrief{ border:2px solid var(--wp--preset--color--ink); padding:1.25rem; position:sticky; top:6.5rem; }
.nd-steckbrief h2{ font-size:.82rem; text-transform:uppercase; letter-spacing:.08em; margin:0 0 .5rem; }
.nd-steckbrief .nd-feld{ border-top:1px solid var(--wp--preset--color--line); padding:.5rem 0; margin:0; }
.nd-steckbrief .nd-label{ display:block; font-size:.8rem; color:var(--wp--preset--color--muted); text-transform:uppercase; letter-spacing:.06em; margin:0; }
.nd-steckbrief .nd-wert{ margin:0; font-size:1rem; }

/* Zwischenüberschriften in Artikeln kleiner als Abschnittstitel der Startseite */
.wp-block-post-content h2{ font-size:clamp(1.6rem,3.2vw,2.1rem); margin-top:2.2rem; }
.wp-block-post-content h3{ font-size:1.25rem; }

/* ---------- Mobil ---------- */
@media (max-width:760px){
  .nd-toc a{ grid-template-columns:1fr; }
  .nd-dienste thead{ position:absolute; left:-9999px; }
  /* Tabelle als Blöcke, sonst richtet sich die Breite nach der längsten Zeile und läuft aus dem Bild (Klaus, 14.10.2026) */
  table.nd-dienste,.nd-dienste caption,.nd-dienste tbody{ display:block; width:100%; max-width:100%; }
  .nd-dienste tr{ display:grid; grid-template-columns:5.5rem minmax(0,1fr); gap:0 .8rem; padding:.75rem 0; border-bottom:1px solid var(--wp--preset--color--line); }
  .nd-dienste td,.nd-dienste th{ min-width:0; overflow-wrap:anywhere; }
  .nd-dienste td.land{ white-space:normal; }
  .nd-dienste tr.rg{ display:block; padding:0; border:0; }
  .nd-dienste th,.nd-dienste td{ border:0; padding:0; }
  .nd-dienste tbody th.region{ display:block; padding-top:1.75rem; padding-bottom:.4rem; border-bottom:2px solid var(--wp--preset--color--ink); }
  .nd-dienste td.k{ grid-column:1; grid-row:1/span 3; }
  .nd-dienste td.land,.nd-dienste td.name,.nd-dienste td.zust{ grid-column:2; }
  .nd-dienste td.land{ grid-row:1; font-size:.9rem; }
  .nd-steckbrief{ position:static; }
  .nd-portraet > .wp-block-column:last-child{ order:-1; }
}

/* ---------- Newsletter-Formular ---------- */
.nd-news{ margin-top:1.5rem; max-width:none !important; }
.nd-news-form label{ display:block; font-weight:700; margin-bottom:.35rem; }
.nd-news-form input[type=email]{ box-sizing:border-box; width:100%; max-width:100%; padding:.7rem .8rem; border:2px solid var(--wp--preset--color--ink); border-radius:0; font:inherit; background:var(--wp--preset--color--paper); color:var(--wp--preset--color--ink); }
.nd-news-form input[type=email]:focus-visible,.nd-news-form input[type=checkbox]:focus-visible{ outline:3px solid var(--wp--preset--color--signal); outline-offset:2px; }
.nd-news-form .nd-news-einwilligung label{ font-weight:400; display:flex; gap:.6rem; align-items:flex-start; }
.nd-news-form .nd-news-einwilligung input{ box-sizing:border-box; margin-top:.3rem; flex:none; width:1.1rem; height:1.1rem; }
.nd-kontakt input[type=text],.nd-kontakt textarea{ box-sizing:border-box; width:100%; max-width:100%; padding:.7rem .8rem; border:2px solid var(--wp--preset--color--ink); border-radius:0; font:inherit; background:var(--wp--preset--color--paper); color:var(--wp--preset--color--ink); }
.nd-kontakt input[type=text]:focus-visible,.nd-kontakt textarea:focus-visible{ outline:3px solid var(--wp--preset--color--signal); outline-offset:2px; }
.nd-kontakt .nd-news-feld{ margin:0 0 1rem; }
.nd-optional{ font-weight:400; color:var(--wp--preset--color--muted); }
.nd-news-honig{ position:absolute; left:-9999px; height:0; overflow:hidden; }
.nd-news-meldung{ border-left:4px solid var(--wp--preset--color--signal); padding:.6rem 1rem; margin:0 0 1rem; }
.nd-news-fehler,.nd-news-ungueltig,.nd-news-zuviele{ border-left-color:var(--wp--preset--color--ink); font-weight:700; }
.nd-news-hinweise{ list-style:none; margin:1.25rem 0 0; padding:0; font-size:.92rem; color:var(--wp--preset--color--muted); }
.nd-news-hinweise li{ position:relative; padding-left:1.1rem; margin:0 0 .4rem; }
.nd-news-hinweise li::before{ content:"–"; position:absolute; left:0; }
.nd-news-hinweise a{ color:inherit; }

/* ---------- Glossar-Seite ---------- */
.nd-gloss-abc{ font-weight:700; letter-spacing:.04em; }
.nd-gloss-abc a{ padding:0 .2rem; }
.nd-gloss-mehr{ display:block; margin-top:.35rem; font-size:.92rem; color:var(--wp--preset--color--muted); }
.nd-gloss-mehr a{ color:inherit; }
.nd-gloss div{ scroll-margin-top:7rem; }

/* ---------- Aktualisierungs-Zeile ---------- */
.nd-stand{ font-size:.92rem; color:var(--wp--preset--color--muted); margin:0 0 1.5rem; }
.nd-stand a{ color:inherit; }

/* ---------- Kasten „Das Wichtigste in Kürze“ ---------- */
.nd-kurz{ border:2px solid var(--wp--preset--color--ink); padding:1.1rem 1.25rem; margin:1.5rem 0 2rem; }
.nd-kurz p{ margin:0 0 .5rem; }
.nd-kurz ul{ margin:0; padding-left:1.2rem; }
.nd-kurz li{ margin-bottom:.35rem; }

/* ---------- Info-Zeichen bei Affiliate-Links (Erklärung beim Darüberfahren/Antippen) ---------- */
.nd-info{ position:relative; display:inline-flex; align-items:center; justify-content:center; width:1.35rem; height:1.35rem; margin-left:.6rem; border:2px solid var(--wp--preset--color--ink); border-radius:50%; background:var(--wp--preset--color--paper); color:var(--wp--preset--color--ink); font:700 .8rem/1 var(--wp--preset--font-family--mono, monospace); cursor:help; padding:0; vertical-align:middle; }
.nd-info:hover,.nd-info:focus-visible{ background:var(--wp--preset--color--signal); border-color:var(--wp--preset--color--signal); color:#fff; outline:none; }
.nd-info[data-tip]::after{ content:attr(data-tip); position:absolute; z-index:60; bottom:calc(100% + .6rem); right:-.4rem; width:min(18rem,70vw); padding:.7rem .85rem; background:var(--wp--preset--color--ink); color:#fff; font:400 .88rem/1.45 var(--wp--preset--font-family--sans, sans-serif); text-align:left; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .15s; }
.nd-info[data-tip]:hover::after,.nd-info[data-tip]:focus::after,.nd-info[data-tip]:focus-visible::after{ opacity:1; visibility:visible; }
.nd-info-statisch{ cursor:default; margin:0 .4rem 0 0; width:1.15rem; height:1.15rem; font-size:.7rem; }
@media (prefers-reduced-motion:reduce){ .nd-info[data-tip]::after{ transition:none; } }

/* Newsletter kompakt (Startseite, über dem Falz) */
.nd-hero-news-titel{ margin:1.75rem 0 0; }
.nd-news-kompakt{ margin-top:.75rem; max-width:none !important; }
.nd-news-kompakt .nd-news-feld{ margin:0 0 .6rem; }
.nd-news-kompakt .nd-news-einwilligung{ font-size:.92rem; margin:0 0 .75rem; }
.nd-news-kompakt .nd-news-hinweise{ margin-top:.5rem; }
/* Startseite: Titel und Newsletter-Anmeldung vollständig über dem Falz (ab Tablet-Breite) */
@media (min-width:782px){
	body.home main{ padding-top:1rem !important; }
	.nd-hero{ padding-top:1.5rem !important; padding-bottom:2.5rem !important; }
	.nd-hero p.has-large-font-size{ font-size:1.15rem !important; margin-top:.9rem; margin-bottom:.4rem; }
	.nd-hero-news-titel{ margin-top:1.1rem; font-size:1.2rem !important; }
	/* Alle Newsletter-Formulare (oben, Abschnitt 05, /newsletter/): Knopf neben dem Feld (Klaus, 14.10.2026); nicht das Kontaktformular */
	.nd-news:not(.nd-kontakt) .nd-news-form{ display:grid; grid-template-columns:1fr auto; column-gap:.75rem; align-items:end; }
	.nd-news:not(.nd-kontakt) .nd-news-feld{ grid-column:1; grid-row:1; margin:0; }
	.nd-news:not(.nd-kontakt) .nd-news-form > p:has(button){ grid-column:2; grid-row:1; margin:0; }
	.nd-news:not(.nd-kontakt) .nd-news-einwilligung{ grid-column:1 / -1; grid-row:2; margin:.6rem 0 0; }
	.nd-news:not(.nd-kontakt) .nd-news-hinweise{ grid-column:1 / -1; grid-row:3; margin:.6rem 0 0; }
	.nd-news:not(.nd-kontakt) input[type=email],.nd-news:not(.nd-kontakt) .nd-news-form button{ box-sizing:border-box; height:3.25rem; }
}
/* Startseite mobil: Titel, Einleitung und Anmeldung (Feld, Einwilligung, Knopf) über dem Falz */
@media (max-width:781px){
	body.home main{ padding-top:0 !important; }
	.nd-hero{ padding-top:1.1rem !important; padding-bottom:2rem !important; }
	.nd-hero h1{ max-width:none; font-size:clamp(1.7rem,8.2vw,2.6rem) !important; line-height:1.08; hyphens:manual; -webkit-hyphens:manual; }
	.nd-hero p.has-large-font-size{ font-size:1.02rem !important; line-height:1.45; margin-top:.7rem; margin-bottom:.3rem; }
	.nd-hero p.has-small-font-size{ margin:0; }
	.nd-hero-news-titel{ margin-top:.9rem; font-size:1.1rem !important; }
	.nd-news-kompakt{ margin-top:.5rem; }
	.nd-news-kompakt .nd-news-feld{ margin:0 0 .5rem; }
	.nd-news-kompakt .nd-news-feld label{ font-size:.9rem; margin-bottom:.2rem; }
	.nd-news-kompakt input[type=email]{ padding:.55rem .7rem; }
	.nd-news-kompakt .nd-news-einwilligung{ font-size:.8rem; line-height:1.4; margin:0 0 .6rem; }
	.nd-news-kompakt .nd-news-form > p:has(button){ margin:0; }
	.nd-news-kompakt button{ width:100%; }
	/* CookieYes-Symbol bleibt auch mobil sichtbar: einziger Weg zum Widerruf (Fußzeilen-Link entfernt, Klaus 14.10.2026) */
	.nd-foot{ padding-bottom:5.5rem !important; } /* Platz, damit das Symbol keine Fußzeilen-Links verdeckt */
}

/* Teilen */
.nd-teilen{ border-top:1px solid var(--wp--preset--color--line); margin-top:2.5rem; padding-top:1rem; }
.nd-teilen-titel{ font-size:.82rem; text-transform:uppercase; letter-spacing:.08em; font-weight:700; margin:0 0 .6rem; }
.nd-teilen ul{ list-style:none; display:flex; flex-wrap:wrap; gap:.5rem; margin:0; padding:0; }
.nd-teilen a{ display:inline-block; border:2px solid var(--wp--preset--color--ink); padding:.35rem .85rem; font-weight:700; text-decoration:none; color:var(--wp--preset--color--ink); }
.nd-teilen a,.nd-teilen button{ display:inline-block; border:2px solid var(--wp--preset--color--ink); padding:.35rem .85rem; font:inherit; font-weight:700; text-decoration:none; color:var(--wp--preset--color--ink); background:transparent; cursor:pointer; }
.nd-teilen a:hover,.nd-teilen a:focus-visible,.nd-teilen button:hover,.nd-teilen button:focus-visible{ background:var(--wp--preset--color--ink); color:var(--wp--preset--color--paper); }
.nd-teilen-mobil{ display:none; }
.nd-teilen-status{ font-size:.9rem; margin:.6rem 0 0; color:var(--wp--preset--color--muted); }
/* Mobil wie Hamburg History: drei gleich breite Knöpfe (Teilen-Menü des Geräts, Link kopieren, E-Mail), keine Einzel-Netzwerke */
@media (max-width: 47.99rem) {
	.nd-teilen ul{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; }
	.nd-teilen-mobil{ display:block; }
	.nd-teilen-netz{ display:none; }
	.nd-teilen li > a,.nd-teilen li > button{ display:flex; align-items:center; justify-content:center; text-align:center; width:100%; min-height:3rem; box-sizing:border-box; padding:.5rem .3rem; font-size:.9rem; }
}

/* 404 */
.nd-404-zahl{ font-size:clamp(7rem,28vw,18rem); line-height:.85; font-weight:700; letter-spacing:-.06em; margin:.5rem 0 1.25rem; }
.nd-404-zahl span{ color:var(--wp--preset--color--signal); display:inline-block; }
.nd-schwaerzung{ background:var(--wp--preset--color--ink); color:var(--wp--preset--color--ink); padding:0 .25em; border-radius:2px; transition:color .25s ease; }
.nd-schwaerzung:hover{ color:var(--wp--preset--color--paper); }
.nd-404-suche{ margin:1.5rem 0 2rem; }
.nd-404-wege{ list-style:none; margin:0 0 2rem; padding:0; border-top:2px solid var(--wp--preset--color--ink); display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 2rem; }
.nd-404-wege li{ border-bottom:1px solid var(--wp--preset--color--line); }
.nd-404-wege a{ display:block; padding:1rem 0; text-decoration:none; color:var(--wp--preset--color--ink); }
.nd-404-wege strong{ display:block; font-size:1.2rem; }
.nd-404-wege span{ color:var(--wp--preset--color--muted); }
.nd-404-wege a:hover strong,.nd-404-wege a:focus-visible strong{ color:var(--wp--preset--color--signal); text-decoration:underline; }
@media (max-width:640px){ .nd-404-wege{ grid-template-columns:1fr; } }

/* Mobil: lange Wörter werden an Silben getrennt (mit Bindestrich) statt mitten im Wort umgebrochen */
h1,h2,h3,.nd-dienste td,.nd-toc a{ hyphens:auto; -webkit-hyphens:auto; }

/* Handy-Menü: Logo bleibt oben sichtbar, das aufgeklappte Menü beginnt unter dem Kopf */
.wp-block-navigation__responsive-container.is-menu-open{ top:var(--nd-kopf-h,4.5rem) !important; border-top:2px solid var(--wp--preset--color--ink); }

/* Hinweis auf Länder-Überblick im Porträt */
.nd-ueberblick{ border-left:4px solid var(--wp--preset--color--signal); padding:.5rem 1rem; margin:2rem 0 0; }
.nd-filter a[aria-current="page"]{ background:var(--wp--preset--color--ink); color:#fff; }
.nd-dienste tbody th.region a{ color:inherit; text-decoration:none; }
.nd-dienste tbody th.region a:hover{ color:var(--wp--preset--color--signal); text-decoration:underline; }

/* Regionsseiten: Antwortblock je Land */
.nd-region-liste{ margin:1rem 0; }
.nd-region-liste > div{ border-top:1px solid var(--wp--preset--color--line); padding:.8rem 0; display:grid; grid-template-columns:12rem 1fr; gap:.4rem 1.2rem; }
.nd-region-liste dt{ font-weight:700; }
.nd-region-liste dd{ margin:0; }
.nd-region-liste ul{ margin:0; padding-left:1.1rem; }
.nd-region-liste li{ margin:0 0 .35rem; }
@media (max-width:640px){ .nd-region-liste > div{ grid-template-columns:1fr; } }

/* Brotkrumen */
.nd-brotkrumen{ font-size:.88rem; margin:0 0 1rem; color:var(--wp--preset--color--muted); }
.nd-brotkrumen ol{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:.15rem .4rem; }
.nd-brotkrumen li+li::before{ content:"›"; margin-right:.4rem; color:var(--wp--preset--color--muted); }
.nd-brotkrumen a{ color:inherit; }
.nd-brotkrumen a:hover{ color:var(--wp--preset--color--signal); }
.nd-brotkrumen [aria-current]{ color:var(--wp--preset--color--ink); }

/* Länder-Überblicke (Dienste, Startseite) */
.nd-ueberblicke{ margin:0 0 1.5rem; }
.nd-ueberblicke-titel{ font-weight:700; margin:0 0 .5rem; }
.nd-ueberblicke ul{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:.5rem; }
.nd-ueberblicke a{ display:inline-block; padding:.3rem .8rem; border:2px solid var(--wp--preset--color--signal); color:var(--wp--preset--color--signal); text-decoration:none; font-weight:700; font-size:.95rem; }
.nd-ueberblicke a:hover{ background:var(--wp--preset--color--signal); color:#fff; }

/* Porträts mit langem Titel */
.nd-titel-lang .nd-kuerzel{ font-size:clamp(2.4rem,7vw,5rem); line-height:1.02; letter-spacing:-.02em; }

/* Automatische Glossar-Links: dezent */
.nd-glossar-link{ text-decoration-style:dotted; text-underline-offset:.18em; }

/* ---------- Suche ---------- */
.nd-top-rechts{ gap:1.2rem; }
.nd-suche .wp-block-search__button{ background:none; border:0; padding:.3rem; color:var(--wp--preset--color--ink); cursor:pointer; }
.nd-suche .wp-block-search__button:hover,.nd-suche .wp-block-search__button:focus-visible{ color:var(--wp--preset--color--signal); }
.nd-suche .wp-block-search__button svg{ width:1.5rem; height:1.5rem; fill:currentColor; }
.nd-suche .wp-block-search__input{ border:2px solid var(--wp--preset--color--ink); border-radius:0; padding:.35rem .6rem; font:inherit; background:var(--wp--preset--color--paper); color:var(--wp--preset--color--ink); }
.nd-suche-gross{ margin:1.5rem 0 2.5rem; max-width:40rem; }
.nd-suche-gross .wp-block-search__input{ border:2px solid var(--wp--preset--color--ink); border-radius:0; padding:.7rem .8rem; font:inherit; }
.nd-suche-gross .wp-block-search__button{ border-radius:0; background:var(--wp--preset--color--ink); color:#fff; border:2px solid var(--wp--preset--color--ink); padding:.7rem 1.2rem; font-weight:700; }
.nd-treffer .wp-block-post-template{ list-style:none; padding:0; margin:0; }
.nd-treffer .wp-block-post-template > li{ border-top:1px solid var(--wp--preset--color--line); padding:1.2rem 0; }
.nd-treffer .wp-block-post-title{ margin:0 0 .4rem; }
.nd-treffer .wp-block-post-title a{ text-decoration:none; }
.nd-treffer .wp-block-post-title a:hover{ color:var(--wp--preset--color--signal); text-decoration:underline; }
.nd-treffer .wp-block-post-excerpt{ margin:0; color:var(--wp--preset--color--muted); }

/* Studiengänge u. Ä.: Tabelle mit Filter, Angebote mit Knopf, Hinweis-Kasten (14.10.2026) */
.nd-tabelle{ margin:1.5rem 0; overflow-x:auto; }
.nd-tabelle table{ border-collapse:collapse; width:100%; font-size:.92rem; }
.nd-tabelle th{ text-align:left; border-bottom:2px solid var(--wp--preset--color--ink); padding:.5rem .6rem; vertical-align:bottom; }
.nd-tabelle td{ border-bottom:1px solid var(--wp--preset--color--line); padding:.5rem .6rem; vertical-align:top; }
.nd-tabelle td a{ color:inherit; }
.nd-art{ display:block; font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; color:var(--wp--preset--color--signal); font-weight:700; margin-bottom:.15rem; }
.nd-filter{ display:flex; flex-wrap:wrap; gap:.4rem; align-items:center; margin:0 0 .75rem; }
.nd-filter-knopf{ font:inherit; font-size:.85rem; font-weight:700; border:2px solid var(--wp--preset--color--ink); background:transparent; color:var(--wp--preset--color--ink); padding:.3rem .7rem; cursor:pointer; }
.nd-filter-knopf[aria-pressed=true]{ background:var(--wp--preset--color--ink); color:var(--wp--preset--color--paper); }
.nd-filter-knopf:focus-visible,.nd-filter-haken input:focus-visible{ outline:3px solid var(--wp--preset--color--signal); outline-offset:2px; }
.nd-filter-haken{ font-size:.85rem; display:inline-flex; gap:.35rem; align-items:center; margin-left:.6rem; }
.nd-filter-anzahl{ font-size:.85rem; color:var(--wp--preset--color--muted); margin:0 0 .5rem; }
.nd-hinweis-box{ border:2px solid var(--wp--preset--color--ink); border-left:6px solid var(--wp--preset--color--signal); padding:1rem 1.25rem; margin:1.5rem 0; }
.nd-hinweis-box p{ margin:0; }
.nd-angebot-titel{ font-size:1.15rem; margin:2rem 0 .4rem; padding-top:1.25rem; border-top:1px solid var(--wp--preset--color--line); }
.nd-cta{ margin:.75rem 0 0; }
.nd-cta .wp-element-button{ display:inline-block; background:var(--wp--preset--color--ink); color:var(--wp--preset--color--paper); padding:.65rem 1.2rem; font-weight:700; text-decoration:none; }
.nd-cta .wp-element-button:hover,.nd-cta .wp-element-button:focus-visible{ background:var(--wp--preset--color--signal); color:#fff; }
.nd-zurueck{ margin:.6rem 0 0; font-size:.85rem; }
.nd-zurueck a{ color:var(--wp--preset--color--muted); }
h2[id],h3[id]{ scroll-margin-top:6rem; }
@media (prefers-reduced-motion: no-preference){ html{ scroll-behavior:smooth; } }
/* Handy: Tabellenzeilen mit Filter als Karten untereinander statt seitlich wischen */
@media (max-width: 47.99rem) {
	.nd-tabelle-filter thead{ position:absolute; left:-9999px; }
	.nd-tabelle-filter table,.nd-tabelle-filter tbody,.nd-tabelle-filter tr,.nd-tabelle-filter td{ display:block; width:100%; box-sizing:border-box; }
	.nd-tabelle-filter tr{ border-bottom:1px solid var(--wp--preset--color--line); padding:.6rem 0; }
	.nd-tabelle-filter tr[hidden]{ display:none; }
	.nd-tabelle-filter td{ border:0; padding:.1rem 0; }
	.nd-tabelle-filter td:nth-child(2)::before{ content:"Abschluss und Form: "; font-weight:700; }
	.nd-tabelle-filter td:nth-child(3)::before{ content:"Zugang: "; font-weight:700; }
}
/* Lupe im Suchknopf senkrecht mittig (stand 5 px zu hoch; Klaus 14.10.2026) */
.nd-suche .wp-block-search__button{ display:flex; align-items:center; justify-content:center; }

/* Suche in der Fußzeile statt im Kopf (Klaus, 14.10.2026: mobil verdrängte das Suchfeld den Kopf) */
.nd-suche-fuss{ flex:1 1 100%; max-width:32rem; margin:0 0 1.25rem; }
.nd-suche-fuss .wp-block-search__inside-wrapper{ display:flex; gap:.5rem; }
.nd-suche-fuss .wp-block-search__input{ flex:1; min-width:0; box-sizing:border-box; height:2.9rem; border:2px solid var(--wp--preset--color--ink); border-radius:0; padding:.5rem .7rem; font:inherit; background:var(--wp--preset--color--paper); color:var(--wp--preset--color--ink); }
.nd-suche-fuss .wp-block-search__input:focus-visible{ outline:3px solid var(--wp--preset--color--signal); outline-offset:2px; }
.nd-suche-fuss .wp-block-search__button{ box-sizing:border-box; height:2.9rem; margin:0; border-radius:0; border:2px solid var(--wp--preset--color--ink); background:var(--wp--preset--color--ink); color:var(--wp--preset--color--paper); padding:0 1.1rem; font:inherit; font-weight:700; cursor:pointer; }
.nd-suche-fuss .wp-block-search__button:hover,.nd-suche-fuss .wp-block-search__button:focus-visible{ background:var(--wp--preset--color--signal); border-color:var(--wp--preset--color--signal); }

/* =====================================================================
   Restyle „Register“ (Klaus, 15.10.2026): Flächen statt Linien, Charter-Überschriften, ein Blau.
   Überschreibt die älteren Regeln oben; die Funktionen (Kopf, Tabelle mobil, Formulare) bleiben.
   Vorheriger Stand: Server-Sicherung theme-vor-restyle-20261015 (Version 0.1.4).
   ===================================================================== */
:root{ --nd-flaeche:var(--wp--preset--color--surface); --nd-band:var(--wp--preset--color--soft); --nd-ease:cubic-bezier(.23,1,.32,1); }
::selection{ background:var(--wp--preset--color--signal); color:#fff; }
.wp-site-blocks{ overflow-x:clip; }
body{ scrollbar-color:var(--wp--preset--color--signal) var(--wp--preset--color--paper); }

/* Kopf: ohne Linie, beim Scrollen ein weicher Schatten (nur Leiste) */
.nd-top{ border-bottom:0; }
.nd-gescrollt .nd-top{ box-shadow:0 8px 12px -12px rgba(21,25,30,.35); }
.nd-top{ transition:box-shadow .25s var(--nd-ease); }
.nd-logo{ font-family:var(--wp--preset--font-family--display); }
.nd-top .wp-block-navigation a{ font-weight:500; }
.nd-foot{ border-top:0; background:var(--nd-band); margin-top:0 !important; padding-top:3rem !important; }
.nd-foot a{ color:var(--wp--preset--color--ink); }
.nd-fusslinks{ line-height:2.3; }
.nd-fusslinks a{ display:inline-block; min-height:2rem; padding:0 .2rem; }

/* Links, Knöpfe, Eingaben */
a{ text-underline-offset:.22em; text-decoration-thickness:1px; }
a:hover{ text-decoration-thickness:1px; }
.wp-element-button,.wp-block-button__link{ border:0 !important; transition:background-color .15s var(--nd-ease),transform .12s var(--nd-ease); }
.wp-element-button:active{ transform:scale(.98); }
.wp-block-button.is-style-outline > .wp-block-button__link{ background:var(--nd-band) !important; color:var(--wp--preset--color--ink) !important; border:0 !important; text-decoration:none; font-weight:600; }
.wp-block-button.is-style-outline > .wp-block-button__link:hover,.wp-block-button.is-style-outline > .wp-block-button__link:focus-visible{ background:var(--wp--preset--color--signal) !important; color:#fff !important; }
.nd-news-form input[type=email],.nd-kontakt input[type=text],.nd-kontakt textarea,.nd-suche-fuss .wp-block-search__input{ border:1px solid #6b655a; background:#fff; }
.nd-suche-fuss .wp-block-search__button{ border:0; background:var(--wp--preset--color--ink); }
.nd-suche-fuss .wp-block-search__button:hover,.nd-suche-fuss .wp-block-search__button:focus-visible{ background:var(--wp--preset--color--signal); }
.nd-news-meldung{ border-left:0; background:var(--nd-band); padding:.8rem 1rem; }
.nd-news-hinweise li::before{ content:none; }
.nd-news-hinweise li{ padding-left:0; }

/* Artikel: Überschriften, Lesemaß */
.wp-block-post-content h2{ font-size:clamp(1.5rem,2.6vw,2rem); line-height:1.15; margin-top:2.8rem; }
.wp-block-post-content p,.wp-block-post-content li{ line-height:1.7; }
.wp-block-post-title.has-x-large-font-size{ font-size:clamp(2rem,4.6vw,3.25rem); }
.nd-brotkrumen li+li::before{ content:"/"; margin-right:.4rem; }
.nd-brotkrumen a{ display:inline-flex; align-items:center; min-height:2rem; }

/* Startseite: Titel links, Newsletter als Fläche rechts */
.nd-hero h1{ max-width:none; font-size:clamp(2.2rem,6vw,4.5rem); line-height:1.04; letter-spacing:-.03em; overflow-wrap:normal; }
.nd-hero h1 em{ display:block; position:relative; width:fit-content; }
.nd-hero h1 em::after{ content:""; position:absolute; left:0; right:0; bottom:-.08em; height:.06em; background:var(--wp--preset--color--signal); transform-origin:left; animation:nd-zeichnen .7s var(--nd-ease) .15s both; }
@keyframes nd-zeichnen{ from{ transform:scaleX(0); } to{ transform:scaleX(1); } }
.nd-hero p.has-large-font-size{ font-family:var(--wp--preset--font-family--display); font-size:clamp(1.15rem,2vw,1.4rem) !important; line-height:1.5; max-width:44ch; margin-top:1.5rem; }
.nd-hero p.has-small-font-size{ font-size:1rem !important; margin-top:1rem; }
.nd-hero p.has-small-font-size a{ font-weight:600; display:inline-flex; align-items:center; min-height:2.75rem; }
.nd-hero-news-titel{ background:var(--nd-flaeche); padding:1.5rem 1.75rem 0; margin:0; font-size:1.35rem !important; }
.nd-news-kompakt{ background:var(--nd-flaeche); padding:.9rem 1.75rem 1.5rem; margin:0; }
@media (min-width:960px){
	.nd-hero{ display:grid !important; grid-template-columns:minmax(0,1.8fr) minmax(0,1fr); grid-template-rows:auto auto 1fr; column-gap:clamp(2rem,5vw,5rem); align-items:start; padding-top:3rem !important; }
	.nd-hero > h1,.nd-hero > p{ grid-column:1; margin-top:0; }
	.nd-hero > h1{ grid-row:1; }
	.nd-hero > p.has-large-font-size{ grid-row:2; margin-top:1.5rem; }
	.nd-hero > p.has-small-font-size{ grid-row:3; margin-top:1rem; }
	/* Titel und Formular teilen sich eine Zelle und bilden eine Fläche */
	.nd-hero > .nd-hero-news-titel{ grid-column:2; grid-row:1 / span 3; align-self:start; line-height:1.1; padding-bottom:0; margin-top:0 !important; }
	.nd-hero > .nd-news{ grid-column:2; grid-row:1 / span 3; align-self:start; margin-top:3rem !important; }
	.nd-hero .nd-news:not(.nd-kontakt) .nd-news-form{ display:block; }
	.nd-hero .nd-news:not(.nd-kontakt) .nd-news-form > p:has(button){ margin:.75rem 0 0; }
	.nd-hero .nd-news button{ width:100%; }
}
@media (prefers-reduced-motion:reduce){ .nd-hero h1 em::after{ animation:none; } }

/* Abschnitte der Startseite: keine Linien, Flächenwechsel über die volle Breite; keine Zierzahlen */
.nd-num{ display:none; }
.nd-section{ border-top:0; }
.nd-section > h2{ margin-bottom:.4rem; }
.nd-section:nth-of-type(even){ background:var(--nd-flaeche); box-shadow:0 0 0 100vmax var(--nd-flaeche); clip-path:inset(0 -100vmax); }
.nd-section:last-child{ background:var(--wp--preset--color--ink); color:#ECE7DB; box-shadow:0 0 0 100vmax var(--wp--preset--color--ink); clip-path:inset(0 -100vmax); }
.nd-section:last-child h2{ color:#fff; }
.nd-section:last-child .has-muted-color{ color:#B9B5AA !important; }
.nd-section:last-child a{ color:#A9C1EA; }
.nd-section:last-child .nd-news-form input[type=email]{ border-color:#8a867c; }
.nd-section:last-child .wp-element-button,.nd-section:last-child .nd-news-form button{ background:#ECE7DB; color:var(--wp--preset--color--ink); }
.nd-section:last-child .nd-news-form button:hover{ background:#fff; }
.nd-section:last-child .nd-news-hinweise,.nd-section:last-child .nd-news-einwilligung{ color:#B9B5AA; }
.nd-more{ font-weight:600; }
.nd-more a{ display:inline-flex; align-items:center; min-height:2.75rem; }

/* Grundlagen-Liste: nummerierte Leseliste ohne Linien */
.nd-toc{ border-top:0; counter-reset:nd-z; max-width:48rem; }
.nd-toc li{ border-bottom:0; counter-increment:nd-z; }
.nd-toc a{ grid-template-columns:2.5rem minmax(0,1fr); gap:.15rem .5rem; padding:1rem .75rem; margin-inline:-.75rem; transition:background-color .15s var(--nd-ease); }
.nd-toc a::before{ content:counter(nd-z); grid-row:1 / span 2; font-family:var(--wp--preset--font-family--display); font-weight:700; font-size:1.2rem; line-height:1.3; color:var(--wp--preset--color--signal); font-variant-numeric:tabular-nums; }
.nd-toc a:hover{ background:var(--nd-band); }
.nd-toc a:hover strong{ text-decoration:underline; text-underline-offset:.2em; text-decoration-thickness:1px; }
.nd-toc strong{ font-family:var(--wp--preset--font-family--display); font-size:1.2rem; line-height:1.3; grid-column:2; }
.nd-toc span{ grid-column:2; font-size:1rem; line-height:1.55; max-width:68ch; }
@media (max-width:760px){ .nd-toc a{ grid-template-columns:2.25rem minmax(0,1fr); } }

/* Länder-Überblicke, Regionen-Leiste */
.nd-ueberblicke-titel{ font-size:.95rem; color:var(--wp--preset--color--muted); }
.nd-ueberblicke ul{ display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,15.5rem),1fr)); gap:.5rem; }
.nd-ueberblicke a{ display:flex; align-items:center; height:100%; min-height:3.5rem; padding:.5rem 1rem; border:0; background:var(--nd-band); color:var(--wp--preset--color--ink); font-family:var(--wp--preset--font-family--display); font-weight:700; font-size:1.05rem; line-height:1.3; transition:background-color .15s var(--nd-ease),color .15s var(--nd-ease); }
.nd-ueberblicke a:hover{ background:var(--wp--preset--color--signal); color:#fff; }
.nd-section:nth-of-type(even) .nd-ueberblicke a{ background:var(--nd-band); }
.nd-ueberblicke ul,.nd-section .nd-ueberblicke ul{ display:flex; flex-wrap:wrap; gap:.6rem; }
.nd-ueberblicke a,.nd-section:nth-of-type(even) .nd-ueberblicke a{ display:inline-flex; height:auto; min-height:0; padding:.6rem 1.15rem; background:var(--wp--preset--color--signal); color:#fff; border-radius:4px; font-family:inherit; font-weight:600; font-size:1rem; }
.nd-ueberblicke a:hover,.nd-section:nth-of-type(even) .nd-ueberblicke a:hover{ background:var(--wp--preset--color--ink); color:#fff; }
ul.nd-filter{ margin:0 0 1rem; gap:.25rem; }
ul.nd-filter a{ border:0; border-radius:0; padding:0 .9rem; display:inline-flex; align-items:center; min-height:2.75rem; background:var(--nd-band); font-weight:500; transition:background-color .15s var(--nd-ease),color .15s var(--nd-ease); }
ul.nd-filter a:hover,ul.nd-filter a[aria-current="page"]{ background:var(--wp--preset--color--signal); color:#fff; }

/* Dienste-Tabelle (echte Tabelle: Zeilenlinien bleiben, Kopf und Regionen ohne dicke Striche) */
table.nd-dienste{ font-size:1rem; }
.nd-dienste thead th{ border-bottom:0; text-transform:none; letter-spacing:0; font-size:.9rem; }
.nd-dienste tbody th.region{ font-family:var(--wp--preset--font-family--display); font-size:1.5rem; padding-top:2.75rem; border-bottom:0; }
.nd-dienste th,.nd-dienste td{ border-bottom:1px solid var(--wp--preset--color--line); }
.nd-dienste tr.rg th{ border-bottom:0; }
.nd-dienste td.k a{ font-family:inherit; font-weight:700; letter-spacing:.02em; text-decoration:none; display:inline-block; padding:.35rem 0; }
.nd-dienste td.k a:hover{ text-decoration:underline; }
.nd-dienste td.name{ font-weight:600; }
.nd-dienste td.zust{ color:var(--wp--preset--color--muted); }
.nd-dienste tbody tr:not(.rg):hover{ background:rgba(23,63,122,.05); }
@media (max-width:760px){ .nd-dienste tbody th.region{ border-bottom:0; } .nd-dienste tr{ border-bottom:1px solid var(--wp--preset--color--line); } }

/* Glossar, Agenten (Definitionslisten) als Flächen */
.nd-gloss{ display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr)); gap:.75rem; }
.nd-gloss div{ border-top:0; background:var(--nd-band); padding:1.25rem 1.5rem 1.5rem; }
.nd-section:nth-of-type(even) .nd-gloss div{ background:var(--nd-band); }
.nd-gloss dt{ font-family:var(--wp--preset--font-family--display); font-size:1.25rem; color:var(--wp--preset--color--signal); }
.nd-gloss dt a{ color:inherit; text-decoration:none; }
.nd-gloss dt a:hover{ text-decoration:underline; }

/* Bücher */
.nd-buch{ border-bottom:0; background:var(--nd-band); padding:1.4rem 1.5rem; margin:0 0 .75rem; }
.nd-buch h3{ font-size:1.25rem; }
.nd-buch .wp-block-button.is-style-outline > .wp-block-button__link{ background:var(--wp--preset--color--signal) !important; color:#fff !important; padding:.65rem 1.25rem; border-radius:4px; text-decoration:none; }
.nd-buch .wp-block-button.is-style-outline > .wp-block-button__link:hover,.nd-buch .wp-block-button.is-style-outline > .wp-block-button__link:focus-visible{ background:var(--wp--preset--color--ink) !important; color:#fff !important; }
.nd-tag{ border:0; border-radius:0; background:var(--wp--preset--color--paper); color:var(--wp--preset--color--ink); letter-spacing:0; text-transform:none; font-size:.8125rem; padding:.1rem .5rem; }
.nd-info{ border:0; background:var(--wp--preset--color--muted); color:var(--wp--preset--color--paper); font-family:var(--wp--preset--font-family--display); font-style:italic; }
.nd-sprung{ border:0; background:var(--nd-band); padding:.8rem 1rem; }

/* Dienst-Porträt */
.nd-kuerzel{ color:var(--wp--preset--color--signal); font-size:clamp(3.5rem,13vw,7rem); line-height:.95; letter-spacing:-.035em; }
.nd-titel-lang .nd-kuerzel{ font-size:clamp(2.2rem,6vw,4.25rem); line-height:1.04; letter-spacing:-.02em; }
.nd-kennzeile{ font-family:inherit; font-size:.95rem; }
.nd-steckbrief{ border:0; background:var(--nd-flaeche); padding:1.5rem; top:calc(var(--nd-kopf-h,5rem) + 1rem); }
.nd-steckbrief h2{ font-size:1.35rem; text-transform:none; letter-spacing:-.01em; margin:0 0 .9rem; }
.nd-steckbrief .nd-feld{ border-top:0; padding:.35rem 0; }
.nd-steckbrief .nd-label{ font-size:.8125rem; font-weight:600; text-transform:none; letter-spacing:0; }
.nd-kurz{ border:0; background:var(--nd-band); padding:1.5rem 1.75rem; }
.nd-kurz p:first-child{ font-family:var(--wp--preset--font-family--display); font-size:1.35rem; }
.nd-ueberblick{ border-left:0; background:var(--nd-band); padding:.9rem 1.1rem; }
.nd-hinweis-box{ border:0; background:var(--nd-band); padding:1.1rem 1.4rem; }
.nd-quellen{ font-size:.95rem; color:var(--wp--preset--color--muted); }
.nd-verwandte{ list-style:none; padding:0; display:grid; gap:.5rem; }
.nd-verwandte li{ background:var(--nd-band); padding:.75rem 1rem; margin:0; }
.nd-region-liste > div{ border-top:0; background:var(--nd-band); padding:1rem 1.25rem; margin-bottom:.5rem; }
sup{ line-height:0; font-size:.7em; }

/* Teilen */
.nd-teilen{ border-top:0; padding-top:0; margin-top:3rem; }
.nd-teilen-titel{ text-transform:none; letter-spacing:0; font-size:1rem; }
.nd-teilen a,.nd-teilen button{ border:0; background:var(--nd-band); color:var(--wp--preset--color--ink); font-weight:600; font-size:.95rem; min-height:2.75rem; display:inline-flex; align-items:center; padding:0 1rem; transition:background-color .15s var(--nd-ease),color .15s var(--nd-ease); }
.nd-teilen a:hover,.nd-teilen a:focus-visible,.nd-teilen button:hover,.nd-teilen button:focus-visible{ background:var(--wp--preset--color--signal); color:#fff; }

/* 404, Suche, Tabellen mit Filter */
.nd-404-wege{ border-top:0; gap:.5rem; }
.nd-404-wege li{ border-bottom:0; background:var(--nd-band); }
.nd-404-wege a{ padding:1rem 1.25rem; }
.nd-treffer .wp-block-post-template > li{ border-top:0; background:var(--nd-band); padding:1.2rem 1.4rem; margin-bottom:.5rem; }
.nd-filter-knopf{ border:0; background:var(--nd-band); }
.nd-filter-knopf[aria-pressed=true]{ background:var(--wp--preset--color--signal); color:#fff; }
.nd-tabelle th{ border-bottom:0; }
.nd-angebot-titel{ border-top:0; padding-top:.5rem; }
.nd-suche-gross .wp-block-search__input{ border:1px solid #6b655a; }
.nd-suche-gross .wp-block-search__button{ border:0; }
@media (min-width:761px){
	.nd-dienste td.land{ width:13%; }
	.nd-dienste td.k{ width:16%; }
	.nd-dienste td.name{ width:26%; }
	.nd-dienste td.name,.nd-dienste td.zust{ hyphens:manual; -webkit-hyphens:manual; }
}

/* Überblicke (Seiten, Pfeil →) und Sprungmarken (Anker, Pfeil ↓) klar trennen */
.nd-ueberblicke a::after{ content:"\2192"; margin-left:.5em; }
.nd-sprungmarken{ margin-bottom:1.75rem; }
.nd-sprungmarken a{ border:0; border-radius:999px; background:transparent; box-shadow:inset 0 0 0 1.5px var(--wp--preset--color--muted); color:var(--wp--preset--color--ink); font-size:.9rem; padding:.3rem .85rem; }
.nd-sprungmarken a::before{ content:"\2193"; margin-right:.4em; color:var(--wp--preset--color--muted); }
.nd-sprungmarken a:hover{ background:var(--wp--preset--color--ink); box-shadow:none; color:#fff; }
.nd-sprungmarken a:hover::before{ color:#fff; }
.nd-ueberblicke{ margin-bottom:2.25rem; }

/* Zurück nach oben nach jeder Region */
#regionen-sprung{ scroll-margin-top:calc(var(--nd-kopf-start,5rem) + 1rem); }
.nd-dienste tr.nach-oben td{ border-bottom:0; padding:.6rem 0 0; text-align:right; }
.nd-dienste tr.nach-oben a{ font-size:.9rem; font-weight:600; text-decoration:none; color:var(--wp--preset--color--muted); }
.nd-dienste tr.nach-oben a:hover{ color:var(--wp--preset--color--signal); text-decoration:underline; }
@media (max-width:760px){ .nd-dienste tr.nach-oben{ display:block; padding:.5rem 0 0; border:0; } .nd-dienste tr.nach-oben td{ display:block; } }

/* Buchkasten: Button (und Info-Zeichen) immer unter dem Text */
.nd-buch{ flex-wrap:wrap !important; align-items:center !important; gap:.9rem .4rem !important; }
.nd-buch > :first-child{ flex:0 0 100% !important; max-width:100%; }

/* Markenzeichen gemeinsam mit dem Seitennamen. */
.nd-logo a,.nd-fussmarke{display:inline-flex;align-items:center;gap:.25em;white-space:nowrap}
.nd-logo .nd-markenname{color:inherit}
.nd-marke{display:block;width:1em;height:1em;flex:none}
.nd-fussmarke{color:inherit;text-decoration:none}
@media(max-width:430px){.nd-logo{font-size:clamp(1.1rem,5.7vw,1.5rem)}.nd-gescrollt .nd-logo{font-size:clamp(1.05rem,5.4vw,1.35rem)}}

/* CookieYes: Farben der Website; !important ersetzt die Inline-Farben des externen Banners. */
.cky-consent-container,.cky-modal,.cky-btn-revisit-wrapper{--consent-paper:var(--wp--preset--color--paper);--consent-ink:var(--wp--preset--color--ink);--consent-accent:var(--wp--preset--color--signal);--consent-dark:var(--wp--preset--color--ink);--consent-line:var(--wp--preset--color--line);--consent-soft:var(--wp--preset--color--soft)}
.cky-consent-bar,.cky-preference-center{background:var(--consent-paper)!important;color:var(--consent-ink)!important;border-color:var(--consent-line)!important}
.cky-title,.cky-notice-des,.cky-preference-title,.cky-preference-content-wrapper,.cky-dma-content-wrapper,.cky-accordion-btn,.cky-accordion-header-des,.cky-accordion-body,.cky-cookie-des-table,.cky-empty-cookies-text{color:var(--consent-ink)!important}
.cky-notice-des a,.cky-policy,.cky-preference-content-wrapper a,.cky-accordion-body a,.cky-show-desc-btn,.cky-show-more{color:var(--consent-accent)!important}
.cky-btn-customize,.cky-btn-reject,.cky-btn-preferences{background:var(--consent-paper)!important;color:var(--consent-accent)!important;border-color:var(--consent-accent)!important}
.cky-btn-accept{background:var(--consent-accent)!important;color:#fff!important;border-color:var(--consent-accent)!important}
.cky-btn:hover{background:var(--consent-dark)!important;color:#fff!important;border-color:var(--consent-dark)!important}
.cky-btn:focus-visible,.cky-btn-close:focus-visible,.cky-accordion-btn:focus-visible,.cky-btn-revisit:focus-visible{outline:2px solid var(--consent-accent)!important;outline-offset:3px}
.cky-preference-header,.cky-footer-wrapper,.cky-accordion-wrapper,.cky-accordion,.cky-cookie-des-table{border-color:var(--consent-line)!important}
.cky-horizontal-separator{background:var(--consent-line)!important}
.cky-audit-table{background:var(--consent-soft)!important;color:var(--consent-ink)!important;border-color:var(--consent-line)!important}
.cky-footer-shadow{background:linear-gradient(180deg,transparent,var(--consent-paper))!important}
.cky-switch input[type="checkbox"]{background:var(--consent-line)!important}
.cky-switch input[type="checkbox"]:checked{background:var(--consent-accent)!important}
.cky-always-active{color:var(--consent-accent)!important}
.cky-accordion-chevron i{border-color:var(--consent-ink)!important}
.cky-btn-revisit-wrapper{background:var(--consent-accent)!important}

/* Anbieterhinweis ausblenden; Einwilligung und Widerruf bleiben bedienbar. */
[data-cky-tag="powered-by"],[data-cky-tag="detail-powered-by"]{display:none!important}

/* CookieYes verwendet die vorhandenen Website-Schriften. */
.cky-consent-container,.cky-modal,.cky-btn-revisit-wrapper{font-family:var(--wp--preset--font-family--body)!important}
.cky-consent-container button,.cky-modal button,.cky-notice-des,.cky-preference-content-wrapper,.cky-accordion-header-des,.cky-accordion-body{font-family:var(--wp--preset--font-family--body)!important}
.cky-title,.cky-preference-title{font-family:Charter,"Bitstream Charter","Sitka Text",Cambria,serif!important}

/* Einheitliche Position: Banner rechts unten, Consent-Center mittig (Klaus, 18.10.2026). */
.cky-consent-container{position:fixed!important;top:auto!important;right:16px!important;bottom:16px!important;left:auto!important;width:440px!important;max-width:calc(100vw - 32px)!important;max-height:calc(100dvh - 32px)!important;margin:0!important;transform:none!important;overflow:auto!important}
.cky-modal{position:fixed!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;transform:none!important;pointer-events:none;background:rgba(0,0,0,.45)!important;box-shadow:none!important;border:0!important}
.cky-modal .cky-preference-center{position:relative!important;inset:auto!important;display:flex!important;flex-direction:column!important;width:min(640px,calc(100vw - 48px))!important;min-width:0!important;max-width:640px!important;flex:0 1 auto!important;box-sizing:border-box!important;height:auto!important;max-height:calc(100dvh - 32px)!important;margin:0!important;transform:none!important;overflow:hidden!important;pointer-events:auto}
.cky-modal .cky-preference-header,.cky-modal .cky-footer-wrapper{flex:0 0 auto!important}
.cky-modal .cky-preference-body-wrapper{flex:1 1 auto!important;min-height:0!important;overflow:auto!important}

.cky-overlay{background:transparent!important}

/* Passt! akzeptiert nach dem Hinweis im Banner alle Cookies (Klaus, 18.10.2026). */
.cky-consent-container .cky-btn-accept{background:var(--consent-accent)!important;color:#fff!important;border-color:var(--consent-accent)!important}

/* Ein primärer Button, darunter ein zugänglicher Textlink zum Center (Klaus, 18.10.2026). */
.cky-consent-container .cky-notice-btn-wrapper{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important}
.cky-consent-container .cky-btn-accept{order:0!important}
.cky-consent-container .cky-btn-customize{order:1!important;background:transparent!important;border:0!important;color:var(--consent-accent)!important;box-shadow:none!important;text-decoration:underline!important;text-underline-offset:3px!important;font-weight:400!important;padding:4px 0!important;min-height:44px!important;margin:0!important;width:100%!important;cursor:pointer}
