/**
 * Block editor + frontend layout parity for Besseler pages.
 */

main#inhalt,
.editor-styles-wrapper .wp-block-post-content,
.block-editor-block-list__layout {
	max-width: none !important;
}

main#inhalt .wp-block-group,
.editor-styles-wrapper .wp-block-group {
	box-sizing: border-box;
	max-width: none !important;
	width: 100%;
}

main#inhalt .wp-block-group.is-layout-constrained,
.editor-styles-wrapper .wp-block-group.is-layout-constrained,
main#inhalt .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.editor-styles-wrapper .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

main#inhalt section.wp-block-group,
.editor-styles-wrapper section.wp-block-group {
	display: block;
	width: 100%;
}

main#inhalt section.wp-block-group.page-hero,
.editor-styles-wrapper section.wp-block-group.page-hero,
main#inhalt div.wp-block-group.page-hero,
.editor-styles-wrapper div.wp-block-group.page-hero,
main#inhalt section.wp-block-group.legal-hero,
.editor-styles-wrapper section.wp-block-group.legal-hero {
	min-height: 610px;
	display: grid;
	align-items: end;
	position: relative;
	overflow: hidden;
	background: #121211;
	padding: 0;
	border-top: 0;
}

main#inhalt section.wp-block-group.page-hero.paper,
.editor-styles-wrapper section.wp-block-group.page-hero.paper,
main#inhalt div.wp-block-group.page-hero.paper,
.editor-styles-wrapper div.wp-block-group.page-hero.paper,
.page-hero.paper {
	background: var(--paper);
	color: var(--ink);
}

main#inhalt section.wp-block-group.page-hero.paper::after,
.editor-styles-wrapper section.wp-block-group.page-hero.paper::after,
main#inhalt div.wp-block-group.page-hero.paper::after,
.editor-styles-wrapper div.wp-block-group.page-hero.paper::after,
.page-hero.paper::after {
	background: linear-gradient(transparent, var(--paper));
}

.page-hero.paper .eyebrow {
	color: #796921;
}

.page-hero.paper h1 span {
	-webkit-text-stroke: 1.4px var(--ink);
}

.page-hero.paper .lead {
	color: #555;
}

/* Akademie hero: photo behind a flat 55% black overlay, no directional scrim.
   Needs this specificity to clear the flat .page-hero background above. */
main#inhalt section.wp-block-group.page-hero.hero-plain,
.editor-styles-wrapper section.wp-block-group.page-hero.hero-plain,
main#inhalt div.wp-block-group.page-hero.hero-plain,
.editor-styles-wrapper div.wp-block-group.page-hero.hero-plain {
	background: linear-gradient(rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0.95)), var(--hero) center / cover no-repeat;
}

main#inhalt section.wp-block-group.page-hero.hero-plain::after,
.editor-styles-wrapper section.wp-block-group.page-hero.hero-plain::after,
main#inhalt div.wp-block-group.page-hero.hero-plain::after,
.editor-styles-wrapper div.wp-block-group.page-hero.hero-plain::after {
	display: none;
}

main#inhalt section.wp-block-group.page-hero.home-hero,
.editor-styles-wrapper section.wp-block-group.page-hero.home-hero,
main#inhalt div.wp-block-group.page-hero.home-hero,
.editor-styles-wrapper div.wp-block-group.page-hero.home-hero {
	background: #121211;
}

main#inhalt section.wp-block-group.page-hero.home-hero::before,
.editor-styles-wrapper section.wp-block-group.page-hero.home-hero::before,
main#inhalt div.wp-block-group.page-hero.home-hero::before,
.editor-styles-wrapper div.wp-block-group.page-hero.home-hero::before {
	content: "";
	position: absolute;
	z-index: 0;
	inset: -20%;
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.72) 42%, rgba(0, 0, 0, 0.22) 100%), var(--hero) center/cover no-repeat;
	transform: translateX(18%) scale(1.08);
	transform-origin: center;
	pointer-events: none;
}



main#inhalt section.wp-block-group.page-hero.home-hero::after,
.editor-styles-wrapper section.wp-block-group.page-hero.home-hero::after,
main#inhalt div.wp-block-group.page-hero.home-hero::after,
.editor-styles-wrapper div.wp-block-group.page-hero.home-hero::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 150px;
	background: linear-gradient(transparent, var(--black));
	pointer-events: none;
	z-index: 0;
}

main#inhalt section.wp-block-group.paper,
.editor-styles-wrapper section.wp-block-group.paper {
	background: var(--paper);
	color: var(--ink);
}

main#inhalt section.wp-block-group.quiet,
.editor-styles-wrapper section.wp-block-group.quiet {
	background: #111;
	color: #bdbdb7;
}

main#inhalt section.wp-block-group.cta,
.editor-styles-wrapper section.wp-block-group.cta {
	background: linear-gradient(135deg, #171716, #080808);
}

main#inhalt .wp-block-group.wrap,
main#inhalt .wrap,
.editor-styles-wrapper .wp-block-group.wrap,
.editor-styles-wrapper .wrap {
	width: min(calc(100% - 40px), var(--max));
	margin-left: auto;
	margin-right: auto;
}

main#inhalt .wp-block-group.hero-copy,
.editor-styles-wrapper .wp-block-group.hero-copy {
	position: relative;
	z-index: 1;
	padding: 105px 0 100px;
}

main#inhalt .wp-block-html,
.editor-styles-wrapper .wp-block-html {
	margin: 0;
}

main#inhalt .wp-block-html .actions,
.editor-styles-wrapper .wp-block-html .actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 32px;
}

main#inhalt .wp-block-html .cards,
.editor-styles-wrapper .wp-block-html .cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

main#inhalt .wp-block-html .timeline,
.editor-styles-wrapper .wp-block-html .timeline {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

main#inhalt .wp-block-heading,
main#inhalt .wp-block-paragraph,
.editor-styles-wrapper .wp-block-heading,
.editor-styles-wrapper .wp-block-paragraph {
	margin: 0;
}

@media (max-width: 950px) {
	main#inhalt .wp-block-html .cards,
	main#inhalt .wp-block-html .timeline,
	.editor-styles-wrapper .wp-block-html .cards,
	.editor-styles-wrapper .wp-block-html .timeline {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 600px) {
	main#inhalt .wp-block-group.wrap,
	main#inhalt .wrap,
	.editor-styles-wrapper .wp-block-group.wrap,
	.editor-styles-wrapper .wrap {
		width: min(calc(100% - 28px), var(--max));
	}

	main#inhalt .wp-block-html .cards,
	main#inhalt .wp-block-html .timeline,
	.editor-styles-wrapper .wp-block-html .cards,
	.editor-styles-wrapper .wp-block-html .timeline {
		grid-template-columns: 1fr;
	}

	main#inhalt .wp-block-html .actions,
	.editor-styles-wrapper .wp-block-html .actions {
		flex-direction: column;
		align-items: stretch;
	}

	main#inhalt .wp-block-html .actions .btn,
	.editor-styles-wrapper .wp-block-html .actions .btn {
		width: 100%;
		text-align: center;
	}
}

/* Zahlungsbedingungen — WordPress block layout parity */
main#inhalt .payment-fast-track .wrap,
main#inhalt .payment-fast-track .wp-block-group.wrap {
	align-items: center;
	display: grid;
	gap: 45px;
	grid-template-columns: 1fr auto;
}

main#inhalt .payment-helper-layout,
main#inhalt .wp-block-group.payment-helper-layout {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 28px;
	margin-top: 42px;
}

main#inhalt .wrap.legal,
main#inhalt .wp-block-group.wrap.legal {
	max-width: 900px;
}

main#inhalt .wrap.legal .access-term,
main#inhalt .wp-block-group.access-term {
	display: grid;
	gap: 7px;
	margin: 0 0 52px;
	padding: 28px;
	background: #fff;
	color: #171716;
	border: 4px solid var(--gold);
}

main#inhalt .wrap.legal h2,
main#inhalt .wrap.legal .wp-block-heading {
	font-size: 32px;
	margin-top: 55px;
}

main#inhalt .wrap.legal h3 {
	font-size: 21px;
	margin-top: 30px;
}

main#inhalt .payment-helper .wp-block-html form label {
	display: grid;
	font-size: 13px;
	font-weight: 800;
	gap: 7px;
	margin-bottom: 17px;
}

@media (max-width: 950px) {
	main#inhalt .payment-helper-layout,
	main#inhalt .wp-block-group.payment-helper-layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 750px) {
	main#inhalt .payment-fast-track .wrap,
	main#inhalt .payment-fast-track .wp-block-group.wrap {
		grid-template-columns: 1fr;
	}

	main#inhalt .payment-fast-track .btn {
		width: 100%;
		white-space: normal;
	}
}
