article fieldset { margin: 5px 0; padding: 4px; }
article fieldset label { 
	width: 170px;
	display: inline-block;
	text-align: right;
	padding-right: 5px;
	white-space: nowrap;
}

article fieldset legend { margin-bottom: 10px; padding: 0 10px 0 0; }
article label { vertical-align: top; }
article fieldset input, fieldset select { margin: 0 0 2px 0; }
article input[type=text], article select { border: 1px solid #AAA; }
article .inputxl { width: 350px; }
article .inputl { width: 200px; }
article .inputs { width: 90px; }
article fieldset.personen .inputs { width: 90px; }
article .inputxs { width: 25px; }
article fieldset.personen .inputxs { width: 25px; }

article input { z-index: 0; }
article input[type=submit] { margin-left: 178px; }

@media (max-width:581px) { 

    article form                                                   { width: 99%; }
    article fieldset.oben                                          { text-align: left; }
    article fieldset label                                         { width: 99%; text-align: center; }
    article .inputxl                                               { width: 95%; }
    article fieldset input[type=text]                              { width: 99%; height: 1.6em; }
    article fieldset select                                        { padding: 1px 0 1px 0; width: 99% !important; height: 1.8em; }
    article fieldset                                               { text-align: center; }
    article fieldset.personen label.empty                          { display: none; }
    article fieldset.personen                                      { text-align: left; }
    article fieldset.zeitraum                                      { text-align: left; line-height: 2em; }
    article fieldset.zeitraum label.empty                          { display: none; }
    article fieldset.zeitraum .inputs                              { width: 70%; float: left; margin: 0 0.8em 0 0; }
    article input[type=submit]                                     { text-align: center; margin: 0 auto 0 auto; float: none; display: block; }
    article a.datenschutz                                          { clear: both; float: none; display: inline-block; text-align: center; }

}

