﻿/* Elements 
--------------------------- */

div.con-main input.field,
div.con-main textarea {
	background: #FFFFFF;
	border-top: #7b7a74 1px solid;
	border-right: #dcdacf 1px solid;
	border-bottom: #dcdacf 1px solid;
	border-left: #7b7a74 1px solid;
	background-color: #fff;
	color: #3f3f3c;
	}

div.con-main div.radiogroup label {
	margin-right: 1em;
	}

/*

select.menu {
	background: #F8F8F8;
	border-top: 1px solid #ccd7e2;
	border-right: 1px solid #859cb3;
	border-bottom: 1px solid #859cb3;
	border-left: 1px solid #ccd7e2;
	margin: 0;
	color: #333;
	}	
select.menu-fixed {
	width: 225px;
	color: #333;
	}	
*/


/* Forms 
--------------------------- */

div.con-main fieldset {
	margin: 0;
	padding: 0;
	}

div.con-main fieldset.outer,
div.con-main div.outer {
	background: #f0f0f0 url(../library/form-fill.gif) repeat-y;
	position: relative;
	top: 0;
	left: 0;
	border: none;
	margin: 0 0 1em 0;
	}

div.con-main fieldset.single,
div.con-main fieldset fieldset {
	padding: 0 0 0 0;
	border: none;
	}

div.con-main legend {
	margin: 0;
	padding: 0;
	}

div.con-main legend span {
	background: transparent url(../library/legend-bg.gif) top no-repeat;
	display: block;
	width: 535px;
	height: 2.5em;
	padding: 5px 0 0 14px;
	color: #5f3710;
	}

div.con-main div.row legend span {
	background: none;
	border: none;
	padding: 0;
	float: left;
	display: inline;
	width: 150px;
	text-align: right;
	margin-right: 15px;
	margin-left: -167px;
	color: #444;
	}


div.con-main div.row {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	min-height: 2em;
	padding-bottom: .7em;
	}
div.con-main div.row:after { /* Fails to clear on first item in IE 1.5 (pc?) */
	display: block;
	clear: both;
	content: ".";
	visibility: hidden;
	height: 1px;
	}
/* Over rides .row */
div.con-main div.submit {
	min-height: 5px;
	padding: 15px 0;
	background: url(../library/form-bottom.gif) no-repeat bottom;
	}

div.con-main div.submit input {
	margin: 0 5px 0 0;
	}

div.con-main div.row span.desc {
	float: left;
	display: inline;
	width: 150px;
	text-align: right;
	margin-right: 15px;
	}

div.con-main div.indentdesc {
	margin-left: 165px;
	width: 300px;
	}

div.con-main div.indentdesc span.desc {
	display: block;
	text-align: left;
	width: 300px;
	margin-bottom: .3em;
	}

div.con-main div.row p {
	margin: 0;
	padding: 0 2em;
	}

div.con-main div.row p.desc {
	margin: 0;
	padding: 0 8px 0 8px;
	line-height: 1.5;
	width: 100px;
	float: left;
	display: inline;
	text-align: right;
	}

div.con-main div.row label span.element {
	float: left;
	display: inline;
	width: 200px;
	}

div.con-main div.row span.element input.field {
	display: block;
	}

div.con-main div.row span.element textarea {
	width: 180px;
	}

div.con-main div.row span.element input.field {
	width: 180px;
	}

div.con-main div.row span.element input.small {
	width: 30px !important;
	}

div.con-main span.button {
    margin-left: 165px;
}


/* Button on same line row as element */
div.con-main div.row span.submit {
	display: inline;
	float: left;
	width: 50px;
	text-align: right;
	}
div.con-main div.row span.submit input {
	margin: 0;
	line-height: 1;
	}



/* Required indicators */

div.con-main div.required-info {
	position: absolute;
	top: 0;
	left: 0;
	width: 530px;
	padding: 5px 10px 0 0;
	text-align: right;
	color: #b0232e;
	line-height: 1;
	}

div.con-main div.required-info strong {
	display: inline-block;
	background: url(../library/required.gif) no-repeat 0 2px;
	width: 0px;
	padding-left: 5px;
	overflow: hidden;
	}

/* Almost inline-block in Gecko based browsers only */
div.con-main div.required-info strong, y ~ x:-moz-last-node {
	display: -moz-inline-box; 
	width: 5px;
	}

div.con-main strong.required {
	color: #bd2634;
	}

div.con-main div.row strong.required {
	position: absolute;
	left: 155px;
	top: 0;
	text-align: left;
	display: block;
	background: url(../library/required.gif) no-repeat 0 .3em;
	width: 0px;
	padding-left: 10px;
	overflow: hidden;
	}


/* Row nested fieldset */

div.con-main div.row fieldset {
	border: none;
	margin: 0;
	padding: 0 0 0 165px !important;
	}


/*see ie.css*/



div.con-main div.row div.row {
	float: left;
	width: auto;
	display: inline;
	min-height: 1em;
	padding: 0 5px 0 0;
	}
div.con-main div.row div.row:after {
	display: none;
	clear: none;
	}


div.con-main div.row div.row label span.element {
	float: none;
	display: block;
	width: auto;
	}

div.con-main div.row div.row span.desc {
	position: absolute;
	left: -999999px;
	}

div.con-main div.splitphone span.element input.field {
	width: 140px;
	}

div.con-main input.shortlength {
	width: 3em !important;
	display: inline !important;
	}

div.con-main .clear:after {
	display: block;
	clear: both;
	content: ".";
	visibility: hidden;
	height: 0;
	}


/* H2 image replacement */

#contactform h2,
#registerform h2 {
	margin: 0;
	padding: 0;
	position: relative;
	top: 0;
	left: 0;
	z-index: 1;
	width: 549px;
	height: 25px;
	font-size: 110%;
	}

#contactform h2 span,
#registerform h2 span {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 100%;
	}

#contactform h2 span {
	background: url(../library/h2-contact-form.gif) no-repeat;
	}

#registerform h2 span {
	background: url(../library/h2-registration-form.gif) no-repeat;
	}

#generic {
	padding-top: 9px;
	background: url(../library/form-top.gif) no-repeat 74px top;
	}

.mod-content #generic,
.mod-blog #generic {
	background-position: left top;
	}
/*===================================================================*/
/* --------------------------- VALIDATION -------------------------- */
/*===================================================================*/


div.con-main span.error {
	display: block;
	width: 492px; 
	padding: 0px 0px 10px 5px;
	font-size: 85%;
	}
div.con-main div.formerror,
div.con-main div.formsuccess {
	display: block;
	margin: 0px 14px 15px 14px; 
	padding: 10px;
	background-color: #FFF;
	border: solid 1px #ea1a39;
	}
div.con-main div.formsuccess {
	border-color: #207d0f;
	color: #207d0f;
	}
div.con-main .error-summary ul {padding: 0; margin: 0;}

div.con-main div.detail-results span.error, 
div.con-main div.detail-frequency span.error {
	width: 343px;
	}
div.con-main div.formerror h3,
div.con-main div.formsuccess h3 {padding-top: 0; padding-bottom: 0; border: none;}
div.con-main div.formerror, 
div.con-main div.formerror h3, 
div.con-main div.formerror li, 
div.con-main div.formerror p {
	color: #ea1a39;
	}
div.con-main div.formerror h3 {background-image: none; background-color: transparent; padding-left: 0;}	
div.con-main div.formsuccess h3 {color:#207d0f;}	

div.con-main label.error span.desc {color: #ea1a39;}
div.con-main label.question-error span.question {color: #ea1a39;}
div.con-main label.question-2-error span.question-2 {color: #ea1a39;}
div.con-main label.comment-error span.comment {color: #ea1a39;}
div.con-main label.comment-2-error span.comment-2 {color: #ea1a39;}

div.con-main div.formerror label {
  /* font-weight: bold;*/
   font-style: italic;
   /* text-decoration: underline;*/
   /*border-bottom: solid 1px #ffcd29;*/
    }
