/* ==========================================================================
   halder & sinn – modernes Erscheinungsbild
   Wird NACH css/custom.css geladen und baut auf den bestehenden Farben auf
   (Braun #5b3317, Gelb #fbb900). Nur Darstellung, keine Inhalte.
   ========================================================================== */

/* Poppins lokal (kein Google-Server, DSGVO) – das Theme verlangt die Schrift, lud sie aber nie */
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 300; font-display: swap; src: url("fonts/poppins/poppins-v20-latin-300.woff2") format("woff2"); }
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/poppins/poppins-v20-latin-regular.woff2") format("woff2"); }
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 500; font-display: swap; src: url("fonts/poppins/poppins-v20-latin-500.woff2") format("woff2"); }
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/poppins/poppins-v20-latin-600.woff2") format("woff2"); }
@font-face { font-family: "Poppins"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/poppins/poppins-v20-latin-700.woff2") format("woff2"); }

:root {
	--hs-braun: #5b3317;
	--hs-braun-dunkel: #3c220f;
	--hs-braun-hell: #8a5a35;
	--hs-gelb: #fbb900;
	--hs-gelb-hell: #fff4d1;
	--hs-creme: #fbf8f3;
	--hs-text: #3d2c20;
	--hs-text-leise: #6f5e51;
	--hs-linie: #ece4d9;
	--hs-radius: 6px;
	--hs-radius-klein: 4px;
	--hs-radius-knopf: 4px;
	--hs-schatten: 0 10px 30px -12px rgba(60, 34, 15, .28);
	--hs-schatten-hover: 0 22px 44px -16px rgba(60, 34, 15, .38);
	--hs-schrift: "Poppins", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
}

/* ---------- Grundlagen ---------- */

body {
	font-family: var(--hs-schrift);
	color: var(--hs-text);
	-webkit-font-smoothing: antialiased;
}

html.boxed .body {
	border-radius: var(--hs-radius);
	overflow: clip;
	box-shadow: 0 30px 80px -30px rgba(0, 0, 0, .45);
	background: #fff;
}

p, li { line-height: 1.75; }

/* Texte aus dem Editor bringen oft "font-family: Arial" mit - überall die Hausschrift */
.main [style*="font-family"], .main font[face] { font-family: var(--hs-schrift) !important; }
.lead { color: var(--hs-text); font-weight: 400; }

a { color: var(--hs-braun); transition: color .2s; }
a:hover { color: var(--hs-braun-hell); }

h1, h2, h3, h4, h5, h6 {
	font-family: var(--hs-schrift);
	letter-spacing: -.02em;
	line-height: 1.2;
}
h1 { font-weight: 600; }
h2 { font-weight: 600; }
h3 { font-weight: 500; }

/* Überschriften im Inhalt: gelber Akzentstrich */
.lead > h1:first-child,
.main .lead h1:first-of-type {
	position: relative;
	padding-bottom: .55em;
	margin-bottom: .6em;
}
.lead > h1:first-child::after,
.main .lead h1:first-of-type::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 64px;
	height: 4px;
	border-radius: 4px;
	background: var(--hs-gelb);
}
/* zentrierte Überschrift (im Admin so gesetzt): Strich mittig */
.main .lead h1[style*="center"]::after { left: 50%; margin-left: -32px; }
/* Überschrift im früheren Stil (Teamseite): dünn, ohne Strich */
.main .lead h1.hs-titel-alt { font-weight: 200; font-size: 36.4px !important; line-height: 44px; padding-bottom: 0; margin-bottom: .2em; }
.main .lead h1.hs-titel-alt::after { display: none; }

/* Bilder im Inhalt */
.lead p img,
.lead img {
	border-radius: var(--hs-radius);
	box-shadow: var(--hs-schatten);
}

/* Fotos im Inhalt (Team, Geschichte, Aktuelles): weiche Ecken */
.main .section img.img-fluid:not(.img-thumbnail) { border-radius: var(--hs-radius-klein); }

/* Sektionen: warme, ruhige Flächen */
.section.bg-color-grey { background-color: var(--hs-creme) !important; }
.section.section-height-3 { padding-top: 5rem; padding-bottom: 5rem; }
@media (max-width: 767px) {
	.section.section-height-3 { padding-top: 3rem; padding-bottom: 3rem; }
}

/* Theme setzt .active global gelb – nur für Navigation gedacht */
.owl-item.active, .owl-dot.active, .card .active { background: transparent !important; }

/* ---------- Kopf und Navigation ---------- */

#header .head { background: #fff; }
/* Höchstmaße statt fester Höhe: Breite und Höhe "auto", damit das Seitenverhältnis immer stimmt */
#header .header-logo img { width: auto; height: auto; max-width: 100%; max-height: 120px; }
#HeadRest img { width: auto; height: auto; max-width: 100%; max-height: 92px; }
@media (max-width: 991px) {
	#header .header-logo img { max-height: 80px; }
	#HeadRest img { max-height: 56px; }
}
@media (max-width: 575px) {
	#header .header-logo img { max-height: none; max-width: 46vw; }
	#HeadRest img { max-height: none; max-width: 44vw; }
}

/* Überschriften im Inhalt auf dem Handy kleiner */
@media (max-width: 767px) {
	.main .lead h1 { font-size: 1.85rem !important; line-height: 1.2; }
	.main .lead h2 { font-size: 1.5rem !important; }
	.main .lead h3, .main .lead h3 span { font-size: 1.2rem !important; line-height: 1.35; }
}

#header .header-nav-bar.navbor {
	border: 0;
	margin: 0 0rem 1rem !important;
	padding: 0 .75rem !important;
	background: linear-gradient(180deg, #6a3c1c 0%, var(--hs-braun) 100%) !important;
	box-shadow: 0 10px 24px -14px rgba(60, 34, 15, .7);
	
}
@media (min-width: 992px) {
	#header .header-nav-main nav > ul > li > a.dropdown-item {
		font-size: 1.02rem !important;
		font-weight: 600 !important;
		letter-spacing: .06em;
		color: #fff !important;
		background: transparent !important;
		position: relative;
	}
	#header .header-nav-main nav > ul > li > a.dropdown-item::after {
		content: "";
		position: absolute;
		left: 1.2rem; right: 1.2rem; bottom: 10px;
		height: 2px;
		border-radius: 2px;
		background: var(--hs-gelb);
		transform: scaleX(0);
		transition: transform .25s;
	}
	#header .header-nav-main nav > ul > li:hover > a.dropdown-item::after,
	#header .header-nav-main nav > ul > li.active > a.dropdown-item::after { transform: scaleX(1); }
	#header .header-nav-main nav > ul > li.active > a.dropdown-item { color: var(--hs-gelb) !important; }
	#header .header-nav-main nav > ul > li.active { background: transparent !important; }

	/* größere Schrift, aber auf schmaleren Bildschirmen in einer Zeile halten */
	#header .header-nav-bar .header-nav-links:not(.justify-content-lg-center) .header-nav-main.header-nav-main-dropdown-arrow nav > ul > li.dropdown > .dropdown-item {
		padding: 0 .7rem !important;
	}
	#header .header-nav-main nav > ul > li > a.dropdown-item { font-size: .86rem !important; letter-spacing: .03em; }

	#header .header-nav-main nav > ul > li.dropdown .dropdown-menu {
		border-radius: var(--hs-radius) !important;
		border-top: 3px solid var(--hs-gelb) !important;
		overflow: hidden;
		padding: .4rem 0 !important;
	}
	#header .header-nav-main nav > ul > li.dropdown .dropdown-menu li a {
		letter-spacing: 0 !important;
		font-size: .92rem !important;
		line-height: 1.6em !important;
		border-bottom: 1px solid var(--hs-linie) !important;
		transition: background .2s, padding-left .2s;
	}
	#header .header-nav-main nav > ul > li.dropdown .dropdown-menu li:last-child a { border-bottom: 0 !important; }
	#header .header-nav-main nav > ul > li.dropdown .dropdown-menu li a:hover {
		background: var(--hs-gelb-hell) !important;
		padding-left: 24px !important;
	}
	#header .header-nav-main nav > ul > li.dropdown .dropdown-menu li a.active {
		background: var(--hs-gelb-hell) !important;
		color: var(--hs-braun) !important;
		font-weight: 600;
	}
}
@media (min-width: 1200px) {
	#header .header-nav-bar .header-nav-links:not(.justify-content-lg-center) .header-nav-main.header-nav-main-dropdown-arrow nav > ul > li.dropdown > .dropdown-item {
		padding: 0 1rem !important;
	}
	#header .header-nav-main nav > ul > li > a.dropdown-item { font-size: .95rem !important; letter-spacing: .04em; }
}
@media (min-width: 1340px) {
	#header .header-nav-bar .header-nav-links:not(.justify-content-lg-center) .header-nav-main.header-nav-main-dropdown-arrow nav > ul > li.dropdown > .dropdown-item {
		padding: 0 1.5rem !important;
	}
	#header .header-nav-main nav > ul > li > a.dropdown-item { font-size: 1.02rem !important; letter-spacing: .06em; }
}
@media (max-width: 991px) {
	#header .header-nav-bar.navbor { border-radius: var(--hs-radius); }
	#header .header-btn-collapse-nav {
		background: var(--hs-gelb) !important;
		color: var(--hs-braun) !important;
		border-radius: var(--hs-radius-knopf);
		font-weight: 600;
		margin: .5rem 0;
	}
}

/* ---------- Knöpfe ---------- */

.btn-primary,
.btn-modern.btn-primary {
	background: var(--hs-gelb) !important;
	border-color: var(--hs-gelb) !important;
	color: var(--hs-braun-dunkel) !important;
	font-weight: 600;
	border-radius: var(--hs-radius-knopf);
	box-shadow: 0 8px 18px -10px rgba(251, 185, 0, .9);
	transition: transform .2s, box-shadow .2s, background .2s;
}
.btn-primary:hover {
	background: #ffc829 !important;
	transform: translateY(-2px);
	box-shadow: 0 14px 26px -12px rgba(251, 185, 0, 1);
}
.btn-light.btn-modern {
	background: var(--hs-gelb-hell) !important;
	border: 0 !important;
	color: var(--hs-braun) !important;
	font-weight: 600;
	text-transform: none;
	border-radius: var(--hs-radius-knopf);
	padding: .55rem 1.2rem;
	transition: background .2s, color .2s;
}
.card:hover .btn-light.btn-modern,
.btn-light.btn-modern:hover { background: var(--hs-gelb) !important; color: var(--hs-braun-dunkel) !important; }

.hs-btn-hell {
	display: inline-flex; align-items: center; gap: .5rem;
	padding: .8rem 1.5rem;
	border-radius: var(--hs-radius-knopf);
	border: 2px solid rgba(255, 255, 255, .7);
	color: #fff !important;
	font-weight: 600;
	text-decoration: none !important;
	transition: background .2s, color .2s, border-color .2s;
}
.hs-btn-hell:hover { background: #fff; color: var(--hs-braun) !important; border-color: #fff; }

/* ---------- Karten (Kompetenzen, Seitenleiste) ---------- */

.card {
	border-radius: var(--hs-radius) !important;
	border: 1px solid var(--hs-linie) !important;
	overflow: hidden;
	box-shadow: var(--hs-schatten) !important;
	transition: transform .3s, box-shadow .3s !important;
}
.card:hover { box-shadow: var(--hs-schatten-hover) !important; }
.card.card-border-bottom { border-bottom: 4px solid var(--hs-gelb) !important; }
.card > a, .card a:hover { text-decoration: none; }


/* Kompetenz-Übersicht: Karten mit Bild */
.hs-karte {
	display: flex;
	flex-direction: column;
	height: 100%;
	border-radius: var(--hs-radius);
	border: 1px solid var(--hs-linie);
	border-bottom: 4px solid var(--hs-gelb);
	background: #fff;
	overflow: hidden;
	text-decoration: none !important;
	box-shadow: var(--hs-schatten);
	transition: transform .3s, box-shadow .3s;
}
.hs-karte:hover { transform: translateY(-6px); box-shadow: var(--hs-schatten-hover); }
.hs-karte-bild { display: block; overflow: hidden; aspect-ratio: 16 / 10; }
.hs-karte-bild img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.hs-karte:hover .hs-karte-bild img { transform: scale(1.06); }
.hs-karte-inhalt { display: flex; flex-direction: column; flex: 1; padding: 1.4rem 1.5rem 1.5rem; }
.hs-karte-inhalt h2 { font-size: 1.3rem; margin: 0 0 .5rem !important; }
.hs-karte-inhalt p { color: var(--hs-text-leise); font-size: .95rem; line-height: 1.65; margin: 0 0 1rem; }
.hs-karte .hs-mehr { margin-top: auto; color: var(--hs-braun); font-weight: 600; font-size: .9rem; }
.hs-karte .hs-mehr::after { content: " \2192"; }

/* Seitenleiste "Unsere Kompetenzen" auf den Detailseiten */
.tpic .sidebar > h1 { font-size: 1.25rem !important; margin-bottom: 1rem; }
.tpic .sidebar > h1::after { left: 0 !important; margin-left: 0 !important; }
.tpic .klein h1 { overflow-wrap: normal; word-break: normal; hyphens: auto; }
.tpic .klein .col-md-7 { padding-left: .25rem; }
.tpic .sidebar > div { margin-bottom: .75rem !important; }
.tpic .card { border-bottom-width: 1px !important; border-left: 4px solid transparent !important; }
.tpic .card:hover { border-left-color: var(--hs-gelb) !important; }
.tpic .klein { background: #fff; padding: .6rem !important; }
.tpic .klein img { border-radius: var(--hs-radius-klein); aspect-ratio: 1; object-fit: cover; box-shadow: none; padding: 0 !important; }
.tpic .klein h1 { font-size: 1rem !important; font-weight: 600; margin: 0 0 .2rem !important; color: var(--hs-braun) !important; }
.tpic .klein h1::after { display: none; }
.tpic .klbtn { padding: 0 !important; background: none !important; font-size: .82rem !important; color: var(--hs-text-leise) !important; }
.tpic .klbtn::after { content: " \2192"; }
/* aktuelle Seite: hervorgehoben statt ausgegraut */
.tpic .klein.kompakt { opacity: 1; background: var(--hs-gelb-hell); }

/* Tätigkeitsfelder (Team, Karriere): wie früher schlichte Liste - nur Schrift wie vor dem Umbau */
:has(> li.tat) > h3 { font-weight: 400; line-height: 32px; }
li.tat { color: var(--hs-braun); line-height: 24px; }
li.tat p { line-height: 26px; }

/* ---------- Bilder-Kacheln ---------- */

.portfolio-item .thumb-info,
.portfolio-item .thumb-info-wrapper,
.portfolio-item img { border-radius: var(--hs-radius) !important; }
.portfolio-item img.img-thumbnail { padding: 0; border: 0; }
.portfolio-item .thumb-info { box-shadow: 0 16px 30px -18px rgba(0, 0, 0, .7); }

.image-gallery-item.img-thumbnail { border-radius: var(--hs-radius) !important; padding: 0 !important; border: 0 !important; overflow: hidden; }
.image-gallery-item .thumbbox { transition: transform .5s; }
.image-gallery-item:hover .thumbbox { transform: scale(1.04); }

/* ---------- Ansprechpartner (Kontakt) ---------- */
/* Texte kommen aus dem Editor mit fest eingestellter Schrift Arial - hier vereinheitlichen */
.hs-personen *:not(i) { font-family: var(--hs-schrift) !important; }
.hs-personen img {
	display: block;
	width: 100% !important;
	max-width: 320px;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	object-position: center 25%;
	border-radius: var(--hs-radius);
	box-shadow: var(--hs-schatten);
	margin-bottom: .5rem;
}
.hs-personen p { font-size: 1rem; line-height: 1.7; }
/* Karten aus dem Admin (Team > Kontakt) */
.hs-person img { max-width: none; }
.hs-person-text h2 { font-size: 1.1rem !important; text-transform: uppercase; letter-spacing: .03em; margin: .6rem 0 .1rem !important; }
.hs-person-text h2::after { display: none; }
.hs-person-text h3 { font-size: .95rem !important; font-weight: 400; color: var(--hs-text-leise) !important; margin: 0 0 .5rem !important; line-height: 1.4; }
.hs-person-text p { font-size: .95rem; margin: 0; }

/* Teamseite: Gruppen aus dem Admin, Darstellung wie der frühere Textblock */
.hs-team-gruppe { margin: 1.5rem 0; }
.hs-team-titel {
	font-size: 28px !important;
	font-weight: 700;
	text-align: center;
	margin: 0 0 1.5rem !important;
}
.hs-team-titel::after { display: none; }
.hs-tm { margin-bottom: 46px; }
.hs-tm-rechts { text-align: right; }
.hs-tm-name { font-size: 20px; line-height: 26px; margin: 0; }
.hs-tm-beruf { font-size: 16px; line-height: 26px; margin: 0; }
.hs-tm img { display: inline-block; max-width: 100%; height: auto; border-radius: 0 !important; box-shadow: none !important; }
.hs-person-platzhalter {
	display: flex; align-items: center; justify-content: center;
	aspect-ratio: 4 / 3;
	border-radius: var(--hs-radius);
	background: var(--hs-gelb-hell);
	color: var(--hs-braun-hell);
	font-size: 3rem;
	margin-bottom: .5rem;
}
.hs-person-text em { color: var(--hs-braun-hell); }

/* ---------- Stellen (Karriere) ---------- */

.call-to-action.with-borders {
	border: 1px solid var(--hs-linie) !important;
	border-left: 6px solid var(--hs-gelb) !important;
	border-radius: var(--hs-radius);
	background: #fff;
	box-shadow: var(--hs-schatten);
}
.rotate-l-3 { transform: none; }
@media (min-width: 992px) {
	html.boxed .main { overflow: clip; }   /* Theme: overflow hidden schaltet sticky ab */
	.hs-sticky { position: sticky; top: 30px; }
}
#JobBlock { border: 0; background: transparent; padding: 0; margin: 0 0 1rem; }

/* ---------- Kontaktband (vor dem Fuß) ---------- */

.hs-cta {
	position: relative;
	overflow: hidden;
	background: linear-gradient(120deg, var(--hs-braun-dunkel) 0%, var(--hs-braun) 55%, #7a4a26 100%);
	color: #fff;
	padding: 3.5rem 0;
}
.hs-cta::before {
	content: "";
	position: absolute;
	right: -80px; top: -80px;
	width: 320px; height: 320px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(251, 185, 0, .35) 0%, rgba(251, 185, 0, 0) 70%);
}
.hs-cta h2 { color: #fff !important; font-size: 1.9rem; margin-bottom: .4rem; }
.hs-cta p { color: rgba(255, 255, 255, .8); margin: 0; }
.hs-cta-aktionen { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: flex-end; }
@media (max-width: 991px) { .hs-cta-aktionen { justify-content: flex-start; margin-top: 1.5rem; } }

/* ---------- Fuß ---------- */

html.boxed #footer { border-top: 0; }
#footer { font-size: .95rem; }
#footer .foot { padding-top: 2.5rem; background-size: auto 85%; }
#footer h3 { color: var(--hs-gelb) !important; font-size: 1.15rem; font-weight: 600; margin-top: .5rem !important; }
#footer ul { padding-left: 1.1rem; }
#footer ul.list-unstyled { padding-left: 0; }
#footer li { line-height: 1.9; }
#footer a:hover { color: var(--hs-gelb) !important; }
#footer .social-icons li { background: rgba(255, 255, 255, .12); border-radius: 50%; transition: background .2s; }
#footer .social-icons li:hover { background: var(--hs-gelb); }
#footer .copyright { border-top: 1px solid rgba(255, 255, 255, .15); margin-top: 1rem; }
#footer .copyright p { font-size: .82rem; opacity: .85; }

/* ---------- Startseite ---------- */

/* Text auf dem großen Bild */
.hs-hero { position: relative; }
.hs-hero-text {
	position: absolute;
	inset: 0;
	z-index: 5;
	display: flex;
	align-items: flex-end;
	pointer-events: none;
	background: linear-gradient(90deg, rgba(40, 22, 9, .9) 0%, rgba(40, 22, 9, .7) 40%, rgba(40, 22, 9, .15) 70%, rgba(40, 22, 9, 0) 85%);
}
.hs-hero-knoepfe .btn, .hs-cta .btn { text-transform: none; font-size: 1rem; letter-spacing: 0; }
.hs-hero-text .container-xl { padding-bottom: 4.5rem; }
.hs-hero-text * { pointer-events: auto; }
.hs-hero-kicker {
	display: inline-block;
	padding: .35rem .9rem;
	border-radius: var(--hs-radius-knopf);
	background: var(--hs-gelb);
	color: var(--hs-braun-dunkel);
	font-weight: 600;
	font-size: .8rem;
	letter-spacing: .08em;
	text-transform: uppercase;
	margin-bottom: 1rem;
}
.hs-hero-text h1 {
	color: #fff !important;
	font-size: clamp(1.9rem, 4vw, 3.3rem);
	font-weight: 700;
	max-width: 15em;
	margin-bottom: .8rem;
}
.hs-hero-text h1 span { color: var(--hs-gelb); }
.hs-hero-text p { color: rgba(255, 255, 255, .88); font-size: 1.1rem; max-width: 34em; margin-bottom: 1.6rem; }
.hs-hero-knoepfe { display: flex; flex-wrap: wrap; gap: .75rem; }
.hs-hero-knoepfe .btn-primary { padding: .8rem 1.6rem; }
@media (max-width: 767px) {
	.hs-hero-text { position: relative; background: var(--hs-braun-dunkel); }
	.hs-hero-text .container-xl { padding: 2rem 1.25rem; }
}

/* Leistungs-Kacheln mit Symbol */
.hs-leistungen { background: #fff; padding: 4.5rem 0 3.5rem; }
.hs-kopf { text-align: center; max-width: 46rem; margin: 0 auto 2.75rem; }
.hs-kopf .hs-kicker {
	display: block;
	color: var(--hs-braun-hell);
	font-weight: 600;
	font-size: .8rem;
	letter-spacing: .14em;
	text-transform: uppercase;
	margin-bottom: .5rem;
}
.hs-kopf h2 { font-size: clamp(1.7rem, 3vw, 2.4rem); margin-bottom: .75rem; }
.hs-kopf p { color: var(--hs-text-leise); margin: 0; }

.hs-leistung {
	display: block;
	height: 100%;
	padding: 1.75rem 1.5rem;
	border: 1px solid var(--hs-linie);
	border-radius: var(--hs-radius);
	background: #fff;
	text-decoration: none !important;
	box-shadow: 0 8px 22px -18px rgba(60, 34, 15, .5);
	transition: transform .25s, box-shadow .25s, border-color .25s;
}
.hs-leistung:hover { transform: translateY(-6px); box-shadow: var(--hs-schatten-hover); border-color: var(--hs-gelb); }
.hs-leistung-symbol {
	width: 3.2rem; height: 3.2rem;
	display: flex; align-items: center; justify-content: center;
	border-radius: var(--hs-radius-klein);
	background: var(--hs-gelb-hell);
	color: var(--hs-braun);
	font-size: 1.35rem;
	margin-bottom: 1.1rem;
	transition: background .25s, color .25s;
}
.hs-leistung:hover .hs-leistung-symbol { background: var(--hs-gelb); color: var(--hs-braun-dunkel); }
.hs-leistung h3 { font-size: 1.15rem; font-weight: 600; margin: 0 0 .4rem !important; line-height: 1.3; }
.hs-leistung p { color: var(--hs-text-leise); font-size: .93rem; margin: 0 0 .8rem; line-height: 1.6; }
.hs-leistung .hs-mehr { color: var(--hs-braun); font-weight: 600; font-size: .88rem; }
.hs-leistung .hs-mehr::after { content: " \2192"; transition: margin .2s; }
.hs-leistung:hover .hs-mehr::after { margin-left: .3rem; }

/* Fakten-Leiste */
.hs-fakten { background: var(--hs-gelb); padding: 2.25rem 0; }
.hs-fakt { display: flex; align-items: center; gap: 1rem; color: var(--hs-braun-dunkel); }
.hs-fakt i { font-size: 1.6rem; width: 2.8rem; height: 2.8rem; flex: none; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: rgba(255, 255, 255, .45); }
.hs-fakt strong { display: block; font-size: 1.15rem; line-height: 1.2; }
.hs-fakt span { font-size: .88rem; line-height: 1.35; display: block; opacity: .85; }

/* "Aktuelles" auf der Startseite */
.hs-aktuell-titel {
	font-size: .8rem !important;
	font-weight: 600 !important;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--hs-braun-hell) !important;
	opacity: 1 !important;
	text-align: left !important;
}

.hs-kicker-links {
	display: block;
	color: var(--hs-braun-hell);
	font-weight: 600;
	font-size: .8rem;
	letter-spacing: .14em;
	text-transform: uppercase;
	margin-bottom: .5rem;
}
.hs-liste, .hs-partner-text ul { list-style: none; padding: 0; margin: 1.2rem 0 1.5rem; }
.hs-liste li, .hs-partner-text ul li { position: relative; padding: .35rem 0 .35rem 2.1rem; }
.hs-liste li::before,
.hs-partner-text ul li::before {
	content: "\f00c";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	left: 0; top: .5rem;
	width: 1.35rem; height: 1.35rem;
	display: flex; align-items: center; justify-content: center;
	border-radius: 50%;
	background: var(--hs-gelb);
	color: var(--hs-braun-dunkel);
	font-size: .65rem;
}
.hs-btn-normal { text-transform: none; font-size: 1rem; letter-spacing: 0; }

/* Brauner Bilder-Abschnitt */
.section.bg-secondary { background: linear-gradient(160deg, #6a3c1c 0%, var(--hs-braun-dunkel) 100%) !important; }
.section.bg-secondary h1 { font-weight: 600; }

/* ---------- Bewerbungsformular passend ---------- */
.bw { border-radius: var(--hs-radius); }

/* ---------- Bewegung reduzieren, wenn gewünscht ---------- */
@media (prefers-reduced-motion: reduce) {
	* { transition: none !important; animation: none !important; }
}

/* Startseite "Ihr Partner vor Ort": Überschrift aus dem Block ohne Akzentstrich-Abstand */
.hs-partner-text h2 { margin-bottom: .75rem; }
