/* Notes:
tan background in flash on home page is #cccc99
On tools page:
	Add intro text using keywords
	Update to semi-match descriptions from store (not exact duplicates, although templates short description may be unavoidable)
*/
/* Notes for store:
Review terms and conditions
More info on system requirments for software
*/

/* rhythmic unit set at 18px: 12px base font size with 3px above/below */

#print-footer, #print-logo, .printonly { display: none; }

a:link { color: #e88b00; } /* f59300 ff9900 eb8d00 */
a:visited { color: #b38847; } /* 996e2e 9e7e4f 9e855f a6824c a:visited { color: #a2a268; }  */
a:hover, a:active { color: #173c99; } /* must follow the visited def for hover to work */

a:focus { outline: 1px dotted #173c99; }

a.top {
	display: block;
	font-size: 83%; /* 1/12 x 10 */
	line-height: 1.8; /* 18/10 */
	text-align: right; }

address {
	margin: -0.75em 0em 1.5em 3em;
	font-style: normal; }

.alignctr { text-align: center; }
.alignrgt { text-align: right; }
.alignlft { text-align: left; }

.authorizenetseal { float: right; }

b { font-weight: bold; }

#banner {
	background: transparent url(../images/bkgd-banner.png) no-repeat scroll top;
	color: #000000;
	height: 102px; } /* was masthead */

#banner-links { /* was masthead-links */
	display: block;
	float: right;
	width: 125px;
	font-size: 83.3%; /* 1/12 x 10 */
	line-height: 1.8; /* 18/10 */
	margin-top: 4.3em;
	padding-right: 2em; /* for ie, works better than margin */ 
	text-transform: uppercase;
	font-weight: bold;
	text-align: right;
	vertical-align: bottom; }
#banner-links a {
	display: block;
	color: #000000;
	text-decoration: none; }
#banner-links a:hover { color: #ffffff; }

#banner-logo {
	margin: 20px 12px 0px 22px;
	float: left;
}

.biopic { float: right; margin: 0em 0em 1em 1.5em; }

blockquote {
	margin: 0.75em 3em 1.5em 3em;
	quotes: "\201C" "\201D"; }

blockquote:before, q:before { content: open-quote; }
blockquote:after, q:after { content: close-quote; }


body {
	font: normal normal normal 75%/1.5 Verdana, Helvetica, sans-serif; /* 69% = 11px; 75% = 12px; line height = 18/12 */
	color: #ffffff;
	background-color: #3a5087; /* 3f558c 365091 355096; 355094 */
}

body.demowin {
	position: absolute;
	top: 0px;
	left: 0px;
	color: #000000;
	background-color: #ffffff;
	font: normal normal normal 75%/1.5 Verdana, Helvetica, sans-serif; 
	text-align: center;
	vertical-align: top; }

#bottom {
	height: 34px;
	background: transparent url(../images/bkgd-btm.png) no-repeat scroll top;
	font-size: 83.3%;
	text-align: center; }
#bottom p { margin: 0; padding-top: 3px; }


/* ----------- BUTTONS ------------------------ */
.btn-demo {
	display: block;
	width: 183px;
	height: 31px;
	background: transparent url(../images/btn-demo-off.png) no-repeat scroll center;
	margin: 0em auto 0.375em auto; }
.btn-demo:hover {
	background: transparent url(../images/btn-demo-on.png) no-repeat scroll center;
	cursor: pointer; }

.btn-demo-short {
	display: block;
	width: 119px;
	height: 31px;
	background: transparent url(../images/btn-demo-short-off.png) no-repeat scroll center;
	margin: 0em auto 0.375em auto; }
.btn-demo-short:hover {
	background-image: url(../images/btn-demo-short-on.png);
	cursor: pointer; }

.btn-hm-quiz {
	display: block;
	width: 202px;
	height: 46px;
	background: transparent url(../images/btn-hm-quiz-off.png) no-repeat scroll center;
	margin: 1.5em auto 0.75em auto; }
.btn-hm-quiz:hover {
	background: transparent url(../images/btn-hm-quiz-on.png) no-repeat scroll center;
	cursor: pointer; }

.btn-newsletter, .btn-hm-newsletter {
	display: block;
	width: 144px;
	height: 46px;
	background: transparent url(../images/btn-newsletter-off.png) no-repeat scroll center;
	float: right;
	margin: 0em 0em 0.375em 2em; }
.btn-hm-newsletter {
	background: transparent url(../images/btn-hm-newsletter-off.png);
	float: none;
	margin: 0.75em auto 0.75em auto; }
.btn-newsletter:hover {
	background-image: url(../images/btn-newsletter-on.png);
	cursor: pointer; }
.btn-hm-newsletter:hover {
	background-image: url(../images/btn-hm-newsletter-on.png);
	cursor: pointer; }

.btn-order {
	display: block;
	width: 94px;
	height: 31px;
	background: transparent url(../images/btn-order-off.png) no-repeat scroll center;
	margin: 0em 0em 0.375em auto; }
.btn-order:hover {
	background-image: url(../images/btn-order-on.png);
	cursor: pointer; }

.btn-right {
	float: right;
	margin: 0.75em 0em 0.75em 2em; }

/* ----------- END BUTTONS ------------------------ */

.callout {
	float: right;
	max-width: 25%;
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size: 1.25em; /* 15pt */
	line-height: 1.2; /* 18/15 */
	color: #666666; /*2d4b96 3a5087 */
	background-color: #f7f5f2; /*f2f0ed f7f5eb fcf8f2 faf3e8 f0f4ff fcf7f0 fcfaf0 */
	margin: 0em 0em 1.5em 3em;
	padding: 0.33em 0.67em 0.33em 0.67em;
	border-top: 3px double #666666;
	border-bottom: 1px solid #666666; /* 3a5087 80754d bfb073 */ }

.callout q { font-weight: bold; margin: 0; quotes: none; }

.callout cite {
	display: block;
	font-size: 80%; /* 1/15 x 12 */
	line-height: 1.5; /* 18/12 */
	margin: 0.5em 0em 0em 0em;
	text-align: right; }

.callout-linkbox {
	float: right;
	font-size: 91.6%; /* 1/12 x 11 */
	line-height: 1.64; /* 18/11 */
	width: auto;
	max-width: 25%;
	color: #000000;
	background-color: #f2f7ff;
	font-weight: bold;
	margin: 0em 0em 0.82em 3.27em; /* bottom: line height / 2; left 2x line */
	padding: 0.36em 0.73em 0.36em 0.73em; /* 1/11 x 4px, 1/11 x 8px */
	border: 1px solid #cccccc; }

.callout-linkbox a {
	display: block;
	text-decoration: none; }


cite {
	display: block;
	margin: -0.75em 0em 1.5em 5em;
	font-style: italic; }
cite:before { content: '\2014  '; }

#content {
	color: #000000;
	background-color: #ffffff;
	padding: 1.5em 45px 1.5em 45px; /* top so nothing is right up against testimonial bar or menu bar */
}

#demo { display: none; /* for the placeholder div that allows demo script to work */ }

.developer {
	font-size: 83.3%; /* 1/12 x 10 */
	line-height: 1.8; /* 18/10 */
	color: #cccccc;
	margin-top: 1.8em;
	text-align: center; }
.developer a:link, .developer a:visited { color: #cccccc; }
.developer a:hover, .developer a:active { color: #ffffff; }

/* use for comments/questions/issues that need to be fixed. This style should never show up on the live site. */
.fix { color: #ff00ff; }

.fltrgt { float: right; }
.fltlft { float: left; }


/* -------------- FORM ELEMENTS -----------------*/
form {
	font-size: 91.6%; /* 1/12 x 11 */
	line-height: 1.64em; /* 18/11 */
	margin: 0em 0em 1.5em 0em; } 

fieldset {
	padding: 1.5em 0.91em 0em 0.91em; /* 1/11 x 10px */
	border: 1px solid #2d4b96; }
fieldset.contact-form { width: 54%; }
fieldset.nwsltr-form { width: 41%; }

input, textarea {
	font-size: 100%;
	font-family: Verdana, Helvetica, sans-serif; }
input#Reset { margin-right: 3em; }
label { font-weight: bold; }
legend {
	font-size: 1.18em; /* 1/11 x 13px */ 
	line-height: 1.38em; /* 18/13 */
	color: #2d4b96;
	font-weight: bold; }

/* -------------- END FORM ELEMENTS -----------------*/


h1, h2, h3, h4 {
	background-color: transparent;
	color: #2d4b96; 
	font-weight: bold; }

/* For headings: 2.5x line height = total margins; 75% for top */
h1 {
	font-size: 1.5em; /* 1/12 x 18px; */
	line-height: 1; /* 18/18 */
	margin-top: 0.375em; /* 1 x 2.5 x 75% minus 1.5 top padding on #content div */
	margin-bottom: 0.625em; /* 1 x 2.5 minus top margin */ 
	text-transform: uppercase; }

h2 {
	font-size: 1.25em; /* 1/12 x 15px*/
	line-height: 1.2; /* 18/15 */
	margin-top: 2.25em; /* 2.5 x 1.2 x 75%*/
	margin-bottom: 0.75em; /* 2.5 x 1.2 - top margin */
}

h3 {
	font-size: 1.08em; /* 1/12 x 13px*/
	line-height: 1.38; /* 18/13 */
	margin-top: 2.59em; /* 1.38 x 2.5 x 75% */
	margin-bottom: 0.86em; /* 1.38 x 2.5 - top margin */ }

h4 { /* normal font-size and line height */
	font-size: 1em;
	line-height: 1.5em;
	margin-top: 2.81em; /* 1.38 x 2.5 x 75% */
	margin-bottom: 0.94em; /* 1.38 x 2.5 - top margin */ }

i { font-style: italic; }

.icon { vertical-align: -1px; }
/* no class on template pic because it's too wide to float left */

img.product-pic { float: left; margin: 0px 12px 4px 0px; }

.indent { margin-left: 3em; }

li { margin-top: 0.75em; }

.linklist {
	list-style: none outside none;
	margin-left: 0em;
	margin-top: 0.75em; }


/* --------------------- ROLLOVER MENUS ----------------------- */
#topnav {
	position: relative;
	height: 22px;
	background: #666666 url(../images/bkgd-topnav.png) no-repeat scroll top;
	color: #ffffff;
	text-align: center;
	vertical-align: middle; }
#menu {
	width: 760px;
	font-size: 91.6%;
	line-height: normal;
	margin-left: 13px; 
	font-weight: bold;
	text-transform: uppercase;
	text-align: center;
}
#menu ul {
	float: left;
	margin: 0px;
	padding: 0px;
	list-style: none outside none;
	border-left: 1px solid #000000;
}
#menu ul + ul { border-left: 0px none #000000; }
#menu a {
	display: block;
	color: #ffffff;
	text-decoration: none; }
#menu li {
	margin: 0px;
	padding: 4px 10px 4px 10px;
	border-right: 1px solid #000000;
	position: relative; }
#menu li:hover, #menu li.on { background: transparent url(../images/bkgd-topnav-on.png) repeat-x scroll top; }
#menu li.on a { cursor: default; }
#menu li ul {
	position: absolute;
	left: -999em;
	width: 100%;
	margin-left: -11px;
	margin-top: 4px;
	border-top: 1px solid #000000;
	border-bottom: 1px solid #000000;
	border-left: 1px solid #000000;
	background: #faa423;
	text-transform: none; }
#menu li:hover ul, #menu li.sfhover ul { left: auto; }
#menu li ul li { padding: 0px; }
#menu li ul li:hover { background: none; }
#menu li ul li a {
	width: 100%;
	padding: 4px 0px 4px 0px;
	display: block; }

#menu li ul li a:hover {
	color: #2d4b96;
	background-color: #ffffff; }

#menu li ul li.on {
	color: #2d4b96;
	background-color: #ffffff;
	background-image: none; }

#menu li ul li.on a { color: #2d4b96; cursor: default; }

#menu li.onlinked a { cursor: pointer; }

/* ------------ END ROLLOVER MENUS -----------------------*/


/* ------------------ NEWSLETTER STYLES ----------------- */
/* newsletter uses larger rhythmic unit of 20 px: 12px plus 4px above and below */
.nwsltr-content {
	border: 1px solid #000000;
	padding: 1.5em 1.5em 0em 1.5em; }

.nwsltr-content p { margin-bottom: 1.67em; }
.nwsltr-content li { margin-top: 0.83em; }
.nwsltr-content ul { margin: -0.83em 0em 1.67em 3em;}
.nwsltr-content ol { margin: -0.83em 0em 1.67em 3em;}
.nwsltr-content ol.tip {
	list-style-type: none;
	margin-left: 1.67em; }
.nwsltr-content ol.tip li:before { content: "Tip #"; }

.nwsltr-content .spaceabove { /* For ul or ol that follows a head or other element with less than a regular line space for the bottom margin. */
	margin-top: 0em; }

.nwsltr-content h2 {
	font-size: 1.33em; /* 1/12 x 16px*/
	line-height: 1.13; /* 18/16 */
	margin-top: 2.12em; /* 2.5 x 1.2 x 75%*/
	margin-bottom: 0.71em; /* 2.5 x 1.2 - top margin */ }

.nwsltr-content h2.nwsltr-lead { margin-top: 0em; }

.nwsltr-content h3 {
	font-size: 1em; /* 1/12 x 12px*/
	line-height: 1.5; /* 18/12 */
	margin-top: 2.81em; /* 1.5 x 2.5 x 75% */
	margin-bottom: 0.94em; /* 1.5 x 2.5 - top margin */ }

p.nwsltr-issue {
	color: #ffffff;
	background: #3a5087;
	margin: 0;
	padding: 0.42em 0.83em 0.3em 0.83em; /* 1/4 normal line for top/bottom. 0.3 for bottom makes it look  even */
	font-weight: bold; }

/* for box list at side of page */
.nwsltr-list {
	clear: both;
	float: right;
	width: auto;
	list-style: none outside none;
	border: 1px dashed #3a5087;
	padding: 0.42em 0.83em 0.42em 0.83em;
	margin: 1.2em 0em 0em 0em; }
.nwsltr-list li { margin: 0; }
.nwsltr-list a { text-decoration: none; }
.nwsltr-list li.on a { font-weight: bold; color:#000000; cursor: default; }

.nwsltr-page {
	width: 577px; 
	font-family: Georgia, Times, serif;
	line-height: 1.67;
	margin: 3.13em 0em 1.67em 0em; /* top is 2.5 line x .75 */ }

/* ------------------ END NEWSLETTER STYLES ----------------- */

ol {
	margin: -0.75em 0em 1.5em 3em;
	list-style-type: decimal; }

p {
	/* margin: 10px 0px 14px 0px; */
	margin-top: 0em;
	margin-bottom: 1.5em; } /* rhythmic unit set at 17px: 12px with 2.5 above/below */

#page-container {
	width: 785px;
	margin: 0.75em auto 1.5em auto;
	padding-bottom: 0.75em;
	color: #000000;
	background-color: transparent;
} 

#page-block {
	background: transparent url(../images/bkgd-pageblock.png) repeat-y scroll top;
	padding-left: 13px;
	padding-right: 12px; }

.price {
	float: left;
	margin: 0.75em 1em 0.75em 0em; 
	font-weight: bold; }

.pubtitle { font-style: italic; }

q { quotes: "\201C" "\201D"; }

q:before { content: open-quote; }
q:after { content: close-quote; }


.spaceabove { /* For ul or ol that follows a head or other element with less than a regular line space for the bottom margin. */
	margin-top: 0em; }

.sptitle { font-variant: small-caps; }

strong { font-weight: bold; }

sup { font-size: 83.3%; vertical-align: 3px; }

#testimonial {
	background: transparent url(../images/bkgd-pageblock.png) repeat-y scroll top;
	text-align: center; }

#text-links {
	clear: both;
	height: 45px;
	font-size: 83.3%; /* 1/12 x 10 */
	line-height: 1.8; /* 18/10 */
	color: #cccccc;
	background: #666666 url(../images/bkgd-textlinks.png) no-repeat scroll top;
	font-weight: bold;
	text-align: center; }
#text-links a { color: #ffffff; text-decoration: none; }
#text-links a:hover { color: #ffcc80; text-decoration: none; }
#text-links .on { color: #ffcc80; }
#text-links p { margin: 0; padding-top: 0.5em; } /* has to be in a p or the positioning down of the text won't work */

ul {
	margin: -0.75em 0em 1.5em 3em;
	list-style: disc outside url(../images/bullet.png); }

/* TABLE DEFINITIONS */
/* all pages */
td, th { text-align: left; vertical-align: top; }
th { font-weight: bold; }

/* Four-col TABLE on consulting page */
table.fourcol { width: 100%; margin: 0px 0px 8px 0px; }
table.fourcol td, table.fourcol th {
	padding: 6px 6px 6px 6px;
	border-right: 1px dotted #000000;
}
table.fourcol th {
	color: #000000;
	background: #faf3e8;
	vertical-align: middle;
}
table.fourcol th.even { color: #000000; background: #f0f4ff; }
table.fourcol th h3 { margin-top: 0px; margin-bottom: 0px; }
table.fourcol .last { border-right: 0px none #ffffff; }
/* Product table on tools page */
table.toolsbox {
	margin-top: 20px;
	margin-bottom: 12px;
	border: 1px solid #cccccc;
	width: 100%;
}
table.toolsbox td { padding: 8px 10px 8px 10px; font-size: 88%; }
table.toolsbox td h2 {
	margin-top: 0px;
	margin-bottom: 6px;
	text-align: center;
}
table.toolsbox .cntrcol {
	border-left: 1px solid #cccccc;
	border-right: 1px solid #cccccc;
}
/* for .toolsbox table only */
td.lftcol { width: 35%; }
td.cntrcol { width: 35%; }
td.rgtcol { width: 30%; }

table#orders { width: 100%; }


table.data { margin-bottom: 1.5em; width: 100%; }
.data th { vertical-align: middle; }

.data th, .data td { /* first column */
	width: 34%;
	padding: 0.375em 0.75em 0.375em 0.75em; /* 1/4 line height for top/bottom; 1/2 line height for left/right */
	color: #000000;
	background-color: #faf3e8; }

.data th + th, .data td + td { /* second column */
	width: 66%;
	border-left: 1px dotted #000000; }
.data td, .data td + td { background-color: #ffffff; }

.data tr + tr td, .data tr + tr + tr + tr td { background-color: #ffffff; } /* 2nd, 4th rows */
.data tr + tr + tr td, .data tr + tr + tr + tr + tr td { background-color: #f0f4ff; } /* 3rd, 5th rows */


table.fcb {
	background-image: url(../images/fcbgrid.png);
	background-repeat: no-repeat;
	width: 528px;
	height: 412px;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 92%;
	line-height: 1.3em;
}

.fcb td.grid1, .fcb td.grid2 { padding-top: 30px; padding-bottom: 8px; }
.fcb td.grid3, .fcb td.grid4 { padding-top: 10px; padding-bottom: 18px; }

.fcb td.grid1, .fcb td.grid3 { padding-left: 30px; padding-right: 25px; width:50%; }

.fcb td.grid2, .fcb td.grid4 { padding-right: 40px; padding-left: 15px; }

.fcb p {
	margin-top: 0.75em;
}

/* ---------------- HOME PAGE LAYOUT ----------------*/

#anim-col {
	float: left; 
	width: 304px;
	background-color: #cccc99;
	color: #000000;
	text-align: center;
	min-height: 645px;
}

#anim-box {
	margin-top: 22px;
	border-bottom: thin solid #000000;
	z-index: 5; }

#content-home {
	color: #000000;
	background-color: #ffffff; }

#hm-lftcol { margin-bottom: 0.709em; text-align: center;  }

#text-col { margin-left: 304px; }

#text-box { padding: 2.13em 1.417em 0em 1.417em; }

#text-box h1 { margin-top: 0em; }

#text-box h2 { 
	margin-top: 0em;
	margin-bottom: 1.5em; /* 2x normal bottom margin of 0.75 */ }

/* Two-col problem/solution TABLE on home page */
table.twocol { margin-bottom: 1.5em; width: 100%; }
table.twocol th, table.twocol td {
	width: 40%;
	padding: 0.375em 0.75em 0.375em 0.75em; /* 1/4 line height for top/bottom; 1/2 line height for left/right */
	color: #000000;
	background-color: #faf3e8; }

table.twocol th + th, table.twocol td + td {
	width: 60%;
	border-left: 1px dotted #000000;
	color: #000000;
	background-color: #f0f4ff; }

table.twocol th { vertical-align: middle; }

table.twocol td, table.twocol td + td { background-color: transparent; }

table.twocol th h3 { margin-top: 0px; margin-bottom: 0px; }

table.twocol td ul { margin: -0.75em 0em 0em 2.5em; }

.hm-p1, .hm-p2, .hm-p3 {
	margin-left: 95px;
	margin-top: -3px;
	font-weight: bold;
}
.hm-p2 { margin-left: 120px; margin-top: -7px; }
.hm-p3 { margin-left: 145px; margin-top: -7px; }


/* ---------------- END HOME PAGE LAYOUT ----------------*/

