/*
Theme Name: Twenty Seventeen Child
Description: Nhankido Child Theme auf Basis von Twenty Seventeen
Author: Nhankido
Template: twentyseventeen
Version: 1.0.0
Text Domain: twentyseventeen-child
*/

/* =========================================================
   NHANKIDO – ZENTRALES DESIGN SYSTEM
   ========================================================= */

/* =========================================================
   NHANKIDO – ZENTRALES DESIGN SYSTEM
   Startseite | Grundlagenseiten | Lehrtexte | statische Seiten
   ========================================================= */

/* =========================================================
   1. GLOBALE NHANKIDO-VARIABLEN
   ========================================================= */

:root {
	--nh-green: #26735b;
	--nh-logo-green: #3f9b7d;
	--nh-green-dark: #1f5948;
	--nh-green-deep: #163f35;
	--nh-green-soft: #f2f7f4;
	--nh-green-border: #bfd4ca;
	--nh-orange: #f8b156;
	--nh-orange-soft: #fff7ec;
	--nh-orange-border: #f1d3a8;
	--nh-text: #26332e;
	--nh-text-soft: #39423e;
	--nh-muted: #65716c;
	--nh-border: #dce6e1;
	--nh-background-soft: #fafbf9;
	--nh-white: #ffffff;
	--nh-radius-small: 4px;
	--nh-radius-medium: 14px;
	--nh-radius-large: 20px;
	--nh-shadow: 0 10px 34px rgba(20,55,45,.08);
}

/* =========================================================
   2. GEMEINSAME TYPOGRAFIE
   ========================================================= */

.nhankido-home,
.nhankido-page,
.nhankido-article {
	color: var(--nh-text);
	line-height: 1.72;
}

.nhankido-home *,
.nhankido-page *,
.nhankido-article * {
	box-sizing: border-box;
}

.nhankido-home h1,
.nhankido-home h2,
.nhankido-home h3,
.nhankido-page h1,
.nhankido-page h2,
.nhankido-page h3,
.nhankido-article h1,
.nhankido-article h2,
.nhankido-article h3 {
	color: var(--nh-green-deep);
	font-weight: 600;
	line-height: 1.22;
}

.nhankido-home h1,
.nhankido-page h1,
.nhankido-article h1 {
	font-size: clamp(1.8rem,3vw,2.6rem);
	letter-spacing: -.015em;
}

.nhankido-home h2,
.nhankido-page h2,
.nhankido-article h2 {
	font-size: clamp(1.45rem,2.4vw,2rem);
	line-height: 1.25;
}

.nhankido-home h3,
.nhankido-page h3,
.nhankido-article h3 {
	font-size: clamp(1.15rem,1.8vw,1.4rem);
	line-height: 1.3;
}

.nhankido-home p,
.nhankido-page p,
.nhankido-article p {
	margin-top: 0;
}

/* =========================================================
   3. KICKER / META
   ========================================================= */

.nhankido-article .nhankido-kicker,
.nhankido-article .nhankido-meta {
	color: var(--nh-muted);
	font-size: .9em;
}

.nhankido-home .nh-home-kicker {
	display: inline-block;
	margin: 0 0 6px;
	color: var(--nh-muted);
	font-size: .82rem;
	font-weight: 700;
	letter-spacing: .14em;
	line-height: 1.3;
	text-transform: uppercase;
}

.nhankido-page .nhankido-kicker {
	display: block;
	margin: 0 0 6px;
	color: var(--nh-muted);
	font-size: .82rem;
	font-weight: 700;
	letter-spacing: .14em;
	line-height: 1.4;
	text-transform: uppercase;
}

/* =========================================================
   4. ALLGEMEINE KOMPONENTEN
   ========================================================= */

.nhankido-grid {
	display: grid;
	gap: 18px;
	margin: 24px 0;
}

.nhankido-grid--2 {
	grid-template-columns: repeat(2,minmax(0,1fr));
}

.nhankido-grid--3 {
	grid-template-columns: repeat(3,minmax(0,1fr));
}

.nhankido-grid--4 {
	grid-template-columns: repeat(4,minmax(0,1fr));
}

.nhankido-grid--6 {
	grid-template-columns: repeat(6,minmax(0,1fr));
}

.nhankido-card {
	padding: 24px;
	background: var(--nh-white);
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-large);
}

.nhankido-card > :first-child {
	margin-top: 0;
}

.nhankido-card > :last-child {
	margin-bottom: 0;
}

.nhankido-card h3 {
	margin: 0 0 12px;
}

.nhankido-card-label {
	display: block;
	margin-bottom: 8px;
	color: var(--nh-green);
	font-size: .8rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.nhankido-mini-card {
	padding: 16px 18px;
	background: var(--nh-background-soft);
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-medium);
	color: var(--nh-green-deep);
	font-weight: 600;
}

.nhankido-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 22px;
}

.nhankido-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 13px 20px;
	background: var(--nh-green);
	border-radius: 999px;
	color: #fff !important;
	font-weight: 700;
	text-decoration: none !important;
	transition: transform .2s ease,background .2s ease,box-shadow .2s ease;
}

.nhankido-button:hover {
	background: var(--nh-green-dark);
	box-shadow: 0 8px 20px rgba(38,115,91,.18);
	transform: translateY(-2px);
}

.nhankido-button--light {
	background: transparent;
	border: 1px solid var(--nh-green-border);
	color: var(--nh-green-dark) !important;
}

.nhankido-button--light:hover {
	background: var(--nh-green-soft);
}

/* =========================================================
   5. STARTSEITE – GRUNDLAYOUT
   ========================================================= */

.nhankido-home {
	margin-top: 0;
	padding-top: 0;
}

.nhankido-home section {
	margin: 34px 0;
}

.nhankido-home section:first-child {
	margin-top: 0;
}

.nhankido-home section:last-child {
	margin-bottom: 30px;
}

.nhankido-home .nh-home-inner {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 24px;
}

.nhankido-home .nh-home-lead {
	max-width: 820px;
	margin: 0;
	color: var(--nh-muted);
	font-size: 1.08rem;
	line-height: 1.6;
}

/* =========================================================
   6. STARTSEITE – ABSCHNITTSKÖPFE
   ========================================================= */

.nhankido-home .nh-home-section-head {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin: 0 0 22px;
	padding: 0;
}

.nhankido-home .nh-home-section-head .nh-home-kicker {
	display: block;
	margin: 0 0 7px !important;
	padding: 0 !important;
}

.nhankido-home .nh-home-section-head h2 {
	margin: 0 0 10px !important;
	padding: 0 !important;
}

.nhankido-home .nh-home-section-head .nh-home-lead {
	margin: 0 !important;
	padding: 0 !important;
}

/* =========================================================
   7. STARTSEITE – BUTTONS
   ========================================================= */

.nhankido-home .nh-home-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
}

.nhankido-home .nh-home-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 13px 20px;
	background: var(--nh-green);
	border-radius: 999px;
	color: #fff !important;
	font-weight: 700;
	text-decoration: none !important;
	transition: transform .2s ease,background .2s ease,box-shadow .2s ease;
}

.nhankido-home .nh-home-button:hover {
	background: var(--nh-green-dark);
	box-shadow: 0 8px 20px rgba(38,115,91,.18);
	transform: translateY(-2px);
}

.nhankido-home .nh-home-button--light {
	background: transparent;
	border: 1px solid var(--nh-green-border);
	color: var(--nh-green-dark) !important;
}

/* =========================================================
   8. STARTSEITE – HERO
   ========================================================= */

.nhankido-home .nh-home-hero {
	position: relative;
	overflow: hidden;
	margin-top: 0 !important;
	padding: clamp(34px,5vw,56px);
	background: linear-gradient(120deg,rgba(22,63,53,.96),rgba(38,115,91,.88));
	border-radius: 28px;
	color: #fff;
}

.nhankido-home .nh-home-hero::after {
	content: "";
	position: absolute;
	top: -140px;
	right: -120px;
	width: 360px;
	height: 360px;
	border: 1px solid rgba(255,255,255,.16);
	border-radius: 50%;
	pointer-events: none;
}

.nhankido-home .nh-home-hero .nh-home-kicker {
	display: block;
	margin: 0 0 10px !important;
	color: #fff;
}

.nhankido-home .nh-home-hero h1 {
	max-width: 850px;
	margin: 0 0 16px !important;
	color: #fff;
	font-size: clamp(1.75rem,2.8vw,2.45rem);
}

.nhankido-home .nh-home-hero p {
	max-width: 760px;
	margin: 0 0 22px;
	color: #fff;
	font-size: clamp(1rem,1.6vw,1.15rem);
	line-height: 1.65;
	opacity: .94;
}

.nhankido-home .nh-home-hero h1 + p {
	margin-bottom: 24px;
	font-size: clamp(.98rem,1.4vw,1.08rem);
}

.nhankido-home .nh-home-hero .nh-home-actions {
	margin-top: 4px;
}

.nhankido-home .nh-home-hero .nh-home-button {
	background: var(--nh-orange);
	color: var(--nh-green-deep) !important;
}

.nhankido-home .nh-home-hero .nh-home-button--light {
	background: transparent;
	border-color: rgba(255,255,255,.45);
	color: #fff !important;
}

/* =========================================================
   9. STARTSEITE – EINSTIEGSKARTEN
   ========================================================= */

.nhankido-home .nh-home-grid {
	display: grid;
	grid-template-columns: repeat(4,minmax(0,1fr));
	gap: 16px;
	margin-top: 0;
}

.nhankido-home .nh-home-card,
.nhankido-home .nh-home-article {
	padding: 22px 24px;
	background: #fff;
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-large);
}

.nhankido-home .nh-home-card {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	box-shadow: var(--nh-shadow);
}

.nhankido-home .nh-home-card-icon {
	margin: 6px 0 10px !important;
	font-size: 1.4rem;
	line-height: 1;
}

.nhankido-home .nh-home-card .nh-home-card-icon + h3 {
	margin: 0 0 10px !important;
	font-size: clamp(1.08rem,1.5vw,1.25rem);
}

.nhankido-home .nh-home-card p,
.nhankido-home .nh-home-article p {
	color: var(--nh-muted);
	font-size: .96rem;
}

.nhankido-home .nh-home-card p {
	margin: 0;
	line-height: 1.58;
}

.nhankido-home .nh-home-card a,
.nhankido-home .nh-home-article a {
	color: var(--nh-green);
	font-weight: 700;
	text-decoration: none;
}

.nhankido-home .nh-home-card a {
	margin-top: auto;
	padding-top: 14px;
}

/* =========================================================
   10. STARTSEITE – DREI SÄULEN
   ========================================================= */

.nhankido-home .nh-home-pillars {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 16px;
	margin-top: 0;
}

.nhankido-home .nh-home-pillar {
	padding: 30px;
	background: var(--nh-green-soft);
	border: 1px solid var(--nh-green-border);
	border-radius: var(--nh-radius-large);
}

.nhankido-home .nh-home-pillar h3 {
	margin-top: 0;
}

.nhankido-home .nh-home-pillar-label {
	display: block;
	margin-bottom: 8px;
	color: var(--nh-green);
	font-size: .82rem;
	font-weight: 800;
	letter-spacing: .08em;
}

/* =========================================================
   11. STARTSEITE – KERNGEDANKE
   ========================================================= */

.nhankido-home .nh-home-core {
	margin-top: 32px;
	padding: 30px;
	background: var(--nh-green-deep);
	border-radius: var(--nh-radius-large);
	color: #fff;
	font-size: clamp(1.15rem,2vw,1.55rem);
	font-weight: 600;
	text-align: center;
}

.nhankido-home .nh-home-core strong {
	color: var(--nh-orange);
}

/* =========================================================
   12. STARTSEITE – DIMENSIONEN
   ========================================================= */

.nhankido-home .nh-home-dimensions {
	padding: clamp(30px,5vw,52px);
	background: var(--nh-green-soft);
	border: 1px solid var(--nh-green-border);
	border-radius: 26px;
}

.nhankido-home .nh-home-dimensions h2 {
	margin-top: 0;
}

.nhankido-home .nh-home-dimension-grid {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 12px;
	margin: 30px 0;
}

.nhankido-home .nh-home-dimension {
	padding: 16px 18px;
	background: #fff;
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-medium);
}

.nhankido-home .nh-home-dimension span {
	display: block;
	color: var(--nh-orange);
	font-size: .78rem;
	font-weight: 800;
}

.nhankido-home .nh-home-dimension strong {
	display: block;
	margin-top: 3px;
	color: var(--nh-green-deep);
}

/* =========================================================
   13. STARTSEITE – LEHRTEXTE
   ========================================================= */

.nhankido-home .nh-home-articles {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 16px;
	margin-top: 0;
}

.nhankido-home .nh-home-article h3 {
	margin: 8px 0 12px;
}

.nhankido-home .nh-home-article-category {
	color: var(--nh-green);
	font-size: .8rem;
	font-weight: 700;
	text-transform: uppercase;
}

/* =========================================================
   14. STARTSEITE – PRAXIS
   ========================================================= */

.nhankido-home .nh-home-practice {
	padding: clamp(30px,5vw,52px);
	background: var(--nh-orange-soft);
	border: 1px solid var(--nh-orange-border);
	border-radius: 26px;
}

.nhankido-home .nh-home-practice h2 {
	margin-top: 0;
}

.nhankido-home .nh-home-practice-grid {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 16px;
	margin-top: 0;
}

.nhankido-home .nh-home-practice-item {
	padding: 22px;
	background: rgba(255,255,255,.72);
	border-radius: var(--nh-radius-medium);
}

.nhankido-home .nh-home-practice-item strong {
	display: block;
	margin-bottom: 6px;
	color: var(--nh-green-deep);
}

/* =========================================================
   15. STARTSEITE – HERKUNFT
   ========================================================= */

.nhankido-home .nh-home-origin {
	display: grid;
	grid-template-columns: minmax(0,1fr) minmax(0,1.15fr);
	align-items: center;
	gap: clamp(40px,6vw,72px);
}

.nhankido-home .nh-home-origin h2 {
	margin-top: 0;
}

.nhankido-home .nh-home-origin-visual {
	width: 100%;
	overflow: hidden;
	padding: 0;
	background: transparent;
	border-radius: 24px;
}

.nhankido-home .nh-home-origin-visual img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 24px;
}

.nhankido-home .nh-home-origin > div:last-child {
	max-width: 620px;
}

/* =========================================================
   16. STARTSEITE – ABSCHLUSS
   ========================================================= */

.nhankido-home .nh-home-closing {
	padding: clamp(38px,6vw,62px);
	background: var(--nh-green-deep);
	border-radius: 26px;
	color: #fff;
	text-align: center;
}

.nhankido-home .nh-home-closing h2,
.nhankido-home .nh-home-closing p {
	color: #fff;
}

.nhankido-home .nh-home-closing h2 {
	margin-top: 0;
}

.nhankido-home .nh-home-closing p {
	max-width: 660px;
	margin: 0 auto 26px;
}

/* =========================================================
   17. GRUNDLAGENSEITEN
   ========================================================= */

.nhankido-page {
	max-width: 1180px;
	margin: 0 auto;
	padding-top: 0;
}

.nhankido-page .nhankido-page-section {
	margin: 0;
	padding: 30px 0;
}

.nhankido-page > .nhankido-page-section:first-child {
	padding-top: 8px;
}

.nhankido-page > .nhankido-page-section:last-child {
	padding-bottom: 20px;
}

.nhankido-page .nhankido-kicker + h1,
.nhankido-page .nhankido-kicker + h2 {
	margin-top: 0 !important;
}

.nhankido-page h1 {
	margin: 0 0 14px !important;
}

.nhankido-page h2 {
	margin: 0 0 10px !important;
}

.nhankido-page h3 {
	margin: 0 0 10px !important;
}

.nhankido-page .nhankido-page-lead {
	max-width: 880px;
	margin: 0 0 16px;
	color: var(--nh-muted);
	font-size: 1.08rem;
	line-height: 1.65;
}

.nhankido-page p {
	margin: 0 0 14px;
}

.nhankido-page p:last-child {
	margin-bottom: 0;
}

.nhankido-page .nhankido-page-section-head {
	display: flex;
	flex-direction: column;
	gap: 0;
	margin: 0 0 20px;
}

.nhankido-page .nhankido-page-section-head .nhankido-kicker {
	margin: 0 0 6px !important;
}

.nhankido-page .nhankido-page-section-head h2 {
	margin: 0 0 10px !important;
}

.nhankido-page .nhankido-page-section-head .nhankido-page-lead {
	margin: 0;
}

.nhankido-page .nhankido-page-question {
	margin: 20px 0 16px;
	padding: 20px 22px;
	background: var(--nh-green-soft);
	border-left: 5px solid var(--nh-green);
	border-radius: var(--nh-radius-small);
}

.nhankido-page .nhankido-page-question-list {
	margin: 20px 0;
	padding: 20px 22px;
	background: var(--nh-background-soft);
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-medium);
}

.nhankido-page .nhankido-page-question-list p {
	margin-bottom: 10px;
}

.nhankido-page .nhankido-highlight,
.nhankido-page .nhankido-impulse,
.nhankido-page .nhankido-core {
	margin-top: 20px;
	margin-bottom: 0;
}

.nhankido-page .nhankido-grid {
	margin: 20px 0 0;
}

.nhankido-page .nhankido-page-section-head + .nhankido-grid {
	margin-top: 0;
}

.nhankido-page .nhankido-card {
	padding: 24px 26px;
}

.nhankido-page .nhankido-card-label {
	margin-bottom: 10px;
}

.nhankido-page .nhankido-card h3 {
	margin: 0 0 12px !important;
}

.nhankido-page .nhankido-actions {
	margin-top: 22px;
}

/* =========================================================
   18. DREI ERFAHRUNGSRÄUME – RADIO-TABS
   ========================================================= */

.nhankido-page .nhankido-page-section--tabs {
	padding-top: 28px;
	padding-bottom: 28px;
}

.nhankido-page .nhankido-page-section--tabs .nhankido-page-section-head {
	margin-bottom: 16px;
}

.nhankido-page .nhankido-radio-tabs {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0;
}

.nhankido-page .nhankido-radio-tab-input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
}

.nhankido-page .nhankido-radio-tab-nav {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 14px !important;
	width: 100% !important;
	max-width: 760px;
	margin: 0 auto 20px !important;
	padding: 0 !important;
}

.nhankido-page .nhankido-radio-tab-label {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 1 220px !important;
	width: 220px !important;
	max-width: 220px !important;
	min-width: 150px !important;
	min-height: 44px;
	margin: 0 !important;
	padding: 10px 18px !important;
	background: var(--nh-white);
	border: 1px solid var(--nh-green-border);
	border-radius: 999px;
	color: var(--nh-green-deep);
	font-size: .98rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	cursor: pointer;
}

.nhankido-page .nhankido-radio-tab-label:hover {
	background: var(--nh-green-soft);
	border-color: var(--nh-green);
}

.nhankido-page .nhankido-radio-tabs:has(#nhankido-radio-koerper:checked) .nhankido-radio-tab-label--koerper,
.nhankido-page .nhankido-radio-tabs:has(#nhankido-radio-bewusstsein:checked) .nhankido-radio-tab-label--bewusstsein,
.nhankido-page .nhankido-radio-tabs:has(#nhankido-radio-leben:checked) .nhankido-radio-tab-label--leben {
	background: var(--nh-green);
	border-color: var(--nh-green);
	color: #fff;
}

.nhankido-page .nhankido-radio-tab-panel {
	display: none;
	width: 100%;
	margin: 0;
	padding: 26px 30px;
	background: var(--nh-background-soft);
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-large);
}

.nhankido-page .nhankido-radio-tabs:has(#nhankido-radio-koerper:checked) .nhankido-radio-tab-panel--koerper,
.nhankido-page .nhankido-radio-tabs:has(#nhankido-radio-bewusstsein:checked) .nhankido-radio-tab-panel--bewusstsein,
.nhankido-page .nhankido-radio-tabs:has(#nhankido-radio-leben:checked) .nhankido-radio-tab-panel--leben {
	display: block;
}

/* =========================================================
   19. PRAXIS – INTERAKTIVE RADIO-TABS
   ========================================================= */

.nhankido-page .nhankido-practice-tabs,
.nhankido-article .nhankido-practice-tabs {
	position: relative;
	width: 100%;
	margin: 24px 0 0;
	padding: 0;
}

.nhankido-page .nhankido-practice-tab-input,
.nhankido-article .nhankido-practice-tab-input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

.nhankido-page .nhankido-practice-tab-nav,
.nhankido-article .nhankido-practice-tab-nav {
	display: grid;
	grid-template-columns: repeat(6,minmax(0,1fr));
	gap: 9px;
	margin: 0 0 16px;
}

.nhankido-page .nhankido-practice-tab-label,
.nhankido-article .nhankido-practice-tab-label {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 10px 8px;
	background: rgba(255,255,255,.78);
	border: 1px solid var(--nh-green-border);
	border-radius: 999px;
	color: var(--nh-green-deep);
	font-size: .9rem;
	font-weight: 700;
	cursor: pointer;
}

.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-meditation:checked) .nhankido-practice-tab-label--meditation,
.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-atem:checked) .nhankido-practice-tab-label--atem,
.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-bewegung:checked) .nhankido-practice-tab-label--bewegung,
.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-kampfkunst:checked) .nhankido-practice-tab-label--kampfkunst,
.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-reflexion:checked) .nhankido-practice-tab-label--reflexion,
.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-alltag:checked) .nhankido-practice-tab-label--alltag {
	background: var(--nh-green);
	border-color: var(--nh-green);
	color: #fff;
}

.nhankido-page .nhankido-practice-tab-panel,
.nhankido-article .nhankido-practice-tab-panel {
	display: none;
	padding: 24px 26px;
	background: rgba(255,255,255,.58);
	border: 1px solid var(--nh-green-border);
	border-radius: var(--nh-radius-large);
}

.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-meditation:checked) .nhankido-practice-tab-panel--meditation,
.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-atem:checked) .nhankido-practice-tab-panel--atem,
.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-bewegung:checked) .nhankido-practice-tab-panel--bewegung,
.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-kampfkunst:checked) .nhankido-practice-tab-panel--kampfkunst,
.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-reflexion:checked) .nhankido-practice-tab-panel--reflexion,
.nhankido-page .nhankido-practice-tabs:has(#nhankido-practice-alltag:checked) .nhankido-practice-tab-panel--alltag {
	display: block;
}

/* =========================================================
   20. 12 DIMENSIONEN – INTERAKTIVE LANDKARTE
   ========================================================= */

.nhankido-page .nhankido-page-section--dimensions {
	padding-top: 28px;
	padding-bottom: 28px;
}

.nhankido-page .nhankido-page-section--dimensions .nhankido-page-section-head {
	margin-bottom: 22px;
}

.nhankido-page .nhankido-dimension-tabs {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0;
}

.nhankido-page .nhankido-dimension-input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
}

/* =========================================================
   21. DIMENSIONEN – DREI HAUPTBEREICHE
   ========================================================= */

.nhankido-page .nhankido-dimension-map {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 22px;
	width: 100%;
	margin: 0 0 22px;
}

.nhankido-page .nhankido-dimension-column {
	min-width: 0;
}

.nhankido-page .nhankido-dimension-group-title {
	display: block;
	margin: 0 0 10px;
	color: var(--nh-muted);
	font-size: .76rem;
	font-weight: 800;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.nhankido-page .nhankido-dimension-column-nav {
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
}

/* =========================================================
   22. DIMENSIONEN – NAVIGATION
   ========================================================= */

.nhankido-page .nhankido-dimension-label {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	width: 100%;
	min-height: 48px;
	padding: 9px 13px;
	background: var(--nh-white);
	border: 1px solid var(--nh-border);
	border-radius: 14px;
	color: var(--nh-green-deep);
	cursor: pointer;
	transition: background .2s ease,border-color .2s ease,transform .2s ease;
}

.nhankido-page .nhankido-dimension-label > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 32px;
	width: 32px;
	height: 32px;
	background: var(--nh-green-soft);
	border-radius: 50%;
	color: var(--nh-green);
	font-size: .75rem;
	font-weight: 800;
}

.nhankido-page .nhankido-dimension-label > strong {
	color: inherit;
	font-size: .91rem;
	font-weight: 700;
}

.nhankido-page .nhankido-dimension-label:hover {
	background: var(--nh-green-soft);
	border-color: var(--nh-green-border);
	transform: translateY(-1px);
}

/* =========================================================
   23. DIMENSIONEN – AKTIVER TAB
   ========================================================= */

.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-01:checked) .nhankido-dimension-label--01,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-02:checked) .nhankido-dimension-label--02,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-03:checked) .nhankido-dimension-label--03,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-04:checked) .nhankido-dimension-label--04,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-05:checked) .nhankido-dimension-label--05,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-06:checked) .nhankido-dimension-label--06,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-07:checked) .nhankido-dimension-label--07,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-08:checked) .nhankido-dimension-label--08,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-09:checked) .nhankido-dimension-label--09,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-10:checked) .nhankido-dimension-label--10,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-11:checked) .nhankido-dimension-label--11,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-12:checked) .nhankido-dimension-label--12 {
	background: var(--nh-green);
	border-color: var(--nh-green);
	color: #fff;
}

.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-01:checked) .nhankido-dimension-label--01 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-02:checked) .nhankido-dimension-label--02 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-03:checked) .nhankido-dimension-label--03 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-04:checked) .nhankido-dimension-label--04 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-05:checked) .nhankido-dimension-label--05 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-06:checked) .nhankido-dimension-label--06 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-07:checked) .nhankido-dimension-label--07 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-08:checked) .nhankido-dimension-label--08 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-09:checked) .nhankido-dimension-label--09 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-10:checked) .nhankido-dimension-label--10 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-11:checked) .nhankido-dimension-label--11 span,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-12:checked) .nhankido-dimension-label--12 span {
	background: rgba(255,255,255,.17);
	color: #fff;
}

/* =========================================================
   24. DIMENSIONEN – DETAILBEREICH
   ========================================================= */

.nhankido-page .nhankido-dimension-content {
	width: 100%;
}

.nhankido-page .nhankido-dimension-panel {
	display: none;
	width: 100%;
	padding: 26px 30px;
	background: var(--nh-background-soft);
	border: 1px solid var(--nh-border);
	border-left: 5px solid var(--nh-green);
	border-radius: var(--nh-radius-large);
}

.nhankido-page .nhankido-dimension-panel h3 {
	margin: 0 0 12px !important;
}

.nhankido-page .nhankido-dimension-panel p {
	margin: 0 0 14px;
}

/* =========================================================
   25. DIMENSIONEN – DIE SPANNUNG
   ========================================================= */

.nhankido-page .nhankido-dimension-tension {
	margin: 16px 0;
	padding: 13px 16px;
	background: rgba(38,115,91,.045);
	border: 1px solid rgba(38,115,91,.08);
	border-radius: 10px;
	color: var(--nh-text);
	font-size: .96em;
	line-height: 1.6;
}

.nhankido-page .nhankido-dimension-tension strong {
	color: var(--nh-green-deep);
}

/* =========================================================
   26. DIMENSIONEN – IMPULS / CORE
   ========================================================= */

.nhankido-page .nhankido-dimension-panel .nhankido-impulse {
	margin: 16px 0 0;
	padding: 16px 18px;
	background: var(--nh-green-soft);
	border-left: 4px solid var(--nh-green);
	border-radius: var(--nh-radius-small);
}

.nhankido-page .nhankido-dimension-panel .nhankido-core {
	margin: 18px 0 0;
	padding: 18px 20px;
}

/* =========================================================
   27. DIMENSIONEN – VERTIEFUNGSLINK
   ========================================================= */

.nhankido-page .nhankido-dimension-more {
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid var(--nh-border);
}

.nhankido-page .nhankido-dimension-more a {
	display: inline-flex;
	align-items: center;
	color: var(--nh-green);
	font-size: .93rem;
	font-weight: 700;
	text-decoration: none;
	transition: color .2s ease,transform .2s ease;
}

.nhankido-page .nhankido-dimension-more a:hover {
	color: var(--nh-green-dark);
	transform: translateX(3px);
}

/* =========================================================
   28. DIMENSIONEN – AKTIVE PANELS
   ========================================================= */

.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-01:checked) .nhankido-dimension-panel--01,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-02:checked) .nhankido-dimension-panel--02,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-03:checked) .nhankido-dimension-panel--03,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-04:checked) .nhankido-dimension-panel--04,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-05:checked) .nhankido-dimension-panel--05,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-06:checked) .nhankido-dimension-panel--06,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-07:checked) .nhankido-dimension-panel--07,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-08:checked) .nhankido-dimension-panel--08,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-09:checked) .nhankido-dimension-panel--09,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-10:checked) .nhankido-dimension-panel--10,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-11:checked) .nhankido-dimension-panel--11,
.nhankido-page .nhankido-dimension-tabs:has(#nh-dim-12:checked) .nhankido-dimension-panel--12 {
	display: block;
}

/* =========================================================
   29. LEHRTEXTE – KEYPOINTS
   ========================================================= */

.nhankido-article .nhankido-keypoints {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 14px;
	margin: 24px 0 30px;
}

.nhankido-article .nhankido-keypoint {
	padding: 18px 20px;
	background: var(--nh-background-soft);
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-small);
}

.nhankido-article .nhankido-keypoint strong {
	display: block;
	margin-bottom: 6px;
	color: var(--nh-green);
}

/* =========================================================
   30. LEHRTEXTE – QUICKNAV
   ========================================================= */

.nhankido-article .nhankido-quicknav {
	margin: 28px 0;
	padding: 22px 24px;
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-small);
}

.nhankido-article .nhankido-quicknav a {
	color: var(--nh-green);
	text-underline-offset: 3px;
}

/* =========================================================
   31. GEMEINSAME BOXEN
   ========================================================= */

.nhankido-article .nhankido-box,
.nhankido-page .nhankido-box,
.nhankido-article .nhankido-highlight,
.nhankido-page .nhankido-highlight,
.nhankido-article .nhankido-core,
.nhankido-page .nhankido-core,
.nhankido-article .nhankido-impulse,
.nhankido-page .nhankido-impulse,
.nhankido-article .nhankido-reflection,
.nhankido-page .nhankido-reflection,
.nhankido-article .nhankido-media,
.nhankido-page .nhankido-media {
	padding: 22px 24px;
	border-radius: var(--nh-radius-small);
}

.nhankido-article .nhankido-box,
.nhankido-article .nhankido-highlight,
.nhankido-article .nhankido-core,
.nhankido-article .nhankido-impulse,
.nhankido-article .nhankido-reflection,
.nhankido-article .nhankido-media {
	margin: 28px 0;
}

.nhankido-page .nhankido-box {
	margin: 20px 0;
}

/* =========================================================
   32. GRÜNE BOXEN
   ========================================================= */

.nhankido-article .nhankido-box--essence,
.nhankido-page .nhankido-box--essence,
.nhankido-article .nhankido-box--practice,
.nhankido-page .nhankido-box--practice,
.nhankido-article .nhankido-core,
.nhankido-page .nhankido-core,
.nhankido-article .nhankido-impulse,
.nhankido-page .nhankido-impulse,
.nhankido-article .nhankido-reflection,
.nhankido-page .nhankido-reflection {
	background: var(--nh-green-soft);
	border-left: 5px solid var(--nh-green);
}

.nhankido-article .nhankido-box--practice,
.nhankido-page .nhankido-box--practice {
	border-top: 1px solid var(--nh-green-border);
	border-right: 1px solid var(--nh-green-border);
	border-bottom: 1px solid var(--nh-green-border);
}

/* =========================================================
   33. ORANGE HERVORHEBUNG
   ========================================================= */

.nhankido-article .nhankido-highlight,
.nhankido-page .nhankido-highlight {
	background: var(--nh-orange-soft);
	border-left: 5px solid var(--nh-orange);
}

/* =========================================================
   34. MEDIEN
   ========================================================= */

.nhankido-article .nhankido-media,
.nhankido-page .nhankido-media {
	background: var(--nh-background-soft);
	border-left: 5px solid var(--nh-green-border);
}

.nhankido-article iframe,
.nhankido-page iframe {
	max-width: 100%;
}

/* =========================================================
   35. ZITATE
   ========================================================= */

.nhankido-article .nhankido-quote,
.nhankido-page .nhankido-quote {
	margin: 28px 0;
	padding: 18px 24px;
	background: var(--nh-background-soft);
	border-left: 4px solid var(--nh-green-border);
	color: var(--nh-text-soft);
	font-style: italic;
}

.nhankido-article .nhankido-quote-final,
.nhankido-page .nhankido-quote-final {
	background: var(--nh-green-soft);
	border-left-color: var(--nh-green);
}

/* =========================================================
   36. ABSCHLUSS
   ========================================================= */

.nhankido-article .nhankido-closing,
.nhankido-page .nhankido-closing {
	margin: 28px 0;
	padding: 24px 0;
	border-top: 1px solid var(--nh-border);
	border-bottom: 1px solid var(--nh-border);
	text-align: center;
}

.nhankido-article .nhankido-closing--dark,
.nhankido-page .nhankido-closing--dark {
	padding: 28px;
	background: linear-gradient(135deg,var(--nh-green-deep),var(--nh-green));
	border: none;
	border-radius: var(--nh-radius-small);
	color: #fff;
}

.nhankido-article .nhankido-closing--dark h2,
.nhankido-article .nhankido-closing--dark h3,
.nhankido-article .nhankido-closing--dark p,
.nhankido-article .nhankido-closing--dark strong,
.nhankido-page .nhankido-closing--dark h2,
.nhankido-page .nhankido-closing--dark h3,
.nhankido-page .nhankido-closing--dark p,
.nhankido-page .nhankido-closing--dark strong {
	color: #fff;
}

.nhankido-page .nhankido-closing--dark .nhankido-button--light,
.nhankido-article .nhankido-closing--dark .nhankido-button--light {
	border-color: rgba(255,255,255,.48);
	color: #fff !important;
}

/* Quotes innerhalb dunkler Nhankido-Flächen */
.nhankido-article .nhankido-closing--dark .nhankido-quote,
.nhankido-page .nhankido-closing--dark .nhankido-quote,
.nhankido-article .nhankido-closing--dark .nhankido-quote-final,
.nhankido-page .nhankido-closing--dark .nhankido-quote-final {
	margin: 28px 0;
	padding: 24px 28px;
	background: #f7faf8;
	border-left: 4px solid var(--nh-orange);
	border-radius: var(--nh-radius-small);
	color: var(--nh-green-deep) !important;
	font-size: 1.15em;
	line-height: 1.6;
	text-align: center;
}

.nhankido-article .nhankido-closing--dark .nhankido-quote *,
.nhankido-page .nhankido-closing--dark .nhankido-quote *,
.nhankido-article .nhankido-closing--dark .nhankido-quote-final *,
.nhankido-page .nhankido-closing--dark .nhankido-quote-final * {
	color: var(--nh-green-deep) !important;
}

/* =========================================================
   37. ANKER
   ========================================================= */

.nhankido-home [id],
.nhankido-page [id],
.nhankido-article [id] {
	scroll-margin-top: 100px;
}

/* =========================================================
   38. FULL WIDTH – STATISCHE SEITEN
   ========================================================= */

body.page #secondary,
body.page #secondary.widget-area,
body.page aside#secondary,
body.page .sidebar,
body.page #sidebar {
	display: none !important;
}

body.page #primary,
body.page .primary,
body.page .content-area {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.page #primary .site-main,
body.page .content-area .site-main {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-top: 0 !important;
}

body.page #primary article,
body.page #primary .hentry,
body.page #primary .entry-content,
body.page .content-area article,
body.page .content-area .hentry,
body.page .content-area .entry-content {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
}

/* =========================================================
   39. NORMALE STATISCHE SEITEN
   ========================================================= */

body.page:not(.home) #content,
body.page:not(.home) .site-content {
	margin-top: 0 !important;
	padding-top: 20px !important;
}

body.page:not(.home) #primary,
body.page:not(.home) .content-area,
body.page:not(.home) .site-main {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* =========================================================
   39.1 MODERNE NHANKIDO-SEITEN
   Twenty-Seventeen-Layout neutralisieren
   ========================================================= */

body.page:has(.nhankido-page) .entry-header {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}

body.page:has(.nhankido-page) .edit-link,
body.page:has(.nhankido-page) .post-edit-link {
	display: none !important;
}

body.page:has(.nhankido-page) article,
body.page:has(.nhankido-page) .hentry,
body.page:has(.nhankido-page) .entry-content {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	float: none !important;
}

body.page:has(.nhankido-page) .nhankido-page {
	display: flow-root;
	clear: both;
	width: 100%;
	max-width: 1180px;
	margin-left: auto;
	margin-right: auto;
}

body.page:has(.nhankido-page) .entry-content::before,
body.page:has(.nhankido-page) .entry-content::after {
	float: none !important;
}

/* =========================================================
   39.2 MODERNE NHANKIDO-KATEGORIEN
   Theme-Kategorietitel entfernen,
   Kategorie-Beschreibung jedoch erhalten
   ========================================================= */

body.category:has(.nhankido-page) .page-header .page-title {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.category:has(.nhankido-page) .page-header {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.category:has(.nhankido-page) .archive-description {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.category:has(.nhankido-page) .site-main {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.category:has(.nhankido-page) .nhankido-page {
	display: flow-root;
	clear: both;
	width: 100%;
	max-width: 1180px;
	margin-left: auto;
	margin-right: auto;
}

/* =========================================================
   40. STARTSEITE – WORDPRESS-LAYOUT NEUTRALISIEREN
   ========================================================= */

body.home #content,
body.home .site-content,
body.home #primary,
body.home .primary,
body.home .content-area,
body.home .site-main,
body.home article,
body.home .hentry,
body.home .entry-content {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.home .site-main > article,
body.home article.page,
body.home article.hentry {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin: 0 !important;
}

body.home .entry-header {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.home .edit-link,
body.home .post-edit-link,
body.home article.page > .entry-footer {
	display: none !important;
}

body.home .nhankido-home {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.home .nhankido-home > .nh-home-hero {
	width: 100% !important;
	margin-top: 0 !important;
}

/* =========================================================
   41. FOOTER – NHANKIDO GESAMTLAYOUT
   ========================================================= */

#colophon {
	position: relative !important;
	left: 50% !important;
	width: 100vw !important;
	max-width: none !important;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
	padding: 0 !important;
	background: transparent !important;
}

#colophon *,
#colophon *::before,
#colophon *::after {
	box-sizing: border-box;
	box-shadow: none;
}

#colophon .wrap,
#colophon .footer-widgets,
#colophon .widget-area,
#colophon .widget-column,
#colophon .widget,
#colophon .widget_custom_html,
#colophon .custom-html-widget {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	float: none !important;
}

#colophon .widget-column.footer-widget-1 {
	display: block !important;
}

#colophon .widget-column.footer-widget-2 {
	display: none !important;
}

#colophon .site-info {
	display: none !important;
}

#colophon .nhankido-footer {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

/* =========================================================
   41.1 FOOTER – NAVIGATION
   ========================================================= */

#colophon .nhankido-footer-nav {
	width: 100%;
	margin: 0;
	padding: 42px 24px 38px;
	background: var(--nh-orange);
	color: var(--nh-green-deep);
}

#colophon .nhankido-footer-grid {
	display: grid !important;
	grid-template-columns: repeat(4,minmax(180px,1fr)) !important;
	gap: 46px !important;
	width: calc(100% - 48px) !important;
	max-width: 1320px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

#colophon .nhankido-footer-column {
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
}

#colophon .nhankido-footer-column h3 {
	margin: 0 0 16px !important;
	padding: 0 !important;
	color: var(--nh-green-deep) !important;
	font-size: .92rem;
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: .1em;
	text-transform: uppercase;
	word-break: normal;
	overflow-wrap: normal;
	hyphens: none;
}

#colophon .nhankido-footer-column h3::after {
	content: "";
	display: block;
	width: 42px;
	height: 2px;
	margin-top: 11px;
	background: rgba(255,255,255,.82);
}

#colophon .nhankido-footer-column ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

#colophon .nhankido-footer-column li {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	list-style: none !important;
}

#colophon .nhankido-footer-column a {
	display: block;
	margin: 0;
	padding: 7px 0 8px;
	color: var(--nh-green-deep) !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(255,255,255,.38) !important;
	font-size: .95rem;
	font-weight: 500;
	line-height: 1.45;
	text-decoration: none !important;
	opacity: .92;
	word-break: normal;
	overflow-wrap: normal;
	hyphens: none;
	transition: color .2s ease,opacity .2s ease,border-color .2s ease;
}

#colophon .nhankido-footer-column a:hover,
#colophon .nhankido-footer-column a:focus {
	color: var(--nh-green-deep) !important;
	border-bottom-color: rgba(22,63,53,.5) !important;
	opacity: 1;
}

/* =========================================================
   41.2 FOOTER – MARKENABSCHLUSS
   Feintuning: Logo, Claim und vertikaler Rhythmus
   ========================================================= */

#colophon .nhankido-footer-brand {
	width: 100%;
	margin: 0;
	padding: 38px 24px 28px;
	background: var(--nh-green-deep);
	color: #fff;
	text-align: center;
}

#colophon .nhankido-footer-brand-inner {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

#colophon .nhankido-footer-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	margin: 0 0 16px;
}

#colophon .nhankido-footer-mark {
	position: relative;
	display: block;
	flex: 0 0 72px;
	width: 72px;
	height: 72px;
	border: 4px solid var(--nh-logo-green);
	border-radius: 48% 52% 50% 47%;
	transform: rotate(-2deg);
}

#colophon .nhankido-footer-human {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 48px;
	height: 48px;
	transform: translate(-54%,-48%) rotate(1deg);
	overflow: visible;
}

#colophon .nhankido-human-stroke {
	fill: var(--nh-logo-green);
}

#colophon .nhankido-human-stroke--left {
	opacity: 1;
}

#colophon .nhankido-human-stroke--right {
	opacity: .96;
}

#colophon .nhankido-footer-wordmark {
	color: var(--nh-logo-green) !important;
	font-size: clamp(1.35rem,2vw,1.8rem);
	font-weight: 800;
	letter-spacing: .22em;
	line-height: 1;
}

#colophon .nhankido-footer-claim {
	margin: 0 0 12px !important;
	color: #fff !important;
	font-size: clamp(1.1rem,2vw,1.4rem);
	font-style: italic;
	line-height: 1.4;
}

#colophon .nhankido-footer-divider {
	display: block;
	width: 54px;
	height: 2px;
	margin: 0 auto 18px;
	background: var(--nh-orange);
}

#colophon .nhankido-footer-mission {
	max-width: 820px;
	margin: 0 auto 20px !important;
	color: var(--nh-logo-green) !important;
	font-size: .98rem;
	font-style: italic;
	line-height: 1.55;
}

#colophon .nhankido-footer-legal {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0;
	margin: 0;
	color: #fff;
}

#colophon .nhankido-footer-legal span,
#colophon .nhankido-footer-legal a {
	color: #fff !important;
	font-size: .88rem;
	line-height: 1.4;
	text-decoration: none !important;
}

#colophon .nhankido-footer-legal > * + *::before {
	content: "|";
	display: inline-block;
	margin: 0 16px;
	color: rgba(255,255,255,.5);
}

#colophon .nhankido-footer-legal a:hover,
#colophon .nhankido-footer-legal a:focus {
	text-decoration: underline !important;
	text-underline-offset: 3px;
}

/* =========================================================
   41.3 FOOTER – TABLET
   ========================================================= */

@media (max-width: 1000px) {
	#colophon .nhankido-footer-grid {
		grid-template-columns: repeat(2,minmax(220px,1fr)) !important;
		gap: 34px 48px !important;
		max-width: 900px !important;
	}
}

/* =========================================================
   41.4 FOOTER – SMARTPHONE
   ========================================================= */

@media (max-width: 620px) {
	#colophon .nhankido-footer-nav {
		padding: 32px 22px;
	}

	#colophon .nhankido-footer-grid {
		grid-template-columns: 1fr !important;
		width: 100% !important;
		gap: 26px !important;
	}

	#colophon .nhankido-footer-brand {
		padding: 34px 20px 26px;
	}

	#colophon .nhankido-footer-logo {
		flex-direction: column;
		gap: 12px;
	}

	#colophon .nhankido-footer-mark {
		flex-basis: 58px;
		width: 58px;
		height: 58px;
		border-width: 3px;
	}

	#colophon .nhankido-footer-human {
		width: 39px;
		height: 39px;
	}

	#colophon .nhankido-footer-wordmark {
		font-size: 1.2rem;
		letter-spacing: .18em;
	}

	#colophon .nhankido-footer-mission {
		font-size: .92rem;
	}

	#colophon .nhankido-footer-legal {
		flex-direction: column;
		gap: 7px;
	}

	#colophon .nhankido-footer-legal > * + *::before {
		content: none;
	}
}

/* =========================================================
   42. RESPONSIVE – TABLET
   ========================================================= */

@media (max-width: 900px) {
	.nhankido-home .nh-home-grid,
	.nhankido-home .nh-home-dimension-grid,
	.nhankido-home .nh-home-practice-grid {
		grid-template-columns: repeat(2,1fr);
	}

	.nhankido-home .nh-home-pillars,
	.nhankido-home .nh-home-origin {
		grid-template-columns: 1fr;
	}

	.nhankido-grid--3,
	.nhankido-grid--4,
	.nhankido-grid--6 {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}

	.nhankido-page .nhankido-practice-tab-nav,
	.nhankido-article .nhankido-practice-tab-nav {
		grid-template-columns: repeat(3,1fr);
	}

	.nhankido-page .nhankido-dimension-map {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.nhankido-page .nhankido-dimension-column-nav {
		grid-template-columns: repeat(4,minmax(0,1fr));
	}

	.nhankido-page .nhankido-dimension-label {
		flex-direction: column;
		justify-content: center;
		min-height: 78px;
		text-align: center;
	}
}

/* =========================================================
   43. RESPONSIVE – KLEINES TABLET
   ========================================================= */

@media (max-width: 700px) {
	.nhankido-grid--2,
	.nhankido-grid--3,
	.nhankido-grid--4,
	.nhankido-grid--6 {
		grid-template-columns: 1fr;
	}

	.nhankido-article .nhankido-keypoints {
		grid-template-columns: 1fr;
	}

	.nhankido-page .nhankido-radio-tab-panel {
		padding: 20px;
	}

	.nhankido-home section {
		margin: 30px 0;
	}

	.nhankido-home .nh-home-section-head {
		margin-bottom: 18px;
	}

	.nhankido-home .nh-home-section-head .nh-home-kicker {
		margin-bottom: 6px !important;
	}

	.nhankido-home .nh-home-section-head h2 {
		margin-bottom: 9px !important;
	}

	.nhankido-home .nh-home-card,
	.nhankido-home .nh-home-article {
		padding: 20px;
	}
}

/* =========================================================
   44. RESPONSIVE – SMARTPHONE
   ========================================================= */

@media (max-width: 620px) {
	.nhankido-home .nh-home-grid,
	.nhankido-home .nh-home-dimension-grid,
	.nhankido-home .nh-home-articles,
	.nhankido-home .nh-home-practice-grid {
		grid-template-columns: 1fr;
	}

	.nhankido-home .nh-home-hero {
		padding: 30px 24px;
		border-radius: 22px;
	}

	.nhankido-home .nh-home-actions,
	.nhankido-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.nhankido-home .nh-home-button,
	.nhankido-button {
		width: 100%;
	}

	.nhankido-page .nhankido-page-section {
		padding: 24px 0;
	}

	.nhankido-page > .nhankido-page-section:first-child {
		padding-top: 4px;
	}

	.nhankido-page .nhankido-card {
		padding: 20px;
	}

	.nhankido-page .nhankido-practice-tab-nav,
	.nhankido-article .nhankido-practice-tab-nav {
		grid-template-columns: repeat(2,1fr);
	}

	.nhankido-page .nhankido-practice-tab-panel,
	.nhankido-article .nhankido-practice-tab-panel {
		padding: 20px;
	}

	.nhankido-page .nhankido-dimension-column-nav {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}

	.nhankido-page .nhankido-dimension-label {
		flex-direction: row;
		justify-content: flex-start;
		min-height: 48px;
		text-align: left;
	}

	.nhankido-page .nhankido-dimension-panel {
		padding: 20px;
	}

	.nhankido-page .nhankido-dimension-more {
		margin-top: 14px;
		padding-top: 12px;
	}
}

/* =========================================================
   45. RESPONSIVE – SEHR KLEINE DISPLAYS
   ========================================================= */

@media (max-width: 600px) {
	.nhankido-article .nhankido-box,
	.nhankido-page .nhankido-box,
	.nhankido-article .nhankido-quicknav,
	.nhankido-article .nhankido-core,
	.nhankido-page .nhankido-core,
	.nhankido-article .nhankido-impulse,
	.nhankido-page .nhankido-impulse,
	.nhankido-article .nhankido-reflection,
	.nhankido-page .nhankido-reflection,
	.nhankido-article .nhankido-quote,
	.nhankido-page .nhankido-quote,
	.nhankido-article .nhankido-highlight,
	.nhankido-page .nhankido-highlight,
	.nhankido-article .nhankido-media,
	.nhankido-page .nhankido-media {
		padding: 18px;
	}
}

/* =========================================================
   46. RESPONSIVE – SEHR SCHMALE SMARTPHONES
   ========================================================= */

@media (max-width: 480px) {
	.nhankido-page .nhankido-radio-tab-nav {
		flex-direction: column !important;
		gap: 7px !important;
	}

	.nhankido-page .nhankido-radio-tab-label {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: none !important;
		border-radius: var(--nh-radius-medium);
	}
}

/* =========================================================
   47. RESPONSIVE – SEHR SCHMAL
   ========================================================= */

@media (max-width: 420px) {
	.nhankido-page .nhankido-practice-tab-nav,
	.nhankido-article .nhankido-practice-tab-nav {
		grid-template-columns: 1fr;
	}

	.nhankido-page .nhankido-practice-tab-label,
	.nhankido-article .nhankido-practice-tab-label {
		border-radius: var(--nh-radius-medium);
	}

	.nhankido-page .nhankido-dimension-column-nav {
		grid-template-columns: 1fr;
	}
}

/* =========================================================
   48. NHANKIDO-ARTIKEL – FULL WIDTH OHNE SIDEBAR
   ========================================================= */

body.single-post:has(.nhankido-article) #secondary,
body.single-post:has(.nhankido-article) #secondary.widget-area,
body.single-post:has(.nhankido-article) aside#secondary,
body.single-post:has(.nhankido-article) .sidebar,
body.single-post:has(.nhankido-article) #sidebar {
	display: none !important;
}

body.single-post:has(.nhankido-article) #primary,
body.single-post:has(.nhankido-article) .primary,
body.single-post:has(.nhankido-article) .content-area {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.single-post:has(.nhankido-article) #primary .site-main,
body.single-post:has(.nhankido-article) .content-area .site-main,
body.single-post:has(.nhankido-article) .site-main {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-top: 0 !important;
}

body.single-post:has(.nhankido-article) #primary article,
body.single-post:has(.nhankido-article) #primary .hentry,
body.single-post:has(.nhankido-article) #primary .entry-content,
body.single-post:has(.nhankido-article) .content-area article,
body.single-post:has(.nhankido-article) .content-area .hentry,
body.single-post:has(.nhankido-article) .content-area .entry-content {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
}

/* =========================================================
   48.1 NHANKIDO-ARTIKEL – TWENTY-SEVENTEEN-SPALTEN AUFHEBEN
   ========================================================= */

body.single-post:has(.nhankido-article) #primary,
body.single-post:has(.nhankido-article) .content-area,
body.single-post:has(.nhankido-article) .site-main {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.single-post:has(.nhankido-article) article,
body.single-post:has(.nhankido-article) .hentry,
body.single-post:has(.nhankido-article) .entry-content {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.single-post:has(.nhankido-article) .nhankido-article {
	width: 100% !important;
	max-width: 1180px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* =========================================================
   49. NHANKIDO-ARTIKEL – KONTROLLIERTE LESEBREITE
   ========================================================= */

body.single-post:has(.nhankido-article) .nhankido-article {
	width: 100%;
	max-width: 1180px;
	margin-left: auto;
	margin-right: auto;
}

.nhankido-article .nhankido-page-section > p,
.nhankido-page .nhankido-page-section > p {
	max-width: 880px;
}

.nhankido-article .nhankido-page-lead,
.nhankido-page .nhankido-page-lead {
	max-width: 880px;
}

.nhankido-article .nhankido-grid,
.nhankido-page .nhankido-grid,
.nhankido-article .nhankido-box,
.nhankido-page .nhankido-box,
.nhankido-article .nhankido-highlight,
.nhankido-page .nhankido-highlight,
.nhankido-article .nhankido-core,
.nhankido-page .nhankido-core,
.nhankido-article .nhankido-impulse,
.nhankido-page .nhankido-impulse,
.nhankido-article .nhankido-page-question,
.nhankido-page .nhankido-page-question,
.nhankido-article .nhankido-page-question-list,
.nhankido-page .nhankido-page-question-list,
.nhankido-article .nhankido-radio-tabs,
.nhankido-page .nhankido-radio-tabs,
.nhankido-article .nhankido-practice-tabs,
.nhankido-page .nhankido-practice-tabs,
.nhankido-article .nhankido-dimension-tabs,
.nhankido-page .nhankido-dimension-tabs,
.nhankido-article .nhankido-closing,
.nhankido-page .nhankido-closing {
	width: 100%;
	max-width: 100%;
}

/* =========================================================
   50. DIMENSIONSARTIKEL – SERIENNAVIGATION
   ========================================================= */

.nhankido-dimension-series-nav {
	display: grid;
	grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
	align-items: center;
	gap: 16px;
	width: 100%;
	margin: 6px 0 28px;
	padding: 12px 16px;
	background: var(--nh-background-soft);
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-medium);
}

.nhankido-dimension-series-nav a {
	color: var(--nh-green);
	font-size: .88rem;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
	transition: color .2s ease;
}

.nhankido-dimension-series-nav a:hover,
.nhankido-dimension-series-nav a:focus {
	color: var(--nh-green-dark);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.nhankido-dimension-series-prev {
	text-align: left;
}

.nhankido-dimension-series-next {
	text-align: right;
}

.nhankido-dimension-series-current {
	text-align: center;
	white-space: nowrap;
}

.nhankido-dimension-series-current span {
	display: block;
	margin-bottom: 2px;
	color: var(--nh-muted);
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .1em;
	line-height: 1.25;
	text-transform: uppercase;
}

.nhankido-dimension-series-current strong {
	color: var(--nh-green-deep);
	font-size: .92rem;
}

/* =========================================================
   51. SERIENNAVIGATION – RESPONSIVE
   ========================================================= */

@media (max-width: 700px) {
	.nhankido-article .nhankido-page-section > p,
	.nhankido-page .nhankido-page-section > p,
	.nhankido-article .nhankido-page-lead,
	.nhankido-page .nhankido-page-lead {
		max-width: 100%;
	}

	.nhankido-dimension-series-nav {
		grid-template-columns: 1fr 1fr;
		gap: 8px 14px;
		padding: 12px 14px;
	}

	.nhankido-dimension-series-current {
		grid-column: 1 / -1;
		grid-row: 1;
		margin-bottom: 3px;
	}

	.nhankido-dimension-series-prev {
		grid-column: 1;
		grid-row: 2;
	}

	.nhankido-dimension-series-next {
		grid-column: 2;
		grid-row: 2;
	}
}

@media (max-width: 480px) {
	.nhankido-dimension-series-nav {
		grid-template-columns: 1fr;
	}

	.nhankido-dimension-series-current,
	.nhankido-dimension-series-prev,
	.nhankido-dimension-series-next {
		grid-column: 1;
		text-align: center;
	}

	.nhankido-dimension-series-current {
		grid-row: 1;
	}

	.nhankido-dimension-series-prev {
		grid-row: 2;
	}

	.nhankido-dimension-series-next {
		grid-row: 3;
	}
}

/* =========================================================
   52. DIMENSIONEN – ACHSENBEZIEHUNG
   ========================================================= */

.nhankido-axis {
	width: 100%;
	margin: 24px 0;
	padding: 24px 28px;
	background: var(--nh-background-soft);
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-large);
}

.nhankido-axis .nhankido-axis-row {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	width: 100% !important;
	gap: 18px !important;
	margin: 0 0 20px !important;
	padding: 0 !important;
}

.nhankido-axis .nhankido-axis-row:last-child {
	margin-bottom: 0 !important;
}

.nhankido-axis .nhankido-axis-pole {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 150px !important;
	width: 150px !important;
	min-width: 150px !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 10px 16px !important;
	background: var(--nh-white);
	border: 1px solid var(--nh-green-border);
	border-radius: 999px;
	color: var(--nh-green-deep);
	font-size: .86rem;
	font-weight: 800;
	letter-spacing: .05em;
	text-align: center;
}

.nhankido-axis .nhankido-axis-line {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 0 34px !important;
	background: linear-gradient(var(--nh-green-border),var(--nh-green-border)) center / 100% 2px no-repeat;
}

.nhankido-axis .nhankido-axis-line::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -1px;
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-right: 9px solid var(--nh-green);
	border-bottom: 6px solid transparent;
	transform: translateY(-50%);
}

.nhankido-axis .nhankido-axis-line::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -1px;
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 9px solid var(--nh-green);
	transform: translateY(-50%);
}

.nhankido-axis .nhankido-axis-line span {
	position: relative !important;
	z-index: 2 !important;
	display: inline-block !important;
	margin: 0 !important;
	padding: 6px 18px !important;
	background: var(--nh-background-soft);
	color: var(--nh-muted);
	font-size: .8rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	white-space: nowrap;
}

@media (max-width: 700px) {
	.nhankido-axis {
		padding: 18px;
	}

	.nhankido-axis .nhankido-axis-row {
		gap: 10px !important;
	}

	.nhankido-axis .nhankido-axis-pole {
		flex: 0 0 92px !important;
		width: 92px !important;
		min-width: 92px !important;
		padding: 8px !important;
		font-size: .72rem;
	}

	.nhankido-axis .nhankido-axis-line {
		padding: 0 20px !important;
	}

	.nhankido-axis .nhankido-axis-line span {
		padding: 4px 8px !important;
		font-size: .68rem;
		white-space: normal;
	}
}

@media (max-width: 480px) {
	.nhankido-axis .nhankido-axis-row {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		gap: 8px !important;
		margin-bottom: 22px !important;
	}

	.nhankido-axis .nhankido-axis-row:last-child {
		margin-bottom: 0 !important;
	}

	.nhankido-axis .nhankido-axis-pole {
		width: 100% !important;
		min-width: 0 !important;
	}

	.nhankido-axis .nhankido-axis-row .nhankido-axis-pole:first-child {
		grid-column: 1;
		grid-row: 1;
	}

	.nhankido-axis .nhankido-axis-row .nhankido-axis-pole:last-child {
		grid-column: 2;
		grid-row: 1;
	}

	.nhankido-axis .nhankido-axis-line {
		grid-column: 1 / -1;
		grid-row: 2;
		width: 100% !important;
	}
}

/* =========================================================
   53. DIMENSIONEN – RESONANZ
   ========================================================= */

.nhankido-article .nhankido-resonance-grid {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 18px;
	width: 100%;
	margin: 28px 0 20px;
}

.nhankido-article .nhankido-resonance-box {
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 260px;
	padding: 24px 26px;
	background: var(--nh-white);
	border: 1px solid var(--nh-green-border);
	border-radius: var(--nh-radius-large);
}

.nhankido-article .nhankido-resonance-box h3 {
	margin: 0 0 12px !important;
	color: var(--nh-green-deep);
	font-size: 1.18rem;
	line-height: 1.3;
}

.nhankido-article .nhankido-resonance-box p {
	margin: 0 0 16px;
}

.nhankido-article .nhankido-resonance-box .nhankido-dimension-more {
	margin-top: auto;
}

.nhankido-article .nhankido-resonance-box--current {
	background: var(--nh-green);
	border-color: var(--nh-green);
	color: #fff;
}

.nhankido-article .nhankido-resonance-box--current .nhankido-card-label,
.nhankido-article .nhankido-resonance-box--current h3,
.nhankido-article .nhankido-resonance-box--current p,
.nhankido-article .nhankido-resonance-box--current strong {
	color: #fff;
}

.nhankido-article .nhankido-resonance-box--current .nhankido-card-label {
	opacity: .82;
}

.nhankido-article .nhankido-resonance-role {
	display: inline-flex;
	align-self: flex-start;
	margin-top: auto;
	padding: 7px 12px;
	background: rgba(255,255,255,.16);
	border-radius: 999px;
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .04em;
}

.nhankido-article .nhankido-resonance-path {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	width: 100%;
	margin: 18px 0 30px;
	padding: 18px 22px;
	background: var(--nh-green-soft);
	border: 1px solid var(--nh-green-border);
	border-radius: var(--nh-radius-medium);
}

.nhankido-article .nhankido-resonance-path span {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.nhankido-article .nhankido-resonance-path strong {
	color: var(--nh-green-deep);
	font-size: .92rem;
}

.nhankido-article .nhankido-resonance-path small {
	margin-top: 2px;
	color: var(--nh-muted);
	font-size: .75rem;
}

.nhankido-article .nhankido-resonance-path b {
	color: var(--nh-green);
	font-size: 1.25rem;
	font-weight: 700;
}

@media (max-width: 900px) {
	.nhankido-article .nhankido-resonance-grid {
		grid-template-columns: 1fr;
	}

	.nhankido-article .nhankido-resonance-box {
		min-height: 0;
	}

	.nhankido-article .nhankido-resonance-path {
		gap: 12px;
	}
}

@media (max-width: 620px) {
	.nhankido-article .nhankido-resonance-box {
		padding: 20px;
	}

	.nhankido-article .nhankido-resonance-path {
		flex-direction: column;
		gap: 8px;
		padding: 18px;
	}

	.nhankido-article .nhankido-resonance-path b {
		transform: rotate(90deg);
	}
}

/* =========================================================
   54. DIMENSIONEN – LUST/WERT-KREUZ
   ========================================================= */

.nhankido-article .nhankido-value-cross {
	margin: 46px 0 34px;
}

.nhankido-article .nhankido-value-cross > .nhankido-page-section-head {
	margin-bottom: 20px;
}

.nhankido-article .nhankido-cross-map {
	position: relative;
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	grid-template-rows: repeat(2,auto);
	gap: 52px 66px;
	width: 100%;
	overflow: hidden;
	margin: 34px 0;
	padding: 92px 72px 98px;
	background: var(--nh-background-soft);
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-large);
}

.nhankido-article .nhankido-cross-field {
	position: relative;
	z-index: 2;
	min-width: 0;
	padding: 24px 26px;
	background: rgba(255,255,255,.96);
	border: 1px solid var(--nh-green-border);
	border-radius: var(--nh-radius-medium);
}

.nhankido-article .nhankido-cross-field h3 {
	margin: 0 0 12px !important;
	color: var(--nh-green-deep);
	font-size: 1.08rem;
	line-height: 1.35;
}

.nhankido-article .nhankido-cross-field p {
	margin: 0 0 12px;
}

.nhankido-article .nhankido-cross-field p:last-child {
	margin-bottom: 0;
}

.nhankido-article .nhankido-cross-field .nhankido-card-label {
	margin-bottom: 14px;
}

.nhankido-article .nhankido-cross-example {
	color: var(--nh-muted);
	font-size: .93rem;
	line-height: 1.58;
}

.nhankido-article .nhankido-cross-example strong {
	color: var(--nh-text-soft);
}

.nhankido-article .nhankido-cross-line {
	position: absolute;
	z-index: 1;
	background: var(--nh-green-border);
	pointer-events: none;
}

.nhankido-article .nhankido-cross-line--horizontal {
	top: 50%;
	right: 34px;
	left: 34px;
	height: 2px;
	transform: translateY(-1px);
}

.nhankido-article .nhankido-cross-line--vertical {
	top: 36px;
	bottom: 36px;
	left: 50%;
	width: 2px;
	transform: translateX(-1px);
}

.nhankido-article .nhankido-cross-line--horizontal::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -1px;
	width: 0;
	height: 0;
	border-top: 7px solid transparent;
	border-right: 11px solid var(--nh-green);
	border-bottom: 7px solid transparent;
	transform: translateY(-50%);
}

.nhankido-article .nhankido-cross-line--horizontal::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -1px;
	width: 0;
	height: 0;
	border-top: 7px solid transparent;
	border-bottom: 7px solid transparent;
	border-left: 11px solid var(--nh-green);
	transform: translateY(-50%);
}

.nhankido-article .nhankido-cross-line--vertical::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 50%;
	width: 0;
	height: 0;
	border-right: 7px solid transparent;
	border-bottom: 11px solid var(--nh-green);
	border-left: 7px solid transparent;
	transform: translateX(-50%);
}

.nhankido-article .nhankido-cross-line--vertical::after {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 50%;
	width: 0;
	height: 0;
	border-top: 11px solid var(--nh-green);
	border-right: 7px solid transparent;
	border-left: 7px solid transparent;
	transform: translateX(-50%);
}

.nhankido-article .nhankido-cross-center {
	position: absolute;
	z-index: 4;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 12px;
	background: var(--nh-green);
	border: 3px solid var(--nh-background-soft);
	border-radius: 50%;
	transform: translate(-50%,-50%);
}

.nhankido-article .nhankido-cross-axis-label {
	position: absolute;
	z-index: 5;
	display: flex;
	align-items: center;
	gap: 5px;
	color: var(--nh-green-deep);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.nhankido-article .nhankido-cross-axis-label span {
	display: block;
	line-height: 1.1;
}

.nhankido-article .nhankido-cross-axis-label small {
	display: block;
	color: var(--nh-muted);
	font-size: .66rem;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: 0;
	text-transform: none;
}

.nhankido-article .nhankido-cross-axis-label--top {
	top: 14px;
	left: 50%;
	flex-direction: column;
	text-align: center;
	transform: translateX(-50%);
}

.nhankido-article .nhankido-cross-axis-label--bottom {
	bottom: 14px;
	left: 50%;
	flex-direction: column;
	text-align: center;
	transform: translateX(-50%);
}

.nhankido-article .nhankido-cross-axis-label--left {
	top: 50%;
	left: 6px;
	transform: translateY(-50%) rotate(-90deg);
	transform-origin: center;
}

.nhankido-article .nhankido-cross-axis-label--right {
	top: 50%;
	right: 8px;
	transform: translateY(-50%) rotate(90deg);
	transform-origin: center;
}

@media (max-width: 900px) {
	.nhankido-article .nhankido-cross-map {
		gap: 42px 46px;
		padding: 84px 54px 90px;
	}

	.nhankido-article .nhankido-cross-field {
		padding: 21px 22px;
	}
}

@media (max-width: 700px) {
	.nhankido-article .nhankido-value-cross {
		margin: 38px 0 28px;
	}

	.nhankido-article .nhankido-cross-map {
		display: flex;
		flex-direction: column;
		gap: 14px;
		margin: 26px 0;
		padding: 18px;
	}

	.nhankido-article .nhankido-cross-line,
	.nhankido-article .nhankido-cross-center,
	.nhankido-article .nhankido-cross-axis-label {
		display: none;
	}

	.nhankido-article .nhankido-cross-field {
		width: 100%;
		padding: 20px;
	}

	.nhankido-article .nhankido-cross-field--ne {
		order: 1;
	}

	.nhankido-article .nhankido-cross-field--nw {
		order: 2;
	}

	.nhankido-article .nhankido-cross-field--se {
		order: 3;
	}

	.nhankido-article .nhankido-cross-field--sw {
		order: 4;
	}
}

@media (max-width: 480px) {
	.nhankido-article .nhankido-cross-map {
		padding: 12px;
		border-radius: var(--nh-radius-medium);
	}

	.nhankido-article .nhankido-cross-field {
		padding: 18px;
	}

	.nhankido-article .nhankido-cross-field h3 {
		font-size: 1rem;
	}

	.nhankido-article .nhankido-cross-example {
		font-size: .9rem;
	}
}

/* =========================================================
   55. GLOBALER ARTIKEL-RHYTHMUS
   ========================================================= */

.nhankido-article > section {
	margin: 42px 0;
	padding: 0;
}

.nhankido-article > section:first-of-type {
	margin-top: 34px;
}

.nhankido-article > section:last-of-type {
	margin-bottom: 34px;
}

.nhankido-article .nhankido-page-section-head {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	width: 100%;
	min-height: 0 !important;
	margin: 0 0 22px !important;
	padding: 0 !important;
}

.nhankido-article .nhankido-page-section-head > .nhankido-kicker {
	display: block !important;
	margin: 0 0 8px !important;
	padding: 0 !important;
	line-height: 1.35 !important;
}

.nhankido-article .nhankido-page-section-head > h2 {
	min-height: 0 !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

.nhankido-article .nhankido-page-section-head > p {
	margin: 0 !important;
	padding: 0 !important;
}

.nhankido-article > section > h2:first-child {
	margin: 0 0 18px !important;
	padding: 0 !important;
}

.nhankido-article > section > p {
	margin-top: 0;
	margin-bottom: 18px;
}

.nhankido-article > section > p:last-child {
	margin-bottom: 0;
}

.nhankido-article > section > p + .nhankido-grid,
.nhankido-article > section > p + .nhankido-resonance-grid,
.nhankido-article > section > p + .nhankido-box,
.nhankido-article > section > p + .nhankido-highlight,
.nhankido-article > section > p + .nhankido-core,
.nhankido-article > section > p + .nhankido-impulse,
.nhankido-article > section > p + .nhankido-media,
.nhankido-article > section > p + .nhankido-resonance-path {
	margin-top: 24px;
}

.nhankido-article .nhankido-page-section-head + .nhankido-grid,
.nhankido-article .nhankido-page-section-head + .nhankido-resonance-grid,
.nhankido-article .nhankido-page-section-head + .nhankido-cross-map,
.nhankido-article .nhankido-page-section-head + .nhankido-box,
.nhankido-article .nhankido-page-section-head + .nhankido-media {
	margin-top: 0;
}

.nhankido-article .nhankido-grid + p,
.nhankido-article .nhankido-resonance-grid + p,
.nhankido-article .nhankido-resonance-path + p,
.nhankido-article .nhankido-box + p,
.nhankido-article .nhankido-highlight + p,
.nhankido-article .nhankido-core + p,
.nhankido-article .nhankido-impulse + p,
.nhankido-article .nhankido-media + p {
	margin-top: 0;
}

.nhankido-article .nhankido-kicker {
	padding-top: 0;
	padding-bottom: 0;
}

@media (max-width: 700px) {
	.nhankido-article > section {
		margin: 34px 0;
	}

	.nhankido-article > section:first-of-type {
		margin-top: 28px;
	}

	.nhankido-article > section:last-of-type {
		margin-bottom: 28px;
	}

	.nhankido-article .nhankido-page-section-head {
		margin-bottom: 18px !important;
	}

	.nhankido-article .nhankido-page-section-head > .nhankido-kicker {
		margin-bottom: 7px !important;
	}

	.nhankido-article .nhankido-page-section-head > h2 {
		margin-bottom: 10px !important;
	}

	.nhankido-article > section > h2:first-child {
		margin-bottom: 16px !important;
	}

	.nhankido-article > section > p {
		margin-bottom: 16px;
	}

	.nhankido-article > section > p + .nhankido-grid,
	.nhankido-article > section > p + .nhankido-resonance-grid,
	.nhankido-article > section > p + .nhankido-box,
	.nhankido-article > section > p + .nhankido-highlight,
	.nhankido-article > section > p + .nhankido-core,
	.nhankido-article > section > p + .nhankido-impulse,
	.nhankido-article > section > p + .nhankido-media,
	.nhankido-article > section > p + .nhankido-resonance-path {
		margin-top: 20px;
	}
}

/* =========================================================
   56. GLOBALER KARTEN-RHYTHMUS
   ========================================================= */

.nhankido-article .nhankido-card,
.nhankido-page .nhankido-card {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	gap: 0 !important;
}

.nhankido-article .nhankido-card > .nhankido-card-label,
.nhankido-page .nhankido-card > .nhankido-card-label {
	display: block !important;
	flex: none !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

.nhankido-article .nhankido-card > h3,
.nhankido-page .nhankido-card > h3 {
	display: block !important;
	flex: none !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

.nhankido-article .nhankido-card > p,
.nhankido-page .nhankido-card > p {
	display: block !important;
	flex: none !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

.nhankido-article .nhankido-card > p:last-child,
.nhankido-page .nhankido-card > p:last-child {
	margin-bottom: 0 !important;
}

.nhankido-article .nhankido-card > *,
.nhankido-page .nhankido-card > * {
	flex-grow: 0 !important;
	flex-shrink: 0;
}

.nhankido-article .nhankido-card > .nhankido-dimension-more,
.nhankido-page .nhankido-card > .nhankido-dimension-more {
	flex-shrink: 0;
	margin-top: auto !important;
	padding-top: 16px;
}

@media (max-width: 700px) {
	.nhankido-article .nhankido-card > .nhankido-card-label,
	.nhankido-page .nhankido-card > .nhankido-card-label,
	.nhankido-article .nhankido-card > h3,
	.nhankido-page .nhankido-card > h3,
	.nhankido-article .nhankido-card > p,
	.nhankido-page .nhankido-card > p {
		margin-bottom: 10px !important;
	}
}

/* =========================================================
   57. GLOBALE QUALITÄT / ZUGÄNGLICHKEIT
   ========================================================= */

.nhankido-home a:focus-visible,
.nhankido-page a:focus-visible,
.nhankido-article a:focus-visible,
#colophon a:focus-visible,
.nhankido-button:focus-visible,
.nh-home-button:focus-visible {
	outline: 3px solid var(--nh-orange);
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	.nhankido-home *,
	.nhankido-page *,
	.nhankido-article *,
	#colophon * {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
	}
}

/* Schutz gegen horizontalen Scrollbalken */

html,
body {
	overflow-x: clip;
}

/* =========================================================
   58. COMPLIANZ / COOKIE-RICHTLINIE
   ========================================================= */

.nhankido-cookie {
	width: 100%;
}

.nhankido-cookie .nhankido-legal-content {
	width: 100%;
	margin: 0;
}

/* =========================================================
   58.1 COMPLIANZ – GRUNDLAYOUT
   ========================================================= */

.nhankido-cookie #cmplz-document,
.nhankido-cookie .cmplz-document {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--nh-text) !important;
	font-family: inherit !important;
	font-size: inherit !important;
	line-height: 1.72 !important;
}

.nhankido-cookie #cmplz-document > h2:first-child,
.nhankido-cookie .cmplz-document > h2:first-child {
	margin-top: 0 !important;
}

.nhankido-cookie #cmplz-document h2,
.nhankido-cookie .cmplz-document h2 {
	margin: 34px 0 12px !important;
	color: var(--nh-green-deep) !important;
	font-size: clamp(1.35rem,2.2vw,1.8rem) !important;
	font-weight: 600 !important;
	line-height: 1.28 !important;
}

.nhankido-cookie #cmplz-document h3,
.nhankido-cookie .cmplz-document h3 {
	margin: 26px 0 10px !important;
	color: var(--nh-green-deep) !important;
	font-size: clamp(1.1rem,1.8vw,1.35rem) !important;
	font-weight: 600 !important;
	line-height: 1.32 !important;
}

.nhankido-cookie #cmplz-document p,
.nhankido-cookie .cmplz-document p {
	max-width: 880px;
	margin: 0 0 14px !important;
	color: var(--nh-text) !important;
}

.nhankido-cookie #cmplz-document ul,
.nhankido-cookie .cmplz-document ul,
.nhankido-cookie #cmplz-document ol,
.nhankido-cookie .cmplz-document ol {
	max-width: 880px;
	margin: 0 0 18px 1.25rem !important;
	padding: 0 !important;
}

.nhankido-cookie #cmplz-document li,
.nhankido-cookie .cmplz-document li {
	margin-bottom: 7px;
	line-height: 1.65;
}

.nhankido-cookie #cmplz-document a,
.nhankido-cookie .cmplz-document a {
	color: var(--nh-green) !important;
	font-weight: 600;
	text-decoration: underline !important;
	text-decoration-thickness: 1px !important;
	text-underline-offset: 3px;
}

.nhankido-cookie #cmplz-document a:hover,
.nhankido-cookie .cmplz-document a:hover {
	color: var(--nh-green-dark) !important;
}

.nhankido-cookie #cmplz-document .cmplz-category,
.nhankido-cookie .cmplz-document .cmplz-category,
.nhankido-cookie #cmplz-document .cmplz-service,
.nhankido-cookie .cmplz-document .cmplz-service {
	margin: 16px 0 !important;
	padding: 18px 20px !important;
	background: var(--nh-background-soft) !important;
	border: 1px solid var(--nh-border) !important;
	border-radius: var(--nh-radius-medium) !important;
	box-shadow: none !important;
}

.nhankido-cookie #cmplz-document table,
.nhankido-cookie .cmplz-document table {
	width: 100% !important;
	margin: 18px 0 24px !important;
	background: var(--nh-white);
	border: 1px solid var(--nh-border);
	border-collapse: collapse !important;
}

.nhankido-cookie #cmplz-document th,
.nhankido-cookie .cmplz-document th {
	padding: 12px 14px !important;
	background: var(--nh-green-soft) !important;
	border: 1px solid var(--nh-border) !important;
	color: var(--nh-green-deep) !important;
	font-weight: 700 !important;
	text-align: left !important;
}

.nhankido-cookie #cmplz-document td,
.nhankido-cookie .cmplz-document td {
	padding: 12px 14px !important;
	border: 1px solid var(--nh-border) !important;
	vertical-align: top;
}

.nhankido-cookie #cmplz-document button,
.nhankido-cookie .cmplz-document button,
.nhankido-cookie #cmplz-document .cmplz-btn,
.nhankido-cookie .cmplz-document .cmplz-btn {
	padding: 11px 18px !important;
	background: var(--nh-green) !important;
	border: none !important;
	border-radius: 999px !important;
	box-shadow: none !important;
	color: #fff !important;
	font-family: inherit !important;
	font-weight: 700 !important;
	cursor: pointer;
}

.nhankido-cookie #cmplz-document button:hover,
.nhankido-cookie .cmplz-document button:hover,
.nhankido-cookie #cmplz-document .cmplz-btn:hover,
.nhankido-cookie .cmplz-document .cmplz-btn:hover {
	background: var(--nh-green-dark) !important;
}

/* =========================================================
   58.2 COMPLIANZ – MOBILE
   ========================================================= */

@media (max-width: 700px) {
	.nhankido-cookie #cmplz-document h2,
	.nhankido-cookie .cmplz-document h2 {
		margin-top: 28px !important;
	}

	.nhankido-cookie #cmplz-document h3,
	.nhankido-cookie .cmplz-document h3 {
		margin-top: 22px !important;
	}

	.nhankido-cookie #cmplz-document table,
	.nhankido-cookie .cmplz-document table {
		display: block;
		width: 100% !important;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.nhankido-cookie #cmplz-document th,
	.nhankido-cookie .cmplz-document th,
	.nhankido-cookie #cmplz-document td,
	.nhankido-cookie .cmplz-document td {
		padding: 10px 12px !important;
		font-size: .92rem;
	}
}

/* =========================================================
   59. NHANKIDO – KATEGORIESEITEN
   WordPress-/Twenty-Seventeen-Archivlayout neutralisieren
   und Kategorie-Einstieg verdichten
   ========================================================= */

body.category:has(.nhankido-page) #content,
body.category:has(.nhankido-page) .site-content {
	margin-top: 0 !important;
	padding-top: 24px !important;
}

body.category:has(.nhankido-page) .page-header {
	display: block !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
}

body.category:has(.nhankido-page) .page-header .page-title {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.category:has(.nhankido-page) .archive-description {
	display: block !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.category:has(.nhankido-page) .archive-description .nhankido-page {
	display: block !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.category .nhankido-category-intro {
	margin: 0 !important;
	padding: 0 0 20px !important;
}

body.category .nhankido-category-intro .nhankido-page-section-head {
	display: block !important;
	margin: 0 0 20px !important;
	padding: 0 !important;
	min-height: 0 !important;
}

body.category .nhankido-category-intro .nhankido-kicker {
	display: block !important;
	margin: 0 0 10px !important;
	padding: 0 !important;
}

body.category .nhankido-category-intro h1 {
	display: block !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	line-height: 1.08 !important;
}

body.category .nhankido-category-intro .nhankido-page-lead {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.55;
}

body.category .nhankido-category-intro .nhankido-highlight {
	margin-top: 22px !important;
}

body.category:has(.nhankido-page) #primary,
body.category:has(.nhankido-page) .content-area,
body.category:has(.nhankido-page) .site-main {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* =========================================================
   59.1 KATEGORIESEITEN – TABLET
   ========================================================= */

@media (max-width: 900px) {
	body.category:has(.nhankido-page) #content,
	body.category:has(.nhankido-page) .site-content {
		padding-top: 20px !important;
	}
}

/* =========================================================
   59.2 KATEGORIESEITEN – SMARTPHONE
   ========================================================= */

@media (max-width: 600px) {
	body.category:has(.nhankido-page) #content,
	body.category:has(.nhankido-page) .site-content {
		padding-top: 16px !important;
	}

	body.category .nhankido-category-intro {
		padding-bottom: 16px !important;
	}

	body.category .nhankido-category-intro .nhankido-kicker {
		margin-bottom: 8px !important;
	}

	body.category .nhankido-category-intro h1 {
		margin-bottom: 12px !important;
		line-height: 1.12 !important;
	}
}

/* =========================================================
   59.3 NHANKIDO-KATEGORIEN – OHNE SIDEBAR VOLLE BREITE
   ========================================================= */

body.category #secondary,
body.archive #secondary {
	display: none !important;
}

body.category #primary,
body.category .content-area,
body.category .site-main,
body.archive #primary,
body.archive .content-area,
body.archive .site-main {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.category .site-main > article,
body.archive .site-main > article {
	float: none !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* =========================================================
   60. NHANKIDO – KONTAKTFORMULAR / FLUENT FORMS
   ========================================================= */

.nhankido-contact .fluentform input[type="text"],
.nhankido-contact .fluentform input[type="email"],
.nhankido-contact .fluentform select,
.nhankido-contact .fluentform textarea {
	background: var(--nh-white);
	border: 1px solid var(--nh-border);
	border-radius: 10px;
	transition: border-color .2s ease,box-shadow .2s ease;
}

.nhankido-contact .fluentform input:focus,
.nhankido-contact .fluentform select:focus,
.nhankido-contact .fluentform textarea:focus {
	border-color: var(--nh-green);
	box-shadow: 0 0 0 3px rgba(38,115,91,.10);
	outline: none;
}

.nhankido-contact .fluentform .ff-btn-submit {
	padding: 12px 24px;
	background: var(--nh-green) !important;
	border-color: var(--nh-green) !important;
	border-radius: 8px;
	color: #fff !important;
	font-weight: 600;
	transition: background .2s ease,border-color .2s ease,transform .2s ease;
}

.nhankido-contact .fluentform .ff-btn-submit:hover,
.nhankido-contact .fluentform .ff-btn-submit:focus {
	background: var(--nh-green-dark) !important;
	border-color: var(--nh-green-dark) !important;
	transform: translateY(-1px);
}

.nhankido-contact .fluentform .text-danger {
	color: #c85b52;
}

/* =========================================================
   61. HEADER – SUCHE
   CSS-only über <details>
   Lupe direkt rechts neben dem Hauptmenü
   ========================================================= */

/* Hauptnavigation als gemeinsame Zeile behandeln */

.main-navigation {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 14px;
}

.main-navigation .menu-top-menu-container {
	display: block;
	flex: 0 1 auto;
}

.main-navigation .nhankido-menu-search {
	position: static;
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	margin-left: 4px;
	transform: none;
}

.main-navigation .nhankido-search-details {
	position: relative;
	margin: 0;
	padding: 0;
}

.main-navigation .nhankido-search-toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 50%;
	color: var(--nh-green-deep);
	cursor: pointer;
	list-style: none;
	transition: background .2s ease,color .2s ease;
}

/* Standard-Marker von details/summary entfernen */
.main-navigation .nhankido-search-toggle::-webkit-details-marker {
	display: none;
}

.main-navigation .nhankido-search-toggle::marker {
	display: none;
	content: "";
}

.main-navigation .nhankido-search-toggle svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.main-navigation .nhankido-search-toggle:hover,
.main-navigation .nhankido-search-toggle:focus {
	background: var(--nh-green-soft);
	color: var(--nh-green);
	outline: none;
}

/* Suchpanel */
.main-navigation .nhankido-search-panel {
	position: absolute;
	z-index: 9999;
	top: calc(100% + 10px);
	right: 0;
	width: 360px;
	max-width: calc(100vw - 32px);
	padding: 14px;
	background: var(--nh-white);
	border: 1px solid var(--nh-border);
	border-radius: var(--nh-radius-medium);
	box-shadow: var(--nh-shadow);
}

/* Suchformular */
.main-navigation .nhankido-search-panel .search-form {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.main-navigation .nhankido-search-panel .search-field {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 10px 14px;
	background: #fff;
	border: 1px solid var(--nh-green-border);
	border-radius: 999px;
	color: var(--nh-text);
}

.main-navigation .nhankido-search-panel .search-field:focus {
	border-color: var(--nh-green);
	box-shadow: 0 0 0 3px rgba(38,115,91,.10);
	outline: none;
}

.main-navigation .nhankido-search-panel .search-submit {
	flex: 0 0 auto;
	margin: 0;
	padding: 10px 16px;
	background: var(--nh-green);
	border: 0;
	border-radius: 999px;
	color: #fff;
	font-weight: 700;
	cursor: pointer;
}

.main-navigation .nhankido-search-panel .search-submit:hover,
.main-navigation .nhankido-search-panel .search-submit:focus {
	background: var(--nh-green-dark);
}

/* =========================================================
   61.1 HEADER-SUCHE – MOBIL
   ========================================================= */

   @media (max-width: 768px) {
	.main-navigation {
		display: block;
	}

	.main-navigation .nhankido-menu-search {
		display: block;
		width: 100%;
		margin: 8px 0 0;
	}

	.main-navigation .nhankido-search-details {
		width: 100%;
	}

	.main-navigation .nhankido-search-toggle {
		display: flex;
	}

	.main-navigation .nhankido-search-panel {
		position: static;
		width: 100%;
		max-width: none;
		margin-top: 8px;
		padding: 10px 0 0;
		background: transparent;
		border: 0;
		box-shadow: none;
	}

	.main-navigation .nhankido-search-panel .search-form {
		width: 100%;
	}
}
