:root {
	--baam-prices-ink: #17202a;
	--baam-prices-muted: #59646e;
	--baam-prices-yellow: #f4ca3b;
	--baam-prices-green: #3f704d;
	--baam-prices-soft: #f4f7f5;
	--baam-prices-border: #dfe5e1;
}

.baam-prices-v1 { color: var(--baam-prices-ink); background: #fff; }
.baam-prices-v1 #wpfront-notification-bar-spacer.hidden { display: block !important; height: 19px !important; visibility: hidden; }

.baam-prices-v1 .site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	transition: box-shadow 180ms ease;
}

.baam-prices-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-prices-v1.baam-header-scrolled .site-header { box-shadow: 0 10px 30px rgba(23, 32, 42, 0.12); }
.baam-prices-v1 .site-header .ast-builder-grid-row { min-height: 72px; }
.baam-prices-v1 .site-header .ast-site-identity { padding-block: 0; }
.baam-prices-v1 .site-header .custom-logo-link { display: flex; align-items: center; overflow: visible; }

.baam-prices-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-prices-v1 .main-header-menu > .menu-item > .menu-link {
	min-height: 40px;
	padding-inline: 12px;
	color: #3e474f;
	font-size: 14px;
	font-weight: 650;
}

.baam-prices-v1 .main-header-menu > .menu-item > .menu-link:hover,
.baam-prices-v1 .main-header-menu > .current-menu-item > .menu-link { color: var(--baam-prices-green); }

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

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

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

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

.baam-prices-v1 .elementor-element-469c22bc,
.baam-prices-v1 .elementor-element-2e4f8a51 { display: none; }

.baam-prices-page,
.baam-prices-page * { box-sizing: border-box; }

.baam-prices-page { width: 100%; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; }
.baam-prices-shell { width: min(1160px, calc(100% - 64px)); margin: 0 auto; }

.baam-prices-hero {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 490px;
	overflow: hidden;
	background-image: url("/wp-content/uploads/2024/09/IMG_7690-scaled.webp");
	background-position: center 48%;
	background-size: cover;
}

.baam-prices-hero__overlay { position: absolute; inset: 0; background: rgba(10, 17, 20, 0.48); }

.baam-prices-hero__content {
	position: relative;
	z-index: 1;
	width: min(1160px, calc(100% - 64px));
	margin: 0 auto;
	padding: 78px 0 64px;
}

.baam-prices-eyebrow,
.baam-prices-kicker,
.baam-prices-section-heading > p,
.baam-prices-cta__inner > div > p {
	margin: 0 0 12px;
	color: #8c6a00;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
}

.baam-prices-eyebrow { color: #ffe47e; }

.baam-prices-hero h1 {
	max-width: 760px;
	margin: 0;
	color: #fff;
	font-size: 56px;
	font-weight: 760;
	line-height: 1.06;
	letter-spacing: 0;
}

.baam-prices-hero__lead {
	max-width: 650px;
	margin: 20px 0 28px;
	color: rgba(255, 255, 255, 0.96);
	font-size: 20px;
	line-height: 1.55;
}

.baam-prices-hero__actions,
.baam-prices-section-actions,
.baam-prices-cta__actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }

.baam-prices-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 13px 21px;
	border: 1px solid transparent;
	border-radius: 8px;
	font-size: 15px;
	font-weight: 750;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: transform 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

.baam-prices-button:hover { transform: translateY(-2px); }

.baam-prices-button:focus-visible,
.baam-prices-text-link:focus-visible,
.baam-prices-faq summary:focus-visible { outline: 3px solid #245b9b; outline-offset: 3px; }

.baam-prices-button--primary { color: #181d20; background: var(--baam-prices-yellow); box-shadow: 0 12px 26px rgba(17, 24, 26, 0.2); }
.baam-prices-button--primary:hover { color: #181d20; background: #ffda52; }
.baam-prices-button--secondary { color: #fff; border-color: rgba(255, 255, 255, 0.55); background: rgba(12, 20, 22, 0.32); backdrop-filter: blur(8px); }
.baam-prices-button--secondary:hover { color: #fff; background: rgba(12, 20, 22, 0.5); }
.baam-prices-button--outline { color: var(--baam-prices-green); border-color: #b8cbbd; background: #fff; }
.baam-prices-button--outline:hover { color: #2f5b3b; border-color: #7fa28a; background: #f6faf7; }

.baam-prices-text-link { padding: 11px 4px; color: var(--baam-prices-green); font-size: 15px; font-weight: 750; text-underline-offset: 4px; }

.baam-prices-hero__facts {
	display: flex;
	flex-wrap: wrap;
	max-width: 720px;
	margin-top: 30px;
	padding: 13px 16px;
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-radius: 8px;
	background: rgba(12, 20, 22, 0.34);
	backdrop-filter: blur(8px);
}

.baam-prices-hero__facts span { padding: 1px 14px; border-right: 1px solid rgba(255, 255, 255, 0.25); color: #fff; font-size: 13px; font-weight: 700; }
.baam-prices-hero__facts span:first-child { padding-left: 0; }
.baam-prices-hero__facts span:last-child { padding-right: 0; border-right: 0; }

.baam-prices-entry,
.baam-prices-birthday,
.baam-prices-kita,
.baam-prices-extras,
.baam-prices-info { padding: 80px 0; }

.baam-prices-entry,
.baam-prices-kita,
.baam-prices-info { background: #fff; }

.baam-prices-birthday,
.baam-prices-extras { background: var(--baam-prices-soft); }

.baam-prices-section-heading { max-width: 770px; margin-bottom: 36px; }

.baam-prices-section-heading h2,
.baam-prices-info h2,
.baam-prices-cta h2 {
	margin: 0;
	color: var(--baam-prices-ink);
	font-size: 36px;
	font-weight: 750;
	line-height: 1.17;
	letter-spacing: 0;
}

.baam-prices-section-heading > span { display: block; margin-top: 12px; color: var(--baam-prices-muted); font-size: 16px; line-height: 1.6; }

.baam-prices-entry-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.baam-prices-entry-grid article {
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 250px;
	padding: 28px;
	border: 1px solid var(--baam-prices-border);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 14px 36px rgba(23, 32, 42, 0.07);
}

.baam-prices-entry-grid .baam-prices-entry-card--featured { border-color: #dfbd3d; box-shadow: 0 18px 42px rgba(126, 96, 0, 0.14); }
.baam-prices-entry-grid p { margin: 0; color: var(--baam-prices-green); font-size: 13px; font-weight: 800; text-transform: uppercase; }
.baam-prices-entry-grid strong { display: block; margin: 22px 0 18px; font-size: 46px; font-weight: 780; line-height: 1; }
.baam-prices-entry-grid span { margin-top: auto; color: var(--baam-prices-muted); font-size: 14px; line-height: 1.65; }

.baam-prices-reservation {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	margin-top: 24px;
	padding: 22px 24px;
	border: 1px solid #d8e2da;
	border-radius: 8px;
	background: #eef5f0;
}

.baam-prices-reservation > div { display: flex; flex-direction: column; gap: 5px; }
.baam-prices-reservation strong { font-size: 16px; }
.baam-prices-reservation span { color: var(--baam-prices-muted); font-size: 14px; line-height: 1.55; }
.baam-prices-reservation .baam-prices-button { flex: 0 0 auto; }

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

.baam-prices-package-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 27px;
	border: 1px solid var(--baam-prices-border);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 14px 36px rgba(23, 32, 42, 0.07);
}

.baam-prices-package-card--featured { border-color: #dfbd3d; box-shadow: 0 18px 42px rgba(126, 96, 0, 0.14); }
.baam-prices-package-card header { padding-bottom: 21px; border-bottom: 1px solid var(--baam-prices-border); }
.baam-prices-package-card header p { margin: 0 0 7px; color: var(--baam-prices-green); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.baam-prices-package-card h3 { min-height: 31px; margin: 0; font-size: 23px; font-weight: 760; line-height: 1.3; }
.baam-prices-package-card header strong { display: block; margin-top: 13px; font-size: 34px; font-weight: 780; line-height: 1; }
.baam-prices-package-card header span { display: block; margin-top: 10px; color: var(--baam-prices-muted); font-size: 13px; }
.baam-prices-package-card ul { padding: 0; margin: 21px 0 0; list-style: none; }
.baam-prices-package-card li { position: relative; padding: 0 0 10px 22px; color: #424d55; font-size: 14px; line-height: 1.5; }
.baam-prices-package-card li::before { position: absolute; top: 2px; left: 0; color: var(--baam-prices-green); font-size: 14px; font-weight: 850; content: "✓"; }
.baam-prices-section-actions { margin-top: 28px; }

.baam-prices-kita-grid { display: grid; gap: 12px; }

.baam-prices-kita-grid article {
	display: grid;
	grid-template-columns: minmax(230px, 1fr) 120px minmax(260px, 1fr);
	gap: 28px;
	align-items: center;
	min-width: 0;
	padding: 22px 24px;
	border: 1px solid var(--baam-prices-border);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(23, 32, 42, 0.05);
}

.baam-prices-kita-grid p { margin: 0 0 5px; color: var(--baam-prices-green); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.baam-prices-kita-grid h3 { margin: 0; font-size: 20px; font-weight: 750; }
.baam-prices-kita-grid strong { font-size: 28px; font-weight: 780; }
.baam-prices-kita-grid > article > span { color: var(--baam-prices-muted); font-size: 14px; line-height: 1.55; }

.baam-prices-extra-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 14px;
}

.baam-prices-extra-grid article {
	min-width: 0;
	padding: 22px;
	border: 1px solid var(--baam-prices-border);
	border-radius: 8px;
	background: #fff;
}

.baam-prices-extra-grid p { margin: 0 0 9px; color: var(--baam-prices-green); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.baam-prices-extra-grid h3 { min-height: 48px; margin: 0; font-size: 17px; font-weight: 730; line-height: 1.4; }
.baam-prices-extra-grid strong { display: block; margin-top: 15px; font-size: 25px; font-weight: 780; }
.baam-prices-extra-grid span { display: block; margin-top: 6px; color: var(--baam-prices-muted); font-size: 12px; line-height: 1.5; }

.baam-prices-info__layout {
	display: grid;
	grid-template-columns: minmax(240px, 0.65fr) minmax(0, 1.35fr);
	gap: 64px;
	align-items: start;
}

.baam-prices-info__layout > div:first-child > p:last-child { margin: 16px 0 0; color: var(--baam-prices-muted); font-size: 15px; line-height: 1.6; }
.baam-prices-faq { border-top: 1px solid var(--baam-prices-border); }
.baam-prices-faq details { border-bottom: 1px solid var(--baam-prices-border); }

.baam-prices-faq summary {
	position: relative;
	padding: 19px 38px 19px 0;
	color: var(--baam-prices-ink);
	font-size: 16px;
	font-weight: 720;
	line-height: 1.4;
	cursor: pointer;
	list-style: none;
}

.baam-prices-faq summary::-webkit-details-marker { display: none; }
.baam-prices-faq summary::after { position: absolute; top: 20px; right: 4px; color: var(--baam-prices-green); font-size: 21px; content: "+"; }
.baam-prices-faq details[open] summary::after { content: "−"; }
.baam-prices-faq details p { margin: -3px 0 19px; padding-right: 30px; color: var(--baam-prices-muted); font-size: 14px; line-height: 1.7; }

.baam-prices-cta { padding: 64px 0; background: #f7df80; }
.baam-prices-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 36px; }
.baam-prices-cta__inner > div:first-child { max-width: 700px; }
.baam-prices-cta__inner > div > p { color: #715b08; }
.baam-prices-cta__inner span { display: block; margin-top: 12px; color: #4f4c3d; font-size: 15px; line-height: 1.55; }
.baam-prices-cta .baam-prices-button--primary { background: #fff; box-shadow: 0 12px 26px rgba(103, 80, 0, 0.16); }
.baam-prices-cta .baam-prices-button--outline { border-color: rgba(50, 65, 48, 0.3); background: transparent; }

.baam-js .baam-prices-page section { opacity: 0; transform: translateY(12px); }
.baam-js.baam-prices-ready .baam-prices-page section { opacity: 1; transform: none; transition: opacity 440ms ease, transform 440ms ease; }

@media (max-width: 1100px) {
	.baam-prices-v1 #wpfront-notification-bar-spacer.hidden { height: 35px !important; }
	.baam-prices-v1 .main-header-menu > .menu-item > .menu-link { padding-inline: 8px; font-size: 13px; }
	.baam-prices-package-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.baam-prices-package-card:last-child { grid-column: 1 / -1; }
	.baam-prices-extra-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 921px) {
	.baam-prices-v1 .site-header .custom-logo-link img { width: 58px !important; height: 58px !important; max-height: 58px; transform: scale(1.2); }
	.baam-prices-shell,
	.baam-prices-hero__content { width: min(100% - 40px, 760px); }
	.baam-prices-hero h1 { font-size: 48px; }
	.baam-prices-entry-grid { grid-template-columns: 1fr; }
	.baam-prices-entry-grid article { min-height: 210px; }
	.baam-prices-kita-grid article { grid-template-columns: minmax(0, 1fr) 110px; gap: 18px; }
	.baam-prices-kita-grid > article > span { grid-column: 1 / -1; }
	.baam-prices-info__layout { grid-template-columns: 1fr; gap: 34px; }
	.baam-prices-cta__inner { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 720px) {
	.baam-prices-hero { min-height: 470px; background-position: 58% center; }
	.baam-prices-hero__overlay { background: rgba(10, 17, 20, 0.55); }
	.baam-prices-hero__facts span { width: 100%; padding: 5px 0; border-right: 0; }
	.baam-prices-package-grid { grid-template-columns: 1fr; }
	.baam-prices-package-card:last-child { grid-column: auto; }
	.baam-prices-extra-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.baam-prices-reservation { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 600px) {
	.baam-prices-v1 #wpfront-notification-bar-spacer.hidden { height: 68px !important; }
	.baam-prices-shell,
	.baam-prices-hero__content { width: calc(100% - 32px); }
	.baam-prices-hero { min-height: 480px; background-position: 62% center; }
	.baam-prices-hero__content { padding: 58px 0 46px; }
	.baam-prices-eyebrow { font-size: 11px; }
	.baam-prices-hero h1 { font-size: 39px; }
	.baam-prices-hero__lead { font-size: 17px; }
	.baam-prices-hero__actions,
	.baam-prices-button,
	.baam-prices-section-actions .baam-prices-button,
	.baam-prices-cta__actions { width: 100%; }
	.baam-prices-hero__facts { margin-top: 24px; }
	.baam-prices-entry,
	.baam-prices-birthday,
	.baam-prices-kita,
	.baam-prices-extras,
	.baam-prices-info { padding: 58px 0; }
	.baam-prices-section-heading { margin-bottom: 26px; }
	.baam-prices-section-heading h2,
	.baam-prices-info h2,
	.baam-prices-cta h2 { font-size: 30px; }
	.baam-prices-entry-grid article,
	.baam-prices-package-card { padding: 23px; }
	.baam-prices-kita-grid article { grid-template-columns: 1fr; padding: 20px; }
	.baam-prices-kita-grid > article > span { grid-column: auto; }
	.baam-prices-extra-grid { grid-template-columns: 1fr; }
	.baam-prices-extra-grid h3 { min-height: 0; }
	.baam-prices-faq summary { font-size: 15px; }
	.baam-prices-cta { padding: 52px 0; }
}

@media (prefers-reduced-motion: reduce) {
	.baam-prices-v1 *,
	.baam-prices-v1 *::before,
	.baam-prices-v1 *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
	.baam-js .baam-prices-page section { opacity: 1; transform: none; }
}
