/* CSS Imports
--------------------------------------------------------------------------------------- */
@import url("speco-nav.css");
@import url("lightbox.css");

/* Global Containers
--------------------------------------------------------------------------------------- */
* {
	margin: 0;
	padding: 0;
	text-shadow: rgba(0,0,0,.01) 0 0 0; /* Safari Font Smoothing Fix */
}

body {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	color: #000;
	background: #fff;
	margin: 0;
	padding: 0;
	text-align: center;
}

#container {
	width: 825px;
	margin: 0 auto 20px auto;
	text-align: left;
}

.floatleft {
	float: left;
}

.floatright {
	float: right;
}

.clear {
	clear: both;
}

.hidden {
	visibility: hidden;
}

clearfix:after {
	content: ".";  
	display: block; 
	height:  0;  
	clear: both; 
	visibility:  hidden;
}

/* Link Styles
--------------------------------------------------------------------------------------- */
a, a:link {
	color: #fa3e05;
	text-decoration: none;
}

a:visited {
	color: #fb7850;
}

a:hover {
	text-decoration: underline;
}

a:active {
	color: #000;
	text-decoration: underline;
}

a img {
	border: 0;
}

/* Header Layout
--------------------------------------------------------------------------------------- */
#header {
	margin: 10px 0 5px 0;
	width: 825px;
	float: left;
}

#logo {
	margin: 5px 0 0 0;
}

#hAccount { 
	float: right;
	display: inline;
	font-size: 11px;
	width: 600px;
	text-align: right;
	margin: 3px 0px 2px 0px;
}

#hAccount span {	
	color: #666;
	font-style: italic;
}

p.language {
	margin: 0;
	text-align: right;
}

p.language a {
	text-decoration: underline;
}

#navoem {
	background: #343535;
	font-weight: bold;
	color: #fff;
	text-transform: uppercase;
	padding: 2px 5px;
	margin: 1px 0 0 0;
	font-size: 11px;
	line-height: 20px;
	clear: both;
	white-space: nowrap;
	float: left;
	display: inline;
}

#navoem label {
	float: left;
	display: inline;
	padding: 0 5px 0 0;
	font-size: 10px;
}

#navsearch, #navsubmit {
	margin: 0;
	font-size: 11px;
}

#navsearch {
	font-family: "Courier New", Courier, monospace;
	font-size: 12px;
	background: #fff;
	border: solid 1px #999;
	padding: 1px;
	width: 100px;
}

#navsearch:focus {
	background: #ffc;
	border: solid 1px #666;
}


#navcart {
	float: right;
	margin: 0;
}

/* Middle Layout
--------------------------------------------------------------------------------------- */
p, ul, ol {
	font-size: 11px;
	line-height: 14px;
}

p {
	margin: 0 15px 8px 15px;
}

.maintext, #parts p {
	font-size: 13px;
	line-height: 16px;
	text-align: left;
}

p.contcols {
	font-size: 12px;
	line-height: 15px;
	text-align: left;
	float: left;
	width: 130px;
}

.fine {
	font-size: 10px;
	line-height: 12px;
	font-style: italic;
	color: #666;
}

.nospace {
	margin-bottom: 2px;
}

h1 {
	font-size: 26px;
	line-height: 28px;
	font-weight: normal;
	margin: 0 15px 4px 14px;
	padding-top: 4px;
	clear: left;
}

h2 {
	font-size: 12px;
	line-height: 14px;
	margin: 13px 0 2px 15px;
}

h3 {
	font-size: 11px;
	line-height: 13px;
	margin: 8px 0 1px 0;
}

ul {
	margin: 0 0 8px 30px;
	padding: 0;
}

ol {
	margin: 0 0 8px 34px;
	padding: 0;
}

li {
	margin-bottom: 4px;
}

ul.weiler {
	width: 180px;
	float: left;
}

* html ul.weiler {
	margin-left: 15px;
}

ul.weiler strong {
	text-decoration: underline;
}

.right {
	float: right;
	clear: right;
}

hr {
	margin: 0 0 0 15px;
	clear: both;
	color: #a3aaa6;
	background-color: #a3aaa6;
	border: none;
	height: 2px;
}

#products, #parts, #resources {
	border: solid 1px #a3aaa6;
	width: 668px;
	float: left;
	margin: 0 0 6px 0;
}

#products img {
	float: right;
	margin: 0 10px;
}

#resources img {
	float: left;
	margin: 2px 10px;
}

#resources p {
	font-size: 11px;
	line-height: 16px;
}

#resources h1 {
	font-size: 18px;
	line-height: 22px;
	border-bottom: solid 2px #039cbc;
	margin-bottom: 14px;
}

div.cols  {
	float: left;
	width: 334px;
}


.leftcol  {
	margin-left: 132px;
	margin-bottom: 22px;
}

#events {
	float: left;
	list-style: none;
	margin: 0 15px 8px 15px;
}

#events li {
	float: left;
	width: 319px;
	margin: 0 0 12px 0;
}

#events li.clear {
	clear: left;
}

#products #headpic {
	display: block;
	border-top: solid 1px #a3aaa6;
	border-right: solid 1px #a3aaa6;
	float: none;
	margin: 0;
}

/* Parts Pages Layout
--------------------------------------------------------------------------------------- */

#parts h1 {
	font-size: 20px;
	text-align: left;
}

#parts {
	text-align: center;
}

#parts p.top {
	font-size: 11px;
	line-height: 13px;
	text-align: center;
	margin: 0 14px 2px 14px;
}

/*ul.parts {
	list-style: none;
	text-align: left;
	font-weight: bold;
	margin: 0 21px;
}

ul.parts li {
	padding: 0;
	margin: 0;
}

ul.parts a, ul.parts a:link, ul.parts a:visited, ul.parts a:active {
	display: block;
	background: url(../images/parts-list-bg.jpg) top left no-repeat;
	padding: 6px 2px 0 28px;
	width: 130px;
	height: 21px;
	color: #fff;
}

ul.parts a:hover {
	background-position: bottom left;
	text-decoration: none;
}*/

img.parts {
	/*float: right;*/
	margin: 0;
	clear: both;
}

#parts table {
	margin: 0 auto 20px auto;
	font-size: 11px;
	line-height: 13px;
	border-top: solid 1px #a3aaa6;
	border-right: solid 1px #a3aaa6;
	text-align: left;
	width: 620px;
	clear: right;
}

#parts td, #parts th {
	border-bottom: solid 1px #a3aaa6;
	border-left: solid 1px #a3aaa6;
	padding: 8px 6px;
}

#parts td.oem {
	white-space: nowrap;
}

#parts th {
	font-size: 13px;
	background: #e8eae9;
	text-align: center;
	padding: 3px;
	width: 537px;
}

#parts th a, #parts th a:link, #parts th a:visited, #parts th a:active {
	color: #fa3e05;
}

#parts tr.key td {
	color: #68716c;
	padding: 3px 6px;
	vertical-align: bottom;
}

#parts tr.id td {
	text-align: center;
	font-weight: bold;
}

#parts tr.result td {
	background: #fb7850;
}

#parts table input {
	font-size: 13px;
	width: 57px;
	padding-right: 3px;
	border: inset 1px #000;
	margin: 0;
	text-align: right;
	background: #ffffe5;
}

#parts table td.quote {
	width: 63px;
	vertical-align: bottom;
	padding: 0 5px 5px 5px;
	text-align: center;
	color: #fa3e05;
}

#parts p.buttons {
	text-align: right;
	margin-right: 20px;
}

#parts p.buttons span {
	margin-left: 155px;
}

#parts.quotecart {
	border: none;
	margin: 0 0 10px 0;
}

#parts.quotecart table {
	margin-bottom: 0;
}

p.return {
	text-align: center;
	line-height: 20px;
}

fieldset.submitquote {
	width: 250px;
	margin: 0 0 0 202px;
	border: 0;
}

fieldset.submitquote p {
	text-align: center;
	margin: 4px 0;
}

p.partimg  {
	margin: 0 15px 0 12px;
	clear: both;
}

p.partimg img  {
	margin: 0 26px 0 12px;
}

#crumbs {
	margin: 10px 15px;
	color: #a3aaa6;
	text-transform: uppercase;
	text-align: left;
}

#crumbs li {
	display: inline;
	list-style: none;
}

#jumpnav, ul.parts {
	margin: 0;
	padding: 0;
	border-top: solid 1px #a3aaa6;
	width: 668px;
}

ul.parts {
	border: 0;
	float: left;
	display: inline;
	padding: 0 14px 14px 0;
	width: 654px;
}

#jumpnav li, ul.parts li {
	list-style: none;
	float: left;
	margin: 0;
}

#jumpnav li a, ul.parts li a, ul.parts li a:link, ul.parts li a:active, ul.parts li a:visited {
	display: block;
	padding: 4px 10px;
	width: auto;
	white-space: nowrap;
	color: #a3aaa6;
	border-bottom: solid 1px #a3aaa6;
	border-right: solid 1px #a3aaa6;
	background: #fff;
}

ul.parts li a, ul.parts li a:link, ul.parts li a:active, ul.parts li a:visited {
	border: 1px #a3aaa6;
	border-style: solid solid solid none;
	padding: 4px 14px;
	color: #666;
}

#jumpnav li a:hover, ul.parts li a:hover {
	background: #a3aaa6;
	color: #fff;
	text-decoration: none;
}

/* INTERIOR PARTS NAV LEFTSIDE
----------------------------------------------------------------------------------------- */
#leftnav {
	width: 150px;
	float: left;
	display: inline;
	margin: 0 5px 0 0;
	padding: 0;
	background: #343535;
}

#leftnav h2 {
	margin: 0;
	font-size: 9px;
	padding: 4px 0 4px 5px;
	background: #fa3e05;
	color: #fff;
	text-transform: uppercase;
}

#part-nav, #part-nav2, #part-nav3 {
	margin: 0 0 5px 5px;
	padding: 0;
	list-style: none;
	font-size: 10px;
	line-height: 13px;
	float: left;
	display: inline;
}

#part-nav ul, #part-nav2 ul, #part-nav3 ul {
	padding: 0;
	margin: 0;
	list-style: none;
	font-size: 10px;
	line-height: 13px;
}

#part-nav li, #part-nav2 li, #part-nav3 li {
	padding: 0;
	margin: 2px 0;
	position: relative;
	width: 140px;
}

#part-nav li a, #part-nav2 li a, #part-nav3 li a {
	display: block;
	text-decoration: none;
	padding: 2px 0 3px 0;
	margin: 0;
	width: 140px;
	color: #fff;
}

#part-nav li ul, #part-nav2 li ul, #part-nav3 li ul {
	position: absolute;
	display: none;
	top: -1px;
	margin: 0 0 0 110px;
	padding: 0;
	border: solid 1px #343535;
	z-index: 10;
}

#part-nav li.hanging ul, #part-nav2 li.hanging ul {
	top: -55px;
}

#part-nav3 li ul {
	top: -175px;
}

#part-nav li li, #part-nav2 li li, #part-nav3 li li {
	margin: 0;
	padding: 0;
	width: auto;
}

#part-nav li li a, #part-nav2 li li a, #part-nav3 li li a {
	margin: 0;
	padding: 2px 4px;
	color: #000;
	background: #edefee;
	border: none;
	width: 96px;
	font-weight: normal;
}

#part-nav li:hover ul, #part-nav li.sfhover ul, #part-nav2 li:hover ul, #part-nav2 li.sfhover ul, #part-nav3 li:hover ul, #part-nav3 li.sfhover ul {
	display: block;
}

#part-nav li:hover a, #part-nav li.sfhover a, #part-nav2 li:hover a, #part-nav2 li.sfhover a, #part-nav3 li:hover a, #part-nav3 li.sfhover a {
	border-bottom: solid 1px #fff;
	padding-bottom: 2px;
}

#part-nav li:hover li a:hover, #part-nav li.sfhover li a:hover, #part-nav2 li:hover li a:hover, #part-nav2 li.sfhover li a:hover, #part-nav3 li:hover li a:hover, #part-nav3 li.sfhover li a:hover {
	background: #fa3e05;
	color: #fff;
	border: none;
}

#part-nav li:hover li a, #part-nav li.sfhover li a, #part-nav2 li:hover li a, #part-nav2 li.sfhover li a, #part-nav3 li:hover li a, #part-nav3 li.sfhover li a {
	border: none;
}

/* Forms Layout
--------------------------------------------------------------------------------------- */

fieldset {
	margin: 0 0 9px 115px;
	border: solid 1px #4c4c4c;
	padding: 5px;
	width: 430px;
}

fieldset legend {
	font-weight: bold;
	color: #4c4c4c;
	font-size: 13px;
	line-height: 15px;
	padding: 0 4px;
	margin-bottom: 5px;
}

.required {
	color: #fa3e05;
}

p label {
	display: block;
	float: left;
	width: 75px;
}

fieldset p label {
	display: block;
	float: left;
	width: 130px;
}

fieldset input, fieldset select {
	font-size: 11px;
}

p.checkboxes {
	line-height: 20px;
}

p.checkboxes label {
	display: inline;
	float: none;
	width: auto;
}

p.company57 {
	display: none;
}

#create_act {
	float: right;
	width: 300px;
	display: inline;
	margin-right: 20px;
	margin-left: 0;
}

#requestActButton_esp {
	display: block;
	width: 164px;
	height: 39px;
	margin-left: 54px;
	border: 0;
	background: url('/images/request-account-button_esp.jpg') no-repeat top left;
}
#requestActButton_esp:hover {
	background-position: bottom left;
}

/* Cart & Checkout Pages
--------------------------------------------------------------------------------------- */
#product.cart {
	margin-bottom: 0;
}

#product.cart th.qty, #product.cart td.qty {
	border-right: dashed 1px #ddd; text-align: center;
}

#product.cart th.qty span, #product.cart td.qty span {
	display: block;
	font-size: 10px;
}

ul.totals {
	text-align: right;
	list-style: none;
	font-size: 14px;
	color: #900;
	font-weight: bold;
	margin: 0 15px 0 0;
	padding: 10px 5px 0 5px;
	width: 225px;
	float: right;
	display: inline;
	border: 1px #ccc;
	border-style: none solid solid solid;
	background: #f6f6f6;
}

ul.totals li {
	padding: 4px 2px;
	color: #FA3E05;
}

ul.totals li.total {
	border-top: solid 1px #000;
	font-size: 16px;
	padding-top: 8px;
	color: #FA3E05;
}

ul.totals li.button {
	padding: 0;
}

ul.totals span {
	text-align: left;
	float: left;
	display: inline;
	width: 100px;
}

p.proceed {
	clear: right;
	float: right;
	display: inline;
	margin: 0 15px 12px 0;
	width: 237px;
	overflow: hidden;
}

#checkout, #submitorder {
	background: url(../img/button-checkout.png) top left no-repeat;
	height: 30px;
	width: 237px;
	border: 0;
	padding: 0;
	margin: 10px 0 30px 0;
}

#submitorder {
	background: url(../img/button-submit-order.png) top left no-repeat;
}

#checkout:hover, #submitorder:hover {
	background-position: bottom left;
	cursor: pointer;
}

#cart img.floatleft {
	margin: 15px 0 0 0;
}

p.ccards {
	clear: right;
	text-align: right;
	margin-right: 20px;
	line-height: 20px;
}

p.secure {
	clear: both;
	float: left;
	width: 200px;
	display: inline;
}

#progress {
	list-style: none;
	float: left;
	display: inline;
	width: 638px;
	background: #ccc;
	font-weight: bold;
	margin: 0 15px 16px 15px;
}

#progress li {
	float: left;
	padding: 4px 40px 4px 10px;
	margin: 0;
	color: #fff;
	text-transform: uppercase;
	border-right: solid 1px #fff;
	background: #999;
}

#progress li.current {
	background: #FA3E05;
}

#progress li.complete {
	background: #ccc;
}

div.signin, div.checkout, div.next {
	width: 300px;
	height: 250px;
	float: left;
	display: inline;
	border: solid 1px #343535;
	margin: 0 15px 15px 15px;
}

div.next {
	width: 636px;
	margin-left: 15px !important;
}

div.signin h2, div.checkout h2 {
	background: #343535;
	padding: 6px 15px 6px 15px !important;
	margin: 0 0 12px 0;
	color: #fff;
	font-size: 14px;
}

div.checkout h2 {
	margin: 0 0 8px 0;
}

div.signin h2 a, div.checkout h2 a {
	color: #fff;
	font-weight: normal;
	font-size: 12px;
	float: right;
}

div.signin label {
	display: block;
}

#username, #password {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	width: 225px;
}

p.sign_in {
	text-align: center;
	margin: 0;
	border-top: dashed 1px #ccc;
	padding: 10px 0;
}

p.sign_in input, #create_acct, #noact, #next {
	font-size: 16px;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: bold;
	margin: 0 0 4px 0;
}

p.sign_in a {
	display: block;
}

div.signin p.button, div.next p.button {
	margin-bottom: 4px;
	text-align: center;
}

div.checkout, div.next {
	height: auto;
}

div.account {
	width: 636px;
}

div.checkout p {
	margin-bottom: 8px;
	clear: left;
}

div.checkout label {
	float: left;
	width: 74px;
	text-align: right;
	margin: 2px 6px 0 0;
}

div.account label {
	float: none;
	display: block;
	width: auto;
	text-align: left;
	margin: 0;
}

div.account div {
	width: 250px;
	float: left;
}

div.checkout input, div.checkout select, div.checkout textarea {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	border: solid 1px #999;
	padding: 1px;
}

div.checkout textarea:focus, div.checkout input:focus, div.checkout select:focus {
	background: #ffc;
	border: solid 1px #666;
}

div.checkout p.check {
	background: #eee;
	padding: 10px 15px;
	margin: 0;
}

p.check label {
	float: none;
	display: inline;
	text-align: left;
	width: auto;
	margin: 0 0 0 4px;
}

div.checkout p span label {
	float: none;
	margin-left: 10px;
}

#email1, #email2, #pass1, #pass2 {
	width: 200px;
}

#bfname, #blname, #sfname, #slname, #bcity, #scity, #bcomp, #scomp, #bcountry, #scountry, #bprovince, #sprovince {
	width: 180px;
}

#badd1, #badd2, #sadd1, #sadd2, #badd3, #sadd3, #email, #cardname, #realname {
	width: 180px;
}

#bstate, #sstate {
	width: 126px;
}

#expyear {
	width: 60px;
}

#bzip, #szip, #expmonth, #cvv {
	width: 80px;
}

#bphone, #sphone, #bphone2, #fax, #cardnumber, #phone {
	width: 120px;
}

#comment { 
	width: 276px;
	margin: 0px 10px 7px 10px;
	height: 40px;
}

div.next  {
	clear: both;
	margin-left: 200px;
	background: #eee;
	padding: 14px 0 10px 0;
	text-align: center;
}

div.payment {
	width: 538px;
	margin: 0 100px 10px 100px;
}

div.payment label {
	width: 90px;
}

div.payment p {
	margin-bottom: 10px;
	float: left;
}

p.cardtype {
	font-weight: bold;
	line-height: 18px;
	width: 110px;
	float: left;
	line-height: 20px;
}

p.cardtype label {
	float: none;
	font-size: 14px;
	color: #006b33;
}

p.instructions {
	width: 440px;
	margin: 18px 0 0 15px;
}

h2 a.printer {
	font-weight: normal;
	float: right;
	font-size: 14px;
	background: url(../img/icon-print.png) center left no-repeat;
	padding: 0 0 0 20px;
}

#print {
	background: none;
	text-align: left;
	margin: 0;
}

#print #container {
	width: 740px;
	margin: 0;
}

#print div.checkout h2 {
	color: #000;
	background: #fff;
}	

#printlink {
	float: right;
	display: inline;
	width: 300px;
	text-align: right;
	font-weight: normal;
	padding-right: 15px;
}

/* ERROR 
--------------------------------------------------------------------------------------- */
div.cleanError {
	float: left;
	background-color: #eeeeee;
	border: 1px solid #999999;
	background-image: url('/images/ErrorCircle.png');
	background-position: 5px 5px;
	background-repeat: no-repeat;
	margin: 0px auto 10px 15px;
}
div.cleanError h1 {
	width: auto;
	color: #000000;
	margin: 7px 10px 6px 80px;
	padding: 0;
	font-size: 20px;
	font-weight: bold;
}
div.cleanError p {
	width: auto;
	color: #000000;
	margin: 4px 10px 6px 80px;
	padding: 0;
	font-size: 12px;
}

div.cleanError ul {
	width: auto;
	color: #000000;
	margin: 4px 10px 6px 100px;
	padding: 0;
}

div.cleanError ul li {
	color: #000000;
}

.formError {
	background: yellow !important;
}




/* Footer Layout
--------------------------------------------------------------------------------------- */
#footer {
	width: 801px;
	margin: 0 auto;
	clear: both;
	padding: 0 12px 12px 12px;
}

#footer ul {
	margin: 5px 122px;
	font-size: 10px;
	text-align: center;
	line-height: 13px;
}

#footer li {
	display: inline;
}

address {
	text-align: center;
	font-size: 10px;
	line-height: 13px;
	font-style: normal;
}

div.social {
	width: 76px;
	height: 36px;
	float: right;
}

div.social a {
	float: left;
	display: inline;
	width: 36px;
	height: 36px;
	margin: 0 0 0 2px;
}

/* Hidden Layer
--------------------------------------------------------------------------------------- */
#hmsg {
	display: none;
	border: 2px solid #991c1f;
	background: #fff;
	width: 600px;
	height: 20px;
	padding: 2px;
	padding-top: 6px;
	font-size: 10px;
	line-height: 100%;
	text-align: center;
	font-weight: bold;
	background: #ffffd5;
}
