/* ============================================================
   Unterseiten im System der Startseite (Variante 1b)
   Nummerierte Kapitel. Ergänzung zu site.css — Farben,
   Schrift und Grundraster bleiben unverändert.
   ============================================================ */

.nav-lang .nav-link { letter-spacing: .04em; }
.nav-lang .lang-off { color: var(--color-fg-muted); }

/* Kapitelraster ----------------------------------------- */
.page-head { background: var(--color-bg-alt); }
.page-head .section-title { font-size: 2.625rem; }
.band-alt { background: var(--color-bg-alt); }

.lead-lg {
	font-size: 1.375rem;
	font-weight: 300;
	line-height: 1.45;
	text-wrap: pretty;
}

.sec-head .section-desc + .section-desc { margin-top: 18px; }

/* Kapitelnavigation (Leistungen) ------------------------ */
.chapter-nav {
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(4,1fr);
	border-top: 1px solid var(--color-border-strong);
}
.chapter-nav a {
	display: flex;
	align-items: baseline;
	gap: 12px;
	padding: 18px 20px 18px 0;
	border-right: 1px solid var(--color-border-strong);
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.3;
	color: var(--color-fg);
	text-wrap: pretty;
}
.chapter-nav a:last-child { border-right: 0; }
.chapter-nav a + a { padding-left: 20px; }
.chapter-nav a span {
	font-size: .8125rem;
	font-weight: 500;
	letter-spacing: .1em;
	color: var(--color-accent);
}
.chapter-nav a:hover { color: var(--color-accent); }

/* Leistungsdetails -------------------------------------- */
.svc-detail {
	margin-top: 36px;
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 48px;
}
.svc-detail-title {
	margin-top: 20px;
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: -.01em;
}
.svc-detail-text {
	margin-top: 14px;
	font-size: 1.0625rem;
	font-weight: 300;
	line-height: 1.5;
	color: var(--color-fg-secondary);
	text-wrap: pretty;
}

/* Themen-Rasternetz ------------------------------------- */
.topic-grid {
	margin-top: 48px;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 1px;
	background: var(--color-border-strong);
	border: 1px solid var(--color-border-strong);
}
.topic-cell { background: var(--color-white); padding: 32px 30px 36px; }
.topic-title {
	margin-top: 20px;
	font-size: 1.0625rem;
	font-weight: 500;
	line-height: 1.3;
}

/* Methodik ---------------------------------------------- */
.method-grid {
	margin-top: 48px;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 1px;
	background: var(--color-border-strong);
	border: 1px solid var(--color-border-strong);
}
.method-cell { background: var(--color-white); padding: 32px 30px 36px; }
.method-field {
	margin-top: 20px;
	font-size: 1.0625rem;
	font-weight: 500;
	line-height: 1.3;
}
.method-list {
	list-style: none;
	margin: 18px 0 0;
	padding: 0;
	border-top: 1px solid var(--color-border);
}
.method-list li {
	padding: 12px 0;
	border-bottom: 1px solid var(--color-border);
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.35;
	color: var(--color-fg-secondary);
	text-wrap: pretty;
}

.step-row {
	margin-top: 48px;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 40px;
}
.step { border-top: 2px solid var(--color-accent); padding-top: 18px; }
.step-num {
	font-size: 2.75rem;
	font-weight: 100;
	line-height: 1;
	letter-spacing: -.03em;
	color: var(--color-fg);
}
.step-title {
	margin-top: 20px;
	font-size: 1.0625rem;
	font-weight: 500;
	line-height: 1.3;
}
.step-text {
	margin-top: 12px;
	font-size: 1.0625rem;
	font-weight: 300;
	line-height: 1.45;
	color: var(--color-fg-secondary);
	text-wrap: pretty;
}

/* Über uns ---------------------------------------------- */
.split-portrait {
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	gap: 56px;
	align-items: start;
}
.portrait-block { width: 100%; background-color: var(--color-nav); background-size: cover; background-repeat: no-repeat; }
.portrait-hero {
	aspect-ratio: 4/5;
	background-image: url("../../images/hero-graf-pfeil-advisory.png");
	background-position: 62% 18%;
}
.lens-row {
	margin-top: 34px;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	border-top: 1px solid var(--color-border-strong);
}
.lens { padding: 18px 20px; border-right: 1px solid var(--color-border-strong); }
.lens:first-child { padding-left: 0; }
.lens:last-child { border-right: 0; padding-right: 0; }
.lens-label {
	font-size: .75rem;
	font-weight: 500;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--color-accent);
}
.lens-text {
	margin-top: 8px;
	font-size: .9375rem;
	font-weight: 300;
	line-height: 1.4;
	color: var(--color-fg-secondary);
}

/* Team -------------------------------------------------- */
.person {
	margin-top: 8px;
	display: grid;
	grid-template-columns: 280px 1fr;
	gap: 56px;
	align-items: start;
}
.portrait-person {
	aspect-ratio: 3/4;
	background-image: url("../../images/rupprecht-graf-von-pfeil.png");
	background-position: center top;
}
.person-meta { margin-top: 18px; border-top: 2px solid var(--color-accent); padding-top: 14px; }
.person-role {
	font-size: .8125rem;
	font-weight: 500;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--color-accent);
}
.person-langs { margin-top: 14px; display: flex; flex-wrap: wrap; gap: 8px 20px; }
.person-langs span {
	font-size: .9375rem;
	font-weight: 300;
	color: var(--color-fg-secondary);
}
.person-body .section-title { margin-top: 0; }

/* Kontakt ----------------------------------------------- */
.contact-row {
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 1px;
	background: var(--color-border-strong);
	border: 1px solid var(--color-border-strong);
}
.contact-card {
	display: block;
	background: var(--color-white);
	padding: 36px 34px 40px;
	color: var(--color-fg);
	transition: background 180ms ease;
}
.contact-card:hover { background: var(--color-bg-alt); color: var(--color-fg); }
.contact-label {
	display: block;
	font-size: .6875rem;
	font-weight: 500;
	letter-spacing: .24em;
	text-transform: uppercase;
	color: var(--color-fg-muted);
}
.contact-value {
	display: block;
	margin-top: 18px;
	font-size: 1.75rem;
	font-weight: 300;
	letter-spacing: -.015em;
	line-height: 1.2;
	text-wrap: pretty;
}
.contact-note {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-top: 20px;
	padding-top: 14px;
	border-top: 1px solid var(--color-border);
	font-size: .9375rem;
	font-weight: 300;
	color: var(--color-fg-secondary);
}
.contact-arrow { color: var(--color-accent); }

.office-row {
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	border-top: 1px solid var(--color-border-strong);
}
.office-col { padding: 24px 24px 0 0; border-right: 1px solid var(--color-border-strong); }
.office-col:last-child { border-right: 0; }
.office-col + .office-col { padding-left: 24px; }
.office-label {
	font-size: .6875rem;
	font-weight: 500;
	letter-spacing: .24em;
	text-transform: uppercase;
	color: var(--color-accent);
}
.office-text {
	margin-top: 14px;
	font-size: 1.0625rem;
	font-weight: 300;
	line-height: 1.55;
	color: var(--color-fg-secondary);
}

/* Responsive -------------------------------------------- */
@media (max-width:1199.98px) {
	.chapter-nav { grid-template-columns: repeat(2,1fr); }
	.chapter-nav a:nth-child(2) { border-right: 0; }
	.chapter-nav a:nth-child(3) { padding-left: 0; }
	.chapter-nav a:nth-child(1),
	.chapter-nav a:nth-child(2) { border-bottom: 1px solid var(--color-border-strong); }
}
@media (max-width:991.98px) {
	.page-head .section-title { font-size: 2rem; }
	.svc-detail { grid-template-columns: 1fr; gap: 36px; }
	.topic-grid { grid-template-columns: repeat(2,1fr); }
	.method-grid { grid-template-columns: 1fr; }
	.step-row { grid-template-columns: 1fr; gap: 32px; }
	.split-portrait { grid-template-columns: 1fr; gap: 32px; }
	.person { grid-template-columns: 1fr; gap: 32px; }
	.person-media { max-width: 280px; }
	.lens-row,
	.office-row { grid-template-columns: 1fr; }
	.lens,
	.office-col {
		border-right: 0;
		border-bottom: 1px solid var(--color-border-strong);
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 18px;
	}
	.lens:last-child,
	.office-col:last-child { border-bottom: 0; }
	.office-col + .office-col { padding-left: 0; }
	.contact-row { grid-template-columns: 1fr; }
	.contact-value { font-size: 1.5rem; }
}
@media (max-width:575.98px) {
	.chapter-nav { grid-template-columns: 1fr; }
	.chapter-nav a { border-right: 0; border-bottom: 1px solid var(--color-border-strong); padding-left: 0 !important; }
	.chapter-nav a:last-child { border-bottom: 0; }
	.topic-grid { grid-template-columns: 1fr; }
}
