/* entity pagination */
.pagination {display: inline-block;padding-left: 0;margin: 10px 0;border-radius: 4px;}
.pagination > li {display: inline;}
.pagination > li > a, .pagination > li > span {position: relative;float: left;padding: 6px 12px;line-height: 1.428571429;text-decoration: none;background-color: #ffffff;border: 1px solid #dddddd;margin-left: -1px;}
.pagination > li:first-child > a, .pagination > li:first-child > span {margin-left: 0;border-bottom-left-radius: 4px;border-top-left-radius: 4px;}
.pagination > li:last-child > a, .pagination > li:last-child > span {border-bottom-right-radius: 4px;border-top-right-radius: 4px;}
.pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, .pagination > li > span:focus {background-color: #eeeeee;}
.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus {z-index: 2;color: #ffffff;background-color: #cc0000;border-color: #440000;cursor: default;}
.pagination > .disabled > span,.pagination > .disabled > span:hover,.pagination > .disabled > span:focus,.pagination > .disabled > a,.pagination > .disabled > a:hover,.pagination > .disabled > a:focus {color: #999999;background-color: #ffffff;border-color: #dddddd;cursor: not-allowed;}
.pagination-lg > li > a, .pagination-lg > li > span {padding: 10px 16px;font-size: 18px;}
.pagination-lg > li:first-child > a, .pagination-lg > li:first-child > span {border-bottom-left-radius: 6px;border-top-left-radius: 6px;}
.pagination-lg > li:last-child > a, .pagination-lg > li:last-child > span {border-bottom-right-radius: 6px;border-top-right-radius: 6px;}
.pagination-sm > li > a, .pagination-sm > li > span {padding: 5px 10px;font-size: 12px;}
.pagination-sm > li:first-child > a, .pagination-sm > li:first-child > span {border-bottom-left-radius: 3px;border-top-left-radius: 3px;}
.pagination-sm > li:last-child > a,.pagination-sm > li:last-child > span {border-bottom-right-radius: 3px;border-top-right-radius: 3px;}

/* Spacing consistency */
.page-block {
	margin: 10px 0;
}

	.page-block:before,
	.page-block:after {
		content: " ";
		display: table;
	}

/* Grid system */
/* This grid system is deprecated in favor of bootstrap's grid system. See http://getbootstrap.com for documentation*/

.colwrap:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

* html .colwrap:after { /* IE6 */
	zoom: 1;
}

*:first-child + html .colwrap { /* IE7 */
	zoom: 1;
}

.page-row {
	margin: 10px 0;
}

	.page-row:before,
	.page-row:after {
		content: " ";
		display: table;
	}

	.page-row:after {
		clear: both;
	}

.one-half {
	width: 49.5%;
}

.one-third {
	width: 32.66666667%;
}

.two-thirds {
	width: 66.33333333%;
}

.one-fourth {
	width: 24.25%;
}

.three-fourths {
	width: 74.75%;
}

.one-fifth {
	width: 19.2%;
}

.two-fifths {
	width: 39.4%;
}

.three-fifths {
	width: 59.6%;
}

.four-fifths {
	width: 79.8%;
}

.one-sixth {
	width: 15.83333333%;
}

.one-half, .one-third, .two-thirds, .one-fourth, .three-fourths, .one-fifth, .two-fifths, .three-fifths, .one-sixth, .four-fifths {
	display: inline; /*ie6 double-margin bug*/
	float: left;
	margin-left: 1%;
	box-sizing: border-box;
}

	.one-half:first-child, .one-third:first-child, .two-thirds:first-child, .one-fourth:first-child, .three-fourths:first-child, .one-fifth:first-child, .two-fifths:first-child, .three-fifths:first-child, .one-sixth:first-child, .four-fifths:first-child {
		margin-left: 0;
	}

/* Grid helper classes */

.grid-item-image, .list-item-image {
	max-width: 100%;
}

.grid-item-image-wrap, .grid-item-name-wrap, .grid-item-sku-wrap, .grid-item-weight-wrap {
	margin-bottom: 5px;
}

.variant-grid-item .add-to-cart-form {
	text-align: center;
}

.grid-item-inner, .list-item-inner {
	padding: 4px;
}

.grid-item-inner {
	text-align: center;
	padding: 4px;
}

.two-thirds .grid-column-inner {
	padding: 0 0 0 15px;
}


/* Extend the bootstrap grid to support five columns */

.col-xs-5ths,
.col-sm-5ths,
.col-md-5ths,
.col-lg-5ths {
	position: relative;
	min-height: 1px;
	padding-right: 15px;
	padding-left: 15px;
}

.col-xs-5ths {
	width: 20%;
	float: left;
}

@media (min-width: 768px) {
	.col-sm-5ths {
		width: 20%;
		float: left;
	}
}

@media (min-width: 992px) {
	.col-md-5ths {
		width: 20%;
		float: left;
	}
}

@media (min-width: 1200px) {
	.col-lg-5ths {
		width: 20%;
		float: left;
	}
}

/* Utility classes */

.left { /* Deprecated. Use Bootstrap's pull-left instead */
	float: left;
}

.right { /* Deprecated. Use Bootstrap's pull-right instead */
	float: right;
}

.clear { /* Deprecated. Use Bootstrap's clearfix instead */
	clear: both;
}

/* Use this to Hide an element that can be shown with jquery show(). 
Bootstrap uses !important on their hide and hidden classs so jQuery show() won't work */
.off {
	display: none;
}

.btn-space { /* Use this to get space around buttons that might flow to two lines */
	margin: 2px;
}

.text-area-tall {
	min-height: 300px;
}

/* Use these to align text to the right for a given viewport */

@media(min-width: 768px) {
	.text-right-sm {
		text-align: right;
	}

	.text-left-sm {
		text-align: left;
	}
}

@media(min-width: 992px) {
	.text-right-md {
		text-align: right;
	}

	.text-left-md {
		text-align: left;
	}
}

@media(min-width: 1200px) {
	.text-right-lg {
		text-align: right;
	}

	.text-left-lg {
		text-align: left;
	}
}

/* Global headers */

/* ===== Heading scale (h1-h6) =====
   MOVED HERE FROM style.css, which defined only h1/h2/h3 - h4, h5 and h6 had no rule at all
   and fell through to the browser defaults. That meant h5 (0.83em) and h6 (0.67em) rendered
   SMALLER than body text, and all three carried the UA's large em-based margins.
   Three things fixed at once:
   1. THE INVERSION: h2 was 16px while h3 was 1.25em, so h3 rendered LARGER than the h2 above
      it. Same bug HMModern had. The ladder is now strictly descending.
   2. MIXED UNITS: h1 was px, h3 was em, so their relative sizes changed with whatever context
      they landed in. All six are px now; only the margins stay em so they track font-size.
   3. Colour was #404040 grey - a default, not a brand colour. Now --ink.
   h1-h3 use --disp (Open Sans Condensed) as the display face, h4-h6 stay in --body (PT Sans):
   condensed reads well large but gets cramped at 15px and below. Upright, not italic - same
   call as the .group-header block below.
   `text-align:left` IS LOAD-BEARING ON EVERY ONE. body{text-align:center} at style.css:95 is a
   legacy centering hack that still inherits into headings; drop text-align here and every
   heading on the site centres itself. */
h1, h2, h3, h4, h5, h6{color:var(--ink);text-align:left;font-weight:700;margin:0.5em 0;}
h1, h2, h3{font-family:var(--disp);}
h4, h5, h6{font-family:var(--body);}
/* h1 keeps an underline (it was a 2px #000080 rule) as the page-title divider, retinted to the
   cyan accent so it echoes the .group-header bar. .ProductNameText h1 zeroes it on the PDP,
   where .productpanel already supplies a divider - see style.css. */
h1{font-size:30px;line-height:34px;border-bottom:solid 2px var(--b);padding-bottom:4px;}
h2{font-size:24px;line-height:28px;text-decoration:none;}
h3{font-size:20px;line-height:24px;}
h4{font-size:17px;line-height:22px;}
h5{font-size:15px;line-height:20px;}
h6{font-size:14px;line-height:19px;}

/* Section headings. Both .group-header and .group-header2 were carrying ASPDNSF's DEFAULT
   MAROON (#800000 underline / #A00000 text) - a stock colour nobody chose, and one that
   clashes badly with a blue skin. Now a flat --ink bar with a 2px --b accent, matching the
   header/footer chrome. Same treatment CPModern and HMModern use, minus HM's italic (that is
   HM's Barlow Condensed signature; BJ's --disp is Open Sans Condensed and reads better
   upright).
   .group-header2 IS DEFINED ONCE, HERE. style.css used to carry a second copy that shadowed
   this one (style.css loads after base.css in the _Head bundle, so the duplicate silently
   won). That copy is deleted - do not reintroduce it, put changes in this rule.
   The two sub-variants below stay text-only on purpose: .shipping-methods-form .group-header
   is a form sub-heading and .group-header-small labels small blocks; giving either a solid
   bar would out-shout the section heading it sits under. */
.shipping-methods-form .group-header {display: block;font-size: 18px;line-height: 22px;padding: 0;margin: 10px 0px 5px 0px;color:var(--ink);text-align:left;font-family:var(--disp); font-weight:700; border:none;}
.group-header {display: block;font-size: 26px;line-height: 30px;padding:10px;margin: 10px 0px 5px 0px;color:#fff;background:var(--ink);text-align:left;border-bottom:solid 2px var(--gold);font-family:var(--disp); font-weight:700;}
.group-header2 {display: block;clear:both;font-size: 24px;line-height: 30px;padding:10px;margin: 20px 0px 5px 0px;color:#fff;background:var(--ink);text-align:left;border-bottom:solid 2px var(--gold);font-family:var(--disp); font-weight:700;}
/* Category page heading, matched to .group-header above. BJModern had NO .headercat rule at
   all, so it fell through to the bare h1 (30px, cyan underline) and looked unrelated to the
   section bars beneath it on the same page. The class comes from the shared entity.* packages
   (entity.defaulttable, entity.tableexpanded3/4/5, entity.tableenumerated, ...).
   Sized to .group-header rather than the h1 scale so the two bars sit at the same weight; the
   accent is --gold to match. No italic - HMModern's version has it, but that is Barlow
   Condensed's signature, not BJ's. */
.headercat h1{display:block;font-size:26px;line-height:30px;padding:10px;margin:10px 0 10px 0;color:#fff;background:var(--ink);text-align:left;border-bottom:solid 2px var(--gold);font-family:var(--disp);font-weight:700;}
.group-header-small{display: block;font-size: 18px;line-height: 22px;padding: 0;margin: 10px 0px 5px 0px;color:var(--ink);text-align:left;font-family:var(--disp); font-weight:700;}

/* Notices (errors or alerts) */

.notice-wrap {
	margin: 15px 0;
}

.notice {
	padding: 15px;
	border-radius: 3px;
	margin: 2px 0;
}

.notice-info {
	background: #d9edf7;
	border-color: #bce8f1;
	color: #31708f;
}

.notice-success {
	background: #DFF0D8;
	border-color: #D6E9C6;
	color: #3C763D;
}

.notice-warning {
	background: #fbf1e4;
	border-color: #f7dcb9;
	color: #f0ad4e;
}

.notice-failure {
	background: #F2DEDE;
	border-color: #EBCCD1;
	color: #A94442;
}

.field-validation-error {
	color: #A94442;
}

/* Action elements */
.actionelement {
	cursor: pointer;
}

/* Forms */
.form {width: 100%; box-sizing:border-box;}
.form-group {margin-bottom: 15px;}
.form-group label {display: inline-block;margin-bottom: 5px;}
.login-form .form-group{width:95%; display:inline-block;}
.form-control {display: block;width: 100%;padding: 6px 12px;font-size: 14px;color: #555;background-color: #fff;background-image: none;border: 1px solid #ccc;border-radius: 4px;-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);box-shadow: inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;}
.search-form-group .form-control {height:27px;margin:0 20px;width:250px;}
form-group .radio, form-group .checkbox {display: block;min-height: 20px;margin-top: 10px;margin-bottom: 10px;padding-left: 20px;}
.form-text {display: block;margin-top: 5px;margin-bottom: 10px;color: #737373;width: 100%;}
.form-text-wrap input.form-control {display: inline;}
.form-control-inline {
	display: inline-block;
	width: auto;
	vertical-align: middle;
	margin-top: 2px;
	margin-bottom: 2px;
}

.form-text {
	display: block;
	margin-top: 5px;
	margin-bottom: 10px;
	color: #737373;
	width: 100%;
}

.radio:first-child, .checkbox:first-child {
	margin-top: 0;
}

/* Specific text box sizes */

.text-1, .text-2, .text-3, .text-4, .text-sm, .text-md, .text-lg, .text-xs,
.form-control.text-1, .form-control.text-2, .form-control.text-3, .form-control.text-4, .form-control.text-sm, .form-control.text-md, .form-control.text-lg, .form-control.text-xs {
	max-width: 100%;
}

.text-1, .form-control.text-1 {
	width: 38px;
}

.text-2, .form-control.text-2 {
	width: 48px;
}

.text-3, .form-control.text-3 {
	width: 60px;
}

.text-4, .form-control.text-4 {
	width: 70px;
}

.text-xs, .form-control.text-xs {
	width: 100px;
}

.text-sm, .form-control.text-sm {
	width: 180px;
}

.text-md, .form-control.text-md {
	width: 270px;
}

.text-lg, .form-control.text-lg {
	width: 450px;
}

.text-multiline, .form-control.text-multiline {
	min-height: 200px;
}

/* Add to cart form */

.quantity-field, .addToCartQty {width: 50px;display: inline-block;}
.size-select, .color-select{width: auto;display: inline;max-width:100%;}
.price-field {display: inline;}

/* Price styles */

.price-wrap {
	font-weight: bold;
	margin-bottom: 5px;
}

.product-page .price-wrap {
	font-weight: normal;
	font-size: 20px;
	margin-bottom: 10px;
}

.regular-price {
	color: #333;
	font-weight: bold;
	margin: 0 0 5px 0;
	font-size: 15px;
}

.sale-price {
	color: #902003;
}

/* PayPal banners */
.paypal-banner-wrap img {
	max-width: 100%;
	height: auto;
}

.paypal-banner-wrap {
	margin-bottom: 15px;
}

/* Signin page */

.login-layout-table {
	margin-bottom: 16px;
	border-bottom: 1px solid #ddd;
}

.login-form {
	padding-bottom: 16px;
}

@media (min-width: 768px) {
	.register-half .register-form, .register-half .anon-form {
		padding: 0 0 25px 50px;
	}
}

/* Create account page and account page */

.account-form {
	margin-bottom: 24px;
}

.address-wrap {
	margin-bottom: 15px;
}

	.address-wrap .address-header {
		font-weight: bold;
		font-size: 16px;
	}

	.address-wrap .address-view {
		font-size: 12px;
	}

.page-action-bar {
	margin-bottom: 15px;
}

/* Recurring Page */

.recurring-buttons {
	margin-bottom: 15px;
}

/* Payment page */

#payment-method-choices .payment-option {
	display: inline-block;
	width: 200px;
	height: 50px;
	text-align: center;
	background-color: #F8F8F8;
	border: 1px solid #CCC;
	border-radius: 4px;
	margin: 5px;
}

/* Checkout and account page links */

.page-links {
	margin-bottom: 10px;
}

/* Tool tips */

.discount-table-tooltip, .card-code-tooltip {
	padding: 8px;
	font-size: 12px;
	background-color: #fff;
	border: solid 1px #ccc;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
}

/* Shipping and tax estimator */

.estimate-buttons, .estimate-button-wrap {
	text-align: right;
}

.shipping-tax-estimator-address, .shipping-tax-estimator {
	width: 100%;
}

	.shipping-tax-estimator-address .header, .shipping-tax-estimator .header {
		font-weight: bold;
	}

	.shipping-tax-estimator-address .caption, .shipping-tax-estimator .caption {
		vertical-align: top;
	}

	.shipping-tax-estimator-address .value, .shipping-tax-estimator .value {
		vertical-align: top;
		text-align: right;
	}

	.shipping-tax-estimator-address .error {
		width: 100%;
		color: Red;
		font-weight: bold;
	}

	.shipping-tax-estimator tr td, .shipping-tax-estimator-address td {
		border-top: solid 1px #ddd;
		padding: 4px;
	}

/* Stock hints */

.stock-hint {
	display: block;
	margin-bottom: 5px;
}

.out-stock-hint {
	color: #bb0000;
}

.in-stock-hint {
	color: #0066c0;
}

/* Kit specific styles */

.selected-kit-items {
	padding-left: 15px;
}

.kit-prices {
	margin-bottom: 15px;
}

.kit-item-image {
	margin-bottom: 2px;
	margin-top: 2px;
}

.kit-item-description {
	font-style: italic;
	color: #767676;
}

.kit-add-to-cart-button-wrap {
	display: inline-block;
	margin: 2px;
}

.kit-regular-base-price, .kit-regular-base-price label {
	text-decoration: line-through;
}

.kit-panel-title-link, .kit-panel-title-link label {
	cursor: pointer;
}

	.kit-panel-title-link label {
		float: left;
	}

.kit-panel-title-link {
	display: block;
	width: 100%;
	background: none;
	border: none;
}

.panel-title > a {
	outline: none;
	text-decoration: none;
}

.kit-panel-heading .panel-title {
	font-size: inherit;
}

.kit-panel-heading .form-label {
	margin-bottom: 0;
}

.kit-panel-heading legend {
	font-size: inherit;
	border: inherit;
	margin: 0px 10px;
	color: inherit;
	padding: inherit;
	display: inherit;
	width: inherit;
	border: inherit;
}

.kit-form-group .radio input[type="radio"],
.kit-form-group .radio-inline input[type="radio"],
.kit-form-group .checkbox input[type="checkbox"],
.kit-form-group .checkbox-inline input[type="checkbox"] {
	margin-left: 0px;
}

.kit-summary-header {
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 0;
	margin-top: 0;
}

.kit-group-description {
	padding-bottom: 15px;
}

.kit-description-toggle {
	float: right;
	margin-left: 8px;
}

	.kit-description-toggle .fa {
		display: none;
	}

.kit-panel-title-link[aria-expanded='false'] .expand-control {
	display: block;
}

.kit-panel-title-link[aria-expanded='true'] .collapse-control {
	display: block;
}

.kit-item-image-wrap {
	float: left;
	margin-right: 15px;
}

.read-only-kit-item-list {
	padding-left: 15px;
}
/* Promotions */

.promo-wrap {
	padding-bottom: 5px;
}

.promotion-call-to-action {
	background: none repeat scroll 0 0 transparent;
	color: #902003;
	font-weight: bold;
	padding: 3px;
}

/* Downloads Page */

.downloads-page .downloads-wrap {
	margin: 0 0 20px 0;
}

.downloads-page .downloads-info {
	margin: 0 0 10px 0;
}

.downloads-page .related-product-wrap {
	border-radius: 0 3px 3px 3px;
	box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
}

.downloads-page .related-product {
	float: left;
	padding: 15px 0 15px 30px;
	text-align: center;
}

	.downloads-page .related-product .related-product {
		width: 150px;
	}

/* Product page */

.quantity-discount-header {
	font-weight: bold;
}

.product-image {
	max-width: 100%;
}

.product-page .product-info-wrap .price-wrap {
	font-size: 20px;
	margin: 10px 0 10px 0;
}

.product-page .product-info-wrap .regular-price {
	font-size: 16px;
}
.email-a-friend-link {
	background: url('../images/mailicon.gif') no-repeat scroll left center; background-position-y:8px;
	padding: 0 5px 0 19px; font-size:12px; height:32px; display:inline-block; text-decoration:none !important;
}
.questions-link {
	background: url('../images/helpcircle.gif') no-repeat scroll left center; background-position-y:8px;
	padding: 0 5px 0 19px; font-size:12px; height:32px; display:inline-block; text-decoration:none !important;
}
.video-link {
	background: url('../images/video.gif') no-repeat scroll left center; background-position-y:8px;
	padding: 0 5px 0 19px; font-size:12px; height:32px; display:inline-block; text-decoration:none !important;
}
.specs-link {
	background: url('../images/specs.gif') no-repeat scroll left center; background-position-y:8px;
	padding: 0 5px 0 19px; font-size:12px; height:32px; display:inline-block; text-decoration:none !important;
}
.instructions-wrap a:link {
	background: url('../images/document.gif') no-repeat scroll left center; background-position-y:9px;
	padding: 0 5px 0 19px; font-size:12px; height:32px; display:inline-block; text-decoration:none !important;
}

.email-a-friend-wrap, .nav-links-wrap, .product-options, .product-description-wrap {
	margin-bottom: 15px;
}

.product-image-wrap {
	text-align: center;
	margin-bottom: 15px;
}

.medium-image-wrap img{
	max-width:250px;
}

.producttablepic img {max-width:150px;}
.product-gallery-items button, .medium-image-wrap button {padding:0;background:none;color:#444444;margin:0;}
.product-gallery-items button:hover, .medium-image-wrap button:hover {padding:0;background:none;color:#444444;margin:0;}

.MagicZoomBigImageCont img{
	max-width:none;
}

.product-promotions {
	margin-bottom: 8px;
}

.pop-large-link {
	display: inline-block;
	background: url(../images/showlarger.gif) no-repeat scroll left center;
	padding-left: 24px;
	line-height: 24px;font-size:0px;height:26px;width:145px;
}

	.pop-large-link:hover {
		cursor: pointer;
	}

.medium-image {
	margin-bottom: 4px;
}

.medium-image-cursor {
	cursor: pointer;
}

.variant-name-wrap {
	font-size: 24px;
	margin-bottom: 5px;
}

.variant-info-wrap {
	border-top: solid 1px #ddd;
	padding-top: 10px;
	margin-top: 10px;
}

.product-options .form-control {
	display: inline-block;
	width: auto;
}

.product-gallery-items {
	margin-bottom: 8px;
}

.product-gallery-item {
	display: inline-block;
	max-width: 40px;
}

.gallery-item-inner {
	padding: 2px;
}

.product-gallery-image {
	max-width: 100%;
	padding-top: 10px;
}

.button-transparent {
	border: none;
	background: transparent;
	box-shadow:none;
}


/* Tab setup */

ul.tabbitTabs, .tabbitTabs li {
	margin: 0;
	padding: 0;
	list-style: none;
}


.tabbitTabs li {
	display: inline;
	line-height: 24px;
	font-size: 14px;
}

	.tabbitTabs li a {
		text-decoration: none;
		display: inline-block;
		padding: 0 10px;
		background: #ddd;
		border: solid 1px #ccc;
		border-bottom: none;
		margin-bottom: -1px;
		color: #333;
		font-weight: bold;
		outline: none;
		border-top-left-radius: 4px;
		border-top-right-radius: 4px;
	}

		.tabbitTabs li a:hover {
			background: #eee;
		}

.tabbitTabs a.state-active, .tabbitTabs a.state-active:hover {
	background: #fff;
	cursor: default;
	border-bottom: solid 1px #fff;
}

.tabbitTabWrap {
	padding: 10px;
	border: solid 1px #ccc;
	margin-bottom: 12px;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	border-top-right-radius: 4px;
}

	/*hide redundant headers*/

	.tabbitTabWrap .group-header {
		display: none;
	}

/* List items */
.list-item-name-wrap, .list-item-sku-wrap {
	margin-bottom: 5px;
}

.list-item {
	border-bottom: solid 1px #ddd;
	margin-bottom: 10px;
	padding-bottom: 10px;
}

.list-item-name-wrap {
	font-size: 1.5em;
	margin-bottom: 5px;
}

.list-item-image-wrap {
	text-align: center;
}

	.list-item-image-wrap .product-image {
		display: inline-block;
	}

/* Order Confirmation Page */
.orderconfirmation-page {
	width: 100%;
	text-align: center;
}

	.orderconfirmation-page div {
		margin-top: 5px;
		margin-bottom: 5px;
	}

.orderconfirmation-received {
	font-size: 20px;
	font-weight: bold;
	padding: 0 0 10px 0;
}

.orderconfirmation-thanks {
	color: #737373;
}

.orderconfirmation-ordernumber, .orderconfirmation-customerid {
	font-weight: bold;
}

	.orderconfirmation-ordernumber span, .orderconfirmation-customerid span {
		font-weight: normal;
	}

.admin-alert-wrap {
	width: 100%;
	background-color: #FFFF00;
	text-align: center;
}

.admin-alert-text {
	font-weight: bold;
	color: #FF0000;
}

.news-body {
	margin-bottom: 15px;
}

/* 3dSecure Page */
.three-d-secure-iframe {
	width: 100%;
	height: 500px;
}

/* Product Landing Page  */
.product-banner {
	background: #fff;
	box-shadow: 52px 52px 32px rgba(0,0,0,.03);
	border-top: 1px solid rgba(0,0,0,.03);
	border-left: 1px solid rgba(0,0,0,.03);
	max-width: 500px;
	max-height: 500px;
	margin-bottom: 24px;
}

.product-landing-page .product-info {
	margin-bottom: 32px;
}

.product-description-wrap {
	clear: both;
	font-size: 16px;
	color: #666;
	line-height: 30px;
	margin-bottom: 32px;
}

.product-landing-page .price-wrap {
	font-size: 44px;
	line-height: 50px;
	font-weight: 200;
	margin-bottom: 24px;
}

.product-summary {
	margin-bottom: 24px;
	font-family: Georgia, serif;
	font-style: italic;
	line-height: 28px;
}

.product-landing-page .add-to-cart-group {
	margin-bottom: 24px;
}

.product-summary-heading {
	text-align: center;
}

.summary-content {
	border-top: 1px solid #efefef;
	border-bottom: 1px solid #efefef;
	padding: 28px;
}

.description-heading {
	font-size: 25px;
	line-height: 28px;
	border-bottom: 1px solid #efefef;
	font-weight: 200;
	padding-bottom: 8px;
	margin-bottom: 10px;
}

.product-ratings hr {
	display: none;
}

.product-rating-stars {
	font-size: 40px;
}

.rating-comment-helpfulness-legend {
	width: auto;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
	border: none;
	float: left;
	padding-right: 5px;
}

.site-map-group ul {
	padding-left: 5px;
}

/* Session Warning Windows */
.session-warning-top-line {
	font-size: 24px;
	padding-top: 15px;
	padding-bottom: 15px;
}

.session-warning-middle-line, .session-warning-bottom-line {
	padding-bottom: 15px;
}

.session-modal .modal-body {
	text-align: center;
	font-size: 20px;
}

/* Checkout */

.continue-shopping-text {
	font-size: 16px;
}

.checkout-header, .order-header {
	border-bottom: solid 1px #ddd;
	padding-bottom: 8px;
}

	.checkout-header:first-child, .order-header:first-child {
		margin-top: 0;
	}

.checkout-header {
	position: relative;
	font-size: 24px;
}

.checkout-block, .order-block {
	margin-bottom: 15px;
}

	.checkout-block.checkout-sign-out {
		margin-bottom: 0px;
	}

.order-details, .shipping-estimator {
	padding: 15px;
	background: #f8f8f8;
	border: solid 1px #e7e7e7;
	margin-bottom: 15px;
	border-radius: 4px;
}

	.order-details .order-block:last-child {
		margin-bottom: 0;
	}

.cart-item {
	border-bottom: solid 1px #eee;
	padding-bottom: 15px;
}

.cart-item-image {
	width: 80px;
	border: solid 1px #e7e7e7;
}

.checkout-actions {
	text-align: right;
}

.checkout-action-row {
	margin-top: 15px;
	text-align: right;
}

.cart-upsell-item, .cart-order-option {
	border-bottom: 1px solid #eee;
	padding-bottom: 10px;
}

.cart-upsell-image {
	max-width: 50px;
	border: 1px solid #e7e7e7;
}

.order-option-cost {
	white-space: nowrap;
}

.cart-detail {
	font-size: 0.85em;
	color: #666;
}

.hidden-shipping-methods {
	display: none;
}

/* CPHM Change - These containers are empty until the provider's own script draws a
   button into them, and some legitimately never do: Apple Pay only renders on Safari
   and iOS, Google Pay only where supported. Collapse an empty one so a button that
   never arrives leaves no gap and no stray margin. End CPHM Change */
.alternative-payment-button:empty {
	display: none;
}

.alternative-payment-button {
	margin-bottom: 15px;
	display: inline-block;
	vertical-align: top;
}

.loading-overlay {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1040;
	background-color: #000;
	opacity: 0.5;
}

.loading-message-wrap {
	z-index: 1040;
	position: fixed;
	width: 100%;
	left: 0;
	top: 30%;
	color: #fff;
	text-align: center;
}

.loading-message {
	text-transform: uppercase;
	margin-bottom: 8px;
	font-size: 12px;
}

/* Payment methods */

.third-party-payment-button {
	background: transparent;
	border: none 0;
	padding: 0;
}

.on-site-payment-methods, .off-site-payment-methods {
	margin-bottom: 6px;
	margin-top: 25px;
}

.choose-payment-method-offsite-button {
	margin-bottom: 5px;
	vertical-align: top;
	display: inline-block;
	cursor: pointer;
}

.payment-method-detail {
	margin-bottom: 8px;
}

/* Shipping methods */

.shipping-method-icon {
	width: 30px;
	vertical-align: middle;
}

.block-success .checkout-header {
	color: #3c763d;
	border-bottom: solid 1px #b1c6a9;
}

.block-danger .checkout-header {
	color: #a94442;
	border-bottom: solid 1px #d79e9e;
}

/* Mini Cart */

.minicart-modal {
	text-align: left;
}

.minicart-item, .minicart-message-area, .empty-mini-cart-text {
	padding-left: 15px;
	padding-right: 15px;
}

.minicart-modal .modal-body {
	padding-left: 0;
	padding-right: 0;
}

.minicart-item-image {
	width: 50px;
}

.minicart-item-actions {
	margin-left: 4px;
	float: right;
}

	.minicart-item-actions a {
		text-decoration: none;
		font-size: 14px;
	}

.minicart-selected-kit-items {
	margin-bottom: 4px;
	padding-left: 15px;
}

.cart-product-name {
	font-weight: bold;
}

.cart-edit-link {
	font-size: 12px;
}

.minicart-product-name {
	font-weight: bold;
}

.minicart-item {
	padding-top: 15px;
	border-top: solid 1px #E5E5E5;
}

	.minicart-item:first-of-type {
		padding-top: 0;
		border-top: none 0;
		margin-top: 0;
	}

.minicart-detail {
	font-size: 0.85em;
}

.minicart-overlay {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1040;
	background-color: #000;
	opacity: 0.5;
}

.minicart-title {
	font-size: 18px;
}

.minicart-item-title {
	font-size: 14px;
}

.minicart-loading {
	z-index: 1040;
	position: fixed;
	width: 100%;
	left: 0;
	top: 30%;
	color: #fff;
	text-align: center;
}

.loading-animation {
	display: block;
	font-size: 50px;
	overflow: hidden;
	width: 1em;
	height: 1em;
	border-radius: 50%;
	margin: 40px auto;
	position: relative;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: loading 1.7s infinite ease;
	animation: loading 1.7s infinite ease;
	border: none;
}

@-webkit-keyframes loading {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, 0 -0.83em 0 -0.42em #ffffff, 0 -0.83em 0 -0.44em #ffffff, 0 -0.83em 0 -0.46em #ffffff, 0 -0.83em 0 -0.477em #ffffff;
	}

	5%, 95% {
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, 0 -0.83em 0 -0.42em #ffffff, 0 -0.83em 0 -0.44em #ffffff, 0 -0.83em 0 -0.46em #ffffff, 0 -0.83em 0 -0.477em #ffffff;
	}

	10%, 59% {
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, -0.087em -0.825em 0 -0.42em #ffffff, -0.173em -0.812em 0 -0.44em #ffffff, -0.256em -0.789em 0 -0.46em #ffffff, -0.297em -0.775em 0 -0.477em #ffffff;
	}

	20% {
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, -0.338em -0.758em 0 -0.42em #ffffff, -0.555em -0.617em 0 -0.44em #ffffff, -0.671em -0.488em 0 -0.46em #ffffff, -0.749em -0.34em 0 -0.477em #ffffff;
	}

	38% {
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, -0.377em -0.74em 0 -0.42em #ffffff, -0.645em -0.522em 0 -0.44em #ffffff, -0.775em -0.297em 0 -0.46em #ffffff, -0.82em -0.09em 0 -0.477em #ffffff;
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, 0 -0.83em 0 -0.42em #ffffff, 0 -0.83em 0 -0.44em #ffffff, 0 -0.83em 0 -0.46em #ffffff, 0 -0.83em 0 -0.477em #ffffff;
	}
}

@keyframes loading {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, 0 -0.83em 0 -0.42em #ffffff, 0 -0.83em 0 -0.44em #ffffff, 0 -0.83em 0 -0.46em #ffffff, 0 -0.83em 0 -0.477em #ffffff;
	}

	5%, 95% {
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, 0 -0.83em 0 -0.42em #ffffff, 0 -0.83em 0 -0.44em #ffffff, 0 -0.83em 0 -0.46em #ffffff, 0 -0.83em 0 -0.477em #ffffff;
	}

	10%, 59% {
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, -0.087em -0.825em 0 -0.42em #ffffff, -0.173em -0.812em 0 -0.44em #ffffff, -0.256em -0.789em 0 -0.46em #ffffff, -0.297em -0.775em 0 -0.477em #ffffff;
	}

	20% {
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, -0.338em -0.758em 0 -0.42em #ffffff, -0.555em -0.617em 0 -0.44em #ffffff, -0.671em -0.488em 0 -0.46em #ffffff, -0.749em -0.34em 0 -0.477em #ffffff;
	}

	38% {
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, -0.377em -0.74em 0 -0.42em #ffffff, -0.645em -0.522em 0 -0.44em #ffffff, -0.775em -0.297em 0 -0.46em #ffffff, -0.82em -0.09em 0 -0.477em #ffffff;
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
		box-shadow: 0 -0.83em 0 -0.4em #ffffff, 0 -0.83em 0 -0.42em #ffffff, 0 -0.83em 0 -0.44em #ffffff, 0 -0.83em 0 -0.46em #ffffff, 0 -0.83em 0 -0.477em #ffffff;
	}
}

.minicart-loading-message {
	text-transform: uppercase;
	margin-bottom: 8px;
	font-size: 12px;
}

@-webkit-keyframes spin {
	100% {
		-webkit-transform: rotate(359deg);
	}
}

@-moz-keyframes spin {
	100% {
		-moz-transform: rotate(359deg);
	}
}

@-o-keyframes spin {
	100% {
		-moz-transform: rotate(359deg);
	}
}

@keyframes spin {
	100% {
		transform: rotate(359deg);
	}
}

.minicart-contents-loading-overlay {
	margin-top: -10px;
}

.minicart-contents-overlay {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background: #fff;
	opacity: 0.8;
	z-index: 1;
}

.minicart-contents-loading {
	text-align: center;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	margin-top: -40px;
	bottom: 0;
	z-index: 2;
}

.minicart-contents-loading-message {
	padding-bottom: 8px;
	text-transform: uppercase;
}

.minicart-content-wrap {
	position: relative;
	max-height: 246px;
	overflow: auto;
}

.minicart-total-area {
	margin-bottom: 15px;
}

.minicart-total-wrap {
	font-size: 18px;
}

.minicart-subtotal-label {
	display: none;
}

@media (min-height:608px) {
	.minicart-content-wrap {
		max-height: 398px;
	}
}

@media (max-width:767px) {
	.minicart-subtotal-label {
		display: inline;
	}
	.search-form-group .form-control {width:200px;}
}

.user-links {
	padding: 0;
	text-decoration: none;
}

	.user-links > li {
		display: inline-block;
		list-style: none;
		margin: 0 4px;
	}

a.user-link {
	text-decoration: none;
}

.switch-mini-link {
	font-size: 13px;
	text-decoration: none;
	color: #265680;
	font-weight: 600;
}

	.switch-mini-link:focus {
		outline: none;
	}

	.switch-mini-link:hover {
		text-decoration: none;
		color: #142e45;
		cursor: pointer;
	}

/* Form entry and validation */

.form-label-suffix {
	font-weight: normal;
	font-style: italic;
}

.form-label-prefix-required, .form-label-suffix-required {
	color: #a94442;
}

.form-label-suffix::before, .form-label-prefix::after {
	content: " ";
}

.form-label-suffix-optional {
	color: #666;
}

.form-description {
	font-style: italic;
	color: #666;
}

.entry-feedback-wrapper {
	position: relative;
	max-width: 100%;
}

.form-control-feedback::before,
.braintree-hosted-fields-valid + span::before,
.braintree-hosted-fields-invalid + span::before {
	font-size: 1.2em;
	line-height: 34px;
}

.has-success .form-control-feedback::before,
.braintree-hosted-fields-valid + span::before {
	content: "\f00c"; /* fa-check */
	color: #3c763d;
}

.has-error .form-control-feedback::before,
.braintree-hosted-fields-invalid + span::before {
	content: "\f00d"; /* fa-times */
	color: #a94442;
}

.has-success .form-control-feedback {
	bottom: 0;
}

.has-feedback .form-control {
	padding-right: 12px;
}

	.has-feedback .form-control.text-box {
		padding-right: 12px;
	}

.has-feedback.has-success .form-control.text-box,
.has-feedback.has-error .form-control.text-box {
	padding-right: 32px;
}

.form-group-xsmall .entry-feedback-wrapper,
.form-group-xsmall select.form-control {
	/* 6 characters */
	width: 18ex;
}

.form-group-small .entry-feedback-wrapper,
.form-group-small select.form-control {
	/* 12 characters */
	width: 28ex;
}

.form-group-medium .entry-feedback-wrapper,
.form-group-medium select.form-control {
	/* 24 characters */
	width: 48ex;
}

.form-group-large .entry-feedback-wrapper,
.form-group-large select.form-control {
	/* 36 characters */
	width: 68ex;
}

select + .form-control-feedback {
	padding-right: 20px;
}

.input-group-addon-captchaimage {
	padding: 0;
}

/* Gift Card Setup Styles */

.gift-card-row {
	border-bottom: 1px solid #efefef;
}

#amazonAddressWidget,
#walletWidgetDiv {
	height: 228px;
}

.wallet-card {
	border-bottom: solid 1px #efefef;
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.whats-this {
	vertical-align: middle;
	cursor: pointer;
}

.checkbox-label {
	font-weight: normal;
}

.checkbox-vert {
	vertical-align: top;
}

.not-found-suggestion {
	margin-bottom: 10px;
}

.order-notes-actions {
	margin-top: 8px;
}

.form-control.quantity-field {
	display: inline-block;
	width: 50px;
}

.screen-reader-only {
	position: absolute;
	height: 1px;
	width: 1px;
	clip: rect(1px 1px 1px 1px); /*IE 6 and 7*/
	clip: rect(1px,1px,1px,1px);
	clip-path: polygon(0px 0px, 0px 0px, 0px 0px);
	-webkit-clip-path: polygon(0px 0px, 0px 0px, 0px 0px);
	overflow: hidden !important;
}

/* For scope="row" TH's */
.table-row-header {
	font-weight: normal;
}

.thumbnail-items {
	display: block;
}

.account-remove-confirmation {
	padding: 7px;
}
