@charset "utf-8";

/*** global ***/
html { background-color: #222; }
body {
	margin: 0 auto;
	min-height: 100%;
	-webkit-text-size-adjust: none;
	background-color: #222;
	font-family: 'ff-din-web', Helvetica, Arial, sans-serif;
	font-size: 16px;
	font-weight: 100;
	-webkit-font-smoothing: antialiased;
	position: relative;
}
[href] { cursor: pointer; }
.not-mobile :focus { -moz-outline-style: none; outline: none; }
a { color: inherit; text-decoration: none; cursor: pointer; }
form { display: inline; }
input, select, textarea, button { font-family: inherit; font-size: inherit; font-weight: inherit; }
input, textarea, button { border-radius: 15px; border: 1px solid #bbb; padding: 5px 10px; }
input[type="submit"], button { color: #fff; border: 1px solid #f60; background: #f60; }
input[type="submit"]:disabled, button:disabled { border: 1px solid #777; background: #777; opacity: 0.25; }
.not-mobile input[type="submit"]:hover, .not-mobile button:hover { box-shadow: 1px 1px 5px rgba(0,0,0,0.5); }
.not-mobile input[type="submit"]:disabled:hover, .not-mobile button:disabled:hover { box-shadow: none; }
input[type="checkbox"] { width: auto; }
input[type="search"] { -webkit-appearance: textfield; }
.dev { color: #09f !important; font-size: 8px; }
#hidden { display: none; }
#page { float: left; position: absolute; width: 100%; }

/* scrolling indicators */
.scroll-up, .scroll-down, .scroll-left, .scroll-right {
	position: absolute; opacity: 0; transition: opacity 1s ease; z-index: 10; background: rgba(0, 0, 0, 0.3); z-index: 9;
}
.scroll-up span, .scroll-down span, .scroll-left span, .scroll-right span {
	width: 0; height: 0; position: absolute; top: calc(50% - 20px); left: calc(50% - 15px);
}
.scroll-up { top: 0; left: 0; right: 0; height: 60px; }
.scroll-up span {
	border-bottom: 30px solid #fff;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
}
.scroll-down { bottom: 0; left: 0; right: 0; height: 60px; }
.scroll-down span {
	border-top: 30px solid #fff;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
}
.scroll-left { top: 0; bottom: 0; left: 0; width: 60px; }
.scroll-left span {
	border-right: 30px solid #fff;
	border-top: 20px solid transparent;
	border-bottom: 20px solid transparent;
}
.scroll-right { top: 0; bottom: 0; right: 0; width: 60px; }
.scroll-right span {
	border-left: 30px solid #fff;
	border-top: 20px solid transparent;
	border-bottom: 20px solid transparent;
}

/* headline news */
div#news {
	margin: 0 auto;
	text-align: center;
	color: #fff;
	font-size: 16px;
	
	background-color: #777;
	line-height: 125%;
}
#news b { font-weight: 600; }

/* suggest alternative site */
div#suggest { right: 0; padding: 5px; background-color: #eee; color: #000; z-index: 10; }
#suggest a { color: rgba(0,0,0,1); }
.not-mobile #suggest a:hover { color: rgba(0,0,0,0.5); text-decoration: none; }
#suggest a#stay img { vertical-align: middle; }
.not-mobile #suggest a#stay img:hover { opacity: 0.5; }
#suggest a#go { padding-left: 5px; }
#suggest #go span { text-decoration: underline; }

/* article */
article { min-height: 100px; background-color: #fff; overflow: hidden; position: relative; clear: both; z-index: 5; }
article > h1 { margin-top: 15px; font-size: 26px; line-height: 160%; font-weight: 300; }

/* nav */
#slide-mask { display: none; }

nav { background-color: #fff; }
nav a { color: #777; }
.not-mobile nav a:hover { color: #000; }

#top-mini-nav {
	height: 75px;
	padding: 15px;
	box-sizing: border-box;
	display: flex; display: -webkit-flex;
	align-items: center; -webkit-align-items: center;
	justify-content: space-between; -webkit-justify-content: space-between;
	color: #777;
}
#top-mini-nav span { text-align: right; }
#top-mini-nav span.navgroup a { margin-right: 5px; padding-right: 10px; border-right: 1px solid #777; }
#top-mini-nav span.navgroup a[id=nav-cart],
#top-mini-nav span.navgroup a[id=open-slide-nav]
	{ margin-right: 0px; padding-right: 0px; border-right: none; }
#top-mini-nav span a#nav-cart {  }
#top-mini-nav span a#open-slide-nav {  }
.not-mobile #top-mini-nav span a#open-slide-nav:hover { -webkit-filter: brightness(0%); }
#top-mini-nav span a#open-slide-nav img { width: 30px; vertical-align: -5px; }

span#nav-logo { text-align: left; }
#nav-logo img { width: 136px; }
.cartitemcount, .carttotal { color: #333; }

#slide-nav {
	position: fixed;
	top: 0; right: 0; bottom: 0;
	width: 0;
	opacity: 0;
	pointer-events: none;
	overflow-y: auto;
	box-sizing: border-box;
	background: #fff;
	transition: left 0.3s ease;
	color: #999;
	z-index: 1000;
	padding: 10px;
}
#slide-nav #globalSearch { display: flex; display: -webkit-flex; height: 68px; }
#slide-nav #globalSearch input { margin: auto 0 0 0; }
#slide-nav a { display: block; color: #888; margin: 10px 0; }
.not-mobile #slide-nav a:hover { color: #000; }
#slide-nav a.nav-head { color: #000; font-weight: 600; }
.not-mobile #slide-nav a[href].nav-head:hover { color: #888; }
#slide-nav input { width: 100%; box-sizing: border-box; }
#slide-nav:target { width: 90%; max-width: 350px; opacity: 1; pointer-events: all; }
#slide-nav:target ~ #page { pointer-events: none; position: fixed; }
#slide-nav hr { background: #ccc; height: 1px; border: none; margin: 15px 0; }
#slide-mask { display: none; opacity: 0; }
#slide-nav:target + #slide-mask {
	display: block;
	opacity: 1;
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 900;
	background: rgba(0, 0, 0, 0.8);
}

/* large */
@media all and (min-width: 769px) {
	div#news { padding: 5px 0px; }
	#top-mini-nav span a#open-slide-nav { padding-left: 20px; }
	#answers aside { position: absolute; top: 0; left: 0; bottom: 0; width: 200px; }
	article > h1 { margin-left: 50px; }
	div#detail { padding: 50px; }
	body#devices article a { padding: 10px 50px; }
	table#device-add-table { margin: 10px 50px; }
	div#item-pricebox, div#item-pricebar { padding: 10px 50px; }
	div#gallery { padding: 0px 50px 50px; }
	#itemSpecs { margin: 10px 10px 10px 50px; }
	#itemSpecs div { width: 280px !important; }
	#itemMedia { margin: 10px 10px 10px 50px; }
	.mediaReview { width: 280px; }
	#grid { padding: 0px 10px 50px; }
	#answers-tab-contents { margin: 15px; margin-left: 230px; min-height: 400px; }
	ul.answers-block { }
	#answers aside { padding: 15px; }
	article#answers .tabs li { width: 200px; }
}
/* small */
@media all and (max-width: 768px) {
	div#news { padding: 3px 0px; }
	#top-mini-nav span a#open-slide-nav { padding-left: 10px; }
	article { overflow-x: auto; -webkit-overflow-scrolling: touch; }
	#stores-list { display: none; }
	#stores-search { left: 0 !important; }
	#stores-search input { margin-left: 10px; margin-right: 10px; }
	#stores-map { top: 42px !important; right: 0 !important; }
	article > h1 { margin-left: 10px; }
	div#detail { padding: 10px; }
	body#devices article a { padding: 10px; }
	table#device-add-table { margin: 10px; }
	div#item-pricebox, div#item-pricebar { padding: 5px 10px; }
	#item-pricebar .item-image,
	#item-pricebar .item-fits,
	#item-pricebar .item-ships,
	#item-pricebar .item-shipsfree,
	#item-pricebar .item-similar
		{ display: none; }
	div#gallery { padding: 0px 10px 10px; }
	#itemSpecs { margin: 10px; }
	#itemMedia { margin: 10px; }
	#grid { padding: 0px 10px 10px; }
	#answers-tab-contents { margin-left: 230px; margin-right: 15px; min-height: 400px; margin: 10px; }
	ul.answers-block { }
	#answers aside { padding: 10px; }
	article#answers .tabs li { width: 250px; }
	footer { font-size: 14px; }
}
/* disappearing menu */
@media all and (max-width: 900px) {
	#nav-search { display: none; }
}
@media all and (max-width: 800px) {
	#nav-terralinq { display: none; }
}
@media all and (max-width: 700px) {
	#nav-stores { display: none; }
}
@media all and (max-width: 600px) {
	#nav-help { display: none; }
}
@media all and (max-width: 500px) {
	#nav-products { display: none; }
}
/* extra small */
@media all and (max-width: 400px) {
	div#news { padding: 1px 0px; }
}

/* search */
input.search {
	width: 150px;
	padding: 0 0 0 10px;
	color: #000;
	text-align: left;
	border-radius: 20px;
	border: solid 1px #ccc;
	background: url('../../images/site/iconSearchGray.png') no-repeat 5px 5px;
	background-size: 12px 12px;
	background-image: -webkit-image-set(url('../../images/site/iconSearchGray.png') 1x, url('../../images/site/iconSearchGray_2x.png') 2x);
	background-color: none;
}
[placeholder]:focus::-webkit-input-placeholder { opacity: 0.3; }
@-moz-document url-prefix() { input.search { padding: 0 0 0 20px; } } /* Firefox */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { /* IE 10+ */
	input.search { padding: 0 0 0 20px; height: 22px; }
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	input.search { padding: 0 3px 0 13px; } /* Safari and Chrome */
	::i-block-chrome, input.search { padding: 0 0 0 10px; } /* Safari only */
}
.safari-mobile input.search { padding: 0 3px 0 20px; } /* Safari mobile */

/* search results */
div.searchResults { display: none; }
.searchResults li { display: block; color: #000; line-height: 20px; }
.searchResults li > span { }
.searchResults a { width: 100% !important; overflow: hidden; color: inherit; position: relative; display: inline-block; }
.not-mobile .searchResults a:hover { color: #000 !important; }
.searchResults a img { display: inline-block; vertical-align: middle; height: 50px; padding-right: 5px; }
.searchResults a img + span { display: inline-block; vertical-align: middle; }
.not-mobile .searchResults a:hover img { }
span.smallnote { opacity: 0.5; font-size: 75%; white-space: nowrap; }

#globalSearchResult, #deviceSearchResult { padding-top: 10px; }
#topGlobalSearchResult { background-color: #fff; padding: 10px; }
#topGlobalSearchResult a { display: block; color: #888; margin: 10px 0; }
.not-mobile #topGlobalSearchResult a:hover { color: #000; }

div#smallnote { color: #666; position: absolute; bottom: 0; left: 10px; right: 0; height: 30px; }
div#smallnote a { color: #666; }
.not-mobile div#smallnote a:hover { text-decoration: underline; }

/* content */
#content { position: relative; overflow: auto; }
#content header { position: relative; }

/* socialbuttons */
#socialbuttons { cursor: pointer; vertical-align: middle; padding-bottom: 15px; }
#socialbuttons img { width: 32px; opacity: 0.5; vertical-align: middle; }
.not-mobile #socialbuttons img:hover { opacity: 1; }

/* EasyFader .image-slider */
.fader { -webkit-backface-visibility: hidden; -webkit-transform-style: preserve-3d; }
.fader .slide { position: absolute; top: 0; z-index: 1; opacity: 0; }
.fader img.slide { width: 100%; }
.prev, .next {
	position: absolute;
	height: 80px;
	line-height: 55px;
	width: 50px;
	font-size: 100px;
	text-align: center;
	color: #fff;
	top: 50%;
	left: 0;
	z-index: 4;
	margin-top: -25px;
	cursor: pointer;
	opacity: .7;
	transition: all 150ms;
	text-shadow: 0px 0px 2px rgba(0,0,0,0.5);
}
.not-mobile .prev:hover, .not-mobile .next:hover { opacity: 1; }
.next { left: auto; right: 0; }
.pager-list {
	position: absolute;
	width: 100%;
	bottom: 0;
	text-align: center;
	z-index: 4;
	padding: 0;
}
.pager-list a {
	display: inline-block;
	width: 7px;
	height: 7px;
	margin: 7px 10px;
	text-indent: -9999px;
	border-radius: 999px;
	cursor: pointer;
	transition: all 150ms;
	box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
	background: rgba(255, 255, 255, 0.7);
}
.not-mobile .pager-list a:hover, .pager-list a.active { background: rgba(64, 64, 64, 0.7); }

/* add device table */
body#devices article a { display: inline-block; white-space: nowrap; }
#device-add-table a { text-decoration: underline; }
#device-add-table thead th { padding: 0px 0px; }
#device-add-table thead td, #device-add-table thead th { padding-bottom: 5px; }
#device-add-table td { padding: 0 10px; white-space: nowrap; }
.device-add-view { cursor: pointer; line-height: 30px; }
.not-mobile .device-add-view:hover .device-add-view-hint { opacity: 1; }
#device-add-table tr td:first-child { border-top-left-radius: 15px; border-bottom-left-radius: 15px; }
#device-add-table tr td:last-child { border-top-right-radius: 15px; border-bottom-right-radius: 15px; }
.not-mobile tr.device-add-view:hover { background-color: rgba(0,0,0,0.1); }
.device-add-view-hint { opacity: 0.2; }
#device-add-table td#messages { color: #f00; }
/* use labels as radio buttons */
#device-add-table input[type="radio"] + label { text-decoration: underline; cursor: pointer; }
#device-add-table input[type="radio"]:checked + label { font-weight: 600; text-decoration: none; cursor: auto; }
#device-add-table input[type="radio"] { display: none; }
#device-add-table td.times { padding: 0; }

/* content */
#content article pre { white-space: normal; }
#content article ul li { list-style: disc; list-style-position: inside; }
#content article ol { list-style-type: disc; }

/* item detail */
#tabContent a { color: #000; z-index: 1; }
.not-mobile #tabContent a:hover { text-decoration: underline; color: #000; }
article#specifications { background-color: #efefef; }

/* features */
@media all and (min-width: 769px) {
	div.feature { height: 400px; box-sizing: border-box; }
	.feature .feature-copy { width: 30%; padding: 50px; position: absolute; z-index: 4; }
	.feature .feature-image { position: absolute; }
	.feature .feature-image.background { display: none; }
	.feature .left { position: absolute; left: 0; }
	.feature .right { position: absolute; right: 0; }
	.feature .center { position: absolute; right: 0; left: 0; margin-left: auto; margin-right: auto; }
	.feature .feature-copy.center { text-align: center; }
	.feature .feature-copy.middle { height: 100px; }
	.feature .top { position: absolute; top: 0; }
	.feature .middle { position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; }
	.feature .bottom { position: absolute; bottom: 0; }
}
@media all and (max-width: 768px) {
	div.feature { height: inherit !important; background-image: none !important; }
	.feature .feature-copy { width: 100% !important; padding: 25px; z-index: 4; box-sizing: border-box; color: #000; }
	.feature .feature-copy.left { text-align: left; }
	.feature .feature-copy.right { text-align: right; }
	.feature .feature-copy.center { text-align: center; }
	.feature .feature-image { width: 100% !important; height: auto !important; vertical-align: middle; }
	.feature .feature-image .wrapper { padding-bottom: 66.66%; width: 100% !important; height: auto !important; }
	.feature-ab { width: 100% !important; height: auto !important; padding-bottom: 66.66%; }
	.feature-ab img { height: 100%; }
	.feature-ab div { height: 100%; }
}

div.feature { width: 100%; position: relative; float: left; }
.feature p, .feature h1 { margin-top: 5px; padding: 0; line-height: 160%; font-weight: 300; }
.feature .feature-image { z-index: 3; }
.feature .feature-image .wrapper { z-index: 2; }
.feature .feature-headline { font-size: 26px; font-weight: 300; line-height: 160%; }
div.feature-text-playbutton { margin-top: 5px; opacity: 0.7; }
.not-mobile div.feature-text-playbutton:hover { opacity: 1; }
.feature-text-playbutton span { text-decoration: underline; }
.feature-text-playbutton img { vertical-align: middle; margin-bottom: 3px; }
.feature br { line-height: 250%; }
.feature-ab { position: relative; }
.feature-ab div { position: absolute; top: 0px; left: 0px; overflow: hidden; }
.feature-ab-left { border-right: solid 1px #fff; }
.feature-copy li { line-height: 175%; }
.feature-dev { z-index: 10; position: absolute; left: 2px; top: 2px; font-size: 9px; }
.feature .feature-text a { text-decoration: underline; }
.not-mobile .feature img.feature-image-playbutton:hover { opacity: 1; }
.feature .feature-youtube { position: absolute; z-index: 1; }
.feature div.feature-image-playbutton { position: absolute; }
.feature img.feature-image-playbutton {
	position: absolute;
	z-index: 5;
	top: 0; bottom: 0; margin-top: auto; margin-bottom: auto;
	right: 0; left: 0; margin-left: auto; margin-right: auto;
	padding: 5px;
	opacity: 0.5;
}
.feature-lineup-scroll { overflow-x: scroll; }
.feature-lineup-row { position: relative; display: inline-block; white-space: nowrap; overflow-x: visible; }
.feature-lineup-row img { vertical-align: middle; }

/* price box/bar */
div#item-pricebox, div#item-pricebar {
	z-index: 300;
	color: #000;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, .7);
	background-color: #fff;
	width: 100%;
	box-sizing: border-box;
	display: flex; display: -webkit-flex;
	flex-flow: row wrap; -webkit-flex-flow: row wrap;
}
div#item-pricebar { position: fixed; top: 0; }
div#item-pricebox { position: relative; }

.item-image { height: 75px; padding-right: 15px; margin: auto 0; }

div.item-info { color: #777; line-height: 120%; margin: auto 0; padding-right: 15px; }
.item-title { color: #000; font-weight: 600; display: inline-block; padding-top: 2px; white-space: nowrap; }
.item-fits { white-space: nowrap; }
.item-ships { color: #777; white-space: nowrap; }
.item-ships a { color: inherit; text-decoration: underline; }
.not-mobile .item-ships a:hover { color: #000; }
.item-shipsfree { white-space: nowrap; }
.item-pricewas { font-size: 12px; text-transform: lowercase; text-decoration: line-through; white-space: nowrap; }

div.item-similar {  margin: auto 0; padding-right: 15px; }
h1.item-similar-title { font-size: 10px; text-transform: uppercase; color: #999; }
.item-similar-image { height: 40px; opacity: 1; }
.item-similar a { position: relative; }
.not-mobile .item-similar a .hover {
	display: block;
	z-index: 10;
	color: #333;
	text-align: center;
	position: absolute;
	top: 17px; left: 0; right: 0;
	opacity: 0;
	font-size: 9px;
}
.not-mobile .item-similar a:hover .hover { opacity: 1; }

div.item-button { text-align: right; margin: auto 0; flex-grow: 100; -webkit-flex-grow: 100; padding: 20px 0; }
a.addtocart {
	text-transform: uppercase;
	font-weight: 600;
	z-index: 500;
	border-radius: 10px;
	background-color: #f30;
	color: #fff;
	padding: 10px 30px;
}
.not-mobile a.addtocart:hover { color: #fff; background-color: #c20; }
span.addingtocart { display: none; }
a.addingtocart span.addingtocart { display: inherit; }
a.addingtocart span.addtocart { display: none; }
a.addingtocart { background-color: #444; }
.not-mobile a.addingtocart:hover { background-color: #333; }
span.addedtocart { display: none; }
a.addedtocart span.addedtocart { display: inherit; }
a.addedtocart span.addtocart { display: none; }
a.addedtocart { background-color: #2c0; }
.not-mobile a.addedtocart:hover { background-color: #090; }
.item-button .discontinued {
	text-transform: uppercase;
	font-weight: 600;
	font-size: 16px;
	text-decoration: none;
	z-index: 500;
	border-radius: 10px;
	background-color: #999;
	color: #fff;
	padding: 10px 30px;
}

/* gallery */
article#gallery { min-height: inherit !important; position: relative; }
div#gallery { min-height: inherit !important; position: relative; }
#gallery li { margin: 0; }

/* full screen item gallery */
div#fullscreenGallery {
	display: none;
	opacity: 0;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #fff;
	-webkit-overflow-scrolling: touch;
	z-index: 2000;
}
div#fullscreenItemGallery {
	position: relative;
	overflow-x: auto;
	overflow-y: auto;
	-webkit-transform: translate3d(0,0,0);
	white-space: nowrap;
	top: 0;
	bottom: 67px;
	height: 100%;
}
#fullscreenItemGalleryList { height: 100%; }
#fullscreenItemGalleryList img { margin: 0; padding: 0; height: 100%; display: inline-block; }
#fullscreenNav {
	display: none;
	position: absolute;
	left: 0;
	top: 0;
	padding-left: 50px;
	margin-right: 50px;
	z-index: 2;
	background: #fff;
	border-radius: 0 0 10px 0;
	border: 10px solid rgba(255, 255, 255, 0.5);
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.2);
}
.not-mobile #fullscreenNav:hover { }
#fullscreenNav a { }
.not-mobile #fullscreenNav a:hover { opacity: 0.8; }
#fullscreenNav a.activeSlide { opacity: 0.5; }
.not-mobile #fullscreenNav a.activeSlide:hover { opacity: 0.4; }
#fullscreen-right {
	position: absolute;
	right: 0; top: 40px; bottom: 40px;
	width: 25%;
	cursor: e-resize;
	z-index: 1;
}
#fullscreen-left {
	position: absolute;
	left: 0; top: 40px; bottom: 40px;
	width: 25%;
	cursor: w-resize;
	z-index: 1;
}
#fullscreen-zoom {
	position: absolute;
	right: 5px;
	top: 5px;
	width: 35px;
	height: 35px;
	cursor: pointer;
	background: url('../../images/site/zoomin.png') center center no-repeat;
	background-size: 35px 35px;
	opacity: 0.5;
	z-index: 3;
}
.not-mobile #fullscreen-zoom:hover { opacity: 1; }
#fullscreen-thumbs {
	position: absolute;
	left: 5px;
	top: 5px;
	width: 35px;
	height: 35px;
	background: #f60;
	border-radius: 5px;
	cursor: pointer;
	background: url('../../images/site/thumbs.png') center center no-repeat;
	background-size: 35px 35px;
	opacity: 0.5;
	z-index: 3;
}
.not-mobile #fullscreen-thumbs:hover { opacity: 1; }

/* item gallery */
#itemGalleryThumbs a, #itemGalleryThumbs img { float: left; }
#itemGalleryThumbs .activeSlide { opacity: 0.5; }
.not-mobile #itemGalleryThumbs .activeSlide:hover { opacity: 0.4; }
.not-mobile #itemGalleryThumbs a:hover { opacity: 0.8; }
a.itemGalleryThumb { position: relative; }
#itemGalleryThumbs span#itemGalleryThumb-playbutton {
	position: absolute;
	top: 0; bottom: 0; left: 0; right: 0;
	background: url('../../images/site/playbutton.png') center center no-repeat;
	background-size: 35px 35px;
}

/* item specs */
#itemSpecs { line-height: 175%; }
#itemSpecs h1 { font-weight: 600; }
#itemSpecs h2 { font-weight: 400; }
#itemSpecs li { margin-left: 20px; }
#itemSpecs div {
	white-space: normal;
	margin-right: 30px;
	float: left;
	color: #000;
	margin-bottom: 20px;
}
#itemSpecs th { text-align: left; font-weight: 600; padding-bottom: 10px; padding-top: 10px; }
#itemSpecs td { padding-right: 10px; padding-bottom: 10px; }
#itemSpecs tr:first-child th { padding-top: 0 !important; }
#itemSpecs td:first-child { color: #999; }
.itemSpecsUnits { color: #999; }
#itemSpecsConstruct ol { margin-left: 20px; list-style-type: disc !important; }
#itemSpecsConstruct ol li { list-style: disc; }
#content article #itemSpecs br { content: normal !important; display: inherit !important; margin-bottom: 0 !important; }

/* item media */
#itemMedia { line-height: 175%; }
.itemMediaImage { height: 380px; position: absolute; right: 0; top: 10px; width: 250px; }
.itemMediaImage img { position: absolute; bottom: 0px; }
.mediaReview h4 { font-weight: 600; }
.mediaReview a { color: #777 !important; text-decoration: underline !important; }
.mediaReview a { text-decoration: none; }
.mediaReview img { max-width: 100%; }
.medialist { list-style-type: none; }
.medialist li { list-style: none !important; }
.mediaReview { display: inline-block; vertical-align: top; margin: 0px; padding-bottom: 30px; padding-right: 30px; }
a.youTubeLink { background-repeat: no-repeat; background-position: center center; background-size: cover; display: block; width: 280px; height: 140px; margin: 10px 0; position: relative; }
.youTubeLink img { position: absolute; top: 50%; left: 50%; margin-left: -17px; margin-top: -17px; opacity: 0.5; }
.not-mobile a.youTubeLink:hover img { opacity: 1; }

/* catalog items grid */
#grid {
	display: flex; display: -webkit-flex;
	flex-flow: row wrap; -webkit-flex-flow: row wrap;
	justify-content: center; -webkit-justify-content: center;
}
a.gridbox {
	margin: 15px 5px;
	position: relative;
	width: 300px;
	color: #777;
	font-weight: 400;
}
.gridbox-specs { display: block; padding-bottom: 5px; }
.gridbox-brief { display: block; padding-top: 5px; font-size: 13px; line-height: 14px; opacity: .7; }
.gridbox-price-line { font-size: 13px; display: block; padding-top: 5px; padding: 0; }
.gridbox-price-line .pricewas { font-size: 12px; text-decoration: line-through; }
.gridbox-ships { white-space: nowrap; overflow: hidden; }
.gridbox a { text-decoration: none !important; }
.gridbox img, .gridbox .image-placeholder { width: 300px; height: 200px; border-bottom: 1px solid #ccc; padding-bottom: 5px; margin-bottom: 5px; }
.grid-empty { margin: 0 30px; padding: 30px 0; }
.gridbox .pager-list { top: 195px; }
.gridbox .pager { background: rgba(64, 64, 64, 1); }
.gridbox .pager.active { background: rgba(255, 255, 255, 1); }
.not-mobile .gridbox .pager:hover { background: rgba(128, 128, 128, 1); }

.lineup { }
.lineup-scroll { height: 180px; overflow-x: scroll; }
.lineup-row { display: inline-block; height: 180px; white-space: nowrap; overflow-x: visible; }
.lineup .gridbox-extras { display: none; }
.lineup .gridbox { margin: 0; height: inherit; display: inline-block; width: 200px; white-space: nowrap; }
.lineup .gridbox img, .lineup .gridbox .image-placeholder { vertical-align: middle; padding-top: 20px; width: 200px; height: 133px; border: none; }
.lineup .gridbox .pager-list { top: 155px; }

.image-placeholder { display: inline-block; }

span.badge-shipsfree, span.badge-onsale, span.badge-new {
	width: 40px;
	height: 40px;
	border-radius: 20px;
	position: absolute;
	right: 20px;
	background-color: rgb(250,250,250); /* IE < 9 fallback */
	background-color: rgba(255,255,255,.9);
	box-shadow: 1px 1px 3px rgba(0,0,0,.3);
	font-weight: 600;
	display: table;
}
.badge-shipsfree p, .badge-onsale p, .badge-new p {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	padding-bottom: 1px;
}
span.badge-new { top: 0px; color: #f00; }
span.badge-onsale { top: 40px; color: #f60; font-size: 12px; line-height: 14px; }
span.badge-shipsfree { top: 80px; font-size: 8px; line-height: 10px; }
.badge-shipsfree p { padding-bottom: 3px; } /* push up a bit */

/* home */
#specials {
	padding-bottom: 30px;
	display: flex; display: -webkit-flex;
	flex-flow: row wrap; -webkit-flex-flow: row wrap;
	justify-content: center; -webkit-justify-content: center;
}
.special { width: 280px; height: 250px; padding-bottom: 15px; margin: 15px 25px; position: relative; }
.special-text { font-size: 18px; width: 300px; position: absolute; left: 0; top: 205px; font-weight: 200; }
p.special-copy { font-size: 18px; line-height: 18px; font-weight: normal; opacity: .3; margin-top: 5px; }
.special img { width: 300px; position: absolute; left: 0; top: 5px; }
article#instagram {
	display: flex; display: -webkit-flex;
	flex-flow: row wrap; -webkit-flex-flow: row wrap;
	min-height: inherit;
}
div.instawrap {
	height: 150px; width: 400px;
	flex-grow: 100; -webkit-flex-grow: 100;
	position: relative;
}
div.instascroll {
	overflow-x: scroll;
	
}
div.instafeed {
	display: inline-block;
	height: 150px;
	white-space: nowrap;
	overflow-x: visible;
}
.instafeed img { vertical-align: middle; height: 150px; }
#instagram > a {
	display: inline-block;
	height: 100px;
	padding:  25px 75px 25px 25px;
	flex-grow: 1; -webkit-flex-grow: 1;
	width: 275px;
	color: #fff;
	background-color: #369;
	position: relative;
	line-height: 1.2;
}
#instagram > a h1 { font-size: 24px; padding-bottom: 5px; }
#instagram > a img { position: absolute; top: 0; bottom: 0; right: 25px; margin-top: auto; margin-bottom: auto; }

/* stores vertical fit */
#stores #content { min-height: 200px; height: calc(100vh - 220px); }
#stores article { min-height: 100%; }

/* stores */
#stores-map { position: absolute; top: 0; left: 0; bottom: 0; right: 280px; z-index: 10; }
#stores .gm-style { font-family: inherit; line-height: 18px; }
#stores a.storeName { color: #f40; }
.not-mobile #stores a.storeName:hover { color: #f60; }
#stores a.storePremium { font-weight: bold; color: #0bf; }
.not-mobile #stores a.storePremium:hover { color: #09f; }

#stores-search {
	position: absolute;
	top: 0;
	right: 0;
	width: 260px;
	z-index: 11;
	padding-right: 10px;
}
#stores-search input { width: calc(100% - 50px); box-sizing: border-box; }
#stores-search button { width: 24px; height: 24px; padding: 0px 5px 0px 5px; }
#stores-search button.submit { text-decoration: none; }
#stores-search #locate img { opacity: 0.6; width: 20px; height: 20px; padding-bottom: 4px; vertical-align: middle; }
.not-mobile #stores-search #locate:hover img { opacity: 1.0; }

#stores-list {
	position: absolute;
	top: 30px;
	right: 0;
	bottom: 0;
	width: 260px;
	overflow: hidden;
	z-index: 10;
	margin: 10px 0px 10px 10px;
	padding-right: 10px;
	-webkit-transform: none;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}
.not-mobile #stores-list a:hover { background-color: #eee; }
#stores-list a { display: block; padding: 5px; line-height: 20px; }
.not-mobile #stores-list li a:hover { color: #ccc; cursor: pointer; }
#stores-list button { background: none; display: inline; border: none; padding: 0; margin: 0; cursor: pointer; }
#stores-list li.headline { padding: 5px 0 0 15px; }
#stores-list .storeDist { color: #ccc; font-size: x-small; }
#stores-list .storeName { color: #f40; text-decoration: none; }
#stores-list .storeLocation {color:#ccc; text-decoration: underline;}
#stores-list .storeLocation button {color:#ccc; text-decoration: underline; }
#stores-list .noMatches { padding: 0 0 0 15px; margin:0; }

/* answers */
/* article#answers ul.answers-block { display: none; } */
article#answers { line-height: 150%; }
article#answers .question { display: block; font-weight: 600; padding-bottom: 5px; }
article#answers .answer { white-space: pre-line; width: 100%; display: inline-block; }
article#answers .answer a { color: inherit; text-decoration: underline; }
.not-mobile article#answers .answer a:hover { color: #f60; }
article#answers .answer b { font-weight: 500; }
article#answers .answer p { padding-bottom: 10px; }
article#answers .question.active { color: #f60; }
.not-mobile article#answers .question a:hover { text-decoration: none !important; }
article#answers li.answers {
	display: block;
	position: relative;
	margin-bottom: 40px;
	overflow-y: hidden;
	overflow: hidden;
}
article#answers .answers-block:before { display: block; content: " "; margin-top: -500px; height: 500px; visibility: hidden; } /* fix scroll to issue */
article#answers .answers-block:target { display: inline; }
/* article#answers .answers-block { display: none; } */
article#answers .answers-block ol h1 { margin-top: 30px; }
article#answers { overflow-x: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; }
article#answers a { color: inherit; }
.not-mobile article#answers a:hover { color: #bbb; }
article#answers .tabs ul {  }
article#answers .tabs li { list-style: none; display: inline-block; }
article#answers .tabs a { box-sizing: border-box; width: 100%; display: block; margin-bottom: 5px; }
.not-mobile article#answers .tabs a:hover {  }
article#answers .tabs a.active { font-weight: 600; }
article#answers .tabs a.active::after { content: ' ▶︎'; }
article#answers form { width: 100%; overflow-x: hidden; }
article#answers form a { text-decoration: underline; }
article#answers li { display: block; max-width: 500px; }
article#answers h1 { color: #000; font-size: 24px; display: inline-block; margin-bottom: 20px; }
article#answers form label { display: block; margin-bottom: 5px; font-weight: 600; }
article#answers form label.check { margin-right: 10px; font-weight: inherit; white-space: nowrap; }
article#answers form input.check { width: inherit; }
.not-mobile article#answers form label button:hover { cursor: pointer; }
article#answers form ol { margin: 0; padding: 0; }
article#answers form li { list-style: none; margin: 0; padding-bottom: 20px; }
article#answers input,
article#answers textarea,
article#answers select,
article#answers button
	{ width: 100%; box-sizing: border-box; }
article#answers input[type="checkbox"] { width: auto; }
article#answers #serial_box a { white-space: nowrap; }
article#answers .hidden { display: none; }
article#answers .general { display: none; }
article#answers .warranty { display: none; }
article#answers .defect { display: none; }
article#answers .basics { display: none; }
article#answers .required { color: #700; border-color: #f00; }
article#answers .required.valid { color: inherit; border-color: #bbb; }
article#answers .invalid { color: #700; border-color: #f00; }
article#answers .more { font-size: 11px; text-transform: uppercase; font-weight: 600; }
article#answers #result { padding-bottom: 30px; }
article#answers #result h1 { color: red; font-weight: 600; }
article#answers li#submit_field input:disabled { border: 1px solid #f00; opacity: 1; background-color: #fdd; color: #f00; }

/* pricelist */
body#pricelist article { overflow-x: scroll; -webkit-overflow-scrolling: touch; }
body#pricelist article table { margin-bottom: 5px; width: 100%; }
body#pricelist article tr:nth-child(even) { background-color: rgba(0, 0, 0, 0.05); }
body#pricelist article th {
	padding-left: 5px; padding-right: 5px;
	vertical-align: bottom; text-align: left;
	font-weight: 600;
}
body#pricelist article td { padding-left: 5px; padding-right: 5px; vertical-align: top; }
body#pricelist article td.sku { white-space: nowrap; }
body#pricelist article .price { white-space: nowrap; text-align: right; }
body#pricelist article td.bonus { color: #0a0; }
body#pricelist article td.name { width: 100px; }
body#pricelist article td.fits { width: 100px; }
body#pricelist td.calculator, body#pricelist td.entry { background-color: rgba(0, 0, 0, 0.05); }
body#pricelist .extra { display: none; }
body#pricelist #pricelisttotalline { font-weight: 600; }

/* footer */
footer { padding: 0px 10px 10px; }
footer, footer a { color: #666; position: relative; }
footer .vatnote { font-size: 9px; }
footer .popup { left: 0 !important; }
.not-mobile footer a:hover { color: #aaa; }
footer > ul { display: inline-block; padding-top: 6px; }
footer > ul > li { display: inline-block; padding-right: 10px; position: relative; }
footer > ul > li.dev { padding-right: 0; }
footer li, footer li a { color: inherit; text-decoration: none; }
footer > ul > li:first-child { border: none; padding-left: 0; margin-left: 0; }
footer a.active { text-decoration: underline; cursor: default; }
.not-mobile footer a.active:hover { color: inherit; }
footer .right { float: right; }