#v-product-list-module
,#v-product-list-module *
{
	box-sizing: border-box;
}
/* body-loader */
#v-body-loader {
	position:fixed;
	display:flex;
	justify-content:center;
	align-items:center;
	top:0;
	right:0;
	bottom:0;
	left:0;
	width:100vw;
	height:100vw;
	z-index:50;
	background-color:rgba(0,0,0,0.60);
	visibility:hidden;
	opacity:0;
}
#v-body-loader i
,#v-body-loader svg
{
	font-size:100px;
	line-height:1em;
	color:rgba(255,255,255,0.60);
}
.v-show-when-mounted {
	visibility:visible !important;
}
.v-opacify-when-mounted {
	opacity:1 !important;
}
.v-very-hidden {
	display:none !important;
}
/* vue transitions */
.fade-fast-enter-active
,.fade-fast-leave-active {
  transition:opacity 250ms ease-in;
}
.fade-fast-enter
,.fade-fast-leave-to {
  opacity:0;
}
.v-product-list-filter-menu-enter-active
,.v-product-list-filter-menu-leave-active
{
  transition:all 0.5s ease;
}
/* theme */
div#v-product-list-module.v-theme-light
,div#v-product-list-module.v-theme-light a:link
,div#v-product-list-module.v-theme-light a:visited
,div#v-product-list-module.v-theme-light a:hover
{
	color:#000;
}
div#v-product-list-module.v-theme-dark
,div#v-product-list-module.v-theme-dark a:link
,div#v-product-list-module.v-theme-dark a:visited
,div#v-product-list-module.v-theme-dark a:hover
{
	color:#FFF;
}
/* v-product-list-header */
div#v-product-list-header {
	position:relative;
	box-sizing:border-box;
	margin:0 -1rem 0.5rem;
}
div#v-product-list-header > a {
	position:relative;
	box-sizing:border-box;
	display:inline-block;
	text-decoration:none;
	color:#999;
	text-transform:uppercase;
	font-size:24px;
	line-height:1em;
	padding:1.5rem 1rem;
	vertical-align: top;
}
div#v-product-list-header > a > span > span {
	display: inline-block;
	margin:0 0 0 10px;
	font-weight: 300;
	text-transform: none !important;
}
a.v-product-list-filter-toggle > i
,a.v-product-list-filter-toggle > svg
{
	position:relative;
	margin-right:-8px;
	font-size:27px;
	line-height: 27px;
	top:-5px;
	left:-2px;
	-ms-transform:rotate(90deg) scaleX(-1);
	-webkit-transform:rotate(90deg) scaleX(-1);
	transform:rotate(90deg) scaleX(-1);
	transition:all .4s ease;
}
a.v-product-list-filter-toggle.v-is-open > i
,a.v-product-list-filter-toggle.v-is-open > svg
{
	top:9px;
	-ms-transform:rotate(90deg) scaleX(1) !important;
	-webkit-transform:rotate(90deg) scaleX(1) !important;
	transform:rotate(90deg) scaleX(1) !important;
}
div#v-product-list-body {
	position:relative;
	min-height:100px;
	text-align:right;
	font-size:0;
	margin-top: 5px;
	transition:min-height .3s ease;
}
div.v-product-list-holder {
	display:inline-block;
	transition:all .5s ease;
	width:100%;
	text-align:left;
}
div#v-product-list-body label {
	-webkit-user-select:none;
	-moz-user-select:none;
	-khtml-user-select:none;
	-ms-user-select:none;
}
div#v-product-list-filter-menu {
	box-sizing:border-box;
	text-align:left;
	visibility:hidden;
}
.v-set-visible-when-mounted {
	visibility:visible !important;
}
div.v-product-list {
	position:relative;
	/*
	margin:-1rem;
	font-size:0;
	*/
}
div.v-product-list-inner {
	position:relative;
	display: flex;
	margin:-1rem;
	font-size:0;
	flex-wrap: wrap;
	align-self: stretch;
	justify-content: flex-start;
}
div.v-product-list-inner > div
,div.cross-sale-item
{
	position:relative;
	box-sizing:border-box;
	padding:1rem 1rem 1rem;
}
div.v-product-list-inner > div {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex-grow: 0;
	flex-shrink: 0;
}
@media (min-width:1250.001px) {
	div.v-filter-module-desktop-closed div.v-product-list-inner > div
	,div.v-product-list-holder.free-standing div.v-product-list-inner > div
	{
		flex-basis:20%;
	}
	div#v-product-list-filter-menu
	,a#v-product-list-filter-toggle-desktop
	{
		width:20%;
	}
	div.v-filter-module-desktop-open div.v-product-list-holder {
		width:80% !important;
	}
	.v-product-list-filter-menu-enter
	,.v-product-list-filter-menu-leave-to
	{
		left:-20% !important;
	}
	div.v-filter-module-desktop-open div.v-product-list-inner > div {
		flex-basis:25%;
	}
}
@media (min-width:1000.001px) and (max-width:1250px) {
	div.v-filter-module-desktop-closed div.v-product-list-inner > div
	,div.v-product-list-holder.free-standing div.v-product-list-inner > div
	{
		flex-basis:25%;
	}
	div#v-product-list-filter-menu
	,a#v-product-list-filter-toggle-desktop
	{
		width:25%;
	}
	div.v-filter-module-desktop-open div.v-product-list-holder {
		width:75% !important;
	}
	.v-product-list-filter-menu-enter
	,.v-product-list-filter-menu-leave-to
	{
		left:-25% !important;
	}
	div.v-filter-module-desktop-open div.v-product-list-inner > div {
		flex-basis:33.333%;
	}
}
@media (min-width:750.001px) and (max-width:1000px) {
	div.v-filter-module-desktop-closed div.v-product-list-inner > div
	,div.v-product-list-holder.free-standing div.v-product-list-inner > div
	{
		flex-basis:33.333%;
	}
	div#v-product-list-filter-menu
	,a#v-product-list-filter-toggle-desktop
	{	
		width:33.333%;
	}
	div.v-filter-module-desktop-open div.v-product-list-holder {
		width:66.666% !important;
	}
	.v-product-list-filter-menu-enter
	,.v-product-list-filter-menu-leave-to
	{
		left:-33.333% !important;
	}
	div.v-filter-module-desktop-open div.v-product-list-inner > div {
		flex-basis:50%;
	}
}
div.v-product-list-presentation-image {
	padding:0 0 20px;
}
div.v-product-list-presentation-image > img {
	width:100%;
}
div.v-product-list-presentation {
	padding:10px 0 40px;
}
div.v-product-list-text {
	padding:10px 0 0;
	text-align:center;
}
div.v-product-list-text > div {
	display:inline-block;
	text-align:left;
	max-width:900px;
}
div#v-mobile-main-category-menu {
	position: relative;
	display:flex;
	justify-content: center;
	margin:0 0 5px;
	flex-wrap: wrap;
}
div#v-filter-overlay {
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
	z-index:101;
	background-color:rgba(0,0,0,0.7);
	display:none;
	visibility:hidden;
}
@media (min-width:750.001px) {
	/*
	div#v-product-list-body {
		overflow:hidden;
	}
	*/
	div#v-product-list-filter-menu {
		position:absolute;
		left:0;
		padding-right:2rem;
	}
	.v-product-list-filter-menu-enter-to
	,.v-product-list-filter-menu-leave
	{
		left:0;
	}
	a#v-product-list-filter-toggle-mobile {
		display:none !important;
	}
	div#v-product-list-filter-menu > div:first-child {
		border-top:1px solid rgba(0,0,0,0.2);
	}
}
@media (max-width:750px) {
	div#v-product-list-filter-menu {
		padding-left:10px !important;
		padding-right:10px !important;
	}
	div.v-filter-overlay-visible {
		display:block !important;
	}
	div#v-product-list-body {
		overflow:visible;
	}
	div.v-product-list-inner > div
	{
		flex-basis:50%;
	}
	a#v-product-list-filter-toggle-desktop {
		display:none !important;
	}
	div#v-product-list-filter-menu {
		position:fixed;
		top:0;
		bottom:0;
		width:80vw;
		max-width:350px;
		z-index:102;
		left:0;
	}
	.v-product-list-filter-menu-enter-to
	,.v-product-list-filter-menu-leave
	{
		left:0;
	}
	.v-product-list-filter-menu-enter
	,.v-product-list-filter-menu-leave-to
	{
		left:-80vw !important;
	}
}
.v-product-list-filter-menu-enter
,.v-product-list-filter-menu-leave-to
{
	opacity:0;
}
/* product list image box */
div.v-product-list-inner > div > div > a
,div.cross-sale-item > div > a
{
	position:relative;
	display:block;
	width:100%;
	padding-bottom:100%;
	height:0;
	transition:transform 200ms ease-out;
	background-size:cover;
	background-position:center;
	background-repeat:no-repeat;
	text-decoration:none;
}
/* product list info box */
div.v-product-list-inner > div > div > div
,div.cross-sale-item > div > div
{
	position:relative;
	display:block;
	width:100%;
	box-sizing:border-box;
	padding:3px 0 0;
}
div.v-product-list-brand {
	position:relative;
	line-height:1.3em;
	padding:2px 0 0;
	height:1.3em;
	overflow:hidden;
	margin-bottom:1px;
}
div.v-product-list-name {
	position:relative;
	line-height:1.3em;
	padding:2px 0 0;
	height:calc(2 * 1.3em);
	overflow:hidden;
}
div.v-product-list-price {
	position:relative;
	font-size:0;
	padding:2px 0 0;
}
div.v-product-list-price > span {
	display:inline-block;
	margin-right:8px;
	line-height:1.3em;
	padding:2px 0;
}
div.v-product-list-variants {
	padding-top:6px;
	font-size:0;
}
div.v-product-list-variants > span {
	position:relative;
	font-weight:400;
	display:inline-block;
	line-height:1em;
	padding:0.3em 0.5em;
	height:1.6em;
	margin:0 5px 6px 0;
	border-radius:0.8em;
	min-width:1.6em;
	box-sizing:border-box;
	text-align:center;
	cursor:pointer;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
div.v-product-list-item-bottom {
	position: relative;
}
div.v-bounce-alert {
	position: absolute;
	box-sizing: border-box;
	bottom:-50%;
	left: -3px;
	right: -3px;
	z-index: 1;
	padding: 12px 18px;
	line-height: 1em;
	z-index: 1000;
}
div.v-bounce-alert > div {
	display:flex;
	justify-content:flex-start;
	align-items:center;
}
div.v-bounce-alert > div > div:nth-of-type(1) {
	font-size: 20px;
	line-height: 1em;
	padding-right: 10px;
}
div.v-bounce-alert > div > div:nth-of-type(2) {
	font-size: 13px;
	line-height: 1.2em;
	font-weight: 400;
}
/*
.tooltip > span {
	visibility:hidden;
	position:absolute;
	line-height:1.3em;
	text-align:center;
	padding:5px 0;
	border-radius:6px;
	z-index:1;
	opacity:0;
	transition:opacity .6s;
	bottom:150%;
	left:50%;
}
.tooltip:hover > span {
	visibility:visible;
	opacity:1;
}
.tooltip > span::after {
	content:"";
	position:absolute;
	top:100%;
	left:50%;
	margin-left:-5px;
	border-width:5px;
	border-style:solid;
	border-color:#84754e transparent transparent transparent;
}
*/
/* filter module */
div.v-filter-section-name {
	position:relative;
	display:flex;
	width:100%;
	justify-content:space-between;
	padding:10px 4px 10px 0;
	box-sizing:border-box;
	cursor:pointer;
}
a.v-filter-apply {
	display:block;
	margin:10px 0 0;
	padding:10px 10px;
	text-align:center;
	border:2px solid #666;
	color:white;
	text-transform:uppercase;
	text-decoration:none;
	transition:filter 350ms;
}
a.v-filter-apply > i
,a.v-filter-apply > svg
{
	margin-right:8px;
}
div.v-filter-section-name > i
,div.v-filter-section-name > svg
{
	position:relative;
	top:2px;
	transition:transform .4s ease;
	-ms-transform:rotate(0deg);
	-webkit-transform:rotate(0deg);
	transform:rotate(0deg);
}
div.v-filter-section.expanded div.v-filter-section-name > i
,div.v-filter-section.expanded div.v-filter-section-name > svg
{
	-ms-transform:rotate(90deg) !important;
	-webkit-transform:rotate(90deg) !important;
	transform:rotate(90deg) !important;
}
label.v-filter-option {
	display:block;
	box-sizing:border-box;
	transition:all 300ms ease;
	padding:0 0 0;
	height:0;
	overflow:hidden;
}
div.v-filter-section.expanded label.v-filter-option {
	padding:2px 0 0;
	height:30px;
}
div.v-filter-section {
	border-bottom:1px solid rgba(0,0,0,0.2);
}
/* v-element */
label.v-element {
	display:block;
	cursor:pointer;
	margin:0;
}
label.v-element > input {
	display:none !important;
}
label.v-element > span
,div#v-mobile-main-category-menu > a
{
	color:black;
	white-space:nowrap;
	border-radius:12px;
	padding:5px 8px;
	line-height:1em;
	/* disable select on double click */
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	display:inline-block;
	background-color:rgba(0,0,0,0);
	font-size:15px;
	font-weight:400;
	line-height:1em;
	text-decoration: none;
}
label.v-element > input:checked + span
,div#v-mobile-main-category-menu > a.selected
{
	background-color:rgba(0,0,0,0.8);
	color:white !important;
}
label.v-element > input:disabled + span {
	opacity:0.3 !important;
	cursor:default !important;
}
div#v-mobile-main-category-menu > a {
	border-radius:14px !important;
	border:1px solid rgba(0,0,0,0.8);
	margin:0 3px 6px;
}
/* bounce transition */
.bounce-enter-active {
  animation: bounce-in .4s;
}
.bounce-leave-active {
  animation: bounce-in .4s reverse;
}
@keyframes bounce-in {
  0% {
    transform: scale(0);
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
