/***** Form *****/
input, select, textarea {font-family:Arial, Helvetica, sans-serif; font-size:1em; padding:3px; border:solid 1px #ccc; margin:0;}
.input-tnytny {width:50px;}
.input-tny {width:100px;}
.input-sm {width:150px;}
.input-med {width:200px;}
.input-lg {width:367px;}
.input-text {width:780px;}
.element {float:left; margin-right:25px; padding:0;}
.lastelement {margin-right:0;}
.row {clear:both; margin-bottom:10px;}
.nohover:hover {background-color:transparent; border:1px solid #fff;}
.error {border:1px solid #fdd; background-color:#fff3f3; padding:0 10px 10px 10px; color:#8B0000; margin:10px auto;}
.error li {margin-left:20px; list-style:disc; padding-top:3px;}
.errorelement {color:#8B0000;}
.radio {border:none; margin-top:3px;}
.checkbox {border:none; margin-top:3px;}
.checkboxsm {border:none; margin:0; padding:0; width:10px; height:10px;}
.asterisk {color:#8B0000; font-weight:normal; font-size:12px; line-height:12px;}
.formlabel {font-size:11px; padding:0; display:block; line-height:1.5em;}
.formdesc {font-size:10px; padding-left:8px;}


/***** Button *****/
button {position:relative; border:0; padding:0;	cursor:pointer; overflow:visible; margin:15px 0;} /* removes extra side padding in IE */
button::-moz-focus-inner {border:none;}  /* overrides extra padding in Firefox */
button span {position:relative; display:block; white-space:nowrap;}
button.submitBtn {padding:0 15px 0 0; margin-left:5px; font-family:Arial, Helvetica, sans-serif; font-size:1em; font-weight:bold; text-align:center; background:transparent url(../img/button.gif) no-repeat right -140px;}
button.submitBtn span {padding:7px 0 0 15px; height:28px; background:transparent url(../img/button.gif) no-repeat left top; color:#fff;}
button.submitBtn:hover, button.submitBtnHover {background-position:right -210px;} /* the redundant class is used to apply the hover state with a script */
button.submitBtn:hover span, button.submitBtnHover span {background-position:0 -70px;}

#header_search button { margin: 0; }

/***** Clearfix *****/
.clearfix:after {content:"."; display:block; height:0; clear:both; visibility:hidden;}
.clearfix {display:inline-block;}
/* Hide from IE Mac \*/
.clearfix {display:block;}
/* End hide from IE Mac */


/***** Miscellaneous *****/
.floatright {float:right;}
.floatWidth{width:91px;}
.floatleft {float:left;}
.valign {vertical-align:middle;}
.divider {display:block; border-top:1px dotted #ccc; padding:0; margin:5px 0; clear:both;}
a.addheader:link, a.addheader:visited {display:block; padding:5px; background:#f5f5f5; outline:none;}
a.addheader:hover {background:#039; color:#fff;}
.nomargin {margin-bottom:0;}
.vertdiv {border-right:1px dotted #ccc;}



/*** DISPLAY TABLE STUFF ***/
.tgtable {
	width: 100%;
	border: 0;
}
.data td {
	padding: 5px;
	vertical-align: top;
}

.data tr {
	background-color: #ffffff;
}

.data tr:hover {
	background-color: #ffffdd;
}
/** Search Results Sorting **/
.data th.sortable {
	cursor: pointer;
	background-repeat: no-repeat;
	background-position: center right;
	padding-left: 0px;
	margin-left: -1px;
	color: #6699cc;
	border-top-width: 0px;
	text-align: center;
}

.data th a:link,.data th a:visited {
	text-decoration: none;
	font-weight: bold;
	text-transform: uppercase;
	color: #6699cc;
}

.data thead th.header:hover {
	text-decoration: underline !important;
}

.data td,.data th {
	border-bottom: 1px solid #dddddd;
}

.data th {
	background-color: #ffffff;
	font-size: 10px;
	font-weight: bold;
	text-transform: uppercase;
	line-height: 25px;
}

.data th:hover {
	background-color: #ffffff;
}

.data .nameheader {
	width: 254px !important;
	text-align: left !important;
}

.data .mugshotheader {
	width: 10px !important;
	background-image: none !important;
}

#recaptcha_widget_div {
    width:300px;
}

.bold { font-weight: 700; }

.form-instruction {
	font-weight: bold;
	font-size: 1.1em;
}

/* thank you page */
.thanks{
	padding:0 40px 0 40px;
}

.thanks > p {
	font-style: italic;
}

.thanks_complete{
	color: #2babcc; font-size:large;
}

.surveyurl{
	font-size: x-large; color:#3c959b; text-align:center; padding:20px; display:block; float: center; background:#b4f8f6; border: 1px solid #3c959b; margin:20px 80px 20px 80px
}

#searchresults table.dataTable {
	display: block;
	overflow: auto;
}

#searchresults table.dataTable td {
	padding: 8px;
}

/*
    Accessibility
*/
.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important; /* legacy */
    clip-path: inset(50%) !important; /* modern */
    white-space: nowrap !important;
    border: 0 !important;
}