
.klarnaPaymentsSelectorButton {
	display: inline-block;
	cursor: pointer;
	border: 1px solid #abadb3;
	padding: 10px 10px 8px 8px;
	margin-right: 8px;
	margin-top: 8px;
	border-top-right-radius: 0.4em;
	border-top-left-radius: 0.4em;
	border-bottom-right-radius: 0.4em;
	border-bottom-left-radius: 0.4em;
}

.klarnaPaymentsSelectorButton:hover {
	background-color: #f2f2f2;
}

.klarnaPaymentsSelectorButton.selectorSelected {
	background-color: #dedede;
}

.klarnaPaymentsSelectorButton img {
	vertical-align: middle; 
	margin-top: -2px;
}



/* Base Elements - CSS Resets */

	body {
		font-size: 100%;
		margin: 0px;
		padding: 0px;
		height: 100%;
		font-family: Verdana, Arial, Helvetica;
		color: #323232;
		line-height: 120%;
	}

	table, thead, tbody, tr, td, th {
		font-size: inherit;
		font-family: inherit;
	}

	form {
		padding: 0px;
		margin: 0px;c
	}

	a {
		color: #323232;
		font-weight: bold;
		text-decoration: none;
	}

	a:hover {
		color: #012885;
	}

	img {
		border-width: 0px;
	}

	/* Removes default scrollbars in IE */
	textarea {
		overflow: auto;
	}

	input[type='checkbox'],
	input[type='radio'] {
		margin: 0.4em 0.4em 0px 0px;
		padding: 0px;
	}

	input {
		font-size: inherit;
	}

	/* -webkit-appearance: Removes default scrollbars in IE */
	button,
	input[type='reset'],
	input[type='button'],
	input[type='submit'] {
		border-color: #abadb3;
		border-width: 1px;
		border-style: solid;
		cursor: pointer;
		font-size: inherit;
		padding-right: 1.5em;
		padding-left: 1.5em;
		-webkit-appearance: none;
	}

	button,
	input[type='reset'],
	input[type='button'],
	input[type='submit'],
	.inputHeight {
		height: 2em;
	}

	textarea,
	input[type='text'],
	input[type='email'],
	input[type='password'] {
		box-sizing: border-box;
		border-color: #abadb3;
		border-width: 1px;
		border-style: solid;
		padding: 1px 1px 1px 4px;
	}

	*:focus {
		outline-color: #323232;
	}

	input[type='text'],
	input[type='email'],
	input[type='password'] {
		height: 2em;
	}

	textarea:required,
	input:required,
	textarea.showValidationIcon,
	input.showValidationIcon {
		padding-right: 21px;
	}

	input.user-success:required,
	input.user-success.showValidationIcon,
	textarea.user-success:required,
	textarea.user-success.showValidationIcon {
		background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAMFBMVEWR03BDtAKl3IcnqQBmwjM7sQAZpAB6ylIzrgDg8tXt+OaCzlwMngBMuBD///////8l8e8EAAAAEHRSTlP///////////////////8A4CNdGQAAAIZJREFUeNpNj0ESxSAIQwMBilrb+9/2S3Xxs+KFGUjwLnW1OU1bzWVopot4OraBcNkKlKEhR2Toi55nnxxXZofycOjz2K0wl8zDj9EwJcW4+aJMiEt7cH9c52Gca24fu7hBybHo7Kn1NrB4RKVlr2Dl7LihX3SmWxZz7HJIssrlLrfU/ur/AJYFBvl3Q0GRAAAAAElFTkSuQmCC);
	}

	input.user-success:required,
	input.user-success.showValidationIcon {
		background-repeat: no-repeat;
		background-position: 99% 50%;
		border-color: #42b402;
	}

	textarea.user-success:required,
	textarea.user-success.showValidationIcon {
		background-repeat: no-repeat;
		background-position: 99% 4px;
		border-color: #42b402;
	}

	textarea.user-success:disabled,
	input.user-success:disabled {
		background-image: none;
	}

	/* Avvoid strange effects on IPhones */
	input[type='checkbox'].user-success,
	input[type='radio'].user-success {
		background-image: none;
		border-color: inherit;	
	}

	/* Both color must be set because firefox uses color, and the other browsers background-color */
	hr {
		background-color: #012885;
		color: #012885;
		height: 1px;
	}

	.pageTitle,
	h1 {
		font-size: 1.6em;
		font-weight: 600;
	}

	.productPageTitle,
	h2 {
		font-size: 1.20em;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #aaaaaa;
		font-weight: 600;
	}

	h3,
	h4 {
		font-size: 1.2em;
	}

	h5,
	h6 {
		font-size: 1.1em;
	}

	.ui-datepicker {
		font-size: 0.8em;
		z-index: 9999 !important;
	}


/* Dimensions and margins */

	#header,
	#main,
	.fullWidthHeader #topMenuElement,
	.fixTopMenu #topMenu.fixed #topMenuBody {
		max-width: 1240px;
	}

	#header,
	#main,
	.fullWidthHeader #topMenuElement,
	.fixTopMenu #topMenu.fixed #topMenuBody,
	.fullWidthHeader.topMenuAbsolute #topMenuBody {
		max-width: 1240px;
	}



	.fullWidthHeader #header {
		max-width: none;
	}

	/* box-sizing: keeps the widths of main and header equal even when only main has padding (headerMargin off) */
	#main,
	#header {
		box-sizing: border-box;
	}

	.headerMargin #header,
	#main {
		padding-top: 1%;
		padding-left: 1%;
		padding-right: 1%;
	}

	.headerMargin #topMenu,
	.headerMargin #headerGraphicsContainer {
		padding-bottom: 0.7%;
	}

	.headerMargin #main {
		padding-top: 0px;
	}

	.topMenuAbsolute #topMenuBody,
	.fullWidthHeader.topMenuAbsolute #topMenuBody {
		position: absolute;
		bottom: 0px;
		left: 7.5%;
		right: 7.5%;
	}

	.topMenuAbsolute #topMenuElement,
	.fullWidthHeader.topMenuAbsolute #topMenuElement {
		width: 100%;
		padding-left: 15px;
	}

	#leftColumn {
		left: -76%;
		width: 20%;
	}

	#centerColumn {
		left: 22%;
		width: 76%;
	}

	#rightColumn {
	display: none;
	}


/* Rounding */

	.roundHeader.sheetMargin #header,
	.roundSide .sideElementHeader {
		border-top-right-radius: 0.4em;
		border-top-left-radius: 0.4em;
	}

	.roundHeader #headerGraphics,
	.roundHeader #topMenuBody,
	.roundSide .sideElementBodyOnly,
	.roundSide .productListBestseller .productListBestsellerImage,
	.roundMain .mfp-figure:after,
	.roundMain .white-popup {
		border-top-right-radius: 0.4em;
		border-top-left-radius: 0.4em;
		border-bottom-right-radius: 0.4em;
		border-bottom-left-radius: 0.4em;
	}

	.roundSide .sideElementBody {
		border-bottom-right-radius: 0.4em;
		border-bottom-left-radius: 0.4em;
	}

	.roundForm button,
	.roundForm input[type='reset'],
	.roundForm input[type='button'],
	.roundForm input[type='submit'],
	.roundForm textarea,
	.roundForm input[type='text'],
	.roundForm input[type='email'],
	.roundForm input[type='password'],
	.roundForm .roundAsButton,
	.roundSide #sideMenu ul li a,
	.roundMain .boxOutlined,
	.roundMain .boxOutlinedWarning,
	.roundMain #cartExtension,
	.roundMain .productListCartExtension .outerBox,
	.roundSide #news .frame,
	.roundHeader #topMenuBody ul ul {
		border-top-right-radius: 0.25em;
		border-top-left-radius: 0.25em;
		border-bottom-right-radius: 0.25em;
		border-bottom-left-radius: 0.25em;
	}

	.roundMain #productPageDescriptionTabs .tabNavigation .tab {
		border-top-right-radius: 0.25em;
		border-top-left-radius: 0.25em;
	}

	.roundMain #productPageDescriptionTabs .tabContent {
		border-bottom-right-radius: 0.25em;
		border-bottom-left-radius: 0.25em;
	}


/* Background Elements */

	/* Backgrounds here do not show in the wysiwygs in admin */
	@media screen {
		#frontEndBody {
			
			background-color: #ffffff;
			z-index: -20;
		}
	}

	#backgroundGradient {
		
		height: 100%;
		width: 100%;
		top: 0px;
		margin: 0px;
		position: fixed;
		z-index: -10;
	}


/* Header Elements */

	#compactHeader {
		display: none;
		box-shadow: 0 2px 5px rgba(0, 0, 0, .16);
	}

	.fixCompactHeader #compactHeader {
		position: fixed;
		width: 100%;
		z-index: 200;
		max-height: 100%;
		overflow-y: auto;
	}

	#compactHeaderGraphics {
		background-color: #ffffff;
		height: 68px;
		overflow: hidden;
	}

	#compactHeaderGraphics .compactHeaderButton {
		width: 24px;
		height: 24px;
		margin-top: 12px;
		padding: 10px;
		float: left;
		margin-left: 12px;
		z-index: 1;
		position: relative;
	}

	#compactLogoContainer {
		width: 200px;
		height: 44px;
		position: absolute;
		right: 12px;
		top: 12px;
		z-index: 0;
	}

	#compactLogo {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0px;
		margin: auto;
		max-width: 100%;
		max-height: 100%;
	}

	.reverseCompactHeader #compactHeaderGraphics .compactHeaderButton {
		float: right;
		margin-left: 0px;
		margin-right: 12px;
	}

	.reverseCompactHeader #compactLogoContainer {
		left: 12px;
	}

	.reverseCompactHeader #compactLogo {
		right: auto;
		left: 0px;
	}

	/* position: topMenuAbsolute */
	#header {
		position: relative;	
		background-color: #ffffff;
		margin-left: auto;
		margin-right: auto;
	}

	/* background-color: may show through behind the image slider, so don't set it unless the slider isn't used */
	/* padding-top: Height by aspect ratio */
	#headerGraphics {
		padding-top: 14%;
		position: relative;
		overflow: hidden;
		background-color: transparent;
	}

	#headerImages img {
		width: 100%;
		height: 100%;
	}

	#logoContainer {
		position: absolute;
		top: 0px;
		bottom: 0px;
		left: 0px;
		right: 0px;
		overflow: hidden;
		z-index: 100;
		margin-left: 1.5%;
	}

	#logo {
		width: 26%;
		vertical-align: middle;
	}

	/* z-index: topMenuAbsolute */
	#topMenuBody,
	#topMenuFixedBody {
		margin-left: auto;
		margin-right: auto;
		padding-top: 5px;
		padding-bottom: 5px;
		z-index: 101;
	}

	.fixTopMenu #topMenu.fixed #topMenuBody {
		position: fixed;
		top: 0px;
		bottom: auto;
		margin-top: 0px;
		z-index: 202;
		border-top-right-radius: 0px;
		border-top-left-radius: 0px;
		border-bottom-right-radius: 0px;
		border-bottom-left-radius: 0px;
	}

	.headerMargin.fixTopMenu #topMenu.fixed #topMenuBody {
		margin-left: -1%;
		width: 1240px;
		background-color: rgba(1, 40, 133, 0.70);
	}

	.headerMargin.fixTopMenu.topMenuAbsolute #topMenu.fixed #topMenuBody {
		margin-left: auto;
	}

	.fullWidthHeader #header,
	.fullWidthHeader.fixTopMenu #topMenu.fixed #topMenuBody {
		width: 100%;
	}

	.fullWidthHeader.topMenuAbsolute.fixTopMenu #topMenu.fixed #topMenuBody {
		width: auto;
	}


	#topMenuFixedBody {
		display: none;
	}

	.fixTopMenu #topMenu.fixed #topMenuFixedBody {
		display: block;
	}

	.topMenuAbsolute.fixTopMenu #topMenu.fixed #topMenuFixedBody {
		display: none;
	}

	#topMenuElement {
		margin-left: auto;
		margin-right: auto;
		padding-left: 15px;
	}

	.fullWidthHeader #topMenuElement {
		padding-left: 0px;
	}

	#compactHeaderGraphics .compactHeaderButton svg g {
		fill: #012885;
	}

	#compactHeaderGraphics .compactHeaderButton {
		background-color: #ffffff;
		border-top-right-radius: 4px;
		border-top-left-radius: 4px;
		border-bottom-right-radius: 4px;
		border-bottom-left-radius: 4px;
		color: #012885;
		border-color: #ffffff;
		border-width: 0px;
		border-style: solid;
		cursor: pointer;
		font-weight: bold;
		white-space: nowrap;
	}

	#compactSearch {
		background-color: #012885;
		padding: 10px;
		border-top-width: 1px;
		border-top-style: solid;
		border-top-color: #ffffff;
	}

	#compactSearch input[type='submit'] {
		float: right;
		width: 55px;
	}

	#compactSearchQ {
		width: 100%;
		float: left;
	}


/* Page Elements */

	.sheetMargin #sheet {
		margin-top: 0%;
	}

	#sheet {
		overflow: hidden;
	}

	#main {
		padding-top: 1%;
		background-color: #ffffff;
		margin-left: auto;
		margin-right: auto;
		position: relative;
	}

	#centerColumn {
		font-size: 0.85em;
		position: relative;
		float: left;
	}

	#centerColumn.loadingOverlay:before,
	#centerColumn.loadingOverlay:after {
		z-index: 500;
	}

	#leftColumn {
		font-size: 0.8em;
		position: relative;
		float: left;
	}

	#rightColumn {
		font-size: 0.8em;
		position: relative;
		float: left;
	}

	.centerElement {
		margin-bottom: 2%;
	}

	.sideElement {
		margin-bottom: 4%;
	}

	.sideElementHeader {
		background-color: #012885;
		font-weight: bold;
		color: #ffffff;
		padding-top: 6px;
		padding-right: 10px;
		padding-bottom: 6px;
		padding-left: 10px;
	}

	.sideElementBody {
		b ackground-color: rgba(1, 40, 133, 0.85);
		border-bottom: 1px solid #012885;
		border-left: 1px solid #012885;
		border-right: 1px solid #012885;
		color: #323232;
		padding-top: 10px;
		padding-right: 10px;
		padding-bottom: 10px;
		padding-left: 10px;
		margin-top: 0px;
		line-height: 130%;
	}

	.sideElementBodyOnly {
		background-color: #012885;
		color: #ffffff;
		padding-top: 6px;
		padding-right: 10px;
		padding-bottom: 6px;
		padding-left: 10px;
	}

	.compactSideElementTrigger {
		display: none;
	}

	#cartExtension {
		position: absolute;
		display: none;
		width: 100%;
		background-color: rgba(0, 31, 95, 0.85);
		color: #ffffff;
		margin-top: 1px;
		line-height: 130%;
		z-index: 201;
	}

	#cartExtensionElement {
		margin-top: 2%;
		margin-bottom: 2%;
		margin-right: 4%;
		margin-left: 4%;
	}

	#cartExtensionProductContainer {
		width: 74%;
		float: left;
	}

	#cartExtensionControlsContainer {
		font-size: 0.9em;
		width: 24%;
		float: right;
		text-align: right;
	}

	#cartExtensionControlsContainer input[type='button'],
	#cartExtensionControlsContainer input[type='submit'] {
		margin-top: 5%;
		width: 100%;
	}

	#cartExtensionPricesContainer {
		margin-top: 5%;
	}

	#cartExtensionPricesContainer .incVatBox {
		border-top-width: 1px;
		border-top-style: solid;
		border-top-color: #ffffff;
		border-bottom-width: 4px;
		border-bottom-style: double;
		border-bottom-color: #ffffff;
	}

	#cartExtensionShippingCheckContainer {
		margin-top: 10%;
		font-size: 0.9em;
	}

	#cartExtensionShippingCheckZipCode {
		width: 4em;
	}

	#cartExtensionShippingCheckResult {
		margin-top: 5%;
		z-index: -1;
		float: right;
		white-space: nowrap;
		text-align: right;
	}

	#cartExtensionShippingCheckResult.loadingOverlay:before {
		border-radius: 4px;
		background-color: rgba(225, 225, 255, .95);
	}

	#breadcrumb {
		font-size: 0.9em;
		color: #646464;
	}

	#sharetool {
		float: right;
	}

	/* Pre-styling these tags to avoid content shifting when loading the addthis stylesheet */
	#sharetool a {
		padding: 0px 2px 0px 2px;
		float: left;
	}

	#poweredby {
		text-align: right;
		padding-top: 0.5em;
		padding-bottom: 0.5em;
	}

	.pageImage {
		float: left;
		margin-right: 2%;
		margin-bottom: 1%;
		max-width: 20%;
	}

	.articlePageImage {
		float: left;
		width: 30%;
		margin-right: 2%;
		margin-bottom: 1%;
	}

	/* Hack: Avoid list elements overlapping any left floated image */
	.articlePage ul,
	.articlePage ol {
		overflow: hidden;
	}

	#productPageImageInlineContainer {
		height: 100%;
	}

	#productPageImageInlineContainer .zoomButton {
		position: absolute;
		bottom: 0px;
		z-index: 199;
	}

	#productPageImageInlineContainer .swiperImageStack .navigation svg {
		width: 75%;
	}

	#articlePageImageInlineContainer {
		height: 100%;
	}

	#articlePageImageInlineContainer .zoomButton {
		position: absolute;
		bottom: 0px;
		z-index: 199;
	}

	#articlePageImageInlineContainer.inlineGallery .swiperThumbStack {
		height: 130px;
	}

	.articlePageDescription {
		font-weight: bold;
	}

	.productPageFullVariantSelects .imageFormat a {
		display: block;
		box-sizing: border-box;
		width: 100%;
		height: 100%;
		padding: 2%;
		text-align: center;
		background-color: #ffffff;
		border-width: 1px;
		border-style: solid;
		border-color: transparent;
	}

	.productPageFullVariantSelects .imageFormat .selectedImage a {
		border-width: 1px;
		border-style: solid;
		border-color: #323232;
	}

	/* Adds a transparent border so images without selected border will be of the same size. */
	.productPageFullVariantSelects .imageFormat .aspectRatioElement {
		padding: 1px;
	}
	.productPageFullVariantSelects .imageFormat .selectedImage .aspectRatioElement {
		padding: 0px;
	}

	.productPageFullVariantSelects .imageFormat .variantImageHeight {
		position: relative;
		padding-top: 95%;
	}

	.productPageFullVariantSelects .imageFormat img {
		max-width: 100%;
		max-height: 100%;
	}

	.productPageVariantSelects {
		width: 100%;
		margin-bottom: 2%;
		height: 2em;
	}

	.productPageCustomerCommentBox {
		width: 100%;
		height: 40px;
	}

	.productPageInfo .productInfoContainer {
		margin-bottom: 6px
	}

	.productPageInfo .productInfoContainer.variantRow,
	.productPageInfo .productInfoContainer.imageVariantRow {
		display: none;
	}

	.productPageInfo .productInfoTitle {
		width: 98px;
		float: left;
	}

	.productPageInfo .productInfoContent {
		margin-left: 100px;
	}

	#productPageDescriptionTabs #tabExternalUrls div {
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}

	/* Used in the admin wysiwyg */
	.pageBody {

	}

	/* Used in the admin wysiwyg */
	.pageFooter {

	}


/* Menus */

	/* Drop Down Menu - Basic drop down functionality */
	.dropDownMenu ul a {
		display: block;
	}

	.dropDownMenu ul {
		margin: 0px;
		padding: 0px;
		list-style-type: none;
		z-index: 102;
	}

	.dropDownMenu ul li {
		display: block;
		float: left;
		position: relative;
	}

	.dropDownMenu ul ul {
		visibility: hidden;
		opacity: 0;
		transition: visibility 0s linear 0.35s, opacity 0.35s linear;
		position: absolute;
		top: 100%;
	}

	.dropDownMenu ul li:hover > ul {
		visibility: visible;
		opacity: 1;
		transition-delay: 0s;
	}

	.dropDownMenu ul ul li {
		float: none;
	}

	.dropDownMenu ul ul ul {
		left: 96%;
		top: 6px;
	}

	.dropDownMenu ul:after {
		content: '';
		clear: both;
		display: block;
	}

	/* Two Levels / Multi Column Mode */
	.multiColumn .dropDownMenu > ul {
		position: relative;
	}

	.multiColumn .dropDownMenu ul li {
		position: static;
	}

	.multiColumn .dropDownMenu ul ul li {
		float: left;
	}

	.multiColumn .dropDownMenu ul ul ul li {
		float: none;
		padding-left: 15px;
	}

	.multiColumn .dropDownMenu ul ul ul {
		left: 0px;
		top: 0px;
		position: relative;
	}

	.multiColumn .dropDownMenu ul li:hover ul {
		visibility: visible;
		opacity: 1;
		transition-delay: 0s;
	}


	/* Top Menu - Visual styling */
	#topMenuBody {
		font-size: 0.9em;
		background-color: #012885;
	}

	#topMenuBody ul {
		background-color: transparent;
		border-color: transparent;
		border-style: solid;
		border-width: 0px;
	}

	#topMenuBody ul li a {
		font-size: 0.9em;
		color: #ffffff;
		text-decoration: none;
		padding-top: 7px;
		padding-right: 33px;
		padding-bottom: 6px;
		padding-left: 0px;
		font-weight: bold;
		white-space: nowrap;
	}

	#topMenuBody ul li a:hover,
	#topMenuBody ul li a:focus {
		color: #f18e45;
		outline: none;
	}

	#topMenuBody ul ul {
		background-color: #cfdbf0;
		border-color: #012885;
		border-style: solid;
		border-width: 1px;
	}

	#topMenuBody ul ul li a {
		padding: 8px 18px 8px 8px;
		margin-right: 10px;
		color: #323232;
		font-weight: normal;
	}

	#topMenuBody ul ul li.parentNode > a:after {
		content: '►';
		position: absolute;
		right: 5px;
		font-size: 0.8em;
		top: 1em;
	}

	#topMenuBody ul ul li a:hover {
		color: #f18e45;
	}

	.multiColumn #topMenuElement ul ul li.parentNode > a:after {
		content: '';
	}

	.multiColumn #topMenuElement ul ul ul {
		border-color: transparent;
	}

	.multiColumn #topMenuElement ul ul ul li a:before {
		position: absolute;
		content: '•';
		left: 10px;
        }


	/* Side Menu - Functionality */
	#sideMenu ul {
		margin: 0px;
		padding: 0px;
		list-style-type: none;
	}

	#sideMenu ul li {
		display: block;
	}

	#sideMenu ul ul {
		display: none;
	}

	#sideMenu ul li.expandNode > ul {
		display: block;
	}

	/* Side Menu - Visual styling */
	#sideMenu ul li a {
		display: block;
		color: #323232;
		background-color: transparent;
		background-image: none;
		border-width: 1px;
		border-style: solid;
		border-color: #597ab6;
		padding: 3%;
		margin-bottom: 2px;
	}

	#sideMenu ul li.activeNode > a,
	#sideMenu ul li a:hover {
		color: #ffffff;
		background-color: #012885;
		border-color: #597ab6;
	}

	#sideMenu ul ul li a {
		padding: 2% 2% 2% 23px;
		border-color: #ffffff;
	}

	#sideMenu ul ul li a:before {
		position: absolute;
		content: '•';
		left: 10px;
	}

	#sideMenu ul ul li.activeNode > a,
	#sideMenu ul ul li a:hover {
		border-color: #597ab6;
		border-style: dotted;
	}

	#sideMenu ul ul ul li a {
		background-position: 20px center;
		padding-left: 37px;
	}

	#sideMenu ul ul ul li a:before {
		left: 25px;
	}

	#sideMenu ul ul ul ul li a {
		padding-left: 52px;
	}

	#sideMenu ul ul ul ul li a:before {
		left: 40px;
	}

	#sideMenu ul ul ul ul ul li a {
		padding-left: 67px;
	}

	#sideMenu ul ul ul ul ul li a:before {
		left: 55px;
	}

	#sideMenu ul ul ul ul ul ul li a {
		padding-left: 82px;
	}

	#sideMenu ul ul ul ul ul ul li a:before {
		left: 70px;
	}


	/* Compact (mobile) Menu */
	#compactMenu {
		display: none;
	}

	#compactMenu ul {
		margin: 0px;
		padding: 0px;
		list-style-type: none;
	}

	#compactMenu ul li {
		display: block;
	}

	#compactMenu ul ul {
		display: none;
	}

	/* Compact (mobile) Menu - Visual styling */
	#compactMenu {
		border-top-width: 1px;
		border-top-style: solid;
		border-top-color: #ffffff;
	}

	#compactMenu ul li a {
		display: block;
		background-color: #012885;
		color: #ffffff;
		font-weight: normal;
		padding: 0.8em;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #ffffff;
	}

	#compactMenu ul li.parentNode > a:after {
		content: '▼';
		font-size: 0.7em;
		margin-left: 0.7em;
		position: relative;
		top: -2px;
	}

	#compactMenu ul li:last-child > a {
		border-bottom-width: 0px;
	}

	#compactMenu ul ul {
		padding-left: 0.4em;
		background-color: #012885;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #ffffff;
	}

	#compactMenu ul ul li a {
		background-color: #708BBB;
	}


/* Article Lists */

	/* Normal List */

	.articleListBox .thumbnail {
		float: left;
		width: 35%;
		margin-right: 1.5%;
	}

	.articleListBox .title {
		font-size: 1.2em;
	}

	.articleListBoxSmallImage .articleListBox .thumbnail {
		width: 20%;
	}

	.articleListBoxLargeImage .articleListBox .thumbnail {
		width: 50%;
	}

	.articleListBoxFullImage .articleListBox .thumbnail {
		width: 100%;
		margin-bottom: 2.5%;
	}

	/* Allow images to stack neatly under each other when no text is present */
	.articleListBoxFullImage.articleListBoxHideTitle.articleListBoxHideMoreLink.articleListBoxHideShortDescription .articleListBox .thumbnail {
		margin-bottom: 0;
	}

	.articleListBoxDynamicImage .articleListBox .thumbnail {
		width: auto;
		max-width: 100%;
	}

	.articleListBoxRightFloatImage .articleListBox .thumbnail {
		float: right;
		margin-left: 1.5%;
		margin-right: 0px;
	}

	.articleListBoxCenteredImage .articleListBox .thumbnail {
		float: none;
		margin: 0px auto 3px auto;
		display: block;
	}

	.articleListBoxNoFloatImage .articleListBox .thumbnail {
		float: none;
	}

	.articleListBoxNoWrap .articleListBox .texts {
		overflow: hidden;
	}

	.articleListBox .shortDescriptionTextOnly {
		display: none;
	}

	.articleListBoxShortDescriptionEllipsis .articleListBox .shortDescription {
		display: none;
	}

	.articleListBoxShortDescriptionEllipsis .articleListBox .shortDescriptionTextOnly {
		display: block;
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}

	.articleListBoxHideImage .articleListBox .thumbnail {
		display: none;
	}

	.articleListBoxHideTitle .articleListBox .title {
		display: none;
	}

	.articleListBoxHideShortDescription .articleListBox .shortDescription,
	.articleListBoxHideShortDescription.articleListBoxShortDescriptionEllipsis .articleListBox .shortDescriptionTextOnly {
		display: none;
	}

	.articleListBoxHideMoreLink .articleListBox .moreLink {
		display: none;
	}

	.articleListBoxFrame .articleListBox .frame {
		padding: 2%;
		border-width: 1px;
		border-style: solid;
		border-color: #dddddd;
	}

	.articleListBoxBottomBorder .articleListBox .frame {
		padding-bottom: 2%;
		border-bottom: 1px solid #dddddd;
	}

	.articleListBoxHeight40 .articleListBox .boxAspectRatioElement,
	.articleListBoxHeight60 .articleListBox .boxAspectRatioElement,
	.articleListBoxHeight80 .articleListBox .boxAspectRatioElement,
	.articleListBoxHeight100 .articleListBox .boxAspectRatioElement,
	.articleListBoxHeight130 .articleListBox .boxAspectRatioElement {
		position: absolute;
		top: 0px;
		bottom: 0px;
		left: 0px;
		right: 0px;
		overflow: hidden;
	}

	.articleListBoxHeight40 .articleListBox .boxHeight {
		padding-top: 40%;
	}

	.articleListBoxHeight60 .articleListBox .boxHeight {
		padding-top: 60%;
	}

	.articleListBoxHeight80 .articleListBox .boxHeight {
		padding-top: 80%;
	}

	.articleListBoxHeight100 .articleListBox .boxHeight {
		padding-top: 100%;
	}

	.articleListBoxHeight130 .articleListBox .boxHeight {
		padding-top: 130%;
	}

	.articleListBoxHeight40 .articleListBox .descriptionEllipsis,
	.articleListBoxHeight60 .articleListBox .descriptionEllipsis,
	.articleListBoxHeight80 .articleListBox .descriptionEllipsis,
	.articleListBoxHeight100 .articleListBox .descriptionEllipsis,
	.articleListBoxHeight130 .articleListBox .descriptionEllipsis {
		position: absolute;
		bottom: 0px;
		left: 0px;
		right: 0px;
		height: 10%;
		background: linear-gradient(0deg, rgba(255,255,255,0.85), rgba(255,255,255,0)) 0 0;
	}

	/* Only takes effect with fixed height */
	.articleListBoxMaxHeight85 .articleListBox .thumbnail {
		max-height: 85%;
	}

	/* Only takes effect with fixed height */
	.articleListBoxMaxHeight50 .articleListBox .thumbnail {
		max-height: 50%;
	}

	/* A div with 100% height inside the absolute div is needed for Chrome/Opera to respect the max-height on the image */
	.articleListBox .imageMaxHeightEnabler {
		height: 100%;
	}


	/* FAQ List */

	.articleListFAQ {
		overflow: hidden;
	}

	.articleListFAQ .frame {
		border-bottom: 1px solid #dddddd;
		padding-bottom: 1%;
	}

	.articleListFAQ .title {
		margin-bottom: 0.5%;
		font-weight: bold;
		cursor: pointer;
	}

	.articleListFAQ .thumbnail {
		float: left;
		width: 35%;
		margin-right: 1.5%;
	}

	.articleListFAQSmallImage .articleListFAQ .thumbnail {
		width: 20%;
	}

	.articleListFAQLargeImage .articleListFAQ .thumbnail {
		width: 50%;
	}

	.articleListFAQFullImage .articleListFAQ .thumbnail {
		width: 100%;
	}

	.articleListFAQRightFloatImage .articleListFAQ .thumbnail {
		float: right;
		margin-left: 1.5%;
		margin-right: 0px;
	}

	.articleListFAQHideMoreLink .articleListFAQ .moreLink,
	.articleListFAQHideImage .articleListFAQ .thumbnailBox {
		display: none;
	}

	.articleListFAQHideBorder .articleListFAQ .frame {
		border-bottom-width: 0px;
	}


/* Product Lists */

	/* Table */

	.productListTable {
		width: 100%;
		border-collapse: separate;
		border-spacing: 0;
	}

	.productListTable td {
		vertical-align: top;
		padding: 4px;
		border-bottom-width: 1px;
		border-bottom-style: dotted;
		border-bottom-color: #012885;
	}

	.productListTable .thumbnailColumn {
		width: 13%;
		min-width: 30px;
	}

	.productListTable .thumbnailColumn img {
		width: 100%;
		display: block;
	}

	.productListTable .priceColumn .priceBeforeDiscount {
		text-decoration: line-through;
	}

	.productListTable .shoppingColumn {
		width: 17%;
	}

	.productListTable .removeColumn {
		width: 20px;
	}

	.productListTable .removeColumn .removeButton {
		width: 20px;
		height: 20px;
		float: right;
		margin-top: 2px;
	}

	.productListTable .shoppingColumn select,
	.productListTable .shoppingColumn .customerComment {
		width: 100%;
	}

	.productListTable .shoppingColumn .customerComment {
		min-width: 130px;
		height: 80px;
	}

	.productListTable .shoppingColumn .qty {
		float: left;
		padding-right: 2%;
	}

	.productListTable .shoppingColumn .buyButton {
		width: 100%;
		margin-left: 0px;
	}

	.productListTable .shoppingColumn .qtyInput {
		width: 40px;
		text-align: right;
		padding-right: 5px;
	}

	.productListTable .shoppingColumn .optionsBox select,
	.productListTable .shoppingColumn .customerCommentBox,
	.productListTable .shoppingColumn .qtyBox {
		margin-top: 0px;
		margin-bottom: 3px;
	}

	/* Avvoid spacing below inline element */
	.productListTable .shoppingColumn .customerComment {
		display: block;
	}

	.productListTable .priceColumn,
	.productListTable .stockColumn,
	.productListTable .shoppingColumn {
		text-align: right;
	}

	.productListTable .priceColumn,
	.productListTable .shoppingColumn .qtyBox,
	.productListTable .stockColumn,
	.productListTable .moreInfoColumn.productListTableHeader {
		white-space: nowrap;
	}

	/* Every second row can be "highlighted". Typically with a background color */
	.productListTable tr.highlightedRow td {
		background-color: #ffffff;
		color: #323232;
	}

	.productListTable tr:first-child td {
		border-top-width: 1px;
		border-top-style: dotted;
		border-top-color: #012885;	
	}

	/* Header overrides normal cells so normal cells do not need their own class */
	.productListTable tr.highlightedRow td.productListTableHeader {
		font-weight: bold;
		background-color: transparent;
		border-top-width: 0px;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #012885;
	}

	.productListTableHideHighlight .productListTable tr.highlightedRow td {
		background-color: transparent;
	}

	.productListTableHideArticleNumberColumn .productListTable .articleNumberColumn,
	.productListTableHideArticleNumber2Column .productListTable .articleNumber2Column,
	.productListTableHideThumbnailColumn .productListTable .thumbnailColumn,
	.productListTableHidePriceColumn .productListTable .priceColumn,
	.productListTableHideStockColumn .productListTable .stockColumn,
	.productListTableHideMoreInfoColumn .productListTable .moreInfoColumn,
	.productListTableHideShoppingColumn .productListTable .shoppingColumn,
	.productListTableHideBuyButton .productListTable .buyButton {
		display: none;
	}

	/* For admin */
	.productListTable .rowHasLocations td {
		border-bottom-width: 0px;
	}


	/* Box */

	.productListBox {
		font-size: 0.8em;
	}

	.productListBox a,
	.productListBox a:active,
	.productListBox a:hover,
	.productListBox a:visited {
		font-weight: normal;
		color: #353535;
	}

	.productListBox .outerBorder {
		overflow: hidden;
		position: relative;
	}

	.productListBox .imageOuterBox {
		box-sizing: border-box;
		border-width: 1px;
		border-style: solid;
		border-color: #dddddd;
		text-align: center;
		overflow: hidden;
	}

	.productListBox .imageCenterOuterBox {
		height: 100%;
	}

	.productListBox .imageCenterInnerBox {
		height: 100%;
	}

	.productListBox .imageBoxHeight {
		padding-top: 95%;
	}

	.productListBoxLandscapeImage .productListBox .imageBoxHeight {
		padding-top: 70%;
	}

	.productListBoxPortraitImage .productListBox .imageBoxHeight {
		padding-top: 125%;
	}

	/* height: Required by Opera to size image correctly */
	.productListBox .imageInnerBox {
		height: 100%;
	}

	.productListBox .imageInnerBox img {
		max-height: 77%;
		max-width: 100%;
		margin-top: 2.5%;
	}

	.productListBoxCenterImage .productListBox .imageCenterOuterBox {
		height: 100%;
		width: 100%;
		display: table;
		table-layout: fixed;
	}

	.productListBoxCenterImage .productListBox .imageCenterInnerBox {
		display: table-cell;
		vertical-align: middle;
	}

	.productListBox .titleBox {
		font-size: 1.1em;
		position: absolute;
		bottom: 0px;
		left: 0px;
		right: 0px;
		text-align: center;
		padding-top: 4%;
		padding-bottom: 4%;
		background-color: rgba(255,255,255,0.8);
	}

	.productListBox .titleBoxPadding {
		padding-right: 3%;
		padding-left: 3%;
	}

	.productListBox .descriptionBox {
		color: #777777;
		margin-top: 1%;
		margin-bottom: 1%;
		line-height: 1.2;
		height: 4.8em;
		overflow: hidden;
	}

	.productListBoxTwoLineDescription .productListBox .descriptionBox {
		height: 2.4em;
	}

	.productListBox .stockBox {
		height: 16px;
		margin-top: 1%;
		margin-bottom: 1%;
		text-align: right;
		color: #777777;
		overflow: hidden;
	}

	.productListBox .priceBox {
		padding-top: 1%;
		padding-bottom: 1%;
		height: 2.4em;
		line-height: 1.2;
		overflow: hidden;
	}

	.productListBox .priceBeforeDiscount {
		text-decoration: line-through;
		font-weight: normal;
		white-space: nowrap;
	}

	.productListBox .price {
		font-weight: normal;
		white-space: nowrap;
	}

	.productListBox .priceBox input[type='button'] {
		float: right;
		height: 100%;
		padding-right: 0.8em;
		padding-left: 0.8em
	}

	.productListBox .descriptionEllipsis,
	.productListBox .fullEllipsis {
		position: absolute;
		bottom: 0px;
		left: 0px;
		right: 0px;
		height: 10%;
		background: linear-gradient(0deg, rgba(255,255,255,0.85), rgba(255,255,255,0)) 0 0;
	}

	.productListBox .fullEllipsis {
		height: 3%;
	}

	.productListBox.isNotShoppable .descriptionEllipsis {
		display: none;
	}

	.productListBox.isNotShoppable .descriptionBox .aspectRatioElement {
		overflow: visible;
	}

	.productListBox.isShoppable .fullEllipsis {
		display: none;
	}

	.productListBoxGrayTitle .productListBox .titleBox {
		border-top: 1px solid rgb(226, 226, 226);
		background-color: rgba(238,238,238,0.8);
	}

	.productListBoxGrayTitle .productListBox .ImageOuterBox {
		border-color: rgb(226, 226, 226);
	}

	.productListBoxBlackTitle .productListBox .titleBox {
		background-color: rgba(25, 25, 25, 0.75);
		color: #ffffff;
	}

	.productListBoxHideFrame .productListBoxGrayTitle .productListBox .titleBox,
	.productListBoxHideFrame .productListBox .imageOuterBox,
	.productListBoxFullFrame .productListBoxGrayTitle .productListBox .titleBox,
	.productListBoxFullFrame .productListBox .imageOuterBox {
		border-width: 0px;
	}

	.productListBoxFullFrame .productListBox .outerBorder {
		border-width: 1px;
		border-style: solid;
		border-color: #dddddd;
	}

	.productListBoxFullFrame .productListBox .descriptionBox .aspectRatioElement {
		left: 3%;
		right: 3%;
	}

	.productListBoxFullFrame .productListBox .priceBox {
		padding-right: 3%;
		padding-left: 3%;
	}

	.productListBoxHideDescription .productListBox .descriptionBox,
	.productListBoxHideStock .productListBox .stockBox,
	.productListBoxHidePrice .productListBox .priceBeforeDiscount,
	.productListBoxHidePrice .productListBox .price,
	.productListBoxHideButton .productListBox input[type='button'],
	.productListBoxHidePrice.productListBoxHideButton .productListBox .priceBox {
		display: none;
	}


	/* Cart Extension */

	.productListCartExtension {
		font-size: 0.8em;
		position: relative;
		margin-top: 2%;
		margin-bottom: 2%;	
	}

	.productListCartExtension a,
	.productListCartExtension a:active,
	.productListCartExtension a:hover,
	.productListCartExtension a:visited {
		font-weight: normal;
		color: #353535;
	}

	.productListCartExtension .outerBox {
		background-color: #ffffff;
		text-align: center;
		overflow: hidden;
		width: 90%;
	}

	.productListCartExtension .boxHeight {
		padding-top: 85%;
	}

	/* height: Required by Opera to size image correctly */
	.productListCartExtension .innerBox {
		height: 100%;
	}

	.productListCartExtension .innerBox img {
		max-height: 75%;
		max-width: 100%;
		margin-top: 2.5%;
	}

	.productListCartExtension .titleBox {
		position: absolute;
		bottom: 0px;
		left: 0px;
		right: 0px;
		text-align: center;
		padding-top: 4%;
		padding-bottom: 4%;
		background-color: rgba(255,255,255,0.8);
	}

	.productListCartExtension .priceBox {
		color: #ffffff;
		width: 90%;
		text-align: center;
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}

	.productListCartExtension .removeButton {
		position: absolute;
		width: 18%;
		height: 18%;
		top: -9%;
		right: 3%;
	}

	/* Bestseller */

	.productListBestseller .productListBestsellerTitle {
		margin-bottom: 1%;
	}

	.productListBestseller .productListBestsellerImage {
		width: 100%
	}

	.productListBestseller .productListBestsellerButton {
		margin-top: 2%;
		width: 100%;
	}


	/* Shopping Lists */

	.productListTable tr td.shoppingListEditTitleColumn,
	.productListTable tr td.shoppingListEditPriceColumn,
	.productListTable tr td.shoppingListEditOptionsColumn,
	.productListTable tr td.shoppingListEditQtyColumn {
		vertical-align: middle;
		background-color: transparent;
	}

	.productListTable .shoppingListEditPriceColumn {
		white-space: nowrap;
	}

	.productListTable .shoppingListEditQtyColumn input {
		width: 40px;
		text-align: right;
		padding-right: 5px;
	}

	.productListTable tr td.shoppingListTitleColumn,
	.productListTable tr td.shoppingListPriceColumn,
	.productListTable tr td.shoppingListOptionsColumn,
	.productListTable tr td.shoppingListDesiredColumn,
	.productListTable tr td.shoppingListPurchasedColumn,
	.productListTable tr td.shoppingListShoppingColumn {
		vertical-align: middle;
		background-color: transparent;
	}

	.productListTable .shoppingListPriceColumn {
		white-space: nowrap;
	}

	.productListTable .shoppingListQty {
		width: 40px;
		text-align: right;
		padding-right: 5px;
	}

	.shoppingListTable {
		width: 100%;
	}

	.shoppingListTable td {
		padding: 4px 2px 2px 2px;
	}

	.shoppingListTableHeading {
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #012885;
		font-weight: bold;
	}

	.shoppingListTable.editMode .shoppingListTablePrivate {
		text-align: center;
		vertical-align: top;
	}

	.shoppingListTable.editMode .shoppingListTableComment,
	.shoppingListTable.editMode .shoppingListTablePrivate {
		border-bottom-style: dotted;
		border-bottom-width: 1px;
		border-bottom-color: #012885;
	}

	.shoppingListTable.listMode .shoppingListTableComment {
		border-bottom-style: dotted;
		border-bottom-width: 1px;
		border-bottom-color: #012885;
	}


/* E-commerce */

	.priceBeforeDiscount {
		color: #8b0000;
	}

	.priceDiscount {
		color: #8b0000;
	}

	.price {
		color: #006400;
	}

	.highlightedElement .priceBeforeDiscount {
		color: #8b0000;
	}

	.highlightedElement .priceDiscount {
		color: #8b0000;
	}

	.highlightedElement .price {
		color: #006400;
	}

	.sideElement .priceBeforeDiscount {
		color: #f69c9c;
	}

	.sideElement .priceDiscount {
		color: #f69c9c;
	}

	.sideElement .price {
		color: #ffffff;
	}

	.orderListPanel select {
		width: 110px;
	}

	.orderListPanel input[type='submit'] {
		width: 110px;
		margin-top: 2px;
	}

	.orderTitles {
		padding: 4px;
	}

	/* registered orders */
	.orderLine1 {
		padding: 7px 2px 4px 2px;
		border-bottom: 1px dotted #808080;
	}

	/* confirmed orders */
	.orderLine2 {
		padding: 7px 2px 4px 2px;
		border-bottom: 1px dotted #808080;
	}

	/* processed orders */
	.orderLine5 {
		padding: 7px 2px 4px 2px;
		border-bottom: 1px dotted #808080;
	}

	/* shipped orders */
	.orderLine6 {
		padding: 7px 2px 4px 2px;
		border-bottom: 1px dotted #808080;
	}

	/* cancelled orders */
	.orderLineCancelled {
		background-color: #fa8c66;
	}

	/* inactive orders */
	.orderLineInactive {
		background-color: #faab8f;
	}

	.orderFooter {
		padding: 2px;
		font-weight: bold;
	}

	.orderConfirmationOrderLines table {
		width: 100%;
		border-collapse: separate;
		border-spacing: 0px;
	}

	.orderConfirmationOrderLines td {
		border-width: 0px;
		vertical-align: top;
		padding: 3px;
		border-bottom-width: 1px;
		border-bottom-style: dotted;
		border-bottom-color: gray;
	}

	.orderConfirmationOrderLines .orderConfirmationHeader {
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #aaaaaa;
	}

	.orderConfirmationOrderLines .orderConfirmationPriceColumn {
		text-align: right;
		padding-right: 0px;
		white-space: nowrap;
	}

	.orderConfirmationPriceSummary {
		display: inline-block;
		float: right;
	}

	.orderProductLines {
		border-top-width: 0px;
		border-right-width: 0px;
		border-left-width: 0px;
		border-bottom-style: dotted;
	}

	#termsAndConditions {
		width: auto;
		padding: 1% 2% 2% 2%;
		margin: 2% 10%;
	}

	.checkoutSum.checkoutMiddleSum {
		border-top: 1px solid gray;
		border-bottom: 1px solid gray;
	}

	.checkoutSum {
		border-top: 1px solid gray;
		border-bottom: 4px double gray;
	}

	.freightOption {
		font-size: 0.9em;
	}

	.checkoutFreightSelection .freightOption {
		margin-bottom: 2px;
	}

	.checkoutFreightSelection input[type='radio'] {
		margin-left: 0px;
		margin-right: 7px;
	}

	.checkoutFreightSelection .freightOptionTitle {
		margin-right: 5px;
	}

	/* Facilitates hiding of the price part of the freight option */
	.checkoutFreightSelection .freightOptionPrice {

	}

/* Tabs */

	.tabNavigation .tab {
		margin-top: 1px;
		margin-right: .2em;
		margin-bottom: -1px;
		float: left;
		padding: 7px 14px 7px 14px;
		font-weight: bold;
		color: #555555;
		border-top: 1px solid #d3d3d3;
		border-right: 1px solid #d3d3d3;
		border-left: 1px solid #d3d3d3;
		background: linear-gradient(to bottom, rgba(235,235,235,1) 0%, rgba(230,230,230,1) 50%, rgba(214,211,214,1) 51%, rgba(242,242,242,1) 100%);
		cursor: pointer;
		border-bottom: 1px solid #aaaaaa;
	}

	.tabNavigation .tab.selectedTab,
	.tabNavigation .tab:hover,
	.tabNavigation .tab:focus {
		color: #212121;
		border-color: #999999;
		border-bottom-color: #aaaaaa;	
	}

	.tabNavigation .tab.selectedTab,
	.tabNavigation .tab.selectedTab:hover,
	.tabNavigation .tab.selectedTab:focus {
		background: none;
		cursor: auto;
		background-color: #ffffff;
		padding-bottom: 8px;
		border-bottom-width: 0px;
	}

	.tabNavigation .tab:hover,
	.tabNavigation .tab:focus {
		background: linear-gradient(to bottom, rgba(232,229,232,1) 0%, rgba(217,217,217,1) 50%, rgba(204,204,204,1) 51%, rgba(240,240,240,1) 100%);
		padding-top: 5px;
		border-top-width: 3px;
		outline: none;
	}

	.tabContent .tabBody {
		display: none;
		border-bottom: 1px solid #aaaaaa;
		border-right: 1px solid #aaaaaa;
		border-left: 1px solid #aaaaaa;
		border-top: 1px solid #aaaaaa;
		padding: 1em 1.4em;
	}

	.tabContent .tabBody.selectedTabBody {
		display: block;
	}


/* idangeros Swiper 2.7.0 css */

	.swiper-container {
		margin: 0 auto;
		position: relative;
		overflow: hidden;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		/* Fix of Webkit flickering */
		z-index: 1;
	}

	.swiper-wrapper {
		position: relative;
		width: 100%;
		-webkit-transition-property: -webkit-transform, left, top;
		-webkit-transition-duration: 0s;
		-webkit-transform: translate3d(0px,0,0);
		-webkit-transition-timing-function: ease;
		transition-property: transform, left, top;
		transition-duration: 0s;
		transform: translate3d(0px,0,0);
		transition-timing-function: ease;
		box-sizing: content-box;
	}

	.swiper-free-mode > .swiper-wrapper {
		-webkit-transition-timing-function: ease-out;
		transition-timing-function: ease-out;
		margin: 0 auto;
	}

	.swiper-slide {
		float: left;
		box-sizing: content-box;
	}


/* Swiper Image Gallery */

	.swiperImageGalleryInitialHide .navigation,
	.swiperImageGalleryInitialHide .swiperPaginatio,
	.swiperImageGalleryInitialHide .swiper-wrapper .swiper-slide,
	.swiperImagepopupGalleryInitialHide,
	.swiperImageGalleryContainer.singleImage .navigation {
		display: none;
	}

	/* Unhide first item */
	.swiperImageGalleryInitialHide .swiper-wrapper .swiper-slide:first-child {
		display: block;
	}

	.swiperImageStack {
		position: relative;
		height: 100%;
	}

	.swiperImageStack .navigation {
		position: absolute;
		cursor: pointer;
		width: 10%;
		top: 0px;
		bottom: 0px;
		z-index: 198;
	}

	.swiperImageStack .navigation svg {
		vertical-align: middle;
		height: 100%;
		width: 50%;
	}

	.swiperImageStack .navigation svg g {
		fill: #5f5f5f;
		stroke: #ffffff;
	}

	.swiperImageStack .navigation svg path {
		stroke-width: 30px;
	}

	.swiperImageStack .navigateRight {
		right: 0px;
		text-align: right;
	}

	.swiperImageStack .navigateLeft svg {
		margin-left: 10%;
		-webkit-transform: scaleX(-1);
		transform: scaleX(-1);
	}

	.swiperImageStack .navigateRight svg {
		margin-right: 10%;
	}

	.swiperImageStack button.mfp-close {
		font-size: 2.5em;
		z-index: 210;
	}

	.swiperImageStack .slidesContainer {
		height: 100%;
		width: 86%;
		margin-left: auto;
		margin-right: auto;
		box-sizing: border-box;
		padding-top: 2%;
		padding-bottom: 2%;
	}

	.swiperImageStack .swiper-container {
		max-height: 400px;
		width: 100%;
		padding-top: 1%;
		padding-bottom: 1%;
	}

	.swiperThumbStack .swiper-container {
		width: 100%;
	}

	/* width: without width set the image inside the slide will force the width of the slide to be equal the image's own width (in IE)*/
	.swiperImageStack .swiper-slide {
		text-align: center;
		width: 100%;
	}

	.swiperImageStack .swiper-slide img {
		vertical-align: middle;
		max-width: 100%;
		max-height: 100%;
	}

	.swiperThumbStack {
		position: relative;
		margin-top: 2%;
	}

	.inlineGallery .swiperThumbStack {
		height: 70px;
	}

	.swiperThumbStack .swiper-container {
		height: 100%;
	}

	.inlineGallery .swiperThumbStack .swiper-container {
		position: absolute;
	}

	.swiperThumbStack .swiper-wrapper,
	.swiperThumbStack .swiper-slide {
		height: 100%;
	}

	.swiperThumbStack .swiper-slide img {
		height: 100%;
		box-sizing: border-box;
		border-width: 1px;
		border-style: solid;
		border-color: transparent;
		padding: 1px;
	}

	.swiperThumbStack .swiper-slide.activeThumb img {
		border-color: #aaaaaa;
	}

	.popupGallery .swiperImageStack {
		height: 80%;
	}

	.popupGallery .swiperThumbStack {
		height: 14%;
		padding-left: 1%;
		padding-right: 1%;
	}

	.popupGallery.white-popup {
		padding: 0;
	}


/* jquery-ui 1.11.4 slider */

	.ui-widget-content {
		border: 1px solid #aaa;
		background: #fff url("//ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x;
		color: #222;
	}

	.ui-widget-content a {
		color: #222;
	}

	.ui-widget-content .ui-state-default {
		border: 1px solid #d3d3d3;
		background: #e6e6e6 url("//ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x;
		font-weight: normal;
		color: #555;
	}

	.ui-widget-content .ui-state-hover,
	.ui-widget-content .ui-state-focus {
		border: 1px solid #999;
	}

	.ui-widget-content .ui-state-active {
		border: 1px solid #aaa;
	}

	.ui-widget-content .ui-state-highlight {
		border: 1px solid #fcefa1;
	}

	.ui-widget-content .ui-state-error {
		border: 1px solid #cd0a0a;
	}

	.ui-corner-all {
		border-top-left-radius: 4px;
		border-top-right-radius: 4px;
		border-bottom-left-radius: 4px;
		border-bottom-right-radius: 4px;
	}

	.ui-slider {
		position: relative;
		text-align: left;
	}

	.ui-slider .ui-slider-handle {
		position: absolute;
		z-index: 2;
		width: 1.2em;
		height: 1.2em;
		cursor: default;
		-ms-touch-action: none;
		touch-action: none;
	}

	.ui-slider .ui-slider-range {
		position: absolute;
		z-index: 1;
		font-size: .7em;
		display: block;
		border: 0;
		background-position: 0 0;
	}

	.ui-slider.ui-state-disabled .ui-slider-handle,
	.ui-slider.ui-state-disabled .ui-slider-range {
		filter: inherit;
	}

	.ui-slider-horizontal {
		height: .8em;
	}

	.ui-slider-horizontal .ui-slider-handle {
		top: -.3em;
		margin-left: -.6em;
	}

	.ui-slider-horizontal .ui-slider-range {
		top: 0;
		height: 100%;
	}

	.ui-slider-horizontal .ui-slider-range-min {
		left: 0;
	}

	.ui-slider-horizontal .ui-slider-range-max {
		right: 0;
	}

	.ui-slider-vertical {
		width: .8em;
		height: 100px;
	}

	.ui-slider-vertical .ui-slider-handle {
		left:-.3em;
		margin-left:0;
		margin-bottom:-.6em;
	}

	.ui-slider-vertical .ui-slider-range {
		left:0;
		width:100%;
	}

	.ui-slider-vertical .ui-slider-range-min {
		bottom:0
	}

	.ui-slider-vertical .ui-slider-range-max {
		top:0;
	}


/* Product filtering */

	.sideElement .filterSection {
		border-bottom: 1px dotted white;
	}

	.sideElement .filterSection:last-of-type {
		border-bottom: 0px solid transparent;
	}

	.sideElement .ui-slider .ui-slider-range {
		background-image: none;
		background-color: #012885;
	}

	#productFilter .sideElementBody {
		padding: 0px;
	}

	#productFilter.loadingOverlay:before {
		z-index: 10;
	}

	#productFilter .filterTitleOpenArrow,
	#productFilter .filterTitleClosedArrow {
		float: left;
		width: 1.3em;
	}

	#productFilter .filterSectionIsOpen .filterTitleClosedArrow {
		display: none;
	}

	#productFilter .filterTitleOpenArrow {
		display: none;
	}

	#productFilter .filterSectionIsOpen .filterTitleOpenArrow {
		display: block;
	}

	#productFilter .filterContent {
		padding: 0px 10px 10px 10px;
		display: none;
	}

	#productFilter .filterSectionIsOpen .filterContent {
		display: block;
	}

	#productFilter .filterTitleSection {
		padding: 10px;
		cursor: pointer;
	}

	#productFilter .filterTitle {
		font-weight: bold;
		float: left;
	}

	#productFilter .filterRemove {
		font-size: 0.8em;
		display: none;
		float: right;
	}

	#productFilter .filterSectionIsOpen .filterRemove {
		display: inline-block;
	}

	#productFilter .filterInnerContent {
		font-size: 0.9em;
	}

	#productFilter .filterSliderContainer {
		font-size: 0.8em;
		margin-top: 0.5em;
		height: 2em;
		padding-right: 3px;
		padding-left: 3px;
	}

	#compactFilter #productFilter,
	#compactFilter #productFilter .sideElementBody {
		display: block;
		margin-bottom: 0px;
	}

	#compactFilter #productFilter .sideElementHeader {
		display: none;
	}


/* Div Classes */

	.textSizeLevel2 {
		font-size: 0.9em;		
	}

	 .loadingOverlay {
		position: relative;
	}

	.loadingOverlay:before,
	.loadingOverlay:after {
		content: '';
		position: absolute;
		z-index: 1;
	}

	.loadingOverlay:before {
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		background-color: rgba(255, 255, 255, .85);
	}

	.loadingOverlay:after {
		width: 30px;
		height: 30px;
		top: 50%;
		left: 50%;
		margin-left: -19px;
		margin-top: -19px;
		border-top: 4px solid rgba(150, 150, 150, 0.2);
		border-right: 4px solid rgba(150, 150, 150, 0.2);
		border-bottom: 4px solid rgba(150, 150, 150, 0.2);
		border-left: 4px solid #555555;
		transform: translateZ(0);
		animation: loadingOverlaySpin 0.9s infinite linear;
		border-radius: 50%;
	}

	@keyframes loadingOverlaySpin {
		0% {
			transform: rotate(0deg);
		}
		100% {
			transform: rotate(360deg);
		}
	}


	/* Magnific Popup uses zoom out cursor to close lightbox, could be confusing. Pointer is more "standard". */
	.mfp-zoom-out-cur,
	.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
		cursor: pointer;
	}

	/* When loading the mfp stylesheet after rendering skipping might occur unless the hide style is defined. */
	.mfp-hide {
		display: none !important;
	}

	.white-popup {
		position: relative;
		background: #ffffff;
		padding: 1% 2% 2% 2%;
		margin-left: auto;
		margin-right: auto;
	}

	/* Counters the top margin in the first <p> tag found in the columns. Without this wysiwyg content in the columns would be shifted down. */
	.disableTopPMargin p:first-child {
		margin-top: 0px;
	}

	/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
	.visuallyhidden {
		border: 0;
		clip: rect(0, 0, 0, 0);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}

	/* Hide in the frontend and admin browser, but show inside wysiwygs. */
	#frontEndBody .hideOnlyInFrontEnd {
		display: none;
	}

	/* Disables the yellow color used by Chromes autofill feature */
	input:-webkit-autofill {
		-webkit-box-shadow: 0 0 0px 1000px #ffffff inset;
	}

	/* Disables blue underlined text on iPhone phone number underlining */
	a[href^=tel] {
		color: inherit;
		text-decoration: none;
	}

	.clearFix {
		clear: both;
	}

	.boxOutlined {
		border-width: 1px;
		border-style: dotted;
		border-color: #012885;
		background-color: #cce1f6;
		padding: 10px;
		margin-bottom: 2%;
		color: #323232;
	}

	.boxOutlinedTitle {
		font-weight: bold;
	}

	.boxOutlinedWarning {
		border-width: 1px;
		border-style: dotted;
		border-color: #8b0000;
		background-color: #e5dada;
		padding: 10px;
		margin-bottom: 2%;
	}

	.boxOutlinedWarning {
		color: #8b0000;
	}

	.highlightedElement {
		background-color: #cce1f6;
		color: #323232;
	}

	.highlightedElementBorder {
		border-color: #012885;
		border-width: 1px;
		border-style: solid;
	}

	.borderBottom {
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #aaaaaa;
	}

	.ellipsis {
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}

	.iconButton {
		cursor: pointer;
		border-top-right-radius: 3px;
		border-top-left-radius: 3px;
		border-bottom-right-radius: 3px;
		border-bottom-left-radius: 3px;
		background-color: #ffffff;
		border-width: 1px;
		border-style: solid;
		border-color: #3a437c;
		height: 28px;
	}

	.iconButton svg {
		width: 16px;
		/* IE requires height or scaling goes wrong */
		height: 16px;
		margin: 6px;
		display: block;
	}

	.zoomButton svg g {
		fill: #012885;
	}

	.verticalAlignmentHelper {
		display: inline-block;
		height: 100%;
		vertical-align: middle;
	}

	.verticallyAligned {
		display: inline-block;
		vertical-align: middle;
	}

	.aspectRatioContainer {
		position: relative;
		width: 100%;
	}

	.aspectRatioElement {
		position: absolute;
		top: 0px;
		bottom: 0px;
		left: 0px;
		right: 0px;
		overflow: hidden;
	}

	.aspectRatioCenteredImage {
		position: absolute;
		top: 0px;
		bottom: 0px;
		left: 0px;
		right: 0px;
		margin: auto;
		max-width: 100%;
		max-height: 100%;
	}


/* Forms */

	.formRow {
		margin-bottom: 8px;
		clear: both;
		min-height: 2em;
	}

	.formRow label {
		display: block;
		float: left;
		padding-top: 2px;
	}

	.formRow.forgotPasswordDisabled {
		color: #cccccc;
	}

	.formRequiredMarker {
		float: right;
		width: 0.7em;
		text-align: right;
	}

	.formCenterElement {
		 margin-right: 0.9em;
	}

	.formInputWidth {
		width: 75%;
	}

	.altSubmitButton {
		cursor: pointer;
	}

	.removeButton circle {
		stroke: #ffffff;
		stroke-width: 260px;
		fill: #dc2c2c;
	}

	.removeButton path {
		fill: #ffffff;
	}

	.removeButton:focus {
		outline: none;
	}

	.removeButton:focus circle {
		stroke: rgb(208, 75, 40);
		fill: white;
		stroke-width: 600px;
	}

	.removeButton:focus path {
		fill: red;
	}

/* Buttons */

	button.actionButton,
	input.actionButton {
		background-color: #f8b912;
		font-weight: bold;
		color: #ffffff;
		border: 1px solid #f8b912;
		color: #323232;
	
	}

	button.largeButton,
	input.largeButton {
		padding-right: 3em;
		padding-left: 3em;
		height: 2.5em;
	}

	/* When buttons with relative width render as very small, having side padding will displace their text */
	input.setWidthButton,
	button.setWidthButton {
		padding-left: 0px;
		padding-right: 0px;
	}


/* Links */

	.highlightedElement a {
		color: #012885;
	}

	.highlightedElement a:hover {
		color: #012885;
	}

	.sideElementHeader a,
	.sideElementBody a,
	.sideElementBodyOnly a {
		color: #ffffff;
	}

	.sideElementHeader *:hover,
	.sideElementBody a:hover,
	.sideElementBodyOnly a:hover,
	.sideElementHeader *:focus,
	.sideElementBody a:focus,
	.sideElementBodyOnly a:focus {
		color: #323232;
		outline: none;
	}

	.boxOutlined a {
		color: #012885;
	}

	.boxOutlined a:hover {
		color: #012885;
	}

	.boxOutlinedWarning a {
		color: #701200;
	}

	.boxOutlinedWarning a:hover {
		color: #701200;
	}


/* Columns */

	html body .disableResponsive.columns2 > .columnElement,
	html body .productListDisableResponsive.columns2 > .columnElement,
	html body .articleListDisableResponsive.columns2 > .columnElement,
	.columns2 > .columnElement {
		float: left;
		width: 49%;
		margin-right: 2%;
		clear: none;
	}
	html body .disableResponsive.columns2 > .columnElement:nth-of-type(2n+2),
	html body .productListDisableResponsive.columns2 > .columnElement:nth-of-type(2n+2),
	html body .articleListDisableResponsive.columns2 > .columnElement:nth-of-type(2n+2),
	.columns2 > .columnElement:nth-of-type(2n+2) {
		margin-right: 0px;
	}
	html body .disableResponsive.columns2 > .columnElement:nth-of-type(2n+3),
	html body .productListDisableResponsive.columns2 > .columnElement:nth-of-type(2n+3),
	html body .articleListDisableResponsive.columns2 > .columnElement:nth-of-type(2n+3),
	.columns2 > .columnElement:nth-of-type(2n+3) {
		clear: both;
	}

	html body .disableResponsive.columns3 > .columnElement,
	html body .productListDisableResponsive.columns3 > .columnElement,
	html body .articleListDisableResponsive.columns3 > .columnElement,
	.columns3 > .columnElement {
		float: left;
		width: 32%;
		margin-right: 2%;
		clear: none;
	}
	html body .disableResponsive.columns3 > .columnElement:nth-of-type(3n+3),
	html body .productListDisableResponsive.columns3 > .columnElement:nth-of-type(3n+3),
	html body .articleListDisableResponsive.columns3 > .columnElement:nth-of-type(3n+3),
	.columns3 > .columnElement:nth-of-type(3n+3) {
		margin-right: 0px;
	}
	html body .disableResponsive.columns3 > .columnElement:nth-of-type(3n+4),
	html body .productListDisableResponsive.columns3 > .columnElement:nth-of-type(3n+4),
	html body .articleListDisableResponsive.columns3 > .columnElement:nth-of-type(3n+4),
	.columns3 > .columnElement:nth-of-type(3n+4) {
		clear: both;
	}

	html body .disableResponsive.columns4 > .columnElement,
	html body .productListDisableResponsive.columns4 > .columnElement,
	html body .articleListDisableResponsive.columns4 > .columnElement,
	.columns4 > .columnElement {
		float: left;
		width: 23.5%;
		margin-right: 2%;
		clear: none;
	}
	html body .disableResponsive.columns4 > .columnElement:nth-of-type(4n+4),
	html body .productListDisableResponsive.columns4 > .columnElement:nth-of-type(4n+4),
	html body .articleListDisableResponsive.columns4 > .columnElement:nth-of-type(4n+4),
	.columns4 > .columnElement:nth-of-type(4n+4) {
		margin-right: 0px;
	}
	html body .disableResponsive.columns4 > .columnElement:nth-of-type(4n+5),
	html body .productListDisableResponsive.columns4 > .columnElement:nth-of-type(4n+5),
	html body .articleListDisableResponsive.columns4 > .columnElement:nth-of-type(4n+5),
	.columns4 > .columnElement:nth-of-type(4n+5) {
		clear: both;
	}

	html body .disableResponsive.columns5 > .columnElement,
	html body .productListDisableResponsive.columns5 > .columnElement,
	html body .articleListDisableResponsive.columns5 > .columnElement,
	.columns5 > .columnElement {
		float: left;
		width: 18.4%;
		margin-right: 2%;
		clear: none;
	}
	html body .disableResponsive.columns5 > .columnElement:nth-of-type(5n+5),
	html body .productListDisableResponsive.columns5 > .columnElement:nth-of-type(5n+5),
	html body .articleListDisableResponsive.columns5 > .columnElement:nth-of-type(5n+5),
	.columns5 > .columnElement:nth-of-type(5n+5) {
		margin-right: 0px;
	}
	html body .disableResponsive.columns5 > .columnElement:nth-of-type(5n+6),
	html body .productListDisableResponsive.columns5 > .columnElement:nth-of-type(5n+6),
	html body .articleListDisableResponsive.columns5 > .columnElement:nth-of-type(5n+6),
	.columns5 > .columnElement:nth-of-type(5n+6) {
		clear: both;
	}

	html body .disableResponsive.columns6 > .columnElement,
	html body .productListDisableResponsive.columns6 > .columnElement,
	html body .articleListDisableResponsive.columns6 > .columnElement,
	.columns6 > .columnElement {
		float: left;
		width: 15.5%;
		margin-right: 1.4%;
		clear: none;
	}
	html body .disableResponsive.columns6 > .columnElement:nth-of-type(6n+6),
	html body .productListDisableResponsive.columns6 > .columnElement:nth-of-type(6n+6),
	html body .articleListDisableResponsive.columns6 > .columnElement:nth-of-type(6n+6),
	.columns6 > .columnElement:nth-of-type(6n+6) {
		margin-right: 0px;
	}
	html body .disableResponsive.columns6 > .columnElement:nth-of-type(6n+7),
	html body .productListDisableResponsive.columns6 > .columnElement:nth-of-type(6n+7),
	html body .articleListDisableResponsive.columns6 > .columnElement:nth-of-type(6n+7),
	.columns6 > .columnElement:nth-of-type(6n+7) {
		clear: both;
	}

	html body .disableResponsive.columns7 > .columnElement,
	html body .productListDisableResponsive.columns7 > .columnElement,
	html body .articleListDisableResponsive.columns7 > .columnElement,
	.columns7 > .columnElement {
		float: left;
		width: 13.25%;
		margin-right: 1%;
		clear: none;
	}
	html body .disableResponsive.columns7 > .columnElement:nth-of-type(7n+7),
	html body .productListDisableResponsive.columns7 > .columnElement:nth-of-type(7n+7),
	html body .articleListDisableResponsive.columns7 > .columnElement:nth-of-type(7n+7),
	.columns7 > .columnElement:nth-of-type(7n+7) {
		margin-right: 0px;
	}
	html body .disableResponsive.columns7 > .columnElement:nth-of-type(7n+8),
	html body .productListDisableResponsive.columns7 > .columnElement:nth-of-type(7n+8),
	html body .articleListDisableResponsive.columns7 > .columnElement:nth-of-type(7n+8),
	.columns7 > .columnElement:nth-of-type(7n+8) {
		clear: both;
	}


/* Media Styling */

	@media print {
		#frontEndBody #compactHeader,
		.screenOnly,
		.swiperImageStack .navigation,
		.swiperThumbStack,
		.zoomButton {
			display: none;
		}

		.swiper-wrapper,
		.swiper-slide {
			width: 100% !important;
			height: auto !important;
			transition-duration: initial !important;
			transform: initial !important;
		}

		.swiper-slide {
			margin-bottom: 3%;
		}

		.page-break {
			display: block;
			page-break-before: always;
			height: 2px;
		}

		.productListBox {
			page-break-inside: avoid;
		}

		div#centerColumn {
			left: 0px;
			width: 100%;
		}
	}

	@media screen {
		.printOnly {
			display: none;
		}
	}

	@media (max-width: 768px) {
		.largeScreenOnly {
			display: none;
		}
	}

	@media (min-width: 769px) {
		.smallScreenOnly {
			display: none;
		}
	}


/* Cathy's addons */

	.google-maps {
		position: relative;
		padding-bottom: 75%;
		height: 0;
		overflow: hidden;
	}

	.google-maps iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
	}


/* Responsive Facebook */

	.fb-comments,
	.fb-comments span,
	.fb-comments iframe[style],
	.fb-comments iframe span[style] {
		width: 100% !important;
	}


/* Responsive general */

	.pageTitle img,
	.pageBody img,
	.pageFooter img,
	.articlePageDescription img,
	.articlePageBody img,
	.productPageBody img {
		max-width: 100%;
	}

	.pageTitle table img,
	.pageBody table img,
	.pageFooter table img,
	.articlePageDescription table img,
	.articlePageBody table img,
	.productPageBody table img {
		max-width: none;
	}

	/* Typical tablets, netbooks and low resolution desktops */
	@media (max-width: 1280px) {

		/* Dimensions */

		.fullWidthHeader #header {
			width: 100%;
		}

		#centerColumn {
			left: 30%;
			width: 70%;
		}

		/* To make sure both side columns align to the left a container is necessary. Or else the second */
		/* column would align with the centerColumn when the main column is shorter than the first side column */
		#sideColumns {
			width: 28%;
			position: relative;
			float: left;
			left: -70%;
		}

		#leftColumn {
			left: 0%;
			width: 100%;
		}

		#rightColumn {
			left: 0%;
			width: 100%;
		}
	}


	/* Typical mobile landscape */ 
	@media (max-width: 768px) {

		#backgroundGradient,
		#header,
		#textBox3,
		#breadcrumb,
		#search,
		#cart,
		#productFilter,
		#sideMenu,
		#bestseller,
		#sideElementLoginForgotPasswordContainer,
		#emarketingInfoLink,
		.addthis_button_print,
		.addthis_button_favorites {
			display: none;
		}

		#frontEndBody {
			background-color: #ffffff;
		}

		.ui-datepicker {
			font-size: 0.9em;
		}

		.productListTable {
			font-size: 0.9em;
		}

		.productListBox {
			font-size: 1em;
		}

		#main,
		.headerMargin #main {
			width: 100%;
			padding-left: 0px;
			padding-right: 0px;
		}

		.sheetMargin #sheet {
			margin-top: 0px;
			margin-bottom: 0px;
		}

		.centerElement {
			margin-bottom: 4%;
		}

		.tightMargin .centerElement {
			margin-bottom: 2%;
		}

		#centerColumn {
			position: static;
			float: none;
			clear: both;
			left: 0%;
			width: 100%;
			box-sizing: border-box;
			padding-top: 2px;
			padding-right: 3%;
			padding-bottom: 10px;
			padding-left: 3%;
		}

		#sideColumns {
			width: 100%;
			left: 0px;
			float: none;
			clear: both;
			background-color: rgba(190, 190, 190, .2);
			padding-top: 8px;
			overflow: hidden;
		}

		#leftColumn {
			position: static;
			float: none;
			clear: both;
		}

		#rightColumn {
			position: relative;
			float: none;
			clear: both;
		}

		#termsAndConditions {
			margin: 2% 1%;
		}

		.fixCompactHeader #cartExtension {
			position: fixed;
		}

		.fixCompactHeader #main {
			margin-top: 68px;
		}

		.roundSide .sideElementHeader {
			border-top-right-radius: 0px;
			border-top-left-radius: 0px;
		}

		.roundSide .sideElementBody {
			border-bottom-right-radius: 0px;
			border-bottom-left-radius: 0px;
		}

		#compactHeader {
			display: block;
		}

		#news {
			padding-left: 3%;
			padding-right: 3%;
		}

		#poweredby {
			background-color: rgba(190, 190, 190, .2);
			padding-right: 3%;
		}

		.sideElement {
			margin-bottom: 1px;
		}

		.sideElementHeader {
			padding-top: 12px;
			padding-right: 16px;
			padding-bottom: 12px;
			padding-left: 16px;
			position: relative;
		}

		.sideElementBody {
			display: none;
			margin-bottom: 1%;
		}

		#textBoxCookieWarning .sideElementBody {
			display: block;
		}

		.compactSideElementTrigger {
			display: block;
			position: absolute;
			width: 100%;
			height: 100%;
			top: 0px;
			left: 0px;
		}

		button,
		input[type='reset'],
		input[type='button'],
		input[type='submit'],
		input[type='text'],
		input[type='email'],
		input[type='password'],
		.inputHeight {
			height: 30px;
		}

		.formInputWidth {
			width: 100%;
		}

		#cartExtensionProductContainer {
			width: 60%;
		}

		#cartExtensionControlsContainer {
			width: 38%;
		}

		#cartExtension {
			right: 10px;
			left: 10px;
			top: 10px;
			width: auto;
		}

		.productListCartExtension .removeButton {
			top: -7%;
		}

		/* Google's PageSpeed Insights requires more spacing on touch elements in mobile view */
		.articleListBox .moreLink,
		.articleListFAQ .moreLink {
			margin-bottom: 1em;
		}

		.productListBox .descriptionBoxHeight {
			padding-top: 20%;
		}

		/* reset all n-th element settings on columns */
		.columns3 > .columnElement:nth-of-type(1n),
		.columns4 > .columnElement:nth-of-type(1n),
		.columns5 > .columnElement:nth-of-type(1n),
		.columns6 > .columnElement:nth-of-type(1n),
		.columns7 > .columnElement:nth-of-type(1n) {
			margin-right: 0px;
			clear: none;
		}

		/* 3 columns are reduced down to two columns */
		.columns3 > .columnElement:nth-of-type(1n) {
			float: left;
			width: 49%;
			margin-right: 2%;
		}
		.columns3 > .columnElement:nth-of-type(2n+2) {
			clear: none;
			margin-right: 0px;
		}
		.columns3 > .columnElement:nth-of-type(2n+3) {
			clear: both;
		}

		/* 4 columns and up are reduced down to three columns */
		.columns4 > .columnElement:nth-of-type(1n),
		.columns5 > .columnElement:nth-of-type(1n),
		.columns6 > .columnElement:nth-of-type(1n),
		.columns7 > .columnElement:nth-of-type(1n) {
			float: left;
			width: 32%;
			margin-right: 2%;
		}
		.columns4 > .columnElement:nth-of-type(3n+3),
		.columns5 > .columnElement:nth-of-type(3n+3),
		.columns6 > .columnElement:nth-of-type(3n+3),
		.columns7 > .columnElement:nth-of-type(3n+3) {
			margin-right: 0px;
		}
		.columns4 > .columnElement:nth-of-type(3n+4),
		.columns5 > .columnElement:nth-of-type(3n+4),
		.columns6 > .columnElement:nth-of-type(3n+4),
		.columns7 > .columnElement:nth-of-type(3n+4) {
			clear: both;
		}
	}


	/* Typical mobile portrait */ 
	@media (max-width: 480px) {

		#cartExtension {
			font-size: 0.9em;
		}

		.centerElement {
			margin-bottom: 8%;
		}

		#cartExtensionProductContainer {
			width: 49%;
		}

		#cartExtensionControlsContainer {
			width: 49%;
		}

		/* reset all n-th element settings on columns */
		.columns2 > .columnElement:nth-of-type(1n),
		.columns3 > .columnElement:nth-of-type(1n),
		.columns4 > .columnElement:nth-of-type(1n),
		.columns5 > .columnElement:nth-of-type(1n),
		.columns6 > .columnElement:nth-of-type(1n),
		.columns7 > .columnElement:nth-of-type(1n) {
			margin-right: 0px;
			clear: none;
		}

		/* 2-3 columns are reduced down to one column */
		.columns2 > .columnElement:nth-of-type(1n),
		.columns3 > .columnElement:nth-of-type(1n) {
			width: 100%;
			float: none;
			clear: both;
			margin-right: 0px;
		}

		/* 4 columns and up are reduced down to two columns */
		.columns4 > .columnElement:nth-of-type(1n),
		.columns5 > .columnElement:nth-of-type(1n),
		.columns6 > .columnElement:nth-of-type(1n),
		.columns7 > .columnElement:nth-of-type(1n) {
			float: left;
			width: 49%;
			margin-right: 2%;
		}
		.columns4 > .columnElement:nth-of-type(2n+2),
		.columns5 > .columnElement:nth-of-type(2n+2),
		.columns6 > .columnElement:nth-of-type(2n+2),
		.columns7 > .columnElement:nth-of-type(2n+2) {
			margin-right: 0px;
		}
		.columns4 > .columnElement:nth-of-type(2n+3),
		.columns5 > .columnElement:nth-of-type(2n+3),
		.columns6 > .columnElement:nth-of-type(2n+3),
		.columns7 > .columnElement:nth-of-type(2n+3) {
			clear: both;
		}
	}


	/* Very small mobile */ 
	@media (max-width: 320px) {

		/* All columns are reduced down to one column */
		.columns3 > .columnElement:nth-of-type(1n),
		.columns4 > .columnElement:nth-of-type(1n),
		.columns5 > .columnElement:nth-of-type(1n),
		.columns6 > .columnElement:nth-of-type(1n),
		.columns7 > .columnElement:nth-of-type(1n) {
			width: 100%;
			float: none;
			clear: both;
			margin-right: 0px;
		}

	}
