/* Created by Stephan Koopmans */
/* SHARED REPLACEMENT CSS. Part 1 preserves old pages during gradual replacement.
   Part 2 contains the new scoped portfolio. Paste the whole file without  tags. */
/* PART 1 — LEGACY PAGE COMPATIBILITY */
.ee-page {
	color: #171717 !important;
	font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif;
	line-height: 1.55;
}

.ee-page .coop-nav,.ee-page .coop-nav * {
	color: #fff !important;
}

.ee-page .coop-nav a,.ee-page .coop-nav a:link,.ee-page .coop-nav a:visited,.ee-page .coop-nav a:hover,.ee-page .coop-nav a:focus,.ee-page .coop-nav a:focus-visible,.ee-page .coop-nav a:active {
	color: rgba(255, 255, 255, 0.86) !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
	border: 0 !important;
	border-bottom: 0 !important;
	box-shadow: none !important;
	background-image: none !important;
}

.ee-page .coop-nav .coop-nav-brand,.ee-page .coop-nav .coop-nav-brand:link,.ee-page .coop-nav .coop-nav-brand:visited,.ee-page .coop-nav .coop-nav-brand:hover,.ee-page .coop-nav .coop-nav-brand:focus,.ee-page .coop-nav .coop-nav-brand:active {
	color: #fff !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
	border: 0 !important;
	border-bottom: 0 !important;
	box-shadow: none !important;
	background-image: none !important;
}

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

.ee-page h1,.ee-page h2,.ee-page h3,.ee-page p,.ee-page li,.ee-page div,.ee-page span,.ee-page strong {
	color: inherit !important;
	opacity: 1 !important;
}

.ee-page a {
	color: inherit;
}

.coop-nav {
	width: calc(100% - 64px);
	max-width: none;
	margin-left: auto;
	margin-right: auto;
	padding: 18px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	color: #fff !important;
}

.coop-nav-top {
	margin-top: 0;
	margin-bottom: 42px;
}

.coop-nav-bottom {
	margin-top: 54px;
	margin-bottom: 0;
	padding-bottom: 56px;
}

.ee-page .coop-nav a,.ee-page .coop-nav a:visited {
	color: rgba(255, 255, 255, 0.84) !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
}

.ee-page .coop-nav a:hover,.ee-page .coop-nav a:focus-visible {
	color: #fff !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
}

.ee-page .coop-nav-brand,.ee-page .coop-nav-brand:visited {
	display: none !important;
	flex: 0 0 auto;
	font-size: clamp(1.25rem, 2vw, 1.65rem);
	font-weight: 900;
	color: #fff !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
}

.coop-nav-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	width: 100%;
	gap: 18px 28px;
	font-size: clamp(0.98rem, 1.5vw, 1.18rem);
	font-weight: 650;
}

.ee-page .coop-nav-button,.ee-page .coop-nav-button:link,.ee-page .coop-nav-button:visited,.ee-page .coop-nav-button:hover,.ee-page .coop-nav-button:focus,.ee-page .coop-nav-button:active {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	color: rgba(255, 255, 255, 0.86) !important;
	cursor: pointer;
	font: inherit !important;
	font-weight: 650 !important;
	line-height: 1.2 !important;
	text-align: left;
	text-decoration: none !important;
	text-decoration-line: none !important;
}

.ee-page .coop-nav-button:hover,.ee-page .coop-nav-button:focus-visible {
	color: #fff !important;
}

.ee-page .coop-nav-button.coop-nav-brand,.ee-page .coop-nav-button.coop-nav-brand:hover,.ee-page .coop-nav-button.coop-nav-brand:focus {
	color: #fff !important;
	font-size: clamp(1.25rem, 2vw, 1.65rem) !important;
	font-weight: 900 !important;
}

@media (max-width: 720px) {
	.coop-nav {
		width: calc(100% - 32px);
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}
	
	.ee-toplink {
		width: calc(100% - 32px);
	}
	
	.coop-nav-links {
		justify-content: flex-start;
		gap: 10px 18px;
	}
}

.ee-shell {
	width: 100%;
	max-width: 1160px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 16px;
	padding-right: 16px;
}

.ee-toplink {
	width: calc(100% - 64px);
	max-width: none;
	display: flex;
	justify-content: flex-end;
	font-size: 1.85rem;
	line-height: 1;
	color: #d9e7eb !important;
	margin: 8px auto 18px;
}

.ee-toplink a {
	display: inline-flex;
	align-items: center;
	color: #d9e7eb !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
}

.ee-hero {
	position: relative;
	overflow: hidden;
	border-radius: 28px;
	background: radial-gradient(circle at 80% 20%, rgba(255, 134, 31, 0.20), transparent 34%), linear-gradient(135deg, #fffaf5 0%, #f6f8fb 48%, #eef3f7 100%);
	padding: 92px 72px;
	border: 1px solid #e6e8ec;
	color: #171717 !important;
}

.ee-hero-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 72px;
	align-items: center;
}

.ee-hero-copy {
	max-width: 720px;
}

.ee-eyebrow {
	display: block;
	width: fit-content;
	margin: 0 0 22px;
	padding: 0;
	border-radius: 0;
	background: transparent;
	color: #4b5560 !important;
	font-weight: 700;
	font-size: 1.08rem;
}

.ee-brand {
	display: inline-flex;
	align-items: center;
	gap: 18px;
	margin-bottom: 30px;
	color: #171717 !important;
	font-size: 2rem;
	font-weight: 900;
}

.ee-brand img {
	width: 72px;
	height: 72px;
	border-radius: 19px;
	box-shadow: 0 10px 24px rgba(18, 21, 25, 0.16);
}

.ee-hero h1 {
	margin: 0;
	max-width: 780px;
	color: #171717 !important;
	font-size: 54px;
	line-height: 1.06;
	letter-spacing: 0;
}

.ee-intro-panel {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	align-items: start;
	margin-top: 18px;
	padding: 30px 34px;
	border-radius: 24px;
	background: #fff;
	border: 1px solid #e6e8ec;
	color: #171717 !important;
	box-shadow: 0 18px 48px rgba(18, 21, 25, 0.06);
}

.ee-intro-copy {
	max-width: 1120px;
}

.ee-intro-copy p {
	margin: 0;
	color: #33383f !important;
	font-size: 1.14rem;
}

.ee-intro-copy p:first-child {
	color: #171717 !important;
	font-weight: 900;
}

.ee-intro-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	justify-content: flex-start;
}

.ee-intro-actions .ee-button,.ee-cta-actions .ee-button {
	min-height: 70px;
}

.ee-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 30px;
}

.ee-button,.ee-button:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 13px 20px;
	border-radius: 15px;
	font-weight: 800;
	text-decoration: none;
	border: 1px solid transparent;
	color: #171717 !important;
}

.ee-button-primary {
	background: #ff861f;
	box-shadow: 0 16px 34px rgba(255, 134, 31, 0.25);
}

.ee-button-secondary {
	background: rgba(255, 255, 255, 0.72);
	border-color: rgba(23, 23, 23, 0.14);
}

.ee-appstore img {
	display: block;
	width: 210px;
	height: auto;
}

.ee-hero-device {
	position: relative;
	min-height: 0;
}

.ee-device-frame {
	position: relative;
	transform: none;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	overflow: visible;
}

.ee-image-placeholder {
	display: grid;
	align-items: center;
	justify-items: center;
	min-height: 320px;
	padding: 28px;
	border: 1px dashed rgba(23, 23, 23, 0.24);
	background: linear-gradient(135deg, rgba(255,255,255,0.90), rgba(245,246,248,0.86)), repeating-linear-gradient(135deg, rgba(255,134,31,0.12), rgba(255,134,31,0.12) 10px, rgba(35,89,166,0.08) 10px, rgba(35,89,166,0.08) 20px);
	color: #3c4045 !important;
	text-align: center;
	font-weight: 800;
}

.ee-device-frame .ee-image-placeholder {
	min-height: 430px;
	border: 0;
	border-radius: 20px;
}

.ee-screenshot {
	display: block;
	width: 100%;
	height: auto;
}

.ee-device-frame .ee-screenshot {
	aspect-ratio: 2972 / 2288;
	object-fit: contain;
}

.ee-step-image {
	width: 100%;
	border-radius: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.ee-hero-note {
	position: relative;
	width: 100%;
	max-width: 420px;
	margin: 26px 0 0;
	padding: 18px;
	border-radius: 20px;
	background: rgba(255,255,255,0.92);
	border: 1px solid rgba(23, 23, 23, 0.10);
	box-shadow: 0 18px 48px rgba(18,21,25,0.14);
	color: #171717 !important;
}

.ee-hero-note strong {
	display: block;
	color: #245f74 !important;
	font-size: 1.05rem;
}

.ee-overview {
	padding-top: 76px;
}

.ee-panel-dark,.ee-panel-light {
	margin-top: 76px;
	padding: 48px;
	border-radius: 28px;
}

.ee-overview.ee-panel-dark,.ee-section.ee-panel-dark,.ee-section.ee-panel-light {
	padding-top: 48px;
}

.ee-panel-dark {
	background: #171717;
	color: #fff !important;
}

.ee-panel-light {
	background: #f6f8fb;
	border: 1px solid #e6e8ec;
	color: #171717 !important;
}

.ee-overview-header {
	max-width: 780px;
	margin-bottom: 28px;
	color: inherit !important;
}

.ee-overview-header h2 {
	margin: 0;
	color: inherit !important;
	font-size: 42px;
	line-height: 1.08;
}

.ee-overview-header .ee-kicker {
	color: rgba(255, 255, 255, 0.62) !important;
}

.ee-overview-header p {
	color: rgba(255, 255, 255, 0.78) !important;
	font-size: 1.08rem;
}

.ee-overview-grid {
	display: grid;
	grid-template-columns: 1.2fr 1fr 1fr 1fr;
	gap: 16px;
}

.ee-overview-card {
	min-height: 100%;
	padding: 24px;
	border-radius: 20px;
	background: #fff;
	border: 1px solid #e6e8ec;
	color: #171717 !important;
}

.ee-overview-card h3 {
	margin: 0 0 10px;
	color: #171717 !important;
	font-size: 1.16rem;
	line-height: 1.18;
}

.ee-overview-card p {
	margin: 0;
	color: #5f6368 !important;
}

.ee-overview-card a {
	display: inline-flex;
	margin-top: 18px;
	color: #245f74 !important;
	font-weight: 900;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.ee-overview-card-feature {
	background: linear-gradient(135deg, #fff7ef, #ffffff);
	border-color: rgba(255, 134, 31, 0.32);
}

.ee-trust-row {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
	margin-top: 16px;
}

.ee-trust-item {
	padding: 16px;
	border-radius: 18px;
	background: #fff;
	border: 1px solid #e6e8ec;
	font-weight: 800;
	color: #292d33 !important;
}

.ee-section {
	padding-top: 76px;
}

.ee-section-header {
	max-width: 760px;
	margin-bottom: 28px;
}

.ee-kicker {
	margin: 0 0 8px;
	color: #c55308 !important;
	font-size: .95rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .08em;
}

.ee-section h2 {
	margin: 0;
	color: #171717 !important;
	font-size: 48px;
	line-height: 1.06;
	letter-spacing: 0;
}

.ee-section-header p,.ee-card p,.ee-split p,.ee-faq p {
	color: #5f6368 !important;
}

.ee-grid-3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.ee-card {
	min-height: 100%;
	padding: 24px;
	border-radius: 20px;
	background: #fff;
	border: 1px solid #e6e8ec;
	box-shadow: 0 18px 46px rgba(18,21,25,0.05);
	color: #171717 !important;
}

.ee-card h3 {
	margin: 12px 0 8px;
	color: #171717 !important;
	font-size: 1.25rem;
}

.ee-icon {
	display: grid;
	align-items: center;
	justify-items: center;
	width: 44px;
	height: 44px;
	border-radius: 13px;
	background: rgba(255, 134, 31, 0.13);
	color: #c55308 !important;
	font-weight: 900;
}

.ee-workflow {
	display: grid;
	gap: 18px;
}

.ee-step {
	display: grid;
	grid-template-columns: minmax(0, 0.82fr) minmax(300px, 1.18fr);
	gap: 38px;
	align-items: start;
	padding: 34px;
	border: 1px solid #e6e8ec;
	border-radius: 24px;
	background: linear-gradient(180deg, #ffffff, #fbfcfd);
	color: #171717 !important;
}

.ee-step:nth-child(even) {
	grid-template-columns: minmax(0, 0.82fr) minmax(300px, 1.18fr);
}

.ee-step:nth-child(even) .ee-step-copy {
	order: initial;
}

.ee-step-number {
	display: inline-grid;
	align-items: center;
	justify-items: center;
	width: 42px;
	height: 42px;
	margin-bottom: 14px;
	border-radius: 50%;
	background: #ff861f;
	color: #171717 !important;
	font-weight: 900;
}

.ee-step h3 {
	margin: 0 0 10px;
	color: #171717 !important;
	font-size: 32px;
	line-height: 1.1;
}

.ee-step ul {
	display: grid;
	gap: 10px;
	margin: 18px 0 0;
	padding-left: 0;
	list-style: none;
	color: #30343a !important;
}

.ee-step li {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

.ee-step li::before {
	content: "✓";
	display: inline-grid;
	align-items: center;
	justify-items: center;
	width: 24px;
	height: 24px;
	flex: 0 0 auto;
	border-radius: 50%;
	background: rgba(36, 95, 116, 0.14);
	color: #245f74 !important;
	font-size: .82rem;
	font-weight: 900;
}

.ee-feature-grid {
	display: grid;
	gap: 16px;
	margin-top: 0;
}

.ee-feature-grid-questions {
	grid-template-columns: repeat(4, 1fr);
}

.ee-feature-grid-media {
	grid-template-columns: repeat(5, 1fr);
}

.ee-feature-card {
	min-height: 100%;
	padding: 22px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.09);
	border: 1px solid rgba(255, 255, 255, 0.18);
	color: #fff !important;
}

.ee-feature-card h4 {
	margin: 0 0 10px;
	color: #fff !important;
	font-size: 1.2rem;
	font-weight: 900;
	line-height: 1.16;
}

.ee-feature-card p {
	margin: 0;
	color: rgba(255, 255, 255, 0.76) !important;
	font-size: 1rem;
	line-height: 1.5;
}

.ee-feature-card-warm {
	background: rgba(255, 134, 31, 0.13);
	border-color: rgba(255, 134, 31, 0.28);
}

.ee-feature-card-cool {
	background: rgba(36, 95, 116, 0.28);
	border: 1px solid rgba(135, 190, 209, 0.42);
}

.ee-split {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(320px, 1.08fr);
	gap: 56px;
	align-items: start;
}

.ee-proof-list {
	display: grid;
	gap: 12px;
	margin-top: 22px;
}

.ee-proof {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 0;
	border-bottom: 0;
}

.ee-check {
	display: grid;
	align-items: center;
	justify-items: center;
	width: 26px;
	height: 26px;
	flex: 0 0 auto;
	border-radius: 50%;
	background: rgba(36, 95, 116, 0.14);
	color: #245f74 !important;
	font-weight: 900;
}

.ee-cta {
	width: calc(100% - 32px);
	max-width: 1128px;
	margin-top: 76px;
	padding: 58px;
	border-radius: 28px;
	background: radial-gradient(circle at 10% 10%, rgba(255,255,255,0.32), transparent 24%), linear-gradient(135deg, #ff9a38, #ff7f18 58%, #e9630e);
	color: #171717 !important;
}

.ee-cta-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
	align-items: start;
}

.ee-cta-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	align-self: start;
	justify-content: flex-start;
}

.ee-cta h2 {
	margin: 0;
	color: #171717 !important;
	font-size: 46px;
	line-height: 1.08;
}

.ee-cta p {
	max-width: 760px;
	margin: 14px 0 0;
	color: rgba(23,23,23,0.78) !important;
	font-size: 1.08rem;
}

.ee-faq {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
}

.ee-faq article {
	padding: 22px;
	border: 1px solid #e6e8ec;
	border-radius: 18px;
	background: #fff;
	color: #171717 !important;
}

.ee-faq h3 {
	margin: 0 0 8px;
	color: #171717 !important;
	font-size: 1.1rem;
}

@media (min-width: 980px) {
	.ee-hero-grid {
		grid-template-columns: minmax(0, 0.94fr) minmax(340px, 1.06fr);
	}
	
	.ee-hero-device {
		min-height: 0;
	}
	
	.ee-hero-note {
		position: relative;
		right: auto;
		bottom: auto;
		width: 100%;
		max-width: 420px;
		margin: 26px 0 0;
	}
}

@media (max-width: 980px) {
	.ee-hero-grid,.ee-intro-panel,.ee-step,.ee-step:nth-child(even),.ee-split,.ee-cta-grid {
		grid-template-columns: 1fr;
	}
	
	.ee-step:nth-child(even) .ee-step-copy {
		order: initial;
	}
	
	.ee-grid-3,.ee-trust-row,.ee-overview-grid,.ee-feature-grid,.ee-faq {
		grid-template-columns: 1fr 1fr;
	}
	
	.ee-hero-device {
		min-height: auto;
	}
	
	.ee-hero h1 {
		font-size: 42px;
	}
	
	.ee-section h2,.ee-overview-header h2,.ee-cta h2 {
		font-size: 40px;
	}
}

@media (max-width: 620px) {
	.ee-shell {
		padding-left: 11px;
		padding-right: 11px;
	}
	
	.ee-hero {
		padding: 40px 22px;
	}
	
	.ee-intro-panel {
		padding: 24px 22px;
	}
	
	.ee-hero,.ee-cta,.ee-panel-dark,.ee-panel-light {
		border-radius: 22px;
	}
	
	.ee-grid-3,.ee-trust-row,.ee-overview-grid,.ee-feature-grid,.ee-faq {
		grid-template-columns: 1fr;
	}
	
	.ee-actions {
		align-items: stretch;
	}
	
	.ee-intro-actions,.ee-cta-actions {
		align-items: stretch;
	}
	
	.ee-button,.ee-appstore {
		width: 100%;
	}
	
	.ee-appstore img {
		width: 190px;
		margin: 0 auto;
	}
	
	.ee-device-frame {
		transform: none;
		border: 0;
		border-radius: 0;
	}
	
	.ee-hero h1 {
		font-size: 34px;
	}
	
	.ee-brand {
		gap: 12px;
		margin-bottom: 24px;
		font-size: 1.35rem;
	}
	
	.ee-brand img {
		width: 54px;
		height: 54px;
		border-radius: 15px;
	}
	
	.ee-section h2,.ee-overview-header h2,.ee-cta h2 {
		font-size: 34px;
	}
	
	.ee-step,.ee-panel-dark,.ee-panel-light,.ee-cta {
		padding: 28px 22px;
	}
}

.ee-page .ee-toplink,.ee-page .ee-toplink a {
	color: #f4f7f8 !important;
	font-size: 1.85rem;
	line-height: 1;
	text-decoration: none !important;
	text-decoration-line: none !important;
}

.ee-page > .ee-section:not(.ee-panel-light) {
	color: #fff !important;
}

.ee-page > .ee-section:not(.ee-panel-light) > .ee-section-header,.ee-page > .ee-section:not(.ee-panel-light) > .ee-section-header h2,.ee-page > .ee-section:not(.ee-panel-light) > .ee-section-header p,.ee-page > .ee-section:not(.ee-panel-light) > .ee-section-header .ee-kicker {
	color: #fff !important;
	opacity: 1 !important;
}

.ee-page > .ee-section:not(.ee-panel-light) > .ee-section-header p {
	color: rgba(255, 255, 255, 0.78) !important;
}

.ee-page > .ee-section:not(.ee-panel-light) > .ee-section-header .ee-kicker {
	color: rgba(255, 255, 255, 0.62) !important;
}

.ee-page > .ee-section:not(.ee-panel-light) > .ee-split,.ee-page > .ee-section:not(.ee-panel-light) > .ee-split h2,.ee-page > .ee-section:not(.ee-panel-light) > .ee-split p,.ee-page > .ee-section:not(.ee-panel-light) > .ee-split strong,.ee-page > .ee-section:not(.ee-panel-light) > .ee-split div {
	color: #fff !important;
}

.ee-page > .ee-section:not(.ee-panel-light) > .ee-split p {
	color: rgba(255, 255, 255, 0.78) !important;
}

.ee-page .ee-card,.ee-page .ee-card *,.ee-page .ee-step,.ee-page .ee-step *,.ee-page .ee-trust-item,.ee-page .ee-trust-item * {
	color: #171717 !important;
}

.ee-page .ee-panel-light,.ee-page > .ee-panel-light,.ee-page > .ee-panel-light > .ee-section-header,.ee-page > .ee-panel-light > .ee-section-header h2,.ee-page > .ee-panel-light > .ee-section-header h3,.ee-page > .ee-panel-light > .ee-section-header div,.ee-page .ee-panel-light h2,.ee-page .ee-panel-light h3,.ee-page .ee-panel-light p,.ee-page .ee-panel-light div {
	color: #171717 !important;
}

.ee-page > .ee-panel-light > .ee-section-header p,.ee-page .ee-panel-light .ee-section-header p,.ee-page .ee-panel-light .ee-card p {
	color: #5f6368 !important;
}

.ee-page > .ee-panel-light > .ee-section-header .ee-kicker,.ee-page .ee-panel-light .ee-kicker {
	color: #c55308 !important;
}

.ee-page .ee-panel-light .ee-feature-card h4 {
	color: #171717 !important;
}

.ee-page .ee-panel-light .ee-feature-card p {
	color: #5f6368 !important;
}

.ee-page .ee-panel-light .ee-feature-card {
	background: #fff !important;
	border-color: #e6e8ec !important;
	box-shadow: 0 12px 28px rgba(18, 21, 25, 0.055) !important;
}

.ee-page .ee-panel-light .ee-feature-card-warm {
	background: #fff !important;
	border-color: rgba(255, 134, 31, 0.24) !important;
}

.ee-page .ee-panel-light .ee-feature-card-cool {
	background: #fff !important;
	border-color: rgba(36, 95, 116, 0.22) !important;
}

.ee-page .ee-panel-dark,.ee-page .ee-panel-dark h2,.ee-page .ee-panel-dark h3,.ee-page .ee-panel-dark h4,.ee-page .ee-panel-dark div {
	color: #fff !important;
}

.ee-page .ee-panel-dark .ee-section-header p,.ee-page .ee-panel-dark .ee-overview-header p,.ee-page .ee-panel-dark .ee-feature-card p,.ee-page .ee-panel-dark .ee-faq p {
	color: rgba(255, 255, 255, 0.76) !important;
}

.ee-page .ee-panel-dark .ee-kicker,.ee-page .ee-panel-dark .ee-overview-header .ee-kicker {
	color: rgba(255, 255, 255, 0.62) !important;
}

.ee-page .ee-panel-dark .ee-overview-card,.ee-page .ee-panel-dark .ee-faq article {
	background: rgba(255, 255, 255, 0.09) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	color: #fff !important;
}

.ee-page .ee-panel-dark .ee-overview-card *,.ee-page .ee-panel-dark .ee-faq article * {
	color: #fff !important;
}

.ee-page .ee-panel-dark .ee-overview-card p,.ee-page .ee-panel-dark .ee-faq article p {
	color: rgba(255, 255, 255, 0.76) !important;
}

.ee-page .ee-panel-dark .ee-overview-card a {
	color: #9fd3e5 !important;
}

.ee-page .ee-panel-dark .ee-step,.ee-page .ee-panel-dark .ee-step *,.ee-page .ee-panel-dark .ee-step h3,.ee-page .ee-panel-dark .ee-step li,.ee-page .ee-panel-dark .ee-step div,.ee-page .ee-panel-dark .ee-step span {
	color: #171717 !important;
}

.ee-page .ee-panel-dark .ee-step p {
	color: #5f6368 !important;
}

.ee-page .ee-panel-dark .ee-card,.ee-page .ee-panel-dark .ee-card *,.ee-page .ee-panel-dark .ee-card h3,.ee-page .ee-panel-dark .ee-card div,.ee-page .ee-panel-dark .ee-card span {
	color: #171717 !important;
}

.ee-page .ee-panel-dark .ee-card p {
	color: #5f6368 !important;
}

.pp-page .pp-hero {
	padding: 84px 72px;
}

.pp-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 0.72fr);
	gap: 48px;
	align-items: center;
}

.pp-hero-card {
	display: grid;
	gap: 10px;
	padding: 28px;
	border-radius: 22px;
	background: #fff;
	border: 1px solid var(--pp-line);
	box-shadow: 0 18px 42px rgba(18, 21, 25, 0.075);
}

.pp-hero-card p {
	margin: 0;
	color: var(--pp-ink) !important;
	font-size: 1.08rem;
}

.pp-language-index {
	margin-top: 32px;
	padding: 44px;
	background: radial-gradient(circle at 88% 16%, rgba(255, 134, 31, 0.18), transparent 30%), #171717;
}

.pp-language-index .ee-section-header {
	max-width: 680px;
	margin-bottom: 26px;
}

.pp-language-list {
	display: block;
	max-width: 560px;
	padding: 14px 18px;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.055);
	border: 1px solid rgba(255, 255, 255, 0.10);
}

.pp-language-list p {
	display: block;
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.11);
}

.pp-language-list p:last-child {
	border-bottom: 0;
}

.pp-language-list a,.pp-language-list a:visited {
	display: flex !important;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	min-height: 40px;
	padding: 9px 2px;
	border-radius: 0;
	background: transparent;
	border: 0;
	color: #fff !important;
	font-weight: 800;
	font-size: .96rem;
	line-height: 1.18;
	text-align: left;
	text-decoration: none !important;
	text-underline-offset: 0;
	box-shadow: none;
}

.pp-language-list a:hover {
	color: #ffb16d !important;
	background: transparent;
	border-color: rgba(255, 177, 109, 0.38);
}

.pp-page .pp-policy-section {
	margin-top: 24px;
	padding: 38px 42px;
}

.pp-page .pp-policy-section .ee-section-header {
	margin-bottom: 20px;
}

.pp-page .pp-policy-section h2 {
	font-size: clamp(2rem, 5vw, 3.35rem);
}

.pp-policy-grid {
	display: block;
}

.pp-policy-points,.pp-policy-item {
	border-radius: 18px;
	border: 1px solid var(--pp-line);
	background: #fff;
	color: var(--pp-ink) !important;
	box-shadow: 0 10px 26px rgba(18, 21, 25, 0.045);
}

.pp-policy-points {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	margin-bottom: 16px;
	padding: 0;
	border-radius: 20px;
	border: 1px solid rgba(225, 229, 234, 0.88);
	background: rgba(255, 255, 255, 0.72);
	box-shadow: 0 12px 30px rgba(18, 21, 25, 0.035);
	overflow: hidden;
}

.pp-policy-points p {
	display: inline-flex;
	align-items: center;
	min-height: 54px;
	padding: 14px 18px;
	border-radius: 0;
	background: transparent;
	border: 0;
	border-right: 1px solid rgba(225, 229, 234, 0.88);
	box-shadow: none;
	font-size: .94rem;
}

.pp-policy-points p:last-child {
	border-right: 0;
}

.pp-policy-points p,.pp-policy-item p {
	margin: 0;
	color: inherit !important;
}

.pp-policy-points strong,.pp-policy-item strong {
	color: inherit !important;
	font-weight: 900;
}

.pp-policy-copy {
	display: grid;
	gap: 10px;
}

.pp-policy-item {
	padding: 18px 22px;
}

.pp-policy-item:last-child {
	background: #fffaf5;
	border-color: rgba(255, 134, 31, 0.22);
}

.pp-policy-item strong {
	display: block;
	margin-bottom: 2px;
	font-size: 1.08rem;
	line-height: 1.2;
}

.pp-policy-item br {
	display: block;
	content: "";
	margin-top: 2px;
}

.pp-contact-button,.pp-contact-button:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	min-height: 42px;
	margin-top: 16px;
	padding: 10px 15px;
	border-radius: 13px;
	background: #ff861f;
	color: #171717 !important;
	font-weight: 900;
	text-decoration: none;
	box-shadow: 0 12px 28px rgba(255, 134, 31, 0.22);
}

.pp-contact-button:hover {
	background: #ff9a3d;
}

.ee-page .ee-panel-light .pp-policy-points,.ee-page .ee-panel-light .pp-policy-item,.ee-page .ee-panel-light .pp-policy-points *,.ee-page .ee-panel-light .pp-policy-item * {
	color: var(--pp-ink) !important;
}

.ee-page .ee-panel-light .pp-policy-item p,.ee-page .ee-panel-light .pp-policy-points p {
	color: var(--pp-muted) !important;
}

.ee-page .ee-panel-light .pp-policy-item strong,.ee-page .ee-panel-light .pp-policy-points strong {
	color: var(--pp-ink) !important;
}

.ee-page .ee-panel-dark .pp-policy-points {
	background: rgba(255, 255, 255, 0.055) !important;
	border: 1px solid rgba(255, 255, 255, 0.14) !important;
	box-shadow: none !important;
}

.ee-page .ee-panel-dark .pp-policy-points p,.ee-page .ee-panel-dark .pp-policy-item {
	background: rgba(255, 255, 255, 0.09) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	color: #fff !important;
	box-shadow: none;
}

.ee-page .ee-panel-dark .pp-policy-item:last-child {
	background: rgba(255, 134, 31, 0.13) !important;
	border-color: rgba(255, 134, 31, 0.32) !important;
}

.ee-page .ee-panel-dark .pp-policy-points *,.ee-page .ee-panel-dark .pp-policy-item *,.ee-page .ee-panel-dark .pp-policy-copy,.ee-page .ee-panel-dark .pp-policy-copy * {
	color: #fff !important;
}

.ee-page .ee-panel-dark .pp-policy-item p,.ee-page .ee-panel-dark .pp-policy-points p {
	color: rgba(255, 255, 255, 0.80) !important;
}

.ee-page .ee-panel-dark .pp-policy-item strong,.ee-page .ee-panel-dark .pp-policy-points strong {
	color: #fff !important;
}

.ee-page .ee-panel-dark .pp-contact-button,.ee-page .ee-panel-dark .pp-contact-button:visited,.ee-page .ee-panel-light .pp-contact-button,.ee-page .ee-panel-light .pp-contact-button:visited {
	color: #171717 !important;
}

.about-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 0.42fr);
	gap: 68px;
	align-items: center;
}

.about-hero-copy {
	max-width: 760px;
}

.about-lede {
	max-width: 760px;
	margin: 24px 0 0;
	color: #33383f !important;
	font-size: 1.34rem;
	line-height: 1.5;
}

.about-profile-card {
	display: grid;
	justify-items: center;
	gap: 10px;
	padding: 34px 30px;
	border-radius: 26px;
	background: rgba(255, 255, 255, 0.84);
	border: 1px solid #e6e8ec;
	color: #171717 !important;
	box-shadow: 0 18px 48px rgba(18, 21, 25, 0.08);
	text-align: center;
}

.about-profile-card img {
	display: block;
	width: 148px;
	height: 148px;
	border-radius: 50%;
	object-fit: cover;
	border: 6px solid #fff;
	box-shadow: 0 14px 34px rgba(18, 21, 25, 0.18);
}

.about-profile-card h2 {
	margin: 8px 0 0;
	color: #171717 !important;
	font-size: 1.4rem;
	line-height: 1.18;
}

.about-profile-card p {
	margin: 0;
	color: #535b66 !important;
	font-weight: 800;
}

.about-profile-facts {
	display: grid;
	width: 100%;
	gap: 0;
	margin-top: 14px;
	border-top: 1px solid #e6e8ec;
}

.about-profile-facts span {
	display: block;
	padding: 10px 0;
	border-bottom: 1px solid #e6e8ec;
	color: #535b66 !important;
	font-size: .95rem;
	font-weight: 800;
}

.about-profile-facts span:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.about-principles {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	margin-top: 28px;
	overflow: hidden;
	border-radius: 24px;
	background: #fff;
	border: 1px solid #e6e8ec;
	box-shadow: 0 18px 42px rgba(18, 21, 25, 0.06);
}

.about-principles p {
	margin: 0;
	padding: 22px 24px;
	border-right: 1px solid #e6e8ec;
	color: #535b66 !important;
	box-shadow: none;
}

.about-principles p:last-child {
	border-right: 0;
}

.about-principles strong {
	display: block;
	margin-bottom: 4px;
	color: #171717 !important;
	font-weight: 900;
}

.about-copy {
	display: grid;
	gap: 14px;
	max-width: 860px;
}

.about-copy p {
	margin: 0;
	color: #33383f !important;
	font-size: 1.12rem;
}

.about-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.about-card {
	min-height: 100%;
	padding: 22px;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.09);
	border: 1px solid rgba(255, 255, 255, 0.18);
	color: #fff !important;
}

.about-card h3 {
	margin: 0 0 8px;
	color: #fff !important;
	font-size: 1.16rem;
	line-height: 1.18;
}

.about-card p {
	margin: 0;
	color: rgba(255, 255, 255, 0.78) !important;
}

.about-contact .ee-section-header {
	max-width: 820px;
}

.about-contact .ee-section-header p:not(.ee-kicker) {
	color: rgba(255, 255, 255, 0.78) !important;
}

.about-hero {
	padding: 84px 72px;
}

.about-hero-grid {
	grid-template-columns: minmax(0, 1fr) minmax(240px, 0.34fr);
	gap: 84px;
	align-items: center;
}

.about-lede {
	max-width: 820px;
}

.about-identity {
	display: grid;
	justify-items: start;
	gap: 18px;
	color: #171717 !important;
}

.about-portrait {
	display: block;
	width: min(240px, 100%);
	aspect-ratio: 1;
	border-radius: 50%;
	object-fit: cover;
	border: 8px solid #fff;
	box-shadow: 0 24px 60px rgba(18, 21, 25, 0.18);
}

.about-identity-copy h2 {
	margin: 0;
	color: #171717 !important;
	font-size: 1.55rem;
	line-height: 1.16;
}

.about-identity-copy p {
	margin: 5px 0 0;
	color: #535b66 !important;
	font-weight: 800;
}

.about-identity .about-profile-facts {
	width: 100%;
	margin-top: 2px;
	border-top: 1px solid rgba(23, 23, 23, 0.14);
}

.about-identity .about-profile-facts span {
	padding: 9px 0;
	border-bottom: 1px solid rgba(23, 23, 23, 0.12);
}

.about-hero-principles {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	max-width: 900px;
	margin-top: 34px;
	overflow: hidden;
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.76);
	border: 1px solid #e6e8ec;
	box-shadow: 0 16px 38px rgba(18, 21, 25, 0.055);
}

.about-hero-principles p {
	margin: 0;
	padding: 20px 22px;
	border-right: 1px solid #e6e8ec;
	color: #535b66 !important;
}

.about-hero-principles p:last-child {
	border-right: 0;
}

.about-hero-principles strong {
	display: block;
	margin-bottom: 3px;
	color: #171717 !important;
	font-weight: 900;
}

.about-content-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(280px, 0.78fr);
	gap: 34px;
	align-items: start;
}

.about-focus-list {
	display: grid;
	gap: 0;
	overflow: hidden;
	border-radius: 22px;
	background: #fff;
	border: 1px solid #e6e8ec;
	box-shadow: 0 14px 34px rgba(18, 21, 25, 0.045);
}

.about-focus-list article {
	padding: 20px 22px;
	border-bottom: 1px solid #e6e8ec;
}

.about-focus-list article:last-child {
	border-bottom: 0;
}

.about-focus-list h3,.about-contact-note h3 {
	margin: 0 0 6px;
	color: #171717 !important;
	font-size: 1.12rem;
	line-height: 1.2;
}

.about-focus-list p,.about-contact-note p {
	margin: 0;
	color: #535b66 !important;
}

.about-final-section .about-copy p {
	color: rgba(255, 255, 255, 0.78) !important;
}

.about-contact-note {
	padding: 24px;
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.09);
	border: 1px solid rgba(255, 255, 255, 0.18);
	color: #fff !important;
}

.about-contact-note h3 {
	color: #fff !important;
}

.about-contact-note p {
	color: rgba(255, 255, 255, 0.78) !important;
}

.about-personal-note {
	max-width: 760px;
	margin-top: 28px;
	padding-top: 22px;
	border-top: 1px solid rgba(23, 23, 23, 0.12);
}

.about-personal-note p {
	margin: 0;
	color: #535b66 !important;
	font-size: 1.08rem;
}

.about-identity {
	justify-items: center;
	text-align: center;
}

.about-identity-copy h2 {
	margin-top: 4px;
}

.about-work-section .about-copy p,.about-work-section .about-focus-list p {
	color: rgba(255, 255, 255, 0.78) !important;
}

.about-work-section .about-content-grid {
	grid-template-columns: 1fr;
	max-width: 880px;
	gap: 0;
}

.about-work-section .about-copy {
	max-width: 820px;
}

.about-work-section .about-focus-list {
	margin-top: 24px;
	overflow: visible;
	border-radius: 0;
	background: transparent;
	border: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
	box-shadow: none;
}

.about-work-section .about-focus-list article {
	padding: 18px 0;
	border-bottom-color: rgba(255, 255, 255, 0.16);
}

.about-work-section .about-focus-list h3 {
	color: #fff !important;
}

.about-app-principles {
	display: grid;
	gap: 0;
	margin-top: 24px;
	overflow: hidden;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.09);
	border: 1px solid rgba(255, 255, 255, 0.18);
}

.about-app-principles p {
	margin: 0;
	padding: 18px 20px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.16);
	color: rgba(255, 255, 255, 0.78) !important;
}

.about-app-principles p:last-child {
	border-bottom: 0;
}

.about-app-principles strong {
	display: block;
	margin-bottom: 3px;
	color: #fff !important;
	font-weight: 900;
}

.about-final-section .ee-section-header {
	max-width: 860px;
}

.about-final-section .ee-section-header p:not(.ee-kicker) {
	color: #535b66 !important;
	font-size: 1.12rem;
}

.about-impressum-section .ee-section-header {
	margin-bottom: 22px;
}

.about-impressum-card {
	max-width: 520px;
}

.about-impressum-card p {
	margin: 0;
	color: #535b66 !important;
}

.about-impressum-card p + p {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid #e6e8ec;
}

.about-impressum-card a {
	color: #171717 !important;
	font-weight: 800;
}

.contact-hero {
	padding: 84px 72px;
}

.contact-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(240px, 0.34fr);
	gap: 72px;
	align-items: center;
}

.contact-hero-copy {
	max-width: 820px;
}

.contact-lede {
	max-width: 760px;
	margin: 22px 0 0;
	color: #262a31 !important;
	font-size: clamp(1.3rem, 2.4vw, 2rem);
	line-height: 1.42;
}

.contact-identity {
	display: grid;
	justify-items: center;
	gap: 14px;
	text-align: center;
}

.contact-portrait {
	width: min(220px, 58vw);
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: 999px;
	border: 8px solid #fff;
	box-shadow: 0 22px 54px rgba(23, 23, 23, 0.18);
}

.contact-identity-copy h2 {
	margin: 6px 0 0;
	color: #171717 !important;
	font-size: clamp(1.35rem, 2.4vw, 2rem);
	line-height: 1.12;
}

.contact-identity-copy p {
	margin: 6px 0 0;
	color: #535b66 !important;
	font-weight: 800;
}

.contact-message-section .ee-section-header {
	max-width: 880px;
}

.contact-message-section .ee-section-header p:not(.ee-kicker) {
	color: rgba(255, 255, 255, 0.78) !important;
	font-size: 1.12rem;
}

.contact-lines {
	display: grid;
	max-width: 880px;
	margin-top: 26px;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.contact-lines article {
	padding: 18px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.16);
}

.contact-lines h3 {
	margin: 0 0 6px;
	color: #fff !important;
	font-size: 1.12rem;
	line-height: 1.2;
}

.contact-lines p {
	margin: 0;
	color: rgba(255, 255, 255, 0.78) !important;
}

.contact-form-handoff .ee-section-header {
	max-width: 860px;
}

.contact-form-handoff .ee-section-header p:not(.ee-kicker) {
	color: #535b66 !important;
	font-size: 1.12rem;
}

.home-hero {
	padding: 86px 72px;
}

.home-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.42fr);
	gap: 72px;
	align-items: center;
}

.home-hero-copy {
	max-width: 880px;
}

.home-lede {
	max-width: 760px;
	margin: 24px 0 0;
	color: #262a31 !important;
	font-size: clamp(1.28rem, 2.2vw, 1.9rem);
	line-height: 1.42;
}

.home-hero-apps {
	display: grid;
	grid-template-columns: repeat(2, minmax(96px, 1fr));
	gap: 22px;
	align-items: center;
	justify-items: center;
}

.home-hero-apps img {
	position: relative;
	width: min(188px, 38vw);
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: 36px;
	box-shadow: none;
}

.home-hero-apps img:first-child {
	z-index: 2;
	transform: translateX(16px);
}

.home-hero-apps img:last-child {
	z-index: 1;
	transform: translateX(-16px);
}

.home-app-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	max-width: 980px;
}

.home-app-card {
	display: grid;
	gap: 22px;
	align-content: start;
	min-height: 100%;
	padding: 32px;
	border-radius: 26px;
	background: rgba(255, 255, 255, 0.09);
	border: 1px solid rgba(255, 255, 255, 0.18);
	box-shadow: 0 18px 46px rgba(0, 0, 0, 0.16);
}

.home-app-card-feature {
	background: rgba(255, 255, 255, 0.13);
}

.home-app-heading {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 18px;
	align-items: center;
}

.home-app-heading img {
	width: 74px;
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: 18px;
}

.home-app-heading h3 {
	margin: 0;
	color: #fff !important;
	font-size: clamp(1.45rem, 2.8vw, 2.2rem);
	line-height: 1.05;
}

.home-app-heading p {
	margin: 6px 0 0;
	color: rgba(255, 255, 255, 0.74) !important;
	font-weight: 800;
}

.home-app-card > p {
	margin: 0;
	color: rgba(255, 255, 255, 0.78) !important;
	font-size: 1.08rem;
}

.home-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	align-items: center;
	margin-top: 4px;
}

.home-actions .ee-button {
	min-height: 56px;
}

.home-actions .ee-appstore img {
	width: 176px;
	height: auto;
}

.home-button-purple,.home-button-purple:visited {
	color: #fff !important;
	background: #5856d6 !important;
}

.home-button-purple:hover {
	background: #4b49c8 !important;
}

.home-contact-section .ee-section-header {
	max-width: 860px;
}

.home-contact-section .ee-section-header p:not(.ee-kicker) {
	color: rgba(255, 255, 255, 0.78) !important;
	font-size: 1.12rem;
}

.home-contact-section .ee-button {
	margin-top: 8px;
}

.kf-hero {
	padding: 88px 72px;
	background: radial-gradient(circle at 82% 20%, rgba(88, 86, 214, 0.22), transparent 34%), linear-gradient(135deg, #fbfaff 0%, #f6f8fb 48%, #eef3f7 100%);
}

.kf-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(260px, 0.55fr);
	gap: 72px;
	align-items: start;
}

.kf-hero-copy {
	display: grid;
	gap: 30px;
	max-width: 840px;
}

.kf-brand {
	gap: 22px;
	margin-bottom: 4px;
	font-size: clamp(2rem, 3.1vw, 3rem);
	line-height: 1;
}

.kf-brand img {
	width: clamp(86px, 8vw, 112px);
	height: clamp(86px, 8vw, 112px);
	border-radius: 24px;
	box-shadow: none;
}

.kf-brand span {
	color: #171717 !important;
	font-weight: 950;
}

.kf-page .ee-eyebrow {
	margin: 0;
	padding: 10px 18px;
	border-radius: 999px;
	color: #514fc4 !important;
	background: rgba(88, 86, 214, 0.12);
	font-weight: 900;
}

.kf-hero h1 {
	max-width: 760px;
	margin-top: 6px;
}

.kf-page .ee-kicker {
	color: #514fc4 !important;
}

.kf-page .ee-panel-dark .ee-kicker,.kf-page .ee-panel-dark .ee-overview-header .ee-kicker {
	color: rgba(255, 255, 255, 0.70) !important;
	display: inline-block;
	width: auto;
	padding: 0;
	background: transparent !important;
}

.kf-hero-phone {
	display: grid;
	justify-items: center;
}

.kf-hero-phone img {
	width: min(245px, 40vw);
	height: auto;
	border-radius: 34px;
	box-shadow: 0 24px 56px rgba(23, 23, 23, 0.18);
}

.kf-button,.kf-button:visited {
	color: #fff !important;
	background: var(--kf-purple) !important;
}

.kf-button:hover {
	background: var(--kf-purple-dark) !important;
}

.kf-page .ee-overview-card-feature {
	background: rgba(88, 86, 214, 0.18) !important;
	border-color: rgba(255, 255, 255, 0.20) !important;
}

.kf-intro-panel .ee-intro-copy p:first-child {
	font-weight: 900;
}

.kf-intro-panel .ee-intro-actions {
	justify-content: flex-start !important;
	align-items: center !important;
	width: fit-content;
	max-width: 100%;
}

.kf-intro-panel .ee-intro-actions .ee-button,.kf-intro-panel .ee-intro-actions .ee-appstore {
	width: auto !important;
}

.kf-intro-panel .ee-intro-actions .ee-appstore {
	display: inline-flex;
}

.kf-intro-panel .ee-intro-actions .ee-appstore img {
	margin: 0 !important;
}

.kf-flow {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.kf-step {
	display: grid;
	gap: 22px;
	align-content: space-between;
	align-items: start;
	padding: 30px;
	border-radius: 28px;
	background: #fff;
	border: 1px solid var(--kf-purple-border);
	box-shadow: 0 16px 42px rgba(18, 21, 25, 0.055);
}

.kf-step-copy {
	max-width: 720px;
}

.kf-step h3 {
	margin: 0 0 10px;
	color: #171717 !important;
	font-size: clamp(1.45rem, 2.5vw, 2rem);
	line-height: 1.12;
}

.kf-step p {
	margin: 0;
	color: #535b66 !important;
	font-size: 1.08rem;
}

.kf-step img {
	width: min(260px, 100%);
	height: auto;
	justify-self: center;
	border-radius: 24px;
	box-shadow: 0 16px 34px rgba(18, 21, 25, 0.11);
}

.kf-page .ee-panel-light .ee-card {
	border-color: var(--kf-purple-border);
}

.kf-privacy-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.kf-page .ee-panel-dark .ee-overview-card,.kf-page .ee-panel-dark .kf-privacy-grid .ee-card {
	background: rgba(255, 255, 255, 0.08) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	box-shadow: none;
}

.kf-page .ee-panel-dark .ee-overview-card *,.kf-page .ee-panel-dark .kf-privacy-grid .ee-card * {
	color: #fff !important;
}

.kf-page .ee-panel-dark .ee-overview-card p,.kf-page .ee-panel-dark .kf-privacy-grid .ee-card p {
	color: rgba(255, 255, 255, 0.76) !important;
}

.kf-quote-section .ee-section-header,.kf-final-section .ee-section-header {
	max-width: 900px;
}

.kf-quote-section .ee-section-header p:not(.ee-kicker) {
	color: #535b66 !important;
	font-size: 1.18rem;
}

.kf-quote-section .ee-section-header .kf-quote-source {
	margin-top: 18px;
	color: #514fc4 !important;
	font-size: 1rem;
	font-weight: 900;
}

.kf-final-section .ee-section-header p:not(.ee-kicker) {
	color: rgba(255, 255, 255, 0.78) !important;
	font-size: 1.12rem;
}

.kf-final-section .ee-appstore {
	display: inline-block;
	margin-top: 10px;
}

.kf-final-section .ee-appstore img {
	width: 190px;
}

@media (max-width: 980px) {
	.pp-hero-grid {
		grid-template-columns: 1fr;
	}
	
	.pp-language-list {
		grid-template-columns: 1fr !important;
	}
	
	.pp-policy-points {
		grid-template-columns: 1fr;
	}
	
	.pp-policy-points p {
		border-right: 0;
		border-bottom: 1px solid rgba(225, 229, 234, 0.88);
	}
	
	.pp-policy-points p:last-child {
		border-bottom: 0;
	}
	
	.about-hero-grid,.about-principles,.about-card-grid,.about-hero-principles,.about-content-grid,.contact-hero-grid,.home-hero-grid,.home-app-grid,.kf-hero-grid,.kf-flow,.kf-step,.kf-privacy-grid {
		grid-template-columns: 1fr;
	}
	
	.about-hero-grid,.contact-hero-grid,.home-hero-grid,.kf-hero-grid {
		gap: 42px;
	}
	
	.about-identity {
		grid-template-columns: auto minmax(0, 1fr);
		align-items: center;
		gap: 22px;
	}
	
	.about-identity .about-profile-facts {
		grid-column: 1 / -1;
	}
	
	.about-portrait {
		width: 148px;
	}
	
	.about-profile-card {
		justify-items: start;
		text-align: left;
	}
	
	.about-principles p {
		border-right: 0;
		border-bottom: 1px solid #e6e8ec;
	}
	
	.about-principles p:last-child {
		border-bottom: 0;
	}
	
	.about-hero-principles p {
		border-right: 0;
		border-bottom: 1px solid #e6e8ec;
	}
	
	.about-hero-principles p:last-child {
		border-bottom: 0;
	}
}

@media (max-width: 620px) {
	.pp-page .pp-hero,.pp-page .pp-policy-section,.pp-language-index {
		padding: 28px 22px;
	}
	
	.pp-hero-card,.pp-policy-points,.pp-policy-item {
		border-radius: 18px;
	}
	
	.pp-language-list {
		grid-template-columns: 1fr;
		padding: 12px 16px;
	}
	
	.about-profile-card {
		justify-items: center;
		text-align: center;
	}
	
	.about-hero {
		padding: 42px 24px;
	}
	
	.contact-hero {
		padding: 42px 24px;
	}
	
	.home-hero {
		padding: 42px 24px;
	}
	
	.kf-hero {
		padding: 42px 24px;
	}
	
	.about-identity {
		grid-template-columns: 1fr;
		justify-items: center;
		text-align: center;
	}
	
	.about-portrait {
		width: 170px;
	}
	
	.contact-portrait {
		width: 170px;
	}
	
	.home-hero-apps {
		justify-content: start;
		justify-items: start;
	}
	
	.kf-hero-phone {
		justify-items: start;
	}
	
	.about-lede,.contact-lede,.home-lede {
		font-size: 1.16rem;
	}
}

.ee-page .coop-nav,.ee-page .coop-nav * {
	color: #fff !important;
}

.ee-page .coop-nav a,.ee-page .coop-nav a:link,.ee-page .coop-nav a:visited,.ee-page .coop-nav a:hover,.ee-page .coop-nav a:focus,.ee-page .coop-nav a:focus-visible,.ee-page .coop-nav a:active {
	color: rgba(255, 255, 255, 0.86) !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
	border: 0 !important;
	border-bottom: 0 !important;
	box-shadow: none !important;
	background-image: none !important;
}

.ee-page .coop-nav .coop-nav-brand,.ee-page .coop-nav .coop-nav-brand:link,.ee-page .coop-nav .coop-nav-brand:visited,.ee-page .coop-nav .coop-nav-brand:hover,.ee-page .coop-nav .coop-nav-brand:focus,.ee-page .coop-nav .coop-nav-brand:active {
	color: #fff !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
	border: 0 !important;
	border-bottom: 0 !important;
	box-shadow: none !important;
	background-image: none !important;
}

.ee-page .coop-nav a.coop-nav-button.coop-nav-brand,.ee-page .coop-nav a.coop-nav-button.coop-nav-brand:link,.ee-page .coop-nav a.coop-nav-button.coop-nav-brand:visited,.ee-page .coop-nav a.coop-nav-button.coop-nav-brand:hover,.ee-page .coop-nav a.coop-nav-button.coop-nav-brand:focus,.ee-page .coop-nav a.coop-nav-button.coop-nav-brand:active {
	display: none !important;
	color: #fff !important;
	font-size: clamp(1.25rem, 2vw, 1.65rem) !important;
	font-weight: 900 !important;
}

/* PART 2 — NEW PORTFOLIO */
/* Created by Stephan Koopmans */
/* COOP SOFTWARE — WordPress portfolio, September 2026
   All new presentation styles are scoped to .cs-site.
   App accents: Exam Editor #ff861f; Key/Frame #5856d6.
   App surfaces blend 35% brand colour with white; icons stay fully opaque.
   Literal colours are intentional: WordPress.com Custom CSS strips custom properties.
   No imports, external fonts, frameworks, JavaScript, or build step required. */
.cs-site {
	color: #232326;
	background: #fcfcfd;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
	font-size: 1rem;
	line-height: 1.65;
	text-align: start;
	width: 100%;
	max-width: none;
	margin: 0;
	-webkit-font-smoothing: antialiased;
}

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

.cs-site :where(h1,h2,h3,p,figure,ul,ol,details) {
	margin: 0;
	padding: 0;
}

.cs-site :where(h1,h2,h3) {
	font-family: inherit;
	font-style: normal;
	text-transform: none;
	color: inherit;
	overflow-wrap: break-word;
}

.cs-site h1 {
	font-size: clamp(3.5rem, 6.4vw, 5.4rem);
	line-height: 1.03;
	font-weight: 500;
	letter-spacing: -.065em;
}

.cs-site h2 {
	font-size: clamp(2rem, 3.7vw, 2.75rem);
	line-height: 1.14;
	font-weight: 500;
	letter-spacing: -.045em;
}

.cs-site h3 {
	font-size: 1.375rem;
	line-height: 1.25;
	font-weight: 550;
	letter-spacing: -.03em;
}

.cs-site p {
	font-size: 1rem;
	color: #65656d;
}

.cs-site :where(h1,h2) > span:not([aria-hidden]) {
	color: #7b7b84;
}

.cs-site a, .cs-site a:visited {
	color: inherit;
	text-decoration: none;
	box-shadow: none;
	background-image: none;
}

.cs-site a:hover {
	color: #864000;
}

.cs-site a:focus-visible, .cs-site summary:focus-visible {
	outline: 3px solid #864000;
	outline-offset: 5px;
	border-radius: 4px;
}

.cs-site.cs-theme-key a:hover {
	color: #4946ba;
}

.cs-site.cs-theme-key a:focus-visible, .cs-site.cs-theme-key summary:focus-visible {
	outline-color: #4946ba;
}

.cs-site img {
	display: block;
	max-width: 100%;
	height: auto;
	border: 0;
}

.cs-site [id] {
	scroll-margin-top: 2rem;
}

.cs-site ::selection {
	background: #ffdfb9;
	color: #232326;
}

.cs-site .cs-container {
	width: min(100%, 1320px);
	padding-left: clamp(1.25rem, 4vw, 3rem);
	padding-right: clamp(1.25rem, 4vw, 3rem);
	margin: 0 auto;
}

.cs-site .cs-content {
	padding-bottom: 0;
}

.cs-site .cs-skip {
	position: absolute;
	left: 1rem;
	top: -10rem;
	background: #232326;
	color: white;
	padding: .75rem 1rem;
	z-index: 30;
}

.cs-site .cs-skip:focus {
	top: 1rem;
}

/* Shared navigation: every item remains available on phones. */
.cs-site .cs-header {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 1.5rem;
	padding: 1.65rem 0;
	border-bottom: 1px solid #dedee4;
}

.cs-site .cs-brand {
	display: inline-flex;
	align-items: center;
	gap: .12rem;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -.04em;
	white-space: nowrap;
	color: #232326;
}

.cs-site .cs-brand:hover {
	color: #232326;
}

.cs-site .cs-brand-light {
	font-weight: 400;
}

.cs-site .cs-brand-dot {
	color: #ff861f;
}

.cs-site .cs-monogram {
	font-weight: 800;
	font-size: 2.3rem;
	letter-spacing: -.23em;
	padding-right: .23em;
	margin-right: .8rem;
}

.cs-site .cs-monogram > span {
	color: #ff861f;
}

.cs-site.cs-theme-key .cs-brand-dot, .cs-site.cs-theme-key .cs-monogram > span {
	color: #5856d6;
}

.cs-site .cs-navigation {
	display: flex;
	flex: 1;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: .35rem 1.35rem;
	margin-left: auto;
}

.cs-site .cs-navigation a, .cs-site .cs-header > a:not(.cs-brand) {
	display: inline-flex;
	width: auto;
	min-height: 2.75rem;
	align-items: center;
	font-size: .875rem;
	font-weight: 500;
	white-space: nowrap;
}

.cs-site .cs-header > .cs-brand + a {
	margin-left: auto;
}

.cs-site .cs-navigation a[aria-current="page"], .cs-site .cs-header > a[aria-current="page"] {
	color: #864000;
	text-decoration: underline;
	text-underline-offset: .45rem;
}

.cs-site.cs-theme-key .cs-navigation a[aria-current="page"], .cs-site.cs-theme-key .cs-header > a[aria-current="page"] {
	color: #4946ba;
}

.cs-site .cs-languages {
	display: flex;
	padding: .2rem;
	border-radius: 2rem;
	border: 1px solid #dedee4;
	background: #f1f1f4;
}

.cs-site .cs-languages a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 2.75rem;
	min-height: 2.5rem;
	padding: 0 .55rem;
	font-size: .875rem;
	font-weight: 650;
	line-height: 1;
	border-radius: 2rem;
}

.cs-site .cs-languages a[aria-current="true"] {
	background: #232326;
	color: white;
}

/* WordPress.com can remove the two nav wrappers from a Custom HTML block. */
.cs-site .cs-header > a[lang] {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 2.75rem;
	min-height: 2.5rem;
	padding: 0 .55rem;
	border-top: 1px solid #dedee4;
	border-bottom: 1px solid #dedee4;
	background: #f1f1f4;
	font-weight: 650;
	line-height: 1;
}

.cs-site .cs-header > a[lang="en"] {
	margin-left: .2rem;
	border-left: 1px solid #dedee4;
	border-radius: 2rem 0 0 2rem;
}

.cs-site .cs-header > a[lang="de"] {
	margin-left: -1.5rem;
	border-right: 1px solid #dedee4;
	border-radius: 0 2rem 2rem 0;
}

.cs-site .cs-header > a[lang][aria-current="true"] {
	background: #232326;
	color: white;
	text-decoration: none;
}

/* Typography and shared actions. */
.cs-site .cs-eyebrow {
	font-size: .75rem;
	line-height: 1.6;
	letter-spacing: .12em;
	font-weight: 650;
	margin: 0 0 1.5rem;
	color: #864000;
	text-transform: uppercase;
}

.cs-site.cs-theme-key .cs-eyebrow {
	color: #4946ba;
}

.cs-site .cs-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 1.5rem;
	border: 1px solid transparent;
	border-radius: .6rem;
	padding: .85rem 1.15rem;
	min-height: 3.1rem;
	font-size: .875rem;
	font-weight: 650;
	line-height: 1.5;
	transition: transform .2s, background .2s;
	text-align: center;
}

.cs-site .cs-button:hover {
	transform: translateY(-3px);
}

.cs-site .cs-button-white, .cs-site .cs-button-white:visited {
	background: white;
	color: #232326;
}

.cs-site .cs-button-white:hover {
	background: #f1f1f4;
	color: #232326;
}

.cs-site .cs-button-dark, .cs-site .cs-button-dark:visited {
	background: #232326;
	color: white;
}

.cs-site .cs-button-dark:hover {
	background: #424249;
	color: white;
}

.cs-site .cs-text-link {
	display: inline-flex;
	align-items: center;
	gap: 1.3rem;
	min-height: 2.75rem;
	font-size: .875rem;
	font-weight: 600;
}

.cs-site .cs-button > span, .cs-site .cs-text-link > span {
	flex-shrink: 0;
	font-size: 1.2rem;
}

.cs-site .cs-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 1rem 1.5rem;
	margin-top: 1.8rem;
}

.cs-site .cs-section {
	padding: 4.5rem 0;
	border-bottom: 1px solid #dedee4;
}

.cs-site .cs-section-intro {
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	gap: 4rem;
	align-items: start;
	margin-bottom: 2rem;
}

.cs-site .cs-section-intro > p, .cs-site .cs-section-intro > div {
	max-width: 25rem;
	justify-self: end;
}

.cs-site .cs-section-intro .cs-text-link {
	margin-top: .75rem;
}

.cs-site .cs-lead {
	font-size: 1.125rem;
	line-height: 1.75;
}

/* Home: retain the editorial layout, give each app its own brand surface. */
.cs-site .cs-home-hero {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 3rem;
	align-items: end;
	padding: 4rem 0 3.75rem;
}

.cs-site .cs-home-hero h1 {
	font-size: clamp(4rem, 7.6vw, 6.25rem);
	line-height: .99;
}

.cs-site[lang="de"] .cs-home-hero h1 {
	font-size: clamp(3.5rem, 6.3vw, 5.3rem);
}

.cs-site .cs-hero-aside {
	max-width: 24rem;
	justify-self: end;
	padding-bottom: .35rem;
}

.cs-site .cs-hero-aside p {
	font-size: 1.125rem;
	line-height: 1.75;
	margin-bottom: 1.1rem;
}

.cs-site .cs-section-label {
	display: flex;
	justify-content: space-between;
	font-size: .75rem;
	letter-spacing: .12em;
	color: #65656d;
	margin-bottom: 1rem;
}

.cs-site .cs-project {
	display: grid;
	grid-template-columns: 40% 60%;
	min-height: 31rem;
	overflow: hidden;
	border-radius: 1.25rem;
	margin-bottom: 1.5rem;
}

.cs-site .cs-project-exam {
	background: #ffd5b1;
	color: #2d1907;
}

.cs-site .cs-project-key {
	background: #c5c4f1;
	color: #302d69;
}

.cs-site .cs-project-exam a:hover {
	color: #542805;
}

.cs-site .cs-project-key a:hover {
	color: #302d69;
}

.cs-site .cs-project-copy {
	padding: 2.65rem 0 2.4rem 2.65rem;
	z-index: 1;
}

.cs-site .cs-app-heading {
	display: flex;
	align-items: center;
	gap: .9rem;
}

.cs-site .cs-app-heading img {
	width: 3.65rem;
	height: 3.65rem;
	border-radius: .85rem;
}

.cs-site .cs-app-heading h2 {
	font-size: 1.45rem;
	letter-spacing: -.03em;
	font-weight: 600;
}

.cs-site .cs-app-heading p {
	font-size: .75rem;
	letter-spacing: .06em;
	line-height: 1.5;
	margin-top: .3rem;
	color: inherit;
}

.cs-site .cs-project-copy h3 {
	font-size: clamp(2.2rem, 3.5vw, 3rem);
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -.045em;
	margin: 2rem 0 1.25rem;
}

.cs-site .cs-project-copy > p:not(.cs-project-note) {
	color: inherit;
	margin: 0 1.4rem 1.5rem 0;
	max-width: 22rem;
}

.cs-site .cs-project-copy .cs-project-note {
	font-size: .8125rem;
	margin-top: 1.4rem;
	color: inherit;
}

.cs-site .cs-project-visual {
	position: relative;
	min-width: 0;
	align-self: center;
	padding: 2.5rem 0 2.5rem 1.5rem;
}

.cs-site .cs-project-exam .cs-tablet {
	width: 47rem;
	max-width: none;
	transform: rotate(-5deg);
	filter: drop-shadow(-8px 22px 23px #793b142b);
	transition: transform .5s;
}

.cs-site .cs-project-exam:hover .cs-tablet {
	transform: rotate(-3deg) translateY(-4px);
}

.cs-site .cs-project-key .cs-project-visual {
	height: 100%;
	min-height: 31rem;
	overflow: hidden;
	margin-left: 2rem;
	background: #b4b3ed;
}

.cs-site .cs-project-key .cs-phone {
	width: 16rem;
	max-width: none;
	position: absolute;
	top: 3.5rem;
	left: 25%;
	transform: rotate(10deg);
	border-radius: 2.4rem;
	border: 7px solid #24223b;
	box-shadow: 0 20px 50px #1f174b45;
	transition: transform .5s;
}

.cs-site .cs-project-key:hover .cs-phone {
	transform: rotate(6deg) translateY(-8px);
}

.cs-site .cs-home-about {
	padding-top: 4.75rem;
}

.cs-site .cs-principles {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 2.7rem;
	padding: 2rem 0 4rem;
}

.cs-site .cs-principles article {
	border-right: 1px solid #dedee4;
	padding-right: 2rem;
}

.cs-site .cs-principles article:last-child {
	border-right: 0;
}

.cs-site .cs-principle-symbol {
	display: block;
	font-size: 1.7rem;
	line-height: 1;
	color: #52525e;
	margin-bottom: 1rem;
}

.cs-site .cs-principles h3 {
	font-size: 1.125rem;
	margin-bottom: .6rem;
}

.cs-site .cs-principles p {
	font-size: .9375rem;
}

/* App pages. */
.cs-site .cs-product-hero {
	display: grid;
	grid-template-columns: 1fr 1.15fr;
	gap: 2.5rem;
	align-items: center;
	border-radius: 1.25rem;
	margin-top: 2.4rem;
	padding: 3.5rem 2.65rem;
	overflow: hidden;
}

.cs-site .cs-product-hero .cs-app-heading {
	margin-bottom: 1.7rem;
}

.cs-site .cs-product-hero h1 {
	font-size: clamp(2.8rem, 4.8vw, 4.25rem);
	margin-bottom: 1.4rem;
}

.cs-site .cs-product-hero .cs-eyebrow {
	margin-bottom: 1rem;
	color: inherit;
}

.cs-site .cs-exam-hero {
	background: #ffd5b1;
	color: #2d1907;
}

.cs-site .cs-exam-hero .cs-lead {
	color: #43290f;
}

.cs-site .cs-exam-hero .cs-text-link {
	color: #2d1907;
}

.cs-site .cs-exam-hero .cs-hero-media img {
	max-width: none;
	width: 43rem;
	transform: rotate(-3deg);
	filter: drop-shadow(0 18px 20px #77391130);
}

.cs-site .cs-feature-grid {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 1.3rem;
}

.cs-site .cs-feature-grid article {
	background: #f2f2f5;
	border-radius: .9rem;
	padding: 1.7rem;
}

.cs-site .cs-small-number {
	display: block;
	color: #864000;
	font-size: .8125rem;
	letter-spacing: .08em;
	font-variant-numeric: tabular-nums;
	margin-bottom: 1.2rem;
}

.cs-site.cs-theme-key .cs-small-number {
	color: #4946ba;
}

.cs-site .cs-feature-grid h3 {
	margin-bottom: .65rem;
	font-size: 1.2rem;
}

.cs-site .cs-workflow-list {
	border: 1px solid #dedee4;
	border-radius: 1rem;
	overflow: hidden;
}

.cs-site .cs-workflow-step + .cs-workflow-step {
	border-top: 1px solid #dedee4;
}

.cs-site details > summary {
	list-style: none;
	cursor: pointer;
}

.cs-site details > summary::-webkit-details-marker {
	display: none;
}

.cs-site .cs-workflow-step > summary {
	display: flex;
	align-items: center;
	gap: 1.1rem;
	padding: 1.35rem 1.6rem;
	min-height: 4rem;
	font-size: 1.125rem;
	font-weight: 550;
}

.cs-site .cs-workflow-step[open] > summary {
	background: #fff0df;
}

.cs-site .cs-step-number {
	color: #864000;
	font-size: .8125rem;
	letter-spacing: .1em;
}

.cs-site .cs-expand {
	margin-left: auto;
	font-size: 1.5rem;
	font-weight: 400;
}

.cs-site details[open] > summary .cs-expand {
	transform: rotate(45deg);
}

.cs-site .cs-step-content {
	display: grid;
	grid-template-columns: .8fr 1.4fr;
	align-items: center;
	gap: 2.5rem;
	padding: 2rem;
	background: #f4f4f6;
}

.cs-site .cs-step-content h3 {
	font-size: 1.75rem;
	margin-bottom: 1rem;
}

.cs-site .cs-step-content ul {
	margin: 1.25rem 0 0;
	padding-left: 1.2rem;
}

.cs-site .cs-step-content li {
	font-size: .9375rem;
	margin-bottom: .5rem;
}

.cs-site .cs-step-content li::marker {
	color: #864000;
}

.cs-site .cs-screenshot {
	min-width: 0;
}

.cs-site .cs-screenshot a {
	display: block;
	position: relative;
	border-radius: .9rem;
}

.cs-site .cs-screenshot a:hover img {
	filter: brightness(.97);
}

.cs-site .cs-zoom {
	display: flex;
	align-items: center;
	gap: .6rem;
	position: absolute;
	right: 1rem;
	bottom: 1rem;
	padding: .45rem .8rem;
	background: white;
	color: #232326;
	border-radius: 2rem;
	box-shadow: 0 2px 10px #0002;
	font-size: .75rem;
}

.cs-site .cs-question-media-grid {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	gap: 2rem;
	align-items: stretch;
	margin-top: 2.5rem;
}

.cs-site .cs-capability-group {
	min-width: 0;
	padding: 1.75rem;
	background: #f4f4f6;
	border-radius: 1rem;
}

.cs-site .cs-media-group {
	background: #fff0df;
}

.cs-site .cs-capability-group > h3 {
	font-size: 1.35rem;
	margin-bottom: .55rem;
}

.cs-site .cs-capability-group > p {
	min-height: 3.3rem;
}

.cs-site .cs-capability-list {
	margin-top: 1.25rem;
}

.cs-site .cs-capability-list details, .cs-site .cs-faq details {
	border-bottom: 1px solid #dedee4;
}

.cs-site .cs-media-group .cs-capability-list details {
	border-bottom-color: #e5c8aa;
}

.cs-site .cs-capability-list summary, .cs-site .cs-faq summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	font-weight: 550;
	padding: 1.1rem 0;
}

.cs-site .cs-capability-list details p, .cs-site .cs-faq details p {
	margin: 0 0 1.3rem;
}

.cs-site .cs-capability-list summary > span, .cs-site .cs-faq summary > span {
	font-size: 1.4rem;
	font-weight: 400;
}

.cs-site .cs-capability-list details[open] summary > span, .cs-site .cs-faq details[open] summary > span {
	transform: rotate(45deg);
}

.cs-site .cs-faq {
	display: grid;
	grid-template-columns: .7fr 1.2fr;
	gap: 4rem;
	border-bottom: 0;
}

.cs-site .cs-key-hero {
	background: #c5c4f1;
	color: #302d69;
	grid-template-columns: 1.2fr .8fr;
}

.cs-site .cs-key-hero .cs-lead {
	color: #403d71;
}

.cs-site .cs-key-hero .cs-text-link {
	color: #302d69;
}

.cs-site .cs-key-hero .cs-button-dark {
	background: white;
	color: #343181;
}

.cs-site .cs-key-hero .cs-button-dark:hover {
	background: #eae9ff;
}

.cs-site .cs-key-hero-media {
	display: flex;
	justify-content: center;
	min-height: 29rem;
	max-height: 31rem;
	overflow: hidden;
}

.cs-site .cs-key-hero-media .cs-phone {
	width: 15rem;
	max-width: 100%;
	height: auto;
	align-self: flex-start;
	border-radius: 2rem;
	transform: rotate(6deg);
	border: 6px solid #28243f;
	box-shadow: 0 18px 35px #1c175e40;
}

.cs-site .cs-key-steps {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 1.5rem;
}

.cs-site .cs-key-steps article {
	padding: 1.7rem;
	border: 1px solid #dfddf4;
	border-radius: 1rem;
	background: #f1f0fb;
}

.cs-site .cs-key-steps article h3 {
	margin-bottom: .6rem;
}

.cs-site .cs-key-steps article > p {
	min-height: 5rem;
}

.cs-site .cs-key-steps img {
	width: 13.5rem;
	margin: 1.5rem auto 0;
	border-radius: 1.4rem;
	box-shadow: 0 10px 25px #2e225215;
}

.cs-site .cs-key-steps a {
	display: block;
}

.cs-site .cs-privacy-callout {
	padding: 3rem;
	background: #edecfa;
	border-radius: 1rem;
	margin: 3rem 0;
}

.cs-site .cs-privacy-callout p:not(.cs-eyebrow) {
	max-width: 43rem;
	margin: 1.2rem 0;
}

/* Developer and contact: existing WordPress legal and form blocks are preserved. */
.cs-site .cs-about-hero, .cs-site .cs-contact-hero {
	display: grid;
	grid-template-columns: 1.5fr .7fr;
	gap: 4.5rem;
	align-items: center;
	padding: 4rem 0;
}

.cs-site .cs-about-hero h1, .cs-site .cs-contact-hero h1 {
	font-size: clamp(3rem, 5vw, 4.3rem);
}

.cs-site .cs-about-hero .cs-lead, .cs-site .cs-contact-hero .cs-lead {
	margin: 1.65rem 0 1rem;
	max-width: 40rem;
}

.cs-site .cs-about-hero .cs-text-link {
	margin-top: 1rem;
}

.cs-site .cs-about-hero figure, .cs-site .cs-contact-hero figure {
	padding: 1rem;
	background: #efeff3;
	border-radius: 1rem;
}

.cs-site .cs-about-hero figure img, .cs-site .cs-contact-hero figure img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: .6rem;
}

.cs-site .cs-about-hero figcaption, .cs-site .cs-contact-hero figcaption {
	font-size: .875rem;
	padding: 1rem .2rem .2rem;
	display: grid;
	gap: .3rem;
}

.cs-site figcaption > span {
	color: #65656d;
	font-size: .8125rem;
}

.cs-site .cs-about-apps {
	border-top: 1px solid #dedee4;
	border-bottom: 0;
}

.cs-site .cs-app-links {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.4rem;
}

.cs-site .cs-app-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 2rem;
	border-radius: .9rem;
	font-size: 1.5rem;
	font-weight: 550;
}

.cs-site .cs-app-link-exam {
	background: #ffd5b1;
	color: #2d1907;
}

.cs-site .cs-app-link-key {
	background: #c5c4f1;
	color: #302d69;
}

.cs-site .cs-app-link-key:hover {
	color: #302d69;
	background: #b4b3ed;
}

.cs-site .cs-app-link-exam:hover {
	color: #2d1907;
	background: #ffc99a;
}

.cs-site .cs-form-intro {
	padding: 2rem 0 1.5rem;
	width: 100%;
	max-width: 45rem;
	margin: 0;
	border-top: 1px solid #dedee4;
}

.cs-site .cs-form-intro p:not(.cs-eyebrow) {
	margin-top: 1.2rem;
}

.cs-site .cs-cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 3rem;
	background: #232326;
	color: white;
	padding: 3rem;
	border-radius: 1.25rem;
	margin: 0 0 3.5rem;
}

.cs-site .cs-cta .cs-eyebrow {
	color: #ffb96b;
}

.cs-site .cs-cta p:not(.cs-eyebrow) {
	color: #c0c0c9;
	max-width: 30rem;
	margin-top: 1.4rem;
}

.cs-site .cs-cta .cs-button, .cs-site .cs-contact-link {
	flex-shrink: 0;
}

.cs-site .cs-contact-link {
	display: inline-flex;
	gap: 1.5rem;
	align-items: center;
	padding: 1rem 0;
	border-bottom: 1px solid #797982;
	font-size: 1.125rem;
}

.cs-site .cs-contact-link > span {
	color: #ffb96b;
	font-size: 1.75rem;
}

.cs-site .cs-contact-link:hover {
	color: #ffb96b;
}

.cs-site.cs-theme-key .cs-cta {
	background: #c5c4f1;
	color: #302d69;
}

.cs-site.cs-theme-key .cs-cta .cs-eyebrow {
	color: #403d71;
}

.cs-site.cs-theme-key .cs-cta p:not(.cs-eyebrow) {
	color: #403d71;
}

.cs-site.cs-theme-key .cs-cta .cs-button-dark {
	background: white;
	color: #343184;
}

.cs-site .cs-footer {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 1.4rem;
	border-top: 1px solid #dedee4;
	padding: 2rem 0;
}

.cs-site .cs-footer .cs-brand {
	font-size: 1.2rem;
}

.cs-site .cs-footer .cs-monogram {
	display: none;
}

.cs-site .cs-footer p {
	font-size: .8125rem;
	margin-top: .65rem;
}

.cs-site .cs-footer-navigation {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
}

.cs-site .cs-footer-navigation a {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	min-height: 2.75rem;
	font-size: .875rem;
}

.cs-site .cs-footer .cs-copyright {
	margin: 0;
	font-size: .75rem;
}

/* Shared privacy URL: retain all existing language anchors and legal wording. */
.cs-site .cs-policy-hero {
	padding: 4rem 0 2rem;
}

.cs-site .cs-policy-hero h1 {
	font-size: clamp(2.8rem,5vw,4.4rem);
}

.cs-site .cs-policy-hero p:not(.cs-eyebrow) {
	margin-top: 1.5rem;
}

.cs-site .cs-policy-languages {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	padding-bottom: 3rem;
}

.cs-site .cs-policy-languages a {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	padding: .5rem .8rem;
	background: #eeeef2;
	border-radius: .5rem;
	font-size: .875rem;
}

.cs-site .cs-policy {
	border-top: 1px solid #dedee4;
	padding: 3rem 0;
}

.cs-site .cs-policy > div:first-child {
	margin-bottom: 1.5rem;
}

.cs-site .cs-policy > div:first-child > p {
	font-size: .75rem;
	letter-spacing: .08em;
	margin-bottom: .5rem;
}

.cs-site .cs-policy > div:last-child {
	display: grid;
	grid-template-columns: .8fr 1.3fr;
	gap: 3rem;
}

.cs-site .cs-policy aside {
	padding: 1.5rem;
	background: #f0f0f4;
	border-radius: .8rem;
	align-self: start;
}

.cs-site .cs-policy aside p + p {
	margin-top: .8rem;
}

.cs-site .cs-policy article {
	margin-bottom: 1.3rem;
}

.cs-site .cs-policy strong {
	color: #34343b;
	font-weight: 600;
}

.cs-site .cs-policy article a {
	display: inline-block;
	margin-top: .6rem;
	text-decoration: underline;
	text-underline-offset: .25rem;
}

.cs-site .cs-policy:target {
	border-top: 3px solid #5856d6;
}

.cs-site .cs-preview-note {
	padding: 2rem 0;
	color: #65656d;
	background: #f1f1f4;
	border-radius: 1rem;
}

/* WordPress integration, restricted to pages containing the new HTML.
   Keep the WordPress admin bar and all form/consent controls functional.
   Native theme header/footer are redundant with the navigation above. */
body:has(.cs-site) {
	background: #fcfcfd !important;
}

body:has(.cs-site) .wp-site-blocks {
	padding-top: 0;
	padding-bottom: 0;
}

body:has(.cs-site) .wp-site-blocks > header.wp-block-template-part,
body:has(.cs-site) .wp-site-blocks > footer.wp-block-template-part {
	display: none;
}

body:has(.cs-site) #wp--skip-link--target {
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
}

body:has(.cs-site) .entry-content {
	margin-top: 0;
}

body:has(.cs-site) .entry-content > .wp-block-group:has(.cs-site),
body:has(.cs-site) .entry-content > .cs-site,
body:has(.cs-site) .entry-content > .wp-block-html:has(.cs-site) {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

body:has(.cs-contact-site, .cs-about-site) .entry-content > .wp-block-spacer {
	height: 1.5rem !important;
}

/* Style, but never replace, the existing live Jetpack form. */
body:has(.cs-contact-site, .cs-about-site) .entry-content > .wp-block-group:has(.wp-block-jetpack-contact-form) {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin: 0;
	padding-left: clamp(1.25rem, 4vw, 3rem);
	padding-right: clamp(1.25rem, 4vw, 3rem);
	align-items: flex-start;
}

body:has(.cs-contact-site, .cs-about-site) .jetpack-contact-form-container {
	width: 100%;
	max-width: 45rem;
	margin-left: 0;
	margin-right: auto;
}

body:has(.cs-contact-site, .cs-about-site) .wp-block-jetpack-contact-form {
	width: 100%;
	max-width: 45rem;
	margin: 1rem 0 3rem;
	color: #232326;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

body:has(.cs-contact-site, .cs-about-site) .contact-form label {
	color: #232326;
	font-size: 1rem;
}

body:has(.cs-contact-site, .cs-about-site) .contact-form :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]), textarea, select) {
	width: 100%;
	background: #fff;
	color: #232326;
	border: 1px solid #d4d4dd;
	border-radius: .6rem;
	padding: .85rem;
	font: inherit;
}

body:has(.cs-contact-site, .cs-about-site) .contact-form textarea {
	min-height: 11rem;
}

body:has(.cs-contact-site, .cs-about-site) .contact-form :is(button[type="submit"],input[type="submit"]) {
	background: #232326;
	color: white;
	border: 0;
	border-radius: .6rem;
	padding: .85rem 1.5rem;
	min-height: 3rem;
	font-size: 1rem;
}

body:has(.cs-contact-site, .cs-about-site) .contact-form :is(input,textarea,select,button):focus-visible {
	outline: 3px solid #5856d6;
	outline-offset: 3px;
}

/* Existing legal block is moved, not copied into this package. */
body:has(.cs-about-site) .about-impressum-section {
	width: calc(100% - 2.5rem);
	max-width: 75rem;
	padding: 2rem;
	margin: 0 auto 2rem;
	border-radius: 1rem;
	background: #f1f1f4;
	color: #232326;
}

body:has(.cs-about-site) .about-impressum-section :is(h2,p,a) {
	color: #232326 !important;
}

@media (max-width: 1100px) {
	.cs-site .cs-header {
		flex-wrap: wrap;
		gap: .8rem 1.1rem;
		padding-bottom: 1rem;
	}
	
	.cs-site .cs-header::after {
		content: "";
		flex-basis: 100%;
		height: 0;
		order: 2;
	}
	
	.cs-site .cs-brand {
		order: 1;
	}
	
	.cs-site .cs-languages, .cs-site .cs-header > a[lang] {
		order: 2;
	}
	
	.cs-site .cs-languages {
		margin-left: auto;
	}
	
	.cs-site .cs-header > a[lang="en"] {
		margin-left: auto;
	}
	
	.cs-site .cs-header > a[lang="de"] {
		margin-left: -1.1rem;
	}
	
	.cs-site .cs-navigation, .cs-site .cs-header > a:not(.cs-brand):not([lang]) {
		order: 3;
	}
	
	.cs-site .cs-navigation {
		flex-basis: 100%;
		justify-content: flex-start;
		margin-left: 0;
	}
	
	.cs-site .cs-header > .cs-brand + a {
		margin-left: 0;
	}
	
	.cs-site .cs-project-copy {
		padding-left: 1.8rem;
	}
	
	.cs-site .cs-product-hero {
		padding: 2.5rem 1.8rem;
		gap: 2rem;
	}
	
	.cs-site .cs-product-hero h1 {
		font-size: 3.1rem;
	}
	
	.cs-site .cs-about-hero, .cs-site .cs-contact-hero {
		gap: 2.5rem;
	}
	
	.cs-site .cs-key-steps article {
		padding: 1.25rem;
	}
}

@media (max-width: 850px) {
	.cs-site .cs-home-hero {
		gap: 1.5rem;
	}
	
	.cs-site .cs-section-intro {
		gap: 2rem;
	}
	
	.cs-site .cs-project {
		grid-template-columns: 46% 54%;
	}
	
	.cs-site .cs-project-copy h3 {
		font-size: 2.2rem;
	}
	
	.cs-site .cs-project-exam .cs-tablet {
		width: 38rem;
	}
	
	.cs-site .cs-project-key .cs-phone {
		left: 12%;
	}
	
	.cs-site .cs-project-key .cs-project-visual {
		margin-left: .5rem;
	}
	
	.cs-site .cs-product-hero {
		grid-template-columns: 1fr;
		gap: 2rem;
	}
	
	.cs-site .cs-exam-hero .cs-hero-media img {
		width: 100%;
		max-width: 100%;
		transform: none;
	}
	
	.cs-site .cs-key-hero {
		grid-template-columns: 1fr .65fr;
	}
	
	.cs-site .cs-step-content {
		gap: 1.5rem;
		padding: 1.5rem;
		grid-template-columns: 1fr;
	}
	
	.cs-site .cs-screenshot {
		max-width: 46rem;
	}
	
	.cs-site .cs-principles {
		gap: 1.5rem;
	}
	
	.cs-site .cs-principles article {
		padding-right: 1rem;
	}
	
	.cs-site .cs-cta {
		flex-direction: column;
		align-items: flex-start;
		gap: 1.5rem;
		padding: 2.25rem;
	}
	
	.cs-site .cs-about-hero, .cs-site .cs-contact-hero {
		grid-template-columns: 1fr .6fr;
	}
	
	.cs-site .cs-faq {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}
	
	.cs-site .cs-key-steps {
		gap: 1rem;
	}
	
	.cs-site .cs-key-steps article > p {
		min-height: 8rem;
	}
	
	.cs-site .cs-policy > div:last-child {
		gap: 1.5rem;
	}
	
	.cs-site .cs-question-media-grid {
		grid-template-columns: 1fr;
	}
	
	.cs-site .cs-capability-group > p {
		min-height: 0;
	}
}

@media (max-width: 620px) {
	.cs-site .cs-header {
		padding-top: 1.25rem;
	}
	
	.cs-site .cs-brand {
		font-size: 1.1rem;
	}
	
	.cs-site .cs-monogram {
		margin-right: .6rem;
		font-size: 2rem;
	}
	
	.cs-site .cs-navigation {
		gap: 0 1.05rem;
	}
	
	.cs-site .cs-navigation a {
		font-size: .875rem;
	}
	
	.cs-site .cs-home-hero {
		grid-template-columns: 1fr;
		padding: 2.5rem 0;
	}
	
	.cs-site .cs-home-hero h1 {
		font-size: clamp(3.75rem,13vw,5rem);
	}
	
	.cs-site[lang="de"] .cs-home-hero h1 {
		font-size: clamp(3.3rem,11vw,4rem);
	}
	
	.cs-site .cs-hero-aside {
		max-width: none;
		justify-self: start;
	}
	
	.cs-site .cs-hero-aside p {
		font-size: 1rem;
	}
	
	.cs-site .cs-eyebrow {
		font-size: .75rem;
		letter-spacing: .075em;
		margin-bottom: 1.2rem;
	}
	
	.cs-site .cs-project {
		grid-template-columns: 1fr;
		min-height: 0;
	}
	
	.cs-site .cs-project-copy {
		padding: 1.75rem 1.5rem 0;
	}
	
	.cs-site .cs-project-copy h3 {
		font-size: 2.4rem;
	}
	
	.cs-site .cs-project-copy > p:not(.cs-project-note) {
		max-width: none;
		margin-right: 0;
	}
	
	.cs-site .cs-project-exam .cs-project-visual {
		padding: 2rem 0 2rem 1.5rem;
	}
	
	.cs-site .cs-project-exam .cs-tablet {
		width: 112%;
	}
	
	.cs-site .cs-project-key .cs-project-visual {
		min-height: 23rem;
		margin: 1.5rem 0 0;
	}
	
	.cs-site .cs-project-key .cs-phone {
		width: 14rem;
		left: calc(50% - 7rem);
		top: 2rem;
	}
	
	.cs-site .cs-section, .cs-site .cs-home-about {
		padding-top: 3rem;
	}
	
	.cs-site .cs-section {
		padding-bottom: 3rem;
	}
	
	.cs-site .cs-section-intro {
		grid-template-columns: 1fr;
		gap: 1.2rem;
	}
	
	.cs-site .cs-section-intro > p, .cs-site .cs-section-intro > div {
		max-width: none;
		justify-self: start;
	}
	
	.cs-site .cs-principles {
		grid-template-columns: 1fr;
		gap: 1.25rem;
		padding: 1.5rem 0 3rem;
	}
	
	.cs-site .cs-principles article {
		position: relative;
		border-right: 0;
		border-bottom: 1px solid #dedee4;
		padding: 0 0 1.25rem 2.5rem;
	}
	
	.cs-site .cs-principles article:last-child {
		border-bottom: 0;
		padding-bottom: 0;
	}
	
	.cs-site .cs-principle-symbol {
		position: absolute;
		top: 0;
		left: 0;
	}
	
	.cs-site .cs-product-hero {
		margin-top: 1.5rem;
		padding: 1.75rem 1.5rem;
	}
	
	.cs-site .cs-product-hero h1 {
		font-size: 2.7rem;
	}
	
	.cs-site .cs-lead {
		font-size: 1rem;
	}
	
	.cs-site .cs-feature-grid {
		grid-template-columns: 1fr;
	}
	
	.cs-site .cs-feature-grid article {
		padding: 1.5rem;
	}
	
	.cs-site .cs-workflow-step > summary {
		padding: 1rem 1.2rem;
		font-size: 1rem;
	}
	
	.cs-site .cs-step-content {
		padding: 1.25rem;
	}
	
	.cs-site .cs-step-content h3 {
		font-size: 1.55rem;
	}
	
	.cs-site .cs-zoom {
		right: .6rem;
		bottom: .6rem;
		font-size: .75rem;
		padding: .4rem .65rem;
	}
	
	.cs-site .cs-capability-group {
		padding: 1.5rem;
	}
	
	.cs-site .cs-key-hero {
		grid-template-columns: 1fr;
	}
	
	.cs-site .cs-key-hero-media {
		min-height: 22rem;
		max-height: 22rem;
		margin-bottom: -1.75rem;
	}
	
	.cs-site .cs-key-steps {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}
	
	.cs-site .cs-key-steps article {
		padding: 1.75rem;
	}
	
	.cs-site .cs-key-steps article > p {
		min-height: 0;
	}
	
	.cs-site .cs-key-steps img {
		width: 14rem;
	}
	
	.cs-site .cs-privacy-callout {
		padding: 1.75rem;
		margin: 2rem 0;
	}
	
	.cs-site .cs-about-hero, .cs-site .cs-contact-hero {
		grid-template-columns: 1fr;
		gap: 2rem;
		padding: 2.5rem 0;
	}
	
	.cs-site .cs-about-hero h1, .cs-site .cs-contact-hero h1 {
		font-size: 3rem;
	}
	
	.cs-site .cs-about-hero figure, .cs-site .cs-contact-hero figure {
		max-width: 18rem;
	}
	
	.cs-site .cs-app-links {
		grid-template-columns: 1fr;
	}
	
	.cs-site .cs-app-link {
		padding: 1.5rem;
	}
	
	.cs-site .cs-cta {
		padding: 1.75rem;
		margin-bottom: 2.5rem;
	}
	
	.cs-site .cs-cta .cs-button {
		flex-shrink: 1;
		width: 100%;
	}
	
	.cs-site .cs-footer {
		grid-template-columns: 1fr;
		gap: 1rem;
		padding: 1.5rem 0;
	}
	
	.cs-site .cs-footer-navigation {
		gap: 1rem;
	}
	
	.cs-site .cs-policy-hero {
		padding-top: 2.5rem;
	}
	
	.cs-site .cs-policy-hero h1 {
		font-size: 2.5rem;
		overflow-wrap: anywhere;
	}
	
	.cs-site .cs-policy > div:last-child {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	.cs-site *, .cs-site ::before, .cs-site ::after {
		transition: none !important;
		animation: none !important;
		scroll-behavior: auto !important;
	}
}

@media print {
	.cs-site .cs-header, .cs-site .cs-languages, .cs-site .cs-cta, .cs-site .cs-footer {
		display: none;
	}
	
	.cs-site {
		background: white;
		color: black;
	}
	
	.cs-site .cs-project, .cs-site .cs-product-hero {
		break-inside: avoid;
	}
}