fieldset {
    margin-top: 1em;
    position: relative;
}
fieldset.first {
    margin-top: 0;
}
fieldset legend {
    position: relative;
    left: -0.75ex;
}
.iField {
    float: left;
    height: 4.25em;
    padding-top: 1ex;
    padding-right: 1ex;
}
.iField label {
    display: block;
}
.iField .help {
    font-size: 85%;
    color: #999999;
}
span.asterisk {
    color: red;
}
.iField span.asterisk {
    display: none;
}
.iField.required span.asterisk {
    display: inline;
}

.iField.checkbox,
.iField.radio {
    height: auto;
    padding-top: 0;
    padding-right: 3ex;
}

.options,
.iField.checkbox input,
.iField.radio input {
    float: left;
}

.iField.checks,
.iField.area {
    height: auto;
    padding-bottom: 1.4em;
}

.messages.error {
    margin: 1ex 0;
    padding: 1ex;
    border: 1px dotted red;
}
.messages.error,
.iField.error {
    background: #ffcccc;
}
.iField.error .help {
    color: #990000;
}

div.subset {
    float: left;
    width: 100%;
}

.iField.phone.nanp input {
    width: 8em;
}

.hidden {
    display: none;
}

