
@font-face {
	font-family: 'MetaStdMedium';
	src: url('fonts/MetaStd-Medium.woff2') format('woff2'), /* Super Modern Browsers */
	url('fonts/MetaStd-Medium.woff') format('woff'), /* Modern Browsers */
	url('fonts/MetaStd-Medium.ttf') format('truetype'); /* Safari, Android, iOS */
}

@font-face {
	font-family: 'MetaStdNormal';
	src: url('fonts/MetaStd-Normal.woff2') format('woff2'), /* Super Modern Browsers */
	url('fonts/MetaStd-Normal.woff') format('woff'), /* Modern Browsers */
	url('fonts/MetaStd-Normal.ttf') format('truetype'); /* Safari, Android, iOS */
}

:root {
	--med-font: 'MetaStdMedium', Arial, Helvetica, sans-serif;
	--norm-font: 'MetaStdNormal', Arial, Helvetica, sans-serif;
	--main-font: Arial, Helvetica, sans-serif;

	/* Header & Footer, Icons, Texte */
	--dark-blue: #000D6E;
	/* Farbe für Links */
	--light-blue: #145BA3;
	/* Farbe für Akzentflächen */
	--accent: #E8F1FB;
	/* Farbe für Konturen */
	--border: #E8E8E8;
	/* Farbe für inaktive Elemente */
	--disabled: #E8E8E8;
	/* Farbe für inaktive Schrift */
	--disabled-font: #747474;
	--active-offer: #116B34;
	--active-contract: #CB1500;

	/* Hintergrundfarbe H4*/
	--bgh4: var(--accent);
	--coh4: var(--dark-blue);
	/* Farbe für Hinweise*/
	--notice-border: #0F457B;
	--notice: #A4C9ED;
	/* Farbe für Alarme*/
	--alert-border: #A01100;
	--alert: #F7A399;
	--new: #FFBE19;
	--new2: #FDE8E6;
	--new3: #FAE052;
	--new4: #A1CFB3;

	/* alte Farbe für Focus */
	--old-light: #00b4eb;
	/* Odd Farbe für z.B. Tabellen*/
	--odd: #F6F6F6;
	--even: #FAFAFA;

	--green: #158841;

	--footer-height:200px ;
}


/***********************************************/
/* HTML tag styles                             */
/***********************************************/
/*html { padding-left: 10px; }*/
body {
	font-family: var(--main-font);
	font-size: 12px;
	background: #FFF;
	/*font: normal normal normal 12px/16px normal Arial,sans-serif;*/

	color: var(--dark-blue);
	margin:0;
	padding:0;

	/*position: relative;*/
	min-height: 100vh;

	display: grid;
	grid-template-rows: auto 1fr auto;
}

a, a:link, a:visited {	color: var(--light-blue); text-decoration:none; }
a:hover { color: var(--light-blue); text-decoration:underline; }

h1 {
	font-family: var(--main-font);
	font-size: 120%;
	color: var(--dark-blue);
	margin:.5em 0;
	padding: 0px;
}

h2 {
	font-family: var(--main-font);
	font-size: 114%;
	color: var(--dark-blue);
	padding:.5em 0;
	margin: 0;
}

h3{
	font-family: var(--main-font);
	font-size: 100%;
	color: var(--dark-blue);
	margin:.5em 0;
	padding: 0px;
}

h4{
	font-family: var(--main-font);
	font-size: 100%;
	font-weight: normal;
	color: var(--coh4);
	background: var(--bgh4);
	margin:0;
	padding: 0px;
}

/*h5{
	font-family: var(--main-font);
	font-size: 100%;
	color: #334d55;
	margin: 0px;
	padding: 0px;
}*/


ul{
	margin-left: 10px; /* für IE */
	padding-left: 0px; /* für andere Browser */
	list-style-type: disc;
}

ul ul{
	list-style-type: disc;
}

ul ul ul{
	list-style-type: none;
}

label{
	font-family: var(--main-font);
	font-size: 100%;
	font-weight: bold;
	color: var(--dark-blue);
}

input[type="file"] {
	display: none;
}
.custom-file-upload {
	border: 2px solid var(--dark-blue);
	display: inline-block;
	padding: 6px 22px;
	cursor: pointer;
	box-sizing: border-box;
	vertical-align: bottom;
	margin-left: 10px;
	margin-right: 10px;
}

input[type=button],
input[type=submit],
input[type=reset],
button {
	background-color: #fff;
	border: 2px solid var(--dark-blue);
	color: var(--dark-blue);
	padding: 6px 22px;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
}

.custom-file-upload:hover,
input[type=button]:hover,
input[type=submit]:hover,
input[type=reset]:hover,
button:hover {
	background-color: var(--dark-blue);
	color: #fff;
}

input[type=text], input[type=password], textarea {
	border: 2px solid var(--border);
	color: var(--dark-blue);
	padding: 6px;
	box-sizing: border-box;
}

input:focus {
	border: 2px solid var(--light-blue);
}


/*#page-container::after {
	content: '';
	display: block;
	min-height: var(--footer-height);
}*/

/*#content-wrap {
	padding-bottom: var(--footer-height);    !* Footer height *!
}*/


footer{
	/*position: absolute;
	bottom: 0;*/
	width: 100%;
	min-height: var(--footer-height);
}

/***********************************************/
/* Layout Container                            */
/***********************************************/
.content {
	display: table;
	text-align: center;
	width: 100%;
}

.left-col, .right-col, .middle-col  {
	display: table-cell;
}
.middle-col {
	/*width: 982px;*/
	/*width: 1280px;*/
	width:1140px;
}

.dark-background {
	background: var(--dark-blue);
}

/***********************************************/
/* Header                                      */
/***********************************************/

.header	{ height:100px; position: relative;}
.header-right {
	color: #fff;
	width:100%;
	text-align:right;
	font-weight: bold;
	font-size:1.5rem;
}
.vertical-container{
	position: relative;
}

.vertical-center {
	margin: 0;
	position: absolute;
	top: 50%;
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}


.footer	{ height:var(--footer-height); position: relative;}
.footer-left {
	position: absolute;
	color: #fff;
	width:100%;
	text-align:left;
	font-weight: bold;
	font-size:1.5rem;
	top: 25%;
	-ms-transform: translateY(-25%);
	transform: translateY(-25%);
}

.footer-right {
	font-family: var(--norm-font);
	position: absolute;
	color: #fff;
	width:100%;
	text-align:right;

	font-size:0.7rem;
	top: 85%;
	-ms-transform: translateY(-85%);
	transform: translateY(-85%);
}
.footer-right a{
	margin-left:10px;
	color: #fff;
}
/***********************************************/
/* Body                                        */
/***********************************************/
#body {
	text-align: left;
	margin-top: 2rem;
}





#content	{
	float:left;
	margin-left:30px;
	margin-bottom:30px;
	padding:30px;
	width:758px;
	height:100%;
	-webkit-box-shadow: -1px 1px 7px 0px #E2E2E2;
	box-shadow: -1px 1px 7px 0px #E2E2E2;
}
#headlines {
	float:right; width:223px; height:100%; min-height:675px; text-align:left; margin:0px;
	padding:10px 0px 20px 10px;
}




/** ZUS. FORMATIERUNG **/
/*#masthead .logo		{ float:left; }
#masthead .slogan	{ float:right; margin-top:13px; left:611px; }*/


/** FARBEN + FONTS **/
/*#divider		{ background: #fff url(img/divider975.gif) top left repeat-x;  }*/
#headlines	{ font-size:80%; }

/*#siteInfo	{ clear:both; padding-top:2px; margin-left:221px; width:742px; }
#siteInfo		{ padding: 5px; color:#000000; font-size:10px; border:1px solid #e8e8e8; }
#siteInfo a	{ color:#00b4eb; }*/

.accent {
	background-color: var(--accent);
}

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

.link:hover {
	cursor:pointer;
}


/** NAVIGATION **/

#navBar	{
	font-family: var(--norm-font);
	font-size:15px;
	/*font-weight: bold;*/
	margin-top: 1px;
	margin-bottom: 2rem;
	padding:20px 30px 30px 30px;
	background: #FFF;
	float:left;
	width:230px;
	height:100%;
	-webkit-box-shadow: -1px 1px 7px 0px #E2E2E2;
	box-shadow: -1px 1px 7px 0px #E2E2E2;
}

#navBar ul {
	line-height: 16px;
	list-style:none;
	margin:0;
}

#navBar ul li {
	display:block;
	padding:0;
	margin: 10px 0;
}
#navBar ul li li {
	margin:0;
}
#navBar ul a {
	display:block;
	padding:3px 5px 3px 5px;
	color: var(--dark-blue);
	text-decoration:none;
}


/*#navBar ul a:hover, #navBar ul a.hilite {
 margin:0;
 background: #fff;
 color: var(--light-blue);
}*/

#navBar ul a.hilite {
	margin-bottom: 1px;
}

#navBar ul a:hover, #navBar ul a.active 	{
	margin:0;
	background: #fff;
	color: var(--dark-blue);
	font-weight:bold;
}

#navBar ul li li a {
	padding-left:15px;
}

#navBar ul ul {
	font-size:13px;
	margin-top: 5px;
	margin-bottom: 30px;
	color: var(--light-blue);
	/*width:230px;*/
}

#navBar ul ul a.active {
	font-size:14px;
	font-weight: normal;
}

#navBar ul li a.expand {
	margin: 0;
	background: #fff;
	font-weight: normal;
	color: var(--light-blue);
}

#navBar ul li a:hover {
	margin: 0;
	background: #fff;
	color: var(--dark-blue);
	font-weight:bold;
}

div .expand_1 {
	height: 3px;
	margin: 0px;
	width: 100%;
	color: var(--dark-blue);
	background: #fff;
}

#navBar ul li .expand_active {
	margin: 0px;
	background: #fff;
	color: var(--dark-blue);
	font-weight:bold;
}

/** abmelden Button **/
#abmelden {
	border: 2px solid var(--light-blue);
	width: 70px;
	padding: 5px !important;
	text-align: center;
}

#abmelden:hover {
	border: 2px solid var(--dark-blue);
	background: var(--dark-blue) !important;
	color:#fff !important;;
}



/** CHECKBOX: SLIDER **/
.switch {
	position: relative;
	display: inline-block;
	width: 30px;
	height: 18px;
}

.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}

.slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 3px;
	bottom: 0;
	background-color: var(--accent);
	-webkit-transition: .4s;
	transition: .4s;
	border-radius: 34px;
	border: 1px solid var(--light-blue);
}

.slider:before {
	position: absolute;
	content: "";
	height: 12px;
	width: 12px;
	left: 2px;
	bottom: 2px;
	background-color: var(--light-blue);
	-webkit-transition: .4s;
	transition: .4s;
	border-radius: 50%;
}

input:checked + .slider {
	background-color: var(--green);
}

input:focus + .slider {
	box-shadow: 0 0 1px var(--green);
}

input:checked + .slider:before {
	-webkit-transform: translateX(10px);
	-ms-transform: translateX(10px);
	transform: translateX(10px);
	background-color: #fff;
}

input:disabled + .slider{
	background-color: var(--disabled);
}

/** RADIOBUTTON **/

.radio {
	margin: 0.5rem;
}
.radio input[type=radio] {
	position: absolute;
	opacity: 0;
}
.radio input[type=radio] + .radio-label:before {
	content: "";
	background: white;
	border-radius: 100%;
	border: 2px solid var(--dark-blue);
	display: inline-block !important;
	width: 16px;
	height: 16px;
	position: relative;
	top: -0.2em;
	margin-right: 1em;
	vertical-align: top;
	cursor: pointer;
	text-align: center;
	/* transition: all 50ms ease; */
}
.radio input[type=radio]:checked + .radio-label:before {
	box-shadow: inset 0 0 0 4px #ffffff;
	border:8px solid var(--dark-blue);
	width: 4px;
	height: 4px;
}

@-moz-document url-prefix() {
	.radio input[type=radio]:checked + .radio-label:before {
		width: 5px;
		height: 5px;
	}
}

.radio input[type=radio]:focus + .radio-label:before {
	outline: none;
	border-color: var(--old-light);
}
.radio input[type=radio]:disabled + .radio-label:before {
	box-shadow: inset 0 0 0 4px #ffffff;
	border-color: var(--disabled);
	background: #ffffff;
}
.radio input[type=radio] + .radio-label:empty:before {
	margin-right: 0;
}


/* Div Boxen */

.box { float: left; box-sizing: border-box; margin-right:20px;}
.box:last-child { margin-right: 0; }

.box h3{
	font-size: 18px !important;
}

.box_end {
	clear:both;
}

.box_p_end {
	clear:both;
	margin-bottom: 50px;
}

.col2 {
	width: 345px;
}

.col3 {
	width:225px;
}


p.news, p.news2, p.news3, p.news4 {
	border-radius: 10px;
	padding: 20px !important;
}

p.news {
	background: var(--new);
}

p.news2 {
	background: var(--new2);
}

p.news3 {
	background: var(--new3);
}

p.news4 {
	background: var(--new4);
}


