@charset "utf-8";
/* CSS Document */

/* a few reset styles */
html, body, h1, h2, h3, h4, h5, h6, p, blockquote, ul, ol, ul li, form, fieldset {
	margin: 0;
	padding: 0;
}

img { border: 0; }
ul, li, ol { list-style: none; }
a, a:visited, a:hover { text-decoration: underline; }

.right { float: right; }
.left { float: left; }
.clear { clear: both; }
.hide { display: none; }

/* Let's just get everybody on the same page */
h1 { font-size: 2.2em; margin: 5px 0px 10px 0px; }
h2 { font-size: 1.8em; margin: 3px 0px 8px 0px; }
h3 { font-size: 1.4em; margin: 3px 0px 8px 0px; }
h4 { font-weight: bold; margin: 3px 0px 8px 0px;  }
p { font: 1.2em Arial; margin: 3px 0px 8px 0px; }

.small { font-size: 0.9em; } 
.highlight, label.required { color: #475c87; font-weight: bold; }

input, select, textarea { border: 1px solid #ccc; border-left: 1px solid #777; border-top: 1px solid #777; padding: 4px; font: 1.2em Arial; margin: 2px; }
input.up { border: 1px solid #ccc; border-right: 1px solid #777; border-bottom: 1px solid #777; }
input:focus, select:focus, textarea:focus	{ background-color: #e1efff; border: 1px solid #777; }
button { border: 1px solid #ccc; border-right: 1px solid #777; border-bottom: 1px solid #777; padding: 4px; font: 1.2em Arial; margin: 2px; } 

a , a:visited { color: #961e20; }
a:hover { color: #333; }
	
/* Wrappers and such */		
body {
	border: 0;
	background: #f8f8f8 url(../images/page_bg.jpg) repeat-x;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 62.5%; /* default font size to 10px */
	color: #333;
	text-align: center;
	}

#wrapper { width: 950px; margin: 0 auto; text-align: left; position: relative; } /* pos: Relative so the hero overlay is from inside the wrapper */
#header { height: 85px; padding-top: 14px; }

/* top menu */
#top_nav { background: url(../images/top_nav_bg.jpg) repeat-x 0 0; margin: 0px -3px; }
#top_nav .tl { background: url(../images/top_nav_left.jpg) no-repeat 0 0; height: 50px; /* IE6 needs this.. stupid */ }
#top_nav .tr { background: url(../images/top_nav_right.jpg) no-repeat 100% 0; height: 50px; }
#top_nav ul { height: 50px; }
#top_nav ul li { background: url(../images/top_nav_divider.jpg) no-repeat 100% 0; display: block; float: left; }

#top_nav ul li a {
	/* inline-block plays nice with IE6 and up */
	display: inline-block;
	height: 50px;
	line-height: 50px;
	font-size: 1.4em;
	font-weight: bold;
	color: #666;
	padding: 0px 20px;
	text-decoration: none;
	}

#top_nav ul li a.selected { color: #333; }
#top_nav ul li a:hover { background: url(../images/top_nav_bg.jpg) repeat-x 0 100%; color: #fff; }

/* the Primary Callouts on the top right */
.top_callout {
	background: url(../images/top_callout_bg.jpg) repeat-x 0 0;
	height: 60px;
	margin-right: 5px;
	padding: 10px 15px;
	color: #333;
	display: block;
	border-bottom: 1px solid #666;
	border-right: 1px solid #999;
	}
	
.top_callout h2 { font: bold 1.5em Arial; }
.top_callout input { font: 1.0em Arial; }


/* The registration dialog */
.regdialog { padding: 25px; font-size: 1.4em; }
.regdialog a { font-weight: bold; font-size: 1.3em;}

/* Below the menu */
#subnav { height: 220px; margin: 8px 0 14px 0; }
	
/* Our cool Technician, absolutely positioned to go over the menu */
#hero_image {
	width: 157px;
	height: 286px;
	position: absolute;
	right: -15px;
	top: 105px;
	background: none;
	background: url(../images/hero_image.png) no-repeat 0 0;
	z-index: 10;
	}
	
/* these are the main background images.  They rotate but are all the same size and shape */
.hero_1, .hero_2, .hero_3, .hero_4 { background: url(../media/hero_1.jpg) no-repeat 0 0; width: 950px; height: 220px; }
.hero_2 { background: url(../media/hero_2.jpg) no-repeat 0 0; }
.hero_3 { background: url(../media/hero_3.jpg) no-repeat 0 0; }
.hero_4 { background: url(../media/hero_4.jpg) no-repeat 0 0; }
.hero_contactus { background: url(../media/hero_contactus.jpg) no-repeat 0 0; width: 950px; height: 220px; }
.hero_dsp { background: url(../media/hero_dsp.jpg) no-repeat 0 0; width: 950px; height: 220px; }
.hero_community { background: url(../media/hero_community2.jpg) no-repeat 0 0; width: 950px; height: 220px; }

#slideshow_buttons { position: absolute; width: 86px; height: 18px; left: 5px; margin-top: 205px; z-index: 7;}
.hero_fade { position: absolute; left: 490px; margin-top: 15px; height: 190px; width: 460px; background-color: #444; z-index: 8; opacity: 0.8; filter: alpha(opacity=80) } 
.hero_verticaltext { position: absolute; left: 490px; height: 220px; width: 260px; padding: 25px 25px; z-index: 9;}
.hero_verticaltext h1 { color: #fff; font-size: 1.9em; margin: 0px 0px 7px 0; }
.hero_verticaltext p { margin: 10px 0; font-size: 1.3em; color: #eee; padding: 0px 5px; }

.hero_verticaltext ul, .hero_verticaltext li { list-style: disc outside none; color: #fff; font-size: 1.2em; }

#page_content { padding: 15px 0px; font-size: 1.2em; overflow: hidden; }

/* Claim Boxes */
.claim { float: left; background: url(../images/claim_box.png) no-repeat 0 0; width: 220px; height: 101px; margin-right: 23px; text-align: center;}
.claim h3 { padding-top: 10px; color: #961e20; font-weight: bold; font-size: 1.2em; }
.claim p { text-align: left; padding: 0px 80px 0px 10px; font-size: 0.8em;}

.claim .clock { width: 220px; height: 101px; background: url(../media/icon_clock.jpg) no-repeat 145px 35px; } 
.claim .cal { width: 220px; height: 101px; background: url(../media/icon_cal.jpg) no-repeat 145px 35px; }
.claim .wrench { width: 220px; height: 101px; background: url(../media/icon_wrench.jpg) no-repeat 145px 35px; }
.claim .star { width: 220px; height: 101px; background: url(../media/icon_star.jpg) no-repeat 145px 35px; }
.claim .info{ width: 220px; height: 101px; background: url(../media/icon_info.jpg) no-repeat 145px 35px; }

/* Page Divider Thingy, affectionately called the gradient bar */
.gradbar { height: 34px; padding: 0px 15px; border: 1px solid #ccc; background: url(../images/grey_fade_34px.jpg) repeat-x 0 0; margin: 20px 0; -moz-border-radius: 6px; -webkit-border-radius: 6px; }
.gradbar h3 { padding-top: 5px; }
.gradbar a, .gradbar a:hover, .gradbar a:visited { text-decoration: none; }

/* Categories on Home Page */
.category { width: 300px; float: left; margin-right: 23px; }
.category img { float: left; margin: 0px 10px 10px 0px; }
.category h3, .category h1 { margin-top: 0px; color: #961e20; font-size: 1.4em; }
.category h4 { font-size: 1.2em; margin: 0px; } 
.category p { font-size: 1.0em; }

/* the skus within the categories */
a.sku, a.sku:hover, a.sku:visited { text-decoration: none; display: block; color: #333; margin-top: 10px; clear: both; padding: 0px 10px; background: #e5e5e5 url(../images/sku_bg.gif) no-repeat 0 0; width: 280px; height: 27px; line-height: 27px; }
a.sku:hover { background-color: #961e20; cursor: pointer; }
a.sku:hover span { color: #fff; }


.content_box {
	border: 1px solid #ccc; 
	border-top: 1px solid #aaa;
	border-left: 1px solid #aaa;
	background-color: #fff; 
	width: 660px; 
	padding: 10px; 
	overflow: auto;
	}
		
/* Tech Search Page */
#product_scroll { font-size: .85em; }	
#service_select select { font-size: .9em; }

.step1, .step2, .step3 {
	width: 744px;
	float: left;
	clear: both;
	height: 37px;
	padding: 10px 25px 10px 0;
	margin: 10px 0;
	background-repeat: no-repeat;
	}
	
.step1 { padding-left: 280px; margin-top: 5px; width: 439px; background-image: url(../images/step1_describe.png); }	
.step2 { padding-left: 330px; width: 389px; background-image: url(../images/step2_quote.png); }
.step3 { padding-left: 380px; width: 339px; background-image: url(../images/step3_service.png); }


/* Contact Page */
#contact_form {
	border: 1px solid #ccc;
	padding: 25px 20px 25px 25px;
	background: #ffffff url(../media/icon_contactus.jpg) no-repeat 10px 10px;
	}

#contact_form input, #contact_form textarea { margin: 2px; width: 300px; }
#contact_form td { vertical-align: middle; }
#contact_form textarea { height: 150px; overflow: auto; }
	

/* A Few Buttons*/	
.edit_button, .delete_button {
	display: block;
	width: 22px;
	height: 22px;
	background-image: url(../images/edit_button.png);
	background-position: top;
	cursor: pointer;
	}
	
.delete_button {
	background-image: url(../images/delete_button.png);
	}
	
.edit_button_small, .delete_button_small, .expand_button, .expanded_button {
	display: block;
	width: 14px;
	height: 14px;
	background-image: url(../images/edit_icon.png);
	background-position: top;
	cursor: pointer;
	margin: 4px;
	}
	

.expand_button { background-image:  url(../images/expand_button.png); }
.expanded_button { background-image: url(../images/expanded_button.png); }
.delete_button_small { background-image: url(../images/delete_icon.png); }
	
.edit_button:hover, .delete_button:hover, .edit_button_small:hover, .delete_button_small:hover, .expand_button:hover, .expanded_button:hover { background-position: bottom; }
h3 .edit_button, h3 .delete_button { float: right; margin-top: -4px; }

a.small_button, a.small_button:visited, input.small_button {
	display: block;
	width: 65px;
	height: 18px;
	background-image: url(../images/button_small.gif);
	cursor: pointer;
	padding-top: 2px;
	text-align: center;
	font: bold 1.2em Verdana;
	color: #fff;
	border: none;
	text-decoration: none;
	}
	
input.small_button {
	font: bold 12px Verdana;
	height: 20px;
	padding: 0;
	padding-bottom: 2px;
	}

/* make sure the hover states are covered if we use these as links */
a.small_button:hover, a.small_button:visited, a.big_button:hover, a.big_button:visited, a.cart_button:hover, a.cart_button:visited, a.big_button_blue:hover, a.big_button_blue:visited {
	color: #eee;
	text-decoration: none;
	}

.big_button , .cart_button, .big_button_blue {
	margin-top: 20px; 
	height: 30px;
	background: url(../images/button_medium_tile.gif) repeat-x 0 0;
	color: #fff;
	border: none;
	border-right: 1px solid #666;
	border-bottom: 1px solid #666;
	font: bold 1.2em Arial; 
	padding: 5px 10px;
	cursor: pointer;
	text-decoration: none;
	-moz-border-radius: 4px; 
	-webkit-border-radius: 4px;
	}
	
.big_button_blue { background: url(../images/button_medium_blue_tile.gif) repeat-x 0 0; }
.cart_button { height: 25px; padding: 3px; margin-top: 2px; 	-moz-border-radius: 3px; -webkit-border-radius: 3px; }	

/* slideshow buttons */
.play_button { display: block; width: 38px; float: left; height: 18px; background: url(../images/slideshow_buttons.jpg) no-repeat 0 0; }
.pause_button { display: block; width: 38px; float: left; height: 18px; background: url(../images/slideshow_buttons.jpg) no-repeat 0 50%; }
.ff_button { display: block; width: 38px; float: left; height: 18px; margin-left: 3px; background: url(../images/slideshow_buttons.jpg) no-repeat 0 100%; }

/* Page Footer */
#footer { height: 101px; background: url(../images/footer_bg.jpg) repeat-x 0 0; margin: 20px 0; clear: both; }
#footer .l { background: url(../images/footer_ends.jpg) no-repeat 0 0; height: 101px; }
#footer .r { background: url(../images/footer_ends.jpg) no-repeat 100% 100%; height: 81px; padding: 10px 20px; }

#footer ul { width: 150px; height: 81px; margin: 0px 10px; float: left; border-right: 1px solid #ccc; text-align: left; font-family: Verdana; }
#footer a { color: #666; text-decoration: none; }
#footer a:hover { color: #961e20; }

/* Form Processing and tabbed submission forms */
/* We only use the small tabs outside the marketplace */
#selector_main_small {
	width: 728px;
	border: 1px solid #666;
	float: right;
	padding: 20px 15px;
	min-height: 200px;
	margin-left: -1px;
	background-color: #fff;
	overflow: visible;
	}

#selector_tabcontainer_small{
	width: 190px;
	float: right;
	min-height: 150px;
	overflow: visible;
	}
	
/* The normal size tabs */	
#selector_tabcontainer_small .tab { margin: 0px 0px 3px 0px; overflow: hidden; }
#selector_tabcontainer_small .tab_off { width: 155px; height: 26px; padding: 9px 10px 5px 25px; background: url(../images/mp_tab_smaller_bg.gif) no-repeat 0 100%; cursor: pointer; }
#selector_tabcontainer_small .tab_on { background: url(../images/mp_tab_smaller_bg.gif) no-repeat 0 0; width: 160px; height: 26px; padding: 9px 15px 5px 15px; }
#selector_tabcontainer_small .tab h3 { font-size: 1.1em; }
#selector_tabcontainer .tab h3 { font-size: 1.1em; } /* Not sure why I have to add this here */

/* The taller tabs */
#selector_tabcontainer_small .talltab h3 { font-size: 1.1em; }
#selector_tabcontainer_small .talltab { margin: 0px 0px 3px 0px; overflow: hidden; }
#selector_tabcontainer_small .talltab { background: url(../images/mp_tab_smaller_tall_bg.gif) no-repeat 0 100%; cursor: pointer; }
#selector_tabcontainer_small .talltab_off { background-position: 0 0; width: 155px; height: 126px; padding: 9px 10px 5px 25px; }
#selector_tabcontainer_small .talltab_on { background-position: 0 100%; width: 160px; height: 126px; padding: 9px 15px 5px 15px; }

#selector_tabcontainer_small .blue { background-image: url(../images/mp_tab_smaller_tall_blue_bg.gif); }
#selector_tabcontainer_small .red { background-image: url(../images/mp_tab_smaller_tall_red_bg.gif); }
#selector_tabcontainer_small .green { background-image: url(../images/mp_tab_smaller_tall_green_bg.gif); }

.tab_smalltext p { font-size: 1em; }
.tab_smalltext .small { font-size: 0.9em; }

label.formError { display: none; color: #a61616; font-size: 0.9em; font-family: Verdana; font-weight: bold;}
input.formError { border: 1px dotted #a61616; background: #ffe8e8 url(../images/exclamation.gif) no-repeat 97% 50%; }
select.formError, textarea.formError { border: 1px dotted #a61616; background: #ffe8e8; }

input.formValid { border: 1px solid #1553a5; background: #e8efff url(../images/accept.gif) no-repeat 97% 50%; }
select.formValid { border: 1px solid #1553a5; background: #e8efff; }

/* error, success and site message divs */
.error, .message, .success {
	background: #ffe6e6 url(../media/icon_error.png) no-repeat 15px 50%;
	border: 1px solid #cb0000;
	padding: 15px;
	margin: 10px 0;
	padding-left: 65px; 
	-moz-border-radius: 3px; 
	-webkit-border-radius: 3px;
	}

.message { border: 1px solid #cbbf00; background: #ffffe6 url(../media/icon_message.png) no-repeat 15px 50%; }
.success { border: 1px solid #009900; background: #e8ffe6 url(../media/icon_success.png) no-repeat 15px 50%; }

.error h1, .error h2, .error h3, .error h4, .error p { margin: 0; }
.message h1, .message h2, .message h3, .message h4, .message p { margin: 0; }
.success h1, .success h2, .success h3, .success h4, .success p { margin: 0; }

/* Tip Dialogues for forms */
.tip {
	position: absolute;
	display: none;
	width: 200px;
	border: 1px solid #666;
	background-color: #f6f6f6;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	z-index: 1150;
	}

.tip .inner_content {
	border: 1px solid #ccc;
	padding: 10px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	}

.tip .arrow {
	position: absolute;
	top: 5px;
	left: -7px;
	width: 9px;
	height: 13px;
	background: url(/site/images/arrow_tip.gif);
	}
	
/* No Javascript Warnings */
#noscript_warning {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 999;
	background-color: #f6f6f6;
	padding: 30px 50px;
	width: 100%;
	border-top: 3px solid #990000;
	}
	
#noscript_warning .error { margin: 0 auto; width: 500px; text-align: left;}