@charset "utf-8";
.gonzo {unicode-bidi:bidi-override; direction:rtl; text-align:left;}
.gonzo b, .gonzo strong {display: none;}
.gonzo i:before { content: '\40'; }

/* Für signup.htm Formularüberprüfung: */
p.formularwarnung { color: #ff5353; font-weight: bold; }
input.invalid:invalid { background-color: #ff5353; }
input[type=radio].invalid:invalid + label,
input[type=checkbox].invalid:invalid + label { color: #ff5353; font-weight: bold; text-transform:uppercase; }

/* InVisible HoneyPot für den Spam-Honeypot "website": */
.ivhp {
    position: absolute;
    height: 1px !important;
    width: 1px !important;
    clip: rect(0 0 0 0);
    margin: -1px;
    padding: 0;
    overflow: hidden;
    border: 0;
}

.cms header#header { top: 50px; }

.notcms { display: block; }
.cms .notcms { display: none; }

.errorpage .box { max-width: 600px; margin: auto auto; margin-bottom: 200px; }

.cms .unsichtbar { display: block; opacity: 0.2; }
.unsichtbar, .cms.editing .unsichtbar { display: none; }

.content_section_item { padding-bottom: 3em; }
section.wrapper .content_section_item header, article.wrapper .content_section_item header { margin: 0; }
.flex.flex-2 .content_section_item { width: 47%; }
.flex.flex-3 .content_section_item { position: relative; width: 28%; }
.flex.flex-4 .box { width: 21%; }
.flex.flex-3 .content_section_item:before { content: ''; position: absolute; width: 100%; height: 100%; right: -2em; top: 0; border-right: 1px solid #dbdbdb; pointer-events: none; }
.flex.flex-2 .content_section_item:nth-child(2n+0):before { border: none; }
.flex.flex-3 .content_section_item:nth-child(3n+0):before { border: none; }
.flex.flex-4 .content_section_item:nth-child(4n+0):before { border: none; }
.flex.flex-2 .content_section_item:last-child:before { border: none; }
.flex.flex-3 .content_section_item:last-child:before { border: none; }
.flex.flex-4 .content_section_item:last-child:before { border: none; }

/* Corrects margin displayed oddly in IE6/7 */
/* Define consistent border, margin, and padding */
fieldset {
	border: 1px solid silver;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

.main-content p,
.main-content ul,
.main-content ol,
.main-content table,
.main-content form,
.main-content fieldset {
	margin-top: 1.33333em;
	margin-bottom: 1.33333em;
}

fieldset {
	margin: 1em 0;
	border: 1px solid #dedede;
}
fieldset legend {
	padding: 0 0.27778em;
}
fieldset + br {
	/* Kill <br> that Contao injects */
	display: none;
}

.main-content fieldset p {
	margin: 0;
}
.main-content fieldset p b.error,
.main-content fieldset p.error {
	float: none;
	width: auto;
	margin: 0.5em 0;
}
.main-content fieldset label {
	display: inline;
	margin: 0;
}
.main-content fieldset label:after {
	/* add line break after label */
	content: "\A";
	white-space: pre;
}
.main-content input,
.main-content textarea,
.main-content select,
.main-content fieldset {
	width: 75%;
}
@media screen and (max-width: 599px) {
	.main-content input,
	.main-content textarea,
	.main-content select,
	.main-content fieldset {
		width: 100%;
	}
}

.invisible {
    position: absolute;
    height: 1px !important;
    width: 1px !important;
    clip: rect(0 0 0 0);
    margin: -1px;
    padding: 0;
    overflow: hidden;
    border: 0;
}

input[type="checkbox"] + label,
input[type="radio"] + label {
display: block;
}

input[type="tel"],
select {
height: 2.75em;
}

input#ctrl_6 {
width: 14%;

display: inline;
float: left;
}

input#ort {
width: 84%;
display: inline;
float:right;
}

@media screen and (max-width: 599px) {
input#ctrl_6 { width: 30% }
input#ctrl_6 { width: 68%; }
}

input[type="text"]:invalid,
input[type="password"]:invalid,
input[type="email"]:invalid,
input[type="tel"]:invalid,
select:invalid,
textarea:invalid {
	border-color: red;
}
