form * {
	margin: 0;
	padding: 0;
}

form {
	width: 100%;
	/*font-size: 1em;*/
}

form h3 {
	font-size: 1em;
	margin: 1em 0;
}

form p  {
	margin-bottom: 0.6em;
}

table.fortbildung {
	font-size: 0.9em;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	-o-hyphens: none;
	hyphens: none;
}

fieldset {
	margin: 1.2em 0 0;
	padding: 0;
	border: none;

}

ol li fieldset {
	margin-top: 0;
	margin-left: 0.1em;
}

fieldset + fieldset, legend + fieldset {
	margin-top: 0.2em;
}

legend {
	color: rgb(64, 64, 64);
}
	
.legend-header {
	font-weight: bold;
	display: block;
	margin-bottom: 1em;
	padding-top: 1em;
	color: rgb(88,166,24);
	color: rgb(64,64,64);
	border-top: 2px rgb(255,255,255) solid;
	width: 100%;
}

.success {
	font-weight: bold;
	display: block;
	/*margin-top: 0.8em;*/
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgb(88,166,24);
	font-size: 1.2em;
}

.legend-header::before, .success::before, .error-header::before {
	content: "→";
	margin-right: .3em;
}


.js_hidden {
	display:none !important;
}

.ausgebucht, .ausgebucht:hover {
	color: red;
	cursor: default;
}

tr:hover {
	cursor: pointer;
}

#termin::-moz-clear-button, #teilnahme_datum::-webkit-clear-button {
	-moz-appearance: none;
	display: none;
}

#termin {
-moz-appearance:textfield;
}

input[type="date"]:readonly::-webkit-inner-spin-button, input[type="date"]:readonly::-ms-clear { 
-webkit-appearance: none;
display: none;
}

input[type=date]::-webkit-inner-spin-button, 
input[type=date]::-webkit-outer-spin-button { 
-webkit-appearance: none; 
margin: 0; 
}

input[type=checkbox] {
width: auto;	
}

.content p {
	font-size: 1em;
}

.content > p {
	font-size: 1.2em;
}

.anrede, .fn, .fn > div, .pcl > div {
	display: inline-block;
}

.anrede input {
	width: 2.7em;
}

.fn input {
	width: 9.2em;
}

fieldset#info input {
  width: 100%;
}

.error-header {
	font-weight: bold;
	display: block;
	margin-bottom: 1em;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: red;
}

label, dt {
	color: rgb(64,64,64);
}

label[for="mitteilung"] {
	display: block;
}


#mitteilung {
	width: calc(100% - 12px);
	height: 12em;
	resize: vertical;
}

#teilnahme_datum {
	width: 7.5em;
}

label[for="betrieb_branche"] {
	display: block;
}

.required::after {
	content: "*";
	margin-left: 0.05em;
	display: inline;
	color: #cc0000;
}

select {
font-family: "Calibri", Arial, Verdana, sans-serif;
font-size: 1em;
margin-right: 1em;
}

#betrieb_branche, #betrieb_branche_andere {
	display: inline-block;
}

#betrieb_branche_andere {
	margin-bottom: 0;
}

input {
	width: 11.5em;
}

input[type="radio"], input[type="submit"] {
	width: auto;
}

input[id^="street-address"] {
	width: 25em;
}

input, textarea {
border: 1px solid rgb(0, 0, 0);
background-color: transparent;
padding: 4px 6px 2px;
font-family: "Calibri", Arial, Verdana, sans-serif;
font-size: 1em;
color: inherit;
}

input, textarea, dd {
margin-top: 0.1em;
margin-bottom: 1.1em;	
}


input[type="submit"] {
	border: solid rgb(64,64,64) 2px;
	padding: 0.5em 0.75em 0.25em;
	font-family: "Calibri", Arial, Verdana, sans-serif;
	font-size: 1em;
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	background: none;
	color: rgb(64,64,64);
	float: right;
	margin-top: 1em;
}

input[type="submit"]:hover {
border-color: rgb(88,166,24);
background: rgb(88,166,24);
color: white;
cursor: pointer;
}

input[type="text"], input[type="email"], input[type="date"] {
	display: block;
margin-right: 1em;		
}

input[type="radio"] {
	margin-top: 0.5em;
}

input[type="radio"] ~ input[type="radio"] {
	margin-left: 0.5em;
}

.textbox-search-clear {
	list-style-image: none;
}

#branche, #termin {
	border: none;
	padding: 0;
}

#anmeldung_fortbildung {
	border-bottom: none;
}

#anmeldung_fortbildung a {
font-style: normal;
color: rgb(88,166,24);
text-decoration: none;
padding: 0;
margin: 0;
}

ol li fieldset {
display: inline-block;
}

#betrieb_ort li fieldset {
vertical-align: -4.2em;
}

.add, .remove {
display: inline-block;
}

.add input[type="button"], .remove input[type="button"] {
border: none;
width: auto;
}

.add::before, .remove::before, .help::before {
display: inline-block;
width: 1em;
height: 1em;
border: 2px solid rgb(88,166,24);
color: rgb(88,166,24);
border-radius: 1em;
text-align: center;
line-height: 1.1em;
}

.add::before {
content: "+";
}

.remove::before {
content: "−";
}

.add:hover, .remove:hover, .help:hover {
cursor: pointer;
color: rgb(64,64,64);
}

.add:hover input, .remove:hover input {
cursor: pointer;
color: rgb(88,166,24);
}

.add:hover::before, .remove:hover::before, .help:hover::before {
background-color: rgb(88,166,24);
color: white;
}

*[id^=help] {
margin-bottom: .4em;
list-style: decimal inside;
font-size: 0.9em !important;
}

.optional li {
list-style: none;
display: none;
}

.optional li.visible {
display: list-item;
}

ol.inside {
list-style-position: inside !important;
}

ol.inside li {
list-style-type: decimal;
list-style-position: inside;
}

#help_spez_module dt {
margin-right: 0.7em;
}

#help_spez_module dt, #help_spez_module dd {
display: inline;
margin-bottom: 0.5em;
margin-left: 0;
line-height: 2.1em;
}

.schulungen h2 {
border-top: 2px solid white;
padding-top: 1em;
/*margin-bottom: 0;*/
}

.schulungen h2::before {
	content: "→";
	margin-right: .3em;
}

.content .schulungen ul {
margin-bottom: .3em;
}

.content .schulungen ul ul {
margin-bottom: .7em;
}

dl {
margin: 0;
}

#dsgvo_checkbox {
margin-top: 1em;
}

#dsgvo {
vertical-align: text-top;
margin-right: .2em;
}
