/* --------- general ---- */

form.side-by-side {
	overflow: hidden;
}

form.side-by-side fieldset.submit {
	border-style: none;
}

/* --------- left-align-labels ---- */

form.side-by-side label {
	float: left;
	width: 90px;
	margin-right: 10px;
	text-align: right;
	position: relative;
	font-weight: normal;
	padding: 3px 0;
}

form.side-by-side label:after { content: ' :'; }

form.side-by-side fieldset li {
	float: none;
	clear: left;
	width: 100%;
	padding-top: 2px;
	padding-bottom: 2px;
	margin-bottom: 2px;
	margin-left: 0;
}

form.side-by-side fieldset.submit {
	float: none;
	width: auto;
	border: 0 none #FFF;
	padding-left: 14.5em;
}

form.side-by-side fieldset.alt {
	background-color: #E6E3DD;
}

/* ---------- colours and stuff --------- */

form.side-by-side legend {
	margin-left: 0;
	padding: 0;
	color: #000;
	font-weight: bold;
}

form.side-by-side label span {
	font-size: 90%;
	color: #412F33;
}

/* ---- group fieldsets -- */
form.side-by-side fieldset {
	position: relative;
	float: left;
	clear: both;
	width: 100%;
	margin: 0 0 -10px 0;
	padding: 0 0 10px 0;
	border-style: none;
	border-bottom: 1px solid #DEDEDE; /* #FF6F8C;   */
	background-color: #FFF; /* #F0F0F0; */
	
	width: 590px;
	padding-left: 5px;
	padding-right: 5px;
}

form.side-by-side fieldset.half-width {
	width: 50%;
	float: left;
	clear: none;
	width: 290px;
	padding-left: 5px;
	padding-right: 5px;
}

form.side-by-side legend span {
	position: absolute;
	font-size: 100%;
	top: 0;
	margin-top: 5px;
	color: #FF0033;
	font-weight: normal;
	
	display: block;
	left: 0; right: 10px; width: auto;
	background: #A09F75;
	padding: 5px 0px 5px 10px;
	font-weight: bold;
	color: #3D3D16;
}

form.side-by-side fieldset ol {
	padding: 40px 0px 10px 0px;
	list-style: none;
	float: none;
}

form.side-by-side fieldset.submit {
	float: none;
	width: auto;
	padding-top: 1.5em;
	background-color: #FFFFFF;
}

form.side-by-side fieldset.submit {
	padding: 0 0 0 0!important;
	background: #FAA;
	text-align: right;
	margin: 0 0 0 auto;
	width: 120px;
}

form.side-by-side fieldset + fieldset.submit {
	position: relative;
	top: -65px;
	margin-bottom: -52px;
}

form.side-by-side fieldset.submit button {
	/*float: right;*/
}

/* ---- end group fieldsets -- */

form.side-by-side fieldset.submit {
	float: none;
	width: 150px;
	border-style: none;
	background-color: transparent;
}

/* --------- subgroups --------- */

form.side-by-side fieldset fieldset {
	margin-bottom: -2.5em;
	border-style: none;
	background-color: transparent;
	background-image: none;
}
form.side-by-side fieldset fieldset legend {
	margin-left: 0;
	font-weight: normal;
	position: relative;
}
form.side-by-side fieldset fieldset legend span {
	display: block;
	width: 10em;
	margin-right: 2em;
	text-align: right;
	position: static;
	font-size: 100%;
	left: 0em;
	top: 0;
	margin-top: 0;
	font-size: 90%;
	color: #412F33;
	width: 8.9em;
	margin-right: 1.1em;
	position: relative;
	font-weight: normal;
	padding: 3px 0;
}
form.side-by-side fieldset fieldset legend span:after { content: ' :'; }

form.side-by-side fieldset fieldset ol {
	position: relative;
	top: -1.5em;
	margin: 0 0 0 9em;
	padding: 0;
}
form.side-by-side fieldset fieldset label {
	float: none;
	width: auto;
	margin-right: auto;
	padding: 0;
	top: -2px;
}

form.side-by-side fieldset fieldset label:after { content: ''; }

.checkbox input, .radio input {
	margin: 3px;
	margin-left: 100px;
}

.no-indent .checkbox input, .no-indent .radio input {
	margin-left: 3px;
}

form.side-by-side li.checkbox, form.side-by-side li.radio {
	position: relative;
}

form.side-by-side li.checkbox label, form.side-by-side li.radio label {
	float: none;
	text-align: left;
	top: -2px;
	position: static;
}

form.side-by-side li.checkbox label:after { content: ''; }
form.side-by-side li.radio label:after { content: ''; }

/* --------- left-align-labels ---- */

/*
form.side-by-side label, form.side-by-side fieldset fieldset legend span {
	text-align: left;
}
*/

/* ---- required fields ---- */

form.side-by-side label em {
	position: absolute;
	left: 25.5em;
	top: 1px;
	width: 16px;
	height: 16px;
	overflow: hidden;
	display: block;
	text-indent: 9999px;
	background: url(../img/forms/star.png) no-repeat 0 0;
}

form.side-by-side label strong {
	position: absolute;
	left: 32em;
	top: 0.2em;
	width: 24em;
	color: #C00;
	font-size: 85%;
	font-weight: normal;
	text-transform: uppercase;
	text-align: left;
}

form.side-by-side label strong em {
	position: absolute;
	font-size: 118%;
	left: -1.75em;
	top: -1px;
	background: url(../img/forms/exclamation.png) no-repeat 0 0;
}

form.side-by-side .text input, form.side-by-side .password input, form.side-by-side textarea, form.side-by-side .faketext {	
	font-family: "frutiger linotype", "lucida grande", "verdana", sans-serif;
	padding: 2px 1px;
	
	border-top:1px solid #7c7c7c;
	border-left:1px solid #c3c3c3;
	border-right:1px solid #c3c3c3;
	border-bottom:1px solid #ddd;
	background:#fff url(../img/fieldbg.png) repeat-x top;
	
	width: 185px;
}

form.side-by-side select {
	padding: 2px 1px;
	font-family: "frutiger linotype", "lucida grande", "verdana", sans-serif;
	border-top:1px solid #7c7c7c;
	border-left:1px solid #c3c3c3;
	border-right:1px solid #c3c3c3;
	border-bottom:1px solid #ddd;
	background:#fff url(../img/fieldbg.png) repeat-x top;
	padding: 0;
	
	width: 185px;
}

form.side-by-side .date select {
	width: auto;
	max-width: 185px;
}

/* --- IE <= 7 only -- */

* html form.side-by-side legend {
	position: relative;
	left: -7px;
	top: -0.75em;
}
* html form.side-by-side fieldset ol {
	padding-top: 0.25em;
}
* html form.side-by-side fieldset {
	position: relative;
}

/* ---- group fieldsets ---- */

* html form.side-by-side legend span {
	margin-top: 1.25em;
}
* html form.side-by-side fieldset ol {
	padding-top: 3.25em;
}

/* ---- end group fieldsets ---- */

/* ---- subgroups --- */

* html form.side-by-side fieldset fieldset legend {
	top: 0;
}

/* ------------ error message */

.error-message {
	margin-left: 100px;
	margin-top: 5px;
	font-variant: small-caps;
	color: #820B08;
	font-size: 90%;
}