/**
 * Import the webshop prices stylesheet. This is a seperate stylesheet because of the complexity.
 */
@import "webshop-prices.css";
@import "webshop-review.css";

/**
 * Hide the webshop output for the 2013 UI. This output is still needed until all shop-sites are migrated to the new UI.
 */

.webshop--2013 {
	display: none !important;
}

/**
 * Hide first content article on mobile devices
 */
@media screen and (max-width: 767px) {
    .webshop-productoverview .content__content .article_1.content__article {
        display: none;
    }
}

/**
 * ---------------------------------------------------------------------------------------------------------------------
 * Webshop product overview
 * ---------------------------------------------------------------------------------------------------------------------
 */

/**
 * .webshop-products-nav
 */

.webshop-products-nav,
.per-page {
	margin: 0 2.2em 2em 0;
	padding: 0;
	list-style: none;
	text-align: center;
}

.per-page {
	margin-top: 2em;
}

.webshop-products-nav.top {
	display: none;
}

.webshop-products-nav.bottom {
	margin-top: 2em;
}

.webshop-products-nav .pages {
	display: none;
}

.webshop-products-nav ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

.webshop-products-nav li,
.per-page li {
	display: inline-block;
	vertical-align: top;
}

.webshop-products-nav li + li,
.per-page li + li {
	margin-left: 1em;
}

.webshop-products-nav li:nth-child(1),
.webshop-products-nav li:nth-last-child(1) {
	display: none;
}

.webshop-products-nav .current:nth-child(1),
.webshop-products-nav .current:nth-last-child(1) {
	display: inline-block;
}

.webshop-products-nav li a,
.per-page li a {
	display: block;
	min-width: 2em;
	height: 2em;
	padding: .1em .4em;
	border: 1px solid #e2ecf3;
	text-decoration: none;
	text-align: center;
	color: #003265;
	background-color: #fff;
}

.webshop-products-nav .current a,
.webshop-products-nav li a:hover,
.per-page .current,
.per-page li a:hover {
	border-color: #003265;
	color: #fff;
	background-color: #003265;
}

/**
 * ---------------------------------------------------------------------------------------------------------------------
 * webshop category introduction
 * ---------------------------------------------------------------------------------------------------------------------
 */

.webshop-category-introduction {
	display: none;
}

.wci-highlighted-text {
	margin-bottom: 2rem;
	padding: 1rem;
	border: 1px solid #003063;
	background-color: #e2ecf3;
}

.wci-highlighted-text p {
	margin: 0;
}

/**
 * .product-list
 */

.product-list,
.related-product-list {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
	display: -webkit-box;  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
	display: -ms-flexbox;  /* TWEENER - IE 10 */
	display: -webkit-flex; /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
	display: flex;         /* NEW, Spec - Firefox, Chrome, Opera */
	-webkit-flex-flow: row wrap;
	-moz-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
}

@-webkit-keyframes spin {
	from { -webkit-transform: rotate(0deg); }
	to { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
	from { transform:rotate(0deg); }
	to { transform:rotate(360deg); }
}

.loading .product-list:before {
	font-family: "icons";
	content: '\e838';
	position: fixed;
	top: 50%;
	left: 50%;
	font-size: 3rem;
	z-index: 10;
	-webkit-animation: spin 2s;
	animation: spin 2s;
}

.loading .product-list:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,.7);
}

.product-list li,
.related-product-list li {
	position: relative;
	float: left;
	width: 50%;
	margin: 0;
	box-shadow: 0 0 2px -1px #333;
}

/**
 * Badges
 */

/** Hide by default */
.actionBadge {
	display: none;
}

/** Only show when the action checkbox is checked */
.showActionBadge-1 .actionBadge {
	display: block;
	position: absolute;
	top: 1em;
	right: 1em;
	width: 4em;
	height: 4em;
	font-weight: 700;
	line-height: 3.8;
	text-align: center;
	border-radius: 50%;
	color: #fff;
	background-color: #e30613;
	transform: rotate(10deg);
}

@media (min-width: 768px) {
	.product-list li,
    .related-product-list li {
		background-color: #fff;
		transform: translateX(0);
		transition: transform .1s ease-out;
	}

    .related-product-list li {
        width: calc(100% / 4);
    }

	.no-touch .product-list li:hover,
    .no-touch .related-product-list li:hover {
		transform: scale(1.05);
		z-index: 1;
		box-shadow: 0 0 0 1px rgb(0, 48, 99);
	}
}

@media (min-width: 1024px) {
    .product-list li {
        width: calc(100% / 3);
    }
}

/**
 * webshopProduct
 */

.webshopProduct {
	display: block;
	padding: 2rem 1rem;
	text-decoration: none;
}

.webshopProduct__image {
	position: relative;
	width: 100%;
	padding-bottom: 64.5%;
	overflow: hidden;
}

.webshopProduct__image img {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
}

.webshopProduct__title {
	margin: .5rem 0 0;
}

/**
 * ---------------------------------------------------------------------------------------------------------------------
 * webshop detail page
 * ---------------------------------------------------------------------------------------------------------------------
 */

#variantTwoCol.webshop-productdetails .content__content {
	width: 100%;
	margin: 0;
}

.webshop-productdetails h1 {
	position: absolute;
	top: -999em;
	left: -999em;
}

/**
 * Layout of detail page
 */

.productDetailsRow {
    clear: both;
    margin-bottom: 3em;
}

.productDetailsRow::after {
    content: '';
    display: table;
    clear: both;
}

.productDetailsRow__relatedProducts > h3 {
    display: none;
}

/**
 * tables in the webshop sidebar
 */

.productDetailsRow__sideCol table {
	margin: 1em 0;
	border: 0;
	border-collapse: collapse
}

.productDetailsRow__sideCol td {
	padding: .5em 0;
	vertical-align: top;
	border-width: 0 0 1px 0;
	line-height: 1;
}

.productDetailsRow__sideCol td p {
	margin: .1em 0 .3em
}

@media (min-width: 768px) {
	.productDetailsRow__mainCol,
	.productDetailsRow__sideCol {
		float: left;
	}

	.productDetailsRow__mainCol {
		width: 60%;
		margin-right: 40%;
	}

	.productDetailsRow__sideCol {
		width: 35%;
		margin-left: -35%;
	}

    .productDetailsRow__mainCol--fullWidth {
        float: none;
        width: auto;
        margin-right: 0;
    }
}

/** Image gallery */

.wpd-imgages-gallery {
    margin: 0;
    padding: 0;
    list-style: none;
}

.wpd-imgages-gallery li {
    display: inline-block;
    max-width: 32%;
}

/** Pricing */
.product-price {
	position: relative;
	display: block;
	margin: 1rem 0;
	font-size: 2em;
	font-weight: 600;
	color: #003063;
}

.product-price .regular {
	display: block;
	text-decoration: line-through;
	font-size: .8rem;
	color: #888;
}

input.product-quantity {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 2.5em;
	padding: 4px 2px;
	line-height: 19px;
	font-size: .95em;
	font-weight: 700;
	text-align: center;
}

.product-price .action {
	display: inline;
}

/** Specs */
.productDetailsRow__specsList {
	background-color: #e2ecf3;
}

.productDetailsRow__specsList dt {
	float: left;
	width: 100%;
	margin-right: 1em;
	padding: .5rem 1rem;
}

.productDetailsRow__specsList dd {
	margin-left: 0;
	padding: .5rem 1rem;
	font-weight: 600;
}

.productDetailsRow__specsList dd:nth-child(4n) {
	background-color: #fff;
}

.webshop-productdetails__main img:hover {
	cursor: zoom-in;
}

@media (min-width: 568px) {
	.productDetailsRow__specsList dt {
		width: 15em;
	}
}

/**
 * Reviews
 */

.has-js .pbuic-fe-rating ul li {
	float: left;
}


/*
	Product detailpage
	--------------------------------------------------
*/

.webshop-productdetails .content__article {
	display: none;
}

.product-details {
	position: relative;
	overflow: hidden;
	padding: 20px 20px 47px;
	background: #fff no-repeat scroll 0 100%;
}

.product-top {
	width: 660px;
	margin-right: 225px;
	padding-bottom: 20px;
}

.product-top h2 {
	padding-left: 20px;
}

.product-left {
	float: left;
	width: 465px;
	height: 320px;
	margin-right: 185px;
}

/** .product-right*/
.product-right {
	position: relative;
	float: left;
	width: 150px;
	height: 300px;
	margin-left: -160px;
	padding: 10px;
	background-color: #f5f5f5;
}

.product-right h3 {
	font-size: 12px;
	font-weight: normal;
}

.product-lowestPrice {
	margin: -10px -10px 10px -10px;
	padding: 10px;
	border-bottom: 1px dashed #ccc;
}

.product-lowestPrice span {
	display: block;
	font-size: 26px;
	line-height: 35px;
	color: #003064;
}

.product-right div.product-price {
	/*width: 128px;
	padding: 0 5px;*/
	color: #444;
}

div.product-price span {
	display: inline-block;
	line-height: 26px;
	font-size: 16px;
}

.product-right div.product-price span.action,
.product-right div.product-price span.regular {
	width: auto;
	margin-left: 0;
}

.product-right div.product-price span.action {
	margin-bottom: 4px;
}

.product-info {
	float: left;
}

.request-service a,
.webshopProduct__requestService a {
    color: #000;
}

.webshopProduct__requestService .request-service {
    display: none;
}

.add-to-shoppingcart {
    display: block;
    margin-top: 1em;
    margin-bottom: 1.5em;
}

.add-to-shopping-cart-link {
    margin-left: 0;
}

.add-to-shopping-cart-link::before {
    content: '\e800';
    margin-right: 1em;
    font-family: "icons";
    font-weight: normal;
}

.add-to-shopping-cart .product-quantity {
    display: none;
}

/**
 * In stock
 */

.in-stock-text {
	display: block;
	margin-top: 1.5em;
	font-size: 0.8rem;
	line-height: 1.5;
}


/**
 * These styles originate from the usps.css article template.
 * Please make any changes on this CSS on both places
 */

.webshop-productdetails .at-usps__mainTitle {
	font-size: 1.5em;
	font-weight: normal;
	font-style: italic;
}

.webshop-productdetails .at-usps__list {
	max-width: 320px;
	margin: 2em 0 0;
	padding: 1em;
	list-style: none;
	background-color: #e2ecf3;
}

.webshop-productdetails .at-usps__item {
	position: relative;
	display: block;
	margin-bottom: 2em;
}

.webshop-productdetails .at-usps__item:last-child {
	margin-bottom: 0;
}

.webshop-productdetails .at-usps__item:before {
	position: absolute;
	top: 10px;
	left: 0;
	content: '\f06d';
	font-family: "icons";
	font-size: 1.5em;
}

.webshop-productdetails .at-usps__title,
.webshop-productdetails .at-usps__subtitle {
	margin: 0;
	padding-left: 2.5rem;
	font-size: 1em;
	font-weight: 600;
}

.webshop-productdetails .at-usps__subtitle {
	font-size: .9em;
	font-weight: 400;
}

.webshop-productdetails .at-usps__link {
	text-indent: -999em;
}

.webshop-productdetails .at-usps__item--hasLink:hover {
	text-decoration: underline;
}

/**
 *   Lightbox
 */

.has-touch .pbuic-lightbox .lb-cic-navigation,
.has-touch .pbuic-lightbox .lb-cicn-pages {
    left: 0;
}

.lb-cic-previous-button,
.lb-cic-next-button,
.lb-cic-download {
    box-sizing: content-box;
}