/* 			Parameters					*/
/* 			General						*/
/* 			Header						*/
/*			Footer						*/
/*			Form						*/




/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */
/*                                                                                          */
/* 			Definition der Parameter														*/
/*                                                                                          */
/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */


:root {
	/* Farben */
	--KfW-Dunkelblau: #005A8C;
	--KfW-Dunkelblau-Digital: #00446e;
	--KfW-Hellgrün-Digital: #879900;
	--KfW-Hellblau-Digital: #519dc2;
	--KfW-Hellblau-Digital-20: #ebf3f7;
	--KfW-Dunkelgrau: #5a6166;
	--KfW-Dunkelgrau-40: #bdc0c2;
	--KfW-Petrol: #13556f;
	--KfW-Hellgrau: #f0eee1;
	--KfW-Hellgrau-60: #f6f5ed;
	--KfW-Weiss: #ffffff;
	--KfW-Error-Farbe: #ca0036;
	--KfW-Visited-Link: #800080;
	--KfW-Button-Background: #1B618C;
	--KfW-Rot-Fehlermeldung: red;
	--Platinum: #E0E0E0;
	--Flirt: #970F76;
	--Antiflashwhite: #F2F2F2;
	--TyrianPurple: #5A0946;
	--Night: #222222;
	--Ebony: #5c5c5c;
	--Black: #000000;
	--Whitesmoke: #F6F2F4;
	/* Abstnde  */
	--KfW-Margin-Top: 1rem;
	--KfW-Margin-Left: auto;
	--KfW-Margin-Right: auto;
	--KfW-Margin-Bottom-Button: 25px;
	--KfW-Margin-Top-Footer-KFW: 7px;
	--KfW-Margin-Top-NL-90: 90px;
	--KfW-Margin-Top-NL-45: 45px;

	/* Schriftarten */
	--KfW-Font-Family: kfw_centro_sansregular;
	--KfW-Font-Size: 1.0rem;
	--KfW-Font-Weight: normal;
	--KfW-Line-Height: inherit;
	--KfW-Letter-Spacing: normal;

	/* berschriften */
	--KfW-H1-Font-Size: 2.0rem;
	--KfW-H1-Font-Weight: 600;
	--KfW-H1-Line-Height: normal;
	--KfW-H1-Letter-Spacing: normal;

	--KfW-H2-Font-Size: 1.8rem;
	--KfW-H2-Font-Weight: 500;
	--KfW-H2-Line-Height: normal;
	--KfW-H2-Letter-Spacing: normal;

	--KfW-H3-Font-Size: 1.6rem;
	--KfW-H3-Font-Weight: 500;
	--KfW-H3-Line-Height: normal;
	--KfW-H3-Letter-Spacing: normal;

	--KfW-H4-Font-Size: 1.4rem;
	--KfW-H4-Font-Weight: 500;
	--KfW-H4-Line-Height: normal;
	--KfW-H4-Letter-Spacing: normal;

	--KfW-H5-Font-Size: 1.2rem;
	--KfW-H5-Font-Weight: 500;
	--KfW-H5-Line-Height: normal;
	--KfW-H5-Letter-Spacing: normal;

	--KfW-H6-Font-Size: 1.2rem;
	--KfW-H6-Font-Weight: 500;
	--KfW-H6-Line-Height: normal;
	--KfW-H6-Letter-Spacing: normal;

	/* Icons */
	--KfW-Icon-Font-Size: 30px;
	--KfW-Icon-Font-Weight: 800;
	--KfW-Icon-Line-Height: normal;
	--KfW-Icon-Letter-Spacing: normal;

	/* Auswahlfelder */
	--KfW-Selection-Font-Size: 1.0rem;
	--KfW-Option-Font-Size: 1.0rem;

	/* Footer */
	--KfW-Footer-Font-Size: 0.7rem;

	/* UI Komponenten */
	--KfW-UI-Border-Color: var(--KfW-Dunkelblau);
	--KfW-UI-Border-Color-Hover: var(--KfW-Dunkelblau-Digital);
	--KfW-Box-Shadow-None: none;
}


/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */
/*                                                                                          */
/* 			General CSS																														*/
/*                                                                                          */
/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */



* {
	box-sizing: border-box;
	font-family: var(--KfW-Font-Family);
	color: var(--Ebony);
	font-size: var(--KfW-Font-Size);
	line-height: var(--KfW-Line-Height);
	letter-spacing: var(--KfW-Letter-Spacing);
	font-weight: var(--KfW-Font-Weight);
	word-spacing: inherit;
}

html,
body {
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
}

/* Flex Body */
body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

sub {
	vertical-align: baseline;
	position: relative;
	top: 0.2em;
}

big b {
	font-weight: bold;
	font-size: 19.2px;
}

b {
	font-weight: bold;
}

/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */
/*                                                                                          */
/* 			Header																																							*/
/*                                                                                          */
/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */

.header-grid {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1280px;
	width: 100%;
	margin: 0 auto;
	padding: 16px 16px;
	box-sizing: border-box;
	border-bottom: 3px solid var(--Platinum);

}


.header-logo-left img,
.header-logo-right img {
	max-width: 100%!important;
	display: block;

}

@media (max-width: 1360px) {
  .header-logo-left,
	.header-logo-right {
    padding-left: 40px;
    padding-right: 40px;
  }
}

.header-logo {
	grid-column: 5 / 6;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px 0 5px;
}

.header-close {
	grid-column-start: 9
}

.nl-margin-top-125 {
	margin-top: 28px;
}

.separator-header {
	margin-top: 10px;
	margin-bottom: 30px;
	height: 0px;
	border: none;
}

/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */
/*                                                                                          */
/* 			Footer																																							*/
/*                                                                                          */
/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */

.separator-footer {
	margin-top: 30px;
	margin-bottom: 0px;
	background: var(--KfW-Hellgrün-Digital);
	height: 1px;
	border: none;
}

.footer-grid {
	display: grid;
	grid-template-columns: repeat(10, 10%);
}

.footer {
	padding: 11px 0 12px;
	background-color: var(--Night);
	border-top: 1px solid var(--platinum);
}

.footer-kfw {
	grid-column: 2/4;
	font-size: var(--KfW-Footer-Font-Size);
	margin-top: 7px;
}


a:-webkit-any-link:hover {
	cursor: pointer;
	color: var(--Platinum);
}

a:focus {
	color: white;
	outline: 3px solid #F5A623;
	outline-offset: 3px;
}

.footer-datenschutz {
	grid-column-start: 5;
}

.footer-impressum {
	grid-column-start: 7;
}

.footer-bildrechte {
	grid-column-start: 9;
}

.footer-datenschutz,
.footer-datenschutz2,
.footer-impressum,
.footer-bildrechte {
	margin-top: 7px;
}

/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */
/*                                                                                          */
/* 			Form																																							*/
/*                                                                                          */
/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */

form {
	flex: 1 0 auto;
	padding-left: 40px;
	padding-right: 40px;
}

/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */
/*                                                                                          */
/* 			Links													*/
/*                                                                                          */
/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */
.footer-kfw,
.footer-datenschutz,
.footer-datenschutz2,
.footer-impressum,
.footer-bildrechte {
	font-size: var(--KfW-Footer-Font-Size);
	color: var(--KfW-Weiss);
	text-align: center;
}

a {
	color: var(--KfW-Weiss);
	text-decoration: none;
}

a:hover {
	cursor: pointer;
	color: var(--KfW-Dunkelblau-Digital);
	text-decoration: underline;
}

.footer-grid {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1280px;
	margin: 0 auto;
	width: 100%;
	box-sizing: border-box;
}

@media (max-width: 1360px) {
  .footer-grid {
    padding-left: 40px;
    padding-right: 40px;
  }
}


/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */
/*                                                                                          */
/* 			Fehler Nachrichten													*/
/*                                                                                          */
/*  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */

.ui-messages-error {
	background-color: white !important;
	border: 0 transparent !important;
	padding-left: 0 !important;
}

.ui-messages-error-icon {
	display: none !important;
}

.ui-messages-error-detail {
	color: var(--KfW-Rot-Fehlermeldung) !important;
	font-size: 17px !important;
	margin-left: 0 !important;
	font-weight: var(--KfW-Font-Weight);
}