.form-fields {
    margin: 0 auto;
    padding: 10px;
}

.form-fields .field {
    margin-bottom: 0.5em;
}
.form-fields .field:last-child {
    margin-bottom: 0;
}

.form-fields .row {
    overflow: auto;
}

.form-fields .row .label {
    float: left;
    width: 9em;
}

.form-fields .row .input {
    float: left;
    width: 19em;
    padding: 0;
}

.form-fields .row .hint {
    float: left;
}

.form-fields .wide .row .hint {
    float: none;
    clear: both;
    margin-left: 9.5em;
}

.form-fields .wide .input {
    width: 35em;
}

.form-fields .wide textarea {
    height: 15em;
}


.form-fields #input-dob-day {
    float: left;
    margin-right: 0.5em;
}
.form-fields #input-dob-month {
    float: left;
    margin-right: 0.5em;
}
.form-fields #input-dob-year {
    float: left;
}
.form-fields #input-dob-day option:first-child,
.form-fields #input-dob-month option:first-child,
.form-fields #input-dob-year option:first-child {
    color: #666
}


.form-fields .field-gender .lc,
.form-fields .field-gender .rc {
    display: inline-block;
    float: left;
    width: 6em;
}

.form-fields .field-gender .rc {
    margin-right: 7.35em;
}

.form-fields .row .label {
    margin-right: 0.5em;
    font-weight: bold;
}

.form-fields .row .input {
    margin-right: 1em;
}

.form-fields .row .hint {
    color: #666;
}

.form-fields .message-row {
    margin-left: 9.5em;
    color: red;
    height: 1.5em;
    vertical-align: top;
}


.form-fields .buttons-row {
    width: 28.8em;
}

.form-fields .buttons-row-wide {
    width: 44.8em;
}

.register .form-fields .buttons-row-wide {
    width: 35em;
}

.contact .form-fields .buttons-row-wide {
    width: 30.4em;
}


.form-fields .buttons-row > * {
    float: left;
    margin-right: 1em;
}

.form-fields .buttons-row input[type="submit"] {
    float: right;
    margin-right: 0;
/*    margin-right: 19.8em;*/
}


.form-fields .messages {
    margin: 1em;
}

.form-fields .messages .error {
    color: red;
    font-weight: bold;
}
       
