.klc-customer-application {
	--klc-ca-ink: #1b1a18;
	--klc-ca-muted: #6a645d;
	--klc-ca-border: rgba(27, 26, 24, 0.12);
	--klc-ca-surface: #fffdfa;
	--klc-ca-soft: #e6f2fa;
	--klc-ca-accent: #1f4e79;
	--klc-ca-shadow: 0 30px 60px rgba(28, 22, 16, 0.10);
	color: var(--klc-ca-ink);
	margin: 0 auto;
	max-width: 1400px;
	padding: 24px 16px 72px;
}

.klc-customer-application--embedded {
	max-width: none;
	padding: 0;
}

.klc-customer-application--embedded .klc-customer-application__body {
	margin-top: 0;
}

.lp_kundewerden > .row > .col:first-child {
	order: 2;
}

.lp_kundewerden > .row > .col:last-child {
	order: 1;
}

.klc-customer-application__hero {
	background:
		radial-gradient(circle at top left, rgba(31, 78, 121, 0.12), transparent 40%),
		linear-gradient(135deg, #f5fbff 0%, #e6f2fa 48%, #f9fcff 100%);
	border: 1px solid var(--klc-ca-border);
	border-radius: 36px;
	box-shadow: var(--klc-ca-shadow);
	overflow: hidden;
}

.klc-customer-application__hero-inner {
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 1.8fr) minmax(280px, 0.9fr);
	padding: 40px;
}

.klc-customer-application__eyebrow {
	color: var(--klc-ca-accent);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	margin-bottom: 16px;
	text-transform: uppercase;
}

.klc-customer-application__title {
	font-size: clamp(2.2rem, 5vw, 4.3rem);
	letter-spacing: -0.04em;
	line-height: 0.95;
	margin: 0 0 18px;
}

.klc-customer-application__lead {
	color: var(--klc-ca-muted);
	font-size: 1.08rem;
	line-height: 1.7;
	margin: 0;
	max-width: 62ch;
}

.klc-customer-application__facts {
	display: grid;
	gap: 10px;
	list-style: none;
	margin: 24px 0 0;
	padding: 0;
}

.klc-customer-application__facts li {
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid rgba(27, 26, 24, 0.08);
	border-radius: 999px;
	font-size: 0.96rem;
	padding: 12px 16px;
}

.klc-customer-application__card {
	align-self: end;
	background: linear-gradient(135deg, #1f4e79 0%, #2f6e9c 100%);
	border-radius: 28px;
	color: #fff;
	padding: 28px;
}

.klc-customer-application__card-kicker {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	margin-bottom: 12px;
	text-transform: uppercase;
}

.klc-customer-application__card-title {
	font-size: 1.55rem;
	font-weight: 700;
	line-height: 1.05;
	margin-bottom: 12px;
}

.klc-customer-application__card-text {
	color: rgba(255, 255, 255, 0.8);
	line-height: 1.7;
}

.klc-customer-application__body {
	margin-top: 28px;
}

.klc-customer-application__form-shell {}

.klc-customer-application__launcher {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	background: var(--klc-ca-surface);
	border-radius: 8px;
	box-shadow: var(--klc-ca-shadow);
	padding: 28px;
}

.klc-customer-application__launcher-title {
	font-size: 1.35rem;
	font-weight: 700;
	margin-bottom: 6px;
}

.klc-customer-application__launcher-text {
	color: var(--klc-ca-muted);
	line-height: 1.6;
	max-width: 56ch;
}

.klc-customer-application-modal__content {
	border: 0;
	border-radius: 8px;
	overflow: hidden;
}

.klc-customer-application-modal__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	padding: 26px 28px 18px;
	border-bottom: 1px solid rgba(27, 26, 24, 0.08);
	background: linear-gradient(180deg, rgba(230, 242, 250, 0.92), rgba(255, 255, 255, 0.97));
}

.klc-customer-application-modal__title {
	font-size: 1.6rem;
	font-weight: 800;
	line-height: 1.1;
}

.klc-customer-application-modal__subtitle {
	color: var(--klc-ca-muted);
	margin-top: 4px;
}

.klc-customer-application-modal__close {
	background: transparent;
	border: 0;
	font-size: 2rem;
	line-height: 1;
	color: var(--klc-ca-ink);
}

.klc-customer-application__steps {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 10px;
	padding: 18px 28px 0;
}

.klc-customer-application__step {
	border: 1px solid rgba(27, 26, 24, 0.08);
	background: #fff;
	border-radius: 8px;
	padding: 12px 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 700;
	color: var(--klc-ca-muted);
	opacity:.5;
}

.klc-customer-application__step.is-active {
	border-color: rgba(31, 78, 121, 0.24);
	background: #e6f2fa;
	color: var(--klc-ca-ink);
	opacity:1;
}

.klc-customer-application__step.is-complete {
	background: #f1f7ee;
	color: var(--klc-ca-ink);
}

.klc-customer-application__step-icon {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(27, 26, 24, 0.08);
	font-weight: 800;
}

.klc-customer-application__step.is-active .klc-customer-application__step-icon {
	background: var(--klc-ca-accent);
	color: #fff;
}

.klc-customer-application__step.is-complete .klc-customer-application__step-icon {
	background: #2f8f57;
	color: #fff;
}

.klc-customer-application__step-progress {
	display: none;
	padding: 10px 28px 0;
	color: var(--klc-ca-muted);
	font-size: 0.95rem;
	font-weight: 700;
}

.klc-customer-application__validation {
	margin: 14px 28px 0;
	padding: 12px 14px;
	border-radius: 16px;
	background: #fff1f1;
	border: 1px solid rgba(198, 40, 40, 0.14);
	color: #a32727;
	font-size: 0.95rem;
	font-weight: 600;
}

.klc-customer-application-modal__body {
	padding: 24px 28px 16px;
}

.klc-customer-application__form {
	display: grid;
	gap: 0;
}

.klc-customer-application__step-panel {
	display: grid;
	gap: 18px;
}

.klc-customer-application__section {}

.klc-customer-application__section h2 {
	font-size: 18px !important;
	margin: 0 0 18px;
}

.klc-customer-application-modal__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 28px 28px;
	gap: 14px;
}

.klc-customer-application__footer {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	justify-content: space-between;
}

.klc-customer-application__hint {
	color: var(--klc-ca-muted);
	font-size: 0.95rem;
	line-height: 1.6;
	max-width: 52ch;
}

.klc-customer-application .form-control,
.klc-customer-application .form-select {
	border-radius: 14px; font-size:12px;
}

.klc-customer-application .btn-dark {
	background: var(--klc-ca-ink);
	border-color: var(--klc-ca-ink);
	border-radius: 999px;
	padding-inline: 1.5rem;
	font-size:14px;
	margin-top:8px;
}

.klc-customer-application .btn-dark:hover,
.klc-customer-application .btn-dark:focus {
	background: var(--klc-ca-accent);
	border-color: var(--klc-ca-accent);
}

@media (max-width: 991px) {
	.klc-customer-application__hero-inner {
		grid-template-columns: 1fr;
		padding: 28px;
	}

	.klc-customer-application__launcher {
		flex-direction: column;
		align-items: stretch;
	}

	.klc-customer-application__steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 575px) {
	.klc-customer-application {
		padding-inline: 12px;
	}

	.klc-customer-application__hero,
	.klc-customer-application__launcher,
	.klc-customer-application-modal__content {
		border-radius: 24px;
	}

	.klc-customer-application__steps {
		grid-template-columns: 1fr;
		padding: 14px 18px 0;
	}

	.klc-customer-application__step {
		display: none;
	}

	.klc-customer-application__step.is-active {
		display: flex;
	}

	.klc-customer-application__step-progress {
		display: block;
		padding: 10px 18px 0;
	}

	.klc-customer-application__footer {
		align-items: stretch;
	}

	.klc-customer-application-modal__header,
	.klc-customer-application-modal__body,
	.klc-customer-application-modal__footer {
		padding-left: 18px;
		padding-right: 18px;
	}

	.klc-customer-application__validation {
		margin-left: 18px;
		margin-right: 18px;
	}

	.klc-customer-application-modal__footer {
		flex-direction: column;
	}

	.klc-customer-application-modal__footer .btn,
	.klc-customer-application__footer .btn {
		width: 100%;
	}
}
