/**
 * WOODPLAN – Header & Megamenü (Flowbase-orientiert).
 * Markenfarben/Tokens aus style.css; hier ergänzte Stone-Abstufungen.
 */

:root {
	/* Kühle, blaustichige Neutraltöne (Slate) – abgestimmt auf Azure #2D6A9F */
	--wp-stone-100: #ECEFF4;
	--wp-stone-200: #DCE2EA;
	--wp-stone-300: #C4CCD8;
	--wp-stone-500: #6B7484;
	--wp-stone-600: #565E6B;
	--wp-stone-700: #3D4451;
	--wp-stone-800: #2B313B;

	--wp-panel-bg: #FFFFFF;
	--wp-zone-bg: #F4F6FA;        /* helle, leicht blaustichige Sekundärzone */

	--wp-head-h: 76px;
	--wp-radius: 20px;
	--wp-shadow-soft: 0 1px 2px rgba(27, 79, 120, .05), 0 18px 48px -16px rgba(27, 79, 120, .22);
	--wp-ease: cubic-bezier(.16, 1, .3, 1);
	--wp-dur: 220ms;

	--wp-font-display: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
}

.wp-header,
.wp-drawer { font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif; }

.wp-container { max-width: 1280px; margin-inline: auto; padding-inline: clamp(16px, 4vw, 40px); }
.wp-ic { display: inline-block; vertical-align: middle; flex: none; }

/* Skip-Link */
.wp-skip-link {
	position: fixed; top: 8px; left: 8px; z-index: 1200;
	background: var(--wp-azure-500); color: #fff; padding: 10px 16px; border-radius: 8px; font-weight: 600;
	transform: translateY(-160%); transition: transform var(--wp-dur) var(--wp-ease);
}
.wp-skip-link:focus { transform: translateY(0); color: #fff; }

/* ---------- Leiste ---------- */
.wp-header { position: sticky; top: 0; z-index: 1000; }
.wp-mainbar {
	background: transparent;
	border-bottom: 1px solid transparent;
	transition: box-shadow var(--wp-dur) var(--wp-ease), background var(--wp-dur) var(--wp-ease), border-color var(--wp-dur) var(--wp-ease), backdrop-filter var(--wp-dur) var(--wp-ease);
}
.wp-mainbar__inner {
	position: relative; display: flex; align-items: center; justify-content: space-between; gap: 28px;
	min-height: var(--wp-head-h); transition: min-height var(--wp-dur) var(--wp-ease);
}
/* Nach wenigem Scrollen: weiß-transparent mit Blur */
[data-wp-header].is-stuck .wp-mainbar {
	background: rgba(255, 255, 255, .72);
	-webkit-backdrop-filter: saturate(180%) blur(14px); backdrop-filter: saturate(180%) blur(14px);
	border-bottom-color: var(--wp-stone-200);
	box-shadow: var(--wp-shadow-soft);
}
[data-wp-header].is-stuck .wp-mainbar__inner { min-height: 64px; }

/* ---------- Marke ---------- */
.custom-logo-link { display: inline-flex; align-items: center; line-height: 0; }
.custom-logo-link .custom-logo { max-height: 46px; width: auto; }
.wp-brand { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; }
.wp-brand__logo { display: block; height: 38px; width: auto; }
.wp-brand__mark { display: grid; place-items: center; color: var(--wp-azure-400); }
.wp-brand__mark .wp-ic { width: 30px; height: 30px; stroke-width: 2; }
.wp-brand__text { display: flex; flex-direction: column; line-height: 1; font-family: var(--wp-font-display); font-weight: 700; font-size: 22px; letter-spacing: -.02em; color: var(--wp-azure-500); }
.wp-brand__text small { font-family: "Inter", sans-serif; font-weight: 600; font-size: 10.5px; letter-spacing: .18em; text-transform: uppercase; color: var(--wp-stone-500); margin-top: 5px; }

/* ---------- Navigation ---------- */
.wp-nav__list { display: flex; align-items: center; gap: 2px; list-style: none; margin: 0; padding: 0; }
.wp-nav__item { position: relative; }
.wp-nav__item.has-mega { position: static; }

.wp-nav__link, .wp-nav__trigger {
	display: inline-flex; align-items: center; gap: 5px; font: inherit; font-weight: 500; font-size: 15px;
	color: var(--wp-stone-800); background: none; border: 0; cursor: pointer; padding: 9px 13px; border-radius: 10px;
	text-decoration: none; white-space: nowrap; transition: color var(--wp-dur) var(--wp-ease), background var(--wp-dur) var(--wp-ease);
}
.wp-nav__link:hover, .wp-nav__trigger:hover { color: var(--wp-azure-400); }
.wp-nav__trigger[aria-expanded="true"] { color: var(--wp-azure-500); }
.wp-nav__trigger[aria-expanded="true"] .wp-ic--chev { color: var(--wp-azure-500); }
.wp-ic--chev { width: 15px; height: 15px; color: var(--wp-stone-500); transition: transform 180ms var(--wp-ease); }
.wp-nav__trigger[aria-expanded="true"] .wp-ic--chev { transform: rotate(180deg); }

.wp-nav__item.is-current > .wp-nav__link, .wp-nav__item.is-current > .wp-nav__trigger { color: var(--wp-azure-500); }

/* ---------- Panel ---------- */
.wp-panel {
	position: absolute; top: calc(100% + 12px); left: 50%;
	transform: translateX(-50%) translateY(8px) scale(.985); transform-origin: top center;
	background: var(--wp-panel-bg); border: 1px solid var(--wp-stone-200);
	border-radius: var(--wp-radius); box-shadow: var(--wp-shadow-soft); overflow: hidden;
	opacity: 0; visibility: hidden; pointer-events: none;
	transition: opacity var(--wp-dur) var(--wp-ease), transform var(--wp-dur) var(--wp-ease), visibility 0s linear var(--wp-dur);
}
.wp-panel[hidden] { display: none; }
.wp-panel::before { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 12px; }
.wp-nav__item.is-open .wp-panel {
	opacity: 1; visibility: visible; pointer-events: auto;
	transform: translateX(-50%) translateY(0) scale(1); transition-delay: 0s;
}
.wp-panel--xl { width: min(1240px, calc(100vw - 40px)); }
.wp-panel--lg { width: min(880px, calc(100vw - 40px)); }
.wp-panel--md { width: min(680px, calc(100vw - 40px)); }

/* ---------- Mega-Layout (Zonen) ---------- */
.wp-mega { display: flex; align-items: stretch; }
.wp-mega__intro { width: 220px; flex: none; padding: 22px; border-right: 1px solid var(--wp-stone-100); }
.wp-mega__main { flex: 1 1 auto; padding: 22px; min-width: 0; }
.wp-mega__extra { width: 220px; flex: none; padding: 22px; border-left: 1px solid var(--wp-stone-200); }
.wp-mega__aside { width: 280px; flex: none; padding: 22px; background: var(--wp-zone-bg); border-left: 1px solid var(--wp-stone-100); }
/* Funktionen-Panel: Überblick + die 2 Funktionen-Spalten gleich breit (3 gleiche Spalten). */
.wp-panel--xl .wp-mega__intro { width: auto; flex: 1 1 0; }
.wp-panel--xl .wp-mega__main { flex: 2 1 0; }

.wp-mega__label { margin: 2px 0 14px; padding: 0 10px; font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--wp-stone-500); }
.wp-mega__grid { display: grid; grid-template-columns: repeat(var(--cols, 2), minmax(0, 1fr)); gap: 4px 14px; }
.wp-mega__col { display: flex; flex-direction: column; gap: 2px; }

/* ---------- Eintrag (Icon + Titel + Beschreibung) ---------- */
.wp-entry { display: grid; grid-template-columns: 38px 1fr; gap: 12px; align-items: start; padding: 11px 10px; border-radius: 12px; text-decoration: none; transition: background var(--wp-dur) var(--wp-ease); }
.wp-entry:hover { background: rgba(45, 106, 159, .05); }
.wp-entry__ic { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: linear-gradient(180deg, rgba(45, 106, 159, .13) 0%, rgba(45, 106, 159, .05) 100%); color: var(--wp-azure-400); transition: background var(--wp-dur) var(--wp-ease), color var(--wp-dur) var(--wp-ease); }
.wp-entry__ic .wp-ic { width: 18px; height: 18px; }
.wp-entry:hover .wp-entry__ic { background: linear-gradient(180deg, var(--wp-azure-300) 0%, var(--wp-azure-500) 100%); color: #fff; }
.wp-entry__body { min-width: 0; }
.wp-entry__title { display: block; font-size: 15px; font-weight: 500; color: var(--wp-stone-900); line-height: 1.3; transition: color var(--wp-dur) var(--wp-ease); }
.wp-entry:hover .wp-entry__title { color: var(--wp-azure-500); }
.wp-entry__desc { display: block; margin-top: 2px; font-size: 13px; line-height: 1.45; color: var(--wp-stone-500); }

/* ---------- Promo-Karte ---------- */
.wp-feature { display: flex; flex-direction: column; height: 100%; text-decoration: none; }
.wp-feature__media { position: relative; display: grid; place-items: center; aspect-ratio: 16 / 9; border-radius: 12px; margin-bottom: 14px; background: linear-gradient(150deg, var(--wp-azure-300) 0%, var(--wp-azure-500) 100%); overflow: hidden; }
.wp-feature__media::after { content: ""; position: absolute; right: -30px; bottom: -40px; width: 150px; height: 150px; background: radial-gradient(circle, rgba(249, 183, 0, .4) 0%, transparent 70%); }
.wp-feature__play { width: 30px; height: 30px; color: #fff; position: relative; z-index: 1; padding: 12px; box-sizing: content-box; background: rgba(255, 255, 255, .18); border-radius: 50%; -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
.wp-feature__title { font-family: var(--wp-font-display); font-size: 18px; font-weight: 600; line-height: 1.2; color: var(--wp-stone-900); letter-spacing: -.01em; }
.wp-feature__text { margin-top: 7px; font-size: 13.5px; line-height: 1.5; color: var(--wp-stone-600); }
.wp-feature__cta { display: inline-flex; align-items: center; justify-content: center; gap: 7px; margin-top: auto; padding: 11px 16px; background: linear-gradient(180deg, #357AB0 0%, var(--wp-azure-400) 100%); color: #fff; border-radius: 10px; font-weight: 600; font-size: 14.5px; box-shadow: 0 6px 16px -10px rgba(45, 106, 159, .9); transition: background var(--wp-dur) var(--wp-ease); }
.wp-feature__media + .wp-feature__title { margin-top: 0; }
.wp-feature:hover .wp-feature__cta { background: linear-gradient(180deg, var(--wp-azure-400) 0%, var(--wp-azure-500) 100%); }
.wp-ic--go { width: 16px; height: 16px; transition: transform var(--wp-dur) var(--wp-ease); }
.wp-feature:hover .wp-ic--go { transform: translateX(4px); }

/* ---------- Aktionen ---------- */
.wp-actions { display: flex; align-items: center; gap: 6px; }

/* Such-Icon (schlicht wie Referenz) */
.wp-search { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 10px; color: var(--wp-stone-700); transition: color var(--wp-dur) var(--wp-ease), background var(--wp-dur) var(--wp-ease), transform 140ms var(--wp-ease); }
.wp-search .wp-ic { width: 21px; height: 21px; }
.wp-search:hover { color: var(--wp-azure-500); background: var(--wp-stone-100); }
.wp-search:active { transform: scale(.92); }

/* Login-Textlink */
.wp-login, .wp-link { font-weight: 500; font-size: 15px; color: var(--wp-stone-800); text-decoration: none; padding: 9px 14px; border-radius: 10px; white-space: nowrap; transition: color var(--wp-dur) var(--wp-ease), background var(--wp-dur) var(--wp-ease), transform 140ms var(--wp-ease); }
.wp-login:hover, .wp-link:hover { color: var(--wp-azure-500); background: var(--wp-stone-100); }
.wp-login:active, .wp-link:active { transform: scale(.97); }

.wp-cta { display: inline-flex; align-items: center; justify-content: center; gap: 9px; background: linear-gradient(180deg, #357AB0 0%, var(--wp-azure-400) 100%); color: #fff; font-weight: 600; font-size: 15px; text-decoration: none; padding: 11px 18px; border-radius: 10px; white-space: nowrap; box-shadow: 0 8px 20px -10px rgba(45, 106, 159, .8); transition: transform 140ms var(--wp-ease), background var(--wp-dur) var(--wp-ease), box-shadow var(--wp-dur) var(--wp-ease); }
.wp-cta:hover { background: linear-gradient(180deg, var(--wp-azure-400) 0%, var(--wp-azure-500) 100%); transform: translateY(-2px); box-shadow: 0 14px 26px -12px rgba(27, 79, 120, .9); color: #fff; }
.wp-cta:active { transform: scale(.97); }

/* Dunkle Pill-Variante (Referenz-Stil) – dezent gehalten */
.wp-cta--pill { gap: 7px; font-size: 14px; background: linear-gradient(180deg, var(--wp-stone-800) 0%, var(--wp-stone-900) 100%); border-radius: 999px; padding: 9px 16px; box-shadow: 0 2px 8px -4px rgba(27, 32, 38, .4); }
.wp-cta--pill .wp-ic--go { width: 15px; height: 15px; opacity: .85; }
.wp-cta--pill:hover { background: linear-gradient(180deg, var(--wp-azure-400) 0%, var(--wp-azure-500) 100%); box-shadow: 0 6px 16px -8px rgba(45, 106, 159, .55); }
.wp-cta--pill:active { transform: scale(.97); }
.wp-cta--block, .wp-link--block { display: flex; width: 100%; }
.wp-cta--block { margin-top: 8px; padding: 14px; }
.wp-link--block { margin-top: 16px; justify-content: center; padding: 13px; border: 1px solid var(--wp-stone-200); }

/* Burger */
.wp-burger { display: none; position: relative; width: 46px; height: 46px; border: 1px solid var(--wp-stone-200); background: #fff; border-radius: 11px; cursor: pointer; color: var(--wp-stone-900); transition: transform 140ms var(--wp-ease), border-color var(--wp-dur) var(--wp-ease); }
.wp-burger:hover { border-color: var(--wp-stone-300); }
.wp-burger:active { transform: scale(.94); }
.wp-burger .wp-ic { position: absolute; inset: 0; margin: auto; width: 22px; height: 22px; transition: opacity 180ms var(--wp-ease), transform 180ms var(--wp-ease); }
.wp-burger__close { opacity: 0; transform: rotate(-90deg); }
.wp-burger[aria-expanded="true"] .wp-burger__open { opacity: 0; transform: rotate(90deg); }
.wp-burger[aria-expanded="true"] .wp-burger__close { opacity: 1; transform: rotate(0); }

/* Scrim – bewusst kein abdunkelndes Overlay hinter dem Megamenü (wie Referenz).
   Element bleibt für evtl. spätere Nutzung erhalten, ist aber unsichtbar/inaktiv. */
.wp-scrim { display: none; }

/* Fokus-Sichtbarkeit */
.wp-nav__trigger:focus-visible, .wp-nav__link:focus-visible, .wp-cta:focus-visible, .wp-link:focus-visible,
.wp-burger:focus-visible, .wp-entry:focus-visible, .wp-feature:focus-visible {
	outline: 3px solid var(--wp-azure-300); outline-offset: 2px; border-radius: 10px;
}

/* ---------- Mobile-Drawer ---------- */
.wp-drawer { position: fixed; inset: 0; z-index: 1100; }
.wp-drawer[hidden] { display: none; }
.wp-drawer::before { content: ""; position: absolute; inset: 0; background: rgba(27, 32, 38, .42); opacity: 0; transition: opacity var(--wp-dur) var(--wp-ease); }
.wp-drawer.is-open::before { opacity: 1; }
.wp-drawer__panel { position: absolute; top: 0; right: 0; height: 100%; width: min(400px, 88vw); background: #fff; box-shadow: -16px 0 40px -12px rgba(27, 32, 38, .35); transform: translateX(100%); transition: transform var(--wp-dur) var(--wp-ease); overflow-y: auto; padding: 24px 20px calc(24px + env(safe-area-inset-bottom)); }
.wp-drawer.is-open .wp-drawer__panel { transform: translateX(0); }
.wp-drawer__list { list-style: none; margin: 0; padding: 0; }
.wp-drawer__item { border-bottom: 1px solid var(--wp-stone-100); }
.wp-drawer__link, .wp-drawer__trigger { display: flex; align-items: center; justify-content: space-between; width: 100%; font: inherit; font-weight: 600; font-size: 17px; color: var(--wp-stone-900); background: none; border: 0; cursor: pointer; text-decoration: none; padding: 15px 4px; min-height: 44px; }
.wp-drawer__trigger[aria-expanded="true"] .wp-ic--chev { transform: rotate(180deg); }
.wp-drawer__sub { padding: 2px 4px 12px; }
.wp-drawer__sub[hidden] { display: none; }
.wp-drawer__sub a { display: block; padding: 9px 8px; color: var(--wp-stone-700); text-decoration: none; border-radius: 8px; font-size: 15.5px; }
.wp-drawer__sub a:hover { background: var(--wp-stone-100); color: var(--wp-azure-500); }

/* ---------- Breakpoints ---------- */
@media (max-width: 1080px) {
	.wp-nav, .wp-search, .wp-login, .wp-actions .wp-cta { display: none; }
	.wp-burger { display: block; }
}
@media (max-width: 480px) {
	.wp-brand__text { font-size: 20px; }
}

/* ---------- Reduced Motion ---------- */
@media (prefers-reduced-motion: reduce) {
	.wp-panel, .wp-drawer__panel, .wp-cta, .wp-feature__cta, .wp-ic--chev, .wp-ic--go,
	.wp-mainbar, .wp-mainbar__inner, .wp-entry, .wp-entry__ic,
	.wp-search, .wp-login, .wp-link, .wp-burger, .wp-burger .wp-ic { transition: none !important; }
	.wp-panel,
	.wp-nav__item.is-open .wp-panel { transform: translateX(-50%); }
}

/* ====================== Footer ====================== */
.wp-footer { background: #171C24; font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif; }
.wp-footer__top { display: grid; grid-template-columns: 1.5fr 3fr; gap: 48px; padding-block: 64px 44px; }
.wp-footer__logo-link { display: inline-block; line-height: 0; }
.wp-footer__logo { display: block; height: 40px; width: auto; filter: brightness(0) invert(1); opacity: .96; }
.wp-footer__claim { margin: 20px 0 0; max-width: 360px; font-size: 14px; line-height: 1.65; color: var(--wp-stone-300); }

/* Drei gleich breite Linkspalten */
.wp-footer__cols { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }
.wp-footer__col-title { margin: 0 0 14px; font-size: 13px; font-weight: 600; letter-spacing: .06em; color: #fff; }
.wp-footer__group + .wp-footer__group { margin-top: 26px; }
.wp-footer__col-title a { color: inherit; text-decoration: none; transition: color 180ms var(--wp-ease); }
.wp-footer__col-title a:hover { color: var(--wp-stone-300); }
.wp-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.wp-footer__col a { color: var(--wp-stone-300); text-decoration: none; font-size: 14.5px; transition: color 180ms var(--wp-ease); }
.wp-footer__col a:hover { color: #fff; }

/* App-Store-Badges */
.wp-footer__apps-title { margin: 32px 0 14px; font-size: 13px; font-weight: 600; letter-spacing: .06em; color: #fff; }
.wp-footer__apps { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 0; }
.wp-app-badge { display: inline-flex; align-items: center; gap: 11px; padding: 9px 16px; border-radius: 12px; border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.06); color: #fff; text-decoration: none; transition: background var(--wp-dur) var(--wp-ease), border-color var(--wp-dur) var(--wp-ease), transform 120ms var(--wp-ease); }
.wp-app-badge:hover, .wp-app-badge:focus, .wp-app-badge:active { color: #fff; background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.45); }
.wp-app-badge:active { transform: scale(.98); }
.wp-app-badge i, .wp-app-badge:hover i { color: #fff; font-size: 24px; line-height: 1; }
.wp-app-badge__txt { display: flex; flex-direction: column; line-height: 1.15; text-align: left; }
.wp-app-badge__small { font-size: 10.5px; opacity: .8; }
.wp-app-badge__store { font-size: 15px; font-weight: 600; }

/* Legal-Leiste */
.wp-footer__bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 20px; border-top: 1px solid rgba(255, 255, 255, .10); font-size: 13px; color: var(--wp-stone-500); }
.wp-footer__legal { display: flex; gap: 22px; flex-wrap: wrap; }
.wp-footer__legal ul { display: flex; gap: 22px; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.wp-footer__legal a { color: var(--wp-stone-500); text-decoration: none; transition: color 180ms var(--wp-ease); }
.wp-footer__legal a:hover { color: #fff; }

@media (max-width: 860px) {
	.wp-footer__top { grid-template-columns: 1fr; gap: 36px; }
	.wp-footer__cols { grid-template-columns: repeat(2, 1fr); gap: 24px 28px; }
}
@media (max-width: 560px) {
	.wp-footer__cols { grid-template-columns: 1fr; }
	.wp-footer__bar { flex-direction: column; align-items: flex-start; gap: 10px; }
}
@media (prefers-reduced-motion: reduce) {
	.wp-footer__col a, .wp-footer__legal a { transition: none; }
}

/* ====================== Startseite-Hero (xentral-Stil) ====================== */
body.home { background: #ffffff; }
.home .site-main { padding-top: 0 !important; overflow-x: clip; }

/* Vollbreite Hero-Fläche, hinter dem transparenten Header, mit diagonalem Abschluss */
.wp-hero {
	position: relative;
	width: 100vw; margin-left: calc(50% - 50vw);
	margin-top: calc(-1 * var(--wp-head-h));
	padding: calc(var(--wp-head-h) + clamp(24px, 3vw, 48px)) 0 clamp(96px, 10vw, 152px);
	background: linear-gradient(165deg, #EAECF0 0%, #F1F2F4 55%, #E9EBEF 100%);
	clip-path: polygon(0 0, 100% 0, 100% calc(100% - 72px), 0 100%);
	overflow: hidden;
}
.wp-hero::before { content: ""; position: absolute; top: -120px; right: -80px; width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle, rgba(45,106,159,.12), transparent 62%); pointer-events: none; }
.wp-hero__inner { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(32px, 5vw, 72px); align-items: center; position: relative; z-index: 1; }

.wp-hero__eyebrow { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 18px; font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--wp-azure-400); }
.wp-hero__eyebrow::before { content: ""; width: 22px; height: 2px; border-radius: 2px; background: var(--wp-azure-400); }
.wp-hero__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(34px, 5vw, 56px); line-height: 1.05; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0 0 20px; }
.wp-hero__accent { background: linear-gradient(100deg, var(--wp-azure-500) 0%, var(--wp-azure-300) 42%, var(--wp-red-300) 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; }
.wp-hero__lead { font-size: clamp(16px, 1.3vw, 19px); line-height: 1.6; color: var(--wp-stone-700); max-width: 540px; margin: 0 0 26px; }

.wp-hero__checks { list-style: none; margin: 0 0 32px; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.wp-hero__checks li { display: flex; align-items: center; gap: 12px; font-size: 15.5px; color: var(--wp-stone-800); }
.wp-hero__check { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: linear-gradient(180deg, var(--wp-azure-300), var(--wp-azure-500)); color: #fff; }
.wp-hero__check .wp-ic { width: 14px; height: 14px; stroke-width: 2.5; }

.wp-hero__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 18px; }
.wp-hero__btn { display: inline-flex; align-items: center; justify-content: center; padding: 14px 26px; border: 0; border-radius: 12px; font-family: inherit; font-weight: 600; font-size: 16px; line-height: 1.2; cursor: pointer; text-decoration: none; transition: transform 140ms var(--wp-ease), background var(--wp-dur) var(--wp-ease), box-shadow var(--wp-dur) var(--wp-ease), border-color var(--wp-dur) var(--wp-ease); }
.wp-hero__btn--primary { background: linear-gradient(180deg, #357AB0 0%, var(--wp-azure-400) 100%); color: #fff; box-shadow: 0 12px 26px -10px rgba(45,106,159,.8); }
.wp-hero__btn--primary:hover { background: linear-gradient(180deg, var(--wp-azure-400) 0%, var(--wp-azure-500) 100%); transform: translateY(-2px); box-shadow: 0 18px 34px -14px rgba(27,79,120,.85); }
.wp-hero__btn--primary:active { transform: scale(.98); }
.wp-hero__btn--ghost { background: #fff; color: var(--wp-stone-900); border: 1px solid var(--wp-stone-200); }
.wp-hero__btn--ghost:hover { border-color: var(--wp-azure-300); color: var(--wp-azure-500); }
.wp-hero__btn--ghost:active { transform: scale(.98); }
.wp-hero__note { margin: 0; font-size: 13.5px; color: var(--wp-stone-500); }

/* Newsletter-/Trial-Formular im Hero */
.wp-hero__form { display: flex; gap: 10px; max-width: 480px; margin: 0 0 14px; }
.wp-hero__input { flex: 1; min-width: 0; padding: 14px 16px; font-size: 15.5px; color: var(--wp-stone-900); background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 12px; transition: border-color 150ms var(--wp-ease), box-shadow 150ms var(--wp-ease); }
.wp-hero__input::placeholder { color: var(--wp-stone-500); }
.wp-hero__input:focus { outline: none; border-color: var(--wp-azure-400); box-shadow: 0 0 0 3px rgba(45, 106, 159, .18); }
.wp-hero__form .wp-hero__btn { white-space: nowrap; }
.wp-hero__alt { margin: 0 0 16px; font-size: 14px; color: var(--wp-stone-600); }
.wp-hero__alt a { color: var(--wp-azure-500); text-decoration: none; font-weight: 600; }
.wp-hero__alt a:hover { text-decoration: underline; }
@media (max-width: 480px) { .wp-hero__form { flex-direction: column; align-items: stretch; } }

/* Hero-Bild (Produkt-Screenshot) */
.wp-hero__img { display: block; width: 100%; height: auto; border-radius: 18px; border: 1px solid var(--wp-stone-200); box-shadow: 0 36px 70px -28px rgba(27, 79, 120, .34); }

/* Visual (rechts) */
.wp-hero__media { position: relative; }
.wp-hero__card { position: relative; z-index: 1; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 22px; box-shadow: 0 36px 70px -28px rgba(27,79,120,.34); padding: 16px; }
.wp-mock__bar { display: flex; gap: 6px; padding: 4px 6px 12px; }
.wp-mock__bar span { width: 9px; height: 9px; border-radius: 50%; background: var(--wp-stone-200); }
.wp-mock__head { height: 78px; border-radius: 12px; background: linear-gradient(135deg, var(--wp-azure-400), var(--wp-azure-500)); position: relative; overflow: hidden; }
.wp-mock__head::after { content: ""; position: absolute; right: -20px; bottom: -30px; width: 120px; height: 120px; border-radius: 50%; background: radial-gradient(circle, rgba(249,183,0,.4), transparent 70%); }
.wp-mock__rows { display: flex; flex-direction: column; gap: 12px; padding: 16px 6px 6px; }
.wp-mock__row { display: flex; align-items: center; gap: 12px; }
.wp-mock__ic { flex: none; width: 34px; height: 34px; border-radius: 9px; background: linear-gradient(180deg, rgba(45,106,159,.13), rgba(45,106,159,.05)); }
.wp-mock__lines { flex: 1; display: flex; flex-direction: column; gap: 6px; }
.wp-mock__lines span { height: 8px; border-radius: 4px; background: var(--wp-stone-100); }
.wp-mock__lines span:first-child { width: 55%; background: var(--wp-stone-200); }
.wp-mock__lines span:last-child { width: 80%; }
.wp-hero__badge { position: absolute; z-index: 2; right: -14px; top: 30px; display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 12px; padding: 10px 14px; box-shadow: 0 14px 30px -14px rgba(27,79,120,.4); font-size: 13.5px; font-weight: 600; color: var(--wp-stone-900); }
.wp-hero__badge .wp-ic { color: var(--wp-azure-400); }

@media (max-width: 900px) {
	.wp-hero__inner { grid-template-columns: 1fr; gap: 40px; }
	.wp-hero__media { max-width: 480px; }
}
@media (prefers-reduced-motion: reduce) {
	.wp-hero__btn { transition: none; }
}

/* ====================== Referenzen-Slider (Marquee) ====================== */
.wp-logos { padding: clamp(28px, 4vw, 48px) 0 clamp(20px, 3vw, 32px); background: #fff; overflow: hidden; }
.wp-logos__viewport {
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
}
.wp-logos__track { display: flex; align-items: center; gap: clamp(40px, 5vw, 76px); width: max-content; animation: wp-logos-scroll var(--wp-logos-speed, 40s) linear infinite; }
.wp-logos:hover .wp-logos__track { animation-play-state: paused; }
.wp-logos__item { flex: none; display: grid; place-items: center; height: 40px; }
.wp-logos__item svg,
.wp-logos__item img { height: 34px; width: auto; max-width: 180px; display: block; filter: grayscale(1); opacity: .5; transition: filter var(--wp-dur) var(--wp-ease), opacity var(--wp-dur) var(--wp-ease); }
.wp-logos__item:hover svg,
.wp-logos__item:hover img { filter: grayscale(0); opacity: 1; }

@keyframes wp-logos-scroll {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
	.wp-logos__track { animation: none; flex-wrap: wrap; justify-content: center; width: 100%; }
}

/* ====================== Problem-/Kennzahlen-Sektion ====================== */
.wp-stats { width: 100vw; margin-left: calc(50% - 50vw); background: #ffffff; padding: clamp(56px, 8vw, 96px) 0; }
.wp-stats__eyebrow { margin: 0 0 14px; font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wp-red-300); }
.wp-stats__head { max-width: 820px; margin: 0 auto; text-align: center; }
.wp-stats__cards { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; margin-top: clamp(40px, 5vw, 60px); }
.wp-pcard { flex: 1 1 300px; max-width: 380px; text-align: center; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 20px; padding: clamp(28px, 3vw, 36px); box-shadow: 0 16px 44px -26px rgba(27, 79, 120, .22); }
.wp-pcard__ic { display: block; margin-bottom: 18px; font-size: 38px; line-height: 1; color: var(--wp-azure-400); }
.wp-pcard__ic .wp-ic { width: 40px; height: 40px; }
.wp-pcard__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(18px, 1.5vw, 22px); color: var(--wp-stone-900); margin: 0 0 12px; letter-spacing: -.01em; }
.wp-pcard__text { margin: 0; font-size: 15.5px; line-height: 1.6; color: var(--wp-stone-600); }
.wp-stats__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(28px, 4vw, 42px); line-height: 1.12; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0 0 18px; }
.wp-stats__lead { font-size: clamp(15px, 1.2vw, 18px); line-height: 1.65; color: var(--wp-stone-700); margin: 0; }
.wp-stats__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px 40px; max-width: 880px; margin: clamp(44px, 6vw, 68px) auto 0; }
.wp-stat { display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; }
.wp-stat__value { font-size: clamp(40px, 5vw, 60px); font-weight: 800; line-height: 1; letter-spacing: -.02em; background: linear-gradient(120deg, var(--wp-azure-300), var(--wp-azure-500)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.wp-stat__label { font-size: 15px; color: var(--wp-stone-600); }
@media (max-width: 860px) { .wp-stats__cards { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .wp-stats__grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .wp-stat { transition: none; } }

/* ====================== Lösungs-Sektion ====================== */
.wp-solution { width: 100vw; margin-left: calc(50% - 50vw); background: linear-gradient(180deg, #ECEEF1 0%, #F4F5F7 100%); padding: clamp(56px, 8vw, 96px) 0; }
.wp-solution__head { max-width: 820px; margin: 0 auto; text-align: center; }
.wp-solution__eyebrow { margin: 0 0 14px; font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wp-success); }
.wp-solution__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(28px, 4vw, 42px); line-height: 1.12; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0 0 18px; }
.wp-solution__lead { font-size: clamp(15px, 1.2vw, 18px); line-height: 1.65; color: var(--wp-stone-700); margin: 0; }
.wp-solution__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: clamp(40px, 5vw, 60px); }
.wp-bcard { background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 18px; padding: clamp(26px, 2.6vw, 34px); box-shadow: 0 16px 40px -28px rgba(27, 79, 120, .22); transition: transform var(--wp-dur) var(--wp-ease), box-shadow var(--wp-dur) var(--wp-ease); }
.wp-bcard:hover { transform: translateY(-3px); box-shadow: 0 26px 50px -28px rgba(27, 79, 120, .3); }
.wp-bcard__ic { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; background: linear-gradient(180deg, var(--wp-azure-300), var(--wp-azure-500)); color: #fff; font-size: 22px; margin-bottom: 18px; box-shadow: 0 10px 20px -10px rgba(45, 106, 159, .6); }
.wp-bcard__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(17px, 1.4vw, 20px); color: var(--wp-stone-900); margin: 0 0 10px; letter-spacing: -.01em; }
.wp-bcard__text { margin: 0; font-size: 15px; line-height: 1.6; color: var(--wp-stone-600); }
@media (max-width: 900px) { .wp-solution__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .wp-solution__grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .wp-bcard { transition: none; } }

/* ====================== Macher / Team ====================== */
.wp-team { width: 100vw; margin-left: calc(50% - 50vw); background: var(--wp-stone-50); padding: clamp(56px, 8vw, 96px) 0; }
.wp-team__inner { display: grid; grid-template-columns: 0.92fr 1fr; gap: clamp(32px, 5vw, 72px); align-items: center; }
.wp-team__people { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.wp-person { background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 20px; padding: 30px 20px; text-align: center; box-shadow: 0 16px 44px -28px rgba(27, 79, 120, .22); }
.wp-person__photo { width: 96px; height: 96px; border-radius: 50%; object-fit: cover; display: block; margin: 0 auto 16px; background: var(--wp-stone-100); }
.wp-person__name { display: block; font-weight: 700; font-size: 16px; color: var(--wp-stone-900); }
.wp-person__role { display: block; margin-top: 5px; font-size: 13.5px; line-height: 1.45; color: var(--wp-stone-600); }
.wp-team__eyebrow { margin: 0 0 14px; font-size: 13px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wp-red-300); }
.wp-team__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(28px, 3.6vw, 44px); line-height: 1.1; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0 0 18px; }
.wp-team__accent { background: linear-gradient(100deg, var(--wp-azure-300), var(--wp-azure-500)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.wp-team__lead { font-size: clamp(15px, 1.2vw, 18px); line-height: 1.7; color: var(--wp-stone-700); margin: 0 0 26px; max-width: 560px; }
.wp-team__cta { display: inline-flex; align-items: center; gap: 10px; padding: 13px 24px; border: 1px solid var(--wp-stone-300); border-radius: 999px; font-weight: 600; font-size: 15.5px; color: var(--wp-stone-900); text-decoration: none; transition: border-color var(--wp-dur) var(--wp-ease), color var(--wp-dur) var(--wp-ease), transform var(--wp-dur) var(--wp-ease); }
.wp-team__cta:hover { border-color: var(--wp-azure-400); color: var(--wp-azure-500); }
.wp-team__cta:active { transform: scale(.98); }
.wp-team__cta i { font-size: 13px; transition: transform var(--wp-dur) var(--wp-ease); }
.wp-team__cta:hover i { transform: translateX(4px); }
@media (max-width: 860px) { .wp-team__inner { grid-template-columns: 1fr; gap: 36px; } .wp-team__people { max-width: 520px; } }
@media (max-width: 420px) { .wp-team__people { grid-template-columns: 1fr; } }

/* ====================== Blog / Insights ====================== */
.wp-blog { width: 100vw; margin-left: calc(50% - 50vw); background: #fff; padding: clamp(56px, 8vw, 96px) 0 clamp(20px, 2.5vw, 36px); }
.wp-blog__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: clamp(32px, 4vw, 48px); }
.wp-blog__badge { display: inline-block; margin-bottom: 14px; padding: 6px 14px; border-radius: 999px; background: rgba(45, 106, 159, .1); color: var(--wp-azure-500); font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.wp-blog__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(28px, 4vw, 42px); line-height: 1.1; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0 0 12px; }
.wp-blog__lead { font-size: clamp(15px, 1.2vw, 18px); color: var(--wp-stone-600); margin: 0; max-width: 560px; }
.wp-blog__all { flex: none; display: inline-flex; align-items: center; background: linear-gradient(180deg, #357AB0, var(--wp-azure-400)); color: #fff; font-weight: 600; font-size: 15px; padding: 12px 22px; border-radius: 10px; text-decoration: none; box-shadow: 0 10px 24px -12px rgba(45, 106, 159, .8); transition: background var(--wp-dur) var(--wp-ease), transform 140ms var(--wp-ease); }
.wp-blog__all:hover { background: linear-gradient(180deg, var(--wp-azure-400), var(--wp-azure-500)); transform: translateY(-2px); color: #fff; }
.wp-blog__row { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 4px 4px 16px; margin: 0 -4px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.wp-blog__row::-webkit-scrollbar { display: none; }
.wp-post { flex: 0 0 clamp(280px, 31%, 380px); scroll-snap-align: start; display: flex; flex-direction: column; text-decoration: none; }
.wp-post__media { display: block; border-radius: 16px; overflow: hidden; aspect-ratio: 16 / 11; background: var(--wp-stone-100); margin-bottom: 18px; }
.wp-post__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 400ms var(--wp-ease); }
.wp-post:hover .wp-post__media img { transform: scale(1.04); }
.wp-post__ph { display: grid; place-items: center; width: 100%; height: 100%; color: var(--wp-azure-300); }
.wp-post__ph .wp-ic { width: 46px; height: 46px; }
.wp-post__title { font-family: var(--wp-font-display); font-weight: 700; font-size: 20px; line-height: 1.25; color: var(--wp-stone-900); margin-bottom: 8px; transition: color var(--wp-dur) var(--wp-ease); }
.wp-post:hover .wp-post__title { color: var(--wp-azure-500); }
.wp-post__excerpt { font-size: 14.5px; line-height: 1.55; color: var(--wp-stone-600); margin-bottom: 14px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.wp-post__more { display: inline-flex; align-items: center; gap: 7px; font-weight: 600; font-size: 14.5px; color: var(--wp-azure-500); margin-top: auto; }
.wp-post__more i { font-size: 12px; transition: transform var(--wp-dur) var(--wp-ease); }
.wp-post:hover .wp-post__more i { transform: translate(2px, -2px); }
@media (max-width: 600px) { .wp-blog__head { flex-direction: column; align-items: flex-start; } .wp-post { flex-basis: 82%; } }
@media (prefers-reduced-motion: reduce) { .wp-post__media img, .wp-blog__all, .wp-post__more i { transition: none; } }

/* Blog-Slider: Drag-Cursor + Navigation + Pagination */
.wp-blog__row { cursor: grab; scroll-snap-type: x proximity; }
.wp-blog__row.is-grabbing { cursor: grabbing; scroll-snap-type: none; user-select: none; scroll-behavior: auto; }
.wp-blog__row.is-grabbing .wp-post__media img { transition: none; }
.wp-blog__nav { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 28px; }
.wp-blog__nav[hidden] { display: none; }
.wp-blog__dots { display: flex; align-items: center; gap: 8px; }
.wp-dot { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 999px; background: var(--wp-stone-300); cursor: pointer; transition: background var(--wp-dur) var(--wp-ease), width var(--wp-dur) var(--wp-ease); }
.wp-dot:hover { background: var(--wp-stone-500); }
.wp-dot.is-active { width: 22px; background: linear-gradient(90deg, var(--wp-azure-300), var(--wp-azure-400)); }
.wp-blog__arrows { display: flex; gap: 10px; }
.wp-blog__arrow { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--wp-stone-200); background: #fff; color: var(--wp-stone-700); font-size: 15px; cursor: pointer; transition: border-color var(--wp-dur) var(--wp-ease), color var(--wp-dur) var(--wp-ease), box-shadow var(--wp-dur) var(--wp-ease), transform 120ms var(--wp-ease); }
.wp-blog__arrow:hover { border-color: var(--wp-azure-300); color: var(--wp-azure-500); box-shadow: 0 8px 20px -12px rgba(45, 106, 159, .7); }
.wp-blog__arrow:active { transform: scale(.93); }
.wp-blog__arrow:disabled { opacity: .35; cursor: default; box-shadow: none; border-color: var(--wp-stone-200); color: var(--wp-stone-700); }
@media (prefers-reduced-motion: reduce) { .wp-dot, .wp-blog__arrow { transition: none; } }

/* ====================== Abschluss-CTA (Gradient-Pille) ====================== */
.wp-ctaf { width: 100vw; margin-left: calc(50% - 50vw); background: #fff; padding: clamp(48px, 7vw, 104px) 0 clamp(40px, 6vw, 80px); }
.wp-ctaf__panel { position: relative; overflow: hidden; text-align: center; border-radius: 28px; padding: clamp(48px, 7vw, 92px) clamp(24px, 5vw, 72px); background: linear-gradient(120deg, rgba(13, 26, 43, .34) 0%, rgba(13, 26, 43, 0) 58%), linear-gradient(118deg, var(--wp-azure-500) 0%, var(--wp-azure-400) 24%, var(--wp-red-300) 64%, var(--wp-gold-300) 100%); box-shadow: 0 40px 90px -45px rgba(27, 79, 120, .55); }
.wp-ctaf__glow { position: absolute; top: -36%; left: -6%; width: 560px; height: 560px; background: radial-gradient(circle at center, rgba(255, 255, 255, .16), transparent 66%); pointer-events: none; }
.wp-ctaf__title { position: relative; font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(28px, 4.4vw, 46px); line-height: 1.12; letter-spacing: -.02em; color: #fff; margin: 0 0 16px; text-shadow: 0 1px 2px rgba(0, 0, 0, .18); }
.wp-ctaf__title span { color: rgba(255, 255, 255, .76); }
.wp-ctaf__lead { position: relative; font-size: clamp(16px, 1.4vw, 19px); color: rgba(255, 255, 255, .9); margin: 0 auto 34px; max-width: 580px; text-shadow: 0 1px 2px rgba(0, 0, 0, .16); }
.wp-ctaf__actions { position: relative; display: flex; flex-wrap: wrap; gap: 16px; justify-content: center; align-items: center; }
.wp-ctaf__btn { display: inline-flex; align-items: center; justify-content: center; padding: 17px 44px; border-radius: 999px; font-weight: 700; font-size: 16.5px; line-height: 1; color: var(--wp-azure-500); text-decoration: none; background: #fff; box-shadow: 0 18px 44px -16px rgba(0, 0, 0, .5); transition: transform 160ms var(--wp-ease), box-shadow .3s var(--wp-ease); }
.wp-ctaf__btn:hover { transform: translateY(-2px); color: var(--wp-azure-500); box-shadow: 0 24px 54px -16px rgba(0, 0, 0, .55); }
.wp-ctaf__btn:active { transform: translateY(0); }
.wp-ctaf__ghost { display: inline-flex; align-items: center; padding: 15px 30px; border-radius: 999px; font-weight: 600; font-size: 15.5px; color: #fff; text-decoration: none; border: 1px solid rgba(255, 255, 255, .28); background: rgba(255, 255, 255, .04); transition: background var(--wp-dur) var(--wp-ease), border-color var(--wp-dur) var(--wp-ease); }
.wp-ctaf__ghost:hover { background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .5); color: #fff; }
.wp-ctaf__note { position: relative; display: inline-flex; align-items: center; gap: 8px; width: 100%; justify-content: center; margin: 28px 0 0; font-size: 14px; color: rgba(255, 255, 255, .8); }
.wp-ctaf__note i { color: #fff; }
@media (prefers-reduced-motion: reduce) { .wp-ctaf__btn { transition: none; } }

/* ====================== FAQ (Akkordeon) ====================== */
.wp-faq { width: 100vw; margin-left: calc(50% - 50vw); background: var(--wp-stone-50); padding: clamp(56px, 8vw, 96px) 0; }
.wp-faq__inner { display: grid; grid-template-columns: 0.82fr 1.18fr; gap: clamp(32px, 5vw, 72px); align-items: start; }
.wp-faq__eyebrow { display: inline-block; margin-bottom: 14px; padding: 6px 14px; border-radius: 999px; background: rgba(45, 106, 159, .1); color: var(--wp-azure-500); font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.wp-faq__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(28px, 3.6vw, 40px); line-height: 1.12; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0 0 14px; }
.wp-faq__lead { font-size: clamp(15px, 1.2vw, 17px); color: var(--wp-stone-600); margin: 0 0 24px; max-width: 380px; }
.wp-faq__contact { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; font-size: 15px; color: var(--wp-azure-500); text-decoration: none; }
.wp-faq__contact i { font-size: 12px; transition: transform var(--wp-dur) var(--wp-ease); }
.wp-faq__contact:hover i { transform: translateX(3px); }
.wp-faq__list { display: flex; flex-direction: column; gap: 12px; }
.wp-faq__item { background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 14px; overflow: hidden; transition: border-color var(--wp-dur) var(--wp-ease), box-shadow var(--wp-dur) var(--wp-ease); }
.wp-faq__item[open] { border-color: var(--wp-azure-300); box-shadow: 0 12px 30px -18px rgba(45, 106, 159, .5); }
.wp-faq__q { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 20px; font-family: var(--wp-font-display); font-weight: 600; font-size: 16px; color: var(--wp-stone-900); transition: color var(--wp-dur) var(--wp-ease); }
.wp-faq__q::-webkit-details-marker { display: none; }
.wp-faq__q:hover { color: var(--wp-azure-500); }
.wp-faq__item[open] .wp-faq__q { color: var(--wp-azure-500); }
.wp-faq__q i { flex: none; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: var(--wp-stone-100); color: var(--wp-stone-600); font-size: 12px; transition: transform var(--wp-dur) var(--wp-ease), background var(--wp-dur) var(--wp-ease), color var(--wp-dur) var(--wp-ease); }
.wp-faq__item[open] .wp-faq__q i { transform: rotate(180deg); background: linear-gradient(180deg, var(--wp-azure-300), var(--wp-azure-400)); color: #fff; }
.wp-faq__a { padding: 0 20px 18px; color: var(--wp-stone-600); font-size: 15px; line-height: 1.65; }
.wp-faq__a p { margin: 0; }
.wp-faq__item[open] .wp-faq__a { animation: wp-faq-in .26s var(--wp-ease); }
@keyframes wp-faq-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 860px) { .wp-faq__inner { grid-template-columns: 1fr; gap: 32px; } .wp-faq__lead { max-width: none; } }
@media (prefers-reduced-motion: reduce) { .wp-faq__item[open] .wp-faq__a { animation: none; } .wp-faq__contact i, .wp-faq__q i { transition: none; } }

/* ====================== Kennzahlen (KPIs, eigene Sektion, weiß) ====================== */
.wp-kpis { width: 100vw; margin-left: calc(50% - 50vw); background: #fff; padding: clamp(40px, 6vw, 76px) 0; }
.wp-kpis__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px 40px; max-width: 920px; margin: 0 auto; }
@media (max-width: 760px) { .wp-kpis__grid { grid-template-columns: 1fr; gap: 32px; } }

/* ====================== Preise (Pricing-Seite) ====================== */
.page-template-page-preise .site-main,
.page-preise .site-main,
.page-feature .site-main { padding-top: 0 !important; overflow-x: clip; }
.page-feature .site-main > .container { max-width: none; padding: 0; }
.wp-pricing { width: 100vw; margin-left: calc(50% - 50vw); background: var(--wp-stone-50); padding: clamp(64px, 9vw, 120px) 0 clamp(56px, 8vw, 104px); }
.wp-pricing__head { text-align: center; max-width: 680px; margin: 0 auto clamp(40px, 5vw, 56px); }
.wp-pricing__eyebrow { display: inline-block; margin-bottom: 14px; padding: 6px 14px; border-radius: 999px; background: rgba(45, 106, 159, .1); color: var(--wp-azure-500); font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.wp-pricing__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(30px, 4.4vw, 46px); line-height: 1.1; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0 0 14px; }
.wp-pricing__lead { font-size: clamp(15px, 1.3vw, 18px); color: var(--wp-stone-600); margin: 0; }
.wp-pricing__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: start; max-width: 1100px; margin: 0 auto; }
.wp-plan { position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 20px; padding: 30px 26px; box-shadow: 0 16px 44px -28px rgba(27, 79, 120, .22); transition: transform var(--wp-dur) var(--wp-ease), box-shadow var(--wp-dur) var(--wp-ease); }
.wp-plan:hover { transform: translateY(-4px); box-shadow: 0 28px 60px -30px rgba(27, 79, 120, .35); }
.wp-plan.is-featured { border: 2px solid transparent; background: linear-gradient(#fff, #fff) padding-box, linear-gradient(140deg, var(--wp-azure-300), var(--wp-azure-500)) border-box; box-shadow: 0 30px 70px -28px rgba(27, 79, 120, .5); }
@media (min-width: 861px) { .wp-plan.is-featured { transform: scale(1.04); } .wp-plan.is-featured:hover { transform: scale(1.04) translateY(-4px); } }
.wp-plan__badge { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); padding: 5px 14px; border-radius: 999px; background: linear-gradient(90deg, var(--wp-azure-400), var(--wp-azure-500)); color: #fff; font-size: 12px; font-weight: 700; letter-spacing: .04em; box-shadow: 0 8px 20px -8px rgba(45, 106, 159, .7); }
.wp-plan__name { font-family: var(--wp-font-display); font-weight: 700; font-size: 22px; color: var(--wp-stone-900); margin: 0 0 4px; }
.wp-plan__for { font-size: 14px; color: var(--wp-stone-500); margin: 0 0 18px; }
.wp-plan__price { margin: 0 0 20px; display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.wp-plan__amount { font-family: var(--wp-font-display); font-weight: 800; font-size: 36px; letter-spacing: -.02em; color: var(--wp-stone-900); font-variant-numeric: tabular-nums; }
.wp-plan__per { font-size: 13.5px; color: var(--wp-stone-500); }
.wp-plan__cta { display: inline-flex; align-items: center; justify-content: center; width: 100%; padding: 13px 20px; border-radius: 12px; font-weight: 600; font-size: 15.5px; text-decoration: none; border: 1px solid var(--wp-azure-300); color: var(--wp-azure-500); background: #fff; transition: background var(--wp-dur) var(--wp-ease), color var(--wp-dur) var(--wp-ease), border-color var(--wp-dur) var(--wp-ease), transform 120ms var(--wp-ease); }
.wp-plan__cta:hover { background: rgba(45, 106, 159, .06); color: var(--wp-azure-500); border-color: var(--wp-azure-400); }
.wp-plan__cta:active { transform: scale(.98); }
.wp-plan.is-featured .wp-plan__cta { border-color: transparent; color: #fff; background: linear-gradient(180deg, #357AB0, var(--wp-azure-400)); box-shadow: 0 14px 30px -14px rgba(45, 106, 159, .8); }
.wp-plan.is-featured .wp-plan__cta:hover { background: linear-gradient(180deg, var(--wp-azure-400), var(--wp-azure-500)); color: #fff; }
.wp-plan__features { list-style: none; margin: 22px 0 0; padding: 22px 0 0; border-top: 1px solid var(--wp-stone-200); display: flex; flex-direction: column; gap: 11px; }
.wp-plan__features li { display: flex; align-items: flex-start; gap: 10px; font-size: 14.5px; line-height: 1.5; color: var(--wp-stone-700); }
.wp-plan__features i { flex: none; margin-top: 2px; width: 18px; height: 18px; display: grid; place-items: center; border-radius: 50%; background: rgba(46, 125, 82, .12); color: var(--wp-success); font-size: 9px; }
.wp-pricing__note { text-align: center; font-size: 13.5px; color: var(--wp-stone-500); max-width: 640px; margin: clamp(28px, 3vw, 40px) auto 0; }
.wp-pricing__addons { max-width: 1000px; margin: clamp(56px, 7vw, 88px) auto 0; }
.wp-pricing__addons-head { text-align: center; margin-bottom: clamp(28px, 3vw, 40px); }
.wp-pricing__addons-title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(22px, 3vw, 32px); line-height: 1.15; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 12px 0 0; }
.wp-addons__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.wp-addon { display: flex; align-items: center; gap: 16px; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 16px; padding: 20px 22px; box-shadow: 0 12px 34px -26px rgba(27, 79, 120, .22); transition: transform var(--wp-dur) var(--wp-ease), box-shadow var(--wp-dur) var(--wp-ease); }
.wp-addon:hover { transform: translateY(-3px); box-shadow: 0 22px 48px -30px rgba(27, 79, 120, .4); }
.wp-addon__ic { flex: none; width: 48px; height: 48px; display: grid; place-items: center; border-radius: 13px; background: linear-gradient(180deg, rgba(45, 106, 159, .13), rgba(45, 106, 159, .05)); color: var(--wp-azure-400); font-size: 19px; }
.wp-addon__body { flex: 1 1 auto; min-width: 0; }
.wp-addon__name { font-family: var(--wp-font-display); font-weight: 600; font-size: 16px; color: var(--wp-stone-900); margin: 0 0 3px; }
.wp-addon__desc { font-size: 13.5px; line-height: 1.5; color: var(--wp-stone-600); margin: 0; }
.wp-addon__price { flex: none; font-weight: 700; font-size: 15px; color: var(--wp-azure-500); white-space: nowrap; font-variant-numeric: tabular-nums; }
@media (max-width: 860px) { .wp-pricing__grid { grid-template-columns: 1fr; max-width: 440px; } .wp-plan.is-featured { transform: none; } .wp-addons__grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .wp-plan, .wp-addon, .wp-plan__cta { transition: none; } .wp-plan:hover, .wp-addon:hover, .wp-plan.is-featured:hover { transform: none; } }

/* ====================== Inhaltsseiten (Seiten/Beiträge, ohne Sidebar) ====================== */
.wp-article { margin-top: clamp(8px, 2vw, 28px); }
.wp-article .entry-header { margin-bottom: clamp(18px, 2.4vw, 28px); }
.wp-article .entry-title { font-family: var(--wp-font-display); font-weight: 800; font-size: clamp(30px, 4.2vw, 48px); line-height: 1.08; letter-spacing: -.025em; color: var(--wp-stone-900); margin: 0 0 10px; }
.wp-article .entry-content { color: var(--wp-stone-700); font-size: clamp(16px, 1.1vw, 17.5px); line-height: 1.75; }
.wp-article .entry-content > * + * { margin-top: 1.1em; }
.wp-article .entry-content h2 { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(22px, 2.6vw, 31px); line-height: 1.2; letter-spacing: -.015em; color: var(--wp-stone-900); margin-top: 1.7em; margin-bottom: .15em; }
.wp-article .entry-content h3 { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(18px, 2vw, 22px); line-height: 1.25; color: var(--wp-stone-900); margin-top: 1.4em; margin-bottom: .1em; }
.wp-article .entry-content p { margin: 0; }
.wp-article .entry-content ul, .wp-article .entry-content ol { padding-left: 1.35em; margin: 0; }
.wp-article .entry-content li { margin: .45em 0; padding-left: .2em; }
.wp-article .entry-content li::marker { color: var(--wp-azure-400); }
.wp-article .entry-content a { color: var(--wp-azure-400); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; transition: color var(--wp-dur) var(--wp-ease); }
.wp-article .entry-content a:hover { color: var(--wp-azure-500); }
.wp-article .entry-content strong { color: var(--wp-stone-900); font-weight: 700; }
.wp-article .entry-content img { max-width: 100%; height: auto; border-radius: 14px; }
.wp-article .entry-content blockquote { margin: 1.4em 0; padding: .3em 1.2em; border-left: 3px solid var(--wp-azure-300); color: var(--wp-stone-600); font-style: italic; }
.wp-article .entry-content hr { border: 0; border-top: 1px solid var(--wp-stone-200); margin: 2em 0; }
.wp-article .entry-footer { border-top: 1px solid var(--wp-stone-200); padding-top: 16px; }

/* ====================== Funktionsseiten ====================== */
/* Hero */
.wp-feature-hero { position: relative; isolation: isolate; overflow: hidden; width: 100vw; margin-left: calc(50% - 50vw); background: linear-gradient(180deg, #fbfcfd 0%, #fff 60%); padding: clamp(40px, 6vw, 88px) 0 clamp(56px, 7vw, 104px); }
.wp-feature-hero__glow { position: absolute; top: -30%; right: -10%; width: min(720px, 70vw); height: 620px; z-index: -1; pointer-events: none; background: radial-gradient(ellipse at center, rgba(45,106,159,.12), transparent 68%); }
.wp-feature-hero__inner { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(32px, 5vw, 72px); align-items: center; }
.wp-feature-hero__eyebrow { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 16px; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--wp-azure-400); }
.wp-feature-hero__eyebrow::before { content: ""; width: 22px; height: 2px; border-radius: 2px; background: var(--wp-azure-400); }
.wp-feature-hero__title { font-family: var(--wp-font-display); font-weight: 800; font-size: clamp(32px, 4.6vw, 52px); line-height: 1.06; letter-spacing: -.025em; color: var(--wp-stone-900); margin: 0 0 18px; }
.wp-feature-hero__accent { background: linear-gradient(100deg, var(--wp-azure-500), var(--wp-azure-300) 50%, var(--wp-red-300)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; }
.wp-feature-hero__lead { font-size: clamp(16px, 1.3vw, 19px); line-height: 1.6; color: var(--wp-stone-700); max-width: 560px; margin: 0 0 24px; }
.wp-feature-hero__checks { list-style: none; margin: 0 0 28px; padding: 0; display: grid; gap: 11px; }
.wp-feature-hero__checks li { display: flex; align-items: center; gap: 11px; font-size: 15.5px; color: var(--wp-stone-800); }
.wp-feature-hero__checks i { color: var(--wp-success); font-size: 17px; }
.wp-feature-hero__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 14px; }
.wp-feature-hero__note { margin: 0; font-size: 13.5px; color: var(--wp-stone-500); }
.wp-feature-hero__media { position: relative; }
.wp-feature-hero__media::before { content: ""; position: absolute; inset: auto -6% -8% 6%; height: 70%; border-radius: 28px; z-index: -1; background: linear-gradient(140deg, rgba(45,106,159,.22), rgba(249,183,0,.14)); filter: blur(34px); }
.wp-feature-hero__img { display: block; width: 100%; height: auto; border-radius: 20px; border: 1px solid var(--wp-stone-200); box-shadow: 0 36px 70px -28px rgba(27,79,120,.4); }
.wp-feature-hero__badge { position: absolute; z-index: 2; left: -14px; top: 26px; display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 12px; padding: 10px 14px; box-shadow: 0 14px 30px -14px rgba(27,79,120,.4); font-size: 13.5px; font-weight: 600; color: var(--wp-stone-900); }
.wp-feature-hero__badge i { color: var(--wp-gold-300); }
@media (max-width: 900px) { .wp-feature-hero__inner { grid-template-columns: 1fr; gap: 36px; } .wp-feature-hero__media { max-width: 520px; } }

/* Abschnitts-Kopf */
.wp-feature-head { padding: clamp(48px, 7vw, 88px) 0 0; text-align: center; }
.wp-feature-head .wp-container { max-width: 720px; }
.wp-feature-head__eyebrow { display: inline-block; margin-bottom: 14px; padding: 6px 14px; border-radius: 999px; background: rgba(45,106,159,.1); color: var(--wp-azure-500); font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.wp-feature-head__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(26px, 3.6vw, 40px); line-height: 1.12; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0; }
.wp-feature-head__lead { font-size: clamp(15px, 1.3vw, 18px); line-height: 1.6; color: var(--wp-stone-600); margin: 14px auto 0; max-width: 620px; }

/* Feature-Row (Text + Bild, abwechselnd) */
.wp-feature-row { width: 100vw; margin-left: calc(50% - 50vw); padding: clamp(44px, 6vw, 88px) 0; }
.wp-feature-row.is-tint { background: var(--wp-stone-50); }
.wp-feature-row__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 6vw, 80px); align-items: center; }
.wp-feature-row.is-imgleft .wp-feature-row__media { order: -1; }
.wp-feature-row__eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px; padding: 6px 14px; border-radius: 999px; background: rgba(45,106,159,.1); color: var(--wp-azure-500); font-size: 12.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.wp-feature-row__eyebrow i { color: var(--wp-azure-400); font-size: 14px; }
.wp-feature-row__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(24px, 3.2vw, 36px); line-height: 1.15; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0 0 16px; }
.wp-feature-row__text { font-size: clamp(15.5px, 1.2vw, 17.5px); line-height: 1.7; color: var(--wp-stone-600); }
.wp-feature-row__text p { margin: 0 0 1em; }
.wp-feature-row__text p:last-child { margin-bottom: 0; }
.wp-feature-row__checks { list-style: none; margin: 22px 0 0; padding: 0; display: grid; gap: 12px; }
.wp-feature-row__checks li { display: flex; align-items: flex-start; gap: 11px; font-size: 15.5px; line-height: 1.5; color: var(--wp-stone-800); }
.wp-feature-row__checks i { flex: none; margin-top: 3px; width: 20px; height: 20px; display: grid; place-items: center; border-radius: 50%; background: rgba(46,125,82,.12); color: var(--wp-success); font-size: 10px; }
.wp-feature-row__cta { display: inline-flex; align-items: center; gap: 8px; margin-top: 22px; font-weight: 600; font-size: 15.5px; color: var(--wp-azure-500); text-decoration: none; transition: gap var(--wp-dur) var(--wp-ease), color var(--wp-dur) var(--wp-ease); }
.wp-feature-row__cta:hover { gap: 12px; color: var(--wp-azure-400); }
.wp-feature-row__media { position: relative; }
.wp-feature-row__media::before { content: ""; position: absolute; inset: auto -5% -8% 5%; height: 66%; border-radius: 26px; z-index: 0; background: linear-gradient(140deg, rgba(45,106,159,.18), rgba(249,183,0,.12)); filter: blur(34px); }
.wp-feature-row__media img { position: relative; z-index: 1; width: 100%; height: auto; border-radius: 20px; border: 1px solid var(--wp-stone-200); box-shadow: 0 30px 64px -32px rgba(27,79,120,.45); display: block; }
@media (max-width: 900px) { .wp-feature-row__grid { grid-template-columns: 1fr; gap: 30px; } .wp-feature-row.is-imgleft .wp-feature-row__media { order: 0; } }

/* Weitere Funktionen */
.wp-feature-related { width: 100vw; margin-left: calc(50% - 50vw); background: var(--wp-stone-50); padding: clamp(56px, 7vw, 96px) 0; }
.wp-feature-related__head { text-align: center; max-width: 680px; margin: 0 auto clamp(32px, 4vw, 48px); }
.wp-feature-related__eyebrow { display: inline-block; margin-bottom: 12px; padding: 6px 14px; border-radius: 999px; background: rgba(45,106,159,.1); color: var(--wp-azure-500); font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.wp-feature-related__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(24px, 3.2vw, 34px); line-height: 1.15; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0; }
.wp-feature-related__lead { font-size: clamp(15px, 1.3vw, 17px); color: var(--wp-stone-600); margin: 12px auto 0; max-width: 600px; }
.wp-feature-related__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; max-width: 1100px; margin: 0 auto; }
.wp-feature-rcard { display: flex; flex-direction: column; align-items: flex-start; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 18px; padding: 26px 24px; box-shadow: 0 16px 40px -28px rgba(27,79,120,.22); text-decoration: none; transition: transform var(--wp-dur) var(--wp-ease), box-shadow var(--wp-dur) var(--wp-ease), border-color var(--wp-dur) var(--wp-ease); }
a.wp-feature-rcard:hover { transform: translateY(-4px); box-shadow: 0 28px 60px -30px rgba(27,79,120,.4); border-color: var(--wp-azure-300); }
.wp-feature-rcard__ic { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 13px; background: linear-gradient(180deg, rgba(45,106,159,.13), rgba(45,106,159,.05)); color: var(--wp-azure-400); font-size: 20px; margin-bottom: 16px; }
.wp-feature-rcard__title { font-family: var(--wp-font-display); font-weight: 700; font-size: 18px; color: var(--wp-stone-900); margin: 0 0 8px; }
.wp-feature-rcard__text { font-size: 14.5px; line-height: 1.55; color: var(--wp-stone-600); margin: 0 0 14px; }
.wp-feature-rcard__more { margin-top: auto; display: inline-flex; align-items: center; gap: 7px; font-size: 14px; font-weight: 600; color: var(--wp-azure-500); transition: gap var(--wp-dur) var(--wp-ease); }
a.wp-feature-rcard:hover .wp-feature-rcard__more { gap: 11px; }
@media (max-width: 860px) { .wp-feature-related__grid { grid-template-columns: 1fr; max-width: 460px; } }

/* Gemeinsamer Abschnitts-Kopf */
.wp-feature-shead { text-align: center; max-width: 680px; margin: 0 auto clamp(28px, 4vw, 44px); }
.wp-feature-shead__eyebrow { display: inline-block; margin-bottom: 12px; padding: 6px 14px; border-radius: 999px; background: rgba(45,106,159,.1); color: var(--wp-azure-500); font-size: 12.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.wp-feature-shead__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(24px, 3.4vw, 36px); line-height: 1.14; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 0; }
.wp-feature-shead__lead { font-size: clamp(15px, 1.3vw, 17.5px); line-height: 1.6; color: var(--wp-stone-600); margin: 12px auto 0; max-width: 620px; }

/* Anker-Offset unter Header + Sub-Nav */
.wp-feature-row[id], .wp-feature-head[id] { scroll-margin-top: 130px; }

/* Sticky Sub-Navigation */
/* top = gestauchte Header-Höhe (64px), 1px Überlappung schließt den Spalt */
.wp-feature-subnav { position: sticky; top: 63px; z-index: 900; width: 100vw; margin-left: calc(50% - 50vw); background: rgba(255,255,255,.85); backdrop-filter: saturate(180%) blur(12px); -webkit-backdrop-filter: saturate(180%) blur(12px); border-bottom: 1px solid var(--wp-stone-200); }
.wp-feature-subnav__inner { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
.wp-feature-subnav__inner::-webkit-scrollbar { display: none; }
.wp-feature-subnav__link { position: relative; white-space: nowrap; padding: 15px 14px; font-size: 14.5px; font-weight: 600; color: var(--wp-stone-600); text-decoration: none; transition: color var(--wp-dur) var(--wp-ease); }
.wp-feature-subnav__link::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 0; height: 2px; border-radius: 2px; background: var(--wp-azure-400); transform: scaleX(0); transform-origin: left; transition: transform 200ms var(--wp-ease); }
.wp-feature-subnav__link:hover { color: var(--wp-stone-900); }
.wp-feature-subnav__link.is-active { color: var(--wp-azure-500); }
.wp-feature-subnav__link.is-active::after { transform: scaleX(1); }

/* Proof / Kennzahlen-Band */
.wp-feature-proof { width: 100vw; margin-left: calc(50% - 50vw); padding: clamp(36px, 4.5vw, 60px) 0; background: linear-gradient(180deg, var(--wp-azure-500), #16263c); }
.wp-feature-proof__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: clamp(20px, 4vw, 48px); text-align: center; }
.wp-feature-proof__num { font-family: var(--wp-font-display); font-weight: 800; font-size: clamp(30px, 4vw, 48px); line-height: 1; letter-spacing: -.02em; color: #fff; font-variant-numeric: tabular-nums; }
.wp-feature-proof__pre, .wp-feature-proof__suf { font-size: .58em; font-weight: 700; opacity: .8; }
.wp-feature-proof__pre { margin-right: .04em; }
.wp-feature-proof__suf { margin-left: .04em; }
.wp-feature-proof__label { margin-top: 8px; font-size: 14.5px; color: rgba(255,255,255,.75); }

/* Vergleich Ohne / Mit */
.wp-feature-compare { padding: clamp(48px, 7vw, 96px) 0; }
.wp-feature-compare__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; max-width: 980px; margin: 0 auto; }
.wp-feature-compare__col { background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 18px; padding: 26px 26px 30px; box-shadow: 0 16px 40px -28px rgba(27,79,120,.22); }
.wp-feature-compare__col.is-good { border-color: rgba(46,125,82,.35); box-shadow: 0 24px 54px -30px rgba(46,125,82,.4); }
.wp-feature-compare__ctitle { display: flex; align-items: center; gap: 9px; font-family: var(--wp-font-display); font-weight: 700; font-size: 18px; color: var(--wp-stone-900); margin: 0 0 16px; padding-bottom: 14px; border-bottom: 1px solid var(--wp-stone-200); }
.wp-feature-compare__col.is-bad .wp-feature-compare__ctitle i { color: var(--wp-red-300); }
.wp-feature-compare__col.is-good .wp-feature-compare__ctitle i { color: var(--wp-success); }
.wp-feature-compare__col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.wp-feature-compare__col li { display: flex; align-items: flex-start; gap: 10px; font-size: 15px; line-height: 1.5; color: var(--wp-stone-700); }
.wp-feature-compare__col.is-bad li i { color: var(--wp-red-300); margin-top: 3px; }
.wp-feature-compare__col.is-good li i { color: var(--wp-success); margin-top: 3px; }
@media (max-width: 720px) { .wp-feature-compare__grid { grid-template-columns: 1fr; } }

/* Schritte */
.wp-feature-steps { padding: clamp(48px, 7vw, 96px) 0; }
.wp-feature-steps__list { list-style: none; margin: 0 auto; padding: 0; max-width: 760px; display: grid; gap: 14px; }
.wp-feature-steps__item { display: flex; gap: 18px; align-items: flex-start; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 16px; padding: 22px 24px; box-shadow: 0 14px 36px -28px rgba(27,79,120,.22); }
.wp-feature-steps__num { flex: none; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 11px; font-family: var(--wp-font-display); font-weight: 800; font-size: 18px; color: #fff; background: linear-gradient(180deg, var(--wp-azure-300), var(--wp-azure-500)); }
.wp-feature-steps__title { font-family: var(--wp-font-display); font-weight: 700; font-size: 18px; color: var(--wp-stone-900); margin: 4px 0; }
.wp-feature-steps__text { font-size: 15px; line-height: 1.6; color: var(--wp-stone-600); margin: 0; }

/* Integrationen */
.wp-feature-integrations { padding: clamp(48px, 7vw, 88px) 0; }
.wp-feature-integrations__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; max-width: 980px; margin: 0 auto; }
.wp-feature-int { display: flex; align-items: center; gap: 12px; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 14px; padding: 16px 18px; box-shadow: 0 12px 30px -26px rgba(27,79,120,.22); }
.wp-feature-int__ic { flex: none; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 11px; background: linear-gradient(180deg, rgba(45,106,159,.13), rgba(45,106,159,.05)); color: var(--wp-azure-400); font-size: 18px; }
.wp-feature-int__name { font-weight: 600; font-size: 15px; color: var(--wp-stone-800); }

/* Testimonial */
.wp-feature-quote { padding: clamp(48px, 7vw, 96px) 0; }
.wp-feature-quote__card { position: relative; max-width: 820px; margin: 0 auto; text-align: center; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 22px; padding: clamp(32px, 5vw, 56px); box-shadow: 0 30px 70px -36px rgba(27,79,120,.4); }
.wp-feature-quote__mark { font-size: 34px; color: var(--wp-azure-300); margin-bottom: 14px; }
.wp-feature-quote__text { font-family: var(--wp-font-display); font-weight: 600; font-size: clamp(20px, 2.4vw, 28px); line-height: 1.4; letter-spacing: -.01em; color: var(--wp-stone-900); margin: 0 0 24px; }
.wp-feature-quote__by { display: inline-flex; align-items: center; gap: 14px; }
.wp-feature-quote__avatar { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; border: 2px solid #fff; box-shadow: 0 6px 16px -8px rgba(27,79,120,.5); }
.wp-feature-quote__meta { text-align: left; display: flex; flex-direction: column; }
.wp-feature-quote__meta strong { font-size: 15.5px; color: var(--wp-stone-900); }
.wp-feature-quote__meta span { font-size: 13.5px; color: var(--wp-stone-500); }

/* Galerie / Tabs */
.wp-feature-gallery { padding: clamp(48px, 7vw, 96px) 0; }
.wp-feature-gallery__box { max-width: 1000px; margin: 0 auto; }
.wp-feature-gallery__tabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-bottom: 22px; }
.wp-feature-gallery__tab { padding: 10px 18px; border-radius: 999px; border: 1px solid var(--wp-stone-200); background: #fff; color: var(--wp-stone-600); font-family: inherit; font-weight: 600; font-size: 14.5px; cursor: pointer; transition: color var(--wp-dur) var(--wp-ease), background var(--wp-dur) var(--wp-ease), border-color var(--wp-dur) var(--wp-ease), transform 120ms var(--wp-ease); }
.wp-feature-gallery__tab:hover { border-color: var(--wp-azure-300); color: var(--wp-azure-500); }
.wp-feature-gallery__tab:active { transform: scale(.97); }
.wp-feature-gallery__tab.is-active { background: linear-gradient(180deg, #357AB0, var(--wp-azure-400)); border-color: transparent; color: #fff; box-shadow: 0 12px 26px -12px rgba(45,106,159,.7); }
.wp-feature-gallery__stage { position: relative; border-radius: 20px; overflow: hidden; border: 1px solid var(--wp-stone-200); box-shadow: 0 36px 70px -32px rgba(27,79,120,.45); }
.wp-feature-gallery__img { display: none; width: 100%; height: auto; }
.wp-feature-gallery__img.is-active { display: block; animation: wpGalFade 320ms var(--wp-ease); }
@keyframes wpGalFade { from { opacity: 0; } to { opacity: 1; } }

/* Band-Hintergründe für Rhythmus (hell / getönt / dunkel) */
.wp-feat-band.is-tint { background: var(--wp-stone-50); }
.wp-feat-band.is-dark { background: linear-gradient(180deg, var(--wp-azure-500), #16263c); }
.wp-feat-band.is-dark .wp-feature-shead__eyebrow { background: rgba(255,255,255,.12); color: #fff; }
.wp-feat-band.is-dark .wp-feature-shead__title { color: #fff; }
.wp-feat-band.is-dark .wp-feature-shead__lead { color: rgba(255,255,255,.75); }

/* Feature-Karten (kompaktes Icon-Grid) */
.wp-feature-cards { padding: clamp(48px, 7vw, 96px) 0; }
.wp-feature-cards__grid { display: grid; gap: 20px; max-width: 1120px; margin: 0 auto; }
.wp-feature-cards__grid[data-cols="2"] { grid-template-columns: repeat(2, 1fr); }
.wp-feature-cards__grid[data-cols="3"] { grid-template-columns: repeat(3, 1fr); }
.wp-feature-cards__grid[data-cols="4"] { grid-template-columns: repeat(4, 1fr); }
.wp-fcard { background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 18px; padding: 28px 26px; box-shadow: 0 16px 40px -28px rgba(27,79,120,.22); transition: transform var(--wp-dur) var(--wp-ease), box-shadow var(--wp-dur) var(--wp-ease); }
.wp-fcard:hover { transform: translateY(-4px); box-shadow: 0 28px 60px -30px rgba(27,79,120,.4); }
.wp-fcard__ic { display: inline-grid; place-items: center; width: 50px; height: 50px; border-radius: 14px; background: linear-gradient(180deg, rgba(45,106,159,.13), rgba(45,106,159,.05)); color: var(--wp-azure-400); font-size: 21px; margin-bottom: 16px; }
.wp-fcard__title { font-family: var(--wp-font-display); font-weight: 700; font-size: 18px; color: var(--wp-stone-900); margin: 0 0 8px; }
.wp-fcard__text { font-size: 14.5px; line-height: 1.6; color: var(--wp-stone-600); margin: 0; }
.wp-feat-band.is-dark .wp-fcard { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.12); box-shadow: none; }
.wp-feat-band.is-dark .wp-fcard__title { color: #fff; }
.wp-feat-band.is-dark .wp-fcard__text { color: rgba(255,255,255,.72); }
.wp-feat-band.is-dark .wp-fcard__ic { background: rgba(255,255,255,.1); color: #fff; }
@media (max-width: 900px) { .wp-feature-cards__grid[data-cols="3"], .wp-feature-cards__grid[data-cols="4"] { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .wp-feature-cards__grid { grid-template-columns: 1fr !important; } }

/* ====================== Scroll-Reveal (Eintritt in den Viewport) ====================== */
/* Nur mit aktivem JS verstecken (sonst bleiben Inhalte ohne JS unsichtbar). */
@media (prefers-reduced-motion: no-preference) {
	.wp-js .reveal { opacity: 0; transform: translateY(22px); transition: opacity 620ms var(--wp-ease), transform 620ms var(--wp-ease); transition-delay: var(--reveal-delay, 0ms); }
	.wp-js .reveal.is-inview { opacity: 1; transform: none; }

	/* Container, dessen Kinder gestaffelt erscheinen */
	.wp-js .reveal-group > * { opacity: 0; transform: translateY(22px); transition: opacity 560ms var(--wp-ease), transform 560ms var(--wp-ease); }
	.wp-js .reveal-group.is-inview > * { opacity: 1; transform: none; }
	.wp-js .reveal-group.is-inview > *:nth-child(1) { transition-delay: 0ms; }
	.wp-js .reveal-group.is-inview > *:nth-child(2) { transition-delay: 70ms; }
	.wp-js .reveal-group.is-inview > *:nth-child(3) { transition-delay: 140ms; }
	.wp-js .reveal-group.is-inview > *:nth-child(4) { transition-delay: 210ms; }
	.wp-js .reveal-group.is-inview > *:nth-child(5) { transition-delay: 280ms; }
	.wp-js .reveal-group.is-inview > *:nth-child(6) { transition-delay: 350ms; }
}

/* ====================== Preise: Intro / Hero (Text + Bild) ====================== */
.wp-pricing-intro { position: relative; isolation: isolate; overflow: hidden; width: 100vw; margin-left: calc(50% - 50vw);
		/* überwiegend weiß, nur ein kleiner Verlauf oben */
		background: linear-gradient(180deg, #fbfcfd 0%, #fff 32%); padding: clamp(36px, 5vw, 72px) 0 clamp(40px, 4.5vw, 68px); }
/* dezenter Marken-Glow oben mittig */
.wp-pricing-intro__glow { position: absolute; top: -40%; left: 50%; transform: translateX(-50%); width: min(900px, 92vw); height: 560px; z-index: -1; pointer-events: none;
		background: radial-gradient(ellipse at center, rgba(45, 106, 159, .10), rgba(45, 106, 159, .03) 46%, transparent 70%); filter: blur(6px); }
.wp-pricing-intro .wp-container { position: relative; }
.wp-pricing-intro__grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(28px, 5vw, 64px); max-width: 1120px; margin: 0 auto; align-items: center; }
.wp-pricing-intro__grid.is-textonly { grid-template-columns: 1fr; max-width: 800px; text-align: center; }
.wp-pricing-intro__grid.is-textonly .wp-pricing-intro__body { display: flex; flex-direction: column; align-items: center; }
.wp-pricing-intro__body { min-width: 0; }

.wp-pricing-intro__eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 20px; padding: 7px 16px; border-radius: 999px;
		background: linear-gradient(180deg, rgba(45, 106, 159, .12), rgba(45, 106, 159, .06)); border: 1px solid rgba(45, 106, 159, .18);
		color: var(--wp-azure-500); font-size: 12.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; box-shadow: 0 6px 18px -12px rgba(45, 106, 159, .5); }
.wp-pricing-intro__eyebrow i { font-size: 14px; color: var(--wp-azure-400); }

.wp-pricing-intro__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(30px, 4.6vw, 52px); line-height: 1.08; letter-spacing: -.025em; color: var(--wp-stone-900); margin: 0 0 22px; }
.wp-pricing-intro--center .wp-pricing-intro__title { max-width: 20ch; margin-left: auto; margin-right: auto; }
/* Gradient-Akzentstrich unter dem Titel */
.wp-pricing-intro__title::after { content: ""; display: block; width: 72px; height: 4px; margin: 20px 0 0; border-radius: 999px; background: linear-gradient(90deg, var(--wp-azure-300), var(--wp-azure-500)); }
.wp-pricing-intro--center .wp-pricing-intro__title::after { margin-left: auto; margin-right: auto; }

.wp-pricing-intro__text { font-size: clamp(15.5px, 1.3vw, 18px); line-height: 1.7; color: var(--wp-stone-600); max-width: 60ch; }
.wp-pricing-intro--center .wp-pricing-intro__text { margin-left: auto; margin-right: auto; }
.wp-pricing-intro__text p { margin: 0 0 1em; }
.wp-pricing-intro__text p:last-child { margin-bottom: 0; }

.wp-pricing-intro__media { position: relative; margin: 0; }
.wp-pricing-intro__media::before { content: ""; position: absolute; inset: auto -6% -8% 8%; height: 70%; border-radius: 28px; z-index: -1;
		background: linear-gradient(140deg, rgba(45, 106, 159, .22), rgba(249, 183, 0, .14)); filter: blur(34px); }
.wp-pricing-intro__media img { width: 100%; height: auto; border-radius: 22px; border: 1px solid var(--wp-stone-200); box-shadow: 0 30px 70px -34px rgba(27, 79, 120, .5); display: block; }

/* Highlight-Chips mit Icons in Markenfarben (Gelb / Rot / Azur / Grün) */
.wp-pricing-intro__highlights { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.wp-pricing-intro--center .wp-pricing-intro__highlights { justify-content: center; }
.wp-pricing-intro__chip { display: inline-flex; align-items: center; gap: 9px; padding: 9px 15px; border-radius: 12px;
		font-size: 14px; font-weight: 600; color: var(--wp-stone-700); background: #fff; border: 1px solid var(--wp-stone-200);
		box-shadow: 0 10px 26px -20px rgba(27, 79, 120, .5); }
.wp-pricing-intro__chip i { font-size: 15px; line-height: 1; }
.wp-pricing-intro__chip.is-azure i { color: var(--wp-azure-400); }
.wp-pricing-intro__chip.is-gold  i { color: var(--wp-gold-300); }
.wp-pricing-intro__chip.is-red   i { color: var(--wp-red-300); }
.wp-pricing-intro__chip.is-green i { color: var(--wp-success); }

@media (max-width: 860px) { .wp-pricing-intro__grid { grid-template-columns: 1fr; gap: 30px; text-align: center; } .wp-pricing-intro__grid:not(.is-textonly) .wp-pricing-intro__body { display: flex; flex-direction: column; align-items: center; } .wp-pricing-intro__grid:not(.is-textonly) .wp-pricing-intro__title::after { margin-left: auto; margin-right: auto; } .wp-pricing-intro__media { order: -1; } }
@media (prefers-reduced-motion: reduce) { .wp-pricing-intro__glow, .wp-pricing-intro__media::before { display: none; } }

/* Preise: Hinweis zum Lizenzmodell (Management = Basis/Pflicht) */
.wp-pricing__model { display: flex; align-items: flex-start; gap: 10px; max-width: 720px; margin: 0 auto clamp(32px, 4vw, 48px); padding: 14px 18px; border-radius: 14px; background: rgba(45, 106, 159, .08); border: 1px solid rgba(45, 106, 159, .18); color: var(--wp-stone-700); font-size: 14.5px; line-height: 1.5; text-align: left; }
.wp-pricing__model i { flex: none; margin-top: 2px; color: var(--wp-azure-400); font-size: 16px; }

/* ====================== Preise: Zusicherungen ====================== */
.wp-assure { max-width: 1000px; margin: clamp(40px, 5vw, 60px) auto 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.wp-assure__item { display: flex; gap: 14px; align-items: flex-start; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 16px; padding: 20px; box-shadow: 0 12px 34px -28px rgba(27, 79, 120, .22); }
.wp-assure__ic { flex: none; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 11px; background: linear-gradient(180deg, rgba(45, 106, 159, .13), rgba(45, 106, 159, .05)); color: var(--wp-azure-400); font-size: 17px; }
.wp-assure__title { font-family: var(--wp-font-display); font-weight: 600; font-size: 15.5px; color: var(--wp-stone-900); margin: 0 0 4px; }
.wp-assure__text { font-size: 13.5px; line-height: 1.5; color: var(--wp-stone-600); margin: 0; }
@media (max-width: 780px) { .wp-assure { grid-template-columns: 1fr; } }

/* ====================== Preisrechner ====================== */
.wp-calc { width: 100vw; margin-left: calc(50% - 50vw); background: #fff; padding: clamp(56px, 8vw, 96px) 0; }
.wp-calc__head { text-align: center; max-width: 640px; margin: 0 auto clamp(36px, 4vw, 48px); }
.wp-calc__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(26px, 3.6vw, 40px); line-height: 1.12; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 12px 0; }
.wp-calc__lead { font-size: clamp(15px, 1.2vw, 17px); color: var(--wp-stone-600); margin: 0; }
.wp-calc__grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 28px; max-width: 980px; margin: 0 auto; align-items: start; }
.wp-calc__controls { display: flex; flex-direction: column; gap: 14px; }
.wp-calc__row { display: flex; align-items: center; justify-content: space-between; gap: 16px; background: var(--wp-stone-50); border: 1px solid var(--wp-stone-200); border-radius: 14px; padding: 16px 18px; }
.wp-calc__rowname { display: block; font-family: var(--wp-font-display); font-weight: 600; font-size: 16px; color: var(--wp-stone-900); }
.wp-calc__rowsub { display: block; font-size: 13px; color: var(--wp-stone-500); margin-top: 2px; }
.wp-step { flex: none; display: inline-flex; align-items: center; gap: 4px; background: #fff; border: 1px solid var(--wp-stone-200); border-radius: 10px; padding: 4px; }
.wp-step__btn { width: 32px; height: 32px; border: 0; border-radius: 8px; background: var(--wp-stone-100); color: var(--wp-stone-700); font-size: 18px; line-height: 1; cursor: pointer; transition: background var(--wp-dur) var(--wp-ease), transform 120ms var(--wp-ease); }
.wp-step__btn:hover { background: rgba(45, 106, 159, .12); color: var(--wp-azure-500); }
.wp-step__btn:active { transform: scale(.92); }
.wp-step__val { min-width: 34px; text-align: center; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--wp-stone-900); }
.wp-calc__addons { background: var(--wp-stone-50); border: 1px solid var(--wp-stone-200); border-radius: 14px; padding: 16px 18px; }
.wp-calc__addons-label { font-family: var(--wp-font-display); font-weight: 600; font-size: 13px; letter-spacing: .04em; text-transform: uppercase; color: var(--wp-stone-500); margin: 0 0 8px; }
.wp-calc__addon { display: flex; align-items: center; gap: 10px; padding: 8px 0; font-size: 14.5px; color: var(--wp-stone-700); cursor: pointer; }
.wp-calc__addon input { width: 18px; height: 18px; accent-color: var(--wp-azure-400); flex: none; }
.wp-calc__addon-name { flex: 1 1 auto; }
.wp-calc__addon-price { font-weight: 600; color: var(--wp-azure-500); font-variant-numeric: tabular-nums; }
.wp-calc__summary { position: sticky; top: 90px; background: linear-gradient(140deg, var(--wp-azure-500), #16263c); color: #fff; border-radius: 20px; padding: 28px 26px; box-shadow: 0 30px 70px -30px rgba(27, 79, 120, .6); text-align: center; }
.wp-calc__total-label { font-size: 13.5px; color: rgba(255, 255, 255, .7); margin: 0 0 6px; }
.wp-calc__total { font-family: var(--wp-font-display); font-weight: 800; font-size: clamp(34px, 5vw, 46px); letter-spacing: -.02em; margin: 0; font-variant-numeric: tabular-nums; }
.wp-calc__total-note { font-size: 12.5px; color: rgba(255, 255, 255, .65); margin: 8px 0 20px; }
.wp-calc__cta { display: inline-flex; align-items: center; justify-content: center; width: 100%; padding: 14px 22px; border-radius: 12px; font-weight: 700; font-size: 15.5px; text-decoration: none; color: var(--wp-azure-500); background: #fff; transition: transform 120ms var(--wp-ease), box-shadow .3s var(--wp-ease); }
.wp-calc__cta:hover { color: var(--wp-azure-500); box-shadow: 0 16px 36px -16px rgba(0, 0, 0, .5); }
.wp-calc__cta:active { transform: scale(.98); }
@media (max-width: 780px) { .wp-calc__grid { grid-template-columns: 1fr; } .wp-calc__summary { position: static; } }

/* ====================== Lizenz-Vergleichstabelle ====================== */
.wp-compare { width: 100vw; margin-left: calc(50% - 50vw); background: var(--wp-stone-50); padding: clamp(56px, 8vw, 96px) 0; }
.wp-compare__head { text-align: center; max-width: 640px; margin: 0 auto clamp(32px, 4vw, 44px); }
.wp-compare__title { font-family: var(--wp-font-display); font-weight: 700; font-size: clamp(26px, 3.6vw, 40px); line-height: 1.12; letter-spacing: -.02em; color: var(--wp-stone-900); margin: 12px 0; }
.wp-compare__lead { font-size: clamp(15px, 1.2vw, 17px); color: var(--wp-stone-600); margin: 0; }
.wp-compare__scroll { max-width: 980px; margin: 0 auto; overflow-x: auto; border-radius: 18px; border: 1px solid var(--wp-stone-200); background: #fff; box-shadow: 0 16px 44px -30px rgba(27, 79, 120, .3); }
.wp-cmp { width: 100%; min-width: 640px; border-collapse: collapse; font-size: 14.5px; }
.wp-cmp th, .wp-cmp td { padding: 14px 16px; text-align: center; }
.wp-cmp thead th { background: #fff; font-family: var(--wp-font-display); font-weight: 700; color: var(--wp-stone-900); border-bottom: 1px solid var(--wp-stone-200); }
.wp-cmp thead th span { display: block; font-weight: 500; font-size: 12px; color: var(--wp-stone-500); margin-top: 2px; font-variant-numeric: tabular-nums; }
.wp-cmp .wp-cmp__feat { text-align: left; color: var(--wp-stone-700); }
.wp-cmp tbody tr { border-bottom: 1px solid var(--wp-stone-100); }
.wp-cmp__group th { text-align: left; background: var(--wp-stone-50); font-family: var(--wp-font-display); font-weight: 700; font-size: 12.5px; letter-spacing: .05em; text-transform: uppercase; color: var(--wp-stone-500); padding: 11px 16px; }
.wp-cmp .is-mgmt { background: rgba(45, 106, 159, .05); }
.wp-cmp thead .is-mgmt { background: rgba(45, 106, 159, .09); }
.wp-cmp__yes { color: var(--wp-success); font-size: 14px; }
.wp-cmp__no { color: var(--wp-stone-300); font-weight: 700; }

/* Preisrechner: Einmal-Position + „einmalig"-Tag */
.wp-calc__once { font-size: 13px; color: rgba(255, 255, 255, .8); margin: 4px 0 0; }
.wp-calc__once-tag { display: inline-block; margin-left: 6px; padding: 1px 7px; border-radius: 999px; background: var(--wp-stone-200); color: var(--wp-stone-600); font-size: 11px; font-weight: 600; vertical-align: middle; }
