@font-face {
	font-family: "Manrope";
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url("../fonts/manrope/Manrope-Variable.woff2") format("woff2");
}

@font-face {
	font-family: "Source Sans 3";
	font-style: normal;
	font-weight: 200 900;
	font-display: swap;
	src: url("../fonts/source-sans-3/SourceSans3-Upright-Variable.woff2") format("woff2");
}

@font-face {
	font-family: "Source Sans 3";
	font-style: italic;
	font-weight: 200 900;
	font-display: swap;
	src: url("../fonts/source-sans-3/SourceSans3-Italic-Variable.woff2") format("woff2");
}

:root {
	--mp-ink: #241f20;
	--mp-muted: #726a68;
	--mp-accent: #ed1c24;
	--mp-accent-dark: #ed1c24;
	--mp-ivory: #f6f2ed;
	--mp-paper: #fffdfb;
	--mp-line: rgba(36, 31, 32, 0.13);
	--mp-dark: #171314;
	--mp-radius: 20px;
	--mp-shadow: 0 24px 70px rgba(43, 31, 32, 0.12);
	--mp-wide: 1220px;
	--mp-space: clamp(76px, 9vw, 132px);
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 92px;
}

body#top,
body#top .avia_textblock,
body#top input,
body#top select,
body#top textarea,
body#top button {
	font-family: "Source Sans 3", sans-serif;
}

body#top {
	background: var(--mp-ivory);
	color: var(--mp-ink);
	font-size: 17px;
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
}

#wrap_all,
#main,
.main_color,
.main_color .site-background {
	background-color: var(--mp-ivory);
}

#top h1,
#top h2,
#top h3,
#top h4 {
	font-family: "Manrope", sans-serif;
	color: var(--mp-ink);
	font-weight: 380;
	letter-spacing: -0.04em;
	text-transform: none;
}

#top h1 { font-size: clamp(48px, 7vw, 92px); line-height: 0.98; }
#top h2 { font-size: clamp(34px, 5vw, 64px); line-height: 1.06; }
#top h3 { font-size: clamp(24px, 3vw, 38px); line-height: 1.15; }

#top p,
#top li { color: var(--mp-muted); }
#top a { text-underline-offset: 0.18em; }

/* Header */
#top #header {
	border: 0;
	background: rgba(248, 245, 241, 0.98) !important;
	box-shadow: 0 1px 0 rgba(36, 31, 32, 0.1);
}

#top #header .header_bg,
#top #header_main {
	border: 0;
	background: transparent !important;
	opacity: 1;
}

#top #header_main .container {
	width: min(calc(100% - 40px), var(--mp-wide));
	max-width: none;
	padding-inline: 0;
}

#top #header .logo img {
	width: auto;
	max-height: 72px;
	padding-block: 9px;
}

/* Transparenter Ausgangszustand auf bildstarken Seiten: weiß über dem Motiv.
 * Nach dem Scrollen entfernt Enfold die Klasse und der helle/dunkle Header greift. */
#top #header.av_header_transparency {
	background: linear-gradient(180deg, rgba(18, 14, 15, 0.48), rgba(18, 14, 15, 0.08)) !important;
	box-shadow: none;
}

#top #header.av_header_transparency .av-main-nav > li > a,
#top #header.av_header_transparency .av-burger-menu-main > a {
	color: #fff !important;
	text-shadow: 0 2px 16px rgba(0, 0, 0, 0.62) !important;
}

#top #header.av_header_transparency .av-main-nav > li > a .avia-menu-text {
	color: #fff !important;
}

#top #header.av_header_transparency .logo img {
	filter: brightness(0) invert(1);
}

#top #header.av_header_transparency .av-hamburger-inner,
#top #header.av_header_transparency .av-hamburger-inner::before,
#top #header.av_header_transparency .av-hamburger-inner::after {
	background-color: #fff !important;
}

#top #header .av-main-nav > li > a {
	padding-inline: clamp(11px, 1.25vw, 19px);
	color: var(--mp-dark) !important;
	font-family: "Manrope", sans-serif;
	font-size: 12px;
	font-weight: 780;
	letter-spacing: 0.065em;
	text-shadow: none !important;
	text-transform: uppercase;
}

#top #header .av-main-nav > li > a .avia-menu-text { position: relative; }

#top #header .av-main-nav > li > a .avia-menu-text::after {
	position: absolute;
	right: 0;
	bottom: -8px;
	left: 0;
	height: 2px;
	background: var(--mp-accent);
	content: "";
	transform: scaleX(0);
	transition: transform 180ms ease;
}

#top #header .av-main-nav > li > a:hover .avia-menu-text::after,
#top #header .av-main-nav > li.current-menu-item > a .avia-menu-text::after,
#top #header .av-main-nav > li.current-menu-ancestor > a .avia-menu-text::after {
	transform: scaleX(1);
}

#top #header .av-main-nav a[href*="/termin"] .avia-menu-text {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 0 18px;
	border-radius: 999px;
	background: var(--mp-accent);
	color: #fff;
	line-height: 38px;
}

#top #header .av-main-nav a[href*="/termin"] .avia-menu-text::after { display: none; }
#top #header .av-main-nav a[href*="/termin"]:hover .avia-menu-text {
	background: var(--mp-accent-dark);
	filter: brightness(0.86);
}

#top #header .av-main-nav > li > ul {
	padding: 10px;
	border: 1px solid var(--mp-line);
	border-radius: 14px;
	background: rgba(255, 253, 251, 0.98);
	box-shadow: var(--mp-shadow);
}

#top #header .av-main-nav > li > ul a {
	padding: 10px 14px;
	color: var(--mp-ink);
	font-size: 13px;
}

/* Enfolds bildabhängiger Vollseiten-Preloader verdeckt sonst Navigation und Inhalt. */
html .av-siteloader-wrap { display: none !important; }

/* Homepage hero */
body.home #av_section_1 {
	position: relative;
	min-height: 100svh;
	overflow: hidden;
	background-color: var(--mp-dark);
}

body.home #av_section_1::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(20, 14, 15, 0.78) 0%, rgba(20, 14, 15, 0.43) 42%, rgba(20, 14, 15, 0.06) 72%),
		linear-gradient(0deg, rgba(20, 14, 15, 0.48), transparent 48%);
	content: "";
	pointer-events: none;
}

body.home #av_section_1 .container {
	z-index: 2;
	display: flex !important;
	width: min(calc(100% - 48px), var(--mp-wide));
	max-width: none;
	align-items: flex-end;
}

body.home #av_section_1 .content {
	display: block !important;
	width: 100%;
	height: auto !important;
	min-height: 0 !important;
	padding: 0 0 clamp(64px, 8vh, 92px);
}

body.home #av_section_1 .av_two_fifth {
	float: none;
	width: min(780px, 68vw);
	margin: 0;
}

body.home #av_section_1 h1,
body.home #av_section_1 h2,
body.home #av_section_1 h3,
body.home #av_section_1 p {
	color: #fff;
	text-shadow: 0 2px 24px rgba(0, 0, 0, 0.3);
}

body.home #av_section_1 h1 {
	max-width: 8.5ch;
	margin-bottom: 28px;
	font-size: clamp(76px, 9vw, 132px) !important;
	font-weight: 360;
	line-height: 0.86;
	letter-spacing: -0.065em;
	text-shadow:
		0 2px 3px rgba(0, 0, 0, 0.55),
		0 0 24px rgba(255, 255, 255, 0.28),
		0 10px 54px rgba(0, 0, 0, 0.82),
		0 0 92px rgba(237, 28, 36, 0.34);
}

body.home #av_section_1 h2,
body.home #av_section_1 h3 {
	max-width: 24ch;
	font-size: clamp(20px, 2.15vw, 30px) !important;
	font-weight: 650;
	line-height: 1.25;
	letter-spacing: 0.01em;
	text-shadow:
		0 2px 3px rgba(0, 0, 0, 0.62),
		0 0 22px rgba(255, 255, 255, 0.2),
		0 8px 38px rgba(0, 0, 0, 0.72);
}

body.home #av_section_1 .scroll-down-link {
	z-index: 3;
	width: 50px;
	height: 50px;
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 999px;
	background: rgba(19, 14, 15, 0.3);
}

/* Content rhythm and editorial cards */
#top .avia-section > .container,
#top .container_wrap > .container {
	width: min(calc(100% - 48px), var(--mp-wide));
	max-width: none;
}

body.home #av_section_2 {
	background:
		radial-gradient(circle at 12% 18%, rgba(237, 28, 36, 0.08), transparent 28%),
		linear-gradient(180deg, #fffdfb 0%, var(--mp-bg) 100%);
}

body.home #av_section_2 .content { padding-block: clamp(86px, 10vw, 148px); }

body.home #av_section_2 .entry-content-wrapper {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: clamp(24px, 3vw, 42px);
	row-gap: clamp(48px, 7vw, 92px);
}

body.home #av_section_2 .entry-content-wrapper::before,
body.home #av_section_2 .entry-content-wrapper::after {
	display: none;
}

body.home #av_section_2 .flex_column {
	float: none;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

body.home #av_section_2 .av_one_fourth { grid-column: span 3; }
body.home #av_section_2 .av_one_half {
	grid-column: span 6;
	align-self: center;
	padding-inline: clamp(8px, 2vw, 28px);
}
body.home #av_section_2 .av_one_third { grid-column: span 4; }

body.home #av_section_2 .av_one_fourth {
	align-self: center;
	padding: 0;
	text-align: center;
}

body.home #av_section_2 .av_one_fourth .avia-image-container {
	margin: 0 auto;
}

body.home #av_section_2 .av_one_fourth .avia-image-container-inner {
	width: min(100%, 220px) !important;
	aspect-ratio: 1;
	margin: 0 auto;
	filter: drop-shadow(0 24px 32px rgba(43, 31, 32, 0.18));
}

body.home #av_section_2 .av_one_fourth img {
	width: 100%;
	height: 100%;
	border: 8px solid rgba(255, 253, 251, 0.9);
	border-radius: 50%;
	box-shadow: none;
	object-fit: cover;
	clip-path: circle(50% at 50% 50%);
}

body.home #av_section_2 .av_one_fourth img.wp-image-1592 {
	border: 0;
	clip-path: circle(49% at 50% 50%);
}

body.home #av_section_2 .av_one_fourth .avia-image-overlay-wrap,
body.home #av_section_2 .av_one_fourth .avia_image {
	width: 100%;
	height: 100%;
	overflow: visible !important;
	border-radius: 50%;
	background: transparent !important;
}

body.home #av_section_2 .av_one_fourth .image-overlay {
	display: none !important;
}

body.home #av_section_2 .av_one_half h2 {
	max-width: 11ch;
	margin-bottom: 28px;
	font-size: clamp(44px, 5.2vw, 72px);
	font-weight: 420;
	letter-spacing: -0.045em;
}

body.home #av_section_2 .av_one_half .avia_textblock {
	max-width: 62ch;
}

body.home #av_section_2 .av_one_third {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	padding: 0;
	border: 1px solid var(--mp-line);
	border-radius: var(--mp-radius);
	background: var(--mp-paper);
	box-shadow: 0 24px 72px rgba(43, 31, 32, 0.1);
	transition: transform 220ms ease, box-shadow 220ms ease;
}

body.home #av_section_2 .av_one_third:hover {
	transform: translateY(-8px);
	box-shadow: 0 32px 86px rgba(43, 31, 32, 0.16);
}

body.home #av_section_2 .av_one_third > .avia-image-container,
body.home #av_section_2 .av_one_third .avia-image-container-inner,
body.home #av_section_2 .av_one_third .avia-image-overlay-wrap,
body.home #av_section_2 .av_one_third .avia_image {
	display: block;
	width: 100%;
	margin: 0;
}

body.home #av_section_2 .av_one_third > .avia-image-container {
	height: clamp(280px, 28vw, 390px);
	opacity: 1 !important;
	transform: none !important;
	animation: none !important;
}

body.home #av_section_2 .av_one_third .avia-image-container-inner,
body.home #av_section_2 .av_one_third .avia-image-overlay-wrap,
body.home #av_section_2 .av_one_third .avia_image,
body.home #av_section_2 .av_one_third .avia_image img {
	height: 100%;
}

body.home #av_section_2 .av_one_third .avia_image img {
	width: 100%;
	max-width: none;
	border-radius: 0;
	box-shadow: none;
	object-fit: cover;
	object-position: center 28%;
}

body.home #av_section_2 .av_one_third:nth-of-type(5) .avia_image img { object-position: center 42%; }
body.home #av_section_2 .av_one_third:nth-of-type(6) .avia_image img { object-position: center 36%; }

body.home #av_section_2 .av_one_third .av-caption-image-overlay-bg {
	background: linear-gradient(180deg, transparent 45%, rgba(24, 17, 18, 0.78));
	opacity: 1;
}

body.home #av_section_2 .av_one_third .av-image-caption-overlay-center {
	padding: 28px;
	text-align: left;
	vertical-align: bottom;
}

body.home #av_section_2 .av_one_third .av-image-caption-overlay-center p {
	display: inline-flex;
	margin: 0;
	padding: 8px 13px;
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 999px;
	background: rgba(24, 17, 18, 0.26);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body.home #av_section_2 .av_one_third > .iconbox {
	display: flex;
	flex: 1;
}

body.home #av_section_2 .av_one_third .iconbox_content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: clamp(26px, 3vw, 38px);
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

body.home #av_section_2 .av_one_third .entry-content-header {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
}

body.home #av_section_2 .av_one_third .iconbox_icon {
	position: static;
	float: none;
	width: 42px;
	height: 42px;
	margin: 0;
	border: 1px solid rgba(237, 28, 36, 0.18);
	border-radius: 50%;
	background: rgba(237, 28, 36, 0.08);
	color: var(--mp-accent);
	font-size: 18px;
	line-height: 40px;
	text-align: center;
}

body.home #av_section_2 .av_one_third .iconbox_content_title {
	margin: 0;
	padding: 0;
	font-size: clamp(24px, 2.4vw, 34px);
	line-height: 1.08;
}

body.home #av_section_2 .av_one_third .iconbox_content_title a::after {
	color: var(--mp-accent);
	content: " ↗";
	font-size: 0.7em;
}

body.home #av_section_2 .av_one_third .iconbox_content_container {
	margin: 24px 0 0;
}

body.home #av_section_2 .av_one_third .iconbox_content_container p:last-child {
	margin-bottom: 0;
}

#top .avia_textblock { font-size: clamp(16px, 1.45vw, 18px); }
#top .avia_textblock strong { color: var(--mp-ink); }

#top .avia-image-container img,
#top .av-masonry-image-container,
#top .avia-gallery img { border-radius: var(--mp-radius); }

#top .avia-image-container img { box-shadow: var(--mp-shadow); }
#top .hr-custom .hr-inner { border-color: var(--mp-accent); }

/* Inner pages */
body:not(.home) #main { padding-top: 88px; }

body:not(.home) #main > .container_wrap_first .content,
body:not(.home) #main > .avia-section:first-child .content {
	padding-block: clamp(82px, 10vw, 138px);
}

body:not(.home) #main > .container_wrap_first h1,
body:not(.home) #main > .avia-section:first-child h1 { max-width: 12ch; }

body:not(.home) #main h1 {
	font-size: clamp(44px, 6vw, 72px);
	overflow-wrap: anywhere;
}

body.page-id-1519 #main h2 { font-size: clamp(28px, 3vw, 40px); }

#top .template-page .entry-content-wrapper > .flex_column { min-width: 0; }

/* Fontello bleibt auf das eigentliche Icon begrenzt, Beschriftungen sind Text. */
#top .av_font_icon .av_icon_caption {
	font-family: "Manrope", sans-serif !important;
	font-size: 13px;
	font-weight: 760;
	letter-spacing: 0.055em;
	line-height: 1.35;
	text-transform: uppercase;
}

/* Hochzeitspakete: stabile Überschriften und gleichmäßige Karten. */
body.page-id-689 #main .entry-content-wrapper > .av_one_third:has(h2) {
	display: flex;
	height: 780px;
	padding: 34px 28px;
	border: 1px solid var(--mp-line);
	border-radius: var(--mp-radius);
	background: var(--mp-paper);
	box-shadow: 0 18px 52px rgba(43, 31, 32, 0.09);
	box-sizing: border-box;
	flex-direction: column;
}

body.page-id-689 #main .entry-content-wrapper > .av_one_third:has(h2) .av_textblock_section,
body.page-id-689 #main .entry-content-wrapper > .av_one_third:has(h2) .avia_textblock {
	display: flex;
	height: 100%;
	flex: 1;
	flex-direction: column;
}

body.page-id-689 #main .entry-content-wrapper > .av_one_third:has(h2) h2 {
	min-height: 2.1em;
	margin-bottom: 24px;
	font-size: clamp(34px, 3.3vw, 48px) !important;
	line-height: 1.02;
	overflow-wrap: normal;
	word-break: normal;
}

body.page-id-689 #main .entry-content-wrapper > .av_one_third:has(h2) .avia_textblock > :last-child {
	margin-top: auto;
	padding-top: 22px;
}

body.page-id-689 #main .iconbox_content_title {
	font-size: 28px;
	hyphens: auto;
	line-height: 1.12;
	overflow-wrap: break-word;
}

body.page-id-1439 #main .av-special-heading-h2 .av-special-heading-tag {
	font-size: clamp(40px, 4.2vw, 52px) !important;
	hyphens: auto;
	overflow-wrap: break-word;
}

/* Hochzeitsanfrage: Text auf die ruhige Bildseite setzen und den Kontrast dort
 * gezielt erhöhen, ohne das Hochzeitsfoto insgesamt abzudunkeln. */
body.page-id-1091 #av_section_1::after {
	position: absolute;
	z-index: 0;
	inset: 0;
	content: "";
	pointer-events: none;
	background: linear-gradient(90deg, transparent 34%, rgba(24, 17, 18, 0.12) 54%, rgba(24, 17, 18, 0.62) 100%);
}

body.page-id-1091 #av_section_1 > .container {
	position: relative;
	z-index: 1;
}

body.page-id-1091 #av_section_1 .av-special-heading {
	width: min(100%, 570px);
	margin-right: 0;
	margin-left: auto;
	text-align: right;
}

body.page-id-1091 #av_section_1 .av-special-heading-tag {
	max-width: none;
	margin-left: auto;
	color: #fff !important;
	text-align: right;
	text-shadow: 0 3px 28px rgba(0, 0, 0, 0.42);
}

body.page-id-1091 #av_section_1 .av-subheading,
body.page-id-1091 #av_section_1 .av-subheading p {
	color: rgba(255, 255, 255, 0.94) !important;
	font-size: 19px;
	font-weight: 560;
	text-align: right;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.58);
}

/* Referenzen auf „Backstage“: die einzelnen Partnerlogos als ruhiges,
 * gleichmäßiges Kartenraster statt als unterschiedlich hohe Bildstreifen. */
body.page-id-534 #main .avia-logo-grid .avia-content-slider-inner {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

body.page-id-534 #main .avia-logo-grid .slide-entry-wrap {
	display: contents;
}

body.page-id-534 #main .avia-logo-grid .slide-entry {
	width: auto !important;
	height: 104px;
	min-width: 0;
	margin: 0 !important;
	padding: 16px;
	box-sizing: border-box;
	border: 1px solid var(--mp-line);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(43, 31, 32, 0.055);
}

body.page-id-534 #main .avia-logo-grid .av-partner-fake-img {
	width: 100%;
	height: 100%;
	padding-bottom: 0 !important;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

/* Fotogalerie: gleicher ausdrucksstarker Hero-Duktus wie auf der Startseite,
 * aber auf die freie rechte Bildhälfte ausgerichtet. */
body.page-id-470 #av_section_1 {
	position: relative;
	overflow: hidden;
	background-color: var(--mp-dark);
}

body.page-id-470 #av_section_1::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	content: "";
	pointer-events: none;
	background:
		linear-gradient(90deg, transparent 34%, rgba(20, 14, 15, 0.13) 56%, rgba(20, 14, 15, 0.65) 100%),
		linear-gradient(0deg, rgba(20, 14, 15, 0.42), transparent 46%);
}

body.page-id-470 #av_section_1 .container {
	z-index: 2;
	display: flex !important;
	width: min(calc(100% - 48px), var(--mp-wide));
	max-width: none;
	align-items: flex-end;
}

body.page-id-470 #av_section_1 .content {
	display: block !important;
	width: 100%;
	height: auto !important;
	min-height: 0 !important;
	padding: 0 0 clamp(64px, 8vh, 92px);
}

body.page-id-470 #av_section_1 .av-special-heading {
	width: min(760px, 70vw);
	margin-right: 0;
	margin-left: auto;
	text-align: right;
}

body.page-id-470 #av_section_1 h1 {
	max-width: 8.5ch;
	margin-right: 0;
	margin-left: auto;
	color: #fff !important;
	font-size: clamp(76px, 9vw, 132px) !important;
	font-weight: 360;
	line-height: 0.86;
	letter-spacing: -0.065em;
	text-align: right;
	text-shadow:
		0 2px 3px rgba(0, 0, 0, 0.55),
		0 0 24px rgba(255, 255, 255, 0.28),
		0 10px 54px rgba(0, 0, 0, 0.82),
		0 0 92px rgba(237, 28, 36, 0.34);
}

body.page-id-470 #av_section_1 .scroll-down-link { z-index: 3; }

body.page-id-470 #av-sc-masonry-gallery-1,
body.page-id-470 #av-masonry-1 {
	background: var(--mp-bg) !important;
}

body.page-id-470 #av-masonry-1 .av-masonry-entry,
body.page-id-470 #av-masonry-1 .av-inner-masonry,
body.page-id-470 #av-masonry-1 .av-masonry-outerimage-container {
	border-radius: 20px;
	background: transparent !important;
	overflow: hidden;
}

body.page-id-470 #av-masonry-1 .av-masonry-image-container {
	border-radius: inherit;
}

/* Einheitliche Markenfarbe statt historischer Enfold- und Builder-Rottöne. */
#top #main a:not(.avia-button) { color: var(--mp-accent); }

#top #main h1 a,
#top #main h2 a,
#top #main h3 a,
#top #main h4 a { color: inherit; }

#top #header .avia-menu-fx,
#top #main .iconlist_icon,
#top #main .av-milestone-icon-inner,
#top #main .av-milestone-article-footer {
	border-color: var(--mp-accent) !important;
	background-color: var(--mp-accent) !important;
}

#top #main .iconlist_icon { color: #fff !important; }

#top #main .av_font_icon,
#top #main .av_font_icon .av-icon-char,
#top #main .iconbox_icon,
#top #main .av-seperator-icon,
#top #main .avia-animated-number-title,
#top #main .avia-animated-number-icon {
	border-color: var(--mp-accent) !important;
	color: var(--mp-accent) !important;
}

body:not(.home)#top #main .iconbox_top .iconbox_icon {
	border-color: var(--mp-accent) !important;
	background-color: var(--mp-accent) !important;
	color: #fff !important;
}

body:not(.home)#top #main .iconbox_left .iconbox_icon,
body:not(.home)#top #main .iconbox_left_content .iconbox_icon {
	background-color: transparent !important;
	color: var(--mp-accent) !important;
}

#top #main .av-subheading strong,
#top #main .avia-icon-list strong,
#top #main abbr.required { color: var(--mp-accent) !important; }

#top #main .avia-icon-list-container li { margin-bottom: 14px; }

#top #main .avia-icon-list-container .iconlist_content_wrap {
	padding: 0 0 22px 18px;
}

#top .avia-testimonial-wrapper,
#top .avia-pricing-table-container,
#top .av_toggle_section,
#top .iconbox_content { border-radius: var(--mp-radius); }

#top .avia-testimonial-wrapper,
#top .iconbox_content {
	padding: clamp(24px, 4vw, 44px);
	border: 1px solid var(--mp-line);
	background: var(--mp-paper);
	box-shadow: 0 16px 50px rgba(43, 31, 32, 0.08);
}

#top .av-large-testimonial-slider .avia-testimonial-meta .avia-testimonial-image {
	width: 130px;
	height: 130px;
	border-radius: 999px;
}

#top .avia-testimonial-image img { border-radius: inherit; }

/* Gästebuch: aus den alten, unterschiedlich langen Builder-Spalten wird eine
 * zusammenhängende Editorial-Fläche. Die Inhalte und der Slider bleiben intakt. */
body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) {
	display: grid;
	grid-template-columns: minmax(0, 0.84fr) minmax(0, 1.16fr);
	gap: clamp(28px, 4.5vw, 64px);
	align-items: stretch;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_two_fifth {
	display: flex;
	grid-column: 1;
	grid-row: 1;
	flex-direction: column;
	width: auto !important;
	min-width: 0;
	max-width: 100%;
	margin: 0;
	padding: 18px;
	box-sizing: border-box;
	overflow: hidden;
	border: 1px solid var(--mp-line);
	border-radius: var(--mp-radius);
	background: var(--mp-paper);
	box-shadow: 0 18px 55px rgba(43, 31, 32, 0.08);
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_two_fifth .avia-image-container,
body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_two_fifth img {
	width: 100%;
	box-shadow: none !important;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_two_fifth > .hr {
	display: none;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) .avia-animated-number {
	margin: auto 0 0;
	padding: clamp(24px, 4vw, 44px) 18px;
	border-radius: calc(var(--mp-radius) - 7px);
	background: color-mix(in srgb, var(--mp-accent) 6%, var(--mp-paper));
	text-align: center;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) .avia-animated-number-title {
	font-family: "Manrope", sans-serif;
	font-size: clamp(42px, 5vw, 64px);
	font-weight: 560;
	line-height: 1;
	letter-spacing: -0.045em;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) .avia-animated-number-content {
	max-width: 18ch;
	margin: 8px auto 0;
	font-size: 17px;
	line-height: 1.25;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth {
	display: contents;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .hr-invisible,
body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .hr-custom {
	display: none;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .av_textblock_section {
	display: flex;
	grid-column: 2;
	grid-row: 1;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: clamp(34px, 5vw, 70px);
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--mp-line);
	border-radius: var(--mp-radius);
	background: var(--mp-paper);
	box-shadow: 0 18px 55px rgba(43, 31, 32, 0.08);
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .av_textblock_section h1 {
	font-size: clamp(50px, 4.5vw, 64px) !important;
	hyphens: none;
	word-break: normal;
	overflow-wrap: normal;
	text-align: center;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .av_textblock_section,
body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .av_textblock_section p {
	text-align: center;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .avia-testimonial-wrapper {
	grid-column: 1 / -1;
	grid-row: 2;
	width: auto !important;
	min-width: 0;
	max-width: 100%;
	margin: 0;
	box-sizing: border-box;
}

body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) .avia-testimonial {
	max-width: 780px;
	margin-inline: auto;
}

body.page-id-1088 #main .avia-testimonial-content,
body.page-id-1088 #main .avia-testimonial-meta {
	margin-right: auto !important;
	margin-left: auto !important;
	text-align: center;
}

body.page-id-1088 #av_section_1 {
	background: var(--mp-ivory) !important;
}

body.page-id-1088 #av_section_1 .entry-content-wrapper:has(.avia_ajax_form) {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 28px;
	align-items: start;
}

body.page-id-1088 #av_section_1 .entry-content-wrapper:has(.avia_ajax_form) > .av_one_fifth,
body.page-id-1088 #av_section_1 .entry-content-wrapper:has(.avia_ajax_form) > .av_four_fifth {
	float: none;
	width: 100% !important;
	margin: 0 !important;
}

body.page-id-1088 #av_section_1 .entry-content-wrapper:has(.avia_ajax_form) > .av_one_fifth {
	display: flex;
	justify-content: center;
	text-align: center;
}

body.page-id-1088 #av_section_1 .avia_ajax_form {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	box-sizing: border-box;
}

#top .pricing-table-wrap { padding: 8px; }

#top .pricing-table {
	height: 100%;
	overflow: hidden;
	border: 1px solid var(--mp-line);
	border-radius: var(--mp-radius);
	background: var(--mp-paper);
	box-shadow: 0 16px 45px rgba(43, 31, 32, 0.08);
}

#top .pricing-table li { border-color: var(--mp-line); }

#top .pricing-table li.avia-heading-row {
	background: var(--mp-dark);
	color: #fff;
}

#top .pricing-table li.avia-pricing-row {
	color: var(--mp-accent);
	font-size: clamp(28px, 4vw, 48px);
}

#top .av_toggle_section {
	overflow: hidden;
	margin-bottom: 12px;
	border: 1px solid var(--mp-line);
	background: var(--mp-paper);
	box-shadow: 0 12px 36px rgba(43, 31, 32, 0.07);
}

#top .av_toggle_section .toggler {
	padding: 18px 54px 18px 22px;
	border: 0;
	background: transparent;
	color: var(--mp-ink);
	font-weight: 720;
}

#top .av_toggle_section .toggle_content {
	padding: 0 22px 22px;
	border: 0;
	background: transparent;
}

/* Galleries */
#top .av-masonry-container,
#top .avia-gallery { border-radius: var(--mp-radius); }

#top .av-masonry-entry { padding: 5px; }

#top .av-masonry-image-container {
	overflow: hidden;
	transition: transform 300ms ease, box-shadow 300ms ease;
}

#top .av-masonry-entry:hover .av-masonry-image-container {
	box-shadow: 0 20px 50px rgba(43, 31, 32, 0.18);
	transform: translateY(-3px);
}

#top .avia-gallery-thumb a {
	padding: 5px;
	background: transparent;
}

/* Buttons and forms */
#top .avia-button,
#top .wpforms-submit,
#top input[type="submit"] {
	min-height: 48px;
	padding: 13px 24px;
	border: 0;
	border-radius: 999px;
	background: var(--mp-accent);
	color: #fff;
	font-family: "Manrope", sans-serif;
	font-size: 12px;
	font-weight: 760;
	letter-spacing: 0.075em;
	text-transform: uppercase;
	transition: background 180ms ease, transform 180ms ease;
}

#top .avia-button { border-color: var(--mp-accent) !important; }

#top .avia-button:hover,
#top .wpforms-submit:hover,
#top input[type="submit"]:hover {
	background: var(--mp-accent-dark);
	color: #fff;
	filter: brightness(0.86);
	transform: translateY(-1px);
}

#top .wpforms-container {
	margin-block: 30px;
	padding: clamp(24px, 5vw, 52px);
	border: 1px solid var(--mp-line);
	border-radius: var(--mp-radius);
	background: var(--mp-paper);
	box-shadow: var(--mp-shadow);
}

#top .wpforms-container .wpforms-field { padding-block: 10px; }

#top .wpforms-container .wpforms-form,
#top .wpforms-container .wpforms-field-row {
	width: 100%;
	max-width: none !important;
}

#top .wpforms-container label {
	color: var(--mp-ink);
	font-size: 13px;
	font-weight: 720;
}

#top .wpforms-container input:not([type="checkbox"]):not([type="radio"]),
#top .wpforms-container select,
#top .wpforms-container textarea {
	min-height: 50px;
	border: 1px solid rgba(36, 31, 32, 0.2);
	border-radius: 10px;
	background: #fff;
	color: var(--mp-ink);
	box-shadow: none;
}

#top .wpforms-container textarea { min-height: 150px; }

#top .wpforms-container input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
#top .wpforms-container select,
#top .wpforms-container textarea {
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
}

#top .wpforms-container .wpforms-submit-container { padding-top: 18px; }

#top .wpforms-container .wpforms-submit { min-width: 156px; }

#top .avia_ajax_form {
	padding: clamp(24px, 5vw, 52px);
	border: 1px solid var(--mp-line);
	border-radius: var(--mp-radius);
	background: var(--mp-paper);
	box-shadow: var(--mp-shadow);
}

#top .avia_ajax_form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
#top .avia_ajax_form select,
#top .avia_ajax_form textarea {
	width: 100%;
	max-width: none;
	border: 1px solid rgba(36, 31, 32, 0.2);
	border-radius: 10px;
	background: #fff;
	color: var(--mp-ink);
	box-sizing: border-box;
}

#top .wpforms-container input:focus,
#top .wpforms-container select:focus,
#top .wpforms-container textarea:focus {
	border-color: var(--mp-accent);
	outline: 3px solid rgba(237, 28, 36, 0.14);
	outline-offset: 1px;
}

/* Footer */
#footer,
#socket {
	border: 0;
	background: var(--mp-dark);
}

#footer .widgettitle,
#footer h3,
#footer strong,
#socket a { color: #fff; }

#footer p,
#footer li,
#socket { color: rgba(255, 255, 255, 0.68); }

#scroll-top-link {
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	background: var(--mp-dark);
	color: #fff;
}

@media only screen and (max-width: 1100px) {
	#top #header .av-main-nav > li > a {
		padding-inline: 9px;
		font-size: 10px;
	}

	body.page-id-689 #main .entry-content-wrapper > .av_one_third:has(h2) {
		height: 880px;
		padding: 28px 22px;
	}

	body.page-id-689 #main .entry-content-wrapper > .av_one_third:has(h2) h2 {
		font-size: clamp(30px, 4vw, 40px) !important;
	}
}

@media only screen and (max-width: 989px) {
	#top #header .av-burger-menu-main { display: block; }
	#top #header .av-main-nav > li.menu-item { display: none; }
	#top #header .av-main-nav > li.av-burger-menu-main { display: block; }

	body.home #av_section_2 .entry-content-wrapper {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.home #av_section_2 .av_one_half {
		grid-row: 1;
		grid-column: 1 / -1;
	}

	body.home #av_section_2 .av_one_fourth,
	body.home #av_section_2 .av_one_third {
		grid-column: span 1;
	}

	body.home #av_section_2 .av_one_third:last-child {
		grid-column: 1 / -1;
	}

	body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_two_fifth {
		grid-column: 1;
		grid-row: 1;
	}

	body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .av_textblock_section {
		grid-column: 1;
		grid-row: 2;
	}

	body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .avia-testimonial-wrapper {
		grid-column: 1;
		grid-row: 3;
	}
}

@media only screen and (max-width: 767px) {
	:root {
		--mp-radius: 15px;
		--mp-space: 68px;
	}

	body#top { font-size: 16px; }
	#top h1 { font-size: clamp(44px, 13vw, 62px); }
	#top h2 { font-size: clamp(32px, 10vw, 46px); }

	body.page-id-1091 #av_section_1::after {
		background: linear-gradient(0deg, rgba(24, 17, 18, 0.72) 0%, rgba(24, 17, 18, 0.12) 72%);
	}

	body.page-id-1091 #av_section_1,
	body.page-id-1091 #av_section_1 .av-parallax-inner {
		background-position: 42% center !important;
	}

	body.page-id-1091 #av_section_1 .av-special-heading {
		width: min(94%, 500px);
		margin-right: 0;
	}

	body.page-id-1091 #av_section_1 .av-special-heading-tag {
		font-size: clamp(42px, 12vw, 58px) !important;
	}

	body.page-id-534 #main .avia-logo-grid .avia-content-slider-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	body.page-id-534 #main .avia-logo-grid .slide-entry {
		height: 92px;
		padding: 13px;
	}

	body.page-id-470 #av_section_1,
	body.page-id-470 #av_section_1 .av-parallax-inner {
		background-position: 48% center !important;
	}

	body.page-id-470 #av_section_1 {
		height: calc(100svh - 80px) !important;
		min-height: calc(100svh - 80px) !important;
	}

	body.page-id-470 #av_section_1 > .av-section-color-overlay-wrap {
		height: 100% !important;
		min-height: 100% !important;
	}

	body.page-id-470 #av_section_1::after {
		background:
			linear-gradient(90deg, transparent 6%, rgba(20, 14, 15, 0.16) 38%, rgba(20, 14, 15, 0.72) 100%),
			linear-gradient(0deg, rgba(20, 14, 15, 0.5), transparent 55%);
	}

	body.page-id-470 #av_section_1 .container {
		width: min(calc(100% - 32px), var(--mp-wide));
		height: 100% !important;
		min-height: 0 !important;
	}

	body.page-id-470 #av_section_1 .content {
		padding-bottom: 64px;
	}

	body.page-id-470 #av_section_1 .av-special-heading {
		width: min(88vw, 520px);
	}

	body.page-id-470 #av_section_1 h1 {
		font-size: clamp(58px, 17vw, 76px) !important;
	}

	body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .av_textblock_section {
		padding: 32px 28px;
	}

	body.page-id-1088 #main .entry-content-wrapper:has(> .av_two_fifth > .avia-animated-number) > .av_three_fifth > .av_textblock_section h1 {
		font-size: clamp(38px, 11vw, 44px) !important;
		hyphens: auto;
		overflow-wrap: break-word;
	}

	#top #header_main .container,
	#top .avia-section > .container,
	#top .container_wrap > .container {
		width: min(calc(100% - 32px), var(--mp-wide));
	}

	#top #header .logo img {
		max-height: 70px;
		padding-block: 8px;
		filter: brightness(0) invert(1);
	}

	#top #header {
		position: fixed !important;
		top: 0;
		right: 0;
		left: 0;
		width: 100%;
		background: rgba(23, 19, 20, 0.94) !important;
		box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1), 0 10px 30px rgba(0, 0, 0, 0.16);
		-webkit-backdrop-filter: blur(12px);
		backdrop-filter: blur(12px);
	}

	body.admin-bar #header { top: 46px !important; }

	#top #header .av-burger-menu-main a { color: #fff !important; }

	#top #header .av-hamburger-inner,
	#top #header .av-hamburger-inner::before,
	#top #header .av-hamburger-inner::after {
		background-color: #fff !important;
	}

	#top .av-burger-overlay-scroll {
		position: fixed;
		top: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100svh;
		max-height: none;
		overflow-y: auto;
		background: var(--mp-paper) !important;
		opacity: 1 !important;
	}

	#top .av-burger-overlay {
		position: fixed !important;
		inset: 0;
		width: 100% !important;
		height: 100svh !important;
	}

	#top .av-burger-overlay-bg {
		height: 100svh;
		background: var(--mp-paper) !important;
		opacity: 1 !important;
	}

	html.av-burger-overlay-active #top #header .logo img { filter: none; }

	html.av-burger-overlay-active #top #header .av-hamburger-inner,
	html.av-burger-overlay-active #top #header .av-hamburger-inner::before,
	html.av-burger-overlay-active #top #header .av-hamburger-inner::after {
		background-color: var(--mp-ink) !important;
	}

	#av-burger-menu-ul {
		padding: 84px 0 28px;
	}

	#av-burger-menu-ul > li > a {
		padding: 14px 26px;
		font-family: "Manrope", sans-serif;
		font-size: 16px;
		font-weight: 650;
	}

	body.home #av_section_1 {
		height: 100svh !important;
		min-height: 100svh;
		background-position: 64% center !important;
	}

	body.home #av_section_1::after {
		background:
			linear-gradient(0deg, rgba(20, 14, 15, 0.86) 0%, rgba(20, 14, 15, 0.28) 68%, rgba(20, 14, 15, 0.05) 100%),
			linear-gradient(90deg, rgba(20, 14, 15, 0.32), transparent 80%);
	}

	body.home #av_section_1 .container {
		position: static;
		display: contents !important;
	}

	body.home #av_section_1 .content {
		position: absolute;
		z-index: 2;
		top: 100svh;
		right: 16px;
		bottom: auto;
		left: 16px;
		height: auto !important;
		min-height: 0 !important;
		padding: 0 0 10vh;
		box-sizing: border-box;
		transform: translateY(-100%);
	}
	body.home #av_section_1 .av_two_fifth { width: 100%; }
	body.home #av_section_1 h1 {
		max-width: 8ch;
		margin-bottom: 18px;
		font-size: clamp(58px, 16vw, 72px) !important;
		font-weight: 500;
		line-height: 0.9;
		letter-spacing: -0.055em;
	}

	body.home #av_section_1 h2,
	body.home #av_section_1 h3 {
		max-width: 22ch;
		font-size: 18px;
	}

	body.home #av_section_2 .entry-content-wrapper { grid-template-columns: 1fr; }

	body.home #av_section_2 .av_one_fourth,
	body.home #av_section_2 .av_one_half,
	body.home #av_section_2 .av_one_third {
		grid-column: 1;
		width: 100%;
	}

	body:not(.home) #main { padding-top: 80px; }

	body:not(.home) #main > .container_wrap_first .content,
	body:not(.home) #main > .avia-section:first-child .content { padding-block: 68px; }

	body.page-id-689 #main .entry-content-wrapper > .av_one_third:has(h2) {
		height: auto;
		margin-bottom: 22px;
		padding: 28px 22px;
	}

	body.page-id-689 #main .entry-content-wrapper > .av_one_third:has(h2) h2 {
		min-height: 0;
		font-size: clamp(34px, 11vw, 44px) !important;
	}

	#top .wpforms-container { padding: 22px 18px; }

	#top .wpforms-field-row {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 12px;
	}

	#top div.wpforms-container-full .wpforms-form .wpforms-field-row .wpforms-field-row-block {
		width: auto !important;
		max-width: none !important;
		justify-self: stretch;
		margin: 0 !important;
		padding: 0 !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
}
