/* Start of CMSMS style sheet 'main_stylesheet' */
/*
Main styles and different imported style sheets follow the order of the markup code (page, branding, search, etc.) within the pages followed by specific styles.
In order to see how all the base html elements are styled to default please refer to the html_template.html page as needed.
Global styles to specific html tags should be placed in this file.
*/

/* begin -- set color of links for whole site */
a:link { color: #297fb9; text-decoration: none }
a:visited { color: #297fb9; text-decoration: none }
a:hover { color: #3d95d0; text-decoration: underline }
a:active { color: #297fb9; text-decoration: none }
/* end -- set color of links for whole site */


/* begin - classes for styling as needed
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

.bold { font-weight: bold }
.italic { font-style: italic }
.underline { text-decoration: underline }
.overline { text-decoration: overline }
.strike { text-decoration: overline }
.fltlft { float: left }
.fltrgt { float: right }
.clrbth { clear: both }
.clrlft { clear: left }
.clrrgt { clear: right }

.nobrder { border: 0px !important }

.ovrflw_hdn { overflow: hidden }

.hide_ADA { position: absolute; left: -999999em } /* hide but remain usable for text readers */

.olla {list-style: lower-alpha }

span.learn_more { padding-left: 16px; background: url(/images/shared/arrow01.gif) no-repeat 0px 3px }

/* end - classes for styling needed
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

html { background: url(/images/shared/main_background.gif) repeat-x top center }

body { min-height: 626px; background: url(/images/shared/logo_background.gif) no-repeat top center }

* html body { height: 626px }

#wrapper { position: relative; width: 942px; margin: 0px auto }

#header { position: relative; width: 942px; height: 141px; margin-bottom: 10px;  }

#header h1 { position: absolute; top: 3px; left: 10px; margin: 0px; width: 537px; height: 84px; background: url(/images/shared/logo_tag_line.png) no-repeat 0px 0px }
* html #header h1 { background-image: url(/images/shared/logo_tag_line.gif) }
#header h1 a { display: block; width: 537px; height: 84px; text-indent: -99999em }

#search { display: none; position: absolute; top: 50px; right: 0px; width: 281px; height: 23px; background: url(/images/shared/search_background.gif) no-repeat 0px 0px }
#search fieldset { position: relative; width: 281px; height: 23px }
#search fieldset label { position: absolute; left: -99999em; top: -99999em }
#search fieldset input.textfield { position: absolute; left: 10px; top: 3px; width: 162px; height: 16px; padding: 0px 0px 0px 20px; border: 0px; background: url(/images/shared/google_icon.gif) no-repeat 1px 1px }
#search fieldset input.search_button { position: absolute; right: 0px; top: 0px; width: 76px; height: 22px; margin: 0px; padding: 0px; border: 0px; background: url(/images/shared/search_button.gif) no-repeat 0px 0px transparent }
#search fieldset input.search_button:hover { background-position: -76px 0px; cursor: pointer }

/* begin - contact us tab */
a.contact_us { position: absolute; top: 0px; right: 0px; width: 117px; height: 26px; background: url(/images/shared/contact_tab.gif) no-repeat 0px 0px; text-indent: -99999em }
a.contact_us:hover { background-position: -117px 0px }
/* end - contact us tab */

/* main nav styles ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

#main_nav { position: absolute; top: 105px; left: 0px; z-index: 210; width: 940px; height: 36px; margin: 0px; background: url(/images/shared/main_nav_background.gif) no-repeat 0px 0px }
#main_nav li { height: 36px; margin: 0px; float: left; list-style-type: none }
#main_nav li#home { width: 99px; margin-left: 10px }
* html #main_nav li#home { margin-left: 5px } 
#main_nav li#your_needs { width: 140px; margin-left: 2px }
#main_nav li#services { width: 120px; margin-left: 2px }
#main_nav li#experience  { width: 135px; margin-left: 2px }
#main_nav li#rems_hub { width: 125px; margin-left: 2px }
#main_nav li#news_and_events { width: 160px; margin-left: 2px }
#main_nav li#our_team { width: 129px; margin-left: 2px }

#main_nav li a { display: block; width: 100%; height: 36px; background: url(/images/shared/main_nav_sprite.gif) no-repeat 0px 0px; text-indent: -99999em }

#main_nav li#home a { background-position: 0px 0px }
#main_nav li#home.on a { background-position: 0px -36px }
#main_nav li#your_needs a { background-position: -101px 0px }
#main_nav li#your_needs.on a { background-position: -101px -36px }
#main_nav li#services a { background-position: -243px 0px }
#main_nav li#services.on a { background-position: -243px -36px }
#main_nav li#experience a { background-position: -365px 0px }
#main_nav li#experience.on a { background-position: -365px -36px }
#main_nav li#rems_hub a { background-position: -502px 0px }
#main_nav li#rems_hub.on a { background-position: -502px -36px }
#main_nav li#news_and_events a { background-position: -629px 0px }
#main_nav li#news_and_events.on a { background-position: -629px -36px }
#main_nav li#our_team a { background-position: -791px 0px }
#main_nav li#our_team.on a { background-position: -791px -36px }

/*#main_nav li:hover ul { display: block }*/

#main_nav li ul { display: none; position: absolute; top: 36px; z-index: 100px; margin: 0px; background-image: none; border-left: solid 1px #d1bf82; border-right: solid 1px #d1bf82; background-color: #f5edd0  }
#main_nav li ul li { width: auto !important; height: auto !important; margin: 0px !important; float: none }

#main_nav li ul li a { display: block; width: auto !important; height: auto !important; padding: 5px 5px; border-bottom: solid 1px #d1bf82; background: none; text-indent: 0px }
#main_nav li ul li a:hover { background-color: #FFFFFF; text-decoration: none }

/* make subnav and subnav/subnav adjustments here */

#main_nav li#your_needs ul { left: 100px; width: 180px }
* html #main_nav li#your_needs ul li a { width: 170px !important } 

#main_nav li#services ul { left: 229px; width: 210px }
* html #main_nav li#services ul li a { width: 200px !important }
/* services subnav/subnav */
#main_nav li#services ul li ul { position: absolute; top: 0px !important; left: 210px }
#main_nav li#services ul li a { background: url(/images/shared/subnav_arrow.gif) no-repeat 196px -8px !important }
#main_nav li#services ul li a:hover { background-color: #FFF !important; background-position:  196px -48px !important  } 
/* begin - subsub navs */
#main_nav li#services ul li.subitem013 ul { width: 228px !important; top: 26px !important; border-top: solid 1px #d1bf82 }
#main_nav li#services ul li.subitem018 ul {width: 228px !important; top: 53px !important; border-top: solid 1px #d1bf82 }
/*  end - subsub navs */
#main_nav li#services ul li ul li a { background-image: none !important }

#main_nav li#experience ul { left: 351px; width: 186px }
* html #main_nav li#experience ul li a {  width: 176px !important }

#main_nav li#rems_hub ul { left: 466px; width: 180px }
* html #main_nav li#rems_hub ul li a { width: 170px !important }

#main_nav li#news_and_events ul { left: 626px; width: 180px }
* html #main_nav li#news_and_events ul li a { width: 170px !important }

#main_nav li#our_team ul { left: 760px; width: 170px }
* html #main_nav li#our_team ul li a { width: 160px !important }

/* main nav styles ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */


/* two column layout styles  */
div.two_column { width: 940px; background: url(/images/shared/content_background_two_column.gif) repeat-y top center }
div.two_column div.inner { width: 940px; min-height: 540px; overflow: hidden; background: url(/images/shared/content_top_two_column.gif) no-repeat 0px 0px }
* html div.two_column div.inner { height: 540px } 

#main_content_area.two_column div.inner #content { width: 624px; padding: 0px 20px 0px 20px; float: left }
#main_content_area.two_column div.inner #sidebar { width: 276px; float: right }

#main_content_area.two_column span.content_foot { display: block; width: 940px; height: 26px; clear: both; line-height: 0px; font-size: 0px; background: url(/images/shared/content_bottom_two_column.gif) no-repeat 0px 0px }


/* one column layout styles */
div.one_column { width: 940px; background: url(/images/shared/content_background_one_column.gif) repeat-y top center }
div.one_column div.inner { width: 940px; min-height: 540px; overflow: hidden; background: url(/images/shared/content_top_one_column.gif) no-repeat 0px 0px }
* html div.one_column div.inner { height: 540px } 

#main_content_area.one_column div.inner #content { width: 900px; min-height: 540px; padding: 0px 20px 0px 20px; float: left }
* html #main_content_area.one_column div.inner #content { height: 540px }
#main_content_area.one_column div.inner #sidebar { display: none }

#main_content_area.one_column span.content_foot { display: block; width: 940px; height: 26px; clear: both; line-height: 0px; font-size: 0px; background: url(/images/shared/content_bottom_one_column.gif) no-repeat 0px 0px }


/* page styles */
h2.page_header { margin: 0px 0px 0.45em 0px; font: bold 166% Verdana, Arial, Helvetica, sans-serif; color: #909e06 }

#breadcrumbs { padding: 1.3em 0px 0.9em 0px; color: #2475ac; font-size: 85%; color: #dc990c }
#breadcrumbs span.arrow { position: relative; top: 0px }

div.previous-next { width: 100%; margin-top: 0.9em; padding-top: 0.7em; border-top: solid 2px #eaeaea; overflow: hidden; text-transform: lowercase; font-size: 85%; line-height: 2.2em }
div.previous-next span { display: block }
div.previous-next span.next { display: block;  padding: 0.2em 0px 0px 2.15em }
div.previous-next span a { position: relative; top: 1px; font-size: 108%; text-transform: none }


/* subnavs */
#subpage_nav { display: none; width: 100%; margin: 0px 0px 1em 0px; overflow: hidden; background: url(/images/shared/subpage_tab_background.gif) repeat-x bottom center; font-weight: bold }
#subpage_nav li { margin: 0px 6px 0px 0px; float: left; list-style-type: none; background: url(/images/shared/subpage_tab_off_right.gif) no-repeat top right }
* html #subpage_nav li { margin-right: 3px }
#subpage_nav li a { display: block; padding: 5px 18px 3px 12px; border-bottom: solid 1px #c0bfbf; float: left; background: url(/images/shared/subpage_tab_off_left.gif) no-repeat top left; color: #FFF; text-transform: uppercase }
#subpage_nav li.on { background-image: url(/images/shared/subpage_tab_on_right.gif) }
#subpage_nav li.on a { border-color: #FFF; background-image: url(/images/shared/subpage_tab_on_left.gif); color: #666 }
#subpage_nav li.on a:hover { text-decoration: none }
#content div.subitem { display: none }
#content div.subitem h3 { margin-top: 0px }
#content div.overview { display: block }
/* subnavs */


#sign_up { position: relative; margin: 20px 0px; width: 940px; height: 42px; background: url(/images/shared/sign_up_background.gif) no-repeat 0px 0px }
#sign_up form { display: none; position: absolute; left: 286px; top: 10px; width: 280px; height: 22px; background: url(/images/shared/sign_up_input.gif) no-repeat 0px 0px }
#sign_up fieldset { position: relative }
#sign_up fieldset legend { position: absolute; left: -99999em; width: 0px; height: 0px; text-indent: -99999em; font-size: 0px; line-height: 0px }
#sign_up fieldset label { position: absolute; left: -99999em }
#sign_up fieldset input.textfield { position: absolute; left: 10px; top: 3px; width: 182px; height: 16px; border: 0px; color: #939393; font-style: italic; font-size: 12px }
#sign_up fieldset input.submit_button { position: absolute; right: 0px; top: 0px; width: 76px; height: 22px; margin: 0px; padding: 0px; border: 0px; background: url(/images/shared/sign_up_button.gif) no-repeat 0px 0px transparent }
#sign_up fieldset input.submit_button:hover { background-position: -76px 0px; cursor: pointer }

#footer { color: #666 }
#footer div.links { margin: 1em 0px;  font-size: 95% }
#footer div.links span { padding: 0px 0.7em }
#footer #copyright { font-size: 80% }


/* begin
static module styles ~~~~~~~~~~~~~~ */

#sidebar #static-mods { font-size: 95%; color: #4e4e4e }
#sidebar #static-mods h4 { margin-bottom: 0.8em; font-size: 116.7% }
div.static-mod { margin-bottom: 0.4em; padding: 0px 14px 0em 16px; background: url(/images/shared/sidebar_rule.gif) no-repeat bottom left transparent }

/* div.static-mod { margin-bottom: 0.4em; padding: 0px 14px 0px 16px; background: url(/images/shared/curve-short-lighter.png) no-repeat 10px 8px transparent } */

#sidebar #static-mods div.static-blue-mod { display: none; width: 250px; margin: 1em auto 1em auto; padding: 0px }
#sidebar #static-mods div.static-blue-mod h4 { margin: 0px; padding: 8px 14px 6px 14px; background: url(/images/shared/mod-header-01.gif) no-repeat top center transparent; color: #FFF }
#sidebar #static-mods div.static-blue-mod div.box_content { padding: 0.8em 14px 0.4em 14px; background: url(/images/shared/mod-background-01.gif) no-repeat bottom center transparent }

/* end
static module styles ~~~~~~~~~~~~~~ */


/* begin
rotating module styles ~~~~~~~~~~~~~~ */

/* #sidebar #rotating-mods { width: 251px; margin-bottom: 0.8em; padding: 12px 14px 16px 16px; font-size: 95%; color: #4e4e4e } */

#sidebar #rotating-mods { padding-top: 0px; font-size: 95%; color: #4e4e4e }
#sidebar #rotating-mods h4 { font-size: 116.7% }

div.rotate-mod { display: none; padding: 0px 0px .9em 0px; margin-bottom: 0.4em;  }
/*div.rotate-mod { display: none; margin-bottom: 0.4em; padding: 0px 14px 0px 16px; background: url(/images/shared/curve-short-lighter.png) no-repeat 10px 0px transparent }*/

.addRule { background: url(/images/shared/sidebar_rule.gif) no-repeat bottom left transparent }

/* end
rotating module styles ~~~~~~~~~~~~~~ */


/* begin
NEWS MODULE ~~~~~~~~~~~~~~*/

#news_summary { margin-bottom: 2.4em; padding-bottom: 0.8em; border-bottom: solid 1px #E7F4FF }
#news_summary div.news_summary_header { width: 100%; margin: 0.7em 0px; padding-bottom: 0.3em; border-bottom: solid 1px #D2E9FC; overflow: hidden }
#news_summary div.news_summary_header h3 { margin: 0px; width: 80%; float: left }
#news_summary div.news_summary_header span.post_date { display: block; width: 18%; margin-top: 2px; float: right; font-size: 80%; text-align: right }
#news_summary div.news_summary_summary { padding: 0px 0.7em }
#news_summary div.news_summary_content { padding: 0px 0.85em }
#news_summary div.news_summary_morelink {font-size: 80%; text-align: right }

#news_item div.news_summary_header { width: 100%; margin: 0.7em 0px; padding-bottom: 0.3em; border-bottom: solid 1px #EAEAEA; overflow: hidden }
#news_item div.news_summary_header h3 { margin: 0px; width: 80%; float: left }
#news_item div.news_summary_header span.post_date { display: block; width: 18%; margin-top: 2px; float: right; font-size: 80%; text-align: right }
#news_item  div.return_link {font-size: 80%; text-align: right }

/* summary in side bar */
#news-mod { padding: 8px 16px 1.4em 16px; font-size: 80% }
#news-mod h4 {  margin: 0px 0px 0.6em 0px; font-size: 116.7%; color: #474747 }
#news-mod #news_summary_side_bar h4 { margin: 0px 0px 0.4em 0px; font-size: 116.7% }
#news-mod #news_summary_side_bar span.post_date { display: block; margin-bottom: 0.4em }
#news-mod #news_summary_side_bar div.news_summary_morelink { padding-bottom: 0.6em; margin-bottom: 0.5em; border-bottom: solid 1px #B5B5B5; text-align: right }

/* end
NEWS MODULE ~~~~~~~~~~~~~~*/


/* begin
CALENDAR MODULE ~~~~~~~~~~~~~~*/

#calendar_upcominglist { margin-bottom: 2.4em; padding-bottom: 2.1em; border-bottom: solid 1px #E7F4FF }
#calendar_upcominglist div.calendar_event { width: 100%; margin: 0.7em 0px; margin-top: 2.1em; padding-bottom: 0.3em; border-bottom: solid 1px #D2E9FC; overflow: hidden }
#calendar_upcominglist div.calendar_event h3 { margin: 0px; width: 40%; float: left }
#calendar_upcominglist div.calendar_event h4 { margin: 0px; width: 40%; float: left }
#calendar_upcominglist div.calendar_event span.event_date { display: block; width: 25%; margin-top: 1px; float: right; text-align: right }
#calendar_upcominglist div.calendar_event span.event_location { display: block; width: 34%; margin-top: 1px; float: right; text-align: right }
#calendar_upcominglist div.calendar_summary { padding: 0px 0.7em }
#calendar_upcominglist div.calendar_details { padding: 0px 0.85em }
#calendar_upcominglist div.calendar_more_link {font-size: 80%; text-align: right }

#calendar_entry div.calendar_event { width: 100%; margin: 0.7em 0px; padding-bottom: 0.3em; border-bottom: solid 1px #EAEAEA; overflow: hidden }
#calendar_entry div.calendar_event h3 { margin: 0px; width: 40%; float: left }
#calendar_entry div.calendar_event h4 { margin: 0px; width: 40%; float: left }
#calendar_entry div.calendar_event span.event_date { display: block; width: 25%; margin-top: 1px; float: right; text-align: right }
#calendar_entry div.calendar_event span.event_location { display: block; width: 34%; margin-top: 1px; float: right; text-align: right }
#calendar_entry div.calendar_summary { padding: 0px 0.7em }
#calendar_entry div.calendar_details { padding: 0px 0.85em }
#calendar_entry div.calendar_return_link {font-size: 80%; text-align: right }

/* end
CALENDAR MODULE ~~~~~~~~~~~~~~*/


/* begin
SPECIFIC PAGE STYLES ~~~~~~~~~~~~~~*/

body#site-map #content ul { margin: 0px; font-size: 120%; font-weight: bold; }
body#site-map #content ul li { padding: 0.4em 0em; border-bottom: solid 1px #2171a7 }
body#site-map #content ul li li { padding: 0em; border: 0px }
body#site-map #content ul li { margin: 0.5em 0px; list-style-type: none }
body#site-map #content ul li ul { margin: 0em 0px 0em 1em; font-size: 90%; font-weight: normal }
body#site-map #content ul li ul li ul { margin:  0.7em 0px 1.1em 1em; font-size: 85% }

/* end
SPECIFIC PAGE STYLES ~~~~~~~~~~~~~~*/


/* Safari FOUC - always leave this at the end of this file */
body { display: block !important }
/* End of 'main_stylesheet' */

