body {
	background-color: #0E2244;
	font-family: Roboto;
	font-weight: 300;
	color: #FFF;
	font-size: 12pt;
}

/*
body.index {
	background-color: #fff;
	color: #011c2e;
}

body.formular { 
	background-image: url(bg-foto.jpg); 
	background-size: cover; 
	background-position: center center;
	background-attachment: fixed; 
}
*/

h1 {
	font-family: Roboto;
	color: #FFF;
	font-size: 24px;
}

b, strong { font-weight: 500; } 

select:required:invalid {
	color: #888;
}
option[value=""][disabled] {
	display: none;
}
option {
	color: #000;
}
input::placeholder {
	color: #888;
}

@-moz-document url-prefix() { 
	input::placeholder {
		color: #2A2A2A;
	}
}


a {
	text-decoration: none !important;
	color: #FFF;
}

a.tdu {
	text-decoration: underline !important;
	color: #6699ff;
}

.pr { position: relative; } 
.t8 { top: 8px; } 
.uk-checkbox { background-color: #fff; width: 24px; height: 24px; 
				float: left; margin-right: 8px; margin-top: 8px; margin-bottom: 8px; } 

.db { display: block; }
.df { display: flex; }
.mt4 { margin-top: 4px; }
.mt12 { margin-top: 12px; }
.ml24 { margin-left: 24px; }
.ml_5pro { margin-left: 5%; } 
.ml_17pro { margin-left: 17%; } 
.mt0_imp { margin-top: 0px !important; }
.mb0_imp { margin-bottom: 0px !important; }
.pb12 { padding-bottom: 12px; }
.w100 { width: 100%; } 
.w90 { width: 90%; } 
.w70 { width: 70%; } 
.fs133rem { font-size: 1.33rem; } 
.tc_blau_imp { color: #011c2e !important; } 
.df_ai_top { display: flex; align-items: flex-start; }
.fd_col { flex-direction:column; } 
.liste { margin-left: 7px; padding-left: 7px; } 

.gold { color: #E2CA80; }

.goldverlauf { 
	background: -webkit-linear-gradient(0deg, #FCF2B2, #DEB04D);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent; 
	} 

.elem_show { display: block; } 
.elem_hide { display: none; } 

.cont_head {
	width: 100%; 
	display: flex; 
	justify-content: center; 
	align-items: center;
}

	.cont_head .cont_head_inner {
		width: 80%; 
		display: flex; 
		justify-content: center; 
		align-items: center;
	}

		.cont_head .cont_head_inner .ueberschrift {
			width:78%; 
			float:left; 
			font-family:Roboto; 
			color:#FFF; 
			font-weight:300; 
			font-size:32px; 
			font-family: "Times New Roman", Serif; 
			font-weight: bold; 
			text-align: left;
		}

			.cont_head .cont_head_inner .ueberschrift .subline {
				width: 66%; 
				display: inline-block; 
				font-size: 60%; 
				font-family: Roboto; 
				font-weight: 400; 
				color: #E2CA80;
				text-align: center; 
			}

		.cont_head .cont_head_inner .cont_logo {
			width:20%; 
			margin-left: 2%;
			float: right;
			text-align: right; 
			justify-content: flex-end;
		}

			.cont_head .cont_head_inner .cont_logo .logo {
				height: 60px;
				margin-top: 22px;
			}

			.cont_head .cont_head_inner .cont_logo .logo_partner {
				height: 40px;
				margin-top: 6px;
			}

			.cont_head .cont_head_inner .cont_logo .form_adj { margin-top: -4px !important; }

/*
		.moderator {
			display: block; 
			_position: relative; 
			_top: -10px; 
			font-size: 20px; 			
		}

	.head_but {
		width:10%; 
		position:relative; 
		float:left;
		text-align: right; 
	}
*/

.cont_main {
	width:100%; 
	_height:100%; 
	margin-top:25px; 
	display: flex; 
	justify-content: center; 
	align-items: center;
}

	.cont_main .cont_main_inner {
		width: 80%; 
		display: flex; 
		justify-content: center; 
		align-items: center;
	}


/*
.cont_main_buttons {
	width:100%; 
	margin-top:25px; 
	margin-bottom:45px; 
	display: flex; 
	justify-content: center; 
	align-items: center;
}
*/

.cont_main_text {
	width:80%; 
	margin-top:70px; 
	margin-bottom:70px;
}

/*
.video {
	display: block; 
	width:1300px; 
	height:731px; 
	_position:relative; 
	margin: auto; 
}
*/


/*
.video {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 0;
    height: 0;
    overflow: hidden;
	width: 100%; height: auto;
}

.video iframe,
.video object,
.video embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
*/


.cont_tel {
	width: 100%; 
	margin-top: 30px;
	display: flex; 
	text-align:center; 
	justify-content: center; 
	align-items: center;
}

	.tel_area { 
		display: flex; 
		width: 80%; 
		margin: auto; 
		justify-content: center; 
		align-items: center;
	}

		.tel_left { 
			width: 22%; 
			_float: left;  
		}

		.tel_center { 
			width: 42%; 
			_float: left;  
		}

		.tel_right { 
			width: 22%; 
			_float: right;  
		}

		.ml_tel { margin-left: 5%; } 

			.qrcode {
				height:80px;
			}


/* GESCHENK */ 

.cont_geschenk {
	width: 100%; 
	display: flex; 
	justify-content: center; 
	align-items: flex-start;
	margin-top: 50px; 
}

	.cont_geschenk_inner { 
		display: flex; 
		width: 80%; 
		margin: auto; 
		justify-content: center; 
		align-items: center;
	}

	.cont_geschenk_mobil { 
		display: flex; 
		width: 100%; 
		margin: auto; 
		justify-content: center; 
		align-items: center;
	}


/* FOOTER */ 

.cont_footer {
	width: 100%; 
	display: flex; 
	justify-content: center; 
	align-items: flex-start;
	margin-top: 50px; 
}

.cont_final {
	display: flex; 
	justify-content: center; 
	align-items: flex-start;
	width: 100%; 
	height: 30px;
	margin: auto; 
	_margin-top: 50px; 
}


/* FORM */

.cont_form {
	width: 100%; 
	display: flex; 
	justify-content: center; 
	align-items: flex-start;
}

	.cont_form .cont_form_inner {
		width: 80%; 
		display: flex; 
		justify-content: center; 
		align-items: flex-start;
	}

	.formtext { 
		font-weight:300; 
		font-size:30px; 
	}
	
	.formarea { 
		width: 595px; 
		margin: auto; 
		padding-top: 8px; 
		padding-left: 40px; 
		_border: 1px solid #e6e6e6; 
		border-radius: 10px; 
		text-align: left; 
	}
	
	.feld { font-size: 24px; font-weight: 300; border: 0px; padding: 8px 8px 8px 16px; border-radius: 10px; outline: 0; }
	.mt_4 { margin-top: 4px; }
	.ml_4 { margin-left: 4px; }
	.fw_f { width: 571px; }
	.fw_h { width: 271px; }
	.fw_l { width: 433px; }
	.fw_s { width: 110px; }
	.fw_ss { width: 90px; }
	
	.fw_plzwahl  { width: 240px; }
	.fw_termin  { width: 440px; }
	.fw_kundennr  { width: 416px; }
	.fw_anrede 	{ width: 154px; } 
	.fw_titel 	{ width: 113px; }
	.fw_monat { width: 125px; }
	.fw_jahr { width: 100px; }
	#geb_jjjj { margin-right: 130px; } 
	
	.gebtext { font-size: 18px; } 
	
	.but {	background-color:#ECCC72; padding: 8px 20px 8px 20px; border-radius:10px; border: 0 solid; margin-top: 10px; transition-duration: 0.4s; 
			font-family: Roboto; font-size: 24px; cursor: pointer; position: relative; top: -8px; }
	.but:hover { background-color: #f2db9c; color: #333; transition-duration: 0.4s; } 
	
	.but_disabled:hover { cursor: default; background-color:#ECCC72; } 
	
	.but_start {	background-color:#0E2244; padding: 8px 33px 8px 33px; border-radius:3px; border: 1px solid #FCF2B2; margin-top: 10px; transition-duration: 0.4s; 
					color: #fff; font-family: Roboto; font-size: 24px; cursor: pointer; position: relative; top: -8px; }
	.but_start:hover { background-color: #3B4B67; color: #fff; transition-duration: 0.4s; } 
	.but_start_disabled:hover { cursor: default; background-color:#0E2244; } 

	.but_blau {	background-color:#011c2e; padding: 8px 20px 8px 20px; border-radius:10px; border: 0 solid; margin-top: 10px; transition-duration: 0.4s; 
				color: #fff; font-family: Roboto; font-size: 24px; cursor: pointer; position: relative; top: -8px; }
	.but_blau:hover { background-color: #4C5F6C; color: #fff; transition-duration: 0.4s; } 
	.but_blau_disabled:hover { cursor: default; background-color:#011c2e; } 
	
	.formok { 
		width: 555px; 
		margin: auto; 
		margin-left: 40px; 
		color: #00cc00; 
		font-size: 24px; 
		padding: 20px; 
		border: 1px solid #e6e6e6; 
		border-radius: 10px; 
	}
	
	.formerr { 
		width: 555px; 
		margin: auto; 
		color: #ee3333;
		font-size: 24px; 
		margin-top: 24px; 
	}
	
	.formerr_plzwahl { 
		width: 555px; 
		_margin: auto; 
		color: #ee3333;
		font-size: 20px; 
		margin-top: 8px; 
		margin-bottom: 8px; 
	}
	
	.mandatory		{ background: #ffcaca !important; }
	.mandatory_text	{ color: #ee3333 !important; }



.hotline {
	font-family:Roboto; 
	color:#FFF; 
	font-weight:300; 
	font-size:40px;
}

.copy {
	font-family:Roboto; 
	color:#FFF; 
	font-weight:300; 
	font-size:14px;
}

.minihead {
	font-family:Roboto; 
	color:#FFF; 
	font-weight:400; 
	font-size:16px;
}

.button {
	background-color:#ECCC72;
	padding: 10px 20px 10px 20px;
	font-family: Roboto;
	font-size:12pt;
	border-radius:10px;	
	border: 0 solid;
	margin-left: 20px;
	margin-top:15px;
	cursor: pointer;
	
}


/* DREI SPALTEN */ 

.cont_3spalten {
	width:100%; 
	_height:100%; 
	margin-top:25px; 
	display: flex; 
	justify-content: center; 
	align-items: flex-start;
}

	.cont_3spalten .cont_3spalten_inner {
		width: 80%; 
		display: flex; 
		justify-content: center; 
		align-items: flex-start;
	}

		.cont_3spalten .cont_3spalten_inner .spalte {
			width: 33.3%; 
			display: block; 
			font-size: 88%; 
			text-align: left; 
		}
		
			.cont_3spalten .cont_3spalten_inner .spalte P { margin-top: 8px; margin-bottom: 8px; } 



/* RESPONSIVE ADJUSTMENTS */ 

.sp_only { display: none; } 

.dp_hide { display: none; }
.dp_show { display: inline-block; }

#vp-desk { display: block; } 
#vp-mobil { display: none; }


/*
@media all and (max-width: 1390px) {

	.video {
		width:100%; 
	}

	.chat {
		width:0%; 
	}

	.logo {
		height:30px;
		margin-top:0px;
	}

	.ueberschrift {
		font-size:20px; 
		margin-top:10px;
	}

}

@media all and (max-width: 650px) {

	.cont_main {
		display: block; 
	}

	.video {
		width:100%; 
	}

	.chat {
		width:100%; 
		margin-left:0px;
		margin-top:10px;
		margin-bottom:10px;
	}

	.hotline {
		font-size:20px;
	}

}
*/


@media all and (orientation:portrait) {

	.cont_main {
		display: block; 
	}

	/*
	.video {
		width:100%; 
		_height: 66%; 
	}
	
		DIV.video IFRAME { _height: 66%; }
	*/

	.chat {
		width:100%; 
		margin-left:0px;
		margin-top:10px;
		margin-bottom:10px;
	}

	.hotline {
		font-size:20px;
	}

}


@media all and (min-width: 1391px) and (max-width: 1695px) {

	.cont_logo { width: 17%; } 
	.ueberschrift { width: 30%; font-size: 30px; }
	.head_but { width: 15%; } 
	.video { _width: 72%; width: 1180px; height: 664px; }
}


@media all and (min-width: 1281px) and (max-width: 1390px) {

	.cont_logo { width: 17%; } 
	.ueberschrift { width: 30%; font-size: 24px; }
	.moderator { font-size: 16px; }
	.head_but { width: 15%; } 
	.video { _width: 76%; width: 1080px; height: 608px; }
}


@media all and (min-width: 1024px) and (max-width: 1280px) {

	.cont_logo { width: 22%; } 
	.logo { height: 96px; } 
	.ueberschrift { width: 35%; font-size: 24px; }
	.moderator { font-size: 16px; }
	.buttextreise { display: none; }
	.head_but { width: 20%; } 
	.video { _width: 80%; width: 988px; height: 556px; }
}


@media all and (max-width: 1079px) { 
	.cont_head_inner { flex-direction: column; } 
	.ueberschrift { width: 95% !important; font-size: 28px !important; line-height: normal; } 
	.subline { margin-top: 12px; } 
	.cont_logo { width: 80% !important; display: flex; justify-content: center !important; align-items: center !important; } 
	.logo_partner { margin-left: 16px; } 
	BODY.formular .cont_logo { margin-top: 12px; margin-bottom: 30px; } 
	.cont_main { display: flex; } 
	.cont_form_inner { flex-direction: column; } 
	.formarea { padding-left: 0px; margin-top: 30px; } 
	.cont_3spalten_inner { flex-direction: column; } 
	.spalte { width: 98% !important; } 
	.cont_footer { margin-top: 30px !important; } 
}


@media all and (max-width: 1023px) and (orientation: landscape) {

	.cont_logo { width: 22%; } 
	.logo { height: 96px; } 
	.ueberschrift { width: 45%; font-size: 20px; }
	.moderator { font-size: 16px; }
	.buttextreise { display: none; }
	.head_but { display: none; _width: 20%; } 
	.hotline { font-size:24px; }
	.tel_area { width: 90%; }
	.tel_left { width: 35%; } 
	.tel_right { width: 40%; }
	.dp_hide { display: block; }
	.dp_show { display: none; }
}


@media all and (max-width: 1023px) and (orientation: portrait) {

	.cont_head { flex-direction: column; }
	.cont_logo { width: 100%; position: normal; float: none; text-align: center; } 
	.logo { height: 96px; } 
	.ueberschrift { width: 100%; position: normal; float: none; font-size: 20px; margin-top: 16px; text-align: center !important; }
	.moderator { font-size: 16px; }
	.buttextreise { display: inline-block; }
	.head_but { width: 100%; position: normal; float: none; text-align: center; margin-top: 12px; } 
	#header_buchung_but { margin-left: 0px !important; }
	.hotline { font-size:20px; }
	.tel_area { width: 90%; }
	/*
	.tel_left { width: 60%; } 
	.tel_right { width: 40%; }
	*/
	.dp_hide { display: block; }
	.dp_show { display: none; }
}

@media all and (max-width: 767px) {
	#vp-desk { display: none; } 
	#vp-mobil { display: block; }
	
	.tel_area { flex-direction: column; } 	/* to place button under phone number in very small viewports, esp. smartphones  */ 
	.tel_left { width: 100%; } 
	.tel_center { width: 100%; margin-top: 20px; } 
	.tel_right { width: 100%; margin-top: 20px; } 
	
	.formtext { font-size: 25px; } 
	.formarea { width: 295px; } 
	.fw_f { width: 271px; }
	.fw_h { width: 271px; }
	.fw_l { width: 271px; }
	.fw_termin  { width: 295px; }
	.fw_kundennr { width: 271px; }
	#nachname { margin-left: 0px; } 
	#hausnr { margin-left: 0px; } 
	#ort { margin-left: 0px; } 
	#mobil { margin-left: 0px; } 
	#email2 { margin-bottom: 4px; } 
	#geb_tt { width: 85px; } 
	#geb_mm { width: 110px; } 
	#geb_jjjj { width: 90px; margin-right: 0px; } 
	.formerr { width: 295px; } 
	.formok { width: 295px; } 
	.sp_only { display: block; } 
	
	.cont_logo { flex-direction: column; }
	.logo_partner { margin-left: 0px; } 
}