/* --- Base --- */

a.disabled,
a.disabled:hover,
a.disabled:focus,
a.disabled:active{

	cursor: none;
	border-color: rgba(255, 255, 255, 1);
	background-color: rgb(197, 197, 197);
	color: #8e8e8e;
	opacity: 0.675;
	box-shadow: none;
	border: none;
}
a.disabled i,
a.disabled:hover i,
a.disabled:focus i,
a.disabled:active i{

	opacity: 0.33;
	text-shadow: 0 .0625rem 0 #fff;
	transform: translate(-50%, -50%) scale(1, 1);
	-webkit-transform: translate(-50%, -50%) scale(1, 1);
	-moz-transform: translate(-50%, -50%) scale(1, 1);
}

figcaption:empty{

	display: none;
}

/* --- Header --- */

#ProductImagePopup > header{

	padding-top: 0;
	padding-bottom: 0;
	border-bottom: calc(0.0625rem * 3) solid #be1d2d;
}

/* --- Main Image Body Area --- */

.ProductZoomImage,
.ProductZoomImageBox,
.ProductZoomImageBox img{

	width: auto !important;
	height: auto !important;
}
.ProductZoomImageBox{

	text-align: center;
}
.ProductZoomImageBox img:hover{

	opacity: 1;
}
.ProductImageDescription{

	text-align: center;
	position: absolute;
	width: 100%;
	top: 80%;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(111, 111, 111, 0.05);
	padding: 1rem;
}

/* --- Footer --- */

footer.ImageCarousel{

	width: auto !important; /* JS Override */
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
}

#ProductImagePopup footer{

	padding: 0.5rem 0;
	border-top: 3px solid #000;
}
#ProductImagePopup footer:hover{

	opacity: 1;
}

.ProductTinyImageList{

	white-space: nowrap;
	overflow: hidden;
}
.ProductTinyImageList,
.ProductTinyImageList ul{

	width: 100% !important;
	max-width: calc(100% - 8rem);
}
.ProductTinyImageList ul{

	overflow: hidden;
	margin: 0 auto !important;
}
.ProductTinyImageList li{

	width: auto !important;
}
.ProductTinyImageList .TinyOuterDiv{

	margin-left: 0.5rem;
	margin-right: 0.5rem;
}

/* --- Footer Components --- */

.ImageCount,
.PrevLink,
.NextLink{

	z-index: 999;
	position: absolute;
}

/* --- Badge --- */

.ImageCount{

	z-index: 999;
	position: absolute;
	top: -2.5rem;
	left: 50%;
	width: auto;
	padding: 0.25rem 1.25rem;
	background: rgba(0, 0, 0, 0.95);
	font-family: 'Lato';
	font-size: 0.92rem;
	color: #fff;
	text-align: center;
	border-radius: 0.125rem;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
}

/* --- Previous and Next Buttons --- */

.PrevLink,
.NextLink{

	top: 0;
	bottom: 0;
	width: 4rem;
	color: #fff;
	box-shadow: inset 0.0625rem 0 1rem 0.0625rem rgba(62, 0, 0, 0.125)
}
.PrevLink{

	left: 0;
	border-right: 0.0625rem solid rgba(0, 0, 0, 0.0125);
}
.NextLink{

	right: 0;
	border-left: 0.0625rem solid rgba(0, 0, 0, 0.0125);
}
.PrevLink span,
.NextLink span{

	display: none;
}
.PrevLink:hover,
.NextLink:hover{

	box-shadow: inset 0.0625rem 0 1rem 0.0625rem rgba(62, 0, 0, 0.33)
}
.PrevLink:hover{

	border-right-color: rgba(206, 53, 68, 0.5);
}
.NextLink:hover{

	border-left-color: rgba(206, 53, 68, 0.5);
}
.PrevLink:active,
.NextLink:active{

	background-color: rgba(76, 41, 41, 0.42);
	box-shadow: inset 0.0625rem 0 1rem 0.0625rem rgba(62, 0, 0, 0.71);
}
.PrevLink:focus{

	border-right-color: rgba(206, 53, 68, 0.76);
}
.NextLink:focus{

	border-left-color: rgba(206, 53, 68, 0.76);
}
.PrevLink:active{

	border-right-color: rgb(206, 53, 68);
}
.NextLink:active{

	border-left-color: rgb(206, 53, 68);
}
.PrevLink:focus i,
.NextLink:focus i{

	font-size: 1.2rem;
	text-shadow: 0 0.0625rem 0.0625rem rgba(0, 0, 0, .5);
}
.PrevLink.disabled:active i,
.NextLink.disabled:active i{

	font-size: 1rem;
}
.PrevLink i,
.NextLink i{

	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	color: inherit;
}
.PrevLink:hover i,
.NextLink:hover i,
.PrevLink:focus i,
.NextLink:focus i,
.PrevLink:active i,
.NextLink:active i{

	transform: translate(-50%, -48%);
	-webkit-transform: translate(-50%, -48%);
	-moz-transform: translate(-50%, -48%);
}
