/**
 * Festlegung des optischen Erscheinungsbildes für Formulare
 *
 * @version $Id: formular.css,v 1.134 2015-04-16 07:47:54 bau24 Exp $
 * @author (c) Ivo Deisenroth <info@it-polyvision.de>
 */
@media screen {
	form * { margin:0; padding:0; float:none; }
	form {
		display:block; border:0px red solid; color:#000066;
		/* font-style, font-variant, font-weight, font-size/line-height, font-family */
		font:normal normal normal 1em/1.25em Ubuntu, "Open Sans", "Droid Serif", Georgia, "Times New Roman", Times, serif;
	}
	form.b24-form-full {
		background: #f4f4f4; border: 2px #fff solid; -webkit-box-shadow: 0 0 4px #dddddd; box-shadow: 0 0 4px #dddddd;
	}
	form fieldset { display:block; border:0px solid green; }
	.b24-form-full fieldset { position: static; background: transparent; margin:.75em 0; padding: 0 0.5em; }
	.b24-form-marg fieldset { margin: 1.5em 3em; }

	form legend		{ font-size:125%; font-weight:normal; color:#000; }
	input, textarea { background:#FEFEFE; }
	/**
	 * Formulargestaltung, bei der sowohl label als auch input/select/textarea mit display:block; gestaltet werden
	 */
	/* Allgemeine Formatierung des Formulars */
	form { overflow:hidden; }
	form fieldset { overflow:hidden; }
	form label		{ display:block; }
	form legend		{ background:transparent; border:0; padding:0 0.5em; }
	form .message { display:block; margin-bottom:0.5em; color:#666; }

	.front a:link, .front a:visited, .front a:hover, .front a:active { text-decoration: underline; outline:0; }
	.front a:hover { text-decoration: none; }

	/* Versteckte Felder wirklich verstecken (sonst ggf. häßliche Lücken im Firefox) */
	form input[type=hidden] { display:none !important; }
	/* Pflichtfeldkennzeichnung hervorheben */
	form sup { color:#6D6E71; font-weight:bold; }

	form .type-text input, form .type-textsmall input, form .type-text textarea, form .type-select select, form .type-selectsmall select {
		border:1px solid #C0C0C0; color:#303030;
	}

	.front input, .front input, .front textarea, .front select {
		-webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;
	}
	.front label, .front label.lbig, .front label.bb-lbig {
		-webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;
	}

	/* Gestaltung der kapselnden DIV-Elemente */
	form div.type-text, form div.type-textsmall, form div.type-select, form div.type-selectsmall, form div.type-check, form div.type-button,
	form div.type-checkmini, form div.type-checksmall, form div.type-radioline, form div.type-radio, form div.headline-jumpline {
		display:block; width:100%; margin:0; padding:3px 0 3px 0; position:relative; border:0px solid black;
	}
	form div.type-text, form div.type-textsmall, form div.type-select, form div.type-selectsmall, form div.type-check, form div.type-button,
	form div.type-checkmini, form div.type-radioline, form div.type-radio, form div.headline-jumpline {
		overflow:hidden;
	}
	form div.type-checksmall { margin-left: 26px; }
	form div.type-button { padding:3px 0em; }
	form div.type-button ul { display: table; width: 100%; border:0px solid red; }
	form div.type-button li { display: table-cell; table-layout: fixed; border-collapse:0px; border-spacing:0px; border:0px solid green; }

	/* Gestaltung der einzelnen Formularelemente mit annähend gleicher Breite */
	form .type-text input, form .type-textsmall input, form .type-text textarea, form .type-check, form .type-checkmini, form .type-checksmall, form .type-radioline, form div.type-radio {
		display:block; position:relative; padding:3px 0x; vertical-align:middle;
	}
	form .type-select select { display:block; position:relative; padding:0 2px 0 1px; cursor:pointer; }
	form .type-select select optgroup { font-style:normal; font-weight:bold; }
	form .type-check input { cursor:pointer; }
	form .type-check label { display:inline; }

	/* Springen vermeiden checkboxes & radiobuttons in IE8 */
	form div.type-check input:focus, form div.type-check input:hover, form div.type-check input:active,
	form div.type-checkmini input:focus, form div.type-checkmini input:hover, form div.type-checkmini input:active { border:0 none; }
	form div.type-checksmall input:focus, form div.type-checksmall input:hover, form div.type-checksmall input:active { border:0 none; }

	/**
	 *  Formulargestaltung, bei der die label-Elemente nach links fließen und die Hilfetexte nach rechts
	 */
	/* Spalten-Darstellung */
	.front label, .front .label-fix { float:left; width:20%; position:relative; border:0px solid #000; text-align:left; margin:0; padding:2px 0; }
	.front .formmain-left label { float:left; width:26.5%; position:relative; border:0px solid #000; text-align:left; margin:0; padding:2px 0; }
	.front .label-fix { width:11.2em; }
	.front label.lbig { width:100%; position:relative; border:0px solid #E9E9E9; text-align:left; margin:0; padding:0 0 1px 0; font-weight:bold; }
	.front label.bb-lbig { width:69%; position:relative; border:0px solid red; text-align:left; margin:0; padding:10px 1px 3px 0; font-weight:bold; }
	.front .formmain			{ width:80%; float:left; position:relative; border:0px solid greenyellow; }
	.front .formmain-left	{ width:76%; float:left; position:relative; border:0px solid greenyellow; }
	.front .formmainpic		{ width:70%; float:left; position:relative; border:0px solid black; }
	.front .formmainbig		{ width:100%; float:left; position:relative; border:0px solid black; height: 100%; /* WICHTIG!!! STRECKT ANZEIGENBEREICH AUF 100% */ }
	.front .formelement, .front .formelement-left	{ width:67%; float:left; position:relative; padding:0 5px; border:0px solid blue; }
	.front .formelementbig{ width:69%; float:left; position:relative; padding:0 5px 0 0; border:0px solid blue; }
	.front .formelementbigright { width:99%; float:left; position:relative; padding:0 5px; border:0px solid blue; }
	.b24-form-1col .formelementbig { width:100%; }
	.front .type-helptext, .front .type-helptext-left { width:30%; float:right; position:relative; border:0px solid green; padding:2px 0 2px 0; color:#666666; font-size:92.9%;
		min-height: 100%; /* Mindesthöhe für moderne Browser */
		height:auto !important; /* Important Regel für moderne Browser */
		height:100%; /* Mindesthöhe für den IE */
	}
	.front .type-helptext-left { width:24%; }
	.front .type-helptext2 { float:left; position:relative; width:100%; border:0px solid green; padding:0 0 8px 0; font-size:92.9%; color:#666666; }
	.front .type-helptext ul	{ list-style-position:inside; list-style-type:disc; }
	.front .b24-intext-list		{ list-style-position:inside; list-style-type:disc; margin:.5em 0; }
	.front .formelementfile		{ width:99.5%; float:left; position:relative; padding:0 5px; border:0px solid blue; }
	.front .formelementfile input { background:none; /* für IE */ margin:5px 0 5px 0; }

	.front div.type-text input, .front div.type-text textarea {
		float:left; width:99.9%; padding:2px 0 2px 2px; font-family: Ubuntu, "Open Sans", "Droid Serif", Georgia, "Times New Roman", Times, serif;
	}
	.front div.type-text textarea { overflow:auto; }
	.front div.type-select select { float:left; width:99.5%; padding:1px 0; overflow:auto; background:#FEFEFE; }
	.front div.date input { float:left; width:88%; padding:2px 0; margin: 0 5px 0 0 ; }

	/* Fehlermeldungen und Messages */
	form div.error { width:100%; background:#f4f4f4; padding:0.5em 0 0 0; margin:2px 0; }
	form div.error label, form div.error label.lbig, form div.error label.bb-lbig, form div.error sup { color: #800; background:#f4f4f4; font-weight: normal;  }
	form div.error .message, .b24-single-error .message { color: #800; padding:3px 0; font-weight: bold; }
	form div.error input, form div.error select, form div.error textarea, div.recaptcha-error { border: 1px #800 solid; }
	div.recaptcha-error { padding: 5px; }
	div.recaptcha-error #recaptcha_response_field { margin-bottom: 5px;}
	/* Effekt zur Hervorhebung von Formularfeldern bei :hover oder :focus */
	form div.type-text input:focus, form div.type-text input:hover, form div.type-text input:active,
	form div select:focus, form div select:hover, form div select:active,
	form div textarea:focus, form div textarea:hover, form div textarea:active,
	form div.type-textsmall input:focus, form div.type-textsmall input:hover, form div.type-textsmall input:active {
		border:1px #33A333 solid; background:#FFF;
	}

	/**
	 *  Formulargestaltung, bei der die Elemente über die gesamte Breite laufen
	 */
	form div.type-checkmini, form div.type-radioline, form div.type-radio { display:block; width:100%; text-align:left; }
	form div.type-checksmall { display:block; width:90%; text-align:left; }

	form div.type-check .table { display:table; width:100%; }
	form div.type-check.error .table { padding-left:10px; }
	form div.type-check .table div { display:table-row; border:0; padding:0 0 5px 0; }
	form div.type-check .table div div { display:table-cell; table-layout:fixed; border-collapse:0px; border-spacing:0px; }

	form div.type-check span { display: block; margin: -19px 0 0 25px; }
	form div.type-checkmini span { display: block; margin-top: -15px; margin-left: 25px; }
	form div.type-checksmall span { display: block; margin-top: -19px; margin-left: 20px; }
	form div.type-radioline span { display: block; margin-top: -19px; margin-left: 25px; }
	form div.b24-small-radio { display: block; padding: 4px 0 4px 5px; }
	form div.type-checkmini.error span, form div.type-checksmall.error span, form div.type-radioline.error span  { margin-left: 35px; }
	form div.type-checkmini.error input, form div.type-checksmall.error input, form div.type-radioline.error input { margin-left: 10px; }
	form div.type-radio input 	 { margin:5px 5px 0 0; }
	form div.type-radio span 	   { margin:0 10px 0 0; }

	/**
	 * Gestaltung der kapselnden DIV-Elemente bei Buttons
	 */
	form div.type-button {
		border: 0px #E0E0E0 solid; padding:0 1em 0 0; margin:20px 0 0 0; text-align:right;
	}
	form div.type-button:before {
		content:""; display:table;
	}
	form div.type-button:after {
		/* clear:both; content:"."; display:block; font-size:0; height:0; visibility:hidden;*/
		clear:both; content:""; display:table;
	}
	form div.type-button input {
		display: inline; overflow:visible;  /* Fixes IE7 auto-padding bug */ width:auto;
	}
	form div.type-button-left {
		border: 0px #E0E0E0 solid; padding:0 ; margin:1em 0; text-align:left;
	}
	form div.type-button-right {
		border: 0px #E0E0E0 solid; padding:0 ; margin:1em 0; text-align:right;
	}
	form div.type-button-leftright {
		border: 0px #E0E0E0 solid; padding:0 ; margin:1em 0;
	}

	/**
	 * Gestaltung von Buttons
	 */
	.button, .buttonsmall, .front button, .front input[type="button"], .front input[type="reset"], .front input[type="submit"] {
		display:inline-block;
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #eeeeee), color-stop(100%, #cccccc));
		background-image: -webkit-linear-gradient(top, #eee, #ccc); background-image: -moz-linear-gradient(top, #eee, #ccc);
		background-image: -ms-linear-gradient(top, #eee, #ccc); background-image: linear-gradient(to bottom, #eee,#ccc);
		background-color: #ccc; filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC');
		zoom: 1; border: 1px solid #777; border-radius: .2em; -webkit-box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.8) inset, 0 1px 0 rgba(0, 0, 0, 0.15);
		box-shadow: 0 0 1px 1px rgba(255, 255, 255, 0.8) inset, 0 1px 0 rgba(0, 0, 0, 0.15); color: #333 !important; cursor: pointer;
		font: normal normal normal 1em/2em Ubuntu, "Open Sans", "Droid Serif", Georgia, "Times New Roman", Times, serif; margin: 0 0 0.1em 0; padding: 0 1em;
		overflow: visible; /* removes extra side spacing in IE */ text-decoration: none !important; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
	}
	.button:hover, .buttonsmall:hover, .front button:hover, .front input[type="button"]:hover, .front input[type="reset"]:hover, .front input[type="submit"]:hover {
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fafafa), color-stop(100%, #dddddd));
		background-image: -webkit-linear-gradient(top, #fafafa, #ddd); background-image: -moz-linear-gradient(top, #fafafa, #ddd);
		background-image: -ms-linear-gradient(top, #fafafa, #ddd); background-image: linear-gradient(to bottom, #fafafa, #ddd);
		background-color: #ddd; filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr='#FFFAFAFA', endColorstr='#FFDDDDDD'); zoom: 1;
		font: normal normal normal 1em/2em Ubuntu, "Open Sans", "Droid Serif", Georgia, "Times New Roman", Times, serif;
	}
	.button:active, .buttonsmall:active, .front button:active, .front input[type="button"]:active, .front input[type="reset"]:active, .front input[type="submit"]:active {
		-webkit-box-shadow: inset 2px 2px 3px rgba(0, 0, 0, 0.2); box-shadow: inset 2px 2px 3px rgba(0, 0, 0, 0.2);
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #cccccc), color-stop(100%, #bbbbbb));
		background-image: -webkit-linear-gradient(top, #ccc, #bbb); background-image: -moz-linear-gradient(top, #ccc, #bbb);
		background-image: -ms-linear-gradient(top, #ccc, #bbb); background-image: linear-gradient(top, #ccc, #bbb);
		background-color: #ccc; filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr='#FFCCCCCC', endColorstr='#FFBBBBBB');
		zoom: 1; position: relative; top: 1px;
	}
	.button:focus, .buttonsmall:focus, .front button:focus, .front input[type="button"]:focus, .front input[type="reset"]:focus, .front input[type="submit"]:focus {
		outline: 0; background: #fafafa;
	}
	.b24-jobsearch-right button, .b24-jobsearch-right input[type="button"], .b24-jobsearch-right input[type="reset"], .b24-jobsearch-right input[type="submit"] {
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #3C5A98), color-stop(100%, #080878));
		background-image: -webkit-linear-gradient(top, #3C5A98, #080878); background-image: -moz-linear-gradient(top, #3C5A98, #080878);
		background-image: -ms-linear-gradient(top, #3C5A98, #080878); background-image: linear-gradient(to bottom, #3C5A98, #080878);
		background-color: #080878; filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr='#FF3C5A98', endColorstr='#FF080878');
		color: #FFF !important; text-shadow: none; padding: 0 .6em;
	}
	.b24-jobsearch-right button:hover, .b24-jobsearch-right input[type="button"]:hover, .b24-jobsearch-right input[type="reset"]:hover, .b24-jobsearch-right input[type="submit"]:hover {
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #879bc3), color-stop(100%, #4467ac));
		background-image: -webkit-linear-gradient(top, #879bc3, #4467ac); background-image: -moz-linear-gradient(top, #879bc3, #4467ac);
		background-image: -ms-linear-gradient(top, #879bc3, #4467ac); background-image: linear-gradient(to bottom, #879bc3, #4467ac);
		background-color: #4467ac; filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr='#FF879bc3', endColorstr='#FF4467ac');
		text-shadow: none; padding: 0 .6em;
	}
	.b24-jobsearch-right button:active, .b24-jobsearch-right input[type="button"]:active, .b24-jobsearch-right input[type="reset"]:active, .b24-jobsearch-right input[type="submit"]:active {
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #879bc3), color-stop(100%, #4467ac));
		background-image: -webkit-linear-gradient(top, #879bc3, #4467ac); background-image: -moz-linear-gradient(top, #879bc3, #4467ac);
		background-image: -ms-linear-gradient(top, #879bc3, #4467ac); background-image: linear-gradient(to bottom, #879bc3, #4467ac);
		background-color: #4467ac; filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr='#FF879bc3', endColorstr='#FF4467ac');
		text-shadow: none; padding: 0 .6em;
	}

	/* Button size-scaling classes */
	.button.xlarge {
		font-size: 1.5em; /* 21px */
	}
	.button.large {
		font-size: 1.2857em; /* 18px */
	}
	.button.small, .front button.small {
		font-size: 0.9286em; /* font-size: 0.8571em; 12px */
	}
	.button.small:hover, .button.small:focus {
		font-weight: normal;
	}
	.button.xsmall {
		font-size: 0.8571em; /* 12px */
	}

	/* pseudo elements don't work on input */
	.button:before, .buttonsmall:before, .front button:before {
		background: #ccc; background: rgba(0, 0, 0, 0.1); float: left; width: 1.4em; margin: 0 1em 0 -0.8em; text-align: center; font-size: 1.2em;  padding: 0 .2em;
		-webkit-box-shadow: 1px 0 0 rgba(0, 0, 0, 0.5), 2px 0 0 rgba(255, 255, 255, 0.5); box-shadow: 1px 0 0 rgba(0, 0, 0, 0.5), 2px 0 0 rgba(255, 255, 255, 0.5);
		border-radius: .15em 0 0 .15em; pointer-events: none;
	}
	/* pseudo elements don't work on input */
	.button:after, .front button:after {
		background: #ccc; background: rgba(0, 0, 0, 0.1); float: right; width: 1.2em; margin:0 -0.8em 0 1em; text-align: center; font-size: 1.2em; padding: 0 .2em;
		-webkit-box-shadow: -1px 0 0 rgba(0, 0, 0, 0.5), -2px 0 0 rgba(255, 255, 255, 0.5); box-shadow: -1px 0 0 rgba(0, 0, 0, 0.5), -2px 0 0 rgba(255, 255, 255, 0.5);
		border-radius: 0 .15em .15em 0; pointer-events: none;
	}
	.b24-marg-button { margin-top:0.8em; }
	.b24-marg-button-large { margin-top:1.2em; margin-bottom:.6em; }

	/* Hexadecimal Werte für die Icons in den Buttons */
	.eye:before		{ content: "\01F441"; } /* UNICODE U+1F441 */
	.add:before		{ content: "\271A"; }
	.edit:before	{ content: "\270E"; }
	.delete:before{ content: "\2718"; }
	.save:before	{ content: "\2714"; }
	.email:before { content: "\2709"; }
	.like:before	{ content: "\2764"; }
	.next:before	{ content: "\279C"; }
	.star:before	{ content: "\2605"; }
	.spark:before	{ content: "\2737"; }
	.play:before	{ content: "\25B6"; }
	.raquo:before	{ content: "\00BB"; }
	.laquo:before	{ content: '\00AB'; font-weight: bold; }
	.close:before { content: "\2715"; }
	.reply:before { content: "\27A5"; }
	.sign:before	{ content: "\270D"; }
	.support:before { content: "\2706"; }
	.heavyright:before { content: "\276F"; }
	.b24-playrgt:after { content: "\25B6"; }
	.b24-raquorgt:after { content: "\00BB"; font-weight: bold; }

	/* removes extra inner spacing in Firefox */
	.front button::-moz-focus-inner {
		border: 0; padding: 0;
	}
	/* If line-height can't be modified, then fix Firefox spacing with padding */
	.front input[type=button]::-moz-focus-inner, .front input[type=reset]::-moz-focus-inner, .front input[type=submit]::-moz-focus-inner {
		padding: .35em;
	}
	/* The disabled styles */
	.front button[disabled], .front button[disabled]:hover, .front input[type=button][disabled], .front input[type=button][disabled]:hover,
	.front input[type=reset][disabled], .front input[type=reset][disabled]:hover, .front input[type=submit][disabled],
	.front input[type=submit][disabled]:hover, .button.disabled, .button.disabled:hover {
		background: #eee; color: #aaa !important; border-color: #aaa; cursor: default; text-shadow: none; position: static;
		-webkit-box-shadow: none; box-shadow: none;
	}
	.front span.disabled { float:left; }

	.b24-jobsearch-right button[disabled], .b24-jobsearch-right button[disabled]:hover, .b24-jobsearch-right input[type=button][disabled], .b24-jobsearch-right input[type=button][disabled]:hover,
	.b24-jobsearch-right input[type=reset][disabled], .b24-jobsearch-right input[type=reset][disabled]:hover, .b24-jobsearch-right input[type=submit][disabled],
	.b24-jobsearch-right input[type=submit][disabled]:hover {
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #3C5A98), color-stop(100%, #080878));
		background-image: -webkit-linear-gradient(top, #3C5A98, #080878); background-image: -moz-linear-gradient(top, #3C5A98, #080878);
		background-image: -ms-linear-gradient(top, #3C5A98, #080878); background-image: linear-gradient(to bottom, #3C5A98, #080878);
		background-color: #080878; filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr='#FF3C5A98', endColorstr='#FF080878');
		color: #FFF !important; border-color: #aaa; cursor: default; text-shadow: none; position: static; -webkit-box-shadow: none; box-shadow: none;
		padding: 0 .6em;
	}

	.front div.b24-icons  { display:inline; float:right; margin:0 5px 0 0; }
	.front div.b24-icons img { display:block; margin:3px 0 10px 0; }
	.front .in-input-helptext { font-size:10pt; line-height:11pt; color:#808080; }
	.front .out-input-helptext { font-size:10pt; line-height:11pt; }

	/**
	 * Sonderfall Buttons für BBcode ins Formular einbinden
	 */
	#bbcode { float:right; margin:0; border:0px solid red; }
	#bbcode .buttonsmall { width:5em; height:1.5em; line-height:1.2em; margin:0 0 0 10px; padding:0 0 3px 0;  }
	.front .error #bbcode { margin:0 0 0 0; }
	/* SmallButtons überschreiben Größe festlegen */
	#bbcode input[type=button]::-moz-focus-inner, #bbcode input[type=reset]::-moz-focus-inner, #bbcode input[type=submit]::-moz-focus-inner {
		margin:0; padding:0;
	}
	/**
	 * kleiner CSS Button nur für Links
	 */
	a.buttonsmall:link, a.buttonsmall:visited, a.buttonsmall:hover, a.buttonsmall:active {
		width:5em; height:1.5em; line-height:1.5em; margin:0 0 0 0; padding:0 0 0 0; text-align:center;
	}
	/**
	 * Buttons für die Schritte Navigation im Kopfbereich eines Mehrschritteformulars
	 */
	form div.headline-jumpline ul {
		display: inline; float: left; border:0px solid red; margin:-10px 0 15px 0; text-align:left; overflow: hidden; position: relative; line-height: 1em;
	}
	form div.headline-jumpline li { position: relative; display: block; float: left; border:0px solid green; padding:0; margin:0; text-align:left;  }
	form div.headline-jumpline li a, form div.headline-jumpline li input	{ float:left; }

	/* jumpbuttonactive ist der blaue Button für aktiven Schritt */
	.jumpbuttonactive, .jumpbuttonactive:hover {
		background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,.5)), to(rgba(255,255,255,0)));
		background-image: -webkit-linear-gradient(top, rgba(255,255,255,.5), rgba(255,255,255,0));
		background-image: -moz-linear-gradient(top, rgba(255,255,255,.5), rgba(255,255,255,0));
		background-image: -ms-linear-gradient(top, rgba(255,255,255,.5), rgba(255,255,255,0));
		background-image: -o-linear-gradient(top, rgba(255,255,255,.5), rgba(255,255,255,0));
		background-image: linear-gradient(top, rgba(255,255,255,.5), rgba(255,255,255,0));
		color: #fff !important; font-weight:500; margin:10px 10px 0 0;
		filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#3C5A98', EndColorStr='#3C5A98');
	}
	.jumpbuttonactive, .jumpbuttonactive:focus {
		background-color: #3C5A98; color: #fff !important; text-shadow: 0 1px 0 rgba(0,0,0,.4); font-weight:500;
	}
	.jumpbuttonactive:hover {
		background-color: #879bc3; filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#879bc3', EndColorStr='#4467ac');
	}
	.jumpbuttonactive:before {
		background: #4467ac; background: rgba(0,0,0,.1); text-shadow: 0 1px 0 rgba(0,0,0,.4); font-weight:bold;
	}
	/* jumpbutton ist der graue Button für freigeschalteten Schritt */
	.jumpbutton, .jumpbutton:hover, .jumpbutton:before { font-weight:500; color: #666 !important; margin:10px 10px 0 0; }
	.disabled:before { color: #aaa !important; }

	.jumpbutton:before, .jumpbuttonactive:before, .disabled:before { width: 1.4em; margin: 0 1em 0 -1em; font-size: 1.0em;}
	.jump-1:before { content: "1"; font-size:10pt; }
	.jump-2:before { content: "2"; font-size:10pt; }
	.jump-3:before { content: "3"; font-size:10pt; }
	.jump-4:before { content: "4"; font-size:10pt; }
	.jump-5:before { content: "5"; font-size:10pt; }
	.jump-6:before { content: "6"; font-size:10pt; }
	.jump-7:before { content: "7"; font-size:10pt; }
	.jump-8:before { content: "8"; font-size:10pt; }
	.jump-9:before { content: "9"; font-size:10pt; }

	/**
	 * Überschriften und Textformatierungen für alle Formulare
	 */
	.front .headline-1 { border-bottom: 1px solid #888; padding: 0 0 .3571em 0; margin: 1.5em 0 1em 0; color:#513E46;	font-size:1.1429em; font-weight: bold; }
	.front .headline-2 { border-bottom: 1px solid #888; padding: 0 0 .3571em 0; margin: 0.5em 0 1em 0; color:#513E46;	font-size:1.1429em; font-weight: bold; }
	.front .headline-with-pic { border-bottom: 1px solid #888; padding: 0 0 .3571em 0; margin: 2em 0 1em 0; color:#513E46;	font-size:1.1429em; font-weight: bold; vertical-align: middle; }
	.front .headline-with-pic img  { float:left; margin-right: 10px; }
	.front .headline-with-pic span { display:block; width:100%; padding:4px 0 4px 0; vertical-align: middle; }

	.front .stripline-1 { border-bottom: 1px solid #666666; padding:0 0 5px 0; margin:15px 0 15px 0; color:#513E46; float:none; clear:both; }
	.front .headline-box-gray {
		margin:0 0 20px 0; padding:15px 10px; color:#666; border:1px dotted #C0C0C0; text-align:center; color: #080878; font-size:1.25em; line-height:1.2em;
	}
	.front div.text-1 { display:block; width:100%; border:0px solid #666666; padding:0; margin:0 0 10px 0; }
	.front div.text-2 { border: 0px solid #666666; color:#666666; margin:0 0 10px 0; padding:2px 0 2px 0; font-size:92.9%;  }
	.front div.text-3 { border: 0px solid #666666; margin:0; padding:2px 0 2px 0; }
	.front div.text-3 a { text-decoration: none; }
	.front div.text-4 { display:block; width:100%; border:0px solid #666666; padding:0; margin:0 0 10px 0; }
	ul.b24-form-list, ul ul.b24-form-list, ul ul ul.b24-form-list { margin:0 0 1.5em 0; position:relative; list-style-image: url('/images/icons/icon-check-blau.png'); list-style-position: outside; }
	ul.b24-form-list li { margin-left: 22px;  }

	div.text-3 ul, div.text-3 ul ul {
		list-style-position:outside; list-style-type:disc; left:15px; position:relative; margin-top:2px; margin-bottom:0;
	}
	dl.list { position:relative; }
	dl.list dt { float:left; clear:left; }
	dl.list dd { margin: 0 0 0 20px; }

	.front .b24-checkbox { display:block; width:100%; border:0px solid red; }
	.front .b24-checkbox-4 div, .front .b24-checkbox-1 div, .front .b24-checkbox-3 div { display:block; width:13em; height:auto; float:left; padding:5px 0 3px 2px; border:0px solid blue; }
	.front .b24-checkbox-1 div { width:100%; }
	.front .b24-checkbox-3 div { width:18em; }

	.front div.table { display:table; width:100%; }
	.front div.table div { display:table-row; width:100%; border-bottom:0px solid #C0C0C0; padding:5px 0 8px 0; }
	.front div.table div div { display:table-cell; width:25%; border:1px solid red; border-collapse:0px; border-spacing:0px; }

	.front div.tbl-text-3col { display:table; width:100%; border:0px solid red; border-collapse:0px; border-spacing:0px; }
	.front div.tbl-text-3col div { display:table-row; padding:5px 0 10px 0; }
	.front div.tbl-text-3col div div { display:table-cell; table-layout:auto; border-collapse:0px; border-spacing:0px; border-bottom:1px solid #C0C0C0; }

	.front div.tbl-text-2col { display:table; width:40%; margin:15px 0 15px 0; border:0px solid red; float:right; clear:both; border-collapse:0px; border-spacing:0px; }
	.front div.tbl-text-2col div { display:table-row; padding:2px 0 2px 0; }
	.front div.tbl-text-2col div div { display:table-cell; table-layout:fixed; border-collapse:0px; border-spacing:0px; }

	.front div.linedotted { display:block; width:100%; font-size:1px; height:1px; border-bottom:1px dotted #C0C0C0; margin:10px 0; }

	.email_helptext, .email_contact_text {
		color:#808080; font:italic normal normal 10pt/11pt "Open Sans", "Droid Serif", Georgia, "Times New Roman", Times, sans-serif;
	}


	.b24-searchform { margin:.45em 0 0 0; position: relative; float:right; }
	.b24-search-field { width:69%; float:right; position: relative; }
	.b24-jobsearch-left		{ width:40%; float: left; margin-right:0.6%; }
	.b24-jobsearch-right	{ width:59%; margin-bottom: .3em; }
	#radius-search-button {  }
	.b24-search-input {
		position:relative; box-sizing: border-box; font-size: 14px; height:29px; display: block; width: 100%; margin: 0; padding: 4px 5px;
		background-color: #fff; border: 1px solid #a89e95; border-radius: 3px; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
		color: #222; outline: 0 none; transition: border 0.2s linear 0s, box-shadow 0.2s linear 0s; vertical-align: baseline;
	}
	.b24-search-input:focus { outline: 0; border-color: #aaa; box-shadow: 0 1px 1px #bbb inset; }

	.b24-search-button {
		background-clip: padding-box; background-color: #ccc; background-image: linear-gradient(to bottom, #eee, #bbb);
		border: 1px solid #a89e95; border-radius: 0 3px 3px 0; color: #fff;
		cursor: pointer; display: inline-block; font-size: 1.25rem; height: 1.45em; margin: 0; outline: 0 none; overflow: visible; padding: 0;
		position: absolute; top: 0; right: 0; text-align: center; white-space: nowrap; width: 2em;
	}

	.b24-search-button span {
		background-image: url(/images/icons/suche-blau.png); background-position: center center; background-repeat: no-repeat; color:transparent; display: inline-block; width: 1em;
	}

	.mini-form-block {
		display:block; width:100%; border:0px solid red; margin:0 0 1em 0; float: none; clear: both;
	}
	.mini-form {
		display:block; width:100%;
	}
	.b24-search-dropdown select { width: 100%; padding: 3px 2px; }
	.b24-search-dropdown select:focus, .b24-search-dropdown select:active { background-color: #f3f3f3; border:0; }
	.b24-search-dropdown select option { padding:1px 4px; }

	.b24-search-dropdown select:hover, .b24-search-dropdown:hover::before, .b24-search-dropdown:hover::after {
		border:none; cursor: pointer; background-color: #f3f3f3;
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fafafa), color-stop(100%, #dddddd));
		background-image: -webkit-linear-gradient(top, #fafafa, #ddd); background-image: -moz-linear-gradient(top, #fafafa, #ddd);
		background-image: -ms-linear-gradient(top, #fafafa, #ddd); background-image: linear-gradient(to bottom, #fafafa, #ddd);
		filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, startColorstr='#FFFAFAFA', endColorstr='#FFDDDDDD'); zoom: 1;
	}
	.b24-search-dropdown {
		width: 30%; position: relative; display: inline-block; vertical-align: middle; background-color: #f3f3f3; color:#444;
		float:left; overflow: visible; border: 1px solid #ccc; border-radius: 3px;
	}
	.b24-search-dropdown::before, .b24-search-dropdown::after { content: ""; position: absolute; pointer-events: none; }
	.b24-search-dropdown::after { /*  Custom dropdown arrow */
		content: "\25BC"; height: 1em; font-size: .625em; line-height: 1; right: .8em; top: 50%; margin-top: -.5em; color: rgba(0,0,0,.9);
	}
	.b24-search-dropdown::before { /*  Custom dropdown arrow cover */ width: 1.5em; right: 0; top: 0; bottom: 0; background-color: #f3f3f3; border-right: 0px solid #000; }
	.b24-search-dropdown-select {
		font-size: inherit; /* inherit size from .custom-dropdown */ margin: 0; /* remove default margins */
		padding: .5em; /* add some space*/ padding-right: 2.5em; /* accommodate with the pseudo elements for the dropdown arrow */
		background-color: #f3f3f3; color: #444; border: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none;
	}
	.loginbox label { padding-bottom: 3px;}
	.b24-casual { line-height: 2em;}
	.loginbox { margin-bottom: .3em;}
	label.b24-pass-marg { margin-top: .3em; }
	.b24-login-full  { padding:1.5em 3em; }

	.b24-sorting-buttons { margin-top: -10px; }
	.b24-sorting-buttons span, .b24-sorting-buttons-bottom span { display:inline-block; margin-right: 10px; margin-top: 10px; }


	form div.b24-product-price-overview span { display: inline; margin: 0; } /* diese Einstellungen müssen stellenweise für <span> wieder überschrieben werden */

	.b24-check-opt-tbl { display: table; padding:3px 0; }
	.b24-check-opt-left, .b24-check-opt-right { display: table-cell; padding: 0; margin: 0; vertical-align: top; }
	.b24-check-opt-left input { margin:4px 10px 0 7px; }


	.b24-jobsearch-right button:after, .b24-jobsearch-right input[type="button"]:after, .b24-jobsearch-right input[type="reset"]:after, .b24-jobsearch-right input[type="submit"]:after {
		text-shadow: none; line-height: 1.55em; margin:0 -0.5em 0 0.6em;
	}
}

@media screen and (max-width: 785px) {
	.b24-form-marg fieldset { margin: .75em 0; }
	.b24-login-full  { padding:1em 1em; }
}

@media screen and (max-width: 640px) {
	.front label, .front label.lbig, .front label.bb-lbig, .front .formmain-left { width:100%; }
	.front .formelement-left { width:61%; } .front .formmain-left label { width:36%; }
	.front .formelementbig { width: 100%; }
	.front .formelementbigright { width: 100%; padding: 0; }
	.front .type-helptext, .front .type-helptext-left { float:left; width:100%; }
	.front .formmainpic { width:60%; }
	.front .formelement { width: 100%; padding: 0; }
	.front .formelementfile { width: 100%; padding: 0; }

	.b24-form-3col label { width:100%; }
	.b24-form-3col .formmain { width:100%; padding: 0; }
	.b24-check-opt-tbl { width: 100%; }

	.front div.tbl-text-2col { float:left; width:50%; }
	.front div.tbl-text-3col div div.tbl-text-3col-width { display: block; width:100%; text-align: left; border:none; }
	.front div.tbl-text-3col div div.tbl-text-3col-border { border-bottom:1px solid #C0C0C0; }

	/* Google ReCaptcha responsive machen */
	.recaptchatable #recaptcha_logo { display:none; }
}

@media screen and (max-width: 568px) {
	/*div.button-4-piece-jobnew li {  width: 50%; float:left; text-align: left; background-color: #CDCDCD; }*/
	div.button-4-piece-jobnew ul {
		display: block; width: 100%; height:70px; position: relative;
	}
	.b24-btn-568-l { position: absolute; left: 0; top:40px; }
	.b24-btn-568-r { position: absolute; right:0; top:40px; }
}

@media screen and (max-width: 480px) {
	.front .type-helptext2 { float:left; width:100%; }
	.front .formmainpic { width:100%; }
	.front .formelement-left { width:57%; } .front .formmain-left label { width:40%; }

	/* Google ReCaptcha responsive machen */
	#recaptcha_challenge_image { margin: 0 !important; width: 100% !important; }
	#recaptcha_response_field { margin: 0 !important; width: 100% !important; }
	.recaptchatable #recaptcha_image { margin: 0 !important; width: 100% !important; }
	.recaptchatable .recaptcha_r1_c1, .recaptchatable .recaptcha_r3_c1, .recaptchatable .recaptcha_r3_c2, .recaptchatable .recaptcha_r7_c1,
	.recaptchatable .recaptcha_r8_c1, .recaptchatable .recaptcha_r3_c3, .recaptchatable .recaptcha_r2_c1, .recaptchatable .recaptcha_r4_c1,
	.recaptchatable .recaptcha_r4_c2, .recaptchatable .recaptcha_r4_c4, .recaptchatable .recaptcha_image_cell {
		margin: 0 !important; width: 100% !important; background: none !important;
	}
}