/* @override http://ffstore.mcg/css/base.css */

body, html, div, span, p, br, h1, h2, h3, h4, h5, h6, b, strong, font, blockquote, i, em, a, hr, table, tr, td, ul, li {
	padding: 0;
	margin: 0;
}

body, html {
	height:  100%;
}

.ffSite {
	width: 778px;
	margin: 0px auto 48px auto;
	/*padding: 12px;*/
	background-color: #ffffff;
	border: 1px solid #ccc;
	/*background-image: url(/site_graphics/temp.jpg);*/
}

.ffSite a, .ffSite a:visited {
	text-decoration: none;
}

.ffSite a:hover, .ffSite a:visited:hover {
	text-decoration: underline;
}

div, td {
	font-family: 'Lucida Grande', Geneva, Verdana;
	font-size: 12px;
	line-height: 15px;
}

img { border: 0; }

table {
	border-collapse: collapse;
	border-spacing:0;
	width: 100%;
}

.hr {
	background-color: #6f86a5;
	height: 1px;
	overflow: hidden;
	margin: 12px 0px;
}

.hr hr {
	display: none;
}

.ffMain {
	background-color: #e8e8e8;
	background-image: url(/site_graphics/background.gif);
	margin: 24px 0px;
}

h4 {
	font-size: 12px;
}

.floatFix {
	clear:  both;
}

.siteHeader {
	padding: 12px;
}

.ffMenu {
	border-bottom:  4px solid #10356a;
}

.ffMenu td {
	background-repeat: repeat-x;
}

.menuSpacer {
	width: 1px;
	background-color: #fff;
}

.menuProductsCol, .menuAccountCol, .menuOrderCol {
	background-image: url(/site_graphics/menuBackground.jpg);
	background-color: #182f5b;
	width: 150px;
}

.menuLogoCol {
	background-image: url(/site_graphics/logo.jpg);
	background-color: #182f5b;
	width: 301px;
	text-align: center;
}

.siteHeader h4 {
	margin: 12px;
	color: #fff;
}

.siteHeader ul {
	list-style: none;
	margin: 12px;
}

.siteHeader ul li a, .siteHeader ul li a:visited, .menuBreadCrumbTrail a, .menuBreadCrumbTrail a:visited {
	color: #cad2dd;
	text-decoration: none;
	font-weight:  bold;
}

.menuBreadCrumbTrail a, .menuBreadCrumbTrail a:visited {
	font-weight: normal;
}

.siteHeader ul li a:hover, .siteHeader ul li a:visited:hover {
	color: #fff;
	text-decoration: underline;
	font-weight:  bold;
}

.siteHeader ul li {
	color: #cad2dd;
}

.menuStrapLine {
	border-top:  1px solid #ffffff;
	border-bottom:  1px solid #ffffff;
	background-image: url(/site_graphics/strapLineBackground.jpg);
	padding: 12px 12px 12px 44px;
	color: #10356a;
	font-size: 10px;
	text-transform: uppercase;
}

.menuBreadCrumbTrail {
	background-color: #c0c9d5;
	border-top:  1px solid #ffffff;
	border-bottom:  1px solid #ffffff;
	padding: 12px;
	color: #10356a;
}

.menuBreadCrumbTrail div {
	font-size: 10px;
}

.menuBreadCrumbTrail div a, .menuBreadCrumbTrail div a:visited {
	color: #10356a;
}

.menuBreadCrumbTrail div a:hover, .menuBreadCrumbTrail div a:visited:hover {
	text-decoration: underline;
}

.pageCols {
	height: auto !important; /* for modern browsers */
	height: 400px; /* for IE5.x and IE6 */
	min-height: 400px; /* for modern browsers */
/*	background-image: url(/site_graphics/mainBackground.jpg);
	background-repeat: repeat-x;
	background-color: #c8d0db;*/
	padding: 12px 12px;
}

.siteFooter {
	padding: 24px 0px 10px 12px;
}

.siteFooter {
	padding: 24px 12px 12px 12px;
}
.siteFooter td {
	font-size: 10px;
}

.siteFooter {
	font-size: 10px;
	background-image: url(/site_graphics/footerBackground.jpg);
	background-repeat: repeat-x;
	color: #335;
}

.siteFooter h4 {
	font-size: 10px;
}
.siteFooter ul {
	list-style: none;
}

.pageGrid a, .pageGrid a:visited {
	color: #10356a;
}

.pageGrid h2 {
	font-size: 18px;
	margin-bottom: 18px;
	font-size: 24px;
	line-height: 28px;
	padding: 0 0 0 12px;
	margin: 0 0 24px 0;
}

.homeBanner {
	padding-bottom: 12px;
}

.brandLogo {
	float: right;
	width: 150px;
	text-align: center;
}
.productTypeNotes {
	margin: 0px 0px 24px 12px;
	width: 428px;
}

table.productThumbs {
	margin: 12px 0px;
	width: auto;
}

.productThumbs td {
	padding-bottom: 12px;
	width: 151px;
}

.productThumbs td a, .productThumbs td span {
	margin: 0px 12px 0px 12px;
	color: #335;
}

.productThumbs td a {
	font-weight: bold;
	display: block;
	margin-bottom: 4px;
}

.productThumbs td a img {
	margin-bottom: 8px;
	display: block;
	border: 1px solid #10356a;
}

.productThumbs td a:hover img {
	border: 1px solid #1291cd;
}

.productThumbs td span {
	display: block;
	font-size: 10px;
}

.productCol2 {
	width: 453px;
}

.productCol1, .productCol2 {
	padding-bottom: 24px;
}

.productFullsizeImage {
	background-color:  #fff;
	border: 1px solid #6f86a5;
	padding: 12px;	
}

.productFullsizeImage span {
	display: block;
	margin-top: 8px;
	color: #000;
}
.productOptions {
	margin: 0 12px 24px 0;
}

.productOptions h4 {
	margin: 0px 0px 12px 12px;
}
.productRow {
	border-top: 1px solid #6f86a5;
}

.productRow:hover {
/*	background-color: #f2f8f2;*/
}

.productRowPrice {
	white-space: nowrap;
}

.productOptions td {
	padding: 6px 12px;
}

.productOptions form {
	text-align: right;
	display: inline;
}


.footerProductsCol, .footerAccountCol, .footerOrderCol {
	width: 150px;
	border-left: 1px solid #f0f0f0;
	color: #335;
}

.siteFooter h4, .siteFooter ul {
	padding: 0 12px;
}

.siteFooter ul {
	margin-bottom: 24px;
}

.siteFooter a, .siteFooter a:visited {
	color: #779;
	text-decoration: none;
}

.siteFooter a:hover, .siteFooter a:visited:hover {
	text-decoration: underline;
}

div.productImageThumbs {
	margin-top: 12px;
	padding: 0 0 0 12px;
	color: #000;
	font-size: 10px;
}



ul.productImages {
	padding: 0;
	margin: 0 0 6px 0;
}

.productImageThumbs ul li {
	display: inline;
	margin-right: 8px;
}

.productImages img {
	border: 1px solid #6f86a5;
}

.productNotes {
	margin: 0 24px 0 12px;
}

.contentCol {
	width: 151px;
	color: #335;
}

.contentCol2Span {
	width: 302px;
}

.contentCol3Span {
	width: 453px;
}

.contentCol4Span {
	width: 605px;
}

.pageGrid h4 {
	margin: 0px 12px 12px 12px;
}

.productDetails {
	margin: 12px 24px 12px 12px;
	font-size: 11px;
	line-height: 15px;
	color: #335;
}


h4.relatedProducts {
	margin-top: 12px;
	color: #335;
}

.orderContentsTable {
	width: 100%;
}

.orderContentsTable th {
	font-size: 11px;
	text-align: left;
	padding:  0px 12px 12px 12px;
}

th.thRight {
	text-align: right;
}


.orderContentsTable th strong {
	display: block;
	font-size: 110%;
}

.orderContentsTable td, .orderContentsTable td td {
	padding: 0px 12px;
	font-size: 125%;
	line-height: 125%;
}

.orderItemName {
	font-weight: bold;
	padding: 0px 12px;
}

.orderItemTotal, .orderItemPrice {
	text-align: right;
	font-size: 100%;
	white-space: nowrap;
}

.orderItemQuantity {
	text-align: right;
}

.itemQuantity {
	text-align: right;
	width: 2em;
}

.genericContentBlock {
	padding: 0px 12px;
}

.genericContentBlock h3 {
	margin-bottom: 12px;
}

.articleText {
	width: 440px;
	margin-bottom: 48px;
}

.message, .tip {
	padding: 12px;
	background-color: #fcc;
	margin-bottom: 24px;
	color: #866;
	font-size: 11px;
	border: 1px solid #ebb;
}

.tip {
	background-color: #cfc;
	color: #686;
	border: 1px solid #beb;
}

.message ul {
	list-style-type: disc;
	margin: 0px 24px;
	margin-left: 24px;
	font-weight: bold;
}


#logInForm table, .userForm table {
	width: auto;
}

#logInForm label, .userForm label {
	width: 127px;
	margin-right: 22px;
	display: block;
	text-align: right;
	font-weight: bold;
}

#logInForm input, .userForm input {
	padding: 5px;
	border: 1px solid #6f86a5;
	font-size: 12px;
	font-family: 'Lucida Grande', Geneva, Verdana;
	width: 268px;
	margin: 6px 0px;
}

.userForm select {
	font-size: 12px;
	font-family: 'Lucida Grande', Geneva, Verdana;
	width:  268px;
	margin: 6px 0px;
}

small {
	font-weight: normal;
	color: #666;
}

label small {
	display: block;
}



input.checkbox {
	width:  auto !important;
	border-width: 0px;
	background-color: transparent;
	margin: 0px;
}

input.button {
	width:  auto !important;
	background-color: #10356a;
	font-weight: bold;
	border-width: 0px !important;
	color:  #fff;
}

input.button:hover {
	background-color:  #ff0000;
	color:  #fff;
}

#orderForm input, #orderForm select {
	border: 1px solid #6f86a5;
	padding: 5px;
	font-size: 12px;
	font-family: 'Lucida Grande', Geneva, Verdana;
}

#orderForm select {
		margin: 6px 0px 6px 12px;
		padding:  0px;
}

.orderFormButtons {
	text-align: right;
}

.orderFormButtons input {
	margin: 0 0 12px 12px;
}

.userForm .contentCol {
}

.contentCol h4, .siteFooter .contentColSpan2 {
	color: #335;
}

.contentCol p {
	padding:  0px 12px;
	font-size: 11px;
	color: #335;
}

input#cvs {
	width: 3em;
	float: left;
	margin-right: 1em;
}
small.cvsNote {
	display: block;
	line-height: 14px;
	padding-top: 5px;
}

.newsletterCheckbox {
	margin: 6px 12px 0px 6px;
}

.newsletterCheckbox .checkbox {
	margin-right: 6px;
}

.button#payNowButton {
	width: 100%;
	margin: 0;
	font-size: 24px;
}

table.orderHistory {
	margin-top: 2em;
	border-left-width: 0px;
	border-right-width: 0px;
}

.orderHistory tr  {
	background-color: #fff;
}

.orderHistory tr.odd {
	background-color: #f8f8ff;
}

.orderHistory td {
	border-top:  1px solid #cfd7e1;
	padding: 8px;
}

.orderHistory th {
	background-color: #cfd7e1;
	padding:  8px;
}

.orderHistory td ul, .orderHistory td li {
	list-style: none;
}

.orderHistory td.orderNo {
	padding-left: 0px;
}

.orderHistory td .hr {
	background-color: #cfd7e1;
}

table.orderSummary {
	width: 100%;
}

.orderSummaryBilling, .orderSummaryDelivery {
	width: 302px;
}

.orderSummaryPayment {
	width: 150px;
}

.threeDSecureFormHolder {
	border: 1px solid #6f86a5;
	width: 390px;
	background-color: #fff;
}

.orderContentsHeader {
	text-align: left;
}

.orderContentsHeader th h4 {
	margin-right: 0;
}


.orderItemName h3 {
	margin-bottom: 0;
	line-height: 20px;
	font-size: 16px;
}

.purchaseDetails a, .purchaseDetails a:visited {
	white-space: nowrap;
}

.paymentStrap {
	background-color: #fff;
	padding: 0px 24px 12px 24px;
}

.paymentStrap .hr {
}

.paymentStrap table {
	width: auto;
}

.paymentStrap td {
	font-size: 11px;
	padding: 0px;
	color: #10356a;
}


input.button, #orderForm input.button, .userForm input.button, #logInForm input.button {
	width: auto !important;
	background-color: #10356a;
	font-weight: bold;
	border: 0px solid #10356a;
	color:  #fff;
	padding: 4px 8px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	font-family: 'Lucida Grande', Geneva, Verdana;
	font-size: 12px;
}

input.button:hover, #logInForm input.button:hover, #orderForm input.button:hover {
	background-color:  #cc0000;
	color:  #ffffff;
	border-width: 0px solid #000;
}

.orderHistory a.button, .orderHistory a.button:visited {
	background-color: #244386;
	color: #ffffff;
	float: left;
	margin-right: 20px;
	font-weight: bolder;
	padding: 5px 8px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border: 0px solid #000;
}

.button#payNowButton {
	width: 100%;
	margin: 0;
	font-size: 24px;
}

.button:hover {
	border: 0px solid #1192ce !important;
	background-color: #1192ce;
}


/*Software Activation styles*/ 

.form_holder{
	float: left;
 	width:500px;
}

.form_title{
	font-weight:bold;
	font-size:22px;
	margin-bottom:15px;
	color:#003366;
}

#activation_form {
	margin-top: 10px;
}

.activation_table tr{
	padding:5px;
	margin-bottom:4px;
	margin-top:4px;
	border-bottom:#CCCCCC solid 1px;
}

.activation_table td{
	padding:5px;
}

.activation_table select {
	width:180px;
}

.activation_sidebar{
	margin-top: 100px;
	margin-right: 20px;
	text-align: center;
	float: right;
}

.buyButton {	
	margin-top: 8px;
	border-top:#CCCCCC solid 1px;
	text-align: center;	
	padding: 25px;
}

.buyButton a {
	font-weight: bold;
	padding: 6px;	
	font-size: 16px;
	border: 3px solid #b2becf;
	background-color: #10356b;
	color: #ffffff !important;
}	

.val_error{
	background-color:#FF0000;
	padding:10px;
	color:#FFFFFF;
	margin:10px 0px 5px 0px;
	font-size:14px;
}

.val_error a {
	color:#000;
	text-decoration: underline;
}

a.checkoutAmendButton,
a.checkoutAmendButton:visited {
	background-color: #c0c9d5;
	color: #10356a;
	padding: 4px 8px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

a.checkoutAmendButton:hover,
a.checkoutAmendButton:visited:hover {
	color: #c0c9d5;
	background-color: #10356a;
	text-decoration: none;
}

input.payment-card {
	background: url(../site_graphics/payment-card.png) left top no-repeat;
}

input.payment-paypal {
	background: url(../site_graphics/payment-paypal.png) left top no-repeat;
}

input.payment-card:hover, input.payment-paypal:hover {
	background-position: left -40px;
}


.payment-methods {
	float: right;
	width: 134px;
	margin-right: 17px;
}

.payment-methods h2 { padding: 0; }

.payment-methods form {
	clear: left;
	float: left;
	width: 134px;
	margin: 10px 0 0 0;
}

.checkout-confirm {
	width: 555px;
	padding-right: 20px;
	float: left;
	border-right: 1px solid #c2cad7;
}