:root {
	--baam-legal-ink: #17202a;
	--baam-legal-muted: #59646e;
	--baam-legal-green: #356343;
	--baam-legal-soft: #f3f7f4;
	--baam-legal-border: #dce5df;
}

.baam-legal-v1 {
	color: var(--baam-legal-ink);
	background: var(--baam-legal-soft);
}

.baam-legal-v1 #wpfront-notification-bar-spacer.hidden {
	display: block !important;
	height: 19px !important;
	visibility: hidden;
}

.baam-legal-v1 .site-header {
	position: sticky;
	top: 0;
	z-index: 100;
}

.baam-legal-v1 .site-header .ast-primary-header-bar {
	min-height: 72px;
	padding-block: 0;
	border-bottom: 1px solid rgba(23, 32, 42, 0.08);
	background: rgba(255, 255, 255, 0.97);
	box-shadow: 0 6px 20px rgba(23, 32, 42, 0.04);
	backdrop-filter: blur(14px);
}

.baam-legal-v1 .site-header .ast-builder-grid-row { min-height: 72px; }
.baam-legal-v1 .site-header .ast-site-identity { padding-block: 0; }
.baam-legal-v1 .site-header .custom-logo-link { display: flex; align-items: center; overflow: visible; }

.baam-legal-v1 .site-header .custom-logo-link img {
	width: 64px !important;
	height: 64px !important;
	max-width: 130px;
	max-height: 64px;
	object-fit: contain;
	transform: scale(1.3);
	transform-origin: left center;
}

.baam-legal-v1 .main-header-menu > .menu-item > .menu-link {
	min-height: 40px;
	padding-inline: 12px;
	color: #3e474f;
	font-size: 14px;
	font-weight: 650;
}

.baam-legal-en .main-header-menu > .menu-item > .menu-link { padding-inline: 9px; font-size: 13px; }
.baam-legal-v1 .main-header-menu > .menu-item > .menu-link:hover,
.baam-legal-v1 .main-header-menu > .current-menu-item > .menu-link { color: var(--baam-legal-green); }

.baam-legal-v1 .main-header-menu > .menu-item > .menu-link[href*="/termin-buchen/"],
.baam-legal-v1 .main-header-menu > .menu-item > .menu-link[href*="/book-appointment/"] {
	min-height: 40px;
	margin-left: 5px;
	padding: 9px 16px;
	border-radius: 8px;
	color: #1f2528;
	background: #f4ca3b;
	box-shadow: 0 8px 18px rgba(211, 165, 0, 0.22);
}

.admin-bar.baam-legal-v1 .site-header { top: 32px; }

.baam-legal-v1 .site-content > .ast-container,
.baam-legal-v1 .site-main,
.baam-legal-v1 .entry-content {
	max-width: none;
	padding: 0;
	margin: 0;
}

.baam-legal-v1 .content-area,
.baam-legal-v1 .site-main,
.baam-legal-v1 article.page { width: 100%; margin: 0; }

.baam-legal-v1 .elementor-element-aea96a9,
.baam-legal-v1 .elementor-element-bb9c734,
.baam-legal-v1 .elementor-element-e80db2c,
.baam-legal-v1 .elementor-element-ee47106 { display: none; }

.baam-legal-v1,
.baam-legal-v1 * { box-sizing: border-box; }

.baam-legal-shell {
	width: min(960px, calc(100% - 64px));
	margin: 0 auto;
}

.baam-legal-header {
	padding: 54px 0 48px;
	border-bottom: 1px solid var(--baam-legal-border);
	background: linear-gradient(180deg, #fff 0%, #f8faf8 100%);
}

.baam-legal-header p {
	margin: 0 0 10px;
	color: var(--baam-legal-green);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
}

.baam-legal-header h1 {
	max-width: 850px;
	margin: 0;
	color: var(--baam-legal-ink);
	font-size: 44px;
	font-weight: 760;
	line-height: 1.12;
	letter-spacing: 0;
}

.baam-legal-v1 .elementor-element-b887b79,
.baam-legal-v1 .elementor-element-5cb15eb,
.baam-legal-v1 .elementor-element-8ff3bad {
	width: min(960px, calc(100% - 64px));
	margin: 48px auto 72px !important;
	padding: 52px 58px !important;
	border: 1px solid var(--baam-legal-border);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 18px 48px rgba(23, 32, 42, 0.08);
}

.baam-legal-v1 .elementor-element-b887b79 > .elementor-container,
.baam-legal-v1 .elementor-element-5cb15eb > .elementor-container,
.baam-legal-v1 .elementor-element-8ff3bad > .elementor-container { max-width: none !important; }

.baam-legal-v1 .elementor-widget-text-editor,
.baam-legal-v1 .elementor-widget-text-editor p,
.baam-legal-v1 .elementor-widget-text-editor li,
.baam-legal-v1 .elementor-widget-text-editor td,
.baam-legal-v1 .elementor-widget-text-editor th {
	color: #344049;
	font-size: 16px;
	line-height: 1.75;
}

.baam-legal-v1 .elementor-widget-text-editor p { margin: 0 0 1.1em; }
.baam-legal-v1 .elementor-widget-text-editor p:last-child { margin-bottom: 0; }

.baam-legal-v1 .elementor-widget-text-editor h2,
.baam-legal-v1 .elementor-widget-text-editor h3,
.baam-legal-v1 .elementor-widget-text-editor h4 {
	color: var(--baam-legal-ink);
	font-weight: 740;
	line-height: 1.28;
	letter-spacing: 0;
	overflow-wrap: anywhere;
}

.baam-legal-v1 .elementor-widget-text-editor h2 { margin: 1.75em 0 0.65em; font-size: 28px; }
.baam-legal-v1 .elementor-widget-text-editor h3 { margin: 1.55em 0 0.55em; font-size: 22px; }
.baam-legal-v1 .elementor-widget-text-editor h4 { margin: 1.4em 0 0.5em; font-size: 18px; }
.baam-legal-v1 .elementor-widget-text-editor > :first-child { margin-top: 0; }

.baam-legal-v1 .elementor-widget-text-editor ul,
.baam-legal-v1 .elementor-widget-text-editor ol { margin: 0 0 1.35em; padding-left: 1.4em; }
.baam-legal-v1 .elementor-widget-text-editor li + li { margin-top: 0.45em; }

.baam-legal-v1 .elementor-widget-text-editor a {
	color: #275a36;
	font-weight: 620;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	overflow-wrap: anywhere;
}

.baam-legal-v1 .elementor-widget-text-editor a:hover { color: #183f25; text-decoration-thickness: 2px; }
.baam-legal-v1 a:focus-visible { outline: 3px solid #d9aa00; outline-offset: 3px; border-radius: 2px; }

.baam-legal-v1 .elementor-widget-text-editor blockquote {
	margin: 1.6em 0;
	padding: 18px 22px;
	border-left: 4px solid #6d9478;
	background: var(--baam-legal-soft);
}

.baam-legal-v1 .elementor-widget-text-editor table {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 1.5em 0;
	overflow-x: auto;
	border-collapse: collapse;
}

.baam-legal-v1 .elementor-widget-text-editor th,
.baam-legal-v1 .elementor-widget-text-editor td {
	padding: 12px 14px;
	border: 1px solid var(--baam-legal-border);
	text-align: left;
	vertical-align: top;
}

.baam-legal-v1 .elementor-widget-text-editor th { color: var(--baam-legal-ink); background: var(--baam-legal-soft); }
.baam-legal-v1 .site-footer { margin-top: 0; }

@media (max-width: 921px) {
	.baam-legal-shell,
	.baam-legal-v1 .elementor-element-b887b79,
	.baam-legal-v1 .elementor-element-5cb15eb,
	.baam-legal-v1 .elementor-element-8ff3bad { width: min(100% - 40px, 880px); }

	.baam-legal-v1 .elementor-element-b887b79,
	.baam-legal-v1 .elementor-element-5cb15eb,
	.baam-legal-v1 .elementor-element-8ff3bad { padding: 42px !important; }

	.baam-legal-v1 .site-header .custom-logo-link img { transform: scale(1.12); }
}

@media (max-width: 600px) {
	.admin-bar.baam-legal-v1 .site-header { top: 0; }
	.baam-legal-v1 .site-header .ast-primary-header-bar,
	.baam-legal-v1 .site-header .ast-builder-grid-row { min-height: 64px; }
	.baam-legal-v1 .site-header .custom-logo-link img {
		width: 56px !important;
		height: 56px !important;
		max-height: 56px;
		transform: scale(1.08);
	}

	.baam-legal-shell,
	.baam-legal-v1 .elementor-element-b887b79,
	.baam-legal-v1 .elementor-element-5cb15eb,
	.baam-legal-v1 .elementor-element-8ff3bad { width: calc(100% - 28px); }

	.baam-legal-header { padding: 36px 0 32px; }
	.baam-legal-header p { margin-bottom: 8px; font-size: 12px; }
	.baam-legal-header h1 { font-size: 32px; line-height: 1.18; }

	.baam-legal-v1 .elementor-element-b887b79,
	.baam-legal-v1 .elementor-element-5cb15eb,
	.baam-legal-v1 .elementor-element-8ff3bad {
		margin: 24px auto 42px !important;
		padding: 28px 22px !important;
	}

	.baam-legal-v1 .elementor-widget-text-editor,
	.baam-legal-v1 .elementor-widget-text-editor p,
	.baam-legal-v1 .elementor-widget-text-editor li,
	.baam-legal-v1 .elementor-widget-text-editor td,
	.baam-legal-v1 .elementor-widget-text-editor th { font-size: 15px; line-height: 1.7; }

	.baam-legal-v1 .elementor-widget-text-editor h2 { font-size: 24px; }
	.baam-legal-v1 .elementor-widget-text-editor h3 { font-size: 20px; }
}
