/* Webbaukasten – neue Abschnitte (ab 1.9) und Aufbau-Stile („Skins“) */

:root {
	--wbk-c-base: var(--wp--preset--color--base, #fff);
	--wbk-c-base2: var(--wp--preset--color--base-2, #f4f6f8);
	--wbk-c-text: var(--wp--preset--color--contrast, #1d2a35);
	--wbk-c-text2: var(--wp--preset--color--contrast-2, #5c666e);
	--wbk-c-pri: var(--wp--preset--color--primary, #1f5f8b);
	--wbk-c-soft: var(--wp--preset--color--primary-soft, #e0e9ef);
	--wbk-c-on: var(--wp--preset--color--on-primary, #fff);
	--wbk-c-sec: var(--wp--preset--color--secondary, #2a9d8f);
	--wbk-c-acc: var(--wp--preset--color--accent, #f4a261);
	--wbk-r: var(--wbk-radius, 10px);
}

/* ================================================================== */
/* Gemeinsame Bausteine                                                 */
/* ================================================================== */

.has-bg-image { background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; }
.wbk-tag {
	display: inline-block; width: max-content; max-width: 100%;
	background: var(--wbk-c-acc); color: #141414;
	font-size: .72rem !important; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;
	padding: .3em .7em; border-radius: 3px; margin: 0 0 .6rem !important; line-height: 1.4;
}
.wbk-chip {
	display: table !important; margin: 0 auto 1.1rem !important;
	border: 1px solid color-mix(in srgb, var(--wbk-c-pri) 40%, transparent);
	background: color-mix(in srgb, var(--wbk-c-pri) 10%, transparent);
	padding: .35rem .95rem; border-radius: 999px; font-size: .85rem !important; font-weight: 600;
}
.wbk-meta { color: var(--wbk-c-text2); font-size: .92rem; }

/* Abdunklung für Bildflächen */
.wbk-mag-main.has-bg-image::before, .wbk-mag-side.has-bg-image::before,
.wbk-imgtile.has-bg-image::before, .wbk-bento-big.has-bg-image::before,
.wbk-slide.has-bg-image::before {
	content: ""; position: absolute; inset: 0; z-index: -1;
	background: linear-gradient(180deg, rgba(6, 12, 22, .05) 20%, rgba(6, 12, 22, .78) 100%);
}

/* ---------- Startbereich bildschirmfüllend ---------- */
.wbk-hero-full.wbk-hero-photo, .wbk-hero-full.wp-block-cover { min-height: min(92vh, 940px) !important; justify-content: flex-end; padding-bottom: clamp(3rem, 8vw, 6rem); }
.wbk-hero-full.wbk-hero-photo > * { max-width: var(--wp--style--global--wide-size, 1200px); }
.wbk-hero-full h1 { font-size: clamp(2.5rem, 6.4vw, 5rem) !important; line-height: 1.02 !important; letter-spacing: -.02em; max-width: 15ch; }
.wbk-hero-full .wbk-lead { max-width: 46ch; }
.wbk-hero-full.wp-block-cover .wp-block-cover__inner-container { max-width: var(--wp--style--global--wide-size, 1200px); width: 100%; color: #fff; }
.wbk-hero-full.wp-block-cover h1, .wbk-hero-full.wp-block-cover p { color: #fff !important; }
.wbk-scroll-hint { font-size: .8rem !important; letter-spacing: .16em; text-transform: uppercase; opacity: .8; margin-top: 2.5rem !important; }
.wbk-hero-full.wbk-band { min-height: min(80vh, 760px); display: flex; flex-direction: column; justify-content: center; }

/* ---------- Bild-Collage ---------- */
.wbk-collage { position: relative; min-height: clamp(340px, 42vw, 520px); }
.wbk-collage > * { position: absolute; margin: 0 !important; border-radius: var(--wbk-r); overflow: hidden; box-shadow: 0 24px 60px rgba(10, 20, 40, .18); }
.wbk-collage > * img, .wbk-collage > * video { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 0 !important; }
.wbk-collage > .wbk-hero-art { background: var(--wbk-c-soft); display: flex; align-items: center; justify-content: center; }
.wbk-collage-1 { top: 0; right: 0; width: 66%; height: 70%; }
.wbk-collage-2 { bottom: 0; left: 0; width: 54%; height: 54%; z-index: 2; border: 6px solid var(--wbk-c-base); }
.wbk-collage-3 { bottom: 9%; right: 4%; width: 34%; height: 34%; z-index: 3; border: 6px solid var(--wbk-c-base); }
.wbk-hero-chips { margin-top: 1.25rem !important; }

/* ---------- Riesen-Überschrift ---------- */
.wbk-hero-bigtype { padding-top: clamp(3rem, 8vw, 7rem); }
h1.wbk-bigtype, .wbk-bigtype { font-size: clamp(2.8rem, 8.6vw, 7.4rem) !important; line-height: .96 !important; letter-spacing: -.04em; max-width: 16ch; margin-top: .5rem !important; }
.wbk-bigtype-row { margin-top: clamp(1.5rem, 4vw, 2.75rem) !important; padding-top: 1.5rem; border-top: 1px solid color-mix(in srgb, var(--wbk-c-text) 16%, transparent); }
.wbk-bigtype-row .wp-block-buttons { margin-top: 0 !important; justify-content: flex-end; }
.wbk-bigtype-row .wbk-meta { text-align: right; margin-top: .6rem !important; }
.wbk-strip-wrap { margin-top: clamp(2rem, 5vw, 4rem) !important; }
.wbk-hero-strip { margin: 0 !important; }
.wbk-hero-strip img, .wbk-hero-strip video { width: 100%; height: clamp(220px, 34vw, 470px); object-fit: cover; border-radius: var(--wbk-r); display: block; }

/* ---------- Magazin-Aufmacher ---------- */
.wbk-mag-grid { gap: 1rem !important; }
.wbk-mag-grid > .wp-block-column:last-child { display: flex; flex-direction: column; gap: 1rem; }
.wbk-mag-main, .wbk-mag-side {
	position: relative; isolation: isolate; overflow: hidden; border-radius: var(--wbk-r);
	display: flex; flex-direction: column; justify-content: flex-end;
	padding: clamp(1.25rem, 3vw, 2.25rem); background-color: var(--wbk-c-pri); color: #fff; margin: 0 !important;
}
.wbk-mag-main { min-height: clamp(400px, 58vh, 580px); }
.wbk-mag-side { flex: 1; min-height: 220px; }
.wbk-mag-main.is-plain, .wbk-mag-side.is-plain { background: linear-gradient(150deg, var(--wbk-c-pri), color-mix(in srgb, var(--wbk-c-pri) 55%, var(--wbk-c-sec))); }
.wbk-mag-main h1 { color: #fff !important; font-size: clamp(2rem, 4.2vw, 3.4rem) !important; line-height: 1.05; max-width: 20ch; }
.wbk-mag-main .wbk-lead, .wbk-mag-main p, .wbk-mag-side h3, .wbk-mag-side p, .wbk-mag-side a { color: #fff !important; }
.wbk-mag-main .wbk-lead { max-width: 52ch; opacity: .92; }
.wbk-mag-side h3 { font-size: 1.35rem !important; margin: 0 0 .4rem !important; }
.wbk-mag-side .wbk-more { margin: 0 !important; }
.wbk-mag-main > *, .wbk-mag-side > * { margin-block: 0 .6rem; }
.wbk-mag-main .wp-block-buttons { margin-top: 1rem !important; }
.wbk-mag-main .is-style-outline .wp-block-button__link { color: #fff !important; border-color: rgba(255, 255, 255, .85) !important; background: transparent !important; }

/* ---------- Slider ---------- */
.wbk-slider { position: relative; overflow: hidden; padding: 0 !important; margin-block: 0 !important; background: var(--wbk-c-text); isolation: isolate; }
.wbk-slider.is-ready { height: var(--wbk-sl-h, min(78vh, 720px)); }
.wbk-slider-h-klein { --wbk-sl-h: min(46vh, 380px); }
.wbk-slider-h-mittel { --wbk-sl-h: min(62vh, 540px); }
.wbk-slider-h-gross { --wbk-sl-h: min(80vh, 740px); }
.wbk-slider-h-voll { --wbk-sl-h: 100vh; }
.wbk-slide {
	position: relative; isolation: isolate; margin: 0 !important; overflow: hidden;
	display: flex; align-items: flex-end; min-height: 380px;
	padding: clamp(2rem, 6vw, 5.5rem) max(5vw, calc((100% - var(--wp--style--global--wide-size, 1200px)) / 2));
	background-color: color-mix(in srgb, var(--wbk-c-pri) 70%, #000); color: #fff;
}
.wbk-slide.is-plain { background: linear-gradient(135deg, var(--wbk-c-pri), color-mix(in srgb, var(--wbk-c-pri) 50%, var(--wbk-c-sec))); }
.wbk-slider.is-ready > .wbk-slide { position: absolute; inset: 0; min-height: 0; opacity: 0; visibility: hidden; transition: opacity .9s ease, transform 1.1s ease, visibility 0s linear .9s; }
.wbk-slider.is-ready > .wbk-slide.is-active { opacity: 1; visibility: visible; transition: opacity .9s ease, transform 1.1s ease, visibility 0s; z-index: 1; }
.wbk-slider-fx-schieben.is-ready > .wbk-slide { transform: translateX(6%); }
.wbk-slider-fx-schieben.is-ready > .wbk-slide.is-active { transform: none; }
.wbk-slider-fx-zoom.is-ready > .wbk-slide { transform: scale(1.08); }
.wbk-slider-fx-zoom.is-ready > .wbk-slide.is-active { transform: scale(1); }
.wbk-slide-text { max-width: 660px; margin: 0 !important; position: relative; z-index: 1; }
.wbk-slide-text > * { margin-block: 0 .7rem !important; }
.wbk-slide h1, .wbk-slide h2, .wbk-slide p, .wbk-slide .wbk-eyebrow { color: #fff !important; text-shadow: 0 1px 14px rgba(0, 0, 0, .25); }
.wbk-slide h1, .wbk-slide h2 { font-size: clamp(2rem, 5vw, 3.8rem) !important; line-height: 1.06; }
.wbk-slide .wp-block-buttons { margin-top: 1.2rem !important; }
.wbk-slider-dim-0 > .wbk-slide::before { opacity: 0; }
.wbk-slider-dim-25 > .wbk-slide::before { opacity: .6; }
.wbk-slider-dim-65 > .wbk-slide::before, .wbk-slider-dim-70 > .wbk-slide::before { background: linear-gradient(180deg, rgba(6, 12, 22, .45), rgba(6, 12, 22, .85)); }
.wbk-sl-nav { position: absolute; z-index: 3; top: 50%; transform: translateY(-50%); width: 3rem; height: 3rem; border-radius: 50%; border: 0; cursor: pointer; background: rgba(255, 255, 255, .18); color: #fff; font-size: 1.4rem; line-height: 1; backdrop-filter: blur(6px); transition: background .2s; }
.wbk-sl-nav:hover, .wbk-sl-nav:focus-visible { background: rgba(255, 255, 255, .34); }
.wbk-sl-prev { left: 1.25rem; }
.wbk-sl-next { right: 1.25rem; }
.wbk-sl-dots { position: absolute; z-index: 3; left: 0; right: 0; bottom: 1.25rem; display: flex; gap: .5rem; justify-content: center; }
.wbk-sl-dots button { width: .7rem; height: .7rem; border-radius: 999px; border: 0; padding: 0; background: rgba(255, 255, 255, .5); cursor: pointer; transition: width .3s, background .3s; }
.wbk-sl-dots button[aria-current="true"] { width: 2rem; background: #fff; }
.wbk-sl-noarrows .wbk-sl-nav, .wbk-sl-nodots .wbk-sl-dots { display: none; }
.wbk-sl-pause { position: absolute; z-index: 3; right: 1.25rem; bottom: 1rem; border: 0; background: rgba(0, 0, 0, .35); color: #fff; border-radius: 999px; padding: .3rem .7rem; font-size: .8rem; cursor: pointer; }
.wbk-el-h_slider { padding: 0 !important; }
.wbk-el-h_slider > .wbk-el-head { padding: clamp(1.5rem, 4vw, 2.5rem) 0; }

/* ---------- Portrait ---------- */
.wbk-hello { font-family: var(--wp--preset--font-family--chorus, cursive); font-size: clamp(1.4rem, 2.6vw, 1.9rem) !important; color: var(--wbk-c-pri); margin-bottom: 0 !important; }
.wbk-profile-art { position: relative; padding: 4% 0; }
.wbk-profile-art::before {
	content: ""; position: absolute; inset: 4% 2% 0 6%; z-index: 0;
	background: linear-gradient(135deg, var(--wbk-c-soft), color-mix(in srgb, var(--wbk-c-acc) 70%, var(--wbk-c-soft)));
	border-radius: 42% 58% 63% 37% / 41% 44% 56% 59%;
	animation: wbk-blob 14s ease-in-out infinite alternate;
}
@keyframes wbk-blob { to { border-radius: 58% 42% 38% 62% / 55% 38% 62% 45%; transform: rotate(8deg); } }
.wbk-profile-img { position: relative; z-index: 1; margin: 0 !important; }
.wbk-profile-img img { width: 84%; aspect-ratio: 1; object-fit: cover; display: block; margin: 0 auto; border-radius: 50% !important; border: 8px solid var(--wbk-c-base); box-shadow: 0 24px 60px rgba(0, 0, 0, .14); }
.wbk-badge { position: absolute; z-index: 2; right: 0; bottom: 10%; margin: 0 !important; background: var(--wbk-c-base); color: var(--wbk-c-text); padding: .8rem 1.15rem; border-radius: 16px; box-shadow: 0 14px 40px rgba(0, 0, 0, .15); font-weight: 700; max-width: 13rem; line-height: 1.3; font-size: .95rem !important; }
.wbk-badge::first-line { color: var(--wbk-c-pri); }

/* ---------- Halb/halb ---------- */
.wbk-hero-splitfull { padding: 0 !important; }
.wbk-splitfull { gap: 0 !important; margin: 0 !important; min-height: min(86vh, 780px); }
.wbk-splitfull > .wp-block-column { display: flex; flex-direction: column; justify-content: center; }
.wbk-split-text { padding: clamp(3rem, 7vw, 6rem) clamp(1.5rem, 6vw, 5rem); max-width: 660px; margin: 0 0 0 auto !important; }
.wbk-split-text h1 { font-size: clamp(2.2rem, 4.6vw, 4rem) !important; line-height: 1.05; }
.wbk-split-img { flex: 1; min-height: 360px; margin: 0 !important; height: 100%; }
.wbk-split-img.is-plain { display: flex; align-items: center; justify-content: center; }
.wbk-split-video { height: 100%; }
.wbk-split-video video { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ---------- Leuchten ---------- */
.wbk-hero-glow {
	background:
		radial-gradient(60% 50% at 50% 0%, color-mix(in srgb, var(--wbk-c-pri) 32%, transparent), transparent 72%),
		radial-gradient(36% 40% at 88% 28%, color-mix(in srgb, var(--wbk-c-sec) 24%, transparent), transparent 70%),
		radial-gradient(30% 34% at 10% 40%, color-mix(in srgb, var(--wbk-c-acc) 18%, transparent), transparent 70%),
		var(--wbk-c-base);
	padding-top: clamp(4rem, 9vw, 8rem);
}
.wbk-hero-glow::after {
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background-image: linear-gradient(color-mix(in srgb, var(--wbk-c-text) 7%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--wbk-c-text) 7%, transparent) 1px, transparent 1px);
	background-size: 56px 56px;
	-webkit-mask-image: radial-gradient(70% 60% at 50% 20%, #000, transparent 80%); mask-image: radial-gradient(70% 60% at 50% 20%, #000, transparent 80%);
}
.wbk-hero-glow { isolation: isolate; }
.wbk-gradient-text {
	background: linear-gradient(95deg, var(--wbk-c-text) 15%, var(--wbk-c-pri) 55%, var(--wbk-c-sec) 90%);
	-webkit-background-clip: text; background-clip: text; color: transparent !important;
	font-size: clamp(2.4rem, 6.2vw, 5rem) !important; line-height: 1.04 !important; letter-spacing: -.025em; max-width: 18ch; margin-inline: auto !important;
}
.wbk-hero-glow .wbk-lead { max-width: 56ch; margin-inline: auto !important; }
.wbk-glow-chips { margin-top: 1.25rem !important; }
.wbk-glow-frame {
	margin-top: clamp(2.5rem, 6vw, 4.5rem) !important; padding: 10px; border-radius: calc(var(--wbk-r) + 10px);
	background: linear-gradient(135deg, color-mix(in srgb, var(--wbk-c-pri) 70%, transparent), color-mix(in srgb, var(--wbk-c-sec) 60%, transparent));
	box-shadow: 0 40px 120px color-mix(in srgb, var(--wbk-c-pri) 34%, transparent);
}
.wbk-glow-frame figure { margin: 0 !important; }
.wbk-glow-frame img, .wbk-glow-frame video { width: 100%; max-height: 540px; object-fit: cover; display: block; border-radius: var(--wbk-r) !important; }
.wbk-glow-frame .wbk-hero-art { background: var(--wbk-c-base); border-radius: var(--wbk-r); padding: 1.5rem; }

/* ---------- Bild-Kacheln ---------- */
.wbk-imgtiles { gap: 1rem !important; }
.wbk-imgtile {
	position: relative; isolation: isolate; overflow: hidden; margin: 0 !important;
	min-height: clamp(300px, 30vw, 400px); border-radius: var(--wbk-r);
	display: flex; flex-direction: column; justify-content: flex-end; padding: 1.6rem;
	background-color: var(--wbk-c-pri); color: #fff; transition: transform .35s ease, box-shadow .35s ease;
}
.wbk-imgtile.is-plain { background: linear-gradient(160deg, var(--wbk-c-pri), color-mix(in srgb, var(--wbk-c-pri) 45%, var(--wbk-c-sec))); }
.wbk-imgtile:hover { transform: translateY(-4px); box-shadow: 0 24px 50px rgba(0, 0, 0, .18); }
.wbk-imgtile > * { margin-block: 0 .5rem !important; }
.wbk-imgtile h3, .wbk-imgtile p, .wbk-imgtile a { color: #fff !important; }
.wbk-imgtile p { opacity: .9; }
.wbk-tile-link a { font-weight: 700; text-decoration: none; }
.wbk-tile-link a:hover { text-decoration: underline; }

/* ---------- Nummeriert ---------- */
.wbk-numbered { gap: clamp(2rem, 5vw, 5rem) !important; }
.wbk-numbered > .wp-block-column:first-child { position: sticky; top: 7rem; align-self: flex-start; }
.wbk-num-row { display: grid !important; grid-template-columns: 4.2rem 1fr 2.6rem; gap: 1rem; align-items: start; padding: 1.4rem 0 !important; border-top: 1px solid color-mix(in srgb, var(--wbk-c-text) 15%, transparent); margin: 0 !important; }
.wbk-num-row:last-child { border-bottom: 1px solid color-mix(in srgb, var(--wbk-c-text) 15%, transparent); }
.wbk-num-row > * { margin: 0 !important; }
.wbk-num { font-size: 1.5rem !important; font-weight: 800; color: var(--wbk-c-pri); font-variant-numeric: tabular-nums; line-height: 1.2; }
.wbk-num-body h3 { font-size: clamp(1.2rem, 2vw, 1.5rem) !important; margin: 0 0 .35rem !important; transition: color .2s; }
.wbk-num-body p { margin: 0 !important; color: var(--wbk-c-text2); }
.wbk-num-arrow a { display: grid; place-items: center; width: 2.6rem; height: 2.6rem; border-radius: 50%; border: 1px solid color-mix(in srgb, var(--wbk-c-text) 25%, transparent); text-decoration: none; color: inherit; transition: background .2s, color .2s, transform .2s; }
.wbk-num-row:hover h3 { color: var(--wbk-c-pri); }
.wbk-num-row:hover .wbk-num-arrow a { background: var(--wbk-c-pri); color: var(--wbk-c-on); border-color: var(--wbk-c-pri); transform: rotate(-45deg); }

/* ---------- Bento ---------- */
.wbk-bento { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: minmax(190px, auto); gap: 1rem; }
.wbk-bento > * { margin: 0 !important; }
.wbk-bento-tile { border-radius: var(--wbk-r); padding: 1.5rem; background: var(--wbk-c-base2); display: flex; flex-direction: column; gap: .4rem; border: 1px solid color-mix(in srgb, var(--wbk-c-text) 6%, transparent); }
.wbk-bento-tile > * { margin: 0 !important; }
.wbk-bento-tile h3 { font-size: 1.2rem !important; }
.wbk-bento-big { grid-column: span 2; grid-row: span 2; position: relative; isolation: isolate; overflow: hidden; justify-content: flex-end; color: #fff; background-color: var(--wbk-c-pri); min-height: 400px; }
.wbk-bento-big.is-plain { background: linear-gradient(150deg, var(--wbk-c-pri), color-mix(in srgb, var(--wbk-c-pri) 50%, var(--wbk-c-sec))); }
.wbk-bento-big h3, .wbk-bento-big p { color: #fff !important; }
.wbk-bento-big h3 { font-size: clamp(1.5rem, 2.6vw, 2.1rem) !important; max-width: 18ch; }
.wbk-bento-stat { justify-content: center; background: var(--wbk-c-soft); }
.wbk-bento-stat .wbk-stat { font-size: clamp(2.6rem, 5vw, 3.8rem) !important; }
.wbk-bento-cta { grid-column: span 4; flex-direction: row; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1rem; min-height: 0; }
.wbk-bento-cta .wp-block-buttons { margin: 0 !important; }
.wbk-bento-cta .wp-block-button__link { background: var(--wbk-c-on) !important; color: var(--wbk-c-pri) !important; }

/* ---------- Laufband ---------- */
.wbk-marquee { overflow: hidden; background: var(--wbk-c-pri); color: var(--wbk-c-on); padding: 1rem 0 !important; margin: 0 !important; white-space: nowrap; }
.wbk-marquee-track { display: inline-block; white-space: nowrap; margin: 0 !important; padding: 0; font-weight: 800; font-size: clamp(1.15rem, 2.4vw, 1.8rem) !important; letter-spacing: .01em; animation: wbk-marquee 45s linear infinite; will-change: transform; }
.wbk-marquee:hover .wbk-marquee-track { animation-play-state: paused; }
@keyframes wbk-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ---------- Bild mit schwebender Karte ---------- */
.wbk-float-media { position: relative; margin-bottom: 2rem !important; }
.wbk-float-img { margin: 0 !important; }
.wbk-float-img img, .wbk-float-img video { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; border-radius: var(--wbk-r); }
.wbk-float-card { position: absolute; right: -5%; bottom: -8%; z-index: 2; margin: 0 !important; background: var(--wbk-c-base); color: var(--wbk-c-text); padding: 1.2rem 1.5rem; border-radius: var(--wbk-r); box-shadow: 0 22px 54px rgba(0, 0, 0, .16); min-width: 11rem; }
.wbk-float-card > * { margin: 0 !important; }
.wbk-float-card .wbk-stat { font-size: 2.4rem !important; }

/* ---------- Bildkarten ---------- */
.wbk-postcard { background: var(--wbk-c-base); color: var(--wbk-c-text); border-radius: var(--wbk-r); overflow: hidden; height: 100%; display: flex; flex-direction: column; box-shadow: var(--wbk-card-shadow, 0 10px 30px rgba(16, 24, 40, .08)); border: var(--wbk-card-border, 1px solid color-mix(in srgb, var(--wbk-c-text) 6%, transparent)); transition: transform .25s ease, box-shadow .25s ease; margin: 0 !important; }
.wbk-postcard:hover { transform: translateY(-3px); }
.wbk-post-img { margin: 0 !important; }
.wbk-post-img img, .wbk-post-img video { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; display: block; border-radius: 0 !important; }
.wbk-post-img.is-plain { aspect-ratio: 16 / 10; background: var(--wbk-c-soft); display: flex; align-items: center; justify-content: center; }
.wbk-post-body { padding: 1.25rem 1.4rem 1.5rem; flex: 1; display: flex; flex-direction: column; margin: 0 !important; }
.wbk-post-body > * { margin: 0 0 .5rem !important; }
.wbk-post-body .wbk-more { margin-top: auto !important; }
.wbk-post-body h3 { font-size: 1.25rem !important; }

/* ---------- Große Zahl ---------- */
.wbk-statement-num { font-size: clamp(4rem, 12vw, 9rem) !important; font-weight: 800; line-height: .9 !important; color: var(--wbk-c-pri); letter-spacing: -.045em; margin: 0 !important; }
.wbk-statement-title { font-size: clamp(1.7rem, 3.6vw, 2.8rem) !important; line-height: 1.15 !important; }

/* ---------- Video ---------- */
.wbk-video-frame { margin: 0 !important; }
.wbk-video-frame video { width: 100%; max-height: 72vh; object-fit: cover; display: block; border-radius: var(--wbk-r); box-shadow: 0 30px 80px rgba(0, 0, 0, .18); }
.wbk-el-video video, .wbk-el-video iframe { width: 100%; border-radius: var(--wbk-r); display: block; }
.wbk-video-el { margin: 0 !important; position: relative; }
.wbk-video-el video { width: 100%; height: auto; border-radius: var(--wbk-r); display: block; background: #000; }
.wbk-video-cover { position: relative; isolation: isolate; overflow: hidden; min-height: min(70vh, 640px); display: flex; align-items: center; color: #fff; padding: clamp(3rem, 8vw, 6rem) max(5vw, calc((100% - var(--wp--style--global--wide-size, 1200px)) / 2)) !important; }
.wbk-video-cover > video, .wbk-video-cover > .wbk-video-el { position: absolute !important; inset: 0; z-index: -2; width: 100%; height: 100%; }
.wbk-video-cover > .wbk-video-el video { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
.wbk-video-cover::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(6, 12, 22, .75), rgba(6, 12, 22, .25)); }
.wbk-video-cover h2, .wbk-video-cover h3, .wbk-video-cover p { color: #fff !important; }
.wbk-video-cover .wbk-video-text { max-width: 640px; margin: 0 !important; }

/* ---------- Werbefilm (System-Website) ---------- */
.wbk-film { position: relative; margin: 0 auto !important; max-width: 1100px; }
.wbk-film video { width: 100%; display: block; border-radius: 16px; box-shadow: 0 30px 80px rgba(0, 0, 0, .22); background: #000; }
.wbk-film-ki { position: absolute; top: 12px; right: 12px; background: rgba(0, 0, 0, .65); color: #fff; font-size: .78rem; font-weight: 700; padding: .3rem .7rem; border-radius: 999px; pointer-events: none; }
.wbk-film figcaption { text-align: center; font-size: .88rem; color: var(--wbk-c-text2); margin-top: .75rem; }

/* ---------- KI-Beispielbilder (nur Vorschau) ---------- */
.wbk-ki-mark { position: relative; }
.wbk-ki-badge { position: absolute; z-index: 5; top: 10px; left: 10px; background: rgba(17, 17, 17, .78); color: #fff; font: 700 11px/1.3 system-ui, sans-serif; padding: .3rem .6rem; border-radius: 999px; pointer-events: none; letter-spacing: .02em; }

/* ---------- Handy ---------- */
@media (max-width: 781px) {
	.wbk-collage { min-height: 320px; margin-top: 1.5rem !important; }
	.wbk-bigtype-row .wp-block-buttons { justify-content: flex-start; }
	.wbk-bigtype-row .wbk-meta { text-align: left; }
	.wbk-mag-main { min-height: 420px; }
	.wbk-splitfull { min-height: 0; }
	.wbk-split-text { padding: 2.5rem 1.25rem; margin: 0 !important; }
	.wbk-split-img { min-height: 280px; }
	.wbk-num-row { grid-template-columns: 3rem 1fr; }
	.wbk-num-arrow { display: none; }
	.wbk-numbered > .wp-block-column:first-child { position: static; }
	.wbk-bento { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.wbk-bento-big { grid-row: span 1; min-height: 300px; }
	.wbk-bento-cta { grid-column: span 2; }
	.wbk-float-card { right: 4%; bottom: -10%; }
	.wbk-badge { right: 2%; bottom: 0; }
	.wbk-sl-nav { display: none; }
	.wbk-slide { padding-bottom: 3.5rem; }
}
@media (prefers-reduced-motion: reduce) {
	.wbk-marquee-track, .wbk-profile-art::before { animation: none; }
	.wbk-slider.is-ready > .wbk-slide { transition: none; transform: none !important; }
}

/* ================================================================== */
/* Aufbau-Stile                                                         */
/* ================================================================== */

/* ---------- Editorial ---------- */
body.wbk-skin-editorial { --wbk-section: clamp(3.5rem, 8vw, 7rem); }
.wbk-skin-editorial h1, .wbk-skin-editorial h2 { letter-spacing: -.02em; }
.wbk-skin-editorial h2 { font-size: clamp(2rem, 4.2vw, 3.3rem); line-height: 1.08; }
.wbk-skin-editorial .wbk-intro { text-align: left; max-width: var(--wp--style--global--wide-size, 1200px); border-top: 1px solid var(--wbk-c-text); padding-top: 1.1rem; display: grid; grid-template-columns: 1fr 2fr; column-gap: 2rem; }
.wbk-skin-editorial .wbk-intro > * { text-align: left !important; margin-top: 0 !important; }
.wbk-skin-editorial .wbk-intro .wbk-lead { grid-column: 2; }
.wbk-skin-editorial .wbk-eyebrow { color: var(--wbk-c-text2); letter-spacing: .22em; font-weight: 600; }
.wbk-skin-editorial .wbk-eyebrow::before { content: "— "; }
.wbk-skin-editorial .is-style-wbk-card, .wbk-skin-editorial .wbk-card:not(.wbk-ui *), .wbk-skin-editorial .wbk-postcard { background: transparent; box-shadow: none; border: 0; border-top: 2px solid var(--wbk-c-text); border-radius: 0; padding-left: 0; padding-right: 0; }
.wbk-skin-editorial .wbk-postcard .wbk-post-body { padding-left: 0; padding-right: 0; }
.wbk-skin-editorial .wbk-section + .wbk-section:not(.has-background):not(.wbk-hero) { border-top: 1px solid color-mix(in srgb, var(--wbk-c-text) 12%, transparent); }
.wbk-skin-editorial .wp-block-quote { font-family: var(--wp--preset--font-family--pagella, Georgia, serif); font-style: italic; font-size: clamp(1.4rem, 2.6vw, 2rem); }
.wbk-skin-editorial .wbk-more a, .wbk-skin-editorial .wbk-tile-link a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .25em; }
@media (max-width: 781px) { .wbk-skin-editorial .wbk-intro { grid-template-columns: 1fr; } .wbk-skin-editorial .wbk-intro .wbk-lead { grid-column: 1; } }

/* ---------- Magazin / News ---------- */
body.wbk-skin-magazin { --wbk-section: clamp(2.5rem, 5vw, 4.5rem); }
.wbk-skin-magazin .wbk-intro { text-align: left; max-width: var(--wp--style--global--wide-size, 1200px); border-bottom: 4px solid var(--wbk-c-text); padding-bottom: .6rem; margin-bottom: 1.75rem !important; }
.wbk-skin-magazin .wbk-intro > * { text-align: left !important; }
.wbk-skin-magazin .wbk-intro h2 { text-transform: uppercase; font-weight: 800; font-size: clamp(1.5rem, 3vw, 2.2rem); letter-spacing: .01em; margin: .25rem 0 0 !important; }
.wbk-skin-magazin .wbk-eyebrow { background: var(--wbk-c-pri); color: var(--wbk-c-on) !important; padding: .25em .65em; letter-spacing: .1em; opacity: 1 !important; }
.wbk-skin-magazin .is-style-wbk-card, .wbk-skin-magazin .wbk-postcard { border-radius: 0; box-shadow: none; border: 1px solid color-mix(in srgb, var(--wbk-c-text) 14%, transparent); }
.wbk-skin-magazin h3 { font-weight: 800; }
.wbk-skin-magazin .wbk-postcard h3 { font-size: 1.3rem !important; line-height: 1.2; }
.wbk-skin-magazin .wbk-postcard:hover h3 { color: var(--wbk-c-pri); text-decoration: underline; }
.wbk-skin-magazin header.wp-block-template-part { border-bottom: 3px solid var(--wbk-c-pri); }
.wbk-skin-magazin .wp-block-button__link { text-transform: uppercase; font-weight: 800; letter-spacing: .04em; font-size: .9rem; }

/* ---------- Architektur ---------- */
body.wbk-skin-architektur { --wbk-radius: 0px; --wbk-r: 0px; background-image: linear-gradient(90deg, color-mix(in srgb, var(--wbk-c-text) 5%, transparent) 1px, transparent 1px); background-size: 25% 100%; background-attachment: fixed; }
.wbk-skin-architektur h1, .wbk-skin-architektur h2 { text-transform: uppercase; letter-spacing: .03em; font-weight: 700; }
.wbk-skin-architektur h1 { line-height: 1; }
.wbk-skin-architektur h3 { text-transform: uppercase; letter-spacing: .06em; font-size: 1.05rem !important; }
.wbk-skin-architektur .wbk-eyebrow { letter-spacing: .32em; color: var(--wbk-c-text); font-weight: 600; }
.wbk-skin-architektur .wbk-eyebrow::before { content: ""; display: inline-block; width: .55em; height: .55em; background: var(--wbk-c-acc); margin-right: .6em; vertical-align: .05em; }
.wbk-skin-architektur .wbk-intro { text-align: left; max-width: var(--wp--style--global--wide-size, 1200px); }
.wbk-skin-architektur .wbk-intro > * { text-align: left !important; }
.wbk-skin-architektur .is-style-wbk-card, .wbk-skin-architektur .wbk-postcard { box-shadow: none; border: 1px solid color-mix(in srgb, var(--wbk-c-text) 18%, transparent); border-radius: 0; transition: background .25s, color .25s; }
.wbk-skin-architektur .is-style-wbk-card:hover { background: var(--wbk-c-text); color: var(--wbk-c-base); }
.wbk-skin-architektur .is-style-wbk-card:hover h3, .wbk-skin-architektur .is-style-wbk-card:hover p, .wbk-skin-architektur .is-style-wbk-card:hover a { color: var(--wbk-c-base) !important; }
.wbk-skin-architektur .wp-block-button__link { border-radius: 0 !important; text-transform: uppercase; letter-spacing: .12em; font-size: .85rem; padding: 1em 1.8em; }
.wbk-skin-architektur .wbk-num { font-weight: 400; font-size: 2.2rem !important; color: var(--wbk-c-text); }
.wbk-skin-architektur figure img { border-radius: 0 !important; }

/* ---------- Persönlich & verspielt ---------- */
.wbk-skin-bio .wp-block-button:not(.is-style-outline) .wp-block-button__link { background: linear-gradient(120deg, var(--wbk-c-pri), color-mix(in srgb, var(--wbk-c-pri) 40%, var(--wbk-c-sec))); border: 0; box-shadow: 0 10px 26px color-mix(in srgb, var(--wbk-c-pri) 35%, transparent); border-radius: 999px; }
.wbk-skin-bio .wp-block-button.is-style-outline .wp-block-button__link { border-radius: 999px; }
.wbk-skin-bio .wbk-eyebrow { background: var(--wbk-c-soft); padding: .35em .9em; border-radius: 999px; letter-spacing: .06em; }
.wbk-skin-bio .is-style-wbk-card, .wbk-skin-bio .wbk-postcard, .wbk-skin-bio .wbk-bento-tile { border-radius: 26px; border: 0; box-shadow: 0 18px 40px color-mix(in srgb, var(--wbk-c-pri) 14%, transparent); }
.wbk-skin-bio .wbk-about figure img, .wbk-skin-bio .wbk-float-img img, .wbk-skin-bio .wbk-media-text figure img { border-radius: 28px !important; box-shadow: 18px 18px 0 color-mix(in srgb, var(--wbk-c-acc) 55%, transparent); }
.wbk-skin-bio .wbk-hero::before { content: ""; position: absolute; width: 380px; height: 380px; border-radius: 50%; right: -120px; top: -140px; background: color-mix(in srgb, var(--wbk-c-acc) 28%, transparent); z-index: 0; filter: blur(4px); pointer-events: none; }
.wbk-skin-bio .wbk-hero > * { position: relative; z-index: 1; }
.wbk-skin-bio .wbk-stat { background: linear-gradient(120deg, var(--wbk-c-pri), var(--wbk-c-sec)); -webkit-background-clip: text; background-clip: text; color: transparent !important; }

/* ---------- Technik / Dunkel ---------- */
body.wbk-skin-tech { background-image: radial-gradient(50% 40% at 15% 10%, color-mix(in srgb, var(--wbk-c-pri) 16%, transparent), transparent 70%), radial-gradient(40% 40% at 90% 60%, color-mix(in srgb, var(--wbk-c-sec) 12%, transparent), transparent 70%); background-attachment: fixed; }
.wbk-skin-tech .is-style-wbk-card, .wbk-skin-tech .wbk-postcard, .wbk-skin-tech .wbk-bento-tile:not(.wbk-bento-cta):not(.wbk-bento-big) {
	background: color-mix(in srgb, var(--wbk-c-base) 78%, var(--wbk-c-text) 6%);
	border: 1px solid color-mix(in srgb, var(--wbk-c-pri) 30%, transparent);
	box-shadow: 0 0 0 1px color-mix(in srgb, var(--wbk-c-text) 4%, transparent), 0 20px 50px rgba(0, 0, 0, .25);
	backdrop-filter: blur(8px);
}
.wbk-skin-tech .is-style-wbk-card:hover, .wbk-skin-tech .wbk-postcard:hover { box-shadow: 0 0 0 1px color-mix(in srgb, var(--wbk-c-pri) 60%, transparent), 0 0 40px color-mix(in srgb, var(--wbk-c-pri) 30%, transparent); }
.wbk-skin-tech .wbk-intro h2, .wbk-skin-tech h1 { background: linear-gradient(95deg, var(--wbk-c-text) 30%, var(--wbk-c-pri) 70%, var(--wbk-c-sec)); -webkit-background-clip: text; background-clip: text; color: transparent !important; }
.wbk-skin-tech .wbk-hero-photo h1, .wbk-skin-tech .wbk-slide h1, .wbk-skin-tech .wbk-mag-main h1 { background: none; color: #fff !important; }
.wbk-skin-tech .wp-block-button:not(.is-style-outline) .wp-block-button__link { background: linear-gradient(120deg, var(--wbk-c-pri), var(--wbk-c-sec)); color: #fff; border: 0; box-shadow: 0 0 30px color-mix(in srgb, var(--wbk-c-pri) 45%, transparent); }
.wbk-skin-tech .wbk-eyebrow { color: var(--wbk-c-sec); }
.wbk-skin-tech .wbk-band, .wbk-skin-tech .has-primary-background-color.wbk-section { background: linear-gradient(120deg, color-mix(in srgb, var(--wbk-c-pri) 85%, #000), color-mix(in srgb, var(--wbk-c-sec) 70%, #000)) !important; }
.wbk-skin-tech .has-base-2-background-color { background-color: color-mix(in srgb, var(--wbk-c-base2) 60%, transparent) !important; }

/* ---------- Agentur ---------- */
.wbk-skin-agentur h2 { font-size: clamp(2.2rem, 5vw, 4rem); line-height: 1; letter-spacing: -.035em; font-weight: 800; }
.wbk-skin-agentur h1 { letter-spacing: -.04em; }
.wbk-skin-agentur .wbk-intro { text-align: left; max-width: var(--wp--style--global--wide-size, 1200px); }
.wbk-skin-agentur .wbk-intro > * { text-align: left !important; }
.wbk-skin-agentur .wbk-intro h2 { max-width: 16ch; }
.wbk-skin-agentur .wbk-eyebrow { color: var(--wbk-c-text); letter-spacing: .08em; }
.wbk-skin-agentur .wbk-eyebrow::before { content: "● "; color: var(--wbk-c-pri); }
.wbk-skin-agentur .is-style-wbk-card, .wbk-skin-agentur .wbk-postcard { border-radius: 0; box-shadow: none; border: 0; border-top: 2px solid var(--wbk-c-text); background: transparent; transition: background .25s, color .25s, padding .25s; }
.wbk-skin-agentur .is-style-wbk-card:hover { background: var(--wbk-c-pri); color: var(--wbk-c-on); padding-left: 1.5rem; }
.wbk-skin-agentur .is-style-wbk-card:hover * { color: var(--wbk-c-on) !important; }
.wbk-skin-agentur .wp-block-button.is-style-outline .wp-block-button__link { border-width: 2px; }
.wbk-skin-agentur .wbk-more a { font-weight: 800; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: .3em; }
.wbk-skin-agentur .wbk-section + .wbk-section:not(.has-background):not(.wbk-hero) { border-top: 1px solid color-mix(in srgb, var(--wbk-c-text) 14%, transparent); }

/* ---------- Unternehmen ---------- */
.wbk-skin-corporate .is-style-wbk-card, .wbk-skin-corporate .wbk-postcard { border: 0; box-shadow: 0 1px 2px rgba(16, 24, 40, .05), 0 12px 32px rgba(16, 24, 40, .08); }
.wbk-skin-corporate .is-style-wbk-card { border-top: 3px solid var(--wbk-c-pri); }
.wbk-skin-corporate .wbk-band, .wbk-skin-corporate .wbk-stats.wbk-band { background: linear-gradient(120deg, var(--wbk-c-pri), color-mix(in srgb, var(--wbk-c-pri) 55%, var(--wbk-c-sec))) !important; }
.wbk-skin-corporate .wp-block-button:not(.is-style-outline) .wp-block-button__link { box-shadow: 0 8px 22px color-mix(in srgb, var(--wbk-c-pri) 30%, transparent); }
.wbk-skin-corporate header.wp-block-template-part { box-shadow: 0 6px 24px rgba(16, 24, 40, .06); }
.wbk-skin-corporate .wbk-eyebrow { background: var(--wbk-c-soft); padding: .3em .8em; border-radius: 6px; }

/* ---------- Organisch ---------- */
.wbk-skin-organisch .wbk-eyebrow { font-family: var(--wp--preset--font-family--chorus, cursive); text-transform: none; letter-spacing: 0; font-size: 1.45rem !important; font-weight: 400; }
.wbk-skin-organisch .wbk-section.has-base-2-background-color:not(.wbk-hero), .wbk-skin-organisch .wbk-band:not(.wbk-hero) { border-radius: clamp(28px, 4vw, 56px); }
.wbk-skin-organisch .wbk-about figure img, .wbk-skin-organisch .wbk-float-img img, .wbk-skin-organisch .wbk-media-text figure img { border-radius: 58% 42% 52% 48% / 46% 54% 46% 54% !important; aspect-ratio: 1; object-fit: cover; }
.wbk-skin-organisch figure img { border-radius: 28px; }
.wbk-skin-organisch .is-style-wbk-card, .wbk-skin-organisch .wbk-postcard, .wbk-skin-organisch .wbk-bento-tile { border-radius: 28px; border: 0; box-shadow: none; background: var(--wbk-c-base2); }
.wbk-skin-organisch .wbk-imgtile { border-radius: 36px; }
.wbk-skin-organisch .wp-block-button__link { border-radius: 999px !important; }
.wbk-skin-organisch .wbk-collage > * { border-radius: 44% 56% 50% 50% / 50% 46% 54% 50%; }

/* ---------- Service & Technik ---------- */
.wbk-skin-service h1, .wbk-skin-service h2, .wbk-skin-service h3 { text-transform: uppercase; letter-spacing: .01em; }
.wbk-skin-service .wbk-intro h2::after { content: ""; display: block; width: 64px; height: 4px; background: var(--wbk-c-pri); margin: 1rem auto 0; }
.wbk-skin-service .wbk-eyebrow::before { content: ""; display: inline-block; width: 1.6rem; height: 2px; background: var(--wbk-c-pri); margin-right: .55rem; vertical-align: .3em; }
.wbk-skin-service .is-style-wbk-card { border: 0; border-left: 4px solid var(--wbk-c-pri); border-radius: 2px; }
.wbk-skin-service .wbk-stat { color: var(--wbk-c-pri); }
.wbk-skin-service .wp-block-button__link { text-transform: uppercase; font-weight: 700; letter-spacing: .06em; }
.wbk-skin-service .wbk-num { background: var(--wbk-c-pri); color: var(--wbk-c-on); width: 3rem; height: 3rem; display: grid !important; place-items: center; font-size: 1.1rem !important; }

/* Etiketten auf Bildflächen immer lesbar */
.wbk-slide .wbk-eyebrow, .wbk-hero-photo .wbk-eyebrow, .wp-block-cover.wbk-hero .wbk-eyebrow { background: rgba(255, 255, 255, .16) !important; color: #fff !important; }
.wbk-skin-magazin .wbk-slide .wbk-eyebrow, .wbk-skin-magazin .wbk-hero-photo .wbk-eyebrow { background: var(--wbk-c-pri) !important; }

/* Dunkle Designs: Fußbereich dunkel halten */
body.wbk-design-dark .wbk-footer, body.wbk-design-dark footer.wp-block-template-part > .has-contrast-background-color { background: color-mix(in srgb, var(--wbk-c-base) 80%, #000) !important; color: var(--wbk-c-text) !important; border-top: 1px solid color-mix(in srgb, var(--wbk-c-text) 10%, transparent); }
body.wbk-design-dark .wbk-footer a, body.wbk-design-dark .wbk-footer p, body.wbk-design-dark .wbk-footer h4 { color: var(--wbk-c-text) !important; }
