/*
-----------------------------------------------------
Default CSS file for [ bestbuy ]
Media: screen, projection

Author: Grand Union [ info at thegrandunion dot com ]
For: Best Buy [ bestbuy.com ]
*/

/* To enable easier tabbing:
= denotes main section
& denotes sub section

/* Stylesheet matrix:
	- global_wrapper.css: 	All page elements required for the global wrapper
	- global_content.css: 	All content elements used within the global wrapper
	- global_tweaks.css: 	IE specific stylesheet for global pages
	- global_print.css: 	Print stylesheet for global pages
	- checkout_wrapper.css: All page elements required for the checkout wrapper
	- checkout_content.css: All content elements used within the checkout wrapper
	- checkout_tweaks.css: 	IE specific stylesheet for checkout pages
	- checkout_print.css: 	Print stylesheet for checkout pages
*/

/* = Table of contents for Best Buy CSS
-----------------------------------------------------
	1.	Constants						 			For reference purposes only
	2.	Reset										Equalising all browsers
	3.	Defaults									Standard sitewide definitions
			a.	Links
			b.	Typography
			c.  Tables and forms
			d.  Lists
	4.  Standard page settings						Definitions available to both wrappers
			a. shadowbox customisation
	5.  Misc
			a.	Deprecated
			b.	Error states


The following is contained in seperate css files
-----------------------------------------------------

	6.	Page wrapper								Template building blocks and furniture
			a.	See global_wrapper.css
			b.	See checkout_wrapper.css
	7.	Page Content								All content within wrapper
			a.	See global_content.css
			b.	See checkout_content.css
/* */


/* = 1. Constants
-----------------------------------------------------
	Colours
	-------------------------------------------------
	#004b91 = text link blue

	#003b64	= primary blue
	#fff019 = secondary yellow

	#111 	= black - text color
	#49494a = grey 85%
	#737474 = grey 65%
	#9a9b9b = grey 45%
	#c3c4c4 = grey 24%
	#dcdcdc = grey 15%
	#e7e7e7 = grey 10%
	#f5f5f5 = grey 5%

	#77c3ff = tertiary light blue
	#dc1414 = tertiary red
	#55b900 = tertiary green

	Font sizes
	-------------------------------------------------
	all = 	1.2em (12px)
	h1 = 	1.9em (19px) Not yet confirmed
	h2 = 	1.7em (17px) Not yet confirmed
	h3 = 	1.6em (16px) Not yet confirmed
	h4 = 	1.5em (15px) Not yet confirmed
	h5 =	1.4em (14px) Not yet confirmed
	h6 =	1.3em (13px) Not yet confirmed
/* */


/* = 2. Reset
----------------------------------------------------- */
	html, body, div, span,
	ul, ol, li, h1, h2, h3, h4, h5, h6, p, a, img, dl, dt, dd, em, strong, object,
	form, fieldset, legend, button, label,
	table, tr, th, td, tbody, tfoot, thead, caption,
	blockquote, abbr, acronym, address, big, cite, code, del, dfn, ins, kbd, q, samp, small, sub, sup, tt, var, pre,
	b, u, i, center, font, applet, strike, s, iframe, embed, form {padding:0; margin:0; border:0; outline:0; font-size:12px; background:transparent; vertical-align:baseline;}
	input, select, textarea {padding:0; margin:0; font-size:1em; vertical-align:middle;}
	address, abbr, caption, cite, code, dfn, em, strong, th, var, h1, h2, h3, h4, h5, h6 {font-weight:normal; font-style:normal;}
	ul, dir, menu {list-style:none;}
	table {border-collapse:separate; border-spacing:0;}
	caption, th {text-align:left;}
	blockquote, q {quotes:none;}
	blockquote:before, blockquote:after, q:before, q:after {content:''; content:none;}
	acronym {cursor:help;}
	nobr {white-space:normal;}
	hr {display:none;}
/* */


/* = 3. Defaults
----------------------------------------------------- */
body {
	line-height:1;
	background-color:#fff;
	color:#111;
	font-size:62.5%;
	font-family:Arial, Helvetica, sans-serif;
}

/* Hides contents*/
.context {/* Hides contents off-left */
	height:1px;
	overflow:hidden;
	position:absolute;
	top:-9999em; left:0;
	width:1px;
	clear:none ! important;
}
/* Hides contents but leaves structure in place */
.context-flow {/* Hides contents off-left */
	text-indent:-21110px;
	text-align:left !important;
}

.clearfix:after {
    clear:both;
    content:".";
    display:block;
    height:0;
    visibility:hidden;
}

/* horizontal rules (hr) - allows universal control */
.hr {
	clear : both;
	height : 1px;
	color : #dcdcdc; /* IE */
	background : #dcdcdc; /* Gecko/Opera */
	border : 0 solid #dcdcdc; /* necessary to ensure hr is only 1px high in all browsers */
	padding : 0;
	margin : 1.5em 0 1.5em 0;
}
.hr hr {display:none;}

.edit-me {color:red;}/* Used to mark up content that needs attention */


	/* & 3a. Links
	---------------------------- */
	a, a:link {
		color:#004b91;
		text-decoration:none;
		outline:0;
		font-style:inherit;
		font-weight:inherit;
		position:relative;
	}

	a:hover,
	a:focus,
	a:active {text-decoration:underline;}

	/* standard link with arrow */
		.compare .rating a,
		.store-options a,
		.store-summary p.trigger a,
		.product-options a,
		a.view-basket,
		.product-extra a,
		.input-block a,
		.promotion a,
		.product-list-filters a,
		#product-list td a,
		.tab-content-inner .recommended a,
		#search-list .search-tools .search-view a,
		.more a,
		.item-detail a,
		.rating a,
		.product-delivery a,
		.promo li a,
		.product-intro .options a,
		.bundles a,
		#overlay-quick-view .product-price a, 
		#connected-products .intro-details .product-recommended td a, 
		.options-table td a, 
		.options-table tbody th a, 
		#inspiration-advice .float-container li a {
			padding-left:7px;
			background:url(../images/sprt_arrows.png) no-repeat 0 50%;
		}

		#container #wrapper .view a {
			display:inline-block;
			padding-right:17px;
			background:url(../images/icon_view.png) no-repeat 100% 0;
		}

		.item-offer a {
			font-weight:bold;
			color:#77c3ff;
			padding:0;
			background:none;
		}
			
		a.remove {
			background:url(../images/sprt_remove.png) no-repeat 100% 0;
			padding-right:14px;
			font-size:.918em;
			display:block;
			line-height:1em;
			margin-bottom:4px;
		}
		
			a.remove:hover {background-position:100% -200px;}


	/* & 3b. Typography
	---------------------------- */
	p, li, dt, dd {
		font-size:12px;
		line-height:1.5;
		font-style:inherit;
	}

	li p {font-size:1em;}

	.wrapper-inner p {padding-bottom:.4em;width:95%}

	.serial-num {font-style:italic;}

	h1, h2, h3, h4, h5, h6 {
		margin-bottom:.6em;
		line-height:1.5;
		font-family:Arial, Helvetica, sans-serif;
		font-weight:normal;
	}

	h1 {
		font-size:2.4em;
		line-height:1.2em;
		font-family:Arial, Helvetica, sans-serif;
		background:#fff url(../images/sprt_grey-grads.png) repeat-x 0 100%;
		padding:4px 10px 6px;
		margin-bottom:10px;
		width:900px;
	}

	h2 {font-size:2.4em; font-weight:bold;color:#49494A;}
	h3 {font-size:1.5em; font-weight:bold;}
	h4 {font-size:1.4em; font-weight:bold;}
	h5 {font-size:1.3em; font-weight:bold;}
	h6 {font-size:1.2em; font-weight:bold; margin:.4em 0 0;}

	h1 img {
		margin-right:10px;
		vertical-align:middle;
	}

	input, select, textarea {
		font-size:inherit;
		font-family:Arial, Helvetica, sans-serif;
	}

	input.text-focus {
		border:2px solid #fff019;
	}

	address {
		color:#49494a;
		font-size:1.2em;
		line-height:1.5;
		margin-bottom:1.2em;
	}

	em {
		font-style:italic;
		font-weight:inherit;
		line-height:inherit;
	}

	strong {
		font-style:inherit;
		line-height:inherit;
		font-weight:bold;
	}


	/* & 3c. Tables and forms
	---------------------------- */
	table {
		width:100%;
		margin-bottom:1.4em;
	}

	thead {
		background:transparent;
		text-align:center;
	}

	td, th {padding:4px 5px; line-height:1.2em; border:none; border-collapse:collapse; border-spacing:0;}

	th {font-weight:bold; padding:2px 5px;}

	tr.alt td {background:#f5f5f5;}

	table img {vertical-align:middle;}

	/* standard product detail table*/
	table.product-details {
		border:0;
		padding-bottom:0;
	}
		table.product-details th {
			background-color:#003b64;
			border-right:1px dotted #fff;
			color:#fff;
			font-size:1.4em;
		}

		table.product-details td {
			border-bottom:1px dotted #c3c4c4;
			font-size:1.1em;
			vertical-align:middle;
		}

		table.product-details .borderless td,
		table.product-details td.borderless {border-bottom:0;}

			table.product-details img {margin:0;}

			table.product-details p ,
			table.product-details li {
				font-size:1em;
				padding-bottom:0;
			}

	form {
		margin:0;
		text-align:left;
	}

	fieldset {text-align:left;}

	legend {
		font-size:1.8em;
		padding:0 0 .5em;
		display:none;
	}

	label {
		display:block;
		cursor:pointer;
	}

	p label, li label {font-size:1em;}

	input {
		font-family:Arial, Helvetica, sans-serif;
		padding:2px;
		overflow:visible; width:auto; /* eradicates ie padding issue */
	}

    input.radio,
    input.checkbox {
        margin-right:5px;
        vertical-align:middle;
    }

	input.button {
		float:right; display:inline;
		overflow:visible; width:auto; /* eradicates ie padding issue */
		padding:0;
	}
	
	input.image {padding:0;}
	
	body.js input.self-submit { display:none; }


	/* & 3D. Lists
	---------------------------- */
	ol {list-style:decimal;}
	ul {list-style:square;}
	li li {font-size:1em;}

/* = */

.no-bg {background:none !important; border:0 !important;}

span.save,
span.free {
	width:43px;
	height:43px;
	display:block;
	position:absolute;
	top:0px; right:0px;
	background:url(../images/lbl_save.png) no-repeat top right;
}

	span.free {background:url(../images/lbl_free.png) no-repeat 100% 0;}

span.visual-focus {
	background:#77c3ff;
	padding:1px 3px;
	color:#fff;
	margin-right:6px;
	font-weight:bold;
	text-transform:uppercase;
	display:inline-block;
	font-size:1.1em;
}

	.item-name span.visual-focus {
		font-size:.825em;
		margin:0;
	}

	.intro-details span.visual-focus {font-size:1em;}

	.offers span.visual-focus {
		background:#77c3ff;
		margin-right:0;
		font-size:1.275em;
	}



/* = 4. Standard page settings
----------------------------------------------------- */
html,
body {
	width:100%;
	min-width:960px;
	text-align:center;
}

body {background:#dcdcdc url(../images/spcr_body.png) repeat-x top center;}

#container {
	width:960px;
	margin:0 auto;
	text-align:left;
	background:transparent;
}

#wrapper {/*T
	float:left; */
	display:inline-block;
	background:#fff;
	width:960px;
}

.wrapper-inner {
	float:left; display:inline;
padding:20px 0 0 20px;
/*		padding:5px;*/
	width:940px;
	overflow:visible;
}

#header {
	float:left; display:inline;
	width:960px;
	background:#003b64 url(../images/spcr_body.png) repeat-x top center;
}

	/* & brand */
	#brand {
		float:left; display:inline;
		width:103px;
		height:71px;
		overflow:hidden;
		margin:8px 0 11px 23px;
	}

		#brand a {
			margin:0;
			padding:0;
			display:block;
		}

			#brand a img {margin-left:0;}
	/* */


#footer {
	clear:both;
	width:960px; overflow:auto; /* clearing method */
}

	#footer ul,
	#footer li {float:left; display:inline;}

		#footer a {color:#737474;}

		#bookend {
			float:left; display:inline;
			width:97%;
			overflow:visible;
			font-size:.834em;
			margin:0 0 0px;
			padding:8px 0px 18px 0px;
			color:#737474;
			background:#fff;
			text-align:center;
			border-top:1px solid #dcdcdc;
		}

			#bookend p {
				margin:0 0 6px;
				line-height:1.1em;
			}

				#bookend ul {
					float:none;
					display:block;
				}

					#bookend li {
						float:none;
						line-height:1.1em;
						margin:0 0 0 6px;
						padding:0 9px 0 0;
						background:url(../images/bg_pipe-grey.png) no-repeat 100% 50%;
					}
					
						#bookend li.last {background:none;}

							#bookend li a {color:#49494a;}

								.last a,
								.last {border:0 !important;}

	/* & 4a. Shadowbox customisation
		---------------------------- */
		body iframe#sb-content {overflow-x:hidden;}

		body #sb-body {
			border: 1px solid #dcdcdc;
			background-color: #fff;
		}
		body #sb-loading {
			padding-top: 1px;
			/* background:#fff url(../images/sprt_grey-grads.png) repeat-x; */
			background:url(../images/anim_loading.gif) no-repeat center center;
		}
		body #sb-loading p {
			display:inline;
			float:right;
			padding:6px 10px;
		}
	   body #sb-loading p a {
			color:#111;
			display:block;
			background:url(../images/bg_overlay_header_close.png) no-repeat 0 50%;
			padding-left:20px;
		}

/* = */



/* = 5. Misc
----------------------------------------------------- */

	/* & 5a. Styles for deprecated tags alerting CMS users that they are using illegal tags
		---------------------------- */
		b, big, blink, center, font, i, layer, marquee, small, u {
			background:yellow;
			border:2px dashed green;
			color:red;
			font-size:30px;
			font-weight:bold;
		}

		b:after, big:after, blink:after, center:after,  font:after, i:after, layer:after, marquee:after, small:after, u:after {
			/*content:" You are using a deprecated tag; please fix."*/
		}


	/* & 5b. error states
	----------------------------- */

        /* error container at the top of a page */
        	#error {
        		clear:both;
				color:#111;
        		background:#fcc;
        		padding:8px;
        		float:left; display:inline;
        		width:904px;
        		border-bottom:10px solid #fff;
        	}

        		#error p {
        			font-weight:bold;
        			padding:0;
					color:#111;
        		}

        			#error p img {
        				vertical-align:middle;
        				margin-right:8px;
        			}

        		#error ul {margin-left:30px;}

        			#error ul li {
        				list-style:none;
        				background:url(../images/bg_error-item.png) no-repeat 0 50%;
        				padding-left:9px;
        				font-size:1.1em;
        			}

    	    /* inline form error messages */
    			.input-error {
    				border:1px solid #f00 !important;
    				background:#fcc;
    			}
/* = */


/* pagination module */

.pagination {
	background:url(../images/sprt_grey-grads.png) repeat-x 0 100%;
	padding:4px 0;
	clear:both;
	float:left; display:inline;
	border-bottom:1px solid #fff;
}

	.pagination ul {
		position:relative;
		width:360px;
		margin:0 !important;
		list-style-type:none;
	}

		.pagination li {
			width:auto;
			background:none;
			float:left; 
			display:block;
			clear:none;
			font-size:1em;
			line-height:1.5;
			margin:0 1px;
		}

			.pagination li a:hover {color:#004b91;}

	.pagination .page-prev a,
	.pagination .page-next a {
		margin:0 2px 0 0;
		width:15px;
		height:15px;
		background:url(../images/sprt_pagination.png) no-repeat 0 0;
		text-indent:-20000px;
		overflow:hidden;
	}
	.pagination .page-prev input,
	.pagination .page-next input {
		margin:0 2px 0 0;
		width:15px;
		height:15px;
		background:url(../images/sprt_pagination.png) no-repeat 0 0;
		text-indent:-20000px;
		overflow:hidden;
		border: none;
		cursor:pointer;
		
	}

		.pagination .page-next a {
			margin:0 0 0 2px;
			background-position:-385px 0;
		}
		.pagination .page-next input {
			margin:0 0 0 2px;
			background-position:-385px 0;
		}

		.pagination .page-prev a:hover,
		.pagination .page-prev a:active,
		.pagination .page-prev a:focus {
			text-decoration:none;
			background-position:0 -15px;
			background:url(../images/sprt_pagination.png) no-repeat 0 -15px;
		}

		.pagination .page-next a:hover,
		.pagination .page-next a:active,
		.pagination .page-next a:focus {
			text-decoration:none;
			background-position:-385px -15px;
		}

	.pagination li a {
		width:1.5em;
		display:inline-block;
		background:none;
		color:#737474;
		text-align:center;
		display: block;
	}

		.pagination li a.page-current {
			background:url(../images/bg_page-current.png) no-repeat 50% 50%;
			color:#fff;
		}

			.pagination li a.page-current:hover {
				color:#fff;
				text-decoration:none;
			}

	.pagination .pagination-header {
		text-align:left;
		font-size:1.6em;
		font-weight:bold;
		line-height:1em;
	}

/* = */


/* product recommended */

	/* widths for all, to prevent ie gullotines */
	.product-recommended {width:560px;}
	
	.tabs-vertical .product-recommended {width:422px;}
	
	.bookend .product-recommended {
		width:940px;
		border-bottom:10px solid #fff;
		float:left; display:inline;
	}
	
	.pri-col .bookend .product-recommended {width:570px;}

	#container .bookend .product-recommended h2 {
		float:left;
		margin:12px 0 8px;
		padding:3px 10px;
		border-top:1px solid #dcdcdc;
		width:900px;
		font-size:1.4em;
		line-height:1.5em;
		background:url(../images/sprt_grey-grads.png) repeat-x bottom;
	}

	#container .pri-col .bookend .product-recommended h2 {
		float:none;
		margin:0 0 .6em 10px;
		padding:0;
		border:none;
		width:auto;
		line-height:1.2em;
		background:none;
	}

	.product-recommended ul {text-align:right;}

		#department .product-recommended .tab-content ul {padding-left:10px;}

		.product-recommended li {
			position:relative; float:left; display:inline;
			padding:0 6px 0 5px;
			border-right:1px dotted #c3c4c4;
			width:128px; 
			font-size:1em;
			
		}
		
		.bookend .product-recommended li {height:140px; overflow:hidden;}
		
		.product-recommended li img {margin-bottom:6px;}

		.product-recommended .product-info {padding:0 5px;}

			#department .product-recommended .product-info {padding:0 10px 0 0;}

		.product-recommended .product-price {
			float:left;
			margin:5px 0 0;
			padding:5px 3px;
			width:122px;
			background:#f5f5f5;
		}

			.product-recommended p {
				padding:1px 0;
				line-height:1.35em;
				font-size:1.2em;
				color:#49494a;
			}

		.item-name a {font-weight:bold;}

		.product-recommended .item-price {
			font-size:1.6em;
			color:#111;
		}

		.product-recommended .more,
		.product-recommended .view {font-size:1.1em;}

			.product-recommended .product-price p {
				float:right;
				width:auto;
			}

			.item-save {
				padding:0;
				font-style:italic;
				color:#737474;
			}

				.item-save strong {
					color:#737474;
					font-style:normal;
				}

			.product-recommended .product-price .item-price {
				float:none;
				width:auto;
				background:none;
			}

			.product-recommended .product-price .checkboxes {
				float:left; display:inline;
				margin:4px 0 0;
				text-align:left;
				font-size:1.1em;
				color:#737474;
			}

				.product-recommended .product-price .checkboxes input {
					float:left; display:inline;
					margin-right:2px;
				}

				.product-recommended .product-price .checkboxes label {float:left; display:inline;}
/* = */

/* product extra - sprite */

	#container p.product-extra {
		padding-left:23px;
		background:url(../images/sprt_checkout-items.png) no-repeat;
	}
	
		#container p.product-extra.warranty-general {background-position:0 -600px;}
		#container p.product-extra.warranty-1 {background-position:0 0;}
		#container p.product-extra.warranty-3 {background-position:0 -150px;}
		#container p.product-extra.warranty-5 {background-position:0 -300px;}
		#container p.product-extra.installation-basic {background-position:0 -450px;}
		#container p.product-extra.discount {background:none; padding:0;}

/* = */

/* generic promo modules */

	.promo  {background:#f5f5f5;}

	.promo p {
		padding:5px 0 5px 11px;
		line-height:1.273em;
		font-size:1.1em;
	}

	.promo ul {
		padding:5px;
		list-style:none;
		float:left; display:inline;
		width:160px;
	}
		.promo img {display:block;}

		.promo h2 {
			margin:0 0 0 11px;
			font-weight:normal;
			color:#003b64;
		}

		.promo li {
			padding:3px 0 3px 11px;
			font-size:1.1em;
			float:left; display:inline;
		}
			.promo li a {
				display:inline-block;
				background-position:0 .5em;
			}

			/* promo-inspiration */
			.promo-inspiration h2 {
				margin-bottom:0;
				padding:0 8px 0 0;
			}

			.promo-inspiration ul {
				padding:5px 10px;
				width:150px;
			}
	
				.promo-inspiration li {
					padding:3px 0 3px 0;
					border-top:1px dotted #c3c4c4;
				}

			/* promo-three-ways */
			.promo-three-ways ul {
				padding:5px 10px;
				width:150px;
			}
	
				.promo-three-ways li {
					padding:5px 9px 5px 0;
					border-bottom:1px dotted #c3c4c4;
					width:140px;
					line-height:1.2em;
				}
		
					.promo-three-ways li img {
						float:left; display:inline;
						margin:0 6px 6px 0;
					}
			
						.promo-three-ways li em {
							font-weight:bold;
							font-style:normal;
						}
			
						.promo-three-ways li strong {font-size:1.2em;}
/* = */

/* continue shopping section */
	.continue {
		float:left; display:inline; /* T */
		overflow:visible;
		width:900px;
		padding:10px 10px 4px 10px;
		background:#f5f5f5;
		border-bottom:10px solid #fff;
	}

        .continue-shopping {
            position:relative;
			width:141px;
			margin:0;
		}

            .continue-shopping p a {
                background:transparent url(../images/btn_continue-shopping.png) no-repeat 0 0;
                display:block;
				width:144px;
				height:26px;
				text-indent:-20000px;
            }

        /* continue shopping - menu (hover) */
            .continue-shopping .menu {
                background:#fff url(../images/bg_continue-shopping_menu.png) no-repeat 0 0;
                display:none;
                position:absolute;
                left:0; top:2.38em;
                padding-top:3px;
                width:208px; /* bg image width */
                z-index:3;
            }

            .continue-shopping.open .menu {display:block;}

            .continue-shopping .menu ul {
                background:transparent url(../images/bg_continue-shopping_menu.png) no-repeat 0 100%;
                padding:3px 5px 5px 5px;
				width:198px; overflow:auto; /* clearing method */
            }

            .continue-shopping .menu ul li {
				font-size:1.1em;
				float:left; display:block;
				width:100%;
				line-height:1.2em;
			}

            .continue-shopping .menu ul li a {
                background:transparent url(../images/sprt_arrows.png) no-repeat 5px 50%;
                color:#004b91;
                display:block;
                margin:0 0 .2em 0;
                padding:.3em 0 .3em 12px;
            }

            .continue-shopping .menu ul li a:hover,
            .continue-shopping .menu ul li a:active,
            .continue-shopping .menu ul li a:focus {
                background-color:#e7e7e7;
                text-decoration:none;
            }
			/* */