/* FORMULAR ****************************************************************/

/*	Schrift ******************************************************************/
input,
textarea,
label {font-family:acumin-pro,sans-serif;font-weight:300;font-style:normal;}

/*	FARBEN  ********************************************************************
	schwarz		#000
	weiss		#fff
	hellgrau	#ededed	(Akzent 1 hell)
	rot			#e74440 (Signalfarbe)
	***************************************************************************/


/* Form */
.lay_formular {text-align:left;}
.ce_form {margin:0 auto;padding:0 0 6em 0;width:100%;}
.notfall .ce_form {padding:1px 2em;width:calc(100% - 4em);}
/* Titel */
lay_formular legend {color:#004f91;}
/* Umschlaege */
.lay_formular fieldset {display:block;margin:0;border:0;padding:0;width:100%;height:auto;}
.lay_formular .formbody > fieldset {margin:0 0 2.25em 0;}
.notfall .lay_formular .formbody > fieldset {margin-bottom:0;}
.lay_formular .formbody > fieldset.abweichend {margin:0;}
.lay_formular .widget {position:relative;margin:0.5em 0;width:auto;}
@media screen and (min-width:960px) {
	.lay_formular fieldset {display:inline-block;vertical-align:top;width:calc(50% - 4px);}
	.lay_formular .widget {margin:0.75em 0;}
	.lay_formular .links .widget {margin-right:1.125em;}
	.lay_formular .rechts .widget {margin-left:1.125em;}
	.lay_formular .rechts legend {margin-left:1.125em;}
}
/* Label */
.lay_formular label {position:absolute;top:calc(0.25em + 2px);left:0;}
.lay_formular label p {display:inline;margin:0;}
/* Inputs */
.lay_formular textarea, 
.lay_formular input[type='text'], 
.lay_formular input[type='number'],
.lay_formular input[type='tel'],
.lay_formular input[type='email'] {font-size:1em;text-align:left;color:#004f91;display:block;margin:0 0 0 6em;border:1px solid #eef1f8;padding:4px 0.75em;width:calc(100% - 8em);height:auto;background-color:#fff;border-radius:4px;outline:none;transition:border 0.25s ease;}
.lay_formular textarea:hover,
.lay_formular input[type='text']:hover,
.lay_formular input[type='number']:hover,
.lay_formular input[type='tel']:hover,
.lay_formular input[type='email']:hover {color:#000;border:1px solid #fff;}
.notfall .lay_formular textarea:hover,
.notfall .lay_formular input[type='text']:hover,
.notfall .lay_formular input[type='number']:hover,
.notfall .lay_formular input[type='tel']:hover,
.notfall .lay_formular input[type='email']:hover {color:#000;border:1px solid #7fa7c8;}
.lay_formular textarea:focus,
.lay_formular input[type='text']:focus,
.lay_formular input[type='number']:focus,
.lay_formular input[type='tel']:focus,
.lay_formular input[type='email']:focus {color:#000;border:1px solid #004f91;}
/* Spezial */
.lay_formular .widget.ganzebreite {/*border-top:1px solid #004f91;border-bottom:1px solid #004f91;*/padding:2.75em 0.75em 1.125em 1.125em;background-color:#bfd3e3;border-radius:2px;}
.lay_formular .widget.ganzebreite input {margin:0;width:calc(100% - 2em);}
.lay_formular .widget.ganzebreite label {padding-top:0.5em;padding-left:1.125em;}
/* Radio-Inputs */
.lay_formular .widget-radio {/*width:100%;*/padding:0.75em 0.75em 1.125em 1.125em;background-color:#bfd3e3;border-radius:2px;}
.lay_formular .widget-radio fieldset {width:100%;}
.lay_formular .widget-radio fieldset > span {display:block;}
.lay_formular .widget-radio legend {font-weight:normal;color:#000;}
.lay_formular .widget-radio input {vertical-align:bottom;}
.lay_formular .widget-radio label {position:relative;vertical-align:bottom;width:auto;line-height:32px;}
/* Explanation */
@media screen and (min-width:640px) {
	.lay_formular .explanation.gebuehren {margin-right:calc(33.333% + 4px + 1.125em);width:auto;margin-bottom:2.25em;}
}
/* Buttons */
.lay_formular button.submit {font-size:18px;color:#fff;margin:2.1em auto 0 0;border:1px solid #eef1f8;padding:0.25em 1em;width:auto;height:auto;background-color:#004f91;border-radius:4px;transition:border 0.25s ease;}
.lay_formular button.submit:hover {border:1px solid #004f91;}
.lay_formular button.submit:active {border:1px solid #7fa7c8;background-color:#7fa7c8;}
/* Klassen */
.lay_formular span.mandatory {margin:0 0 0 2px;color:#e74440;}
.lay_formular .explanation p span.mandatory {font-size:13px;color:#e74440;float:right;margin-top:-1.5em;}
.lay_formular .explanation p.zusatz {margin-top:-11px;color:#004f91;}
.lay_formular .widget-explanation h2 {margin-top:2em;}


/* Abweichende Angaben => Felder anzeigen */
#abweichend_checkbox {margin-top:11px;}
.lay_formular .abweichend_label {position:relative;display:inline-block;vertical-align:top;padding:0 0 0 8px;color:#004f91;font-weight:bold;}
.lay_formular .abweichend {display:none;}
#abweichend_checkbox:checked ~ .abweichend {display:block;}
#abweichend_checkbox:checked ~ fieldset.abweichend {display:inline-block;}


/* Zusaetzliche Angaben => Felder anzeigen */
.lay_formular .zusatz_02, .lay_formular .zusatz_03 {display:none;margin-left:20px;}
.lay_formular .zusatz_02 > span, .lay_formular .zusatz_03 > span {position:relative;display:block;margin-bottom:8px;}
.lay_formular .zusatz_02 label, .lay_formular .zusatz_03 label {display:inline-block;vertical-align:top;position:absolute;top:0;}
.lay_formular .zusatz_02 input[type='text'], .lay_formular .zusatz_03 input[type='text'] {display:inline-block;width:8em;}
#opt_51_2:checked ~ .zusatz_02 {display:block;}
#opt_51_3:checked ~ .zusatz_03 {display:block;}

/* Zusatzfelder */
.lay_formular .widget-radio {margin-bottom:0;}
.lay_formular .zusatzfelder {padding:0 0.75em 0.75em 1.125em;width:calc(100% - 1.875em);background:#bfd3e3;}
.lay_formular .zusatzfelder input[type='text'],
.lay_formular .zusatzfelder input[type='number'] {display:inline-block;width:8em;}
#zusatzfelderzusatz {display:none;}
@media screen and (min-width:960px) {
	.lay_formular .zusatzfelder {padding-right:calc(33.333% + 0.75em);width:calc(100% - 33.333% - 1.875em);}
}
