/* global whitespace reset */
* { padding:0; margin:0; }

body {
    background: #e0ebe0 url(../images/bg-body.gif) repeat-x 0 0;
	color: #111;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size:62.5%;
}

body.home {
    background: #e0ebe0 url(../images/bg-body-home.gif) repeat-x 0 0;
}


/*********** = structure = ***********/

.wrapper {
	margin: 0 0 0 50px;
	position: relative;
	width: 752px;	
}

body.wide .wrapper {
	width: 906px;
}

#content {
	background: url(../images/bg-content.gif) no-repeat 0 0;
	position: relative;
}

body.home #content {
	background: url(../images/bg-content-home.jpg) no-repeat 0 0;
	zoom: 1;
}

#header {
	background: #fff url(../images/bg-header.gif) no-repeat 0 0;
	height: 118px;
	position: relative;
	z-index: 9999;
}

#copy {
	background: #fff;
	min-height: 450px;
	padding: 20px 0;
}

#footer {
	background: #e0ebe0 url(../images/bg-footer.gif) repeat-x 0 0;
	clear: both;
	height: 16em;
}

#mission {
	height: 202px;
	position: relative;
}

/*********** = headers = ***********/

#header h1 {
	height: 116px;
	width: 160px;
	left: 0;
	top: 0;
	position: absolute;
}

#header h1 a {
    display:block;
    height: 116px;
	width: 160px;
	text-indent:-999em;    
}

h1 {
	font-size: 200%;
	line-height: 1.2em;
}



h2 {
	font-family: Georgia, serif;
	font-weight: normal;
	font-size: 1.5em;
}



h2.alt {
	line-height: 1.2em;
}

h2#title  {
	color: #fff;
	font-size: 36px;
	line-height: 90px;
	height: 90px;
	margin: 0 !important;
	padding: 0 0 0 70px !important;
}

h3 {
	color: #444;
	font-family: Georgia, serif;
	font-size: 22px;
	font-weight: normal;
	line-height: 24px;
	margin: 0px 0 15px 0;
}

#sizeLarge h3 {
	font-size:140%;
}

body.home h3 {
	font-size: 17px;
	line-height: 19px;
	margin: 12px 0 0 0 !important;
}

.main h3:first-child {
	margin-top: 0;
}

div.localnav h3 {
	color: #476252;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size:14px;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 12px;
	margin: 0 !important;
	padding: 15px 8px 10px 8px;
	text-decoration: none;
	text-transform: uppercase;
}

div.localnav h3 a {
	color: #003366;
	text-decoration: none !important;
}

h4 { 
	/* Note: to revert to burgundy on white, unomment the next line, and remove the following three lines, up font-size to 16 and line hight to 1.2 */
	/* color: #990033; */
	padding:2px 4px;
	color: #FFF;
	background-color: #335687;
	font-size: 14px; 
	line-height:1.1em;
	margin: 0px 0px 12px 0px;
	text-transform: uppercase;
}

div.ncnItem h4 {
	text-transform:none;
}

.ancillary h4 {
	font-size: 15px;
	text-transform: none;
	background-color:#EFF4EF;
	color:#990033;
	padding:0;
}

fieldset h4 { 
	color: #990033;
	font-size: 12px; 
	line-height:1.1em;
	margin: 5px 0 0 0;
	text-transform: none;
}

div h4:first-child {
	margin-top: 0;
}

h5 { 
	color: #666666;
	font-size:12px; 
	line-height:1.2em;
	margin:12px 0
}




/*********** = typography = ***********/

a { 
	color: #003366; 
	outline: none;
	text-decoration: underline;
}



a:visited { 
	color: #003366; 
}

a:hover { 
	text-decoration: none; 
}

#copy {
	font-size: 12px;
	zoom: 1;
	line-height: 15px;
}

#copy p {
	position: relative;
	color: #111;
	line-height: 1.2em;
	margin: 12px 0;
}

/* Implement request that p all be the same font fam as Tides, some additional selectors to make the font look consistent in various places -- 20090202 */
#copy p {
	font-family:Verdana,Arial,Helvetica,sans-serif;
}

#copy #columnRight ul {
	font-family:Verdana,Arial,Helvetica,sans-serif;
}

#copy table.singleRecord tbody {
	font-family:Verdana,Arial,Helvetica,sans-serif;
}

#copy table.singleRecord tbody tr.secHead,#copy table.singleRecord tbody tr.secSubHead {
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

#copy form.formMaster td label {
	font-family:Verdana,Arial,Helvetica,sans-serif;
}


.big {
	color: #476252 !important;
	font-size: 14px !important;
}

.bold {
	font-weight: bold;
}

#copy p.tight {
	margin: -3px 0 5px 0 !important; 
}

#copy .ancillary p {
	margin-bottom: 0;
}

.newsletter p {
	margin: -5px 0 0 0 !important;
}

.columns p,
.columns ul {
	margin: 8px 0 !important;
	line-height: 14px !important;
}

.meta {
	font-size: 10px;
	margin: 0;
	text-transform: uppercase;
}

.date {
	color: #999;
}

.date.darker {
	color: #333;
}

p.registerLink a,p.registerLink a:active,p.registerLink a:hover,p.registerLink a:visited {
	color:#903;
	font-weight:bold;

}

input, 
select {
	font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
	font-size:12px;
}

div#footer {
	color: #777;
	font-size: 11px;
}

div#footer .links p {
	margin: 10px 0;
}

div#footer .links a,
div#footer .links a:visited {
	color: #003366; 
}

div#footer .address,
div#footer .address a,
div#footer .address a:visited {
	color: #66997c;
}


div.main {
	border-left: none;
	float: right;
	padding: 0 0 0 19px;
	width: 468px;
}

div.ancillary {
	float: left;
	padding: 0 0 0 19px;
	width: 244px;
}

#login {
	display: none;
	position: relative;
	right: auto;
	top: auto;
}


body.mainTemplate div.main {
	border-left: none;
	float: right;
	padding: 0 0 0 19px;
	width: 468px;
}

* html body.mainTemplate div.main {
	padding: 0;
	margin: 0 0 0 10px;
}

body.mainTemplate div.ancillary {
	float: left;
	padding: 0 0 0 19px;
	width: 244px;
}

* html body.mainTemplate div.ancillary {
	padding: 0;
	margin: 0 0 0 10px;
}

body.mainTemplate #login {
	display: none;
	position: relative !important;
	right: auto !important;
	top: auto !important;
}

body.wide div.main {
	width: 622px;
}



/*********** = misc divs and classes = ***********/

div.main {
	border-left: none;
	float: right;
	margin: 0;
	width: 468px;
}

* html body.mapPage div.main {
	overflow:hidden;
	width: 770px;
}

* html body.mapPage .wrapper {
	width: 1044px;
}

div.main p:last-child,
div.main ul:last-child {
	margin-bottom: 0 !important;
}

div.ancillary {
	float: left;
	padding: 0 0 0 19px;
	width: 244px;
}

* html div.ancillary {
	padding: 0;
	width: 248px;
	margin-left: 10px;
}

div#rotate {
	float: left;
	margin-right: 12px;
	width: 183px;
}

div#footer .links {
	float: left;
	padding: 22px 0 0 0;
}

div#footer .address {
	background: url(../images/bg-footer-logo.gif) no-repeat 100% 19px;
	float: right;
	padding: 93px 0 0 0;
	text-align: right;
}

div.columns {
	margin: 0;
	zoom: 1;
}

div.columns .column {
	display:inline;
	float:left;
	margin:0;
	width: 366px;
}

* html div.columns .column {
	
}

div.columns .column.last {
	float: right;
}

div.columns.three .column {
	margin-right: 20px;
	width: 244px;
}

div.columns.three .column.last {
	margin-right: 0;
	width: 224px;
}

div.newsletter {
	background: #eff4ef url(../images/bg-newsletter.gif) no-repeat 0 0;
	margin: 0 0 25px 0;
	padding: 44px 12px 12px 12px;
	zoom: 1;
}

div.newsletter .newsletterInner {
	width: 220px;
}

div.newsletter label {
	font-size: 12px;
}

div.login {
	background: #eff4ef url(../images/bg-login.gif) no-repeat 0 0;
	margin: 0 0 25px 0;
	padding: 44px 12px 12px 12px;
}

div.login table {
	width: 220px;
}

div.login table td.login {
	padding:8px 1px;
}

div.hr {
	border-top: 1px dotted #bbb;
	font-size: 1px;
	height: 1px;
	line-height: 1px;
	margin:12px 0;
}

body.home div.hr {
	border-top:none;
}

/*********** = lists = ***********/





ul  {
	list-style: none;
}

.main ul,
ul.bullet {
	list-style-type: none;
	margin:12px 0 0 0;
}



ol {
	margin-left: 21px;
}

ol li {
}

.main ul li,
ul.bullet li {
	background: url(../images/bg-bullet.gif) no-repeat 1px 5px;
	margin: 5px 0;
	padding: 0 0 0 11px;
}


ul.home {
	padding: 0 0 0 8px;
	color: #444;
	font-family: Georgia, serif;
	font-size: 17px;
	line-height: 24px;
    margin-left: 20px;
	
}

li.home {
	font-family: Georgia, serif;
	font-size: 17px;
	line-height: 24px;
	}

/*********** = #navs = ***********/

div.nav-container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

ul.nav {
	margin-left: 151px;
}

ul.nav li {
	float: left;
}

ul.nav li a, 
ul.nav li a:visited {
	color: #003366;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 12px;
	float: left;
	margin: 0 !important;
	padding: 18px 8px;
	text-decoration: none;
	text-transform: uppercase;
}

* html ul.nav li a,
* html ul.nav li a:visited {
	
}

ul.nav li a:hover {
	color: #999;
	text-decoration: none;
}

ul.nav li a.active {
	color: #476252;
	background: url(../images/bg-nav-active.gif) repeat-x 0 0;
}

ul.nav ul a:hover {
	background: #923201;
	color: #d7e023 !important;
}

div#breadcrumb {
	background: #eff5ef;
	border-bottom: 1px solid #e0ebe0;
	padding: 5px 5px 5px 70px;
}

div#breadcrumb a {
	color: #476252;
	font-size: 10px;
}

div.localnav {
	background: url(../images/bg-nav-active.gif) repeat-x 0 0;
	border-bottom: 1px solid #dbe5db;
	margin: 0 0 55px 0;
}

div.localnav ul a,
div.localnav ul a:visited {
	border-top: 1px solid #dbe5db;
	color: #476252;
	display: block;
	font-size: 14px;
	padding: 6px 2px 6px 8px;
	text-decoration: none;
	zoom: 1;
}

div.localnav ul a.active,
div.localnav ul a.active:visited {
	background: #66997c;
	color: #fff;
	font-weight: bold;
}

div.localnav ul a:hover,
div.localnav ul a.active:hover {
	background: #eff5ef;
	color: #003366;
}

/*********** = buttons = ***********/

/* positioning and dimensions - should not have to modify as long as image dimensions remain the same on your images */
.btn { display: block; position: relative; padding: 5px; float: left; text-decoration: none; cursor: pointer; }
.btn i { background-position: top left; position: absolute; margin-bottom: -5px; top: 0; left: 0; width: 5px; height: 5px; }
.btn span { background-position: bottom left; left: -5px; padding: 0 0 5px 10px; margin-bottom: -5px; }
.btn span i { background-position: bottom right; margin-bottom: 0; position: absolute; left: 100%; width: 10px; height: 100%; top: 0; }
.btn span span { background-position: top right; position: absolute; right: -10px; margin-left: 10px; top: -5px; height: 0; }
a.btn { color: #fff !important;}

/* ie6 workaround */
* html .btn span, 
* html .btn i { float: left; width: auto; background-image: none; cursor: pointer; }

/* image file */
.btn * { 
	background-image: url(../images/bg-btn.png);
	background-repeat: no-repeat; 
	display: block; 
	position: relative;
}

/* typography */
.btn { 
	color: #fff;
	font: 12px bold 'Lucida Grande', Arial, san-serif;
}

/* colors */
.btn { background: #476252; } 
.btn.red { background: #990033; }
.btn.light { background: #d9e4d9; color:#476252; }
.btn:hover { background-color: #66997c; }
.btn:active { background-color: #444; }
.btn[class] { background-image: url(../images/bg-shade.png); background-position: bottom; }

/*********** = utility classes = ***********/

.clearfix {
	display:inline-block; /* IE 6 & 7 */
}

.clearfix:after { /* modern browsers */
	content:"."; 
    display:block; 
    height:0; 
    clear:both; 
    visibility:hidden;
}

*html .clearfix {
	height:1%; /* fIE 6 */
}

.clear {
	clear:both;
	height:1px;
	line-height: 1px;
	margin:-1px 0 0 0;
	padding:0;
}

.clear.height {
	margin: 25px 0;
}

.clear.left {
	clear:left;
}

.clear.right {
	clear:right;
}

.center {
	text-align:center;
}

.centered {
	margin-left:auto;
	margin-right:auto;
}

.alignright {
	float:right !important;
}
	
.alignleft {
	float:left !important;
}

.collapse-top {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* images */

img.more {
	position: absolute;
	right: 123px;
	bottom: 50px;
}

img.newsletter {
	position: absolute;
	right: 0px;
	bottom: 15px;
}

img { border:none; }

img.pdf {
	margin:10px 0;
}

img.float-r {
	float:right;
    margin:0px 0 2px 15px;
}

img.float-l {
	float:left;
	margin:0px 40px 2px 0;
}

img.float-l.min {
	margin: 0 15px 2px 0;
}

/* forms */

form.formMaster table.checkboxTableOneCol {
	width:100%;
}
form.formMaster table.checkboxTableTwoCol {
	width:100%;
}

#search {
	position: absolute;
	right: 0;
	top: 47px;
}

#search form {
	position: relative;
	padding-right: 69px;
}

#search #search-submit {
	position: absolute;
	right: 0;
	bottom: 0;
}

* html #search #search-submit {
	bottom: 3px;
}

#search label,
#login label {
	color: #476252;
	font-size: 10px;
	display: block;
	margin: 0 0 3px 0;
	text-align: left;
	text-transform: uppercase;
}

#search #s {
	font-size: 11px;
	height: 16px;
	padding: 1px;
	width: 166px;
}
* html #search #s {
	height: 24px;
}

form#login {
	display: none;
	font-size: 11px;
	position: absolute;
	left: 150px;
	top: 45px;
}

body.home form#login {
	display: block;
}

body.home form.homeLogoutBtn {
	top: 62px !important;
	left: 420px !important;
}

form#login label {
	color: #fff;
}

form#login input.text {	
	font-size: 11px;
	height: 16px;
	padding: 1px;
	width: 78px;
}

* html form#login input.text {
	display: block;
	height: 24px;
}

form#login td {
	padding: 2px;
	text-align: center;
	vertical-align: bottom;
}

form#login td.password {
	text-align: left;
}

.newsletter td {
	font-size: 12px;
}

form#login td a {
	/*color: #cbe0d4;*/
	color: #476252;
	text-decoration: underline;
}

form#login td a:hover {
/*	color: #fff;*/
	text-decoration: none;
}

.required {
	color: #ff0000;
}

fieldset {
	border: 3px solid #dfeadf;
	margin: 0 0 10px 0;
}

legend {
	color: #6a8073;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size:13px;
	font-weight: bold;
	line-height: 12px;
	margin: 0 0 0 5px !important;
	padding: 5px;
	text-transform: uppercase;
}

fieldset table {
	border: none;
	width: 100%;
	padding: 3px;
}

fieldset label {
	font-size: 11px;
}

fieldset td {
	padding: 3px;
	vertical-align: top;
}

body.wide fieldset td.first {
	width: 250px;
}

fieldset td.first {
	width: 100px;
}

fieldset table table,
fieldset table table td {
	padding: 1px;
}

fieldset p.instructions {
	color: #777 !important;
	font-size: 11px !important;
	line-height: 12px !important;
	margin: 5px 0 !important;
}

fieldset input.text,
fieldset textarea.text {
	color: #444;
	font-family: Helvetica, Arial;
	font-size: 13px;
	padding: 3px;
	width: 364px;
}

fieldset textarea.text {
	height: 136px;
}

div.submit {
	font-family: Helvetica, Arial;
	margin: 5px 0 0 0;
	padding-left: 0;
	float: right;
	width: 100%;
	text-align: right;
}

* html div.submit {
	width: auto;
}

div.submit .floatLeft {
	float: left;
}

div.submit input {
	background: #003366;
	border: 1px solid #003366;
	color: #fff;
	font-size: 16px;
	padding: 5px 12px;
	width: 100px;
	cursor: pointer;
}


/* CIC CHANGES / ADDITIONS */

.main ul.browsebox li {
	list-style-type: none;
	background: none;
	padding: 0 11px 0 0;
}

.tx-indexedsearch-res .searchResults h4 {
	margin: 20px 0 0 0;
}

#copy .tx-indexedsearch-res .searchResults p {
	margin-top: 2px;
}

strong.tx-indexedsearch-redMarkup {
	color: #990033;
}

.error {
	color: red;
	display: block;
}
.error-inline {
	color: red;
}

/* single view */

table.singleRecord {
	width: 100%;
}

table.singleRecord tr {
}

table.singleRecord tr td {
	padding: 5px;
	font-size: 12px;
}

table.singleRecord td.label {
	text-align: right;
	font-weight: bold;
	width: 150px;
}

/*
body.wide table.singleRecord td.label {
	width: 150px;
}
*/

table.singleRecord td.value {
	text-align: left;
}


span.membersOnly {
	font-weight:bold;
	color:#900;
}

span.membersOnly a,span.membersOnly a:hover,span.membersOnly a:active,span.membersOnly a:visited {
	color:#900;
}


table.singleRecord tr.secHead {
	background-color: #66997C;
	text-align: center;
}

table.singleRecord tr.secHead h4 {
	margin: 5px;
	color: #FFF;
	background-color:#66997C;
}

table.singleRecord tr.secSubHead {
	background-color: #66997C;
	text-align: center;
	font-weight: bold;
}

table.singleRecord tr.secSubHead h5 {
	margin: 5px;
	color: #FFF;
}

table.singleRecord td.secHead {
}

table.singleRecord tr.odd {
	background-color: #EFF4EF;
}

#copy table.singleRecord tr td p {
	margin-top:0;
}

table.servicesTable {
	width: 100%;
}
table.servicesTable tr td {
	padding: 3px;
}
table.servicesTable tr th {
	text-align:left;
	padding:3px;
	text-decoration:underline;
}

table.servicesTable tr th h5.servicesSection {
	text-decoration: none !important;
	color: red;
}
table.servicesTable h5.servicesSection {
	text-align:center;
	text-decoration:none; /* This declaration isn't being honored, let's take that underline off */
}
table.servicesTable tr.odd {
	background-color: #EFF4EF;
}

.ncnItems .ncnItem {
	margin-bottom: 20px;
}

.ncnItems .ncnItem h4 {
	margin-bottom: 5px;
	background-color:#FFF;
}

h4 a,h4 a:hover,h4 a:active {
	color:#FFF;
}

.ncnItems .ncnItem h4 a,.ncnItems .ncnItem h4 a:hover,.ncnItems .ncnItem h4:active {
	color:#036;
}

.mapLegend {
	margin: 14px 0 0 0;
}

.mapLegend td {
	padding: 0 0 5px 0;
	margin-left: 0;
	font-size: 14px;
}

* html .mapLegend img {
	behavior: url(/fileadmin/templates/js/iepngfix.htc);
}

.news-single-item h4 {
	font-size: 13px;
}

div#copy div.main div.news-latest-container div.news-latest-item {
	margin-bottom:1em;
}

div#copy div.main div.news-latest-container div.news-latest-item h3 {
	font-size:17px;
	line-height:19px;
}


/* Login box styles */
table.loginTable tr td {
	padding-bottom:1em;
}


#sizeLarge #copy h1, #sizeLarge #copy h2,#sizeLarge #copy h3,#sizeLarge #copy h4,#sizeLarge #copy h5,#sizeLarge #copy h6 {
	font-size:150%;
	line-height:180%;
}
#sizeLarge #copy .main h3 {
	font-size:27px;
	line-height:1em;
}
#sizeLarge #copy li {
	font-size:120%;
	line-height:120%;
}

#sizeLarge ul.bullet li {
	background: url(../images/bg-bullet.gif) no-repeat 1px 9px;
}
/*
#sizeLarge #copy p {
	font-size:140% !important;
	line-height:140% !important;
}
*/
#sizeLarge #copy label {
	font-size:140% !important;
	line-height:140% !important;
}

#sizeLarge #copy {
	font-size: 120%;
	line-height:120%;
}

#fontSizeToggle {
	margin: 12px 5px; 
	float: left; 
	display: block; 
	cursor: pointer;
}


/* Modifications to Kevin's original styles */

.main ul.browsebox li {
	list-style-type: none;
	background: none;
	padding: 0 11px 0 0;
}

.tx-indexedsearch-res .searchResults h4 {
	margin: 20px 0 0 0;
}

#copy .tx-indexedsearch-res .searchResults p {
	margin-top: 2px;
}

strong.tx-indexedsearch-redMarkup {
	color: #990033;
}

.formMaster table tr td {
	border-bottom: 1px solid #CCC;
	padding-bottom: 10px;
	padding-top: 10px;
}

.formMaster table tr:last-child td {
	border-bottom: 0;
}


.formMaster .checkBoxTable td {
	padding: 5px 1px 5px 3px;
	border-bottom: 0px;
}

* html .formMaster .checkBoxTable td input {
	position: relative;
	top: -2px;
}

.formMaster .checkBoxTable tr.odd {
	background-color: #EFF4EF;
}
.formMaster .btn {
	float: right;
}

.csc-sitemap ul.level-1 {
}
.csc-sitemap ul.level-1 li {
	padding-bottom: 10px;
	margin-top: 0;
	background-image: none;
	color: #990033;
	font-size: 16px; 
	line-height:1.2em;
	margin: 0px 0px 12px 0px;
	text-transform: uppercase;
	font-weight: bold;
}

.csc-sitemap ul.level-2 li {
	border: 0;
	background: url(../images/bg-bullet.gif) no-repeat 1px 5px;
	margin: 5px 0;
	padding: 0 0 0 11px;
	color: #111;
	font-size: 12px;
	line-height: 16px;
	margin: 12px 0;
	font-weight: normal;
	text-transform: none;

}

.csc-sitemap ul.level-3 {
}

.csc-sitemap ul.level-4 {
}

.csc-sitemap ul.level-5 {
}

.csc-sitemap ul.level-6 {
}

.mapDiv div {
	margin: 0;
	padding: 0;
	border: 1px solid red;
}
