/*
Theme Name: Montrean_Blanko_Press
Theme URI: https://example.com/
Author: Codex
Author URI: https://example.com/
Description: Blankes WordPress Block-Theme fuer flexible Kundenseiten mit Gutenberg Patterns, Medienvorlagen, Langtext-Bloecken und sauberem Prototyp-zu-Theme-Workflow.
Requires at least: 7.0
Tested up to: 7.0
Requires PHP: 8.1
Version: 1.6.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: blankoverpress
*/

:root {
	--ks-ease: cubic-bezier(.2, .8, .2, 1);
	--bp-viewport-width: calc(100vw - (100vw - 100%));
	--bp-wide: min(1180px, calc(100vw - 48px));
	--bp-content: min(760px, calc(100vw - 48px));
	--bp-section-y: clamp(4rem, 8vw, 7rem);
	--bp-section-y-compact: clamp(2.75rem, 6vw, 4.5rem);
	--bp-card-radius: 8px;
	--bp-card-shadow: 0 14px 34px color-mix(in srgb, var(--wp--preset--color--ink) 8%, transparent);
	--bp-card-border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

a {
	text-underline-offset: .18em;
	text-decoration-thickness: .08em;
}

.wp-block-navigation a,
.wp-block-navigation .wp-block-navigation-item__content {
	display: inline-flex;
	position: relative;
	transition: color 180ms var(--ks-ease), transform 180ms var(--ks-ease);
}

.wp-block-navigation a::after,
.wp-block-navigation .wp-block-navigation-item__content::after {
	background: var(--wp--preset--color--accent);
	bottom: -0.38rem;
	content: "";
	height: 2px;
	left: 0;
	opacity: 0;
	position: absolute;
	transform: scaleX(.4);
	transform-origin: left;
	transition: opacity 180ms var(--ks-ease), transform 180ms var(--ks-ease);
	width: 100%;
}

.wp-block-navigation a:hover,
.wp-block-navigation .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--accent);
	transform: translateY(-5px) !important;
}

.wp-block-navigation a:hover::after,
.wp-block-navigation .wp-block-navigation-item__content:hover::after {
	opacity: 1;
	transform: scaleX(1);
}

.wp-block-navigation a:focus-visible,
.wp-block-navigation .wp-block-navigation-item__content:focus-visible,
.wp-block-button__link:focus-visible,
.wp-element-button:focus-visible,
a:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 4px;
}

.wp-site-blocks {
	overflow-x: clip;
}

.bp-front-main {
	margin-top: 0;
}

.bp-front-main > * {
	margin-block-start: 0;
}

.bp-section,
.is-style-bp-section,
.is-style-bp-section-alt,
.is-style-bp-section-dark {
	padding-block: var(--bp-section-y);
}

.bp-section--compact {
	padding-block: var(--bp-section-y-compact);
}

.bp-section--surface,
.is-style-bp-section-alt {
	background: var(--wp--preset--color--paper-alt);
}

.bp-section--dark,
.is-style-bp-section-dark {
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--paper);
}

.bp-section > *,
.is-style-bp-section > *,
.is-style-bp-section-alt > *,
.is-style-bp-section-dark > * {
	margin-block-start: 0;
}

.bp-section > * + *,
.is-style-bp-section > * + *,
.is-style-bp-section-alt > * + *,
.is-style-bp-section-dark > * + * {
	margin-block-start: var(--wp--preset--spacing--50);
}

.bp-inner,
.bp-inner-wide {
	margin-inline: auto;
	max-width: var(--bp-wide);
	width: min(100%, calc(100vw - 48px));
}

.bp-inner-narrow {
	margin-inline: auto;
	max-width: var(--bp-content);
	width: min(100%, calc(100vw - 48px));
}

.bp-stack > * {
	margin-block-start: 0;
}

.bp-stack > * + * {
	margin-block-start: var(--wp--preset--spacing--50);
}

.bp-stack--tight > * + * {
	margin-block-start: var(--wp--preset--spacing--30);
}

.bp-template-main > .wp-block-post-content > :first-child,
.bp-front-main > .wp-block-post-content > :first-child,
.wp-site-blocks main > .wp-block-post-content > :first-child {
	margin-block-start: 0;
	padding-top: clamp(3.5rem, 7vw, 6rem);
}

.bp-template-main > .wp-block-post-content > :first-child:is(.wp-block-cover, .alignfull),
.bp-front-main > .wp-block-post-content > :first-child:is(.wp-block-cover, .alignfull),
.wp-site-blocks main > .wp-block-post-content > :first-child:is(.wp-block-cover, .alignfull) {
	padding-top: clamp(4.5rem, 8vw, 7rem);
}

.wp-block-heading.has-xx-large-font-size,
h1.wp-block-heading {
	line-height: max(1.08, var(--wp--custom--heading-line-height, 1.08)) !important;
	overflow: visible;
}

body .is-layout-constrained > .alignwide,
body .wp-block-group.alignwide,
body .wp-block-columns.alignwide {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--bp-wide);
	width: 100%;
}

body .is-layout-constrained > .alignfull,
body .wp-block-group.alignfull,
body .wp-block-cover.alignfull,
body .alignfull {
	margin-left: calc(50% - (var(--bp-viewport-width) / 2)) !important;
	margin-right: calc(50% - (var(--bp-viewport-width) / 2)) !important;
	max-width: var(--bp-viewport-width);
	width: var(--bp-viewport-width);
}

.bp-front-main > .bp-hero-html,
.bp-front-main > .alignfull {
	margin-left: calc(50% - (var(--bp-viewport-width) / 2)) !important;
	margin-right: calc(50% - (var(--bp-viewport-width) / 2)) !important;
	width: var(--bp-viewport-width) !important;
}

.wp-block-button__link,
.wp-element-button,
.bp-video-play,
.bp-hero-html__actions a {
	border-color: currentColor;
	position: relative;
	transition: transform 180ms var(--ks-ease), box-shadow 180ms var(--ks-ease), background 180ms var(--ks-ease), color 180ms var(--ks-ease), border-color 180ms var(--ks-ease);
}

.wp-block-button__link:hover,
.wp-element-button:hover,
.bp-video-play:hover,
.bp-hero-html__actions a:hover {
	background: var(--wp--preset--color--accent);
	box-shadow: 0 16px 34px color-mix(in srgb, var(--wp--preset--color--accent) 32%, transparent);
	color: var(--wp--preset--color--paper);
	transform: translateY(-4px);
}

.wp-block-button__link:active,
.wp-element-button:active,
.bp-video-play:active,
.bp-hero-html__actions a:active {
	transform: translateY(-1px);
}

.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline > .wp-block-button__link:hover,
.wp-block-button[class*="is-style-outline"] > .wp-block-button__link:hover {
	background: var(--wp--preset--color--ink);
	border-color: var(--wp--preset--color--ink);
	box-shadow: 0 14px 30px color-mix(in srgb, var(--wp--preset--color--ink) 22%, transparent);
	color: var(--wp--preset--color--paper);
}

.ks-site-header {
	backdrop-filter: blur(16px);
	border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 8%, transparent);
	position: sticky;
	top: 0;
	z-index: 20;
}

.bp-header {
	--bp-header-surface: color-mix(in srgb, var(--wp--preset--color--paper) 86%, transparent);
	--bp-header-border: color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	color: var(--wp--preset--color--ink);
}

.bp-header > .wp-block-group,
.bp-header .alignwide {
	min-width: 0;
}

.ks-site-header .wp-block-site-logo img {
	border-radius: 6px;
	display: block;
}

.admin-bar .ks-site-header {
	top: 32px;
}

.bp-header-brand {
	align-items: center;
	display: flex;
	gap: .8rem;
	min-width: 0;
}

.bp-header-brand .wp-block-group {
	min-width: 0;
}

.bp-header-brand .wp-block-site-title,
.bp-header-brand .wp-block-site-title a {
	white-space: nowrap;
}

.bp-header-cta .wp-block-button__link {
	white-space: nowrap;
}

.bp-header-topbar {
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--paper);
	font-size: .86rem;
	padding-block: .55rem;
}

.bp-header-topbar a,
.bp-header-topbar p {
	color: color-mix(in srgb, var(--wp--preset--color--paper) 82%, transparent);
}

.bp-header-topbar p {
	margin: 0;
}

.bp-header--split .wp-block-navigation {
	justify-content: center;
}

.bp-header--centered {
	text-align: center;
}

.bp-header--centered .wp-block-site-logo {
	margin-inline: auto;
}

.bp-header--centered .wp-block-navigation {
	justify-content: center;
}

.bp-header--hero {
	background: color-mix(in srgb, var(--wp--preset--color--ink) 18%, transparent) !important;
	border-bottom-color: color-mix(in srgb, var(--wp--preset--color--paper) 22%, transparent);
	color: var(--wp--preset--color--paper);
	margin-bottom: calc(var(--wp--preset--spacing--80) * -1);
}

.bp-header--hero .wp-block-site-title a,
.bp-header--hero .wp-block-site-tagline,
.bp-header--hero .wp-block-navigation a,
.bp-header--hero .wp-block-navigation .wp-block-navigation-item__content {
	color: var(--wp--preset--color--paper);
}

.bp-header--hero .bp-header-cta .wp-block-button__link {
	background: var(--wp--preset--color--paper);
	color: var(--wp--preset--color--ink);
}

.bp-header--static {
	position: relative;
	top: auto;
}

.ks-section-grid {
	background-image:
		linear-gradient(to right, color-mix(in srgb, currentColor 8%, transparent) 1px, transparent 1px),
		linear-gradient(to bottom, color-mix(in srgb, currentColor 8%, transparent) 1px, transparent 1px);
	background-size: 42px 42px;
}

.ks-hero-mark {
	position: relative;
}

.ks-hero-mark::after {
	background: linear-gradient(90deg, var(--wp--preset--color--accent), var(--wp--preset--color--mint));
	bottom: .08em;
	content: "";
	height: .18em;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: -1;
}

.is-style-ks-soft-card,
.is-style-ks-hover-card,
.is-style-bp-card,
.is-style-bp-card-flat,
.bp-card {
	background: color-mix(in srgb, var(--wp--preset--color--paper) 86%, white);
	border: var(--bp-card-border);
	border-radius: var(--bp-card-radius);
	box-shadow: var(--bp-card-shadow);
	min-width: 0;
}

.is-style-ks-soft-card > *,
.is-style-ks-hover-card > *,
.is-style-bp-card > *,
.is-style-bp-card-flat > *,
.bp-card > *,
.bp-panel-dark > *,
.bp-step > * {
	margin-block-start: 0;
}

.is-style-ks-soft-card > * + *,
.is-style-ks-hover-card > * + *,
.is-style-bp-card > * + *,
.is-style-bp-card-flat > * + *,
.bp-card > * + *,
.bp-panel-dark > * + *,
.bp-step > * + * {
	margin-block-start: 1rem;
}

.is-style-ks-soft-card,
.is-style-bp-card,
.is-style-bp-card-flat,
.bp-card {
	padding: clamp(1.25rem, 3vw, 2rem);
}

.is-style-bp-card-flat {
	box-shadow: none;
}

.is-style-ks-hover-card {
	padding: var(--wp--preset--spacing--50);
	transition: transform 220ms var(--ks-ease), box-shadow 220ms var(--ks-ease), border-color 220ms var(--ks-ease);
}

.is-style-ks-hover-card:hover {
	border-color: color-mix(in srgb, var(--wp--preset--color--accent) 52%, transparent);
	box-shadow: 0 24px 55px color-mix(in srgb, var(--wp--preset--color--ink) 13%, transparent);
	transform: translateY(-4px);
}

.is-style-ks-gradient-border {
	background:
		linear-gradient(var(--wp--preset--color--paper), var(--wp--preset--color--paper)) padding-box,
		linear-gradient(135deg, var(--wp--preset--color--accent), var(--wp--preset--color--mint), var(--wp--preset--color--sun)) border-box;
	border: 1px solid transparent;
	border-radius: 8px;
	padding: var(--wp--preset--spacing--50);
}

.is-style-ks-kicker {
	letter-spacing: .08em;
	text-transform: uppercase;
}

.is-style-ks-media-frame img {
	aspect-ratio: 4 / 3;
	border-radius: 8px;
	box-shadow: 16px 16px 0 var(--wp--preset--color--accent-soft);
	object-fit: cover;
}

.is-style-ks-logo-row img {
	filter: grayscale(1);
	opacity: .72;
	transition: filter 180ms var(--ks-ease), opacity 180ms var(--ks-ease);
}

.is-style-ks-logo-row img:hover {
	filter: grayscale(0);
	opacity: 1;
}

.ks-page-title-band {
	background:
		linear-gradient(120deg, color-mix(in srgb, var(--wp--preset--color--accent) 16%, transparent), transparent 46%),
		var(--wp--preset--color--paper-alt);
}

.bp-front-main > .wp-block-group.alignfull,
.bp-front-main > section.alignfull {
	padding-top: var(--bp-section-y) !important;
	padding-bottom: var(--bp-section-y) !important;
}

.bp-front-main > .bp-hero-html {
	padding-top: clamp(5rem, 9vw, 8rem) !important;
	padding-bottom: clamp(5rem, 9vw, 8rem) !important;
}

.wp-block-columns.alignwide {
	gap: clamp(1.25rem, 3vw, 2rem);
}

.wp-block-column > .is-style-ks-hover-card,
.wp-block-column > .is-style-ks-soft-card {
	height: 100%;
}

.bp-template-main {
	padding-bottom: var(--bp-section-y);
}

.bp-template-main > * {
	margin-block-start: 0;
}

.bp-template-hero {
	background:
		linear-gradient(120deg, color-mix(in srgb, var(--wp--preset--color--accent) 12%, transparent), transparent 48%),
		var(--wp--preset--color--paper-alt);
	margin-inline: auto;
	max-width: var(--bp-wide);
	padding: clamp(3rem, 7vw, 5.5rem) clamp(1.25rem, 4vw, 3rem);
}

.bp-template-hero h1,
.bp-template-hero .wp-block-query-title,
.bp-template-hero .wp-block-post-title {
	font-size: clamp(2.25rem, 5vw, 4.5rem);
	line-height: 1.02;
	margin: 0;
	max-width: 820px;
}

.bp-template-intro,
.bp-template-hero .wp-block-term-description,
.bp-template-hero .wp-block-term-description p {
	color: var(--wp--preset--color--muted);
	font-size: clamp(1rem, 1.6vw, 1.18rem);
	line-height: 1.65;
	margin-top: 1rem;
	max-width: 680px;
}

.bp-template-query,
.bp-template-content,
.bp-single-image,
.bp-post-navigation {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--bp-wide);
	width: 100%;
}

.bp-template-query,
.bp-template-content,
.bp-single-image {
	margin-top: clamp(2rem, 5vw, 4rem);
}

.bp-template-content {
	max-width: var(--bp-content);
}

.bp-template-content > * + * {
	margin-block-start: 1.25rem;
}

.bp-post-grid {
	gap: clamp(1rem, 3vw, 1.75rem) !important;
}

.bp-post-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
}

.bp-post-card__image,
.bp-post-card__image img {
	border-radius: 8px;
	display: block;
	overflow: hidden;
}

.bp-post-card .wp-block-post-title {
	line-height: 1.12;
	margin-top: 1.1rem;
}

.bp-post-card .wp-block-post-title a {
	text-decoration: none;
}

.bp-post-card .wp-block-post-excerpt,
.bp-post-card .wp-block-post-excerpt__excerpt {
	color: var(--wp--preset--color--muted);
	line-height: 1.55;
}

.bp-post-card__meta,
.bp-post-meta {
	color: var(--wp--preset--color--muted);
	font-size: .9rem;
}

.bp-pagination,
.bp-post-navigation {
	border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	margin-top: clamp(2rem, 5vw, 4rem);
	padding-top: var(--wp--preset--spacing--40);
}

.bp-single-hero {
	padding-bottom: clamp(2rem, 5vw, 3.5rem);
}

.bp-single-image {
	border-radius: 8px;
	display: block;
	overflow: hidden;
}

.bp-single-image img {
	border-radius: 8px;
	display: block;
	width: 100%;
}

.bp-template-404 .bp-template-hero {
	text-align: center;
}

.bp-template-404 .bp-template-hero > * {
	margin-left: auto;
	margin-right: auto;
}

.bp-template-blank {
	padding-top: var(--bp-section-y);
}

.ks-gallery-grid {
	display: grid;
	gap: .9rem;
	grid-template-columns: 1.2fr .8fr .8fr;
}

.ks-gallery-grid figure,
.ks-gallery-grid img {
	height: 100%;
}

.ks-gallery-grid figure:first-child {
	grid-row: span 2;
}

.ks-gallery-grid img {
	aspect-ratio: 1 / 1;
	border-radius: 8px;
	object-fit: cover;
	width: 100%;
}

.ks-gallery-grid figure:first-child img {
	aspect-ratio: 4 / 5;
}

.bp-lightbox-gallery {
	--bp-gallery-radius: 8px;
}

.bp-lightbox-gallery .wp-block-image {
	margin: 0;
	overflow: hidden;
}

.bp-lightbox-gallery .wp-block-image img {
	aspect-ratio: 4 / 3;
	border-radius: var(--bp-gallery-radius);
	cursor: zoom-in;
	display: block;
	height: 100%;
	object-fit: cover;
	transition: filter 180ms var(--ks-ease), transform 220ms var(--ks-ease);
	width: 100%;
}

.bp-lightbox-gallery .wp-block-image img:hover,
.bp-lightbox-gallery .wp-block-image img:focus-visible {
	filter: saturate(1.08) contrast(1.04);
	transform: scale(1.025);
}

.bp-lightbox-gallery .wp-block-image img:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 4px;
}

.bp-lightbox-grid,
.bp-lightbox-masonry {
	display: grid;
	gap: var(--wp--preset--spacing--40);
}

.bp-lightbox-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bp-lightbox-masonry {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.bp-lightbox-masonry .wp-block-image:nth-child(1),
.bp-lightbox-masonry .wp-block-image:nth-child(6) {
	grid-column: span 2;
	grid-row: span 2;
}

.bp-lightbox-masonry .wp-block-image:nth-child(1) img,
.bp-lightbox-masonry .wp-block-image:nth-child(6) img {
	aspect-ratio: 1 / 1;
}

.bp-gallery-carousel {
	position: relative;
}

.bp-gallery-carousel__track {
	display: grid;
	gap: var(--wp--preset--spacing--40);
	grid-auto-columns: minmax(260px, 36%);
	grid-auto-flow: column;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	padding-bottom: .4rem;
	scroll-padding-inline: 24px;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.bp-gallery-carousel__track::-webkit-scrollbar {
	display: none;
}

.bp-gallery-carousel__track .wp-block-image {
	scroll-snap-align: start;
}

.bp-gallery-carousel .wp-block-image img {
	aspect-ratio: 5 / 4;
}

.bp-gallery-carousel__controls {
	display: flex;
	gap: .65rem;
	justify-content: flex-end;
	margin-top: var(--wp--preset--spacing--40);
}

.bp-gallery-carousel__button {
	align-items: center;
	background: var(--wp--preset--color--paper);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 12%, transparent);
	border-radius: 6px;
	color: var(--wp--preset--color--ink);
	cursor: pointer;
	display: inline-flex;
	font: inherit;
	font-weight: 850;
	justify-content: center;
	line-height: 1;
	transition: background 180ms var(--ks-ease), color 180ms var(--ks-ease), transform 180ms var(--ks-ease);
}

.bp-gallery-carousel__button {
	aspect-ratio: 1;
	width: 44px;
}

.bp-gallery-carousel__button:hover {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--paper);
	transform: translateY(-3px);
}

.bp-content-slider {
	position: relative;
}

.bp-content-slide {
	background: var(--wp--preset--color--paper);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	border-radius: 8px;
	box-shadow: 0 18px 42px color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	display: grid;
	overflow: hidden;
}

.bp-content-slider.is-enhanced .bp-content-slide {
	display: none;
}

.bp-content-slider.is-enhanced .bp-content-slide.is-active {
	display: grid;
}

.bp-content-slide[hidden] {
	display: none !important;
}

.bp-content-slide__inner {
	align-items: stretch;
	display: grid;
	grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
}

.bp-content-slide__media,
.bp-content-slide__media figure {
	margin: 0 !important;
	min-height: 100%;
}

.bp-content-slide__media img {
	aspect-ratio: 4 / 3;
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.bp-content-slide__copy {
	align-self: center;
	padding: clamp(1.5rem, 4vw, 3rem);
}

.bp-content-slide__copy > * {
	margin-block-start: 0;
}

.bp-content-slide__copy > * + * {
	margin-block-start: 1rem;
}

.bp-content-slider__controls {
	align-items: center;
	display: flex;
	gap: .8rem;
	justify-content: center;
	margin-top: var(--wp--preset--spacing--40);
}

.bp-content-slider__button,
.bp-content-slider__dot {
	align-items: center;
	background: var(--wp--preset--color--paper);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 14%, transparent);
	border-radius: 6px;
	color: var(--wp--preset--color--ink);
	cursor: pointer;
	display: inline-flex;
	font: inherit;
	font-weight: 850;
	justify-content: center;
	line-height: 1;
	transition: background 180ms var(--ks-ease), color 180ms var(--ks-ease), transform 180ms var(--ks-ease);
}

.bp-content-slider__button {
	aspect-ratio: 1;
	width: 44px;
}

.bp-content-slider__button:hover {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--paper);
	transform: translateY(-3px);
}

.bp-content-slider__dots {
	display: flex;
	gap: .45rem;
}

.bp-content-slider__dot {
	aspect-ratio: 1;
	background: color-mix(in srgb, var(--wp--preset--color--ink) 18%, transparent);
	border: 0;
	min-height: 0;
	padding: 0;
	width: 10px;
}

.bp-content-slider__dot.is-active {
	background: var(--wp--preset--color--accent);
	transform: scale(1.25);
}

.wp-block-accordion {
	border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 12%, transparent);
}

.wp-block-accordion-item {
	border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 12%, transparent);
}

.wp-block-accordion-heading {
	margin: 0;
}

.wp-block-accordion-heading__toggle {
	align-items: center;
	background: transparent;
	border: 0;
	color: var(--wp--preset--color--ink);
	cursor: pointer;
	display: flex;
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(1.1rem, 2vw, 1.45rem);
	font-weight: 850;
	gap: 1rem;
	justify-content: space-between;
	line-height: 1.2;
	padding: 1.25rem 0;
	text-align: left;
	width: 100%;
}

.wp-block-accordion-heading__toggle-icon {
	align-items: center;
	background: var(--wp--preset--color--accent-soft);
	border-radius: 6px;
	display: inline-flex;
	flex: 0 0 auto;
	height: 34px;
	justify-content: center;
	transition: background 180ms var(--ks-ease), transform 180ms var(--ks-ease);
	width: 34px;
}

.wp-block-accordion-heading__toggle[aria-expanded="true"] .wp-block-accordion-heading__toggle-icon {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--paper);
	transform: rotate(45deg);
}

.wp-block-accordion-panel {
	color: var(--wp--preset--color--muted);
	padding: 0 0 1.35rem;
}

.wp-block-accordion-panel > * {
	margin-block-start: 0;
}

.wp-block-accordion-panel > * + * {
	margin-block-start: .85rem;
}
.bp-tabs {
	background: var(--wp--preset--color--paper);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	border-radius: 8px;
	box-shadow: 0 18px 42px color-mix(in srgb, var(--wp--preset--color--ink) 9%, transparent);
	padding: clamp(1rem, 3vw, 1.5rem);
}

.bp-tabs__list {
	background: var(--wp--preset--color--paper-alt);
	border-radius: 8px;
	display: flex;
	flex-wrap: wrap;
	gap: .4rem;
	margin-bottom: var(--wp--preset--spacing--50);
	padding: .35rem;
}

.bp-tabs__tab {
	background: transparent;
	border: 0;
	border-radius: 6px;
	color: var(--wp--preset--color--muted);
	cursor: pointer;
	flex: 1 1 160px;
	font: inherit;
	font-weight: 800;
	padding: .85rem 1rem;
	transition: background 180ms var(--ks-ease), color 180ms var(--ks-ease), transform 180ms var(--ks-ease);
}

.bp-tabs__tab:hover {
	color: var(--wp--preset--color--ink);
	transform: translateY(-2px);
}

.bp-tabs__tab[aria-selected="true"] {
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--paper);
}

.bp-tab-panel {
	display: block;
}

.bp-tabs.is-enhanced .bp-tab-panel {
	display: none;
}

.bp-tabs.is-enhanced .bp-tab-panel.is-active {
	display: block;
}

.bp-tab-panel[hidden] {
	display: none !important;
}

.bp-tab-panel > * {
	margin-block-start: 0;
}

.bp-tab-panel > * + * {
	margin-block-start: 1rem;
}

.bp-visually-hidden {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.editor-styles-wrapper .bp-content-slide,
.editor-styles-wrapper .bp-tab-panel {
	display: block !important;
}

.editor-styles-wrapper .bp-content-slide + .bp-content-slide,
.editor-styles-wrapper .bp-tab-panel + .bp-tab-panel {
	margin-top: var(--wp--preset--spacing--40);
}

.editor-styles-wrapper .bp-content-slide__inner {
	grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
}

.editor-styles-wrapper .bp-tab-title {
	clip: auto;
	clip-path: none;
	height: auto;
	overflow: visible;
	position: static;
	white-space: normal;
	width: auto;
}

/* Editor parity layer.
 * Keep the editing canvas close to the frontend without relying on viewport
 * tricks that make blocks spill out of the Gutenberg editor. Project skins may
 * add brand-specific rules, but these defaults stay reusable.
 */
.editor-styles-wrapper {
	--bp-viewport-width: 100%;
	--bp-wide: min(1180px, calc(100% - 48px));
	--bp-content: min(760px, calc(100% - 48px));
	--bp-section-y: clamp(3rem, 6vw, 5.5rem);
	--bp-section-y-compact: clamp(2rem, 4vw, 3.5rem);
	background: var(--wp--preset--color--paper);
	color: var(--wp--preset--color--ink);
}

.editor-styles-wrapper .is-root-container {
	overflow-x: clip;
	padding-inline: 0;
}

.editor-styles-wrapper .is-root-container > *,
.editor-styles-wrapper .block-editor-block-list__layout > * {
	box-sizing: border-box;
}

.editor-styles-wrapper .is-root-container > .alignwide,
.editor-styles-wrapper .is-root-container > .bp-inner-wide,
.editor-styles-wrapper .is-root-container > .bp-section,
.editor-styles-wrapper .is-root-container > .is-style-bp-section,
.editor-styles-wrapper .is-root-container > .is-style-bp-section-alt,
.editor-styles-wrapper .is-root-container > .is-style-bp-section-dark {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--bp-wide) !important;
	width: min(100%, var(--bp-wide)) !important;
}

.editor-styles-wrapper .is-root-container > .alignfull,
.editor-styles-wrapper .is-root-container > .wp-block-cover.alignfull,
.editor-styles-wrapper .is-root-container > .wp-block-group.alignfull {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 100% !important;
	width: 100% !important;
}

.editor-styles-wrapper .bp-front-main > .alignfull,
.editor-styles-wrapper .bp-front-main > .bp-hero-html {
	margin-left: auto !important;
	margin-right: auto !important;
	width: 100% !important;
}

.editor-styles-wrapper .bp-section,
.editor-styles-wrapper .is-style-bp-section,
.editor-styles-wrapper .is-style-bp-section-alt,
.editor-styles-wrapper .is-style-bp-section-dark {
	padding-block: var(--bp-section-y);
}

.editor-styles-wrapper .bp-section--compact {
	padding-block: var(--bp-section-y-compact);
}

.editor-styles-wrapper .bp-inner,
.editor-styles-wrapper .bp-inner-wide,
.editor-styles-wrapper .bp-inner-narrow {
	margin-left: auto !important;
	margin-right: auto !important;
}

.editor-styles-wrapper .bp-inner,
.editor-styles-wrapper .bp-inner-wide {
	max-width: var(--bp-wide);
	width: min(100%, var(--bp-wide));
}

.editor-styles-wrapper .bp-inner-narrow {
	max-width: var(--bp-content);
	width: min(100%, var(--bp-content));
}

.editor-styles-wrapper .wp-block-cover,
.editor-styles-wrapper .wp-block-group,
.editor-styles-wrapper .wp-block-columns {
	min-width: 0;
}

.editor-styles-wrapper .bp-content-slider {
	display: grid;
	gap: var(--wp--preset--spacing--40);
}

.editor-styles-wrapper .bp-content-slide {
	border-style: dashed;
	position: relative;
}

.editor-styles-wrapper .bp-content-slide::before,
.editor-styles-wrapper .bp-tab-panel::before {
	background: color-mix(in srgb, var(--wp--preset--color--ink) 8%, transparent);
	border-radius: 999px;
	color: var(--wp--preset--color--muted);
	content: "Editor: alle Inhalte sichtbar";
	display: inline-flex;
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .04em;
	margin: 0 0 var(--wp--preset--spacing--30);
	padding: .28rem .6rem;
	text-transform: uppercase;
}

.editor-styles-wrapper .bp-content-slider__controls,
.editor-styles-wrapper .ks-slider-controls,
.editor-styles-wrapper .bp-gallery-carousel__controls {
	display: none !important;
}

.editor-styles-wrapper .bp-tab-panel,
.editor-styles-wrapper .bp-tab-panel[hidden],
.editor-styles-wrapper .bp-content-slide[hidden] {
	display: block !important;
}

.ks-slider.alignwide,
.entry-content .ks-slider {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: var(--wp--style--global--wide-size, 1280px);
	width: min(100%, var(--wp--style--global--wide-size, 1280px));
}

.ks-slider-track {
	position: relative;
}

.ks-slider-static .ks-slider-track {
	display: grid;
	gap: var(--wp--preset--spacing--40);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ks-slide {
	background: var(--wp--preset--color--paper);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	border-radius: 8px;
	box-shadow: 0 14px 34px color-mix(in srgb, var(--wp--preset--color--ink) 8%, transparent);
	display: block;
	margin: 0 !important;
	overflow: hidden;
}

.ks-slider.is-enhanced:not(.ks-slider-static) .ks-slide {
	display: none !important;
}

.ks-slider.is-enhanced:not(.ks-slider-static) .ks-slide.is-active {
	display: block !important;
}

.ks-slider-static .ks-slide {
	display: block !important;
}

.editor-styles-wrapper .ks-slider:not(.ks-slider-static) .ks-slider-track {
	display: grid;
	gap: var(--wp--preset--spacing--40);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.editor-styles-wrapper .ks-slider:not(.ks-slider-static) .ks-slide {
	display: block !important;
}

.ks-slide[hidden] {
	display: none !important;
}

.ks-slide img {
	aspect-ratio: 16 / 7;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.ks-slide figcaption {
	color: var(--wp--preset--color--muted);
	font-size: 1rem;
	padding: 1.2rem 1.4rem;
}

.ks-slide figcaption strong {
	color: var(--wp--preset--color--ink);
	display: block;
	font-size: 1.15rem;
	margin-bottom: .25rem;
}

.ks-slider-controls {
	align-items: center !important;
	display: flex !important;
	flex-direction: row !important;
	gap: .75rem;
	justify-content: center !important;
	margin-top: 1rem;
}

.ks-slider-button {
	align-items: center !important;
	aspect-ratio: 1;
	background: var(--wp--preset--color--ink) !important;
	border: 0 !important;
	border-radius: 6px !important;
	color: var(--wp--preset--color--paper) !important;
	cursor: pointer;
	display: inline-flex !important;
	font: inherit;
	font-weight: 850;
	justify-content: center !important;
	line-height: 1 !important;
	min-height: 0 !important;
	padding: 0 !important;
	transition: transform 180ms var(--ks-ease), background 180ms var(--ks-ease);
	width: 42px !important;
}

.ks-slider-button:hover {
	background: var(--wp--preset--color--accent) !important;
	transform: translateY(-3px);
}

.ks-slider-dots {
	align-items: center !important;
	display: flex !important;
	gap: .45rem;
}

.ks-slider-dot {
	aspect-ratio: 1;
	background: color-mix(in srgb, var(--wp--preset--color--ink) 20%, transparent);
	border: 0 !important;
	border-radius: 999px;
	cursor: pointer;
	min-height: 0 !important;
	padding: 0 !important;
	width: 9px !important;
}

.ks-slider-dot.is-active {
	background: var(--wp--preset--color--accent);
	transform: scale(1.25);
}

.ks-text-layout {
	display: grid;
	gap: clamp(2rem, 5vw, 4rem);
	grid-template-columns: .55fr 1fr;
}

.ks-article-copy {
	background: var(--wp--preset--color--paper);
	padding: clamp(1.5rem, 4vw, 2.5rem);
}

.ks-article-copy p + p {
	margin-top: 1rem;
}

.ks-article-copy blockquote {
	font-size: clamp(1.3rem, 2.4vw, 2rem);
	margin-top: 1.5rem;
}

.ks-text-simple {
	margin-inline: auto;
	max-width: var(--wp--style--global--content-size);
	text-align: left;
}

.ks-text-simple p {
	color: var(--wp--preset--color--muted);
	font-size: 1.08rem;
	margin-top: 1rem;
}

.ks-cover-hero {
	background-position: center;
	background-size: cover;
	min-height: clamp(560px, 78vh, 820px);
}

.bp-hero-html {
	box-sizing: border-box;
	color: var(--wp--preset--color--paper);
	display: flex;
	min-height: clamp(620px, 82vh, 860px);
	padding: clamp(5rem, 9vw, 8rem) 24px;
}

.bp-hero-html__inner {
	margin-inline: auto;
	max-width: var(--wp--style--global--wide-size);
	width: 100%;
}

.bp-hero-html__inner > * {
	max-width: 820px;
}

.bp-hero-html__kicker {
	color: var(--wp--preset--color--sun);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.bp-hero-html h1 {
	color: var(--wp--preset--color--paper);
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(3.4rem, 7.4vw, 6.8rem);
	font-weight: 850;
	line-height: 1.03;
	margin: var(--wp--preset--spacing--40) 0 0;
}

.bp-hero-html__lead {
	color: #f6f2e6cc;
	font-size: var(--wp--preset--font-size--large);
	margin-top: var(--wp--preset--spacing--50);
}

.bp-hero-html__actions {
	display: flex;
	flex-wrap: wrap;
	gap: .6rem;
	margin-top: var(--wp--preset--spacing--50);
}

.bp-hero-html__actions a {
	background: var(--wp--preset--color--paper);
	border-radius: 6px;
	color: var(--wp--preset--color--ink);
	font-weight: 800;
	padding: .8rem 1rem;
	text-decoration: none;
}

.bp-hero-html__actions a + a,
.bp-hero-html__actions .wp-block-button + .wp-block-button a {
	background: color-mix(in srgb, var(--wp--preset--color--paper) 20%, transparent);
	color: var(--wp--preset--color--paper);
}

.ks-cover-hero .wp-block-cover__background {
	background:
		linear-gradient(90deg, color-mix(in srgb, var(--wp--preset--color--ink) 82%, transparent), color-mix(in srgb, var(--wp--preset--color--ink) 42%, transparent) 52%, transparent),
		var(--wp--preset--color--ink) !important;
}

.bp-section-head {
	align-items: start;
	display: grid;
	gap: var(--wp--preset--spacing--50);
	grid-template-columns: minmax(0, .85fr) minmax(280px, .65fr);
	margin-bottom: clamp(2rem, 5vw, 4rem);
}

.bp-section-head p:not(.is-style-ks-kicker) {
	color: var(--wp--preset--color--muted);
	font-size: 1.06rem;
}

.bp-problem-grid,
.bp-gallery-template-grid,
.bp-video-template-grid,
.bp-longform,
.bp-slider-window {
	display: grid;
	gap: var(--wp--preset--spacing--50);
}

.bp-problem-grid {
	grid-template-columns: 1.1fr .9fr;
}

.bp-gallery-template-grid,
.bp-video-template-grid {
	align-items: start;
	grid-template-columns: minmax(0, .85fr) minmax(0, 1.35fr);
}

.bp-panel-dark {
	background: var(--wp--preset--color--ink);
	border-radius: 8px;
	color: var(--wp--preset--color--paper);
	padding: clamp(1.5rem, 3vw, 2.25rem);
}

.bp-panel-dark p,
.bp-panel-dark li {
	color: color-mix(in srgb, var(--wp--preset--color--paper) 74%, transparent);
}

.bp-list-ruled {
	list-style: none;
	margin: var(--wp--preset--spacing--50) 0 0;
	padding: 0;
}

.bp-list-ruled li {
	border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--paper) 18%, transparent);
	padding-block: .85rem;
}

.bp-list-ruled li:first-child {
	border-top: 0;
}

.bp-workflow-grid {
	display: grid;
	gap: var(--wp--preset--spacing--40);
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.bp-card-grid {
	display: grid;
	gap: var(--wp--preset--spacing--50);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bp-equal-grid,
.bp-grid-2,
.bp-grid-3,
.bp-grid-4,
.bp-icon-grid,
.bp-pricing-grid,
.bp-team-grid,
.bp-shop-grid,
.bp-comparison-grid,
.bp-stat-grid,
.bp-card-library {
	display: grid;
	gap: var(--wp--preset--spacing--50);
}

.bp-equal-grid > *,
.bp-grid-2 > *,
.bp-grid-3 > *,
.bp-grid-4 > *,
.bp-icon-grid > *,
.bp-pricing-grid > *,
.bp-team-grid > *,
.bp-shop-grid > *,
.bp-comparison-grid > *,
.bp-stat-grid > *,
.bp-card-library > *,
.bp-card-grid > * {
	height: 100%;
	margin-block-start: 0 !important;
}

.bp-equal-grid > * {
	min-width: 0;
}

.bp-grid-2,
.bp-comparison-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bp-grid-3,
.bp-icon-grid,
.bp-pricing-grid,
.bp-team-grid,
.bp-shop-grid,
.bp-stat-grid,
.bp-card-library {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bp-grid-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.bp-feature-card,
.bp-price-card,
.bp-team-card,
.bp-product-card,
.bp-comparison-card,
.bp-contact-card,
.bp-timeline-item {
	background: var(--wp--preset--color--paper);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	border-radius: 8px;
	box-shadow: 0 14px 34px color-mix(in srgb, var(--wp--preset--color--ink) 8%, transparent);
	min-width: 0;
	padding: var(--wp--preset--spacing--50);
}

.bp-feature-card > *,
.bp-price-card > *,
.bp-team-card > *,
.bp-product-card > *,
.bp-comparison-card > *,
.bp-contact-card > *,
.bp-timeline-item > * {
	margin-block-start: 0;
}

.bp-feature-card > * + *,
.bp-price-card > * + *,
.bp-team-card > * + *,
.bp-product-card > * + *,
.bp-comparison-card > * + *,
.bp-contact-card > * + *,
.bp-timeline-item > * + * {
	margin-block-start: .85rem;
}

.bp-icon-mark,
.bp-stat-number {
	color: var(--wp--preset--color--accent);
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 850;
	line-height: 1;
}

.bp-icon-mark {
	font-size: 2rem;
}

.bp-stat-number {
	font-size: clamp(2.4rem, 5vw, 4rem);
}

.bp-product-card,
.bp-team-card {
	padding: 0;
	overflow: hidden;
}

.bp-product-card > :not(figure),
.bp-team-card > :not(figure) {
	margin-left: var(--wp--preset--spacing--50);
	margin-right: var(--wp--preset--spacing--50);
}

.bp-product-card > :last-child,
.bp-team-card > :last-child {
	margin-bottom: var(--wp--preset--spacing--50);
}

.bp-product-card img,
.bp-team-card img,
.bp-before-after img {
	aspect-ratio: 4 / 3;
	display: block;
	object-fit: cover;
	width: 100%;
}

.bp-timeline {
	border-left: 3px solid var(--wp--preset--color--accent-soft);
	display: grid;
	gap: var(--wp--preset--spacing--50);
	padding-left: var(--wp--preset--spacing--50);
}

.bp-timeline-item {
	position: relative;
}

.bp-timeline-item::before {
	background: var(--wp--preset--color--accent);
	border: 4px solid var(--wp--preset--color--paper);
	border-radius: 999px;
	content: "";
	height: 20px;
	left: calc((var(--wp--preset--spacing--50) + 11px) * -1);
	position: absolute;
	top: var(--wp--preset--spacing--50);
	width: 20px;
}

.bp-before-after {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	overflow: hidden;
}

.bp-before-after figure {
	margin: 0 !important;
	position: relative;
}

.bp-before-after figcaption {
	background: color-mix(in srgb, var(--wp--preset--color--ink) 82%, transparent);
	border-radius: 6px;
	color: var(--wp--preset--color--paper);
	font-weight: 800;
	left: 1rem;
	padding: .45rem .65rem;
	position: absolute;
	top: 1rem;
}

.bp-step {
	background: color-mix(in srgb, var(--wp--preset--color--paper) 76%, white);
	border-left: 3px solid var(--wp--preset--color--accent);
	border-radius: 0 8px 8px 0;
	padding: clamp(1rem, 2vw, 1.35rem);
}

.bp-step strong {
	display: block;
	font-family: var(--wp--preset--font-family--heading);
	line-height: 1.12;
}

.bp-step span {
	color: var(--wp--preset--color--muted);
	display: block;
	font-size: .9rem;
	margin-top: .6rem;
}

.bp-gallery-mosaic {
	display: grid;
	gap: .85rem;
	grid-template-columns: minmax(130px, 1.2fr) minmax(90px, .8fr) minmax(90px, .8fr);
}

.bp-gallery-mosaic figure,
.bp-gallery-strip figure {
	margin: 0 !important;
}

.bp-gallery-mosaic figure:first-child {
	grid-row: span 2;
}

.bp-gallery-mosaic img,
.bp-gallery-strip img {
	border-radius: 8px;
	height: 100%;
	object-fit: cover;
	transition: filter 180ms var(--ks-ease), transform 180ms var(--ks-ease);
	width: 100%;
}

.bp-gallery-mosaic figure:hover img,
.bp-gallery-strip figure:hover img {
	filter: saturate(1.08) contrast(1.04);
	transform: scale(1.025);
}

.bp-gallery-mosaic img {
	aspect-ratio: 1 / 1;
}

.bp-gallery-mosaic figure:first-child img {
	aspect-ratio: 4 / 5;
}

.bp-gallery-strip {
	display: grid;
	gap: .75rem;
	grid-auto-flow: column;
	grid-auto-columns: minmax(170px, 1fr);
	grid-template-columns: none;
	overflow-x: auto;
	padding-bottom: .35rem;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.bp-gallery-strip::-webkit-scrollbar {
	display: none;
}

.bp-gallery-strip figure {
	overflow: hidden;
	scroll-snap-align: start;
}

.bp-gallery-strip img {
	aspect-ratio: 4 / 3;
}

.bp-slider-window {
	align-items: start;
	grid-template-columns: minmax(0, 1fr) minmax(150px, .32fr);
	max-width: 100%;
	overflow: visible;
}

.bp-slider-main {
	margin: 0 !important;
	position: relative;
}

.bp-slider-main img {
	aspect-ratio: 16 / 9;
	border-radius: 8px;
	display: block;
	object-fit: cover;
	transition: opacity 180ms var(--ks-ease), transform 220ms var(--ks-ease);
	width: 100%;
}

.bp-slider-caption {
	background: color-mix(in srgb, var(--wp--preset--color--ink) 88%, transparent);
	border-radius: 0 0 8px 8px;
	bottom: 0;
	color: var(--wp--preset--color--paper);
	left: 0;
	padding: .9rem 1rem;
	position: absolute;
	right: 0;
}

.bp-slider-thumbs {
	display: grid;
	gap: .7rem;
}

.bp-slider-thumbs button {
	background: transparent;
	border: 0;
	border-radius: 8px;
	cursor: pointer;
	display: block;
	padding: 0;
	position: relative;
	transition: opacity 180ms var(--ks-ease), transform 180ms var(--ks-ease);
}

.bp-slider-thumbs button:hover {
	opacity: .86;
	transform: translateY(-3px);
}

.bp-slider-thumbs button:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 4px;
}

.bp-slider-thumbs img {
	aspect-ratio: 16 / 10;
	border: 2px solid color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	border-radius: 8px;
	display: block;
	object-fit: cover;
	transition: border-color 180ms var(--ks-ease), filter 180ms var(--ks-ease), transform 180ms var(--ks-ease);
	width: 100%;
}

.bp-slider-thumbs .wp-block-image {
	margin: 0;
}

.bp-slider-thumbs .wp-block-image:first-child img {
	border-color: var(--wp--preset--color--accent);
	filter: saturate(1.08) contrast(1.05);
}

.bp-slider-thumbs button.is-active img,
.bp-slider-thumbs button[aria-current="true"] img {
	border-color: var(--wp--preset--color--accent);
	filter: saturate(1.08) contrast(1.05);
}

.bp-video-frame {
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--accent) 34%, transparent), color-mix(in srgb, var(--wp--preset--color--mint) 34%, transparent)),
		var(--wp--preset--color--ink);
	border-radius: 8px;
	display: grid;
	background-position: center;
	background-size: cover;
	min-height: 360px;
	overflow: hidden;
	place-items: center;
	position: relative;
}

.bp-video-play {
	background: var(--wp--preset--color--paper);
	border-radius: 6px;
	color: var(--wp--preset--color--ink);
	font-weight: 800;
	padding: .85rem 1rem;
	text-decoration: none;
	z-index: 2;
}

.bp-video-frame .wp-block-cover__background {
	background: linear-gradient(135deg, color-mix(in srgb, var(--wp--preset--color--accent) 38%, transparent), color-mix(in srgb, var(--wp--preset--color--ink) 52%, transparent)) !important;
}

.bp-video-meta {
	background: color-mix(in srgb, var(--wp--preset--color--ink) 88%, transparent);
	border-radius: 0 0 8px 8px;
	bottom: 0;
	color: var(--wp--preset--color--paper);
	left: 0;
	padding: 1rem;
	position: absolute;
	right: 0;
}

.bp-site-footer {
	background: var(--wp--preset--color--ink);
	color: var(--wp--preset--color--paper);
	padding: var(--wp--preset--spacing--70) 24px var(--wp--preset--spacing--60);
}

.bp-footer {
	--bp-footer-muted: color-mix(in srgb, var(--wp--preset--color--paper) 78%, transparent);
	--bp-footer-rule: color-mix(in srgb, var(--wp--preset--color--paper) 14%, transparent);
}

.bp-footer--light {
	--bp-footer-muted: var(--wp--preset--color--muted);
	--bp-footer-rule: color-mix(in srgb, var(--wp--preset--color--ink) 12%, transparent);
	background: var(--wp--preset--color--paper-alt);
	color: var(--wp--preset--color--ink);
}

.bp-footer--light p,
.bp-footer--light li,
.bp-footer--light a,
.bp-footer--light span {
	color: var(--bp-footer-muted);
}

.bp-footer--light .bp-site-footer__brand,
.bp-footer--light nav > p,
.bp-footer--light .bp-site-footer__grid > div > p:first-child {
	color: var(--wp--preset--color--ink);
}

.bp-footer--light .bp-site-footer__bottom {
	border-top-color: var(--bp-footer-rule);
}

.bp-site-footer__inner {
	margin-inline: auto;
	max-width: var(--bp-wide);
}

.bp-site-footer__grid {
	display: grid;
	gap: clamp(2rem, 6vw, 5rem);
	grid-template-columns: minmax(0, 1.2fr) minmax(160px, .6fr) minmax(180px, .7fr);
}

.bp-footer--compact {
	padding-block: var(--wp--preset--spacing--50);
}

.bp-footer--compact .bp-site-footer__grid {
	align-items: center;
	grid-template-columns: minmax(0, 1fr) auto;
}

.bp-footer--compact .bp-site-footer__bottom {
	margin-top: var(--wp--preset--spacing--40);
	padding-top: var(--wp--preset--spacing--40);
}

.bp-footer--mega .bp-site-footer__grid {
	grid-template-columns: minmax(0, 1.25fr) repeat(3, minmax(150px, .55fr));
}

.bp-footer--centered {
	text-align: center;
}

.bp-footer--centered .bp-site-footer__grid {
	grid-template-columns: minmax(0, 1fr);
	margin-inline: auto;
	max-width: 760px;
}

.bp-footer--centered nav {
	display: flex;
	flex-wrap: wrap;
	gap: .55rem 1rem;
	justify-content: center;
}

.bp-footer--centered nav > p {
	flex-basis: 100%;
}

.bp-footer--centered nav a + a {
	margin-top: 0;
}

.bp-footer-cta {
	align-items: center;
	border-bottom: 1px solid var(--bp-footer-rule);
	display: grid;
	gap: var(--wp--preset--spacing--50);
	grid-template-columns: minmax(0, 1fr) auto;
	margin-bottom: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--60);
}

.bp-footer-cta h2,
.bp-footer-cta p {
	margin: 0;
}

.bp-footer-cta p {
	margin-top: .55rem;
}

.bp-footer-cta .wp-block-button__link {
	white-space: nowrap;
}

.bp-site-footer p,
.bp-site-footer li,
.bp-site-footer a,
.bp-site-footer span {
	color: var(--bp-footer-muted);
}

.bp-site-footer__brand,
.bp-site-footer nav > p,
.bp-site-footer__grid > div > p:first-child {
	color: var(--wp--preset--color--paper);
	font-weight: 800;
	margin: 0 0 .9rem;
}

.bp-site-footer nav a {
	display: block;
	text-decoration: none;
}

.bp-site-footer nav a + a {
	margin-top: .4rem;
}

.bp-site-footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bp-site-footer li + li {
	margin-top: .4rem;
}

.bp-site-footer__bottom {
	border-top: 1px solid var(--bp-footer-rule);
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: space-between;
	margin-top: var(--wp--preset--spacing--60);
	padding-top: var(--wp--preset--spacing--40);
}

.bp-site-footer__bottom p {
	margin: 0;
}

.bp-sidebar {
	background: var(--wp--preset--color--paper-alt);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	border-radius: 12px;
	padding: var(--wp--preset--spacing--50);
}

.bp-sidebar > * + * {
	margin-block-start: var(--wp--preset--spacing--40);
}

.bp-layout-sidebar {
	margin-inline: auto;
	max-width: var(--bp-wide);
	padding-inline: 24px;
}

.bp-breadcrumbs,
.bp-post-meta {
	color: var(--wp--preset--color--muted);
}

.bp-offcanvas-menu,
.bp-mobile-navigation {
	width: 100%;
}

.bp-longform {
	background: color-mix(in srgb, var(--wp--preset--color--paper) 84%, white);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	border-radius: 8px;
	box-shadow: 0 18px 40px color-mix(in srgb, var(--wp--preset--color--ink) 10%, transparent);
	grid-template-columns: .34fr .66fr;
	padding: clamp(1.4rem, 4vw, 2.5rem);
}

.bp-longform-nav {
	border-right: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 12%, transparent);
	padding-right: var(--wp--preset--spacing--50);
}

.bp-longform-nav a {
	color: var(--wp--preset--color--muted);
	display: block;
	font-size: .92rem;
	text-decoration: none;
}

.bp-longform-nav a + a {
	margin-top: .45rem;
}

.bp-longform-links {
	list-style: none;
	margin: var(--wp--preset--spacing--40) 0 0;
	padding: 0;
}

.bp-longform-links li + li {
	margin-top: .5rem;
}

.bp-longform-links a {
	color: var(--wp--preset--color--muted);
	font-size: .92rem;
	font-weight: 700;
	text-decoration: none;
}

.bp-longform-copy {
	max-width: var(--wp--style--global--content-size);
}

.bp-longform-copy h3 + p,
.bp-longform-copy p + p,
.bp-longform-copy p + ul {
	margin-top: .9rem;
}

.bp-longform-copy h3:not(:first-child) {
	margin-top: var(--wp--preset--spacing--60);
}

.bp-longform-copy p,
.bp-longform-copy li {
	color: var(--wp--preset--color--muted);
	font-size: 1.04rem;
}

.bp-longform-copy blockquote {
	border-left: 4px solid var(--wp--preset--color--accent);
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(1.25rem, 2vw, 1.7rem);
	line-height: 1.25;
	margin: var(--wp--preset--spacing--50) 0;
	padding-left: var(--wp--preset--spacing--40);
}

@media (max-width: 782px) {
	.admin-bar .ks-site-header {
		top: 46px;
	}

	.ks-site-header .wp-block-navigation__responsive-container-open {
		margin-left: auto;
	}

	.bp-header .alignwide,
	.bp-header .wp-block-group.alignwide {
		gap: var(--wp--preset--spacing--40) !important;
	}

	.bp-header-brand {
		max-width: calc(100% - 64px);
	}

	.bp-header-brand .wp-block-site-tagline {
		display: none;
	}

	.bp-header-cta {
		display: none !important;
	}

	.bp-header-topbar {
		display: none;
	}

	.bp-header--centered .wp-block-navigation,
	.bp-header--split .wp-block-navigation {
		justify-content: flex-end;
	}

	.ks-gallery-grid,
	.bp-lightbox-grid,
	.bp-lightbox-masonry,
	.bp-grid-2,
	.bp-grid-3,
	.bp-grid-4,
	.bp-equal-grid,
	.bp-icon-grid,
	.bp-pricing-grid,
	.bp-team-grid,
	.bp-shop-grid,
	.bp-comparison-grid,
	.bp-stat-grid,
	.bp-card-library,
	.bp-before-after,
	.ks-text-layout,
	.bp-section-head,
	.bp-problem-grid,
	.bp-gallery-template-grid,
	.bp-video-template-grid,
	.bp-card-grid,
	.bp-site-footer__grid,
	.bp-workflow-grid,
	.bp-gallery-mosaic,
	.bp-slider-window,
	.bp-longform {
		grid-template-columns: 1fr;
	}

	.bp-longform-nav {
		border-right: 0;
		border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--ink) 12%, transparent);
		padding-right: 0;
		padding-bottom: var(--wp--preset--spacing--40);
	}

	.ks-slide img {
		aspect-ratio: 4 / 3;
	}

	.ks-slider-static .ks-slider-track {
		grid-template-columns: 1fr;
	}

	.bp-content-slide__inner {
		grid-template-columns: 1fr;
	}

	.bp-content-slider__controls {
		justify-content: flex-start;
	}

	.bp-tabs__list {
		display: grid;
	}

	.bp-tabs__tab {
		text-align: left;
	}

	.bp-slider-caption,
	.bp-video-meta {
		position: static;
	}

	.bp-footer--compact .bp-site-footer__grid,
	.bp-footer--mega .bp-site-footer__grid,
	.bp-footer-cta {
		grid-template-columns: 1fr;
	}

	.bp-footer-cta .wp-block-buttons {
		justify-content: flex-start !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: .001ms !important;
	}
}


