/*
fac.css

Contains styles for end-user viewable pages of Free & Clear corporate site.
*/

/* ---------------------------------------------------------------------------------------
GENERAL
--------------------------------------------------------------------------------------- */
html, body {
	margin: 0;
	padding: 0;
}

img {
	border: 0;
}


div, p, h1, h2, h3 {
	margin-top: 0; /* Fixes top margin issue in Mozilla */
}

h2 {
	font-size: 1em;
	line-height: 22px;
}

	h2.small {
		margin-bottom: 14px;
		font-size: .75em;
		line-height: 18px;
	}

#maincol h2, h2.imgtoright {
	max-width: 375px;
}

#maincol h2 {
	margin-bottom: 18px;
}

h3 {
	font-size: 1em;
	margin-bottom: 0em;
}

	h4.opener {
		margin-top: 0;
		color: #858D95;
		font-size: 1.5em;
		font-weight: normal;
		line-height: 18pt;
	}
	
	h4.stat {
		margin-top: 0;
		color: #7DBA00;
		font-size: 1.25em;
		line-height: 16pt;
	}

body { 
	font: .75em/1.5em "Tahoma", "Arial", sans-serif; 
	color: #30383F;
}

.clear {
	clear: both;
}
div.clear hr {
	display: none;
	height: 0;
}

#loadDashboardHome {
	display: none;
}
	div.home #loadDashboardHome {
		display: block;
	}

.invisible {
	display: none;
}

	/* Utility Classes */    

	.displayBlock {
		display: block;	
	}

	.displayNone {
		display: none;
	}

	.floatRight {
		float: right !important;
	}

	.textRight {
		text-align: right;
	}

	.positionRight {
		position: absolute;
		right: 0;
	}

	.floatLeft {
		float: left !important;
	}

	.positionLeft {
		position: absolute;
		left: 0;
	}
	
	*.clearAfter:after {
		clear: both;
		visibility: hidden;
		display: block;
		overflow: hidden;
		width: 0;
		height: 0;
	}		

		*.clearAfter:after {
			content: " ";
			line-height: 0;
			font-size: 0;
		}
	
	.cursorPointer {
		cursor: pointer;
	}
	
 	.centered {
 	    margin-left: auto !important;
 	    margin-right: auto !important;
        display: table;
 	}
	
 		.centered * {
 			display: table-cell;
 		}
 		
 	.verticallyCentered {
		display: table-cell;
		position: relative;
		vertical-align: middle;
 	}
 		
 	.widthAuto {
 		width: auto !important;
 	}
 	
 	.fontWeightBold {
 		font-weight: bold;
 	}
 	
/* ---------------------------------------------------------------------------------------
TYPOGRAPHY
--------------------------------------------------------------------------------------- */
/* Font sizes specified in percentages of ems. Use this convention to allow IE users to resize text elements as needed.

Conversion:
12px -> 0.75em
14px -> 1.2em
18px -> ?? em
24px -> 2em
*/

a {
	text-decoration: underline;
	color: #FA710D;
}

a:hover {
	color: #DC5800;
}

a.bold {
	font-weight: bold;
	text-decoration: none;
}

ul {
	margin: 1em 0 1em 48px;
	padding: 0;
}

ol {
	margin: 1em 0 1em 48px;
	padding: 0;
	list-style-type: decimal;
}

li {
	margin: 0;
	padding: 0;
	list-style-image: url(/_media/common/images/icons/bullet-round.gif);
}

	ol li {
		margin: 0;
		padding: 0;
		list-style-image: none;
		list-style-type: decimal;
	}

hr {
	width:99%;
	color:#E0E2E4;
	height:1px;
	border-top:1px solid #E0E2E4;
	border-bottom: 0;
	border-left: 0;
	border-right: 0;
	margin: 12px 0;
	clear:both;
}
	
table#footnotes {
	border-collapse: separate;
}

table#footnotes td {
	padding-bottom: 1em;
	vertical-align: top;
}

table#footnotes td.number { 
	text-align: right;
	width: 30px;
	font-weight: bold;
	color: #FA710D;
	padding-right: 6px;
}

table#footnotes td.number a { 
	text-decoration: none;
}


.toleft {
	float: left;
}

.toright {
	float: right;
}

.center {
	margin: 0 auto;
	display: block;
}

    .centerOuter {
        text-align: center;
    }
    
    .centerInner {
        width: auto;
        margin-left: auto;
        margin-right: auto;
    }

.image {
	margin-left: 24px;
	margin-bottom: 24px;
}

div.navheader {
	position: relative;
}

.noborder {
	border: none !important;
}

div.navheader a {
	font-weight: bold;
	text-decoration: none;
	display: block;
	position: absolute;
	top: 0px;
	right: 0; /*see fac_ie.css*/
	z-index: 100;
	padding-left: 16px;
	background: transparent url(/_media/common/images/icons/bullet-round.gif) no-repeat 0 4px;
}

span.required {
	color: #FA710D;
	font-weight: bold;
	padding: 0 3px;
}

span.note {
	font-size: .8em;
	color: #A1A6AC;
}

p.subtitle {
	margin: .3em 0;
	color: #A6ABB1;
}

p.pullquote {
	color: #54616E;
	font-weight: bold;
	margin: .6em 0;
}

/* ---------------------------------------------------------------------------------------
UNIQUE STYLES
--------------------------------------------------------------------------------------- */

#landingHeader {
	position: absolute; 
	top: 81px; 
	left: 161px; 
	z-index: 1000; 
	color: #fff;
}

#landingHeader h1 {
	font-size: 20px;
	line-height: 20px; 
}

#header, #content {
	width: 960px;
}

#header, #content, #footer {
	position: relative;
	margin-left: 20px;
	margin-right: 20px;
}

#header {
	margin-bottom: 34px;
	margin-top: 20px;
}

#header #logo {
	position: relative;
	left: 24px;
	top: 5px;
}
	
#header ul {
	position: absolute;
	top: 28px;
	right: 18px;
	margin: 0;
}
	#header ul li {
		float: left;
		margin-left: 20px;
		font-size: 18px;
		list-style-image: none;
		list-style-type: none;
	}
	
	#header ul li a {
		color: #54616E;
		font-weight: 500;
		text-decoration: none;
	}
	
	body.video #header {
		display: block;
		width: 100%;
		height: 70px;
		position: relative;
		background-color: #54616E;
		border: 1px solid #54616E;
		margin: 0;
	}
	
#backbox {
	position: absolute; 
	top: 17px; 
	left: 0; 
	width: 960px;
	background-color: transparent; 
	z-index: 10;
}

	div.home #backbox {
		height: 451px;
		background-color: #FFF;
	}
	
	div.difference #backbox {
		height: 451px;
	}

#backbox_top {
	background: #54616E url(/_media/corp/images/layout/bgs/dark-content-foot.jpg) no-repeat bottom;
}
	div.home #backbox_top { 
		display: none;
	}

#backbox_interior {
	display: block; 
	background: transparent url(/_media/corp/images/layout/bgs/dark-content-head.jpg) no-repeat top; 
	margin-bottom: 4px;
	min-height: 401px; 
	height: auto !important;
	height: 401px;
}

	div.home #backbox_interior {
		display: none;
	}
/* Left nav styling */
/* it ain't broke, don't fix it */
	ul#leftnav {
		width: 186px;
		padding: 0;
/*		padding-top: 72px; */
		padding-top: 90px;
		margin-left: 3px;
		margin-right: 0;
		margin-bottom: 0;
		margin-top: 0;
		/* height hack to make height work in ie6 */
		min-height: 329px;
		height: 100% !important;
		height: 329px;
	}
	
	ul#leftnav li {
		background: none;
		padding-bottom: 4px; /*Necessary to make rounded corners function correctly */
		width: 186px;
		text-align: right;
		list-style-image: none;
		list-style-type: none;
	}
		ul#leftnav li.selected {
			background: transparent url(/_media/corp/images/navigation/bg_leftnav_btm.png) no-repeat bottom;
		}
		/*
		ul#leftnav li.selected img {
			display: inline;
		}*/
	
	ul#leftnav li a {
		display: block;
		color: #c2c7cc;
		padding: 6px 9px;
		font-weight: bold;
		text-decoration: none;
		margin-bottom: 0px;
		line-height: 1.2em;
	}

		ul#leftnav li a:hover {
			color: #FFFFFF;
		}
	
		ul#leftnav li.selected a {
			background: transparent url(/_media/corp/images/navigation/bg_leftnav_top.png) no-repeat top;
			color: #FFFFFF;
		}
	
	ul#leftnav li ul {
		margin: 0;
		background: transparent url(/_media/corp/images/navigation/bg_leftnav_top.png) no-repeat bottom;
	}
	
	ul#leftnav li ul {
		display: none;
	}

		ul#leftnav li.selected ul {
			display: block;
		}	
		
	ul#leftnav li ul li {
		background: none;
		margin-bottom: 0;
		padding-bottom: 0;
	}
	
	ul#leftnav li ul li a {	
		font-weight: normal;
	}
	
	/*A separate pointer element is necessary, 
	because we've already overloaded li and a
	to make the rounded-corner backgrounds work*/
	img.pointer { 
		display: none;
		width: 3px;
		height: 7px;
		margin-right: 4px;
	}
	
	div.difference ul#leftnav, div.difference ul#leftnav * {
		display: none;
	}

/* Top nav styling */
ul#topnav {
	position: relative;
	top: -17px;
	left: 112px;
	width: 100%;
		margin: 0;
	}
	
	ul#topnav.recruitment {
		left: 190px;
	}
	
	ul#topnav li {
		margin: 0;
		padding: 0;
		list-style-type: none;
		float: left;
		width: 182px;
		height: 34px;
		margin-right: 3px;
		z-index: 9;
		list-style-image: none;
		list-style-type: none;
	}
	
	div.home ul#topnav, div.home ul#topnav * {
		display: none;
	}

#backbox #pageHeader { 
	position: absolute;
	top: 64px;
	left: 216px;
	z-index: 1000;
}

	div.difference #backbox #pageHeader {
		left: 161px;
	}

	#backbox #pageHeader h1 { 
		color: #FFFFFF;
		font-size: 20px;
		line-height: 20px;
		font-family: 'Tahoma','Arial','Helvetica';
	}
	
#primary {
	position: relative; 
	top: 107px; 
	left: 192px; 
	width: 756px; 
	background-color: transparent; 
	z-index: 20;
}

	div.home #primary {
		top: 420px;
		left: 12px;
		width: 937px;
	}
	
	div.difference #primary {
	    top: 0px; 
		left: 12px;
		width: 937px;
	}
	
#banner {
	 width: 756px; 
}

    #banner div img {
	     margin-bottom: 3px;
    }
    
    div.home #banner,
    div.difference #banner {
    	display: none;
    }

.banner {
	height: 160px;
	width: 100%;
	margin: 0 0 3px;
	padding: 0;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-color: transparent;
	overflow: hidden;
}

.banner.reslib { 
    background-image: url(/_media/corp/images/layout/banners/research-library.jpg);
}

.banner.contact { 
	background-image: url(/_media/corp/images/layout/banners/contact-sales.png);
}

#frontbox_top {
	background: transparent url(/_media/corp/images/layout/bgs/content-head.gif) no-repeat; 
	width: 756px; 
	padding-top: 4px;
}
	div.home #frontbox_top, 
	div.difference #frontbox_top {
		width: 937px;
	}
	
	div.difference #frontbox_top {
		position: relative;
		top: 70px;
		margin-top: 37px;
		background: transparent url(/_media/corp/images/layout/bgs/content-head_home.gif) no-repeat; 
		z-index: 100;
	}	
	div.home #frontbox_top {
		background: transparent none;
		padding-top: 0;
		margin-top: 0;
	}

#frontbox_mid {
	background: transparent url(/_media/corp/images/layout/bgs/content-body.gif) repeat-y; 
	padding: 20px 24px 32px 24px; 
	margin: 0;
	min-height: 371px;
}

	div.home #frontbox_mid, div.difference #frontbox_mid {
		background: transparent url(/_media/corp/images/layout/bgs/content-body_home.gif) repeat-y;
	}
	
	div.home #frontbox_mid {
		margin-top: 48px;
		padding-top: 0;
	}
	
	div.difference #frontbox_mid {
		padding-left: 96px;
		padding-right: 96px;
		padding-top: 35px;
	}

	div.recruitment #frontbox_mid {
		min-height: 300px;
	}

#frontbox_bottom {
	background: transparent url(/_media/corp/images/layout/bgs/content-foot.gif) no-repeat; 
	height: 4px;
}

	div.home #frontbox_bottom, 
	div.difference #frontbox_bottom {
		background: transparent url(/_media/corp/images/layout/bgs/content-foot_home.gif) no-repeat; 
	}

	div.difference #frontbox_bottom {
		position: relative;
		top: 70px;
	}
	
#clientsHeader {
	float:left;
	width: 180px;
	height: 160px;
	background: transparent url(/_media/corp/images/layout/bgs/clients-white.gif) no-repeat;
}

#clientsHeader div {
	padding: 10px;
	vertical-align:middle;
}

#clientsHeader div div, #clientsHeader div.logosSwf {
	margin: 0;
	padding: 0;
}

/*2-column 2:1 layout*/
	#maincol {
		float: left;
		border-right: 1px solid #D6D7D9;
		width: 434px;
		margin-right: 24px;
		margin-bottom: 24px;
		padding-right: 24px;
	}

	#sidecol {
		float: left;
		width: 212px !important;
	}

	    #sidecol div.downloads {
            margin: 48px 0 24px;
            padding-left: 24px;
            border-left: 1px solid #D6D7D9;
        }

/*2-column 1:1 layout*/
#left {
	float: left;
	width: 332px;
	border-right: 1px solid #D6D7D9;
	padding-right: 24px;
	margin-right: 24px;
	margin-bottom: 24px;
}

#right {
	float: left;
}

/*tabled version of 1:1*/
table.twocolumn {
	width: 99%;
	margin-bottom: 24px;
}

table.twocolumn td {
	vertical-align: top;
}

table.twocolumn td.left {
	border-right: 1px solid #D6D7D9;
	width: 50%;
	padding-right: 24px;
}

table.twocolumn td.right 	
{
	width: 50%;
	padding-left: 24px;
}

/*3-column 2:1:2 layout*/	
	#leftcol, #midcol, #rightcol {
		float: left;
	}
	
	#leftcol {
		width: 318px;
	}
	
	#midcol {
		width: 192px;
		margin: 0 24px 48px;
	}
	
	#rightcol {
		width: 318px;
	}

/*Homepage-only styles*/
table#maingrid {
	width: 100%;
	border-collapse: collapse;
}

table#maingrid td {
	vertical-align: top;
}

table#maingrid td.news, table#maingrid td.about {
	width: 325px;
}

table#maingrid td.news {
	padding-right: 24px;
}

table#maingrid td.about {
	padding-left: 24px;
}

/*Difference-only styles */

div.difference div#module {
	height: 160px;
	margin-bottom: 48px;
}

div.difference #centercol {
	width: 636px;
	margin: 0 auto;
}

div.difference #facsubnav {
	width: 100%;
	text-align: center;
	margin-bottom: 24px;
}

div.difference ul {
	margin: 0 0 1em 22px;
	padding: 0;
}

/*quit for life*/
table.qfltagline {
	width: 100%;
	margin: 24px 0;
}
table.qfltagline td {
	text-align: center;
}

table.qfltagline td h4 {
	color: #7DBA00;
	font-size: 2em;
	display: inline;
	line-height: 1em;
}

/*Related Links*/
#related, div.subsection, table.subsection {
	border-top: 1px solid #D6D7D9;
	clear: both;
}

    .subsection p {
        margin-bottom: 0px !important;
    }

	#related {
		padding-top: 24px;
	}
	
	div.subsection, table.subsection {	
		/*margin: 0;*/
		padding: 20px 0 20px 0;
	}
/*
	#related h1, h2.small {
		font-size: 12px;
	}
	*/
	#related a {
		font-weight: normal;
	}
	
/*Footer styles*/
#footer {
	padding-top: 137px; /*72 + 48*/
	margin: 0 0 20px 236px;
	color: #858D95;
	line-height: 1.7em;
}

	div.home #footer {
		padding-top: 451px; /*403 + 48*/
		margin-left: 128px;
	}

	div.difference #footer {
		padding-top: 99px;
	}

#footer a {
	font-weight: bold;
	color: #A1A6AC;
	text-decoration: none;
}

	#footer a:hover {
		color: #858D95;
	}
	
	a.rss {
		 background: transparent url('/_media/common/images/icons/rss.gif') no-repeat left center; 
		 padding-left: 21px;
	}

#footer .legal {
	width: 220px;
	margin-right: 12px;
}

#footer .column {
	margin: 0 0 38px 44px;
}


/* ---------------------------------------------------------------------------------------
LIST STYLES
--------------------------------------------------------------------------------------- */
/*Round bulleted list*/
ul.bulleted {
	margin: 1em 0 1em 48px;
	padding: 0;
}

ul.bulleted li, ul.bulleted.body li {
	line-height: 1.5em;
	list-style-type: none;
	list-style-image: url(/_media/common/images/icons/bullet-round.gif);
	margin-bottom: 1em;
}

ul.bulleted.body li {
	line-height: 1em;
}

/*Attribution lists*/
ul.attributionList table {
	border: 0;
	border-collapse: collapse;
	margin-bottom: 24px;
	margin-left: 0;
	margin-top: 0;
	margin-right: 0;
	padding: 0;
}

ul.attributionList li {
	list-style-image: none;
	list-style-type: none;
}
table.attribution {
	margin-bottom: 1em;
}
ul.attributionList table td, table.attribution td {
	vertical-align: middle;
	line-height: 1.3em;
}

ul.attributionList table td.key, table.attribution td.key {
	color: #A6ABB1;
	width: 192px;
	border-right: 1px solid #D6D7D9;
	text-align: right;
	padding-right: 8px;
}
	ul.attributionList table td.key span.download a, table.attribution td.key span.download a {
		text-decoration: none;
		font-weight: bold;
	}
	
	span.download.video a {
		background: transparent url(/_media/common/images/icons/video-tiny.gif) no-repeat left center;
		padding-left: 24px;
	}

ul.attributionList table td.value, table.attribution td.value {
	font-weight: normal;
	text-align: left;
	padding-left: 8px;
	color: #54616E;
}

/*Filetype bulleted lists*/
ul.fileList {
	margin: 0;
	padding: 0;
}

ul.fileList li {
	position: relative;
	margin-bottom: 2em;
	list-style-image: none;
	list-style-type: none;
}

ul.fileList li a.icon,
ul.fileList li span.icon {
	position: absolute;
	color: #858D95;
	text-align: right;
	top: 0;
	left: 0;
	width: 32px;
}

ul.fileList li span.item {
	display: block;
	position: relative;
	padding-left: 8px;
	top: 0;
	left: 35px;
	width: 128px; /*downside is that width must be known*/
	line-height: 1.25em;
}

ul.fileList span.download {
	color: #A1A6AC;
}

ul.coachList {
	margin: 0 !important;
}

ul.coachList li {
	position: relative;
	margin-bottom: 2em;
	list-style-image: none;
	list-style-type: none;
}

ul.coachList li span.photo {
	position: absolute;
	color: #858D95;
	text-align: right;
	top: 0;
	left: 0;
	width: 72px;
}

ul.coachList li span.item {
	display: block;
	position: relative;
	border-left: 1px solid #D6D7D9; 
	padding-left: 8px;
	left: 80px;
	width: 284px; /*downside is that width must be known*/
}

	div.difference ul.coachList li span.item {
		display: block;
		position: relative;
		border-left: 1px solid #D6D7D9; 
		padding-left: 8px;
		left: 80px;
		width: 168px; /*downside is that width must be known*/
	}

ul.coachList li span.training {
	width: 552px !important; /*downside is that width must be known*/
}

ul.coachList li a {
	font-weight: bold;
	text-decoration: none;
}

ul.coachList li span.item h3 {
	font-size: 1em;
	font-weight: bold;
	margin: 0;
}

/* Download list */

ul.downloadList {
    margin: 0 !important;
}

ul.downloadList li.item {
	width: 212px;
	margin-top: 14px;
	list-style-image: none;
	list-style-type: none;
}

    ul.downloadList li.item h3.downloadTitle {
	    margin-bottom: 3px;
	    font-weight: normal;
	    line-height: 1.25em;
    }
    
    ul.downloadList li.item a.pointer,
    ul.archiveList li div.item a.pointer {
	    display: inline;
	    background-position: 0 2px !important;
    }

ul.downloadList li span.date {
	position: absolute;
	color: #858D95;
	text-align: right;
	top: 0;
	left: 0;
	width: 72px;
}

ul.downloadList li.item span.size {
	color: #A6ABB1;
	font-weight:normal;
	margin-left: 8px;
}

/*ARchive list experiments*/

ul.archiveList {
	margin: 0;
}

ul.archiveList li {
	position: relative;
	margin-bottom: 2em;
	list-style-image: none;
	list-style-type: none;
}

ul.archiveList li div.logo {
	position: absolute;
	color: #858D95;
	text-align: right;
	top: 0;
	left: 0;
	width: 192px; /*downside is that width must be known*/
	height: 100%;
}

ul.archiveList li div.thumb {
	padding-right: 24px;
	border-right: 1px solid #D6D7D9; 
	color: #858D95;
	text-align: right;
	width: 144px;
	height: 100%;
}

ul.archiveList li div.logo table,
ul.archiveList li div.thumb table {
	width:100%;
	height: 100%;
}

ul.archiveList li div.logo td,
ul.archiveList li div.thumb td {
	text-align:right;
	vertical-align: middle; 
}

ul.archiveList li div.item {
	margin-left: -1px;
	border-left: 1px solid #D6D7D9; 
	padding-left: 10px;
	width: 450px;
}

ul.archiveList li span.date {
    color:#858D95;
    left:0pt;
    position:absolute;
    text-align:right;
    top:0pt;
    width:80px;
}

ul.archiveList li span.item {
	display: block;
	position: relative;
	border-left: 1px solid #D6D7D9; 
	padding-left: 10px;
	left: 88px;
	width: 220px; /*downside is that width must be known*/
}

	ul.archiveList li span.item span.since,
	ul.archiveList li div.item span.size {
		color: #A6ABB1;
		font-weight:normal;
		margin-left: 8px;
	}

ul.archiveList.home li span.item {
	width: 236px; /*downside is that width must be known*/
}

ul.archiveList.narrow li span.item, ul.archiveList.press li span.item {
	width: 346px; /*downside is that width must be known*/
}

ul.archiveList.full li span.item {
	width: 624px; /*downside is that width must be known*/
}

ul.archiveList.wide li span.date {
	width: 192px; /*downside is that width must be known*/
	text-align: right;
}

ul.archiveList.wide li span.item {
	left: 200px;
	width: 492px; /*downside is that width must be known*/
}

ul.archiveList li a, 
ul.fileList li a {
	font-weight: bold;
	text-decoration: none;
}

ul.archiveList li span.item h3 {
	font-size: 1em;
	font-weight: bold;
	margin: 0;
}

ul.archiveList li span.view, 
ul.archiveList li span.source, 
ul.archiveList li span.author,
ul.itemList li span.attribution {
	display: block;
}

li.pointer {
	padding-left: 88px;
}

li.pointer a, a.pointer {
	display: block;
	text-decoration: none;
	font-weight: bold;
	background: transparent url(/_media/common/images/icons/bullet-round.gif) no-repeat 0 4px;
	padding-left: 24px;
	color: #FA710D;
}

    div#sidecol div.calloutContent a.pointer {
	    display: inline;
	    background-position: 0 2px !important;
    }

p.pointer {
	margin-left: 24px;
	background: transparent url(/_media/common/images/icons/bullet-round.gif) no-repeat 0 4px;
	padding-left: 24px;
}

p.pointer a {
	color: #FA710D;
	text-decoration: none;
	font-weight: bold;
}

/* ---------------------------------------------------------------------------------------
MISC BUTTONS
--------------------------------------------------------------------------------------- */
/*Div for button*/
table.happy {
	color: #54616E;
	font-weight: bold;
	margin: 0 auto 24px;
	border: none;
}

table.happy img {
	margin: 0 6px;
}

/* ---------------------------------------------------------------------------------------
VIDEO STYLES
--------------------------------------------------------------------------------------- */

/* ---------------------------------------------------------------------------------------
FORM STYLES
--------------------------------------------------------------------------------------- */

div.requiredFieldsLabel {
	display: block; 
	color: #30383F; 
	margin-top: 20px; 
	text-align: right; 
	padding-right: 24px; 
	margin-bottom: 6px;
}

	div.requiredFieldsLabel.login {
		display: block; 
		color: #30383F; 
		margin: 0 0 6px 0; 
		padding-right: 0;
		text-align: right; 
	}

span.required {
	color: #FA710D;
	font-weight: bold;
	padding: 0 4px;
}

div.errorBox {
	clear: both;
	width: 713px;
	margin: 0 auto;
	padding-top: 15px;
	background: transparent url(/_media/corp/images/layout/bgs/error-top.gif) no-repeat top !important;
}
div.errorBox_inner {
	background: transparent url(/_media/corp/images/layout/bgs/error-bottom.gif) no-repeat bottom;
	overflow: hidden;
	padding: 0 18px 15px 18px;
	margin-bottom: 24px;
}
	div.errorBox_inner br {
		display: none;
	}
	
	div.errorBox_inner ul {
		margin: 0;
		padding: 0;
	}	

	div.errorBox_inner ul li {
		list-style-type: none !important;
		background: transparent url(/_media/common/images/icons/error.gif) no-repeat left center;
		color: #30383F;
		padding: 0 0 0 24px;
		margin: 10px;
		list-style-image: none;
		list-style-type: none;
	}
	
	div.errorMessage span {
		display: block;
		background: transparent url(/_media/common/images/icons/error.gif) no-repeat left center;
		color: #30383F !important;
		margin: 2px 0 0;
		padding: 0 0 0 24px;
	}

label {
	display: block;
	margin-bottom: 2px;
}

input.text {
	width: 272px;
}

textarea {
	width: 100%;
	font: 12px "Tahoma", "Arial", sans-serif; 
}

input.text.testimonial {
	width: 132px;
}

input.text.medium {
	width: 190px;
}

input.text.short {
	width: 80px;
}

input.text.phone-area, input.text.phone-pre {
	width: 42px;
	margin-right: 2px;
}

input.text.phone-suf {
	width: 60px;
}

div.floatinput {
	margin: 0 12px 0 0;
	padding: 0;
}

a.reset {
	margin-left: 1em;
	line-height: 31px;
	color: #30383F;
}

input, select, textarea {
	margin-bottom: .75em;
}

.nobottom {
	margin-bottom: 0 !important;
}

input.submit {
	background: transparent url(/_media/corp/images/buttons/submitform.gif) no-repeat;
	border: 0;
	width: 182px;
	height: 34px;
	margin: 0;
}

input.submit.calculate {
	background: transparent url(/_media/corp/images/buttons/calculate.gif) no-repeat;
}

input.submit.calcAgain {
	background: transparent url(/_media/corp/images/buttons/calculate-again.gif) no-repeat;
}

input.submit.login {
	width: 142px;
	margin: 12px 0 22px 0 !important;
	background: none;
}

div.buttongroup {
	margin: 12px 0px 58px 0px;
}

.checkboxlist {
	margin: 10px 0;
}
 .checkboxlist td {
 	padding-bottom: 0;
 }

.checkboxlist input {
	float: left;
	margin-right: 1em;
}

.banner.reslib select {
	width: 430px;
	position: absolute;
	left: 24px;
	top: 84px;
	z-index: 100;
}
table.calculator {
	margin-left: 24px;
}

    #obesityCalc table.calculator {
        margin-left: 0 !important;
        width: 100%;
    }

	table.calculator td {
		vertical-align: middle;
		padding-bottom: 0.5em;
		padding-top: 0.5em;
	}
	table.calculator td.label {
		text-align: right;
		width: 240px;
		padding-right: 6px;
	}
	
	table.calculator label, table.calculator .res {
		font-weight: bold;
	}
	table.calculator span.clar {
		color: #A1A6AC;
		padding-left: 8px;
	}	
	table.calculator input.text {
		margin: 0;
	}
	
	table#qualifiers, 
	table.qualifiers {
		float: right;
		border-collapse: collapse;
	}
	
	table#qualifiers th, 
	table#qualifiers td, 
	table.qualifiers th, 
	table.qualifiers td {
		padding: 0;
		vertical-align: top;
		color: #A1A6AC;
		text-align: left;
	}
	
	table#qualifiers td, 
	table.qualifiers td { 
		text-align: right;
		line-height: 1.3em;
	}
	
	table#qualifiers td.bold, 
	table.qualifiers td.bold { 
		text-align: left;
		font-weight: bold;
		padding-left: 6px;
	}
	
    div.fileUploadContainer {
        border:                 1px solid #D6D7D9;
        border-left-width:      0px;
        border-right-width:     0px;
        margin:                 28px 0;
        padding:                24px 0 20px; /* 20 = 24 - 4 (Input's Bottom Margin) */
    }

        div.fileUploadContainer label {
            display: inline;
        }
	    
        div.fileUploadContainer input {
            margin: 2px 0 4px;
        }
        
	    div.fileUploadContainer table.thumbTable td {
	        vertical-align: middle;
	        padding-right:   10px;
	    }

/* ---------------------------------------------------------------------------------------
CALLOUTS
--------------------------------------------------------------------------------------- */
.callout {
	width: 250px;
	margin: 24px 0;
	position: relative;
	overflow: hidden;
}
	.callout.grey {
		background: transparent url(/_media/corp/images/layout/bgs/callout-grey-bottom.gif) no-repeat left bottom;
		padding-bottom: 24px;
	}
	
	.callout.small {
		width: 192px;
		text-align: center;
		margin-top: 0;
	}

	.callout.logos {
		background: transparent url(/_media/corp/images/layout/bgs/callout-small-grey-bottom.gif) no-repeat left bottom;
	}
	
	.callout.statistics {
		background: transparent url(/_media/corp/images/layout/bgs/callout-small-orange-bottom.gif) no-repeat left bottom;
		padding-bottom: 0;
	}
	
	span.statsnumber, span.statscaption {
		display: block;
		margin: 0 auto;
	}
	
	span.statsnumber {
		position: relative;
		top: -10px;
		font-size: 3em;
		line-height: 45px;
		clear: none;
	}
	
	span.statscaption {
		position: relative;
		top: -10px;
		font-size: 1.2em;
		line-height: 1.2em;
	}

	.callout.custserv {
		width: 328px;
		background: transparent url(/_media/corp/images/layout/bgs/contact-us-bottom.jpg) no-repeat left bottom;
		margin-top: 0;
		padding-top: 0;
		padding-bottom: 12px;
	}
	
	.callout.custserv a {
		font-weight: bold;
	}
	
	.callout.custserv h3, h4 {
		margin-bottom: 0;
	}
	
	.callout.custserv span.cshead {
		display: block;
		position: absolute;
		top: 0em; 
		left: 0;
		width: 100%;
		height: 100px;
		margin-bottom: 0;
		background: transparent url(/_media/corp/images/layout/bgs/contact-us-top.jpg) no-repeat 0 0
	}

.callout h3 {
	height: 42px;
}

.callout span.programLookup,
.callout span.practices { /*this is set up to allow image replacement*/
	display: block;
	position: absolute;
	top: 0em; 
	left: 0;
	width: 100%;
	height: 100px;
	margin-bottom: 0;
}

.callout.grey span.programLookup {
	background: transparent url(/_media/corp/images/layout/bgs/callout-grey-top.gif) no-repeat 0 0;
}

.callout.small span.stats {
	display: block;
	position: absolute;
	top: 0em; 
	left: 0;
	width: 100%;
	height: 100px;
	margin-bottom: 0;
	background: transparent url(/_media/corp/images/layout/bgs/callout-small-orange-top.gif) no-repeat 0 0;
}

.callout.small span.parts {
	display: block;
	position: absolute;
	top: 0em; 
	left: 0;
	width: 100%;
	height: 100px;
	margin-bottom: 0;
	background: transparent url(/_media/corp/images/layout/bgs/callout-small-grey-top.gif) no-repeat 0 0;
}

.callout div {
	margin: 16px 20px 0;
}
	
	.callout.small.logos div {
		margin: 0;
		padding: 0;
	}
	
    .callout.small.logos span.parts {
	    display: block;
	    width: 100%;
	    height: 42px;
	    margin-bottom: 0;
	    background: transparent url(/_media/corp/images/layout/bgs/callout-small-grey-top.gif) no-repeat 0 0;
    }
	
	.callout.small.logos div.logosSwf {
		margin-bottom: 3px;
	}

/**************************************************
 * CALLOUT V2
 *
 * Updated 8/12
 *************************************************/
 
    /* Default Callout */
 
		.defaultCallout,
		.purpleCallout,
		.greenCallout,
		.grayCallout {
			width: 248px;
			background: #A1A6AC url('/_media/corp/images/layout/bgs/calloutDefaultTop.gif') no-repeat top center;
			margin-bottom: 24px;
			padding-top: 5px;
		}
		
			.defaultCallout .title,
			.purpleCallout .title,
			.greenCallout .title,
			.grayCallout .title {
				color: #FFF;
				font-size: 17px;
				line-height: 1.35em;
				padding: 0px 8px;
				margin-bottom: 5px;
			}
			
				.defaultCallout .title div,
				.purpleCallout .title div,
				.greenCallout .title div,
				.grayCallout .title div {
                    text-align: center;
				}
				
				/* For FF2 */
				    .defaultCallout .title div span,
				    .purpleCallout .title div span,
				    .greenCallout .title div span,
				    .grayCallout .title div span {
                        position: relative;
                        display: block;
                        top: 0px;
				    }
			
				.defaultCallout .video,
				.purpleCallout .video {
					height: 138px;
					margin-bottom: 2px;
					padding: 0 2px;
				}
			
					.defaultCallout .video *,
					.purpleCallout .video * {
						outline: 0;
					}
		
				.defaultCallout .calloutContent,
				.purpleCallout .calloutContent,
				.greenCallout .calloutContent,
				.grayCallout .calloutContent {
					margin: 2px 2px 0px;
					padding: 12px 12px 10px;
					background: #FFF url('/_media/corp/images/layout/bgs/calloutDefaultContentTop.gif') no-repeat top center;
				}
				
					.calloutContent.videoMenu {
						padding: 12px 12px 10px;
					}
				
					.calloutContent .videoMenuItem{
						color: #30383F;
						line-height: 22px;
					}
				
						.calloutContent .videoMenuItem.active span.videoTitle {
							color: #A1A6AC;
						}
				
						.calloutContent .videoMenuItem a.videoLink {
							font-size: 11px;
							padding-left: 16px;
							background: transparent url(/_media/common/images/icons/bullet-round.gif) no-repeat left center;
							font-weight: bold;
						}
				
							.calloutContent .videoMenuItem.active a.videoLink {
								background-image: url(/_media/common/images/icons/bullet-round-gray.gif);
								color: #A1A6AC;
							}
			
			.defaultCallout .bottom,
			.purpleCallout .bottom {
				height: 5px !important;
				background: transparent url('/_media/corp/images/layout/bgs/calloutDefaultBottom.gif') no-repeat top center;
				overflow: hidden;
			}
			
    /* Purple Callout */
 
		.purpleCallout {
			background-color: #A699CE;
			background-image: url('/_media/corp/images/layout/bgs/calloutPurpleTop.gif');
		}
		
			.purpleCallout .calloutContent {
					padding: 16px 20px;
				background-image: url('/_media/corp/images/layout/bgs/calloutPurpleContentTop.gif');
				}
				
					.purpleCallout .calloutContent.videoMenu {
						padding: 12px 20px 10px;
					}
				
					.purpleCallout .calloutContent .videoMenuItem{
						color: #9B8EC8;
					}
				
						.purpleCallout .calloutContent .videoMenuItem.active span.videoTitle {
							padding-right: 26px;
							background: transparent url(/_media/common/images/icons/videoCamera.gif) no-repeat right center;
							font-weight: bold;
						}
				
						.purpleCallout .calloutContent .videoMenuItem a.videoLink {
							margin-left: 6px;
						}
						
							.purpleCallout .calloutContent .videoMenuItem.active a.videoLink {
								display: none;
							}
			
			.purpleCallout .bottom {
				background-image: url('/_media/corp/images/layout/bgs/calloutPurpleBottom.gif');
			}
			
    /* Green Callout */
    
		.greenCallout {
			background: #7DBA00 url('/_media/corp/images/layout/bgs/calloutGreenTop.gif') no-repeat top center;
		}
		
			.greenCallout .calloutContent {
				padding: 16px 20px;
				background: #FFF url('/_media/corp/images/layout/bgs/calloutGreenContentTop.gif') no-repeat top center;
			}
			
			.greenCallout .bottom,
			.grayCallout .bottom {
				height: 6px !important;
				background: transparent url('/_media/corp/images/layout/bgs/calloutGreenBottom.gif') no-repeat top center;
				overflow: hidden;
			}
			
    /* Gray Callout */
    
		.grayCallout {
		    width: 328px;
			background: #A1A6AC url('/_media/corp/images/layout/bgs/calloutGrayTop.gif') no-repeat top center;
		}
		
			.grayCallout .title {
				margin: 6px 8px 8px;
			}
		
			.grayCallout .calloutContent {
				margin: 2px 3px 0px;
				padding: 12px 12px;
				background: #fff url('/_media/corp/images/layout/bgs/calloutGrayContentTop.gif') no-repeat top center;
			}
	
	            .grayCallout h4 {
	                margin: 0;
	            }
	            
	            .grayCallout ul.fileList {
	                margin: 2em 0 0;
	            }
	
	                .grayCallout ul.fileList li {
	                    margin-bottom: 10px;
	                }
            	
	                .grayCallout ul.fileList span.icon {
	                }
            	
	                .grayCallout ul.fileList span.item {
	                    width: 244px;
	                }
            	
	                    .grayCallout ul.fileList span.item h3 {
	                        height: auto;
	                        margin-bottom: 4px;
	                    }
			
			.grayCallout .bottom {
				background: transparent url('/_media/corp/images/layout/bgs/calloutGrayBottom.gif') no-repeat top center;
			}

/**************************************************
 * DIAGRAM CONTAINER
 *************************************************/
 
    div.diagramContainer {
        overflow: hidden;
    }

/* ---------------------------------------------------------------------------------------
TESTIMONIALS
--------------------------------------------------------------------------------------- */
/*div.testimonial h2 {
	margin: 0 !important;
	padding: 0 !important;
}
*/
div.testimonial p {
	color: #54616E;
}

div.testimonial p.company {
	margin: .3em 0;
	color: #A6ABB1;
}

div.testimonial img.photo {
	float: right;
	margin-left: 24px;
	margin-bottom: 24px;
	display: inline;
}

/* ---------------------------------------------------------------------------------------
RESEARCH LIBRARY
--------------------------------------------------------------------------------------- */
ul.bulleted.research {
	margin-left: 44px;
}

div.difference ul.bulleted.research {
	margin-left: 20px;
}

ul.bulleted.research li {
	margin-bottom: .5em;
}

ul.widespace li {
	margin-bottom: 1.5em;
}

.highlight {
	background: transparent url(/_media/corp/images/layout/bgs/article-highlights-mid.gif) repeat-y;
	width: 328px;
	float: right;
	margin: 0 24px;
	position: relative;
}

.highlight h3 {
	height: 41px;
}

.highlight a {
	font-weight: bold;
	text-decoration: none;
}

.highlight span {
	display: block;
	position: absolute;
	top: 0em; 
	left: 0;
	width: 100%;
	height: 100px;
	margin-bottom: 0;
	background: transparent url(/_media/corp/images/layout/bgs/article-highlights-head.gif) no-repeat 0 0;
}

.highlight div.foot {
	background: transparent url(/_media/corp/images/layout/bgs/article-highlights-foot.gif) no-repeat 0 0;
	height: 70px;
}

.highlight dl {
	display: block;
	margin-left: 1.5em;
	padding-right: 1.5em;
	margin-top: 0;
}

.highlight dl * {
	margin: 0;
}

.highlight dt {
	font-weight: bold;
}

.highlight dd {
	display: block;
	margin-bottom: 1.5em;
}

/* ---------------------------------------------------------------------------------------
SITEMAP
--------------------------------------------------------------------------------------- */

ul#sitemap, ul#sitemap ul.child  {
	margin-top: 0;
	margin-bottom: 0;
}

ul#sitemap ul  {
	margin-left: 18px;
}

ul#sitemap li {
	margin-bottom: .5em;
}

ul#sitemap li.root a {
	list-style-image: url(/_media/common/images/icons/bullet-round.gif);
	font-weight:bold;
}

ul#sitemap ul#child li.branch, ul#sitemap ul#child li.branch a {
	background-image: none !important;
	list-style-type: none !important;
	list-style-image: none !important;
	font-weight:normal;
}

/* ---------------------------------------------------------------------------------------
SIFR
--------------------------------------------------------------------------------------- */
/* These are standard sIFR styles... do not modify */

.sIFR-flash {
	visibility: visible !important;
	margin: 0;
}

.sIFR-replaced {
	visibility: visible !important;
}

span.sIFR-alternate {
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	display: none;
	overflow: hidden;
}

/* Hide Adblock Object tab: the text should show up just fine, not poorly with a tab laid over it. */
.sIFR-flash + div[adblocktab=true] {
  display: none !important;
}

/* These "decoy" styles are used to hide the browser text before it is replaced... the negative-letter spacing in this case is used to make the browser text metrics match up with the sIFR text metrics since the sIFR text in this example is so much narrower... your own settings may vary... any weird sizing issues you may run into are usually fixed by tweaking these decoy styles */

.sIFR-hasFlash h1 {
	visibility: hidden;
}

/*.sIFR-hasFlash h2 {
	visibility: hidden;
	font-family: 'Tahoma', 'Helvetica', 'sans-serif';
	font-size: 20px;
	color: #54616E;
}*/
/*
.sIFR-hasFlash #related h2 {
	visibility: hidden;
	font-family: 'Tahoma', 'Helvetica', 'sans-serif';
	line-height: 1em;
	font-size: 16px;
	color: #54616E;
}*/

.sIFR-hasFlash #tagline1 {
	visibility: hidden;
	font-family: 'Tahoma', 'Helvetica', 'sans-serif';
	font-weight: normal;
	line-height: 1em;
	font-size: 20px;
	color: #858D95;
}
