/*
-----------------------------------------------
Version:  15 Apr 2009
----------------------------------------------- */
html, body {
	height: 100%;
	margin: 0;
	padding: 0;
}

/* Rules for Opera */
@media all and (min-width: 0px) {
	html, body {
		height: auto;
	}
}

body {
	background-color: #fff;
	background-image: url(../images/backgrounds/body.gif);
	background-repeat: repeat-x;
	font-size: 70%;
	font-style: normal;
}
	body.popup {
		background-image: url(images/brandmark-alternate.gif);
		background-position: 2em 1em;
		background-repeat: no-repeat;
		font-size: 66%;
		margin-top: 2em;
		padding: 4.8em 2em 2em 2em;
	}
	
body, .button, select, textarea, input[type=text], input[type=password] {
	color: #404040;
	font-family: Helvetica, Arial, Verdana, sans-serif;
}

#viewport-outer {
	margin-left: -40px;
}

#viewport {
	margin: 0 auto;
	width: 995px;
}

	#viewport-listener {
		background-color: transparent;
		/*cursor: pointer;*/
		left: 0;
		position: absolute;
		top: 0;
		width: 100%;
		z-index: 1;
	}
	
/* Masthead
----------------------------------------------- */
#masthead {
	width: 100%;
}
		
	#brandmark a, #brandmark a:visited, #brandmark a:hover, #brandmark a:active {
		background-image: url(../images/brandmark.gif);
		background-repeat: no-repeat;
		display: block;
		height: 92px;
		text-decoration: none;
		text-indent: -9999px;
		width: 150px;
		position: absolute;
		right: 190px;
		top: 20px;
	}
		#homepage #brandmark a:hover, #homepage #brandmark a:active {
			cursor: default;
		}

#index-series {
	position: absolute;
	z-index: 2000;
}

#index, #search, #careers {
	float: left;
	font-size: 110%;
	font-weight: bold;
}

#masthead-helper {
	width: 644px;
}

	#index {
		background-color: #ff7a0e;
		background-image: url(../images/containers/type-01/bottom-right.gif);
		background-position: bottom right;
		width: 320px;
		margin-left: 4px;
	}
		#index .wrapper,
		#search .wrapper,
		#careers .wrapper {
			background-image: url(../images/containers/type-01/bottom-left.gif);
			background-position: bottom left;
		}
			#search .wrapper,
			#careers .wrapper {
				background-image: url(../images/containers/type-02/bottom-left.gif);
			}
		
		#index a, #index a:visited, #index a:hover, #index a:active,
		#careers a, #careers a:visited, #careers a:hover, #careers a:active {
			background-image: url(../images/arrows/arrow-right-against-orange.gif);
			background-position: 100% .4em;
			color: #fff;
			display: block;
			margin-right: .8em;
			padding-right: 1em;
			padding-left: .8em;
			padding-top: .4em;
			padding-bottom: .4em;
			text-decoration: none;
		}
			#index a:hover, #index a:active,
			#careers a:hover, #careers a:active {
				text-decoration: underline;
			}
				#index a:active,
				#careers a:active {
					text-decoration: none;
				}
			#index a.current, #index a.current:visited, #index a.current:hover, #index a.current:active {
				background-image: url(../images/arrows/arrow-right-against-orange-down.gif);
				background-position: 100% .6em;
				cursor: pointer;
			}
			
			#index-toggler {
				visibility: hidden;
			}
				.is-loaded #index-toggler {
					visibility: visible;
				}
			
	#search {
		background-color: #fff;
		background-image: url(../images/containers/type-02/bottom-right.gif);
		background-position: bottom right;
		width: 160px;
	}
		#search-error {
			background-image: url(../images/containers/type-02/arrow.gif);
			background-position: 1em 0;
			color: #fff;
			margin-left: 29em;
			margin-top: 2.1em;
			padding-top: 3px;
			min-width: 160px;
			position: absolute;
		}
			#search-error .wrapper {
				background-color: #fff;
				background-image: url(../images/containers/type-02/top-right.gif);
				background-position: top right;
				font-size: 100%;
				font-weight: bold;
			}
				#search-error span {
					background-image: url(../images/containers/type-02/top-left-alternate.gif);
					background-position: top left;
					display: block;
					padding: .3em .7em .2em .7em;
				}
					#search-error em {
						font-style: normal;
					}
					
		#careers {
			background-color: #5e809c;
			background-image: url(../images/containers/type-02/bottom-right.gif);
			background-position: bottom right;
			width: 160px;
		}
		
#masthead .utilities {
	float: right;
	list-style: none;
	margin-top: .25em;
	padding: 0;
	white-space: nowrap;
}
	#masthead .utilities li {
		display: inline;
		font-size: 90%;
		padding-right: 7.2em;
	}
		
		#masthead .utilities a, #masthead .utilities a:visited, #masthead .utilities a:hover, #masthead .utilities a:active {
			color: #aec1d0;
			text-decoration: none;
		}
			#masthead .utilities a:hover, #masthead .utilities a:active {
				text-decoration: underline;
			}
				#masthead .utilities a:active {
					color: #fff;
					text-decoration: none;
				}

/* Hero
----------------------------------------------- */
#hero-outer {
	height: 272px;
	overflow: hidden;
	margin-left: 40px;
	margin-bottom: 1px;
}
	#hero {
		overflow: hidden;
	}
	
/* Widget
----------------------------------------------- */
#widget-outer {
	height: 432px;
	width: 640px;
}
	#widget {
		overflow: hidden;
	}

/* Content
----------------------------------------------- */
#content, #footer {
	width: 955px;
}

#content {
	border-color: #fff;
	border-width: 0 0 0 40px;
	border-style: solid;
}
	#content-inner {
		background-color: #e7eff3;
		padding-bottom: 1.8em;
	}
		.corner-helper {
			background-image: url(../images/containers/corner-top-right.gif);
			background-position: 311px 0;
		}
		
	#col-left {
		float: left;
		width: 300px;
	}
		#homepage #col-left {
			width: 315px;
		}
		
		#col-left .content {
			padding-right: 40px;
		}

	#col-right {
		margin-left: 315px;
	}
		#homepage #col-right .content {
			padding-right: 1em;
			padding-left: 1em;
		}
	
	#homepage #col-left {
		border-color: #fff;
		border-width: 31px 0 0 0;
		border-style: solid;
		padding-right: 0;
	}
		#homepage #col-left .content {
			padding: .5em 40px 0 1em;
		}

/* Footer
----------------------------------------------- */
#footer {
	margin-top: 2em;
	margin-left: 40px;
}
	#footer .col-left {
		float: left;
		width: 300px;
	}
	
	#footer .col-right {
		float: none;
		margin-left: 315px;
		width: auto;
	}

	#footer .content {
		border-color: #e2ecf1;
		border-style: solid;
		border-width: 1px 0 0 0;
		padding-top: .8em;
	}
		#footer .col-left .content {
			margin-right: 40px;
		}
		
	#footer .col-right .content {
		padding-left: 0;
		padding-right: 1em;
	}
	
#footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
	#footer li {
		float: left;
		margin-right: 2em;
	}
		#footer li:first-child {
			margin-left: 1em;
		}
		
	#footer a, #footer a:visited, #footer a:hover, #footer a:active {
		color: #003366;
		text-decoration: none;
	}
		#footer a:hover {
			text-decoration: underline;
		}
			#footer a:active {
				text-decoration: none;
			}
	
	#copyright {
		color: #b0b0b0;
		float: right;
		padding: 0;
	}
	
/* Two-col layout inside primary content area
----------------------------------------------- */
.columns-container,
.columns-container-type-02 {
	margin-bottom: .6em;
	width: 100%;
}
.col-left, .col-right,
#masthead #index-series .col-left, #masthead #index-series .col-right {
	width: 50%;
	float: left;
}
	.columns-container-type-02 .col-left {
		width: 65%;
	}
		.columns-container-type-02 .col-right {
			width: 35%;
		}
	.col-right,
	#masthead #index-series .col-right {
		float: right;
	}
	
	.col-left .content,
	#masthead #index-series .col-left .content {
		padding-right: 2em;
	}
	.col-right .content,
	#masthead #index-series .col-right .content {
		padding-left: 2em;
	}
	
		#col-right .col-right ul,
		#col-right .col-right hr,
		#col-right .col-right p,
		#col-right .col-right .container-white {
			margin-left: 2em;
		}
			#col-right .col-right p,
			#col-right .col-right h2,
			#col-right .col-right .container-white {
				margin-right: 1em;
			}
		
		#col-right .col-right h2 {
			margin-left: 1.7em;
		}
	
	#masthead .col-left, #masthead .col-right {
		float: left;
	}
		#masthead .col-left {
			width: 351px;
		}
		
			#masthead .col-left .content {
				padding-top: 2.6em;
				padding-left: 52px;
			}
				#masthead #index-series .col-left .content {
					padding-top: 0;
					padding-left: 0;
				}
			
			#masthead .col-right .content {
				padding-left: 0;
			}
			#masthead #index-series .col-right .content {
				padding-left: 2em;
			}
			
/* Three-col layout inside primary content area
----------------------------------------------- */
.three-col-layout {
	margin-top: .6em;
	width: 100%;
}
	.col {
		float: left;
		width: 33.3333%;
	}

/* Horizontal Rulers
----------------------------------------------- */
hr,
.div-hr-type-02,
.div-hr-type-03 {
	background-repeat: no-repeat;
	border-color: #fff;
	border-style: solid;
	border-width: 0 0 1px 0;
	margin: 2em 0 1.8em 0;
	padding: 0;
	height: 0;
}
	.div-hr-type-02,
	.div-hr-type-03 {
		background-image: url(../images/backgrounds/hr-type-02.gif);
		background-repeat: no-repeat;
		background-position: top right;
		border-width: 0;
		margin: 1.8em 0 .9em 0;
		padding: 0;
		height: 11px;
	}
		#homepage .div-hr-type-02 {
			background-image: url(../images/backgrounds/hr-type-02-alternate.gif);
			height: 10px;
		}
		.div-hr-type-03 {
			background-image: url(../images/backgrounds/hr-type-03.gif);
			background-position: top left;
		}
			#homepage .div-hr-type-03 {
				background-image: url(../images/backgrounds/hr-type-03.gif);
				background-position: top left;
				margin-right: 40px;
			}
			
	body.popup hr {
		border-color: #003366;
		margin: 2.4em 0 1.2em 0;
	}