/* Gemeinsame semantische Überschriftenhierarchie */
H1,
H2,
H3,
H4,
H5 {
	font-family: "Libre Caslon Display", Georgia, serif;
	font-weight: 400;
	color: #4a4a4a;
	white-space: normal;
}

H2 {
	
	line-height: 1.08;
	letter-spacing: .01em;
	margin: 0 0 20px;
	text-align: center;
}

H3 {
	
	line-height: 1.16;
	letter-spacing: 0;
	margin: 0 0 24px;
	text-align: center;
}

H4 {
	
	line-height: 1.35;
	letter-spacing: 0;
	margin: 0 0 18px;
}



@media (max-width: 760px) {
	H2 {  }
	H3 {  }
	H4 {  }
}

/*
 * Events for Eternity – zentrale Styles
 * Bereinigt am 19.07.2026
 *
 * Enthält:
 * - allgemeines Designsystem
 * - wiederverwendbare Inhaltsbereiche
 * - Startseitenbereiche ab dem zweiten Block
 * - gemeinsame Unterseitenbausteine
 *
 * Header, Hero und der erste Block nach dem Hero bleiben bewusst
 * inline in der index.html.
 */

















.LeftRight {
	position: relative;
}

.LeftRight H2 {
	z-index: 99;
	position: absolute;
	left: 50%;
	margin: 50px 0px 0px -125px;
	text-align: left;
	padding: 30px 50px 30px 50px;
	background-color: #efefef;
	opacity: 0.9;
	color: #000000;
	text-transform: uppercase;
}

.LeftRight H2 SPAN {
	display: block;
	
	line-height: normal;
	margin-top: 10px;
	text-transform: none;
}

.Section.BGDunkelGrau.LeftRight H1 {
	color: #ffffff;
	background-color: #6D6D6D;
}

.LeftRight.Right H2 {
	left: auto;
	right: 50%;
	margin: 50px -125px 0px 0px;
	text-align: right;
}

.LeftRight .ImgParent {
	width: 50%;
	position: absolute;
	overflow: hidden;
	top: 0px;
	left: 0px;
	right: 50%;
	bottom: 0px;
}

.LeftRight.Right .ImgParent {
	left: 50%;
	right: 0px;
}

.LeftRight IMG {
	height: 100%;
	width: 100% !important;
	object-fit: cover;
	object-position: center center;
}

.LeftRight .Text {
	width: 50%;
	float: right;
}

.LeftRight .Text DIV.Desc {
	padding: 250px 0px 60px 50px;
}

.LeftRight.Right .Text {
	width: 50%;
	float: left;
}

.LeftRight.Right .Text DIV.Desc {
	padding: 250px 50px 60px 0px;
}

.LeftRight.BGHellBlau H1 {
	background-color: #f6f5ed !important;
}

LABEL.CheckBoxCL {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	position: relative;

	margin-top: 3px;
	margin-bottom: 3px;
	cursor: pointer;
}

LABEL.CheckBoxCL:before {
	content: "";
	display: inline-block;
	position: relative;
	width: 30px;
}

LABEL.CheckBoxCL INPUT {
	position: absolute;
	opacity: 0;
	height: 0;
	width: 0;
	cursor: pointer;
}

LABEL.CheckBoxCL SPAN {
	position: absolute;
	top: 0;
	left: 0px;
	height: 20px;
	width: 20px;
	background-color: #ffffff;
	border: 1px solid #cdcdcd;
}

LABEL.CheckBoxCL:hover INPUT ~ SPAN {
	border-color: #000000;
}

LABEL.CheckBoxCL INPUT:checked ~ SPAN:after {
	display: block;
}

LABEL.CheckBoxCL SPAN:after {
	content: "";
	position: absolute;
	display: none;
	left: 7px;
	top: 2px;
	width: 5px;
	height: 10px;
	border: solid #000000;
	border-width: 0 1px 1px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media ( max-width : 850px) {
.Section.KeinAbstandZumNaechsten {
	padding-bottom: 50px;
}

.LeftRight .ImgParent {
	position: relative;
	width: 100%;
	height: 350px;
	left: 0px !important;
	right: 0px !important;
}

.LeftRight.Kontakt .ImgParent {
	height: auto;
}

.LeftRight .Text {
	width: 100% !important;
	float: none !important;
}

.LeftRight H2 {
	margin: 0px 0px 0px 0px !important;
	text-align: center !important;
	padding: 30px 0px 30px 0px !important;
	position: relative;
	left: 0px !important;
	right: 0px !important;
}

.LeftRight .Text DIV.Desc {
	padding: 30px 0px 0px 0px !important;
}
}

.PremiumFAQSection {
	padding-top: 90px;
	padding-bottom: 90px;
}

.FAQContainer {
	max-width: 1120px;
}

.PremiumFAQIntro {
	text-align: center;
	max-width: 820px;
	margin: 0 auto 38px;
}

.PremiumFAQIntro h2 {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}



.FAQList {
	max-width: 920px;
	margin: 0 auto;
}

.FAQItem {
	text-align: left;
	background: rgba(255, 255, 255, 0.82);
	border: 1px solid rgba(0, 0, 0, 0.06);
	border-radius: 12px;
	margin-bottom: 14px;
	overflow: hidden;
	transition: background-color 0.22s ease, box-shadow 0.22s ease,
		border-color 0.22s ease, transform 0.18s ease;
}

.FAQItem:first-child {
	border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.FAQItem:hover {
	background: #ffffff;
	border-color: rgba(141, 125, 112, 0.18);
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.05);
	transform: translateY(-1px);
}

.FAQItem[open] {
	background: #ffffff;
	border-color: rgba(141, 125, 112, 0.22);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
}

.FAQItem summary {
	position: relative;
	list-style: none;
	cursor: pointer;
	padding: 22px 24px 22px 52px;
	font-size: 1.08rem;
	line-height: 1.45;
	font-weight: 500;
	color: #333333;
	transition: color 0.2s ease;
}

.FAQItem summary::-webkit-details-marker {
	display: none;
}

.FAQItem summary:hover {
	color: #000000;
}

.FAQItem summary::before {
	content: "";
	position: absolute;
	left: 22px;
	top: 50%;
	width: 14px;
	height: 1.5px;
	background-color: #8e8e8e;
	transform: translateY(-50%);
	transition: all 0.25s ease;
	border-radius: 2px;
}

.FAQItem summary::after {
	content: "";
	position: absolute;
	left: 22px;
	top: 50%;
	width: 14px;
	height: 1.5px;
	background-color: #8e8e8e;
	transform: translateY(-50%) rotate(90deg);
	transition: all 0.25s ease;
	border-radius: 2px;
}

.FAQItem summary:hover::before {
	background-color: #8d7d70;
}

.FAQItem summary:hover::after {
	background-color: #8d7d70;
}

.FAQItem[open] summary::before {
	background-color: #8d7d70;
}

.FAQItem[open] summary::after {
	background-color: #8d7d70;
	opacity: 0;
	transform: translateY(-50%) rotate(0deg);
}

.FAQAnswer {
	padding: 16px 24px 24px 52px;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
}

.FAQAnswer p {
	margin: 0;
	
	line-height: 1.8;
	color: #555555;
}

.FAQAnswer p+p {
	margin-top: 14px;
}

.FAQAnswer ul {
	margin: 14px 0 0 18px;
	padding: 0;
	color: #555555;
}

.FAQAnswer li {
	margin-top: 6px;
	line-height: 1.75;
}

@media ( max-width : 900px) {
.PremiumFAQSection {
	padding-top: 72px;
	padding-bottom: 72px;
}

.PremiumFAQIntro {
	margin-bottom: 30px;
}

.FAQList {
	max-width: none;
}

.FAQItem {
	margin-bottom: 12px;
	border-radius: 10px;
}

.FAQItem summary {
	padding: 20px 20px 20px 46px;
	font-size: 1rem;
}

.FAQItem summary::before {
	left: 20px;
	width: 13px;
}

.FAQItem summary::after {
	left: 20px;
	width: 13px;
}

.FAQAnswer {
	padding: 14px 20px 20px 46px;
}

.FAQAnswer p {
	
	line-height: 1.72;
}
}

@media ( max-width : 640px) {
.PremiumFAQSection {
	padding-top: 64px;
	padding-bottom: 64px;
}

.PremiumFAQIntro {
	margin-bottom: 24px;
}



.FAQItem {
	margin-bottom: 10px;
	border-radius: 9px;
}

.FAQItem summary {
	padding: 18px 16px 18px 40px;
	font-size: 0.95rem;
	line-height: 1.4;
}

.FAQItem summary::before {
	left: 16px;
	width: 12px;
}

.FAQItem summary::after {
	left: 16px;
	width: 12px;
}

.FAQAnswer {
	padding: 12px 16px 18px 40px;
}

.FAQAnswer p {
	
	line-height: 1.68;
}
}

.IntroWedding {
	padding-top: 82px;
	padding-bottom: 28px;
	text-align: center;
}

.IntroWedding h2 {
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
}

.PremiumLeistungsUeberblick {
	padding-top: 8px;
	padding-bottom: 60px;
}

.PremiumLeistungsUeberblick .LeistungsUeberblickGrid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 26px;
}

.PremiumLeistungsUeberblick .LeistungsUeberblickItem {
	display: block;
	padding: 30px 24px 26px;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.05);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.05);
	color: inherit;
}

.PremiumLeistungsUeberblick .LeistungsUeberblickItem:hover {
	transform: none;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.05);
}

.PremiumLeistungsUeberblick .LeistungsUeberblickNummer {
	margin-bottom: 12px;
	font-size: 0.78rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #8d7d70;
	opacity: 0.75;
}

.PremiumLeistungsUeberblick .LeistungsUeberblickItem h3 {
	margin: 0 0 10px;
	
	line-height: 1.25;
	text-align: center;
}

.PremiumLeistungsUeberblick .LeistungsUeberblickItem p {
	margin: 0;
	
	line-height: 1.55;
	text-align: center;
	color: #6a6a6a;
}

.SectionTitelBlock {
	padding-top: 0;
	padding-bottom: 12px;
}

.LeistungsAbschnitt {
	padding-top: 100px;
	padding-bottom: 100px;
}

.LeistungsGrid {
	display: grid;
	grid-template-columns: minmax(0, 1.28fr) minmax(0, 0.72fr);
	gap: 78px;
	align-items: center;
}

.LeistungsAbschnitt.Reverse .LeistungsGrid {
	grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
}

.LeistungsAbschnitt.Reverse .LeistungsBild {
	order: 2;
}

.LeistungsAbschnitt.Reverse .LeistungsText {
	order: 1;
}

.LeistungsBild img {
	display: block;
	width: 100%;
	aspect-ratio: 1.22/1;
	object-fit: cover;
	border-radius: 18px;
	box-shadow: 0 24px 54px rgba(0, 0, 0, 0.10);
}

.LeistungsText {
	max-width: 520px;
}

.LeistungsNummer {
	margin-bottom: 14px;
	font-size: 0.78rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #8d7d70;
	opacity: 0.75;
}

.LeistungsText h2 {
	text-align: left;
	margin-bottom: 22px;
}

.LeistungsText p {
	line-height: 1.88;
	
	color: #5a5a5a;
}

.LeistungsText p+p {
	margin-top: 14px;
}

.Highlight {
	color: #4a4a4a;
	font-weight: 500;
}

.AbschlussCTA {
	padding-top: 70px;
	padding-bottom: 110px;
	text-align: center;
}

.AbschlussCTA .center {
	margin-top: 24px;
}

@media ( max-width : 1100px) {
.PremiumLeistungsUeberblick .LeistungsUeberblickGrid {
	grid-template-columns: repeat(2, 1fr);
}

.LeistungsGrid {
	grid-template-columns: 1fr;
	gap: 36px;
}

.LeistungsAbschnitt.Reverse .LeistungsGrid {
	grid-template-columns: 1fr;
	gap: 36px;
}

.LeistungsAbschnitt.Reverse .LeistungsBild {
	order: unset;
}

.LeistungsAbschnitt.Reverse .LeistungsText {
	order: unset;
}

.LeistungsText h2 {
	text-align: center;
}

.LeistungsText {
	max-width: none;
	text-align: center;
}

.LeistungsNummer {
	text-align: center;
}
}

@media ( max-width : 640px) {
.IntroWedding {
	padding-top: 54px;
	padding-bottom: 16px;
}

.PremiumLeistungsUeberblick .LeistungsUeberblickGrid {
	grid-template-columns: 1fr;
}

.LeistungsAbschnitt {
	padding-top: 64px;
	padding-bottom: 64px;
}

.SectionTitelBlock {
	padding-top: 0;
}
}

.HochzeitPage .IntroWedding {
	padding-top: 108px;
	padding-bottom: 78px;
}

.HochzeitPage .VideoFullWidth {
	padding-top: 10px;
	padding-bottom: 106px;
}

.HochzeitPage .VideoHero {
	width: 100%;
	border-radius: 22px;
	overflow: hidden;
	box-shadow: 0 30px 84px rgba(0, 0, 0, 0.14);
}

.HochzeitPage .VideoHero .VideoPoster {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16/9;
	object-fit: cover;
}

.HochzeitPage .HochzeitWarumLinda {
	padding-top: 102px;
	padding-bottom: 100px;
}

.HochzeitPage .AboutLindaIntro {
	max-width: 980px;
	margin: 0 auto 58px;
}

.HochzeitPage .AboutLindaGrid {
	grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr);
	gap: 74px;
	align-items: start;
}

.HochzeitPage .AboutLindaImage {
	position: sticky;
	top: 118px;
	align-self: start;
}

.HochzeitPage .AboutLindaImage img {
	border-radius: 20px;
	box-shadow: 0 30px 80px rgba(0, 0, 0, 0.14);
}

.HochzeitPage .AboutLindaText {
	max-width: 500px;
}

.HochzeitPage .AboutLindaText p {
	line-height: 1.95;
}

.HochzeitPage .PremiumLeistungsUeberblick {
	padding-top: 22px;
	padding-bottom: 92px;
}

.HochzeitPage .PremiumLeistungsUeberblick .LeistungsUeberblickGrid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
	align-items: stretch;
}

.HochzeitPage .PremiumLeistungsUeberblick .LeistungsUeberblickItem {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	min-height: 100%;
	padding: 34px 20px 26px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(0, 0, 0, 0.035);
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.04);
	transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.HochzeitPage .PremiumLeistungsUeberblick .LeistungsUeberblickItem:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 36px rgba(0, 0, 0, 0.07);
}

.HochzeitPage .PremiumLeistungsUeberblick .LeistungsUeberblickNummer {
	margin-bottom: 12px;
	font-size: 0.72rem;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #8d7d70;
	opacity: 0.56;
}

.HochzeitPage .PremiumLeistungsUeberblick .LeistungsUeberblickItem h3 {
	min-height: 72px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 12px;
	
	line-height: 1.24;
	text-align: center;
	letter-spacing: 0.01em;
}

.HochzeitPage .PremiumLeistungsUeberblick .LeistungsUeberblickItem p {
	margin: 0;
	
	line-height: 1.56;
	text-align: center;
	color: #696969;
}

.HochzeitPage .SectionTitelBlock {
	padding-top: 14px;
	padding-bottom: 10px;
}

.HochzeitPage .SectionTitelBlock h2 {
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
}

.HochzeitPage .LeistungsAbschnitt:nth-of-type(odd) {
	background: #ffffff;
}

.HochzeitPage .LeistungsAbschnitt:nth-of-type(even) {
	background: #faf8f6;
}

.HochzeitPage .LeistungsAbschnitt#komplettplanung {
	padding-top: 126px;
}

.HochzeitPage .LeistungsAbschnitt#locationsuche {
	padding-top: 92px;
}

.HochzeitPage .LeistungsAbschnitt#dienstleister {
	padding-top: 118px;
}

.HochzeitPage .LeistungsAbschnitt#hochzeitstag {
	padding-top: 96px;
}

.HochzeitPage .LeistungsAbschnitt.Reverse .LeistungsGrid {
	grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
}

.HochzeitPage .LeistungsNummer {
	margin-bottom: 16px;
	font-size: 0.72rem;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: #8d7d70;
	opacity: 0.54;
}

.HochzeitPage .LeistungsText h2 {
	margin-bottom: 24px;
	text-align: left;
	font-weight: 500;
	letter-spacing: 0.02em;
}

.HochzeitPage .LeistungsText p {
	
	line-height: 1.94;
	color: #595959;
}

.HochzeitPage .LeistungsText p+p {
	margin-top: 15px;
}

.HochzeitPage .FAQSection {
	padding-top: 100px;
	padding-bottom: 98px;
}

.HochzeitPage .AbschlussCTA {
	padding-top: 88px;
	padding-bottom: 48px;
}

@media ( max-width : 1180px) {
.HochzeitPage .AboutLindaGrid {
	gap: 54px;
}

.HochzeitPage .LeistungsGrid {
	gap: 54px;
}

.HochzeitPage .LeistungsAbschnitt.Reverse .LeistungsGrid {
	gap: 54px;
}

.HochzeitPage .PremiumLeistungsUeberblick .LeistungsUeberblickGrid {
	gap: 16px;
}
}

@media ( max-width : 980px) {
.HochzeitPage .PremiumLeistungsUeberblick .LeistungsUeberblickGrid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.HochzeitPage .LeistungsAbschnitt {
	padding-top: 82px !important;
	padding-bottom: 82px;
}

.HochzeitPage .LeistungsGrid {
	grid-template-columns: 1fr;
	gap: 36px;
}

.HochzeitPage .LeistungsAbschnitt.Reverse .LeistungsGrid {
	grid-template-columns: 1fr;
	gap: 36px;
}

.HochzeitPage .AboutLindaGrid {
	grid-template-columns: 1fr;
	gap: 36px;
}

.HochzeitPage .LeistungsAbschnitt.Reverse .LeistungsBild {
	order: unset;
}

.HochzeitPage .LeistungsBild {
	position: relative;
	top: auto;
}

.HochzeitPage .AboutLindaImage {
	position: relative;
	top: auto;
}

.HochzeitPage .LeistungsBild img {
	width: 100%;
	margin-left: 0;
}

.HochzeitPage .AboutLindaImage img {
	width: 100%;
	margin-left: 0;
}

.HochzeitPage .LeistungsAbschnitt.Reverse .LeistungsText {
	order: unset;
	max-width: none;
	margin-left: 0;
}

.HochzeitPage .LeistungsText {
	max-width: none;
	margin-left: 0;
	text-align: center;
}

.HochzeitPage .LeistungsText h2 {
	text-align: center;
}

.HochzeitPage .LeistungsNummer {
	text-align: center;
}

.HochzeitPage .AboutLindaText {
	max-width: none;
	margin-left: 0;
	text-align: center;
}

.HochzeitPage .AboutLindaText h2 {
	text-align: center;
}

.HochzeitPage .AboutLindaText p {
	text-align: center;
}
}

@media ( max-width : 640px) {
.HochzeitPage .IntroWedding {
	padding-top: 64px;
	padding-bottom: 64px;
}

.HochzeitPage .VideoFullWidth {
	padding-top: 64px;
	padding-bottom: 64px;
}

.HochzeitPage .HochzeitWarumLinda {
	padding-top: 64px;
	padding-bottom: 64px;
}

.HochzeitPage .FAQSection {
	padding-top: 64px;
	padding-bottom: 64px;
}

.HochzeitPage .PremiumLeistungsUeberblick {
	padding-top: 18px;
	padding-bottom: 70px;
}

.HochzeitPage .PremiumLeistungsUeberblick .LeistungsUeberblickGrid {
	grid-template-columns: 1fr;
	gap: 16px;
}

.HochzeitPage .PremiumLeistungsUeberblick .LeistungsUeberblickItem h3 {
	min-height: auto;
	
}

.HochzeitPage .LeistungsAbschnitt {
	padding-top: 66px !important;
	padding-bottom: 66px;
}

.HochzeitPage .LeistungsBild img {
	border-radius: 14px;
}

.HochzeitPage .VideoHero {
	border-radius: 14px;
}

.HochzeitPage .VideoHero .VideoPoster {
	border-radius: 14px;
}

.HochzeitPage .AboutLindaImage img {
	border-radius: 14px;
}
}

.HochzeitPage .LeistungsAbschnitt.Reverse .LeistungsBild {
	position: sticky;
	top: 118px;
	align-self: start;
	margin-top: 0 !important;
	transform: none !important;
}

.HochzeitPage .LeistungsBild img {
	display: block;
	width: 106%;
	margin-left: -3%;
	aspect-ratio: 1.16/1;
	object-fit: cover;
	border-radius: 20px;
	box-shadow: 0 30px 80px rgba(0, 0, 0, 0.14);
	margin-top: 0 !important;
}

.HochzeitPage .LeistungsAbschnitt.Reverse .LeistungsText {
	margin-left: auto;
	align-self: start;
	padding-top: 0 !important;
}

@media ( max-width : 980px) {
.HochzeitPage .LeistungsBild {
	position: relative;
	top: auto;
}

.HochzeitPage .LeistungsAbschnitt.Reverse .LeistungsBild {
	position: relative;
	top: auto;
}
}

.HochzeitPage .LeistungsGrid {
	display: grid;
	grid-template-columns: minmax(0, 1.06fr) minmax(0, 0.94fr);
	gap: 78px;
	align-items: start !important;
}

.HochzeitPage .LeistungsBild {
	align-self: start !important;
	position: sticky !important;
	top: 118px;
	margin-top: 0 !important;
	transform: none !important;
}

.HochzeitPage .LeistungsText {
	align-self: start !important;
	max-width: 468px;
	padding-top: 0 !important;
}

.HochzeitPage .LeistungsAbschnitt {
	position: relative;
	padding-top: 108px;
	padding-bottom: 108px;
	border-top: 1px solid rgba(0, 0, 0, 0.035);
	min-height: 1100px;
}

@media ( max-width : 980px) {
.HochzeitPage .LeistungsBild {
	position: relative !important;
	top: auto;
}

.HochzeitPage .LeistungsAbschnitt {
	min-height: auto;
}
}

.ImageCardSection {
	background: #ffffff;
}

.ReferenzenSection {
	background: #ffffff;
}

.ImageCardSection.Hervorgehoben {
	background: #f7f7f7;
}

.ReferenzenSection.Hervorgehoben {
	background: #f7f7f7;
}

.ImageCardSection .SectionText {
	max-width: 860px;
	margin-left: auto;
	margin-right: auto;
}

.ReferenzenSection .SectionText {
	max-width: 860px;
	margin-left: auto;
	margin-right: auto;
}

.ImageCardGrid {
	display: grid;
	gap: 28px;
	margin-top: 55px;
}

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

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

.ImageCard {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1.18;
	overflow: hidden;
	background: #dedbd7;
	box-shadow: 0 18px 42px rgba(0, 0, 0, 0.08);
	text-decoration: none;
	color: #ffffff;
}

.ImageCard img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.45s ease;
}

.ImageCard:after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.58), rgba(0, 0, 0, 0.16) 58%, rgba(0, 0, 0, 0.04));
	z-index: 1;
}

.ImageCard:hover img {
	transform: scale(1.04);
}

.ImageCardContent {
	position: absolute;
	left: 22px;
	right: 22px;
	bottom: 22px;
	z-index: 2;
	text-align: center;
}

.ImageCardKategorie {
	display: block;
	
	font-size: 0.68rem;
	line-height: 1.4;
	letter-spacing: 0.18em;
	font-weight: 400;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.82);
	margin-bottom: 8px;
}

.ImageCard h3 {
	margin: 0;
	
	line-height: 1.02;
	font-weight: 400;
	letter-spacing: 0.02em;
	color: #ffffff;
	text-align: center;
}

.ImageCardHinweis {
	max-width: 760px;
	margin: 50px auto 0;
	text-align: center;
}

@media (max-width: 980px) {
.ImageCardGrid.DreiSpalten {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

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

@media (max-width: 620px) {
.ImageCardGrid.DreiSpalten {
	grid-template-columns: 1fr;
	gap: 22px;
}

.ImageCardGrid.VierSpalten {
	grid-template-columns: 1fr;
	gap: 22px;
}

.ImageCard {
	aspect-ratio: 16 / 11;
	width: 100vw;
	max-width: none;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.ImageCardContent {
	left: 26px;
	right: 26px;
	bottom: 24px;
}
}

.WeddingInspirationPage .FarbweltenSection {
	padding-top: 88px;
	padding-bottom: 104px;
	text-align: center;
	background: #ffffff;
}

.WeddingInspirationPage .FarbweltenSection .FarbweltenIntro {
	max-width: 760px;
	margin: 0 auto 34px auto;
}

.WeddingInspirationPage .FarbweltenGrid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 22px;
	max-width: 1120px;
	margin: 48px auto 0 auto;
}

.WeddingInspirationPage .FarbweltItem {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #ececed;
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.07);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.WeddingInspirationPage .FarbweltItem:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 44px rgba(0, 0, 0, 0.12);
}

.WeddingInspirationPage .FarbweltItem img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.45s ease;
}

.WeddingInspirationPage .FarbweltItem:hover img {
	transform: scale(1.04);
}

.WeddingInspirationPage .FarbweltItem span {
	position: absolute;
	left: 50%;
	bottom: 22px;
	transform: translateX(-50%);
	min-width: 92px;
	padding: 9px 16px 8px;
	background: rgba(255, 255, 255, 0.82);
	color: #4a4a4a;
	font-family: "Libre Caslon Display", Georgia, serif;
	font-size: 0.72rem;
	line-height: 1.2;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	white-space: nowrap;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
}

.WeddingInspirationPage .EditorialHinweis {
	max-width: 760px;
	margin: 34px auto 0 auto;
}

.WeddingInspirationPage .LoveNotesBlock {
	margin: 64px auto 0 auto;
	max-width: 1120px;
	padding-top: 52px;
	border-top: 1px solid rgba(141,125,112,0.24);
}

.WeddingInspirationPage .LoveNotesEditorialList {
	display: grid;
	gap: 58px;
	margin-top: 46px;
}

.WeddingInspirationPage .LoveNoteFeature {
	display: grid;
	grid-template-columns: minmax(260px, 0.62fr) minmax(0, 1fr);
	gap: 44px;
	align-items: start;
	text-align: left;
}

.WeddingInspirationPage .LoveNoteFeature.Reverse {
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.62fr);
}

.WeddingInspirationPage .LoveNoteFeature.Reverse .LoveNoteImage {
	order: 2;
}

.WeddingInspirationPage .LoveNoteImage {
	margin: 0;
}

.WeddingInspirationPage .LoveNoteImage img {
	display: block;
	width: 100%;
	height: auto;
	box-shadow: 0 18px 44px rgba(0,0,0,0.08);
}

.WeddingInspirationPage .LoveNoteText h3 {
	margin: 0 0 22px 0;
	font-family: var(--font-serif, Georgia, serif);
	
	font-weight: 400;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	text-align: left;
}

.WeddingInspirationPage .LoveNoteZitat {
	margin: 0 0 22px 0;
	font-family: var(--font-serif, Georgia, serif);
	font-size: clamp(1.16rem, 1.45vw, 1.48rem);
	line-height: 1.58;
	color: rgba(35,31,28,0.92);
}

.WeddingInspirationPage .LoveNoteText p:not(.LoveNoteZitat) {
	font-size: 1.06rem;
	line-height: 1.78;
	margin: 0 0 16px 0;
}

.WeddingInspirationPage .LoveNoteDivider {
	width: 20px;
	height: 5px;
	border-radius: 999px;
	background: #8d7d70;
	margin: 28px 0 34px 0;
}

.WeddingInspirationPage .LoveNoteButton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 11px 24px;
	margin-top: 12px;
	background: rgba(141,125,112,0.16);
	color: #6f6157;
	text-decoration: none;
	font-family: var(--font-serif, Georgia, serif);
	
	line-height: 1.2;
	box-shadow: 0 8px 18px rgba(0,0,0,0.05);
}

.WeddingInspirationPage .LoveNoteButton:hover {
	background: #8d7d70;
	color: #fff;
}

@media (max-width: 1120px) {
.WeddingInspirationPage .FarbweltenGrid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}
}

@media (max-width: 980px) {
.WeddingInspirationPage .LoveNoteFeature {
	grid-template-columns: 1fr;
	gap: 28px;
}

.WeddingInspirationPage .LoveNoteFeature.Reverse {
	grid-template-columns: 1fr;
	gap: 28px;
}

.WeddingInspirationPage .LoveNoteFeature.Reverse .LoveNoteImage {
	order: 0;
}
}

@media (max-width: 760px) {
.WeddingInspirationPage .FarbweltenGrid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 36px;
}

.WeddingInspirationPage .FarbweltItem {
	box-shadow: none;
}

.WeddingInspirationPage .FarbweltItem span {
	bottom: 16px;
	min-width: 84px;
	font-size: 0.66rem;
	padding: 8px 11px 7px;
}

.WeddingInspirationPage .LoveNoteText {
	text-align: center;
}

.WeddingInspirationPage .LoveNoteText h3 {
	text-align: center;
}

.WeddingInspirationPage .LoveNoteText p {
	text-align: center;
}

.WeddingInspirationPage .LoveNoteDivider {
	margin-left: auto;
	margin-right: auto;
}
}

@media (max-width: 420px) {
.WeddingInspirationPage .FarbweltenGrid {
	grid-template-columns: 1fr;
	max-width: 280px;
	margin-left: auto;
	margin-right: auto;
}
}

.DetailPartnerSection .content-container-center {
	max-width: none;
}

.DetailPartnerList {
	position: relative;
	width: min(1040px, calc(100% - 34px));
	margin: 38px auto 0;
}

.DetailPartnerList::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: min(760px, calc(100% - 90px));
	height: 1px;
	background: rgba(111, 97, 87, 0.12);
	transform: translateX(-50%);
}

.DetailPartnerRow {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 18px minmax(0, 1fr);
	align-items: center;
	padding: 15px 0;
}

.DetailPartnerRow::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: min(760px, calc(100% - 90px));
	height: 1px;
	background: rgba(111, 97, 87, 0.12);
	transform: translateX(-50%);
}

.DetailPartnerLabel {
	grid-column: 1;
	
	font-size: 1.02rem;
	font-weight: 400;
	letter-spacing: 0.035em;
	text-transform: none;
	text-align: right;
	color: rgba(79, 70, 64, 0.72);
}

.DetailPartnerValue {
	grid-column: 3;
	text-align: left;
	
	font-size: 1.16rem;
	line-height: 1.28;
	color: #4f4640;
}

.DetailPartnerValue a:link {
	color: inherit;
	text-decoration: none;
}

.DetailPartnerValue a:visited {
	color: inherit;
	text-decoration: none;
}

.DetailPartnerValue a:hover {
	color: #8d7d70;
}

.DetailPartnerNavigation {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
	width: min(520px, calc(100% - 34px));
	margin: 38px auto 0;
	text-align: center;
}

@media (max-width: 640px) {
.DetailPartnerList {
	width: min(360px, calc(100% - 28px));
}

.DetailPartnerList::before {
	width: min(300px, 100%);
}

.DetailPartnerRow::after {
	width: min(300px, 100%);
}

.DetailPartnerRow {
	display: block;
	text-align: center;
	padding: 15px 0;
}

.DetailPartnerLabel {
	text-align: center;
	margin-bottom: 4px;
	font-size: 1rem;
	letter-spacing: 0.03em;
}

.DetailPartnerValue {
	text-align: center;
	font-size: 1.08rem;
}

.DetailPartnerNavigation {
	grid-template-columns: 1fr;
	gap: 12px;
	width: min(320px, calc(100% - 28px));
}

.DetailPartnerNavigation a {
	width: 100%;
	max-width: 320px;
	min-width: 0;
}
}

.FooterWillkommen > li:not([hidden])::after {
	content: none;
}

.FooterWillkommen > li:not([hidden]):has(+ li:not([hidden]))::after {
	content: "";
	display: block;
	width: 1px;
	position: absolute;
	right: 0px;
	top: 5px;
	bottom: 5px;
	background-color: rgba(37, 37, 37, 0.75);
}

@font-face {
	font-display: swap;
	font-family: "Libre Caslon Display";
	font-style: normal;
	font-weight: 400;
	src: url("fonts/Libre-Caslon-Display/libre-caslon-display-v18-latin-regular.woff2") format("woff2");
}

@font-face {
	font-display: swap;
	font-family: "Playfair Display";
	font-style: normal;
	font-weight: 400;
	src: url("fonts/Playfair-Display/playfair-display-v40-latin-regular.woff2") format("woff2");
}

* {
	margin: 0;
	padding: 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

TEXTAREA:read-only {
	background-color: #ececed !important;
}

IMG {
	border: 0px;
	margin: 0px;
	padding: 0px;
}

STRONG {
	font-weight: bold;
}

H1.SeoH1 {
	display: none;
}

H2 B {
	color: #000000;
}

H2 SPAN.DritteZeile {
	display: block;
	
	line-height: 1.45;
	font-weight: 400;
	letter-spacing: 0.2px;
	margin-top: 8px;
	text-transform: none;
	color: #7a7a7a;
}



UL {
	margin: 0px;
	list-style-position: outside;
	padding-left: 40px;
}

UL.PaddingP {
	margin-bottom: 16px;
}

A:link {
	color: #8d7d70;
	position: relative;
	text-decoration: none;
}

A:visited {
	color: #8d7d70;
}

A:hover {
	color: #6f6157;
	cursor: pointer;
}

A.Underlined:after {
	content: "";
	display: block;
	position: absolute;
	margin: auto;
	height: 1px;
	width: 100%;
	left: 0px;
	bottom: -2px;
	background-color: #252525;
	transition: transform 0.25s ease-out;
	transform: scaleX(1);
}

A.Underlined:hover:after {
	background-color: #252525;
	transform: scaleX(0);
}

TABLE {
	border-spacing: 0px;
	border-collapse: collapse;
	padding: 0px;
}

TABLE TD {
	padding: 0px;
}

.nowrap {
	white-space: nowrap;
}

.Section {
	padding-top: 45px;
	padding-bottom: 45px;
	clear: both;
}

.Section.KeinAbstandZumVorherigen {
	padding-top: 0px;
}

.Section.KeinAbstandZumNaechsten {
	padding-bottom: 0px;
}

.Section.KeineGrenzeZumNaechsten+.Section:before {
	display: none;
}

.Section:after {
	display: block;
	content: "";
	clear: both;
}

.Section.Hervorgehoben {
	background-color: #efefef;
}

.Section.Hervorgehoben H2 {
	color: #333333;
}

.content-container-center {
	max-width: 1182px;
	margin: auto;
	position: relative;
	clear: both;
	padding-left: 15px;
	padding-right: 15px;
}

.content-container-center.Padding0 {
	padding-left: 0px;
	padding-right: 0px;
}

.CookieInfo {

	width: 100%;
	padding: 15px;
	background-color: #646464;
	color: #ffffff;
	top: 0px;
	z-index: 2001;
	font-size: 18px;
	line-height: normal;
}

.CookieInfo .content-container-center {
	padding-left: 15px;
	padding-right: 15px;
	text-align: center;
}

.CookieInfo .gwt-HTML {
	position: relative;
	height: 56px;
}

.CookieInfo .MenuItemWeitereInfo {
	width: 100%;
	max-width: 300px;
	clear: both;

	height: 56px;

	margin: auto;
}

.CookieInfo .MenuItemWeitereInfo .Text {
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	text-align: center;
}

.CookieInfo .MenuItemWeitereInfo .Info {
	position: absolute;
	right: 0px;
	top: 0px;
}

.CookieInfo H3 {
	text-align: center;
}

.CookieInfo .Fließtextlink {
	color: #ee0000;
}

.HideCookieInfo .CookieInfo {
	display: none;
}

.BODY-LOADED .struct-footer {
	display: block;
}

.struct-footer .content-container-center {
	padding-left: 15px;
	padding-right: 15px;
}

.struct-footer .Impressum {
	font-size: 12px;
	line-height: 40px;
	margin-top: 0px;
}

.struct-footer .Impressum .Adresse {
	float: right;
}

.struct-footer A:link {
	display: inline;
	text-decoration: none;
	color: #242526;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.struct-footer A:visited {
	display: inline;
	text-decoration: none;
	color: #242526;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.struct-footer A:after {
	content: "";
	display: block;
	position: absolute;
	margin: auto;
	height: 1px;
	width: 100%;
	left: 0px;
	bottom: -1px;
	background-color: #252525;
	transition: transform 0.25s ease-out;
	transform: scaleX(0);
}

.struct-footer A.MenuItemSelected {

	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s;
	color: #252525;
}

.struct-footer A.MenuItemSelected:after {
	background-color: #252525;
	transform: scaleX(1);
	transition: all 0.3s;
}

.struct-footer A:hover {
	display: inline;
	text-decoration: none;
	color: #252525;

	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s;
}

.struct-footer A:hover:after {
	background-color: #252525;
	transform: scale(1);
}

.struct-footer .FooterKontakt A:after {
	display: none;
}

.Fließtextlink {
	color: #242526;
	transition: all 0.3s;
	display: inline;
	position: relative;
}

.Fließtextlink:after {
	content: "";
	display: block;
	position: absolute;
	margin: auto;
	height: 1px;
	width: 100%;
	left: 0px;
	bottom: 3px;
	background-color: #252525;
	transition: transform 0.25s ease-out;
	transform: scaleX(1);
}

.Fließtextlink:hover {
	color: #242526 !important;
}

.Fließtextlink:hover:after {
	background-color: #252525;
	transform: scaleX(0);
}

.FooterNavigation {
	padding-top: 20px;
	float: left;
}

.FooterRechtliches {
	padding-top: 20px;

	display: flex;
	align-items: center;
	justify-content: center;
}

.FooterRechtliches LI+LI {
	margin-left: 15px;
}

.FooterSocialLinks A:link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #242526;
	text-decoration: none;
	opacity: 0.68;
}

.FooterSocialLinks A:visited {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #242526;
	text-decoration: none;
	opacity: 0.68;
}

.FooterSocialLinks A:hover {
	opacity: 1;
	color: #000000;
}

.FooterSocialLinks A:after {
	display: none;
}

.FooterSocialLinks svg path {
	fill: currentColor !important;
	stroke: none !important;
}

.FooterSocialLinks SVG PATH {
	fill: currentColor !important;
	stroke: none !important;
}

.FooterSocialLinks path {
	fill: currentColor !important;
	stroke: none !important;
}

@media (max-width: 700px) {






.FooterSocialLinks {
	gap: 10px 16px;
	font-size: 10px;
	letter-spacing: 0.13em;
}
}

.FooterKontakt.FooterWillkommen {
	padding-top: 20px;
	position: relative;
	top: auto;
	left: auto;
	right: auto;
}

.FooterCopyright {
	margin-top: 30px;
	text-align: center;
	font-size: 14px;
}

.FooterWebdesignEntwicklung {
	margin-top: 30px;
	text-align: center;
	font-size: 14px;
}

.FooterPostadsresse {
	margin-top: 30px;
	text-align: center;
	font-size: 14px;
}

.FooterWebdesignEntwicklung A {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	text-decoration: none;
	color: inherit;
}

.FooterPostadsresse A {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	text-decoration: none;
	color: inherit;
}

.FooterWebdesignEntwicklung IMG {
	height: 20px;
	vertical-align: middle;
}

.struct-footer UL {
	list-style-type: none;
	padding-left: 0px;
}

.SOURCE-StructContent {
	position: relative;

}

.FooterWillkommen LI {
	padding: 0px 10px;
	line-height: 28px;
	height: 28px;
	overflow: hidden;
	position: relative;

}

.FooterWillkommen LI IMG {
	opacity: 0.5;
	vertical-align: middle;
}

.FooterWillkommen LI.Telefon A {
	font-size: 16px;
}

.FooterWillkommen LI.Telefon IMG {

	height: 20px;
}

.FooterWillkommen LI.EMail IMG {
	height: 18px;
}

.xFooterWillkommen LI+LI:after {
	content: "";
	display: block;
	width: 1px;
	position: absolute;
	left: 0px;
	top: 5px;
	bottom: 5px;
	background-color: rgba(37, 37, 37, 0.75);
}

.FooterWillkommen A {
	color: #000000;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 28px;
}

.FooterWillkommen IMG {
	max-height: 20px;
	margin-top: 4px;
	margin-bottom: 4px;
}

.FooterWillkommen SPAN {
	margin-left: 5px;
}

.FooterWillkommen .WhatsApp IMG {
	height: 22px;
	min-height: 22px;
	max-height: 22px;
	margin: auto;
}



.DetailNavigation a {
	text-transform: uppercase !important;
	letter-spacing: 0.13em !important;
}

.DetailPartnerNavigation a {
	width: 100%;
	min-width: 0;
	padding: 13px 18px;
	
	line-height: 1.12;
	text-align: center;
	justify-content: center;
	text-transform: uppercase !important;
	letter-spacing: 0.13em !important;
}

.LoveNoteButton {
	text-transform: uppercase !important;
	letter-spacing: 0.13em !important;
}





.FooterWillkommen {
	font-size: 14px;
	line-height: 28px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0px;
	list-style-type: none;
	font-family: "Libre Caslon Display", Georgia, serif;
	font-weight: 400;
	white-space: nowrap;
}



BODY {
	cursor: default;
	color: #4a4a4a;
	font-family: "Playfair Display", Georgia, serif;
	-webkit-font-smoothing: antialiased;
	font-size: 20px;
	font-weight: 400;
	line-height: 32px;
	letter-spacing: 0.15px;
	overflow-y: scroll;
	background-color: #ffffff;
}

P {
	margin-top: 0px;
	margin-bottom: 16px;
	line-height: 1.65;
	font-family: "Playfair Display", Georgia, serif;
}

LI {
	font-family: "Playfair Display", Georgia, serif;
}

INPUT {
	color: #242526;
	font-size: 19px;
	line-height: 24px;
	outline: none;
	font-family: "Playfair Display", Georgia, serif;
}

TEXTAREA {
	color: #242526;
	font-size: 19px;
	line-height: 24px;
	outline: none;
	font-family: "Playfair Display", Georgia, serif;
}

SELECT {
	font-family: "Playfair Display", Georgia, serif;
}

.active {
	background-color: #8d7d70;
}

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

.Intro {
	padding-top: 120px;
	padding-bottom: 120px;
	background: #ffffff;
	text-align: center;
}

.Intro h2 {
	max-width: 1100px;
	margin: 0 auto 26px;
	
	line-height: 0.98;
	letter-spacing: 0.025em;
}

.IntroCards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 34px;
	max-width: 1120px;
	margin: 0 auto;
}

.IntroCard {
	background: #faf8f7;
	padding: 48px 36px 44px;
	border: 1px solid rgba(0, 0, 0, 0.04);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.04);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.IntroCard:hover {
	transform: translateY(-6px);
	box-shadow: 0 22px 50px rgba(0, 0, 0, 0.08);
}

.IntroCardNummer {
	margin-bottom: 12px;
	font-size: 0.72rem;
	letter-spacing: 0.22em;
	color: #8d7d70;
	opacity: 0.75;
}

.IntroCard h3 {
	min-height: 72px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 18px;
	
	line-height: 1.08;
	font-weight: 500;
	color: #3f3f3f;
	text-align: center;
}

.IntroCard p {
	max-width: 320px;
	margin: 0 auto;
	
	color: #5a5a5a;
	line-height: 1.65;
}

@media ( max-width : 900px) {
.IntroCards {
	grid-template-columns: 1fr;
	gap: 24px;
}

.IntroCard {
	width: 100%;
	max-width: 400px;
	margin: 0 auto;
}
}

@media ( max-width : 760px) {
.Leistungen {
	padding-left: 0px;
	padding-right: 0px;
	overflow: hidden;
}

.Leistungen .Inner {
	width: 100%;
	max-width: none;
}

.Leistungen h2 {
	padding-left: 28px;
	padding-right: 28px;
}

.Leistungen .Subline {
	padding-left: 28px;
	padding-right: 28px;
}

.LeistungenGrid {
	gap: 72px;
}

.Leistung {
	background: #ffffff;
	box-shadow: none;
	transform: none;
}

.Leistung:hover {
	transform: none;
	box-shadow: none;
}

.Leistung img {
	width: 100vw;
	max-width: none;
	height: auto;
	aspect-ratio: 16/10;
	object-fit: cover;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	border-radius: 0px;
}

.LeistungContent {
	max-width: 520px;
	margin-left: auto;
	margin-right: auto;
	padding: 44px 30px 0px;
}

.LeistungContent h3 {
	min-height: 0px;
	margin-bottom: 26px;
	
	line-height: 1.05;
}

.LeistungContent p {
	max-width: 420px;
	
	line-height: 1.72;
}


}

.AboutLindaImage {
	position: sticky;
	top: 120px;
	align-self: start;
}

.AboutLindaText p.AboutLindaSubline {
	
	line-height: 1.5;
	font-weight: 400;
	color: #555;
	text-align: center;
	max-width: 700px;
	margin: 10px auto 40px auto;
}

.AboutLindaText p+p {
	margin-top: 18px;
}

.Warum .Subline {
	margin-bottom: 70px;
	color: #6a6a6a;
}

.WarumGrid {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 60px;
	align-items: start;
	text-align: left;
}

.WarumText p {
	margin-bottom: 18px;
	line-height: 1.8;
	color: #555;
}

.WarumListe {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.WarumItem {
	padding: 16px 20px;
	background: #ffffff;
	border-left: 3px solid #8d7d70;
	font-size: 0.95rem;
	line-height: 1.6;
}

@media ( max-width : 900px) {
.WarumGrid {
	grid-template-columns: 1fr;
	gap: 30px;
	text-align: center;
}

.WarumItem {
	text-align: left;
}
}

.Kundenstimmen .Subline {
	max-width: 760px;
	margin: 0 auto 55px;
	color: #6a6a6a;
	line-height: 1.7;
}

.VideoItem:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 44px rgba(0, 0, 0, 0.14);
}

.VideoPoster {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.VideoItem::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.30),
		rgba(0, 0, 0, 0.08));
	z-index: 1;
}

.PlayIcon {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%) scale(1.1);
	width: 76px;
	height: 76px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.18);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
	z-index: 2;
}

.VideoItem:hover .PlayIcon {
	transform: translate(-50%, -50%) scale(1.2);
}

.PlayIcon::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-40%, -50%);
	width: 0;
	height: 0;
	border-top: 12px solid transparent;
	border-bottom: 12px solid transparent;
	border-left: 18px solid #ffffff;
}

.VideoLightbox {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.78);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 9999;
	padding: 20px;
}

.VideoLightbox.hidden {
	display: none;
}

.VideoLightboxInner {
	position: relative;
	width: min(1100px, 100%);
	aspect-ratio: 16/9;
	background: #000000;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}

.VideoClose {
	position: absolute;
	top: 14px;
	right: 18px;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.42);
	color: #ffffff;
	font-size: 28px;
	line-height: 42px;
	text-align: center;
	cursor: pointer;
	z-index: 20;
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	transition: background 0.2s ease, transform 0.2s ease;
}

.VideoClose:hover {
	background: rgba(0, 0, 0, 0.7);
	transform: scale(1.05);
}

.VideoFrame {
	width: 100%;
	height: 100%;
}

.VideoFrame iframe {
	width: 100%;
	height: 100%;
	border: none;
}

.VideoConsent {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.82);
	color: white;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 30px;
	z-index: 5;
}

.VideoConsent.hidden {
	display: none;
}

.VideoConsent p {
	max-width: 620px;
	margin: 0 auto;
}

.VideoConsent button {
	margin-top: 20px;
	padding: 12px 24px;
	background: #a33;
	color: white;
	border: none;
	cursor: pointer;
	font: inherit;
}

@media ( max-width : 760px) {
.VideoGrid {
	grid-template-columns: 1fr;
}

.VideoLightbox {
	padding: 12px;
}

.VideoClose {
	top: 10px;
	right: 10px;
}
}

.ContactIntro {
	max-width: 820px;
	margin: 0 auto;
}

.SectionText strong {
	color: #8d7d70;
	font-size: 23px;
	font-weight: 600;
	margin-top: 15px;
	margin-bottom: 50px;
	display: block;
}















































































































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

.AboutLindaGrid {
	grid-template-columns: 1fr;
	gap: 36px;
}

.AboutLindaImage {
	position: relative;
	top: auto;
}

.AboutLindaImage img {
	max-width: 520px;
	margin: 0 auto;
}

.AboutLindaText h2 {
	text-align: center;
}

.AboutLindaText {
	max-width: none;
	text-align: center;
}

.AboutLindaText p {
	text-align: center;
}

.WhyItem {
	text-align: center;
}

.WhyGrid {
	grid-template-columns: 1fr 1fr;
}
}

@media ( max-width : 640px) {
.WhyGrid {
	grid-template-columns: 1fr;
}
}

@media ( max-width : 760px) {
H2 {
	
	margin-bottom: 20px;
}

.FuerDesktop {
	display: none !important;
}

.FuerMobil {
	display: inline-block !important;
}
}

@media ( max-width : 660px) {
H2 {
	
}









.ZweiSpaltenFliesText {
	column-count: 1;
}
}

@media ( max-width : 550px) {
H2 {
	
}



H2 SPAN.DritteZeile {
	
	line-height: 1.5;
}
}

body.ScreenshotMode .VideoItem::before {
	display: none !important;
}

body.ScreenshotMode .PlayIcon {
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	background: rgba(255, 255, 255, 0.85) !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18) !important;
}

body.ScreenshotMode * {
	animation: none !important;
	transition: none !important;
}

.GoogleReviewsSection .content-container-center {
	max-width: 1180px;
}

.GoogleReviewsSection .SectionText {
	max-width: 760px;
	margin: 0 auto 58px;
}

.GoogleSliderShell {
	position: relative;
	max-width: 980px;
	margin: 0 auto;
}

.GoogleReviewViewport {
	overflow: hidden;
	width: 100%;
}

.GoogleReviewTrack {
	display: flex;
	align-items: stretch;
	transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
	will-change: transform;
}

.GoogleReviewCard * {
	min-width: 0;
}

.GoogleReviewCard p {
	overflow-wrap: break-word;
	word-break: normal;
	margin: 0 0 26px;
	font-family: "Playfair Display", Georgia, serif;
	font-size: clamp(1.05rem, 1.12vw, 1.22rem);
	line-height: 1.72;
	font-style: italic;
	color: #3f3b38;
}

.GoogleReviewCard h3 {
	overflow-wrap: break-word;
	word-break: normal;
	margin: auto 0 8px;
	font-family: "Libre Caslon Display", Georgia, serif;
	
	line-height: 1.3;
	font-weight: 400;
	letter-spacing: 0.04em;
	color: #242526;
	text-align: left;
}

.GoogleReviewCard .CardMeta {
	font-family: "Libre Caslon Display", Georgia, serif;
	font-size: 0.78rem;
	line-height: 1.4;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(36, 37, 38, 0.46);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.GoogleSliderArrow:hover {
	background: #8d7d70;
	border-color: #8d7d70;
	color: #ffffff;
	box-shadow: 0 16px 38px rgba(0, 0, 0, 0.14);
}

.GoogleSliderArrow.Left {
	left: -26px;
}

.GoogleSliderArrow.Right {
	right: -26px;
}

.GoogleSliderArrow:disabled {
	opacity: 0.28;
	cursor: default;
	background: rgba(255, 255, 255, 0.82);
	border-color: rgba(141, 125, 112, 0.28);
	color: rgba(111, 97, 87, 0.45);
	box-shadow: none;
}

.GoogleSliderDots {
	display: none;
}





@media (max-width: 1160px) {
.GoogleSliderShell {
	max-width: calc(100% - 96px);
}

.GoogleSliderArrow.Left {
	left: -18px;
}

.GoogleSliderArrow.Right {
	right: -18px;
}
}

@media (max-width: 760px) {
.GoogleReviewsSection {
	padding-top: 76px;
	padding-bottom: 78px;
}

.GoogleSliderShell {
	max-width: calc(100% - 44px);
}

.GoogleReviewCard {
	flex-basis: 100%;
	min-height: 0;
	margin-right: 18px;
	padding: 34px 30px 32px;
}

.GoogleSliderArrow {
	width: 42px;
	height: 42px;
	font-size: 1.7rem;
	line-height: 38px;
}

.GoogleSliderArrow.Left {
	left: -18px;
}

.GoogleSliderArrow.Right {
	right: -18px;
}
}

@media (max-width: 760px) {
html {
	overflow-x: hidden !important;
	max-width: 100% !important;
}

body {
	overflow-x: hidden !important;
	max-width: 100% !important;
}

H1 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
}

H2 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
}

H3 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
}

H4 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
}

H5 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
}

.LeistungContent h3 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
}

.FooterWillkommen {
	white-space: nowrap !important;
}



.Leistungen {
	max-width: 100% !important;
	overflow-x: hidden !important;
}

.Hervorgehoben {
	max-width: 100% !important;
	overflow-x: hidden !important;
}

.content-container-center {
	max-width: 100% !important;
	overflow-x: hidden !important;
}

.Inner {
	max-width: 100% !important;
	overflow-x: hidden !important;
}

.Section {
	max-width: 100% !important;
	overflow-x: hidden !important;
	padding-left: 22px !important;
	padding-right: 22px !important;
}

.Section h2 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.08 !important;
	letter-spacing: 0.015em !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.Intro h2 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.08 !important;
	letter-spacing: 0.015em !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.AboutLindaIntro h2 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.08 !important;
	letter-spacing: 0.015em !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.GoogleReviewsSection h2 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.08 !important;
	letter-spacing: 0.015em !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.KontaktTeaser h2 {
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.08 !important;
	letter-spacing: 0.015em !important;
	margin-left: auto !important;
	margin-right: auto !important;
}



H2 SPAN.DritteZeile {
	
	line-height: 1.5 !important;
	letter-spacing: 0.02em !important;
}

.Subline {
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.58 !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

.IntroSubline {
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.58 !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

.IntroLead {
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.58 !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

.AboutLindaText p {
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.58 !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

.ZielItem p {
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.58 !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

.LeistungContent p {
	max-width: calc(100vw - 44px) !important;
	
	line-height: 1.58 !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}


}

.LeistungContent p:last-of-type {
	margin-bottom: 30px;
}

.ZielItem p + p {
	margin-top: 14px;
}

.MeilensteinText p {
	
	line-height: 1.75;
}

.ContactSecondText {
	margin-top: 18px;
}

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

.LeistungContent h3 {
	min-height: 0;
}

.LeistungContent h4 {
	min-height: 0;
}
}

@media (max-width: 760px) {
.ZielgruppenIntro h3 {
	
}

.Versprechen {
	padding-top: 78px;
	padding-bottom: 78px;
}

.Meilenstein {
	padding-top: 78px;
	padding-bottom: 78px;
}

.VersprechenItem {
	padding: 20px 20px 20px 48px;
}
}

.LeistungContent p {
	flex: 0 0 auto;
	margin-bottom: 18px;
	
	line-height: 1.62;
	color: #5a5a5a;
	padding: 0;
	max-width: 320px;
}

.LeistungDetails summary::-webkit-details-marker {
	display: none;
}

.LeistungDetails summary::after {
	content: "+";
	float: right;
	font-size: 1.1rem;
}

.LeistungDetails[open] summary::after {
	content: "–";
}

.LeistungDetailsText {
	padding: 4px 0 8px;
}

.LeistungDetailsText p {
	margin-bottom: 14px;
}

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

.AboutLindaGrid {
	grid-template-columns: 1fr;
}
}

@media (max-width: 760px) {
.Leistungen {
	padding-top: 76px;
	padding-bottom: 80px;
}

.LeistungContent {
	padding: 38px 28px 0;
}

.LeistungContent h3 {
	min-height: 0;
	
}

.LeistungContent h4 {
	min-height: 0;
	
}

.LeistungContent p {
	
}

.ZielgruppenBlock {
	padding-top: 74px;
	padding-bottom: 78px;
}

.ZielItem {
	padding: 28px 24px;
}
}

.ZielItem:first-child {
	border-left: 0;
}

@media (max-width: 900px) {
.ZielgruppenGrid {
	gap: 34px;
}

.ZielItem {
	border-left: 0;
	border-top: 1px solid rgba(141,125,112,.22);
	padding: 30px 10px 0;
}

.ZielItem:first-child {
	border-left: 0;
	border-top: 1px solid rgba(141,125,112,.22);
	padding: 30px 10px 0;
}

.Leistung img {
	height: 260px;
}

.AboutLindaText {
	max-width: 620px;
	margin: 0 auto;
}
}

@media (max-width: 760px) {
.Leistungen {
	padding-top: 82px;
	padding-bottom: 88px;
}

.Leistung img {
	height: auto;
	box-shadow: none;
}

.LeistungContent {
	padding-left: 28px;
	padding-right: 28px;
}

.ZielgruppenBlock {
	padding-top: 82px;
	padding-bottom: 88px;
}

.Warum {
	padding-top: 86px;
	padding-bottom: 90px;
}

.AboutLinda {
	padding-top: 86px;
	padding-bottom: 90px;
}

.Versprechen {
	padding-top: 86px;
	padding-bottom: 90px;
}

.Meilenstein {
	padding-top: 86px;
	padding-bottom: 90px;
}

.GoogleReviewCard {
	min-height: 0;
	padding: 36px 30px 34px;
}
}

.Meilenstein {
	padding-top: 108px;
	padding-bottom: 112px;
	text-align: center;
}

.LeistungContent h4 {
	min-height: 0;
	margin: 0 auto 18px;
	
	line-height: 1.45;
	color: #88776b;
	text-align: center;
	margin-bottom: 18px;
	max-width: 300px;
}

.LeistungContent > p {
	
	
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: inherit;
	color: #5e5955;
}

.LeistungDetails {
	width: 100%;
	margin: 6px auto 26px;
	border-top: 1px solid var(--linda-line);
	border-bottom: 0;
	max-width: 318px;
	margin-top: 4px;
}

.LeistungDetails summary {
	padding: 13px 0 0;
	cursor: pointer;
	list-style: none;
	
	font-size: .72rem;
	line-height: 1.4;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #75665c;
	padding-top: 12px;
}

.ZielgruppenIntro {
	max-width: 700px;
	margin: 34px auto 0;
	margin-top: 28px;
}

.ZielgruppenIntro h3 {
	margin-bottom: 18px;
	
	line-height: 1.25;
	text-align: center;
}

.ZielItem p {
	margin-bottom: 0;
	
	line-height: 1.72;
	color: #5a5a5a;
}

.Warum {
	padding: 120px 0;
	background: var(--linda-warm);
	text-align: center;
	padding-top: 108px;
	padding-bottom: 112px;
}

.WarumTextOnly {
	max-width: 700px;
	margin: 48px auto 0;
	text-align: center;
	margin-top: 40px;
}

.WarumTextOnly p {
	
	line-height: 1.8;
}



.AboutLindaText {
	max-width: 455px;
	text-align: left;
}

.AboutLindaText p {
	
	line-height: 1.78;
	color: #5a5a5a;
}

.AboutLindaText .Highlight {
	margin: 28px 0;
	padding-left: 22px;
	border-left: 1px solid #8d7d70;
	
	font-size: 1.05rem;
	line-height: 1.65;
	color: #544b45;
}

.Versprechen {
	padding-top: 108px;
	padding-bottom: 112px;
	text-align: center;
	background: var(--linda-warm) !important;
}

.VersprechenGrid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0,1fr));
	gap: 0 42px;
	max-width: 1060px;
	margin: 55px auto 0;
	text-align: left;
	margin-top: 44px;
}

.VersprechenItem {
	position: relative;
	padding: 19px 12px 19px 38px;
	background: transparent;
	border: 0;
	font-size: .96rem;
	line-height: 1.62;
	padding-top: 18px;
	padding-bottom: 18px;
	border-top: 1px solid var(--linda-line);
}

.VersprechenItem::before {
	content: "✓";
	position: absolute;
	left: 10px;
	top: 18px;
	color: #8d7d70;
}

.MeilensteinText {
	max-width: 980px;
	margin: 48px auto 0;
	text-align: center;
	margin-top: 38px;
}

.VideoGrid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
}

.VideoItem {
	position: relative;
	cursor: pointer;
	aspect-ratio: 16/9;
	border-radius: 0;
	overflow: hidden;
	box-shadow: none;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	background-color: #d9d9d9;
}

.GoogleStars {
	margin-bottom: 28px;
	font-family: Georgia, serif;
	font-size: 1.4rem;
	line-height: 1;
	letter-spacing: 0.08em;
	color: #b89254;
}

@media (max-width: 900px) {
.LeistungenGrid {
	gap: 58px;
}

.Leistung img {
	height: 280px;
}

.ZielItem {
	padding-left: 16px;
	padding-right: 16px;
}

.AboutLindaGrid {
	gap: 48px;
}
}

@media (max-width: 760px) {
.Leistungen {
	padding-top: 80px;
	padding-bottom: 84px;
}

.ZielgruppenBlock {
	padding-top: 80px;
	padding-bottom: 84px;
}

.Warum {
	padding-top: 80px;
	padding-bottom: 84px;
}

.AboutLinda {
	padding-top: 80px;
	padding-bottom: 84px;
}

.Versprechen {
	padding-top: 80px;
	padding-bottom: 84px;
}

.Meilenstein {
	padding-top: 80px;
	padding-bottom: 84px;
}

.Kundenstimmen {
	padding-top: 80px;
	padding-bottom: 84px;
}

.GoogleReviewsSection {
	padding-top: 80px;
	padding-bottom: 84px;
}



.Leistung img {
	height: auto;
}

.LeistungContent {
	padding-left: 28px;
	padding-right: 28px;
}

.LeistungContent h3 {
	
}



.ZielgruppenGrid {
	margin-top: 48px;
}

.ZielItem {
	padding: 30px 0 0;
}

.ZielItem:first-child {
	padding: 30px 0 0;
}

.MeilensteinGrid {
	gap: 34px;
}

.GoogleReviewCard {
	min-height: 0;
}
}

H1 {
	font-family: "Libre Caslon Display", Georgia, serif;
	
	line-height: 20px;
	font-weight: 400;
	letter-spacing: -1px;
	margin-top: 0px;
	margin-bottom: 0px;
	color: #8d7d70;
	text-align: center;
	white-space: normal !important;
}

H2 {
	font-family: "Libre Caslon Display", Georgia, serif;
	
	line-height: 1.08;
	font-weight: 400;
	letter-spacing: 0.01em;
	margin-top: 0px;
	margin-bottom: 20px;

	color: #4a4a4a;
	text-transform: none;
	text-align: center;
	white-space: normal !important;
}

H3 {
	font-family: "Libre Caslon Display", Georgia, serif;
	
	line-height: 1.12;
	font-weight: 400;
	margin-top: 0px;
	margin-bottom: 40px;

	font-style: normal;
	text-align: left;
	white-space: normal !important;
}

H4 {
	font-family: "Libre Caslon Display", Georgia, serif;
	
	font-weight: 400;
	margin-top: 0px;
	margin-bottom: 13px;

	white-space: normal !important;
}

H5 {
	font-family: "Libre Caslon Display", Georgia, serif;
	margin-top: 0px;
	margin-bottom: 0px;

	font-weight: 400;
	white-space: normal !important;
}

.Leistungen .Inner {
	max-width: 1220px;
	margin: 0 auto;
}

.Leistungen .Subline {
	max-width: 720px;
	margin: 0 auto 62px;
	
	line-height: 1.65;
}

.LeistungenGrid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 44px;
	align-items: stretch;
}

.Leistung {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
	color: inherit;
	background: #fff;
	box-shadow: 0 14px 38px rgba(66, 55, 47, .055);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	border: 0;
	transform: none;
}

.Leistung:hover {
	transform: translateY(-3px);
	box-shadow: 0 18px 44px rgba(66, 55, 47, .085);
}

.Leistung img {
	width: 100%;
	height: 285px;
	object-fit: cover;
	display: block;
	box-shadow: none;
}

.LeistungContent {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 34px 34px 32px;
	text-align: center;
	align-items: center;
	background: transparent;
}







.WarumEditorialGrid {
	display: grid;
	grid-template-columns: 1.08fr .92fr;
	gap: 78px;
	align-items: center;
	margin-top: 58px;
	text-align: left;
}

.WarumBild img {
	display: block;
	width: 100%;
	min-height: 520px;
	height: 100%;
	object-fit: cover;
	box-shadow: 0 24px 60px rgba(60, 50, 43, .09);
}





@media (max-width: 900px) {
.LeistungenGrid {
	grid-template-columns: 1fr;
	max-width: 620px;
	margin-left: auto;
	margin-right: auto;
}

.Leistung img {
	height: auto;
	aspect-ratio: 16 / 10;
}

.WarumEditorialGrid {
	grid-template-columns: 1fr;
	gap: 40px;
}

.WarumBild img {
	min-height: 0;
	aspect-ratio: 16 / 10;
}

.WarumEditorialGrid .WarumTextOnly {
	max-width: 680px;
	margin: 0 auto;
	text-align: center;
}
}

@media (max-width: 760px) {
.Leistungen {
	padding-left: 22px !important;
	padding-right: 22px !important;
}

.Leistungen h2 {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.Leistungen .Subline {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.LeistungenGrid {
	gap: 34px;
}

.Leistung {
	box-shadow: 0 12px 30px rgba(66, 55, 47, .06);
}

.Leistung img {
	width: 100%;
	margin: 0;
}

.LeistungContent {
	padding: 30px 24px 28px;
}

.LeistungContent h3 {
	
}





.WarumEditorialGrid {
	margin-top: 40px;
}
}

.Versprechen h2 {
	white-space: normal !important;
}

.ZielgruppenGrid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 54px !important;
	margin-top: 64px;
	align-items: start;
}

.ZielItem {
	background: transparent !important;
	padding: 0 12px 12px !important;
	box-shadow: none !important;
	border-left: 1px solid rgba(141,125,112,.22);
	position: relative;
	border: 0 !important;
}

.ZielItem + .ZielItem {
	border-left: 0 !important;
}

.ZielItem > p {
	max-width: 330px;
	margin-left: auto;
	margin-right: auto;
}

.ZielDetails summary::-webkit-details-marker {
	display: none;
}

.ZielDetails summary::after {
	content: "" !important;
	float: right;
	font-size: 1.1rem;
	position: absolute;
	left: 50%;
	top: 50%;
	width: 14px;
	height: 1px;
	background: #8d7d70;
	transform: translate(-50%, -50%) rotate(90deg);
	transition: transform .25s ease, opacity .25s ease, background-color .25s ease;
}

.ZielDetails summary:hover {
	border-color: #8d7d70 !important;
	background: rgba(141, 125, 112, .07) !important;
	transform: translateY(-1px);
}

.ZielDetails[open] summary::after {
	content: "–";
	opacity: 0;
	transform: translate(-50%, -50%) rotate(90deg) scale(.2);
}

.ZielDetails[open] summary {
	background: rgba(141, 125, 112, .07) !important;
}

.ToggleLabel {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0,0,0,0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.ZielDetailsText {
	padding: 4px 0 8px;
	max-width: 350px;
	margin: 24px auto 0 !important;
	padding-top: 0 !important;
	border-top: 0 !important;
}

.ZielDetailsText p {
	margin-bottom: 16px !important;
}

.MeilensteinGrid {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 52px !important;
	text-align: left;
	margin-top: 58px !important;
}

.MeilensteinCard {
	padding: 28px 18px 8px !important;
	background: transparent !important;
	border: 0;
	border-top: 0 !important;
	text-align: center;
	position: relative;
}

.MeilensteinCard::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 84px;
	height: 1px;
	background: rgba(141, 125, 112, .35);
	transform: translateX(-50%);
}

.MeilensteinNummer {
	margin: 0 0 14px;
	
	font-size: .72rem;
	line-height: 1;
	letter-spacing: .22em;
	color: #8d7d70;
	opacity: .76;
}

.MeilensteinCard p {
	margin-bottom: 12px;
	
	line-height: 1.72;
	max-width: 330px;
	margin-left: auto;
	margin-right: auto;
}

.ZielItem h3 {
	margin-bottom: 22px !important;
	
	line-height: 1.1;
	font-weight: 500;
	text-align: center;
	white-space: normal !important;
}

.MeilensteinCard h3 {
	margin-bottom: 18px !important;
	
	text-align: center !important;
	white-space: normal !important;
}

@media (max-width: 900px) {
.ZielgruppenGrid {
	gap: 36px !important;
}

.MeilensteinGrid {
	gap: 36px !important;
}

.ZielItem {
	padding-bottom: 22px !important;
}

.MeilensteinCard {
	padding-top: 26px !important;
}
}

.ZielgruppenEditorialGrid {
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
	gap: 76px;
	align-items: start;
	margin-top: 58px;
	text-align: left;
}

.ZielgruppenBild img {
	display: block;
	width: 100%;
	min-height: 660px;
	height: 100%;
	object-fit: cover;
	box-shadow: 0 24px 60px rgba(60, 50, 43, .09);
}

.ZielgruppenEditorialText {
	max-width: 610px;
}

.ZielgruppenEditorialText .ZielgruppenIntro {
	max-width: none;
	margin: 0 0 42px;
	text-align: left;
}

.ZielgruppenEditorialText .ZielgruppenIntro h3 {
	margin-bottom: 20px;
	
	line-height: 1.28;
	text-align: left;
}

.ZielgruppenEditorialText .ZielgruppenIntro p {
	
	line-height: 1.72;
}

.ZielgruppenEditorialText .ZielgruppenGrid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0 !important;
	margin-top: 0;
}

.ZielgruppenEditorialText .ZielItem {
	padding: 28px 0 !important;
	border-top: 1px solid rgba(141, 125, 112, .22) !important;
	text-align: left;
}

.ZielgruppenEditorialText .ZielItem:first-child {
	border-top: 0 !important;
	padding-top: 0 !important;
}

.ZielgruppenEditorialText .ZielItem h3 {
	margin-bottom: 12px !important;
	
	text-align: left !important;
}

.ZielgruppenEditorialText .ZielItem > p {
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	text-align: left;
}

.ZielgruppenEditorialText .ZielDetails {
	margin-top: 18px !important;
	border-top: 0 !important;
	text-align: left;
}

.ZielgruppenEditorialText .ZielDetails summary {
	margin: 0 !important;
	border-top: 0 !important;
}

.ZielgruppenEditorialText .ZielDetailsText {
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	text-align: left;
	margin-top: 20px !important;
}

.ZielDetails {
	width: 100%;
	margin: 2px 0 22px;
	border-top: 0 !important;
	border-bottom: 0;
	margin-top: 22px !important;
	text-align: center;
}

.ZielDetails summary {
	padding: 0 !important;
	cursor: pointer;
	list-style: none;
	
	font-size: 0 !important;
	line-height: 38px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: transparent !important;
	position: relative;
	width: 38px;
	height: 38px;
	margin: 0 auto;
	border: 1px solid rgba(141, 125, 112, .48) !important;
	border-radius: 50%;
	background: transparent !important;
	transition: border-color .25s ease, background-color .25s ease, transform .25s ease;
	border-top: 0 !important;
}

.ZielDetails::before {
	border-top: 0 !important;
}

.ZielDetails summary::before {
	content: "" !important;
	position: absolute;
	left: 50%;
	top: 50%;
	width: 14px;
	height: 1px;
	background: #8d7d70;
	transform: translate(-50%, -50%);
	transition: transform .25s ease, opacity .25s ease, background-color .25s ease;
	border-top: 0 !important;
}

.WarumEditorialGrid .WarumBild {
	order: 2;
}

.WarumEditorialGrid .WarumTextOnly {
	max-width: 470px;
	margin: 0;
	text-align: left;
	order: 1;
}

@media (max-width: 900px) {
.ZielgruppenEditorialGrid {
	grid-template-columns: 1fr;
	gap: 38px;
}

.ZielgruppenBild img {
	min-height: 0;
	aspect-ratio: 16 / 10;
}

.ZielgruppenEditorialText {
	max-width: 680px;
	margin: 0 auto;
}

.WarumEditorialGrid .WarumBild {
	order: initial;
}

.WarumEditorialGrid .WarumTextOnly {
	order: initial;
}
}

@media (max-width: 760px) {
.LeistungContent h3 {
	
}

.LeistungContent h3 * {
	
}

.ZielgruppenEditorialGrid {
	margin-top: 40px;
}

.ZielgruppenEditorialText .ZielgruppenIntro {
	text-align: center !important;
}

.ZielgruppenEditorialText .ZielgruppenIntro h3 {
	text-align: center !important;
}

.ZielgruppenEditorialText .ZielItem {
	text-align: center !important;
}

.ZielgruppenEditorialText .ZielItem h3 {
	text-align: center !important;
}

.ZielgruppenEditorialText .ZielItem > p {
	text-align: center !important;
}

.ZielgruppenEditorialText .ZielDetailsText {
	text-align: center !important;
}

.ZielgruppenEditorialText .ZielDetails summary {
	margin-left: auto !important;
	margin-right: auto !important;
}
}

.ZielgruppenHeroBild > img {
	display: block;
	width: 100%;
	height: 620px;
	object-fit: cover;
	object-position: center center;
}

.ZielgruppenUnterbereich .ZielItem h3 {
	margin-bottom: 20px !important;
	
	line-height: 1.2 !important;
	text-align: center !important;
}

.ZielgruppenUnterbereich .ZielItem > p {
	max-width: 330px;
	margin: 0 auto;
	
	line-height: 1.72;
}

.ZielgruppenUnterbereich .ZielDetails {
	margin-top: 24px !important;
	border: 0 !important;
}

.ZielgruppenUnterbereich .ZielDetails summary {
	margin-left: auto !important;
	margin-right: auto !important;
	border-top: 0 !important;
}

.ZielgruppenUnterbereich .ZielDetailsText {
	max-width: 350px;
	margin: 24px auto 0 !important;
	text-align: center;
}

@media (max-width: 900px) {
.ZielgruppenHeroBild {
	min-height: 0;
	height: auto;
}

.ZielgruppenHeroBild > img {
	min-height: 0;
	height: auto;
	aspect-ratio: 16 / 10;
}

.ZielgruppenHeroKarte {
	margin-top: -82px;
	padding: 46px 42px 48px;
}

.ZielgruppenUnterbereich .ZielgruppenGrid {
	grid-template-columns: 1fr;
	max-width: 620px;
	margin-left: auto;
	margin-right: auto;
	gap: 48px !important;
}
}

@media (max-width: 760px) {
.ZielgruppenBlock {
	padding-bottom: 78px !important;
}

.ZielgruppenHeroKarte {
	width: calc(100% - 32px);
	margin-top: -44px;
	padding: 38px 24px 40px;
}

.ZielgruppenHeroKarte .ZielgruppenIntro {
	margin-top: 28px;
}

.ZielgruppenUnterbereich {
	padding-top: 58px;
	padding-left: 22px !important;
	padding-right: 22px !important;
}
}

.ZielgruppenBlock {
	text-align: center;
	padding-top: 108px;
	padding-bottom: 112px;
	background: #eee9e3 !important;
	padding: 0 0 102px !important;
	overflow: visible !important;
}

.ZielgruppenHeroBild {
	position: relative;
	width: 100%;
	min-height: 620px;
	margin: 0;
	background: #eee9e3;
}

.ZielgruppenUnterbereich .ZielgruppenGrid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px !important;
	margin-top: 0;
	align-items: start;
}

.MeilensteinEditorial {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	background: #eee9e3 !important;
}

.MeilensteinHeroBild {
	position: relative;
	background: #eee9e3;
}

.MeilensteinHeroBild > img {
	display: block;
	width: 100%;
	height: 620px;
	object-fit: cover;
	object-position: center center;
}

.MeilensteinHeroKarte .MeilensteinLead {
	max-width: 760px;
	margin: 0 auto;
	font-size: 1.08rem;
	line-height: 1.72;
}

.MeilensteinUnterbereich .MeilensteinGrid {
	gap: 28px !important;
	margin-top: 0 !important;
}

.MeilensteinUnterbereich .MeilensteinCard::before {
	display: none !important;
}

@media (max-width: 900px) {
.ZielgruppenUnterbereich {
	padding: 58px 30px 64px !important;
}

.MeilensteinUnterbereich {
	padding: 58px 30px 64px !important;
}

.ZielgruppenUnterbereich .ZielgruppenGrid {
	grid-template-columns: 1fr !important;
}

.MeilensteinUnterbereich .MeilensteinGrid {
	grid-template-columns: 1fr !important;
}

.MeilensteinHeroBild > img {
	height: auto;
	aspect-ratio: 16 / 10;
}

.MeilensteinHeroKarte {
	margin-top: -82px;
	padding: 46px 42px 48px;
}
}

@media (max-width: 760px) {
.ZielgruppenUnterbereich {
	padding: 48px 16px 54px !important;
}

.MeilensteinUnterbereich {
	padding: 48px 16px 54px !important;
}

.MeilensteinHeroKarte {
	width: calc(100% - 32px);
	margin-top: -44px;
	padding: 38px 24px 40px;
}
}

.ZielgruppenUnterbereich {
	padding-top: 78px;
	background: transparent !important;
	max-width: 1182px;
	margin: 0 auto;
	padding: 70px 54px 76px !important;
	box-shadow: none !important;
	border: 0 !important;
}

.ZielgruppenUnterbereich::before {
	display: none !important;
}

.ZielgruppenUnterbereich::after {
	display: none !important;
}

@media (max-width: 760px) {
.LeistungContent h3 {
	
	line-height: 1.12 !important;
}


}

.LeistungContent h3 {
	margin-bottom: 18px !important;
	
	line-height: 1.18 !important;
	font-weight: 500 !important;
	color: #3f3f3f !important;
	min-height: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	white-space: normal !important;
	max-width: 330px;
	margin: 0 auto 18px;
	letter-spacing: 0 !important;
}

.LeistungContent h3 * {
	
	line-height: 1.18 !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	white-space: normal !important;
	margin-bottom: 18px !important;
	color: #3f3f3f !important;
}





.MeilensteinUnterbereich {
	background: transparent !important;
	max-width: 1182px;
	margin: 0 auto;
	padding: 70px 54px 76px !important;
	box-shadow: none !important;
	border: 0 !important;
}

.MeilensteinUnterbereich::before {
	display: none !important;
}

.MeilensteinUnterbereich::after {
	display: none !important;
}

.Kundenstimmen {
	padding-top: 108px;
	padding-bottom: 112px;
	background: #f0f0f0 !important;
	text-align: center;
}

.Kundenstimmen.Hervorgehoben {
	background: #f0f0f0 !important;
}

.GoogleReviewsSection {
	background: #f4eee8 !important;
	padding-top: 108px;
	padding-bottom: 112px;
	text-align: center;
}

.GoogleReviewsSection.Hervorgehoben {
	background: #f4eee8 !important;
}

@media (max-width: 760px) {
.LeistungContent h3 {
	
	line-height: 1.14 !important;
}

.LeistungContent h3 * {
	
	line-height: 1.14 !important;
}


}

.ZielgruppenHeroKarte .ZielgruppenIntro p {
	
	line-height: 1.72;
	max-width: 720px;
	margin-left: auto;
	margin-right: auto;
}

.ZielgruppenHeroKarte .ZielgruppenIntro p + p {
	margin-top: 18px;
}

.Leistungen {
	padding: 120px 20px;
	text-align: center;
	background: #f8f6f3 !important;
	padding-top: 104px;
	padding-bottom: 112px;
}

@media (min-width: 901px) {
.MeilensteinHeroBild > img {
	height: 760px !important;
}
}

@media (min-width: 761px) and (max-width: 1200px) {
.MeilensteinHeroBild > img {
	height: 680px !important;
}
}







@media (max-width: 760px) {



}







.GoogleSliderArrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 4;
	width: 54px;
	height: 54px;
	border: 1px solid rgba(141, 125, 112, 0.72);
	border-radius: 8px !important;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.10);
	font-family: "Libre Caslon Display", Georgia, serif;
	font-size: 2.15rem;
	line-height: 50px;
	color: #6f6157;
	cursor: pointer;
	transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease, opacity 0.25s ease, box-shadow 0.25s ease;
}

.ZielgruppenUnterbereich .ZielItem {
	padding: 38px 30px 34px !important;
	text-align: center;
	background: #ffffff !important;
	height: auto;
	min-height: 0;
	align-self: start;
	box-shadow: 0 16px 38px rgba(55, 45, 39, .065) !important;
}

.ZielgruppenUnterbereich .ZielgruppenGrid {
	align-items: start;
}

.MeilensteinUnterbereich .MeilensteinCard {
	background: #ffffff !important;
	padding: 38px 30px 34px !important;
	min-height: 100%;
	border: 0 !important;
	box-shadow: 0 16px 38px rgba(55, 45, 39, .065) !important;
}

.GoogleReviewCard {
	flex: 0 0 calc(50% - 12px);
	min-height: 450px;
	margin-right: 24px;
	padding: 46px 46px 39px;
	background: #ffffff;
	border: 1px solid rgba(36, 37, 38, 0.10);
	box-shadow: 0 16px 40px rgba(55, 45, 39, .055);
	text-align: left;
	display: flex;
	flex-direction: column;
	min-width: 0;
	border-color: var(--linda-line);
}

.struct-footer {

	overflow: hidden;

	background-color: #ffffff;
	border-top: 1px solid #e0e0e0;

	padding-top: 18px;
	padding-bottom: 22px;
}

.FooterSocialLinks {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 18px;
	margin: 22px auto 32px;
	font-family: "Playfair Display", Georgia, serif;
	font-size: 0.92rem;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	margin-top: 26px;
	margin-bottom: 36px;
}

.FooterSocialLinks svg {
	width: 19px;
	height: 19px;
	fill: currentColor !important;
	stroke: none !important;
	flex: 0 0 auto;
	display: block;
}

.FooterSocialLinks SVG {
	width: 19px;
	height: 19px;
	fill: currentColor !important;
	stroke: none !important;
	flex: 0 0 auto;
	display: block;
}

@media (max-width: 760px) {


.GoogleSliderArrow {
	border-radius: 7px !important;
}





.struct-footer {
	padding-top: 14px;
	padding-bottom: 18px;
}
}

.Subline {
	color: #625c58 !important;
	margin-bottom: 60px;
	max-width: 760px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	font-family: "Playfair Display",Georgia,serif !important;
	
	line-height: 1.7 !important;
	font-weight: 400 !important;
	text-align: center !important;
}

.IntroLead {
	max-width: 760px !important;
	margin: 18px auto 0;
	text-align: center !important;
	
	line-height: 1.7 !important;
	color: #625c58 !important;
	margin-left: auto !important;
	margin-right: auto !important;
	font-family: "Playfair Display",Georgia,serif !important;
	font-weight: 400 !important;
}

.IntroSubline {
	max-width: 760px !important;
	margin: 0 auto 70px;
	
	line-height: 1.7 !important;
	color: #625c58 !important;
	margin-left: auto !important;
	margin-right: auto !important;
	font-family: "Playfair Display",Georgia,serif !important;
	font-weight: 400 !important;
	text-align: center !important;
}

.SectionText {
	max-width: 760px !important;
	margin: 20px auto 0;
	font-size: 1.06rem !important;
	line-height: 1.7 !important;
	color: #625c58 !important;
	text-align: center !important;
	margin-left: auto !important;
	margin-right: auto !important;
	font-family: "Playfair Display",Georgia,serif !important;
	font-weight: 400 !important;
}

.ZielgruppenIntro p {
	margin-bottom: 8px;
	max-width: 760px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	
	
	line-height: 1.7 !important;
	font-weight: 400 !important;
	color: #625c58 !important;
	text-align: center !important;
}

.MeilensteinLead {
	max-width: 760px !important;
	margin: 0 auto 34px !important;
	font-size: 1.06rem !important;
	margin-left: auto !important;
	margin-right: auto !important;
	
	line-height: 1.7 !important;
	font-weight: 400 !important;
	color: #625c58 !important;
	text-align: center !important;
}

.AboutLindaSubline {
	max-width: 760px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	
	font-size: 1.06rem !important;
	line-height: 1.7 !important;
	font-weight: 400 !important;
	color: #625c58 !important;
	text-align: center !important;
}

.ZielgruppenHeroKarte {
	position: relative;
	z-index: 2;
	width: min(900px, calc(100% - 48px));
	margin: -142px auto 0;
	padding: 56px 74px 58px;
	background: rgba(255,255,255,.97) !important;
	box-shadow: 0 28px 70px rgba(55,45,39,.10);
	text-align: center;
	padding-top: 54px !important;
	padding-bottom: 56px !important;
}

.MeilensteinHeroKarte {
	position: relative;
	z-index: 2;
	width: min(900px, calc(100% - 48px));
	margin: -142px auto 0;
	padding: 56px 74px 58px;
	background: rgba(255,255,255,.97);
	box-shadow: 0 28px 70px rgba(55,45,39,.10);
	text-align: center;
	padding-top: 54px !important;
	padding-bottom: 56px !important;
}

.ZielgruppenHeroKarte .ZielgruppenIntro {
	max-width: 760px;
	margin: 34px auto 0;
	margin-top: 28px !important;
}

.ZielgruppenHeroKarte .ZielgruppenIntro h3 {
	margin-bottom: 24px !important;
	
	line-height: 1.4 !important;
	text-align: center !important;
	margin: 0 auto 20px !important;
	max-width: 760px !important;
	font-family: "Libre Caslon Display",Georgia,serif !important;
	font-weight: 400 !important;
	color: #5a514b !important;
}

@media (max-width:760px) {

.Kundenstimmen > .content-container-center::before {
	font-size: clamp(1.25rem,6vw,1.65rem) !important;
	line-height: 1.12 !important;
	letter-spacing: .055em !important;
	margin-bottom: 18px !important;
	padding-left: 4px;
	padding-right: 4px;
}

.Section h2 {
	
	line-height: 1.14 !important;
	margin-bottom: 20px !important;
}

.Leistungen h2 {
	
	line-height: 1.14 !important;
	margin-bottom: 20px !important;
}

.GoogleReviewsSection h2 {
	
	line-height: 1.14 !important;
	margin-bottom: 20px !important;
}



.ZielgruppenHeroKarte h2 {
	
	line-height: 1.14 !important;
	margin-bottom: 20px !important;
}

.MeilensteinHeroKarte h2 {
	
	line-height: 1.14 !important;
	margin-bottom: 20px !important;
}

.AboutLindaIntro h2 {
	
	line-height: 1.14 !important;
	margin-bottom: 20px !important;
}

.Kundenstimmen h2 {
	
	line-height: 1.14 !important;
	margin-bottom: 20px !important;
}

.Subline {
	
	line-height: 1.62 !important;
}

.IntroLead {
	
	line-height: 1.62 !important;
}

.IntroSubline {
	
	line-height: 1.62 !important;
}

.SectionText {
	font-size: 1rem !important;
	line-height: 1.62 !important;
}

.ZielgruppenIntro p {
	
	line-height: 1.62 !important;
}

.MeilensteinLead {
	font-size: 1rem !important;
	line-height: 1.62 !important;
}

.AboutLindaSubline {
	font-size: 1rem !important;
	line-height: 1.62 !important;
}
}

.Section h2 {
	
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
	white-space: normal !important;
	max-width: 880px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	margin-bottom: 24px !important;
	font-family: "Libre Caslon Display",Georgia,serif !important;
	font-weight: 400 !important;
	color: #4a4a4a !important;
	text-align: center !important;
}

.Leistungen h2 {
	margin-bottom: 24px !important;
	
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
	max-width: 880px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	white-space: normal !important;
	font-family: "Libre Caslon Display",Georgia,serif !important;
	font-weight: 400 !important;
	color: #4a4a4a !important;
	text-align: center !important;
}

.GoogleReviewsSection h2 {
	margin-bottom: 24px !important;
	
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
	white-space: normal !important;
	max-width: 880px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	font-family: "Libre Caslon Display",Georgia,serif !important;
	font-weight: 400 !important;
	color: #4a4a4a !important;
	text-align: center !important;
}



.ZielgruppenHeroKarte h2 {
	max-width: 880px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	margin-bottom: 24px !important;
	font-family: "Libre Caslon Display",Georgia,serif !important;
	
	line-height: 1.2 !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	color: #4a4a4a !important;
	text-align: center !important;
	white-space: normal !important;
}

.MeilensteinHeroKarte h2 {
	margin-bottom: 24px !important;
	max-width: 880px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	font-family: "Libre Caslon Display",Georgia,serif !important;
	
	line-height: 1.2 !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	color: #4a4a4a !important;
	text-align: center !important;
	white-space: normal !important;
}

.AboutLindaIntro h2 {
	text-align: center !important;
	margin-bottom: 24px !important;
	white-space: normal !important;
	max-width: 880px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	font-family: "Libre Caslon Display",Georgia,serif !important;
	
	line-height: 1.2 !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	color: #4a4a4a !important;
}

.Kundenstimmen h2 {
	
	margin-bottom: 24px !important;
	line-height: 1.2 !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
}













.AboutLinda {
	padding-top: 108px !important;
	padding-bottom: 112px !important;
	background: #ffffff;
}

.AboutLindaIntro {
	max-width: 900px;
	margin: 0 auto 50px;
	text-align: center;
	margin-bottom: 44px !important;
}

.AboutLindaGrid {
	display: grid;
	grid-template-columns: 1.08fr .92fr;
	gap: 86px;
	align-items: start !important;
}

.AboutLindaImage img {
	width: 104% !important;
	height: auto;
	display: block;
	border-radius: 0;
	box-shadow: 0 26px 64px rgba(53,44,39,.11);
	max-width: none !important;
}

@media (max-width: 760px) {
.Section h2 {
	
	line-height: 1.2 !important;
}

.Leistungen h2 {
	
	line-height: 1.2 !important;
}

.GoogleReviewsSection h2 {
	
	line-height: 1.2 !important;
}



.ZielgruppenHeroKarte h2 {
	
	line-height: 1.2 !important;
}

.MeilensteinHeroKarte h2 {
	
	line-height: 1.2 !important;
}

.AboutLindaIntro h2 {
	
	line-height: 1.2 !important;
}

.Kundenstimmen h2 {
	
	line-height: 1.2 !important;
}

.Kundenstimmen > .content-container-center::before {
	font-size: clamp(1.3rem, 6.3vw, 1.72rem) !important;
	letter-spacing: .055em !important;
}

.AboutLindaImage img {
	width: 100% !important;
}
}

.Kundenstimmen > .content-container-center::before {
	content: none !important;
	display: none !important;
	margin: 0 auto 24px;
	font-family: "Libre Caslon Display",Georgia,serif;
	font-size: clamp(1.62rem, 2.25vw, 2.38rem) !important;
	line-height: 1.08 !important;
	font-weight: 400;
	letter-spacing: .07em !important;
	text-transform: uppercase;
	color: #383838 !important;
	text-align: center;
	margin-bottom: 20px !important;
}

h3 {
	max-width: 880px !important;
	margin: 0 auto 24px !important;
	font-family: "Libre Caslon Display", Georgia, serif !important;
	
	line-height: 1.2 !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	color: #4a4a4a !important;
	text-align: center !important;
	white-space: normal !important;
}



















h4 {
	font-family: "Libre Caslon Display", Georgia, serif !important;
	font-weight: 500 !important;
	white-space: normal !important;
}









.GoogleReviewCard .ReviewAuthor {
	margin: auto 0 8px;
	font-family: "Libre Caslon Display", Georgia, serif;
	font-size: 1.08rem;
	line-height: 1.3;
	font-weight: 400;
	letter-spacing: .04em;
	color: #242526;
	text-align: left;
}

@media (max-width: 760px) {
h3 {
	
	line-height: 1.2 !important;
	margin-bottom: 20px !important;
}


















}

:root {

	--linda-warm: #f7f4f1;
	--linda-line: rgba(141, 125, 112, .24);
	--linda-text-soft: #625c58;
	--linda-heading-gap: 18px;
}

h2 {
	font-family: "Libre Caslon Display", Georgia, serif !important;
	font-weight: 400 !important;
	color: #4a4a4a !important;
	white-space: normal !important;
	
	line-height: 1.16 !important;
	letter-spacing: 0.075em !important;
	text-transform: uppercase !important;
	display: block;
	max-width: 1180px;
	margin: 0 auto 26px !important;
	text-align: center;
}

.InspirationHero h1 {
	font-family: "Libre Caslon Display", Georgia, serif !important;
	font-weight: 400 !important;
	color: #ffffff !important;
	white-space: normal !important;
	
	line-height: 1.16 !important;
	letter-spacing: 0.075em !important;
	text-transform: uppercase !important;
	margin: 0 !important;
	text-align: left !important;
}

h3 {
	font-family: "Libre Caslon Display", Georgia, serif !important;
	font-weight: 400 !important;
	color: #4a4a4a !important;
	white-space: normal !important;
	max-width: 920px;
	margin: 0 auto 28px !important;
	
	line-height: 1.16 !important;
	letter-spacing: 0.01em !important;
	text-align: center;
}

h4 {
	font-family: "Libre Caslon Display", Georgia, serif !important;
	font-weight: 400 !important;
	color: #4a4a4a !important;
	white-space: normal !important;
	margin: 0 0 var(--linda-heading-gap) !important;
	
	line-height: 1.14 !important;
	letter-spacing: 0.01em !important;
}





.LeistungsText h4 {
	text-align: left;
}

.AboutLindaText h2 {
	text-align: left;
	margin-bottom: 14px;
}

.AboutLindaText h3 {
	text-align: left;
}

.ContactCard h2 {
	text-align: left;
}

.ContactCard h3 {
	text-align: left;
}

.LeistungsUeberblickItem h4 {
	text-align: center;
}

.DekoPremiumCard h4 {
	text-align: center;
}

.DekoDetailsCard h4 {
	text-align: center;
}

.DekoAudienceCard h4 {
	text-align: center;
}

.ServiceTeaserContent h4 {
	text-align: center;
}

.ReferenzContent h4 {
	text-align: center;
}

.LoveNoteText h4 {
	text-align: center;
}

.GoogleReviewCard h4 {
	text-align: center;
}

@media (max-width: 760px) {
.InspirationHero h1 {
	
	line-height: 1.13 !important;
	letter-spacing: 0.06em !important;
}

h2 {
	
	line-height: 1.13 !important;
	letter-spacing: 0.06em !important;
	margin-bottom: 20px !important;
}

h3 {
	
	line-height: 1.18 !important;
	margin-bottom: 22px !important;
}

h4 {
	
}

.LeistungsText h4 {
	text-align: center;
}

.AboutLindaText h2 {
	text-align: center;
}

.AboutLindaText h3 {
	text-align: center;
}

.ContactCard h2 {
	text-align: center;
}

.ContactCard h3 {
	text-align: center;
}
}

/* =========================================================
   Gemeinsame Überschriften- und Buttonregeln
   ========================================================= */

/* ZweiteZeile ist in H2 und H3 ausschließlich ein Zeilenumbruch.
   Schrift, Größe, Gewicht, Farbe und Zeilenhöhe werden vollständig geerbt. */
h2 > .ZweiteZeile,
h3 > .ZweiteZeile {
	display: block;
	margin: 0;
	padding: 0;
	font: inherit;
	
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	color: inherit;
}

/* Einheitliche Schriftgröße für alle echten Text-Buttons. */
:root {
	--linda-button-font-size: 0.78rem;
}



/* =========================================================
   Verbindliche Überschriftenhierarchie
   Eine einzige Quelle für alle Seiten.
   ========================================================= */
:root {
	/* Entspricht auf Desktop der Schriftgröße des Namens im Logo. */
	--linda-heading-main-size: clamp(1.75rem, 2.25vw, 2.65rem);
	--linda-heading-h3-size: clamp(1.38rem, 1.55vw, 1.68rem);
	--linda-heading-h4-size: clamp(1.38rem, 1.45vw, 1.52rem);
}

h1,
h2 {
	font-size: var(--linda-heading-main-size) !important;
}

h3 {
	font-size: var(--linda-heading-h3-size) !important;
}

h4 {
	font-size: var(--linda-heading-h4-size) !important;
}

/* ZweiteZeile erzeugt nur einen Umbruch und verändert keine Typografie. */
h2 > .ZweiteZeile,
h3 > .ZweiteZeile {
	display: block;
	margin: 0;
	padding: 0;
	font: inherit;
	font-size: inherit !important;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	color: inherit;
}

@media (max-width: 760px) {
	:root {
		--linda-heading-main-size: clamp(1.45rem, 7vw, 2rem);
		--linda-heading-h3-size: clamp(1.22rem, 5.4vw, 1.5rem);
		--linda-heading-h4-size: 1.22rem;
	}
}

/* Leistungs-Karten: nur H4 ist Überschrift.
   Alle folgenden Absätze sind normaler Fließtext. */
.LeistungContent > p {
	
	
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: inherit;
	color: #5e5955;
}

.LeistungContent > h4 {
	margin-bottom: 24px !important;
	line-height: 1.28;
}

/* =========================================================
   Verbindliche Fließtext-Typografie
   Normale redaktionelle Absätze verwenden überall dieselbe Schriftgröße.
   ========================================================= */
:root {
	--linda-body-size: 20px;
}

body {
	font-size: var(--linda-body-size);
}

p {
	font-size: 1rem;
}

/* Keine künstlichen Text-Hierarchien innerhalb der Leistungskarten. */

/* =========================================================
   Gemeinsames Typografie- und Buttonsystem
   ========================================================= */

.Statement {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.55;
}









.ContactRouteButtons .MenuItem,
.DetailNavigation .MenuItem,
.DetailPartnerNavigation .MenuItem {
	width: 100%;
}

/* =========================================================
   Buttons
   MenuItem ist ausschließlich der technische GWT-/JS-Hook.
   Die Darstellung erfolgt nur über btn-primary oder btn-secondary.
   ========================================================= */
.btn-primary,
.btn-secondary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 12px 28px;
	border: 1px solid #8d7d70;
	border-radius: 8px;
	font-size: var(--linda-button-font-size);
	line-height: 1.2;
	letter-spacing: 0.13em;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	user-select: none;
	transition: background-color 0.22s ease,
		border-color 0.22s ease,
		color 0.22s ease,
		box-shadow 0.22s ease,
		transform 0.15s ease;
}

.btn-primary {
	background: #8d7d70;
	color: #ffffff;
}

.btn-secondary {
	background: transparent;
	color: #8d7d70;
}

.btn-primary:hover,
.btn-secondary:hover {
	background: #6f6157;
	border-color: #6f6157;
	color: #ffffff;
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.16);
	transform: translateY(-1px);
}

.btn-primary:focus-visible,
.btn-secondary:focus-visible {
	outline: none;
	box-shadow: 0 0 0 4px rgba(141, 125, 112, 0.25);
}

.ContactRouteButtons .btn-secondary {
	width: 100%;
}

/* Normale Inhaltslinks; MenuItem verändert ihre Darstellung nicht. */
.SOURCE-StructContent p a:not(.btn-primary):not(.btn-secondary),
.SOURCE-StructContent address a:not(.btn-primary):not(.btn-secondary),
.SOURCE-StructContent li a:not(.btn-primary):not(.btn-secondary) {
	display: inline;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	font: inherit;
	letter-spacing: inherit;
	text-transform: none;
	text-decoration: underline;
	text-underline-offset: 3px;
	color: #8d7d70;
}

/* Button-Farben */
.btn-primary {
	color: #ffffff !important;
}

.btn-secondary {
	color: #8d7d70 !important;
}

.btn-on-dark {
	background: transparent !important;
	border-color: rgba(255, 255, 255, 0.78) !important;
	color: #ffffff !important;
}

.btn-on-dark:hover,
.btn-on-dark:focus-visible {
	background: rgba(255, 255, 255, 0.14) !important;
	border-color: #ffffff !important;
	color: #ffffff !important;
}

/* Der Formularbutton bleibt kompakt und zentriert. */
.ContactSubmit .btn-primary {
	width: auto;
	min-width: 220px;
	max-width: 100%;
}

/* Abstand zwischen Google-Bewertungskarten und Bewertungsbutton */
.GoogleReviewButtonWrap {
	margin-top: 54px;
	text-align: center;
}

@media (max-width: 760px) {
	.GoogleReviewButtonWrap {
		margin-top: 40px;
	}
}

/* Leistungskarten: Buttons bündig am unteren Kartenrand ausrichten */
.Leistung {
	display: flex;
	flex-direction: column;
}

.LeistungContent {
	display: flex;
	flex-direction: column;
	flex: 1;
}

.LeistungContent .btn-primary,
.LeistungContent .btn-secondary {
	margin-top: auto;
	align-self: center;
}

/* Button-Hoverfarben müssen die Grundfarben zuverlässig überschreiben. */
.btn-primary:hover,
.btn-secondary:hover,
.btn-primary:focus-visible,
.btn-secondary:focus-visible {
	color: #ffffff !important;
}

/* ================================================================
   Gemeinsamer Abschluss-CTA für Startseite und Unterseiten
   ================================================================ */
.KontaktCTA {
	padding: clamp(84px, 8vw, 124px) 24px;
	background: #f6f2ee;
	text-align: center;
}

.KontaktCTAInner {
	max-width: 980px;
	margin: 0 auto;
	padding: clamp(48px, 5vw, 72px) clamp(28px, 5vw, 72px);
	background: #ffffff;
	box-shadow: 0 18px 48px rgba(70, 58, 50, 0.08);
}

.KontaktCTA h2 {
	margin-bottom: 20px;
}

.KontaktCTA h3 {
	max-width: 780px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 22px;
}

.KontaktCTA p {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}

.KontaktCTA p + p {
	margin-top: 18px;
}

.KontaktCTAButtonWrap {
	margin-top: 30px;
	text-align: center;
}

@media (max-width: 760px) {
	.KontaktCTA {
		padding: 70px 22px;
	}

	.KontaktCTAInner {
		padding: 42px 24px;
	}

	.KontaktCTAButtonWrap {
		margin-top: 26px;
	}
}

/* ==========================================================
   Mobile Layout – Edge-to-Edge
   ========================================================== */

@media (max-width: 760px) {

    .Section {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .content-container-center {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .Inner {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Text bleibt lesbar */
    .SectionText,
    .Subline,
    .IntroLead,
    .IntroSubline,
    .AboutLindaText,
    .LeistungContent,
    .ZielgruppenIntro,
    .WarumTextOnly,
    .MeilensteinText,
    .ContactIntro {
        padding-left: 22px;
        padding-right: 22px;
    }

}


/* === Mobile Fixes 2026-07-27 === */
@media (max-width:760px){
.AboutLindaGrid{display:flex!important;flex-direction:column!important;}
.AboutLindaImage{order:1!important;}
.AboutLindaText{order:2!important;}
.VersprechenGrid{grid-template-columns:1fr!important;}
.VideoGrid{grid-template-columns:1fr!important;}
.GoogleReviewCard{flex:0 0 100%!important;margin-right:0!important;}
}
