		:root {
			--primary-blue: #0E2A4E;
			--accent-blue: #184E77;
			--cta-blue: #1E56D6;
			--boden-gray: #8FA3BF;
			--light-bg: #F4F7FA;
			--border-color: #E2E8F0;
		}

		html {
			scroll-behavior: smooth;
		}

		body {
			font-family: 'Public Sans', system-ui, -apple-system, sans-serif;
			color: #22334B;
			background-color: #ffffff;
			line-height: 1.6;
		}

		.mono {
			font-family: 'IBM Plex Mono', monospace;
			font-variant-numeric: tabular-nums;
		}

		.bi {
			display: inline-block;
			width: 1em;
			height: 1em;
			vertical-align: -0.125em;
			background-color: currentColor;
			-webkit-mask: var(--icon) center / contain no-repeat;
			mask: var(--icon) center / contain no-repeat;
		}

		.bi-award { --icon: url('/res/icons/award.svg'); }
		.bi-building-fill-dash { --icon: url('/res/icons/building-fill-dash.svg'); }
		.bi-check-circle-fill { --icon: url('/res/icons/check-circle-fill.svg'); }
		.bi-graph-down-arrow { --icon: url('/res/icons/graph-down-arrow.svg'); }
		.bi-map-fill { --icon: url('/res/icons/map-fill.svg'); }
		.bi-shield-check { --icon: url('/res/icons/shield-check.svg'); }
		.bi-shield-lock-fill { --icon: url('/res/icons/shield-lock-fill.svg'); }
		.bi-telephone-fill { --icon: url('/res/icons/telephone-fill.svg'); }

		.contact-form-mount {
			min-height: 170px;
		}

		.contact-form-loading {
			display: flex;
			align-items: center;
			justify-content: center;
			min-height: 170px;
			color: #526176;
			text-align: center;
		}

		.contact-inline-msg {
			padding: 0.9rem 1rem;
			border-radius: 8px;
			font-size: 0.95rem;
			line-height: 1.5;
		}

		.contact-inline-msg.success {
			background: #e8f7ee;
			border: 1px solid #bce5cb;
			color: #17633f;
		}

		.contact-inline-msg.error {
			background: #fff0ee;
			border: 1px solid #f2c5be;
			color: #943126;
		}

		.contact-field-error {
			min-height: 1.2em;
			margin-top: 0.35rem;
			color: #a12d24;
			font-size: 0.82rem;
		}

		.form-control.formerror {
			border-color: #b42318;
			box-shadow: 0 0 0 0.15rem rgba(180, 35, 24, 0.12);
		}

		.contact-hp {
			position: absolute !important;
			left: -9999px !important;
			width: 1px !important;
			height: 1px !important;
			overflow: hidden !important;
		}

		.contact-form-mount.is-loading {
			opacity: 0.92;
		}

		.topbar {
			background-color: var(--primary-blue);
			color: #ffffff;
			font-size: 0.85rem;
			padding: 6px 0;
		}

		.topbar a {
			color: inherit;
			text-decoration: none;
		}

		.brand-logo {
			font-weight: 800;
			font-size: 1.5rem;
			color: var(--primary-blue);
			text-decoration: none;
			letter-spacing: -0.5px;
		}

		.brand-logo span {
			color: var(--cta-blue);
		}

		.brand-subtext {
			font-size: 0.7rem;
			color: #64748b;
			display: block;
			margin-top: -4px;
			font-weight: 700;
			letter-spacing: 0.06em;
		}

		.navbar-brand {
			margin-right: 0;
		}

		.navbar-toggler {
			border: 0;
			padding: 0.25rem 0;
			border-radius: 0;
			box-shadow: none !important;
		}

		.navbar-toggler:focus {
			box-shadow: none;
		}

		.hero-section {
			background: linear-gradient(180deg, #F4F7FA 0%, #FFFFFF 100%);
			padding: 70px 0;
			border-bottom: 1px solid var(--border-color);
		}

		.hero-badge {
			background-color: #E0F2FE;
			color: #0369A1;
			font-weight: 700;
			font-size: 0.8rem;
			padding: 6px 14px;
			border-radius: 50px;
			display: inline-block;
			margin-bottom: 15px;
			text-transform: uppercase;
			letter-spacing: 0.05em;
		}

		.splitter-card {
			background: #ffffff;
			border: 1px solid var(--border-color);
			border-radius: 14px;
			box-shadow: 0 20px 40px -15px rgba(14, 42, 78, 0.12);
			padding: 28px;
		}

		.split-bar {
			display: flex;
			height: 48px;
			border-radius: 8px;
			overflow: hidden;
			margin-bottom: 12px;
			font-weight: 600;
			font-size: 0.85rem;
			color: #ffffff;
		}

		.seg-boden,
		.seg-geb {
			display: flex;
			align-items: center;
			justify-content: center;
			transition: width 0.15s ease;
			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
			padding: 0 8px;
		}

		.seg-boden {
			background-color: var(--boden-gray);
			color: var(--primary-blue);
		}

		.seg-geb {
			background-color: var(--cta-blue);
		}

		.split-result-box {
			background-color: var(--light-bg);
			border-radius: 8px;
			padding: 12px;
			height: 100%;
			border: 1px solid var(--border-color);
		}

		.split-result-box.gain {
			background-color: var(--primary-blue);
			color: #ffffff;
			border-color: var(--primary-blue);
		}

		.text-secondary {
			color: #526176 !important;
		}

		.bg-primary-subtle.text-primary,
		.bg-light.text-primary,
		.split-result-box .text-primary {
			color: #174ea6 !important;
		}

		.calc-compare {
			display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: 10px;
		}

		.calc-compare-item {
			background: #f8fafc;
			border: 1px solid var(--border-color);
			border-radius: 10px;
			padding: 10px 12px;
			font-size: 0.9rem;
			color: #4c5f7c;
		}

		.section-title {
			font-weight: 800;
			color: var(--primary-blue);
			letter-spacing: -0.02em;
		}

		.bg-light-blue {
			background-color: var(--light-bg);
		}

		.feature-card {
			background: #ffffff;
			border: 1px solid var(--border-color);
			border-radius: 12px;
			padding: 24px;
			height: 100%;
		}

		.icon-box {
			width: 44px;
			height: 44px;
			background-color: #E0F2FE;
			color: var(--cta-blue);
			border-radius: 10px;
			display: flex;
			align-items: center;
			justify-content: center;
			font-size: 1.25rem;
			margin-bottom: 16px;
		}

		.step-number {
			width: 40px;
			height: 40px;
			background-color: var(--primary-blue);
			color: white;
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			font-weight: 700;
			margin-bottom: 16px;
		}

		.table-vs th {
			background-color: var(--primary-blue);
			color: white;
		}

		.garantie-card {
			background-color: var(--primary-blue);
			color: #ffffff;
			border-radius: 14px;
			padding: 40px;
		}

		.form-range-strong::-webkit-slider-runnable-track {
			height: 0.6rem;
			background: #9aa8bc;
			border-radius: 999px;
		}

		.form-range-strong::-webkit-slider-thumb {
			width: 1.25rem;
			height: 1.25rem;
			margin-top: -0.325rem;
			background: var(--cta-blue);
			border: 2px solid #ffffff;
			box-shadow: 0 0 0 2px rgba(14, 42, 78, 0.16);
		}

		.form-range-strong::-moz-range-track {
			height: 0.6rem;
			background: #9aa8bc;
			border-radius: 999px;
		}

		.form-range-strong::-moz-range-thumb {
			width: 1.25rem;
			height: 1.25rem;
			background: var(--cta-blue);
			border: 2px solid #ffffff;
			box-shadow: 0 0 0 2px rgba(14, 42, 78, 0.16);
		}

		.legal-content {
			max-width: 860px;
		}

		footer {
			background-color: var(--primary-blue);
			color: #9FB4D4;
			padding: 50px 0 25px 0;
		}

		footer a {
			color: #9FB4D4;
			text-decoration: none;
		}

		footer a:hover {
			color: #ffffff;
		}

		@media (max-width: 991.98px) {
			.topbar {
				display: none;
			}

			.navbar > .container {
				display: flex;
				align-items: center;
				justify-content: space-between;
				gap: 12px;
			}

			.navbar-brand {
				flex: 1 1 auto;
				min-width: 0;
			}

			.brand-logo {
				font-size: 1.25rem;
				letter-spacing: -0.3px;
				line-height: 1.1;
			}

			.brand-subtext {
				font-size: 0.56rem;
				margin-top: 2px;
				letter-spacing: 0.04em;
			}

			.navbar-toggler {
				flex: 0 0 auto;
				margin-left: auto;
			}

			.hero-section {
				padding: 56px 0;
			}

			.splitter-card {
				padding: 20px;
			}

			.split-bar {
				height: 42px;
				font-size: 0.78rem;
			}

			.calc-compare {
				grid-template-columns: 1fr;
			}

			.calc-compare-item {
				font-size: 0.82rem;
				line-height: 1.35;
			}

			.calc-results .split-result-box {
				padding: 10px 12px;
			}

			.topbar .container {
				gap: 8px;
				flex-direction: column;
				text-align: center;
			}
		}
