body {
  font: 13px/1.3 arial, helvetica, sans-serif;
	padding: 0px;
	margin: 0px;
	min-width: 960px;
	background: #f7f7f7;
}

form {
  padding: 0px;
  margin: 0px;
}

a {
  color: #cc0000;
	text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

a img {
  border: none;
}

label {
    font-weight: bold;
    color: #555555;
    padding-right: 10px;
}

/*----Header----*/

#header {
    background: white;
    height: 50px;
    text-align: right;
    padding: 0px 30px 0px 30px;
}

#site_name {
    font-size: 180%;
	font-family: Georgia;
	font-weight: bold;
	margin: 10px 0px 10px 0px;
	float: left;
}

#site_name a {
    color: black;
}

#navbar {
	background: url(../images/backgrounds/red.png) repeat-x top;
	height: 35px;
}

#navbar ul {
  margin:0px;
  padding: 6px 35px 0px 35px;
}

#navbar li {
	display: inline;
	color: #ffffff;
	padding: 0px 10px 0px 10px;
}

#navbar a {
	color: #ffffff;
	font-weight: bold;
}

#cornernav div {
    padding: 20px 20px 0px 0px;
}

#cornernav div span {
  color: #7f7f7f;
  font-weight: bold;
}

div.byline {
  color: #7f7f7f;
  float: left;
  font-weight: bold;
  padding: 20px 0px 0px 10px;
}

/*----Footer CSS----*/

#footer {
    clear: both;
    text-align: center;
    border-top: 1px solid #ffffff;
    padding: 20px;
}

#footer ul {
    margin: 0px;
}

#footer li {
    display: inline;
    padding: 0px 10px 0px 5px;
    border-right: 1px solid #000000;
    color: #7f7f7f;
}

#footer li.last {
    border: none;
}

/*----Content Area----*/

#content {
    padding: 20px 30px 20px 30px;
    border-bottom: 1px solid #b7b7b7;
    background: #EDE9EA;
}

#wrapper {
    padding: 20px;
    border: 1px solid #b7b7b7;
    background: #ffffff;
    min-height: 400px;
}

div.drop_shadow {
    background: #EDE9EA url(../images/backgrounds/drop_shadow.gif) repeat-x top;
    height: 10px;
    border-left: 1px solid #EDE9EA;
    border-right: 1px solid #EDE9EA;
}

/*----Homepage----*/

div.tab_form {
    background: #f4f4f4;
    border: 1px solid #cecfd0;
    width: auto;
}

div.user_info
{
    padding: 20px;
}

div.user_info span
{
    font-size: 18px;
    font-weight: bold;
    color: #555555;
    display: block;
    margin-bottom: 5px;
}

li.second_tab
{
    border-left: 1px solid #cccccc;
}

div.tab_form p {
    margin: 0px 0px 10px 0px;
}

div.tab_form input[type="text"], div.tab_form input[type="password"] {
    padding: 3px;
    width: 220px;
    display: block;
}

span.asterisk {
    color: #cc0000;
}

#showcase {
  padding-left: 20px;
}

div.section_break {
    margin: 20px 0px 20px 0px;
    border-bottom: 1px dotted #b7b7b7;
}

h2.column_titles {
	margin: 0px 0px 10px 0px;
	padding: 0px;
	font-size: 120%;
	color: #555555;
}

div.column_break {
	border-right: 1px dotted #b7b7b7;
	border-left: 1px dotted #b7b7b7;
	height: 360px;
}

div.column_padding {
	padding: 0px 20px 0px 20px;
}

ul.change_list {
	margin: 0px;
	padding-left: 20px;
}

ul.change_list li
{
  	list-style: square;
  	padding: 5px 0px 5px 0px;
  	color: #555555;
}

h2.static_title {
	color: #cc0000;
	font-weight: normal;
	margin: 0px;
}

/*----Grid Layout----*/
.column {
    display: inline;
	float: left;
}

.clear {
    clear: both;
}

.grid_1 {
	width: 33.2%;
}

.grid_2 {
	width: 22%;
}

.grid_3 {
	width: 78%;
}

.grid_4 {
	width: 25%;
}

.grid_5 {
	width: 74.9%;
}

.grid_6 {
  width: 66.7%;
}

/*----Navigation and Layout----*/

h2.sidebar_title {
	margin: 0px 0px 10px 0px;
	padding: 0px 0px 3px 0px;
	color: #555555;
	font-size: 120%;
	border-bottom: 1px solid #cccccc;
}

div.sidebar {
    margin-right: 20px;
    border-bottom: 1px solid #cccccc;
}

ul.nav {
	padding: 0px;
	margin: 0px 0px 10px 0px;
	list-style: none;
}

ul.nav li {
	padding: 5px 10px 5px 10px;
	margin: 0px;
}

ul.nav li a {
	color: #555555;
}

ul.nav li ul {
  list-style: square;
  padding: 5px 0px 0px 0px;
	margin: 0px 0px 0px 30px;
}

ul.nav li.active {
	background: #E67E7E url(../images/backgrounds/dkgrey.png) repeat-x bottom;
	padding-left: 20px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

ul.nav li.active a {
	color: white;
	font-weight: bold;
}

div.page_header {
	height: 48px;
	padding-bottom: 5px;
}

h2.directory_title {
	color: #555;
	margin: 0px;
	padding: 5px 0px 0px 10px;
	float: left;
	font-size: 180%;
}

img.state_img {
	float: left;
}

div.search_box {
  margin-top: 5px;
	float: right;
	background: #f4f4f4;
	border: 1px solid #cccccc;
	padding-left: 5px;
	display: inline;
	width: 220px;
}

input.search_box {
	border: none;
	background: none;
	color: #555;
	width: 180px;
	margin-top: 5px;
}

input.search_button {
	float: right;
	padding: 0px;
	margin: 0px;
	width: 25px;
	height: 25px;
	border: none;
	cursor: pointer;
	background: url(../images/icons/search_button.png) no-repeat center;
	display: inline;
}

div.district_search_form {
	margin: 10px 0px 5px 0px;
	border: 1px solid #ccc;
	display: none;
}

div.district_search_form label {
	display: block;
}

div.district_search_form table {
  border-collapse: collapse;
  margin: 0px 15px 15px 15px;
}

div.district_search_form table td {
	padding-right: 20px;
}

div.district_search_form h4 {
  margin: 0px 0px 10px 0px;
  padding: 5px 0px 5px 15px;
  color: #555;
  background: #f4f4f4;
}

div.sp_button {
	float: right;
	border: none;
	outline: none;
	cursor: pointer;
	margin-top: 7px;
	background: url(../images/ui/sp_button.png) no-repeat;
	font-weight: bold;
	width: 130px;
	height: 30px;
	color: #555;
}

div.sp_button span {
  display: block;
  padding: 7px 0px 0px 25px;
}

div.sp_active {
	background: url(../images/ui/sp_button_active.png) no-repeat;
}

img.ajax_loader {
  float: right;
  margin: 8px 15px 0px 0px;
  padding: 0px;
  display: none;
}
/*----Pagination & Breadcrumbs----*/


div.jumpto
{
  text-align: center;
  margin-bottom: 5px;
  margin-top: 5px;
}

div.jumpto a
{
	padding: 0px 4px 0px 4px;
}

div.jumpto a.active
{
	color: #7f7f7f;
	text-decoration: none;
	font-weight: bold;
}

div.jumpto a.disabled {
	color: #7f7f7f;
}

span.symbols {
	font-size: 120%;
}

div.breadcrumb a.active {
	color: #7f7f7f;
	text-decoration: none;
}

div.breadcrumb span {
	font-weight: bold;
	color: #7f7f7f;
	padding: 0px 5px 0px 5px;
}


/*CSS for the directories panel content*/


div.list_divider
{
  padding: 3px 0px 3px 20px;
  margin-top: 5px;
  border-top: 1px solid #999999;
  border-bottom: 1px solid #7f7f7f;
  background: url(../images/backgrounds/dkgrey.png) repeat-x top;
  font-weight: bold;
  color: #ffffff;
}

div.sublist_title
{
  border-bottom: 1px solid #cccccc;
  padding: 0px 10px 2px 10px;
  margin-bottom: 10px;
  color: #7f7f7f;
  font-weight: bold;
}

table.list_items
{
  width: 100%;
  border-collapse: collapse;
}

table.list_items td
{
  padding-top: 8px;
  padding-bottom: 8px;
}

table.list_items td.icon
{
    width: 40px;
}

table.list_items td.icon img
{
  padding: 2px;
  border: 1px solid #cccccc;
  margin-left: 5px;
  background: white;
}

table.list_items td.staff_icon img
{
  padding: 2px;
  border: 1px solid #cccccc;
  margin-left: 10px;
  background: white;
}

table.list_items td.legislator_name
{
  width: 25%;
  padding-left: 15px;
}

table.list_items td.legislator_district_1
{
  width: 15%;
}

table.list_items td.legislator_district_2
{
  width: 25%;
}

table.list_items td.legislator_branch
{
  width: 25%;
  text-align: center;
}

table.list_items td.legislator_party
{
  width: 10%;
  text-align: center;
}

table.list_items td.committee_name
{
  width: 40%;
  text-align: left;
  padding-left: 10px;
}

table.list_items td.committee_table_item
{
  width: 20%;
  text-align: center;
}

table.list_items td.district_number
{
  width: 20%;
  padding-left: 10px;
}

table.list_items td.district_rep
{
  width: 30%;
}

label.district_label
{
  font-weight: normal;
  color: #555;
}

table.list_items tr.sort_bar td
{
 
  border-bottom: 1px solid #cccccc;
  padding-top: 5px;
  padding-bottom: 5px;
}

table.list_items tr.sort_bar td a
{
  font-weight: bold;
  color: #cc0000;
}


/*----CSS for legislator profiles----*/


div.profile_nav {
  	padding: 0px 0px 20px 0px;
}

div.profile_nav ul {
  	float: right;
  	display: inline;
  	padding: 0px;
  	margin-top: 3px;
}

div.profile_nav li {
  	display: inline;
  	padding: 5px 10px 5px 10px;
  	background: url(../images/backgrounds/grey.png) repeat-x top;
  	border-right: 1px solid #CCCCCC;
  	border-top: 1px solid #CCCCCC;
  	border-bottom: 1px solid #CCCCCC;
}

div.profile_nav li.first {
	border-left: 1px solid #CCCCCC;
}

div.profile_nav li.active {
	background: #f4f4f4;
	padding: 5px 10px 5px 10px;
	border-bottom: 1px solid #CCCCCC;
}

div.profile_nav li.active a {
	color: black;
}

div.profile_nav li a { 
  	color: #555;
  	padding: 5px 5px 5px 5px;
  	outline: none;
}

div.profile_sidebar {
	text-align: center;
	padding-right: 20px;
}

img.profile_pic {
  border: 1px solid #cccccc;
  padding: 10px;
}

div.downloads {
  text-align: left;
}

div.downloads ul {
  list-style: square;
  margin-top: 0px;
  color: #555;
  padding-left: 25px;
}

div.downloads li {
  padding-bottom: 5px;
}

h2.leg_name {
	padding: 0px 10px 10px 10px;
	font-size: 200%;
	margin: 0px;
}

h3.leg_district {
	padding: 0px 0px 0px 10px;
	font-weight: normal;
	font-size: 140%;
	margin: 0px;
}

td.label {
  color: #7f7f7f;
  padding-right: 20px;
  padding-left: 10px;
  padding-top: 10px;
  vertical-align: top;
}

td.label_2 {
  color: #7f7f7f;
  padding-right: 10px;
  vertical-align: top;
}

td.email {
  vertical-align: middle;
}

td.info {
  padding-top: 10px;
}

td.info p {
  margin-top: 0px;
}

div.bar_title {
  margin: 5px 0px 5px 0px;
  padding: 5px 0px 5px 9px;
  background: url(../images/backgrounds/grey.png) repeat-x center;
  border: 1px solid #b7b7b7;
  font-weight: bold;
  color: #555555;
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-topright: 5px;
  -webkit-border-top-right-radius: 5px;
  -webkit-border-top-left-radius: 5px;
}

div.leg_page_title span {
    text-decoration: underline;
    font-size: 120%;
}


/*----CSS for contact panel----*/


div.section_divider
{
  padding: 5px 0px 5px 9px;
  background: url(../images/backgrounds/grey.png) repeat-x middle;
  border: 1px solid #999999;
}

div.office_info
{
  padding-left: 10px;
  padding-right: 10px;
}

div.office_info table
{
  border-collapse: collapse;
  width: 100%;
}

div.office_info table td span
{
  color: #7f7f7f;
}

td.address_label
{
  padding-top: 15px;
  color: #7f7f7f;
  vertical-align: top;
  width: 10%;
}

td.address
{
  padding-top: 15px;
  padding-right: 20px;
  vertical-align: top;
  width: 38%;
}

td.number
{
  padding-top: 15px;
  padding-right: 10px;
  vertical-align: top;
  width: 26%;
}

table.list_items td.staff_name
{
    text-align: left;
    padding-left: 10px;
    width: 20%;
}

table.list_items td.staff_position
{
    width: 25%;
}

table.list_items td.staff_email_label
{
    color: #555555;
}

table.list_items td.staff_branch
{
  padding: 0px 20px 0px 20px;
}

/* CSS for committee list items */

h2.com_name {
	margin: 0px;
	padding: 0px;
}

h3.com_type {
  	font-style: italic;
  	font-weight: normal;
  	color: #555555;
}

div.committee_profile_info	{
  	padding: 10px;
  	margin: 15px 0px 15px 0px;
  	background: #f4f4f4;
  	border: 1px dotted #cccccc;
}

div.staff_position {
	padding-left: 10px;
}


/*<----Messages---->*/


#warning
{
  background-color: #faf8ca;
  padding: 5px;
  margin: 20px;
}

div.message
{ 
  background: #f4f4f4;
  border: 1px dotted #cccccc;
  padding: 10px;
  margin: 10px 0px 5px 0px;
  background: #f4f4f4;
}

div.error_message
{
  margin: 30px;
}

div.message h3
{
  padding: 0px;
  margin: 0px;
  color: #555555;
}

img.message_icon {
	vertical-align: bottom;
	margin-right: 5px;
}

a.clear_search {
	float: right;
	margin-top: 3px;
}

div.indent
{
  margin-left: 10%;
}


/*----District Map Stuff ----*/


#map
{
  width: auto;
  height: 480px;
  margin-left: 20px;
  border: 1px solid #555;
}

div.map_rep_info {
  background: #f0f0f0;
  border: 1px solid #cecfd0;
  padding: 5px 10px 5px 10px;
  margin-bottom: 20px;
}

div.map_info {
  background: #f0f0f0;
  border: 1px solid #cecfd0;
}

div.map_info div.tab {
  padding: 0px;
}

span.vacant {
  font-weight: bold;
  color: #555555;
  font-size: 180%;
}

div.map_list_header {
  border-bottom: 1px solid #cecfd0;
  padding: 5px 25px 5px 10px;
}

div.map_list_header table {
  border-collapse: collapse;
  width: 100%;
}

div.map_list_header th {
  color: #555555;
  text-align: right;
}

div.map_list {
  height: 325px;
  overflow-y: auto;
  padding: 5px 10px 5px 10px;
}

img.rep_image
{
  padding: 2px;
  border: 1px solid #cccccc;
  vertical-align: middle;
}

input.map_button
{
  margin-left: 20px;
}

table.county_list
{
  border-collapse: collapse;
  width: 100%;
}

table.county_list td
{
  padding-top: 5px;
}

td.checkbox
{
  text-align: center;
  width: 20%;
}

/*Form CSS*/

div.form_wrapper
{
  margin-top: 20px;
}

div.form_wrapper table
{
  padding: 20px;
  margin: auto;
  background: #f9f9f9;
  border: 3px solid #b7b7b7;
}

table.form_table
{
  text-align: left;
}

table.form_table td
{
  padding-top: 5px;
  padding-bottom: 5px;
}

table.form_table td textarea
{

  height: 100px;
  padding: 3px;
}

td.form_label
{
  padding-left: 10px;
  padding-right: 10px;
  vertical-align: top;
}

table#district_search
{
  width: 100%;
  border-collapse: collapse;
}

table#district_search td
{
  padding: 10px;
}


/*CSS For Account Overview Pages*/


div.min_page_height
{
  min-height: 480px;
}

div.panel
{
  margin: 0px 20px 20px 260px;
}

div.middle_panel
{
  margin: 0px 260px 20px 260px;
}

td.form_label_2
{
  padding-right: 10px;
  font-weight: bold;
  color: #555;
}

table.product_list
{
  width: 100%;
  border-collapse: collapse;
}

table.product_list td
{
  border-bottom: 1px dotted #cccccc;
  padding: 15px;
  vertical-align: top;
}

table.product_list td.image
{
  width: 160px;
  text-align: center;
}

table.product_list span.title
{
  font-size: 120%;
  font-weight: bold;
  line-height: 2.0;
}

table.product_list span.bulk_discount
{
    display: block;
    width: 130px;
    text-align: center;
    background: #f1f1f1;
    font-weight: bold;
    padding: 5px;
    border: 1px dotted #cccccc;
    color: #555555;
}

h2.cart_title {
  margin: 0px;
  padding: 0px;
  color: #555;
}

div.payment_title_bar
{
  background: url(../images/backgrounds/grey.png) repeat-x center;
  font-weight: bold;
  color: #555555;
  padding: 5px 5px 5px 15px;
  border: 1px solid #b7b7b7;
}

span.price
{
  font-size: 110%;
  font-weight: bold;
  color: teal;
}

input.button
{
  font-weight: bold;
  cursor: pointer;
}

div.product_description
{
  clear: both;
  line-height: 1.2;
}

div.product_description li
{
  list-style: square;
}

table.bulk_discounts
{
  border: 1px solid #b7b7b7;
  border-collapse: collapse;
  background: url(../images/backgrounds/grey.png) #cccccc repeat-x top;
  width: 220px;
}

table.bulk_discounts th
{
  padding: 5px 10px 5px 10px;
  text-align: left;
}

table.bulk_discounts td
{
  padding: 2px 0px 2px 10px;
  border: 1px solid #b7b7b7;
  background: white;
}

table.shopping_cart
{
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #b7b7b7;
}

table.shopping_cart td
{
  text-align: center;
  padding: 10px;
}

table.shopping_cart .cart_item
{
  text-align: left;
}

table.shopping_cart .cart_item p
{
  color: #555;
}

table.shopping_cart .cart_total
{
  text-align: right;
  padding-right: 20px;
}

table.shopping_cart th
{
  background: url(../images/backgrounds/grey.png) repeat-x center;
  padding: 5px 10px 5px 10px;
  color: #555;
}

table.shopping_cart img
{
  height: 80px;
}

input.quantity
{
  text-align: right;
}

a.remove
{
  padding-top: 5px;
  display: block;
}

span.discount
{
  color: #cc0000;
  display: block;
  border-bottom: 1px solid black;
  padding: 2px 0px 2px 0px;
}

span.total
{
  padding: 0px 0px 3px 0px;
  display: block;
}

span.line_total
{
  border-top: 1px solid black;
  padding: 5px 0px 5px 0px;
  display: block;
  text-align: right;
  font-size: 110%;
}

table.line_items
{
  width: 100%;
  border-collapse: collapse;
}

table.line_items td
{
  text-align: center;
  padding: 10px;
}

table.line_items .cart_item
{
  text-align: left;
}

table.line_items th
{
  padding: 5px 10px 5px 10px;
  color: #555;
}

table.line_items .cart_total
{
  text-align: right;
  padding-right: 20px;
}

div.checkout_progress {
  font-weight: bold;
  color: #555;
}

span.step_faded
{
  color: #cccccc;
  padding: 0px 10px 0px 10px;
}

span.step_active
{
  padding: 0px 10px 0px 10px;
}

/* Error list style*/

ul.errorlist
{
  list-style: square;
  color: #cc0000;
}

/*Fancy Form CSS*/

div.fancy_form
{
  border: 1px solid #b7b7b7;
  margin-bottom: 20px;
}

div.fancy_form div.title
{
  background: url(../images/backgrounds/grey.png) repeat-x center;
  font-weight: bold;
  color: #555555;
  padding: 5px 5px 5px 15px;
  border-bottom: 1px solid #b7b7b7;
}

div.fancy_form_block
{
  margin: 20px;
}

div.order_page_wrapper
{
  width: 800px;
  margin: auto;
}

div.order_summary_block
{
  float: left;
  padding-right: 20px;
}

/*My Account CSS*/

h2.account_title {
  color: #555;
  margin: 0px;
  padding: 0px;
}

div.page_status {
  font-weight: bold;
  color: #555;
}

table.subscription_list
{
  width: 100%;
  border-collapse: collapse;
}

table.subscription_list td
{
  text-align: center;
  padding: 5px 10px 5px 10px;
}

table.subscription_list th
{
  padding: 0px 10px 0px 10px;
  color: #555;
}

table.subscription_options td
{
  vertical-align: top;
  padding: 5px;
}

span.blue 
{
  color: #004080;
  font-weight: bold;
}

div.text_page 
{
    margin: auto;
    margin-top: 20px;
    width: 800px;
    border: 1px solid #b7b7b7;
    padding: 20px;
}

input.big_button
{
    font-size: 100%;
    border: 1px solid #b7b7b7;
    background: url(../images/backgrounds/grey.png) repeat-x center;
    cursor: pointer;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}


/*Press Release CSS*/


div.press_release
{
  margin: 0px 0px 30px 0px;
  border-bottom: 1px solid #cccccc;
  padding: 0px 0px 15px 0px;
}

h2.press_title
{
  margin: 0px;
  padding: 0px;
  font-size: 180%;
  font-family: Georgia;
}

h2.press_title a
{
  color: #555555;
}

h3.press_subtitle {
  color: #999999;
  margin: 0px;
  padding: 5px 0px 10px 10px;
  font-weight: normal;
  font-size: 100%;
}

div.press_body
{
  border: 1px dotted #cccccc;
  background: #f4f4f4;
  color: #333333;
  line-height: 1.5;
}

div.press_body p {
  margin: 0px;
  padding: 10px;
}

div.rss
{
  float: right;
  padding-right: 20px;
  padding-top: 10px;
  display: none;
}

div.rss a img
{
  border: 0px;
  outline: none;
}

span.rss img
{
  vertical-align: middle;
  margin-right: 5px;
}

/* CSS for javascript slider */

.slider_content {
  height: 230px;
  overflow: hidden;
  position: relative;
}

.slider_panel {
  height: 230px;
}

.slider_panel h2 {
  color: #555555;
  font-size: 18px;
}

.slider_panel p {
  color: #333333;
  line-height: 1.5;
}

.slider_panel p img {
  float: right;
  padding-left: 10px;
  border: none;
}

.slider_panel li {
  color: #333333;
  list-style: square;
}

ul.slider_nav {
  margin: 10px 0px 0px 0px;
  padding: 0px;
}

ul.slider_nav li {
  display: inline;
  padding: 2px 5px 2px 5px;
  border: 1px dotted #cccccc;
  margin-right: 5px;
}

ul.slider_nav li a {
  color: #ccc;
  outline: none;
  font-weight: bold;
}

ul.slider_nav li a:hover {
  text-decoration: none;
}

ul.slider_nav li.active {
  background: #f4f4f4;
}

ul.slider_nav li.active a {
  color: #555;
}
p#free_text {
  font-weight:bold;
  font-size: 20px;
  margin-bottom: 0px;
  color: #555555;
}
#subscription_button {
  clear:none;
  font-weight:bold;
  font-size: 18px;
  height:45px;
  margin-left:0;
  padding-bottom:1px;
  padding-top:1px;
  text-align:center;
  width: auto;
  background: transparent url(../images/backgrounds/red_button.png) repeat-x ;
  background-position: bottom;
  background-color: #c93232;
  color: #FFFFFF;
}
#search_results {
  width: 800px;
}
#search_results div.search_result_wrapper {
  margin: 5px 0px 15px 0px;
}
#search_results a.l {
  display: block;
  text-decoration: underline;
}
#search_results span.desc {
  margin-left: 5px;
}

/* highlight search word 
  http://eriwen.com/javascript/highlight-search-results-with-js/ */
span.highlighted {
  font-weight: bold;
}
span.term0 {}
span.term1 {}
span.term2 {}