fieldset {
    margin-bottom: 10px;
    margin-bottom: 1rem;
    padding-bottom: 10px;
    padding-bottom: 1rem;
    border: none;
    border-bottom: solid 2px #e1e1e1;
}

legend {
    font-variant: small-caps;
    font-weight: bold;
}

label {
	margin: 10px 0 4px 0;
	font-weight: bold;
	display: -moz-inline-stack;
	display: inline-block;
	line-height: 1.3em;
	clear: both;
}

.fieldgroup {
    position: relative;
}

input.small,
select.small {
	width: 25%;
}

input.medium,
select.medium {
	width: 47%;
}

input.medium {
	padding-right: 2px;
}

input.large,
select.large,
textarea.large {
	width: 99.2%;
}

input.readonly {
    width: 45px;
    width: 4.5rem;
    padding: 0;
    text-align:center;
}

textarea.medium {
	width: 63%;
}

textarea.small {
	height: 80px;
}

textarea.medium {
	height: 150px;
}

textarea.large {
	height: 250px;
}

textarea.large.short {
	height: 150px;
}

textarea.large.tall {
	height: 400px;
}

ul.checkbox li input[type=checkbox],
ul.radio li input[type=radio] {
	width: auto !important;
}

.checkbox li,
.radio li {
	position: relative;
}

ul.checkbox,
ul.radio {
	margin: 6px 0;
	padding: 0;
}

.checkbox li label,
.radio li label {
	display: block;
	margin: 0 0 0 24px;
	padding: 0;
	width: auto;
	line-height: 1.5;
	vertical-align: top;
}

.checkbox li input[type=checkbox],
.radio li input[type=radio],
.checkbox li input {
	float: left;
	margin-top: 2px;
}

.checkbox li,
.radio li {
	margin: 0 0 8px 0;
	line-height: 1.3em;
}

.radio li input[type="radio"]:checked+label,
.checkbox li input[type="checkbox"]:checked+label {
    font-weight: bold;
}

ul.checkbox li,
ul.radio li {
	padding: 0 !important;
}

ul.radio li input+input {
	margin-left: 4px;
}

input.datepicker {
	margin-right: 4px !important;
	display: -moz-inline-stack;
	display: inline-block;
	zoom: 1;
}

form .description {
	padding: 0 0 10px 0;
	width: 99.8%;
}

form .required {
	color: #790000;
	margin-left: 4px;
}

input[type=hidden] {
	display: none !important;
	max-height: 1px !important;
	overflow: hidden;
}

/* INFIELD LABELS */

.ifl {
    position:relative;
    margin-bottom: 10px;
    margin-bottom: 1rem;
}

.ifl br {
    display: none;
}

.ifl label {
    position:absolute;
    top:0;
    left:10px;
    left:1rem;
    font-weight:400;
}


/* ERROR MESSAGES  */

input.error {
    border: 1px solid #790000;
}

label.error {
    background: #790000;  box-shadow: 1px 1px 2px #333; font-size: .75em; padding: 5px 8px; color: #FFF; text-transform: lowercase;
}

.checkbox_group label.error {
    position: 
}

/* HIDE THE HONEYPOT FIELD */


form .email_auto {
	display: none !important;
	position: absolute !important;
	left: -9000px;
}

/* TEXT AREA CHARLEFT COUNTER */


form .remLen {
	font-size: 14px;
    font-size: 1.4rem;
	color: #B7B7B7;
	white-space: nowrap !important;
}
