/*
Theme Name: GMBill
Theme URI: http://www.gmbill.com/
Description: The GMBill: custom menu, header image, and background.  Optional one-column page template that removes the sidebar. Scalability: Min:980px, Max: 1280px;
Author: GM Bill
Version: 1.0
License: GNU General Public License
License URI: license.txt
Tags: GMBill, one-column, two-columns, scalable-width, custom-header, custom-background, editor-style, custom-menu
*/


/* =Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
body {
	line-height: 1;
}
h1, h2, h3, h4, h5, h6 {
	clear: both;
	font-weight: normal;
}
ol, ul {
	list-style: none;
}
blockquote {
	quotes: none;
}
blockquote:before, blockquote:after {
	content: '';
	content: none;
}
del {
	text-decoration: line-through;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
a img {
	border: none;
}
span { display:inline-block; }

/* =Structure
-------------------------------------------------------------- */

/* The main theme structure */
#wrapper { position:relative; min-width: 980px; max-width:1280px; margin:0 auto; }

#header,
#main,
#footer { position:relative; width:auto; margin:0 10px 20px; }

#header { margin:0 10px 40px; position:relative; }


/* =Grids
-------------------------------------------------------------- */

/*
LAYOUT: Two columns
DESCRIPTION: Two-column fixed layout with one sidebar right of content
*/
#main:after,
#container:after,
.faq .page:after { content:"."; display:block; clear:both; visibility:hidden; height:0px; }

.grid_l { padding:0 280px 0 0; }
.grid_r { padding:0 0 0 280px; }
.grid_f { padding:0; }

.grid_l #content { float:left; width:100%; margin:0 -280px 0 0; }
.grid_r #content { float:right; width:100%; margin:0 0 0 -280px; }

.grid_l #aside { float:right; overflow:hidden; width:280px; padding:3px 0 0; margin:0 -280px 0 0;  }
.grid_r #aside { float:left; overflow:hidden; width:280px; padding:3px 0 0; margin:0 0 0 -280px;  }
.grid_f #aside { display:none; }

/* =Components
-------------------------------------------------------------- */
.accordion_dn,
.accordion_st {}
.accordion_dn dt,
.accordion_st dt { font-weight:normal; margin:0 0 5px; cursor:pointer; }
.accordion_dn dt:hover,
.accordion_st dt:hover,
.accordion_dn dt.selected,
.accordion_st dt.selected { color:#355B9B; }
.accordion_dn dd,
.accordion_st dd { display:none; margin:-5px 0 5px; padding:5px 10px 10px; border-bottom:1px dotted #E9E9E9; }



/* =Buttons / icons
-------------------------------------------------------------- */
.btn_submit { height:28px; line-height:25px; padding:0 10px; border:1px solid #5B9B35; background:url(images/bg-submit.png) repeat-x left top; color:#FFF; border-radius:3px; -moz-border-radius:3px; -webkitborder-radius:3px; cursor:pointer; }



/* =Header
-------------------------------------------------------------- */
#branding { position:relative; height:75px; width: 1280px; margin: 0 auto;}

#site-title { position:absolute; top:20px; left:20px; width:auto; }
	#site-title a { color: #000; font-weight: bold; text-decoration: none; }
	#site-title a:hover { border:0; }

#site-description { position:absolute; width:auto; top:20px; right:20px; min-width: 220px; display:none; }
#site-search { position:absolute; width:auto; top:75px; right:48px; min-width: 180px; z-index:100; }
	#site-search ul { margin:0; }
	#site-search li { position:relative; list-style:none; padding:3px 0 0 2px; width:auto; height:26px; background:url(images/bg-search.png) no-repeat left top;  }
	#site-search input#s { border:0; width:170px; }
	#site-search input#searchsubmit { position:absolute; padding:0; top:0; right:-28px; text-indent:-999em; border:0; width:28px; height:29px; background:url(images/bg-search.png) no-repeat right -28px; cursor:pointer; }

/* This is the custom header image   */
#branding img { display: block; width: 215px; height: 75px; float: left; position:relative; top:-10px;}


/* =Menu
-------------------------------------------------------------- */

#access { position:absolute; top:95px; background:url(images/bg-nav.png) no-repeat right -163px; width: 100%; z-index:99; }

#access > div { padding:0 10px; }
#access ul { list-style:none; margin:0; }
	#access ul:after { content:"."; display:block; clear:both; visibility:hidden; height:0px; }
	#access li { float:left; position:relative; z-index:1; }

#access .menu {  background:url(images/bg-nav.png) no-repeat left -80px; }
	#access .menu > ul { list-style:none; margin:0; height:37px; background:url(images/bg-nav.png) repeat-x left top; }
	#access .menu > ul > li { position:relative; padding:1px 0 0; height:35px; background:url(images/bg-nav.png) no-repeat right bottom; z-index:0; }
	#access .menu > ul > li:hover { box-shadow:0 3px 8px #888; -moz-box-shadow:0 3px 8px #888; -webkit-box-shadow:0 3px 8px #888; }
	#access .menu > ul > li > a { display:block; height:35px; line-height:35px; padding:0 15px; }
	#access .menu > ul > li:hover > a { height:33px; line-height:33px; background: #FFF; margin:0 -1px; color:#355B9B; border:1px solid #355B9B; }
	#access .menu > ul > li > a span { display:block; padding:0 15px; margin:0 -15px; }
	
	#access .menu > ul > li.active { display:block; }
	#access .menu > ul > li.active:hover > a { position:relative; z-index:1;  }
	#access .menu > ul > li.active:hover > a span { position:relative; height:35px; display:block; background:#FFF; margin-bottom:-1px; }
	#access .menu > ul > li.active:hover > ul { display:block; }
	
	#access .menu .children { display:none; position:absolute; min-width:180px; top:36px; left:-1px; background:#FFF; z-index:0; border:1px solid #355B9B; box-shadow:0 3px 8px #888; -moz-box-shadow:0 3px 8px #888; -webkit-box-shadow:0 3px 8px #888; }
	#access .menu .children > li { min-width:200px; padding:2px; }



/* =Content
-------------------------------------------------------------- */

/* Homepage */
#masthead { padding:0 0 37px; }
#banner { text-align:center; margin:0 auto 20px; width:980px; height:250px; border-radius:6px; overflow:hidden; }
#banner span { display:block; width:100%; height:100%; border-radius:6px; -moz-border-radius:6px; -webkit-border-radius:6px; -moz-box-shadow:0px 0px 3px #E2E2E2; -webkit-box-shadow:0px 0px 3px #E2E2E2; box-shadow:0px 0px 3px #E2E2E2; }

#summary { width:100%; display:table; margin:0; }
#summary li { display:table-cell; height:auto; width:25%; }
	#summary li .post { min-height:130px; margin:0 0 0 10px; padding:10px; background:url(images/bg-summary.png) repeat-x left bottom; border:1px solid #E9E9E9; border-radius:6px; -moz-border-radius:6px; -webkit-border-radius:6px; -moz-box-shadow:0px 0px 3px #E2E2E2; -webkit-box-shadow:0px 0px 3px #E2E2E2; box-shadow:0px 0px 3px #E2E2E2;  }
	#summary li:first-child .post { margin:0; }


/* Content */
#content {  padding:10px 0 0; }
#content > .post,
#content > .page { padding:0 20px 0 30px; }

#content .entry-title { padding:0 10px 9px; margin:0 20px 20px -10px; border-bottom:1px dotted #E0E0E0; }

.default #content { min-height:400px; border-left:1px dotted #E0E0E0; }




/* FAQ */
.faq .cat {  margin:0 0 20px;  }


/* Results */
.results h2 span { color:#91ACD9; margin:0 0 10px; }


/* Asides */
#aside > div,
#aside > form,
#aside > .post { padding:10px; margin:0 20px 20px; }
#aside > .hl { background:url(images/bg-summary.png) repeat-x left bottom; min-height:90px; border:1px solid #E9E9E9; border-radius:6px; -moz-border-radius:6px; -webkit-border-radius:6px;-moz-box-shadow:0px 0px 3px #E2E2E2; -webkit-box-shadow:0px 0px 3px #E2E2E2; box-shadow:0px 0px 3px #E2E2E2; }

.default #aside { padding:10px 0 0; }

#account fieldset:first-child { padding:0 0 10px; margin:0 0 10px; border-bottom:1px dotted #E0E0E0; }


#sidemenu { min-height:150px; border-top:1px dotted #E0E0E0; padding:0 !important; margin-right:0 !important; }
#sidemenu > ul > li { padding:0; }
#sidemenu ul ul > li {  line-height:30px; background:#F9F9F9; border-bottom:1px dotted #E9E9E9; padding:0 20px; text-align:right; }
#sidemenu ul ul > li:hover { background:#F4F4F4; }
#sidemenu a { display:block; padding:0 20px; margin:0 -20px; }

#contactdetails h3 { padding:0 0 5px; margin:0 0 10px; border-bottom:1px dotted #E0E0E0; }
#contactdetails address { margin:0 0 10px; }





/* =Attachment pages
-------------------------------------------------------------- */

.attachment .entry-content .entry-caption {
	font-size: 140%;
	margin-top: 24px;
}
.attachment .entry-content .nav-previous a:before {
	content: '\2190\00a0';
}
.attachment .entry-content .nav-next a:after {
	content: '\00a0\2192';
}


/* =Navigation
-------------------------------------------------------------- */
.navigation {
	color: #888;
	font-size: 12px;
	line-height: 18px;
	overflow: hidden;
}
.navigation a:link,
.navigation a:visited {
	color: #888;
	text-decoration: none;
}
.navigation a:active,
.navigation a:hover {
	color: #ff4b33;
}
.nav-previous {
	display:inline-block;
	width: 50%;
}
.nav-next {
	display:inline-block;
	text-align: right;
	width: 50%;
}
#nav-above {
	margin: 0 0 18px 0;
}
#nav-above {
	display: none;
}
.paged #nav-above,
.single #nav-above {
	display: block;
}
#nav-below {
	margin:0;
}


/* =Images
-------------------------------------------------------------- */

/*
Resize images to fit the main content area.
- Applies only to images uploaded via WordPress by targeting size-* classes.
- Other images will be left alone. Use "size-auto" class to apply to other images.
*/
img.size-auto,
img.size-full,
img.size-large,
img.size-medium,
.attachment img {
	max-width: 100%; /* When images are too wide for containing element, force them to fit. */
	height: auto; /* Override height to match resized width for correct aspect ratio. */
}
.alignleft,
img.alignleft {
	display: inline;
	float: left;
	margin-right: 24px;
	margin-top: 4px;
}
.alignright,
img.alignright {
	display: inline;
	float: right;
	margin-left: 24px;
	margin-top: 4px;
}
.aligncenter,
img.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
img.alignleft,
img.alignright,
img.aligncenter {
	margin-bottom: 12px;
}
.wp-caption {
	background: #f1f1f1;
	line-height: 18px;
	margin-bottom: 20px;
	max-width: 632px !important; /* prevent too-wide images from breaking layout */
	padding: 4px;
	text-align: center;
}
.wp-caption img {
	margin: 5px 5px 0;
}
.wp-caption p.wp-caption-text {
	color: #888;
	font-size: 12px;
	margin: 5px;
}
.wp-smiley {
	margin: 0;
}


/* =Navigation
-------------------------------------------------------------- */
.navigation {}



/* =Widget Areas
-------------------------------------------------------------- */
.widget_rss a.rsswidget {
	color: #000;
}
.widget_rss a.rsswidget:hover {
	color: #ff4b33;
}
.widget_rss .widget-title img {
	width: 11px;
	height: 11px;
}

.widget_sidemenu { padding:0 10px; margin: 0 0 10px; }



/* =Footer
-------------------------------------------------------------- */

#footer { margin-bottom: 20px; }
#colophon { text-align:right; overflow: hidden; padding:20px 20px; border-top:1px dotted #E0E0E0; }

#footer_menu { position:absolute; top:20px; right:10px; }
#footer_menu .copy p { margin:0; }
#footer_menu { padding-right:10px; list-style:none; margin:0 0 0 20px; }
#footer_menu li { float:left; padding:0 5px 0 0; }
#footer_menu li.copy { padding:0 20px 0 0; }


#site-generator {
	font-style: italic;
	position: relative;
}
#site-generator a {
	background: url(images/wordpress.png) center left no-repeat;
	color: #666;
	display: inline-block;
	line-height: 16px;
	padding-left: 20px;
	text-decoration: none;
}
#site-generator a:hover {
	text-decoration: underline;
}
img#wpstats {
	display: block;
	margin: 0 auto 10px;
}



/* =Print Style
-------------------------------------------------------------- */

@media print {
	body {
		background: none !important;
	}
	#wrapper {
		clear: both !important;
		display: block !important;
		float: none !important;
		position: relative !important;
	}
	#header {
		border-bottom: 2pt solid #000;
		padding-bottom: 18pt;
	}
	#colophon {
		border-top: 2pt solid #000;
	}
	#site-title,
	#site-description {
		float: none;
		line-height: 1.4em;
		margin: 0;
		padding: 0;
	}
	#site-title {
		font-size: 13pt;
	}
	.entry-content {
		font-size: 14pt;
		line-height: 1.6em;
	}
	.entry-title {
		font-size: 21pt;
	}
	#access,
	#branding img,
	#respond,
	.comment-edit-link,
	.edit-link,
	.navigation,
	.page-link,
	.widget-area {
		display: none !important;
	}
	#container,
	#header,
	#footer {
		margin: 0;
		width: 100%;
	}
	#content,
	.one-column #content {
		margin: 24pt 0 0;
		width: 100%;
	}
	.wp-caption p {
		font-size: 11pt;
	}
	#site-info,
	#site-generator {
		float: none;
		width: auto;
	}
	#colophon {
		width: auto;
	}
	img#wpstats {
		display: none;
	}
	#site-generator a {
		margin: 0;
		padding: 0;
	}
	#entry-author-info {
		border: 1px solid #e7e7e7;
	}
	#main {
		display: inline;
	}
	.home .sticky {
		border: none;
	}
}



/* =Global Elements
-------------------------------------------------------------- */

/* Main global 'theme' and typographic styles */
body { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; line-height:18px; font-size:13px; background: #FFF; color:#888; }

hr {
	background-color: #e7e7e7;
	border: 0;
	clear: both;
	height: 1px;
	margin-bottom: 18px;
}

h1 { font-size:28px; color:#355B9B; }
h2 { font-size:20px; }
h3 { font-size:16px; font-weight:bold; }

/* Text elements */
p {
	margin-bottom: 18px;
}
ul {
	list-style: square;
	margin: 0 0 18px 25px;
}
ol {
	list-style: decimal;
	margin: 0 0 18px 30px;
}
ol ol {
	list-style: upper-alpha;
}
ol ol ol {
	list-style: lower-roman;
}
ol ol ol ol {
	list-style: lower-alpha;
}
ul ul,
ol ol,
ul ol,
ol ul {
	margin-bottom: 0;
}
dl {
	margin: 0 0 24px 0;
}
dt {
	font-weight: bold;
}
dd {
	margin-bottom: 18px;
}
strong {
	font-weight: bold;
}
cite,
em,
i {
	font-style: italic;
}
big {
	font-size: 131.25%;
}
ins {
	background: #ffc;
	text-decoration: none;
}
blockquote {
	font-style: italic;
	padding: 0 3em;
}
blockquote cite,
blockquote em,
blockquote i {
	font-style: normal;
}
pre {
	background: #f7f7f7;
	color: #222;
	line-height: 18px;
	margin-bottom: 18px;
	padding: 1.5em;
}
abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
sup,
sub {
	height: 0;
	line-height: 1;
	position: relative;
	vertical-align: baseline;
}
sup {
	bottom: 1ex;
}
sub {
	top: .5ex;
}
address { font-style:normal; }
a { outline:none; text-decoration:none; text-shadow:1px 1px 0 #FFF; }
a:link {
	color: #355B9B;
}
a:visited {
	color: #355B9B;
}
a:active,
a:hover {
	border-bottom: 1px dotted #355B9B;
}

.error { border-color:#DB3315; }
.valid { border-color:#5B9B35; }

h4 { font-weight:bold; }


#content h3 { margin:0 0 5px; }
 
#site-description { font-style: italic; text-align:right; }
#site-title h1 { font-size: 30px; line-height: 30px;  }

#aside ul,
#access ul { list-style:none; margin:0; }

#access li { font-size: 13px; }
#access a { color: #888; text-decoration: none; text-shadow:0 0 0 #FFF; }

/*#access .menu > ul > li { font-size:14px; } */

#access .menu > ul > li.current_page_item > a,
#access .menu > ul > li.current-menu-ancestor > a { color:#355B9B; }

#access .menu > ul .children li a { display:block; background:#FFF; padding:3px 10px 3px 13px; line-height:inherit; width:auto; height:auto; border:0; }
#access .menu > ul .children li:hover a { background:#91acd9; color:#FFF; } 

#access .menu ul > li.current_page_item > a,
#access .menu ul > li.current_page_parent > a { color:#355B9B; text-shadow:1px 1px 0 #FFF; }

#access .menu ul ul > li.current_page_item > a { text-shadow:0 0 0 #FFF; }

#sidemenu ul ul > li.current_page_item { border-right:1px solid #FFF; background:#FFF;  }
#sidemenu ul ul > li.page_item a { color:#888; }
#sidemenu ul ul > li.current_page_item a { color:#355B9B; }

#sidemenu a:hover { border:0; }

.grid_f h1 { margin:0 0 0 20px; }

.faq #content h2 { color:#91ACD9; margin:0 0 10px; padding:0 0 5px; border-bottom: 1px solid #E9E9E9; }

#summary h3 { margin:0 0 5px; }


/* Forms */
form ol { list-style:none; margin:0; }
form ol li { margin:0 0 5px; line-height:20px; }
form em { color:#F00; font-weight:bold; font-style:normal; position:absolute; top:5px; right:0;  }
form label { display:inline-block; position:relative; vertical-align:top; width:150px; margin:0 10px 0 0; }
form input,
form select, 
form textarea { color:#888; border-radius:3px; -moz-border-radius:3px; -webkit-border-radius:3px; border:1px solid #E9E9E9; }

form input { height:22px; padding:0 2px; line-height:inherit; }
form select { height:24px; padding:2px; }
form textarea { width:400px; padding:2px; height:100px; line-height:normal; }

#contactus { }
#contactus input { width:250px; }
#contactus select { width:257px; }

#account input { width:97%; }
#account legend { font-weight:bold; }

form .actions { text-align: right; } 
#account .actions { padding:10px 0 0; }

#site-search input#s { color:#CCC; font-style:italic; }
#site-search input#s:focus { color:#888; font-style:normal; }


/* Text meant only for screen readers */
.screen-reader-text {
	position: absolute;
	left: -9000px;
}


#systemMessage { 
	text-align:center; 
	font-weight:bold; 
	-moz-border-radius: 6px; 
	-webkit-border-radius: 6px; 
	border-radius: 6px; 
	border:1px solid; 
	padding:2px 2px 3px 2px;
}
#systemMessage.neutral {
	color: #888888;
	border-color: #888888;
}
#systemMessage.true {
	color: #5B9B35;
	border-color: #5B9B35;
}
#systemMessage.false {
	color: #DB3315;
	border-color: #DB3315;
}

div#content div.entry-content ol li 
{
       padding: 5px 0 10px 5px;
}