/* Hidden in desktop */
.l-mobile-header,
.l-mobile-nav,
.sort-select,
.filter-responsive,
.checkout-cart-row-small {
	display: none;
}

.l-menubar {
	/* overwrite inline style... */
	max-width: 1120px !important;
}

/* ==========================================================================
   Grid
   ========================================================================== */

/* Large */
@media all and (max-width: 768px) {
	.grid-item-1-4 {
		width: 50%;
	}
	.grid-item-1-4:nth-child(3) {
		clear: both;
	}
	.grid-item-1-6 {
		width: 31.33%;
	}
}

/* medium */
@media all and (max-width: 480px) {
	.grid {
		margin-left: 0;
	}

	.grid-item {
		padding-left: 0;
	}
	.grid-item-1-2,
	.grid-item-1-3,
	.grid-item-2-3,
	.grid-item-1-4 {
		width: 100%;
	}

	.grid-item-1-6 {
		width: 50%;
	}
}

/* Large */
@media all and (max-width: 768px) {
	.grid-item-1-4 {
		width: 50%;
	}
	.grid-item-1-4:nth-child(3) {
		clear: both;
	}
}

/* medium */
@media all and (max-width: 480px) {
	.grid {
		margin-left: 0;
	}

	.grid-item {
		padding-left: 0;
	}
	.grid-item-1-2,
	.grid-item-1-3,
	.grid-item-2-3,
	.grid-item-1-4 {
		width: 100%;
	}
}

/* ==========================================================================
   Layout
   ========================================================================== */

@media all and (max-width: 1190px) {
	.l-holder,
	.l-top-menu,
	.l-header,
	.l-footer,
	.l-footer-bottom {
		margin-left: 15px;
		margin-right: 15px;
		width: auto;
	}

	div.flex-caption {
		padding: 50px 20px 0px;
	}

	.l-top-menu {
		font-size: 11px;
	}

	.l-top-menu li {
		margin-left: 15px;
	}

	.l-top-menu ul {
		margin-left: -15px;
	}

	.l-header__right__top__left {
		padding-right: 0;
	}
}

/* XLarge */
@media all and (max-width: 960px) {
	.l-sidebar {
		display: none;
	}

	.btn {
		padding-left: 22px;
		padding-right: 22px;
	}

	div.flex-caption {
		padding-top: 20px;
	}

	div.flex-caption h2 {
		font-size: 18px;
		margin-bottom: 10px;
	}

	div.flex-caption a.btn {
		margin-top: 20px;
	}

	.l-top-menu li {
		margin-left: 7px;
		margin-right: 7px;
	}

	.l-top-menu ul {
		margin-left: 0px;
		text-align: center;
	}

	/* Checkout */
	.l-checkout-col-1,
	.l-checkout-col-1-2,
	.l-checkout-col-2 {
		float: none;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}
	.l-checkout-col-1-2 {
		clear: none;
	}
	.l-checkout-col-1-inner {
		padding: 5px;
		margin-bottom: 15px;

		background-color: transparent;
		border-right-style: none;
		border-bottom-style: none;
		border-left-style: none;
	}
	.l-checkout-col-2-inner {
		padding-left: 5px;
		padding-right: 5px;
	}

	.l-header__right__top__left {
		display: none;
	}

	.startpage-text-3 .grid-item {
		padding-left: 20px;
	}

	.startpage-text-3 .grid {
		margin-left: -20px;
	}

	.view-checkout .product-item__buttons .btn {
		padding-left: 11px;
		padding-right: 11px;
	}

}

/* Large */
@media all and (max-width: 768px) {
	body {
		background: #fff;
	}

	.l-inner,
	.view-home .l-inner,
	.view-checkout .l-inner {
		margin-left: 0;
		margin-right: 0;
	}

	.view-checkout .product-item__buttons .btn {
		padding-left: 15px;
		padding-right: 15px;
	}

	.view-checkout .product-item__img {
		height: 120px;
		line-height: 120px;
	}

	.view-checkout .product-item__img img {
		max-height: 120px;
	}
	
	.checkout-bonus-ladder {
		padding-left: 0px;
	}
	.checkout-info-holder {
		margin-left: 0px;
	}
	
	.checkout-bonus-ladder .bonus-ladder-row {
		display: block;
		position: fixed;
		top: 100%;
		bottom: 0;
		left: 15px;
		right: 15px;
		z-index: 3;
		
		-webkit-transition: top 1s;
 		transition: top 1s;
		
	}
	.bonus-ladder-row.is-active {
		top: 15%;
		padding-top: 0;
	}
	.bonus-ladder-close {	
		display: block;
		margin-bottom: 0;
		padding: 5px;
		
		font-size: 18px;
		text-align: right;
	}
	
	.checkout-bonus-ladder .bonus-ladder-grid-gallery {
		height: 525px;
		overflow: scroll;
	}
	
	.bonus-tabs__nav__item.is-active {
		border-bottom-color: #ccc;
	}
	
	.l-menubar-wrapper,
	.l-menubar,
	.l-top-menu-holder,
	.l-header-holder {
		display: none;
	}

	.l-menubar {
		margin-left: 0;
		margin-right: 0;
	}

	.l-sidebar-primary {
		display: none;
	}

	.filter-responsive {
		display: block;
	}

	.l-content {
		margin-top: 15px;
		margin-left: 15px;
		margin-right: 15px;
	}

	.l-holder {
		margin: 0;
		margin-top: 65px; /* Same as .l-mobile-header height */

		background: #fff;
		box-shadow: none;
		border-radius: 0;
	}

	.l-mobile-header {
		position: fixed;
		overflow: hidden;

		top: 0;
		left: 0;
		z-index: 1000;

		display: block;
		width: 100%;
		height: 65px;

		background: #000;
		box-shadow: 0 1px 2px rgba(0,0,0,0.2);
	}

	.l-header {
		display: none;
	}

	.l-mobile-nav {
		position: absolute;
		z-index: 99;
		top: 65px; /* Same as .l-mobile-header height */
		bottom: 0;
		left: 0;
		right: 0;

		display: none;
		padding-top: 20px;
		padding-bottom: 10px;
		overflow-y: auto;

		background-color: #F6F6F6;

		-moz-user-select: -moz-none;
		-webkit-user-select: none;
		-ms-user-select: none;
		-o-user-select: none;
		user-select: none;
		-webkit-overflow-scrolling: touch !important;
	}

	html.is-mobile-nav-open,
	.is-mobile-nav-open body {
		height: 100%;
		overflow: hidden;
	}
	.is-mobile-nav-open .l-holder {
		height: 100%;
		margin-top: 0;
	}
	.is-mobile-nav-open .l-mobile-nav {
		display: block;
	}

	.l-footer-col-1 {
		width: 100%;
		text-align: center;
	}

	.l-footer-col-2,
	.l-footer-col-3 {
		width: 30%;
  	    margin-left: 10%;
        margin-bottom: 15px;
        margin-right: 10%;
        padding: 0;
	}
	.l-footer-col-4 {
		margin-left: 30%;
        width: 40%;
		text-align: center;
	}
}

@media screen and (orientation:landscape) {
	.l-mobile-header {
		position: absolute;
	}
}

@media all and (max-width: 600px) {
	.l-product-col-1,
	.l-product-col-2,
	.l-product-col-3 {
		width: auto;
		padding-right: 0;
		float: none;
	}

	.startpage-text-2 h2 {
		font-size: 24px;
	}

	div.flex-caption {
		width: 40%;
		padding-left: 15px;
		padding-right: 15px;
	}

	div.flex-caption a.btn {
		margin-top: 10px;
	}

	div.flex-caption h2 {
		font-size: 16px;
		margin-bottom: 5px;
	}

	.startpage-intro {
		margin: 20px 0 30px;
	}

	.startpage-text-2 {
		margin: 20px 0;
	}

	.startpage-text-3 {
		padding-top: 20px;
		border-top: 1px solid #e2e2e2;
	}

	.startpage-text-3 .grid {
		padding: 0;
		border-style: none;
	}

	.startpage-text-3 .grid-item {
		padding-left: 0px;
	}

	.startpage-text-3 .grid {
		margin-left: 0px;
	}

	.startpage-text-3 .grid-item-1-3 {
		width: 100%;
	}
}

/* Medium */
@media all and (max-width: 480px) {
	.l-holder {
		margin-top: 50px; /* Same as .l-mobile-header height */
	}
	.l-mobile-header {
		height: 50px;
	}
	.l-mobile-nav {
		top: 50px; /* Same as .l-mobile-header height */
	}

	.l-content {
		margin-left: 10px;
		margin-right: 10px;
	}

	/* Cancel KCO's margins... */
	.l-klarna-checkout {
		margin-left: -10px;
		margin-right: -10px;
	}

	.btn {
		padding-left: 15px;
		padding-right: 15px;
	}

	div.flex-caption {
		padding: 10px;
	}

	div.flex-caption h2 {
		font-size: 12px;
		margin-bottom: 0;
	}

	.flex-description {
		display: none;
	}

	.flex-price {
		font-size: 16px;
		width: 70px;
		height: 70px;
		line-height: 70px;
	}

	.view-checkout .product-item__buttons {
		height: 27px;
	}

	.view-checkout .product-item__buttons .btn {
		display: none;
	}

	.view-checkout .product-item__buttons .btn--primary {
		display: inline-block;
		padding-left: 20px;
		padding-right: 20px;
	}

	.l-footer-payment .klarna-logo-list {
		max-width: 100%;
		margin: 0;
	}

	.l-footer-col-1 {
		padding-bottom: 30px;
	}
	
	.l-footer-col-2,
	.l-footer-col-3 {
		padding-bottom: 30px;
		margin: 0;
		width: 40%;
	}
	
	.l-footer-col-2 {
		margin-left: 10%;
		margin-right: 5%;
	}
	
	.l-footer-col-3 {
		margin-left: 5%;
	}
	.checkout-bonus-ladder .bonus-ladder-row {
		left: 0;
		right: 0;
	}
	.bonus-tabs__nav__item {
		padding: 10px 15px;
		margin-right: 3px;
	}
}

@media all and (max-width: 350px) {
	.l-checkout-col-1-inner {
		padding-left: 0;
		padding-right: 0;
	}

	div.flex-caption {
		z-index: 2;
	}

	div.flex-caption a.btn {
		display: none !important;
	}

	.flex-price {
		right: 10px;
		left: auto;
		top: auto;
		z-index: 8;
		bottom: 10px;
		font-size: 14px;
		width: 60px;
		height: 60px;
		line-height: 60px;
	}
}

/* ==========================================================================
   Modules
   ========================================================================== */

/* Large */
@media all and (max-width: 768px) {
	.site-banner,
	div#topcart-hoverarea,
	.vat-selector {
		display: none;
	}

	.mini-site-logo,
	.mini-menu,
	.mini-cart {
		position: absolute;
		top: 0;
		bottom: 0;
	}

	.mini-site-logo {
		left: 65px;
		right: 65px;

		max-width: 155px;
		max-height: 60px;
		margin: auto;

		-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
				transform: translateY(0);

		-webkit-transition: -webkit-transform .4s cubic-bezier(.694, .0482, .335, 1);
				transition: transform .4s cubic-bezier(.694, .0482, .335, 1);
	}
	.is-new-mini-cart-item .mini-site-logo {
		-webkit-transform: translateY(-65px);
			-ms-transform: translateY(-65px);
				transform: translateY(-65px);

		-webkit-transition-delay: 0.15s;
				transition-delay: 0.15s;
	}
	.no-csstransforms .mini-site-logo {
		top: 0;
	}
	.no-csstransforms .new-mini-cart-item .mini-site-logo {
		top: -100px;
	}

	.mini-cart-info {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 65px;
		right: 65px;
		margin: auto;
		text-align: center;
		color: #222;
		font-weight: 600;
		font-size: 11px;

		-webkit-transform: translateY(65px);
			-ms-transform: translateY(65px);
				transform: translateY(65px);

		-webkit-transition: -webkit-transform .4s cubic-bezier(.694, .0482, .335, 1);
				transition: transform .4s cubic-bezier(.694, .0482, .335, 1);
	}
	.is-new-mini-cart-item .mini-cart-info {
		-webkit-transform: translateY(0);
			-ms-transform: translateY(0);
				transform: translateY(0);

		-webkit-transition-delay: 0.15s;
				transition-delay: 0.15s;
	}
	.no-csstransforms .mini-cart-info {
		top: 100px;
	}
	.no-csstransforms .new-mini-cart-item .mini-cart-info {
		top: 0;
	}
	.mini-cart-info:before {
		content: '';
		display: inline-block;
		height: 100%;
		vertical-align: middle;
		margin-right: -0.25em;
	}
	.mini-cart-info-text {
		display: inline-block;
		vertical-align: middle;
		line-height: 1.1;
		color: #fff;
	}

	.mini-menu,
	.mini-cart {
		width: 65px;
		color: #ccc;
		-webkit-tap-highlight-color: rgba(0,0,0,0);
	}
	.mini-menu {
		left: 0;
		font-size: 30px;
	}
	.mini-cart {
		right: 0;
		font-size: 22px;
	}
	.is-touch.mini-menu,
	.is-touch.mini-cart {
		opacity: 0.5;

	    -webkit-transition: opacity .15s;
	   			transition: opacity .15s;
	}
	.mini-cart-inner {
		position: relative;
		display: inline-block;
	}
	.mini-cart-count {
		position: absolute;
		top: -4px;
		right: -10px;

		height: 17px;
		width: 17px;

		background: #afc412;
		border-radius: 50%;

		line-height: 17px;
		font-size: 10px;
		color: #000;
		text-align: center;
	}
	.is-new-mini-cart-item .mini-cart-count {
		-webkit-animation: cart-count-pop .25s cubic-bezier(.694, .0482, .335, 1);
				animation: cart-count-pop .25s cubic-bezier(.694, .0482, .335, 1);
	}
	.is-mobile-nav-open .mini-menu {
		font-size: 22px;
	}
	.is-mobile-nav-open .mini-menu .wgr-icon:before {
		content: "\f00d";
	}

	.sort-section {
        display: none;
    }
    .sort-select {
        display: block;
        margin-bottom: 15px;
    }
    .sort-select select {
        width: 100%;
    }

	.checkout-info {
		padding: 7px 15px 0;
	}

	.checkout-info-item {
		float: none;
		margin-right: 0;
		margin-bottom: 7px;
	}
	.checkout-info-terms {
		display: none;
	}
	.checkout-stepnumber {
		height: 22px;
		width: 22px;
		line-height: 22px;
		font-size: 11px;
	}
}

/* Medium */
@media all and (max-width: 480px) {
	.mini-site-logo {
		max-width: 135px;
		max-height: 45px;
	}

	.product-carousel {
		height: auto;
		margin-left: 50px;
		margin-right: 50px;
		margin-bottom: 15px;
		line-height: 1;
		text-align: center;
	}

	.review-col-1 {
		max-width: auto;
		margin-right: 0;
		float: none;
		margin-bottom: 10px;
	}

	.checkout-cart thead th:last-child,
	.checkout-cart-row td:last-child {
		padding-left: 10px;
		white-space: nowrap;
	}

	.checkout-cart-quantity-btn {
		/*display: none;*/
	}

	.checkout-cart-custom-text {
		display: none;
	}
	.checkout-cart-row-small {
		display: table-row;
	}
	.checkout-cart-row-small td {
		padding-top: 0;
	}

	.followup {
		text-align: center;
	}
	.followup textarea {
		font-size: 16px;
	}
	.followup .media-img {
		width: auto;
		float: none;
		margin-left: 0;
		margin-bottom: 15px;
	}
	.followup-stars {
		margin-top: 10px;
		margin-bottom: 15px;

		text-align: center;
	}
	.followup-stars > label {
		font-size: 20px;
	}
}

@media all and (max-width: 350px) {
	.checkout-cart-thumbnail {
		max-height: 25px;
		max-width: 25px;
		margin-right: 5px;
	}
	.checkout-cart-quantity-input {
		width: 25px;
		height: 25px;
		line-height: 25px;
	}
}

/** Menu modules **/

/* Large */
@media all and (max-width: 768px) {
	.site-search {
		max-width: 440px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 20px;
	}

	.mobile-module {
		margin-bottom: 30px;
	}
	.mobile-module__heading {
		margin: 0;
		padding: 8px 18px;
		font-weight: 700;
		color: #fff;
		background: #000;
		font-size: 14px;
	}

	.mobile-module__body {
		background-color: #fcfcfc;
		padding: 20px;
		border-top: 1px solid #e2e2e2;
		border-bottom: 1px solid #e2e2e2;
	}

	.mobile-listmenu {
		padding: 0;
		margin: 0;
		list-style-type: none;
	}
	.mobile-listmenu a {
		position: relative;

		display: block;
		padding: 12px 18px;
		border-bottom: 1px solid #e2e2e2;

		font-size: 13px;
		color: #222;
	}

	.mobile-listmenu .mobile-listmenu a {
		border-style: none;
		padding-top: 7px;
		padding-bottom: 7px;
	}

	.mobile-listmenu .mobile-listmenu .mobile-listmenu a {
		font-style: italic;
	}

	.mobile-listmenu .mobile-listmenu {
		border-bottom: 1px solid #e2e2e2;
	}

	.mobile-listmenu .mobile-listmenu .mobile-listmenu {
		border-top: 1px solid #e2e2e2;
	}

	.mobile-listmenu a:hover {
		text-decoration: none;
	}

	.mobile-listmenu .selected {
		font-weight: 700;
		color: #afc412;
	}

	.mobile-listmenu-0 {
		background-color: #fcfcfc;
		border-top: 1px solid #e2e2e2;
		text-transform: uppercase;
		list-style-type: none;
	}
	.mobile-listmenu-0 ul{
		padding-left: 0;
	}
	.mobile-listmenu-0 li{
		list-style-type: none;
	}
	.mobile-listmenu-0 + .mobile-listmenu-0 {
		border-top-style: none; /* Fix for double-border */
	}

	.mobile-listmenu-1 {
		background: rgba(0,0,0,.02);
	}

	.mobile-listmenu-1 .mobile-listmenu {
		/*background: rgba(0,0,0,.02);*/
		border-left: 5px solid #c9c9c9;
	}

	/* Toggle menu */
	li .mobile-listmenu {
		display: none;
	}
	.is-listmenu-opened > .mobile-listmenu {
		display: block;
	}

	/* Font icon */
	.menu-node {
		width: 40px;
		height: 100%;

		text-align: center;
		line-height: 42px;
		font-size: 22px;
	}
	.lang-changer {
		text-align: center;
	}

	.lang-changer select {
		background: #fff;
		border: 1px solid #ddd;
		color: #333;
	}
}

/* Medium */
@media all and (max-width: 480px) {
	.site-search {
		margin-left: 12px;
		margin-right: 12px;
	}
	.mobile-module__heading {
		padding-left: 12px;
		padding-right: 12px;
	}
	.mobile-module__body {
		padding: 12px;
	}
	.mobile-listmenu a {
		padding-left: 12px;
		padding-right: 12px;
	}

	h1 {
		font-size: 21px;
	}
}

/** Grid-gallery **/

@media all and (max-width: 1100px) {
	.view-home .grid-gallery > li {
		width: 31.33%;
	}
}

/* XLarge */
@media all and (max-width: 960px) {
	.grid-gallery > li {
		width: 31.33%;
	}
}

@media all and (max-width: 768px) {
	.view-checkout .grid-gallery > li {
		width: 31.33%;
	}
}
/* Medium */
@media all and (max-width: 600px) {
	.grid-gallery > li,
	.view-home .grid-gallery > li {
		width: 48%;
	}

	.view-checkout .grid-gallery > li {
		width: 31.33%;
	}
}

/* ==========================================================================
   Helpers
   ========================================================================== */

/* XLarge */
@media all and (max-width: 960px) {
	.hide-for-xlarge {
		display: none !important;
	}
}

/* Large */
@media all and (max-width: 768px) {
	.hide-for-large {
		display: none !important;
	}
}

/* Medium */
@media all and (max-width: 480px) {
	.hide-for-medium {
		display: none !important;
	}
}

/* Small */
@media all and (max-width: 320px) {
	.hide-for-small {
		display: none !important;
	}
}


/* ==========================================================================
   Custom animations
   ========================================================================== */

@-webkit-keyframes cart-count-pop {
	50% {
		-webkit-transform: scale(1.35);
				transform: scale(1.35);
	}
	100% {
		-webkit-transform: scale(1);
				transform: scale(1);
	}
}
@keyframes cart-count-pop {
	50% {
		-webkit-transform: scale(1.35);
				transform: scale(1.35);
	}
	100% {
		-webkit-transform: scale(1);
				transform: scale(1);
	}
}

.instagramwidget {
	margin-left: -10px;
}

.instagramwidget2 iframe {
    height: 320px !important;
}

.instagramwidget2 {
	width: 50%;
	margin: 0 auto;
}

/**
 * Cookie control
 */
 @media all and (max-width: 768px) {
    .cookie-control-wrapper {
        margin-bottom: 5px;
    }

    .cookie-control-controller {
        max-width: 80vw;
        padding: 6%;
    }

    .cookie-control-banner__buttons {
        grid-template-columns: repeat(1, 1fr);
        max-width: none;
    }
}
@media all and (max-width: 480px) {
    .cookie-control-wrapper {
        flex-direction: column;
    }
}