/* WordPress-, WPBakery- und Contact-Form-7-Anpassungen. */
.admin-bar .header { top: 32px; }
@media (max-width: 782px) { .admin-bar .header { top: 46px; } }
.fm-page-main { padding-top: var(--header-h); min-height: 65vh; }
.fm-page-content { padding-block: var(--section-y); }
.fm-page-content > * + * { margin-top: var(--sp-5); }
.fm-page-title { margin-bottom: var(--sp-6); }
.fm-empty { padding: var(--section-y) var(--gutter); text-align: center; }
.fm-theme .vc_row { margin-left: 0; margin-right: 0; }
.fm-theme .wpb_content_element { margin-bottom: 0; }
.fm-landingpage .fm-builder-row > .vc_column_container > .vc_column-inner { padding-left: 0; padding-right: 0; }
/* WPBakery darf für gepinnte Theme-Sektionen keinen eigenen Scroll-/Containing-
   Block erzeugen. overflow, transform, filter und contain auf einem Vorfahren
   würden position:sticky begrenzen oder vollständig deaktivieren. */
.fm-landingpage .fm-builder-row.fm-sticky-host,
.fm-landingpage .fm-builder-row.fm-sticky-host > .vc_column_container,
.fm-landingpage .fm-builder-row.fm-sticky-host > .vc_column_container > .vc_column-inner,
.fm-landingpage .fm-builder-row.fm-sticky-host > .vc_column_container > .vc_column-inner > .wpb_wrapper {
	overflow: visible !important;
	transform: none !important;
	filter: none !important;
	perspective: none !important;
	contain: none !important;
	will-change: auto !important;
}
.fm-theme .contact-switch__tab.is-active {
	background: var(--c-cta) !important;
	border-color: var(--c-cta) !important;
	color: var(--c-cta-ink) !important;
	box-shadow: var(--shadow-md) !important;
}
.fm-theme .contact-switch__tab {
	border:1px solid var(--c-line-input) !important;
	color: var(--c-text) !important;
	background: #FFF !important;
	box-shadow: var(--shadow-sm) !important;
	transition: all 0.5s ease !important;
}

.fm-theme .contact-switch__tab:not(.is-active):hover{
	border-color: var(--c-cta) !important;
	background: var(--e-10) !important;
	color: var(--c-text) !important;
	transition: all 0.5s ease !important;
}
.fm-theme .contact-switch {
	gap: 10px !important;
	padding: 10px !important;
}
.fm-landingpage .fm-builder-row.fm-sticky-host[data-vc-full-width] { overflow: visible !important; }
.nav > ul { display: flex; align-items: center; gap: clamp(1rem, 2vw, 2rem); }
.fm-post-card-link { display: block; height: 100%; }
body:not(.fm-landingpage) .fab { display: none; }
@media print { .admin-bar .header { top: 0; } }

/* Uploaded icons share the SVG icon dimensions in every component. */
.fm-custom-icon { width: 1.5rem; height: 1.5rem; object-fit: contain; flex-shrink: 0; }
