/*

TEMPLATE

xs <=600
s <=900
m >900 <=1280
l >1280

*/



/* RESET */

* {
	margin: 0;
	padding: 0;
	outline: 0;
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent;
	}

img {
	display: block;
	max-width: 100%;
	height: auto;
	}
.img--cover,
.img--contain {
	position: absolute;
	width: 100%;
	height: 100%;
	}
.img--cover {
	object-fit: cover;
	}
.img--contain {
	object-fit: contain;
	}


audio,
iframe,
video {
	display: block;
	}



/* TYPOGRAPHY */

/* font */
html,
body,
button,
input,
select,
textarea {
	-webkit-font-smoothing: antialiased;
	}

/* headings */
h1,.h1 {font-size: 2rem; line-height: 2.5rem}
h2,.h2 {font-size: 1.5rem; line-height: 2rem}
h3,.h3 {font-size: 1.25rem; line-height: 1.75rem}
h4,.h4 {font-size: 1rem; line-height: 1.5rem}

/* paragraphs */
p+* {margin-top: 1.5rem}
*+p {margin-top: 1rem}
p+p {margin-top: 1.5rem}
h1+h2 {margin-top: 1.5rem}
h2+h3 {margin-top: .5rem}

/* lists */
ul,ol {
	margin: 2rem 0;
	padding-left: 3rem;
	}
ul:first-child {margin-top: 0}
ul:last-child {margin-bottom: 0}



/* text */
.fs--1 {font-size: 1rem; line-height: 1.5rem}
.fs--2 {font-size: 2rem; line-height: 2.5rem}
.fs--3 {font-size: 3rem; line-height: 3.5rem}

.text--xs {font-size: .75rem; line-height: 1rem}
.text--s {font-size: .875rem; line-height: 1.25rem}
.text--m {font-size: 1.5rem; line-height: 2rem}
.text--l {font-size: 2rem; line-height: 2.5rem}

.text--upper {text-transform: uppercase}
.text--lower {text-transform: lowercase}

.td--none {text-decoration: none}
.td--underline {text-decoration: underline}

/* weight, style */
b,
strong,
.bold {font-weight: 700}
.medium {font-weight: 500}
.normal {font-weight: 400}
.italic {font-style: italic}

/* text align */
.ta--c {text-align: center}
.ta--l {text-align: left}
.ta--r {text-align: right}

.nowrap {white-space: nowrap}

/* links */
a,
.link {
	text-decoration: none;
	font-weight: bold;
	}

h1 a,
h2 a,
h3 a,
h4 a {
	color: inherit;
	text-decoration: none;
	}



/* LAYOUT */

.wrapper {
	/*overflow: hidden;*/
	}

.inner {
	max-width: 1600px;
	margin: auto;
	padding: 0 2rem;
	}
.inner--s {max-width: 600px}
.inner--m {max-width: 900px}
.inner--l {max-width: 1000px}
.inner--xl {max-width: 1200px}
.inner--full {max-width: none}

.inner--min {
	padding-top: 2rem;
	padding-bottom: 2rem;
	}
.inner--mid {
	padding-top: 4rem;
	padding-bottom: 4rem;
	}
.inner--max {
	padding-top: 6rem;
	padding-bottom: 6rem;
	}

.block {display: block}
.inline-block {display: inline-block}
.inline-flex {display: inline-flex}
.inline {display: inline}
.none {display: none}
.desktop,
.mobile {
	display: none;
	}

.static {position: static}
.relative {position: relative}
.absolute {position: absolute}
.fixed {position: fixed}
.sticky {position: sticky}

.center--x,
.center--y,
.center--xy {
	position: absolute;
	}
.center--x {left: 50%; transform: translateX(-50%)}
.center--y {top: 50%; transform: translateY(-50%)}
.center--xy {left: 50%; top: 50%; transform: translate(-50%, -50%)}

.scroll {
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	}



/* FLEX */

.flx {display: flex}
.aic {align-items: center}
.ais {align-items: flex-start}
.aie {align-items: flex-end}
.jcc {justify-content: center}
.jcb {justify-content: space-between}
.jca {justify-content: space-around}
.jcs {justify-content: flex-start}
.jce {justify-content: flex-end}

.fcc {
	display: flex;
	align-items: center;
	justify-content: center;
	}
.fcb {
	display: flex;
	align-items: center;
	justify-content: space-between;
	}

.fdr {flex-direction: row}
.fdc {flex-direction: column}
.fdrr {flex-direction: row-reverse}
.fdcr {flex-direction: column-reverse}

.flx--wrap {flex-wrap: wrap}

/* flex children */
.fg--0 {flex-grow: 0}
.fg--1 {flex-grow: 1}
.f2--0 {flex-shrink: 0}
.fs--1 {flex-shrink: 1}



/* GRID */

.grd {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	}
.gg--1 {grid-gap: 1rem}
.gg--2 {grid-gap: 2rem}
.gg--3 {grid-gap: 3rem}

.grd--2 {grid-template-columns: repeat(2, 1fr)}
.grd--3 {grid-template-columns: repeat(3, 1fr)}
.grd--4 {grid-template-columns: repeat(4, 1fr)}
.grd--5 {grid-template-columns: repeat(5, 1fr)}
.grd--6 {grid-template-columns: repeat(6, 1fr)}

.gc--1 {grid-column: span 1}
.gc--2 {grid-column: span 2}
.gc--3 {grid-column: span 3}
.gc--4 {grid-column: span 4}
.gc--5 {grid-column: span 5}
.gc--6 {grid-column: span 6}
.gc--7 {grid-column: span 7}
.gc--8 {grid-column: span 8}
.gc--9 {grid-column: span 9}
.gc--10 {grid-column: span 10}
.gc--11 {grid-column: span 11}
.gc--12 {grid-column: span 12}




/* MARGINS */

.m--0 {margin: 0} /* reset */
.mt--0 {margin-top: 0rem}
.mt--05 {margin-top: .5rem}
.mt--1 {margin-top: 1rem}
.mt--2 {margin-top: 2rem}
.mt--3 {margin-top: 3rem}
.mt--4 {margin-top: 4rem}

.mr--1 {margin-right: 1rem}
.mr--2 {margin-right: 2rem}

.mb--0 {margin-bottom: 0rem}
.mb--1 {margin-bottom: 1rem}
.mb--2 {margin-bottom: 2rem}
.mb--3 {margin-bottom: 3rem}
.mb--4 {margin-bottom: 4rem}

.ml--1 {margin-left: 1rem}
.ml--2 {margin-left: 2rem}

.p--0 {padding: 0} /* reset */
.p--1 {padding: 1rem}
.p--2 {padding: 2rem}
.p--3 {padding: 3rem}



/* OTHER */

/* video/iframe */
.iframe,
.video {
	position: relative;
	padding-bottom: 56.25%;
	}
.iframe>iframe,
.video>video {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	border: none;
	}

/* cursor */
.cursor--default {cursor: default}
.cursor--move {cursor: move}
.cursor--not-allowed {cursor: not-allowed}
.cursor--pointer {cursor: pointer}

/* background cover */
.cover {
	background: center center / cover no-repeat;
	}



/* INPUTS */
button,
input,
textarea {
	-webkit-appearance: none;
	appearance: none;
	}
input[type="checkbox"] {
	-webkit-appearance: checkbox;
	appearance: checkbox;
	}
input[type="radio"] {
	-webkit-appearance: none;
	appearance: none;
	}



/* MEDIA */

/* desktop */
@media only screen and (min-width: 901px) {

.desktop {display: block}

}

/* large */
@media only screen and (min-width: 1281px) {

.l--hide {display: none !important}
.l--show {display: block !important}

}

/* medium */
@media only screen and (min-width: 901px) and (max-width: 1280px) {

.m--hide {display: none !important}
.m--show {display: block !important}

}

/* small */
@media only screen and (max-width: 900px) {

.s--hide {display: none !important}
.s--show {display: block !important}
.mobile {display: block}

html,
body,
button,
input,
textarea {
	font-size: 14px;
	line-height: 22px;
	}

.inner {padding: 0 1.25rem}
.inner--min {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	}
.inner--mid {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
	}
.inner--max {
	padding-top: 4rem;
	padding-bottom: 4rem;
	}

}

/* x-small */
@media only screen and (max-width: 600px) {

.xs--hide {display: none !important}
.xs--show {display: block !important}

}



/* COLORS */

.text--black {color: #000}
.text--white {color: #fff}

.bg--black {background-color: #000}
.bg--white {background-color: #fff}


@keyframes fadein {
	from {opacity: 0}
	to {opacity: 1}
	}







/* header */
.header {
	position: sticky;
	z-index: 100;
	top: 0;
	}

.header--scrolled {
	box-shadow: 0 0 1rem rgba(0,0,0,.2);
	transition: box-shadow .3s;
	}

.menu,
.menu ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: flex;
	}


.logo {
	/*width: 180px;*/
	height: 35px;
	}

.header__top {
	position: relative;
	z-index: 10;
	box-shadow: 0 0 .5rem rgba(0,0,0,.1);
	}

.header__top .inner {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	}

/*.header-term {
	position: relative;
	}

.header-term--hover::after {
	content: '';
	position: absolute;
	width: 20px;
	height: 20px;
	bottom: -29px;
	left: 50%;
	background: #fff;
	transform: translate(-50%) rotate(45deg);
	box-shadow: 1px 1px 2px rgba(0,0,0,.05);
	}*/

/* header menu */
.header__menu {
	position: relative;
	top: .5rem;
	display: flex;
	}
.header__menu>li,
.header__menu>li>a {
	padding-bottom: .5rem;
	}
.header__menu>li+li {
	margin-left: 2rem;
	}

/* header submenu */
.header__menu>li>.sub-menu {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translate(-50%);
	
	min-width: 500px;
	max-width: 1280px;
	padding: 1.5rem;
	
	display: none;
	background: #fff;
	box-shadow: 0 .75rem 1rem #00000020;
	border-top: 8px solid black;
	}

/* hover */
.header__menu>li:hover>a {
	position: relative;
	}
.header__menu>li.menu-item-has-children:hover>a::after {
	content: '';
	position: absolute;
	z-index: 10;
	width: 10px;
	height: 10px;
	background: #fff;
	top: calc(100% - 4px);
	left: calc(50% - 5px);
	transform: rotate(45deg);
	}
.header__menu>li:hover>.sub-menu {
	display: flex;
	}

/* sub menu items */
.header__menu>li>.sub-menu>li {
	margin: 1.5rem;
	}
.header__menu .sub-menu .sub-menu {
	flex-direction: column;
	}
.header__menu>li>.sub-menu>li>a {
	/*font-size: .875rem;
	text-transform: uppercase;*/
	}
.header__menu .sub-menu .sub-menu a {
	font-weight: normal;
	}



.header__btns {
	display: flex;
	align-items: center;
	margin-left: auto;
	}
.header__btn {
	position: relative;
	width: 24px;
	height: 24px;
	background: center center / 100% no-repeat;
	}
.header__btn+.header__btn {
	margin-left: 1.5rem;
	}

.header__btn--filters {background-image: url(../img/sliders.svg)}
.header__btn--search {background-image: url(../img/search.svg)}
.header__btn--cart {background-image: url(../img/shopping-cart.svg)}




.header__btm .inner {
	padding-top: .5rem;
	padding-bottom: .5rem;
	}

.shipping-counter {
	background: right center / 2rem no-repeat;
	background-image: url(../img/truck.svg);
	padding-right: 3rem;
	}


.header-btn {
	display: block;
	width: 2rem;
	height: 2rem;
	flex-shrink: 0;
	background: center center / 1.5rem no-repeat;
	}

.header-btn+.header-btn {
	margin-left: 1rem;
	}

.header-btn--search {
	background-image: url(../img/search--white.svg);
	}
.header-btn--cart {
	background-image: url(../img/shopping-cart--white.svg);
	}

.cart-btn {
	position: relative;
	background: url(../img/shopping-cart--white.svg) right 1rem center / 1rem no-repeat;
	height: 36px;
	padding: 0 1rem;
	padding-right: 2.5rem;
	border-radius: 2rem;
	font-size: .875rem;
	line-height: 1rem;
	cursor: pointer;
	
	display: flex;
	align-items: center;
	}

.cart-btn__qty {
	position: absolute;
	width: 24px;
	height: 24px;
	right: -14px;
	top: -10px;
	border: 2px solid #fff;
	border-radius: 50%;
	
	font-size: .75rem;
	line-height: .75rem;
	font-weight: bold;
	
	color: #fff;
	
	display: none;
	align-items: center;
	justify-content: center;
	}





/* header expand */
/*.header__mid {
	background: #fff;
	}

.header__mid__menu {
	position: relative;
	z-index: 5;
	background: #fff;
	padding: .5rem 0;
	}
.header__mid__menu nav div+div {
	margin-left: 2rem;
	}
.header__mid a {
	font-weight: normal;
	}

.header__mid__expand {
	position: absolute;
	z-index: 5;
	padding: 2rem 0;
	background: #fff;
	box-shadow: 0 0 1rem rgba(0,0,0,.1);
	display: none;
	}

.header__mid:hover .header__mid__expand {
	display: block;
	}

.header__mid__expand__group+.header__mid__expand__group {
	margin-left: 4rem;
	}

.header__mid__expand__group--has-title>div:first-child a {
	text-transform: uppercase;
	white-space: nowrap;
	}

.groups a+a {
	margin-left: 2rem;
	}

.group {
	display: flex;
	justify-content: center;
	}*/





/* cart */
/*.header__cart-message {
	position: absolute;
	right: 2rem;
	top: calc(100% - .5rem);
	background: #fff;
	padding: 1rem;
	border-radius: .5rem;
	box-shadow: 0 .25rem .5rem rgba(0,0,0,.2);
	display: none;
	animation: fadein .6s;
	}
.header__cart-message::after {
	content: '';
	position: absolute;
	width: .5rem;
	height: .5rem;
	right: .75rem;
	top: -.25rem;
	background: #fff;
	transform: rotate(45deg);
	}*/

.header__cart {
	position: absolute;
	z-index: 50;
	right: 2rem;
	top: calc(100% - .5rem);
	background: #fff;
	box-shadow: 0 .5rem 1rem rgba(0,0,0,.2);
	padding: 1rem;
	max-width: 400px;
	max-height: calc(100vh - 68px);
	border-radius: .5rem;
	overflow: auto;
	display: none;
	}

.header__cart.loading::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: rgba(255,255,255,.6);
	cursor: progress;
	}

.header__cart__row {
	display: flex;
	align-items: flex-start;
	}

.header__cart__row+.header__cart__row {
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid #eee;
	}

.header__cart .remove {
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: url(../img/x.svg) center center / 100% no-repeat;
	cursor: pointer;
	}

.header__cart__row__img {
	flex: 0 0 60px;
	margin-right: 1rem;
	border-radius: .5rem;
	overflow: hidden;
	}

.header__cart__row__contents {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	}

.header__cart__row__contents>div+div {
	margin-top: .5rem;
	}

.header__cart__row .title {
	text-transform: uppercase;
	font-weight: bold;
	font-size: .875rem;
	line-height: 1.25rem;
	}

.header__cart__row .price {
	/*font-size: 1.25rem;
	line-height: 1.75rem;*/
	font-weight: bold;
	}

/*.header__cart__row */
.qty {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	width: 125px;
	padding: 4px;
	border-radius: 24px;
	background: #fff;
	border: 2px solid;
	font-size: .875rem;
	line-height: 1em;
	font-weight: bold;
	}

.qty.disabled::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	cursor: wait;
	}

.qty__btn {
	color: #fff;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: center center / 20px no-repeat;
	cursor: pointer;
	user-select: none;
	}
.qty__btn--dec {
	background-image: url(../img/minus--white.svg);
	}
.qty__btn--inc {
	background-image: url(../img/plus--white.svg);
	}
.qty__btn.disabled {
	cursor: not-allowed;
	}


/*.qty__int {
	margin: 0 1rem;
	}*/

.single-product .qty__btn {
	width: 32px;
	height: 32px;
	}
.single-product .qty__int {
	/*margin: 0 2rem;*/
	font-size: 1.25rem;
	line-height: 1.25rem;
	}

.header__cart__total {
	border-top: 1px solid;
	margin-top: 1rem;
	padding-top: 1rem;
	}








/* search */
.header__search {
	position: absolute;
	z-index: 50;
	right: 2rem;
	top: calc(100% - .5rem);
	background: #fff;
	box-shadow: 0 .5rem 1rem rgba(0,0,0,.2);
	width: 400px;
	border-radius: .5rem;

	display: none;
	flex-direction: column;
	max-height: calc(100vh - 60px - .5rem);
	}

.header__search__field {
	padding: .5rem;
	}

.header__search__field input[type="text"] {
	width: 100%;
	background: #f7f7f7;
	border: none;
	border-radius: .25rem;
	}


.header__search__result {
	position: relative;
	padding: 1rem;
	flex-grow: 1;
	border-top: 1px solid #eee;
	overflow: auto;
	display: none;
	}

.search-row {
	display: flex;
	}
.search-row+.search-row {
	margin-top: 1rem;
	}

.search-row__img {
	width: 80px;
	}

.search-row__text {
	padding-left: 1rem;
	}
.search-row__text__title {

	}




/* buttons */
.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	text-decoration: none;
	font-size: .875rem;
	line-height: 1rem;
	font-weight: bold;
	border: none;
	border-radius: 2rem;
	padding: 0 1.5rem;
	height: 40px;
	min-width: 125px;
	white-space: nowrap;
	cursor: pointer;
	}

.btn:disabled {
	cursor: not-allowed;
	opacity: .5;
	}

.btn--big {
	height: 60px;
	font-size: 1.25rem;
	line-height: 1.75rem;
	font-weight: bold;
	}
.btn--thin {
	height: 32px;
	}

.btn--filters {
	background-image: url(../img/sliders--white.svg);
	background-size: 20px;
	background-position: right 1rem center;
	padding-right: calc(2rem + 20px);
	background-repeat: no-repeat;
	}



.btn:disabled {
	opacity: .25;
	cursor: not-allowed;
	}

select {
	display: inline-flex;
	align-items: center;
	padding: 0 1rem;
	padding-right: calc(2rem + 20px);
	height: 50px;
	background: url(../img/chevron-down--white.svg) center right 1rem / 20px no-repeat;
	color: #fff;
	border: 0;
	-webkit-appearance: none;
	appearance: none;
	}

input[type="text"],
input[type="email"],
input[type="url"],
textarea {
	border: 1px solid #eee;
	border-radius: 4px;
	padding: .5rem;
	}

input[type="radio"] {
	width: 12px;
	height: 12px;
	border: 1px solid #000;
	background: transparent;
	border-radius: 50%;
	}
input[type="radio"]:checked {
	background: #000;
	border: 3px solid #888;
	}



/* hero */
.hero {
	position: relative;
	color: #fff;
	padding: 2rem;
	min-height: 350px;
	/*border-radius: .5rem;*/
	overflow: hidden;
	}

.hero--thin {
	min-height: 230px;
	}

.hero__inner {
	position: relative;
	max-width: 700px;
	text-shadow: 0 0 2rem rgba(0,0,0,.4);
	}

.hero__title {
	font-size: 3.5rem;
	line-height: 5rem;
	}

.inner .hero {
	border-radius: .5rem;
	}
.inner .hero__inner {
	max-width: 600px;
	}
.inner .hero__title {
	font-size: 3rem;
	line-height: 4rem;
	}


.heading {
	/*text-align: center;*/
	font-size: 1.5rem;
	line-height: 2rem;
	margin-bottom: 1rem;
	}
/*.heading>span {
	display: inline-block;
	border-bottom: 2px solid;
	padding-bottom: .5rem;
	}*/




/* banner */
.banner {
	border-radius: .5rem;
	/*display: flex;
	overflow: hidden;*/
	
	padding: 4rem;
	color: #fff;
	text-align: center;
	}
.banner>div {
	flex: 0 0 50%;
	}

.banner__left {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: 4rem;
	}

.banner__text {
	font-size: 2rem;
	line-height: 2.5rem;
	max-width: 600px;
	margin: auto;
	}




hr {
	height: 1px;
	background: #eee;
	border: none;
	margin: 2rem 0;
	}



/* loading */
.ajax {
	position: relative;
	}

.loading::after {
	content: '';
	position: absolute;
	z-index: 5;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: rgba(255,255,255,.6);
	cursor: progress;
	}

.nothing {
	padding: 1rem;
	padding-left: calc(2rem + 22px);
	
	font-size: .875rem;
	line-height: 1rem;
	font-weight: bold;
	
	background: #f7f7f7 left 1rem center / 20px no-repeat;
	margin-top: 1.375rem;
	}


/* shop */
.shop {
	display: flex;
	}
.shop__left {
	flex: 0 0 20%;
	background: #fff;
	}
.shop__right {
	flex: 0 0 80%;
	padding-left: 3rem;
	}

.shop__left>div {
	position: sticky;
	top: calc(114px + 2rem);
	}

.shop__left__title {
	margin-bottom: .5rem;
	padding-bottom: .5rem;
	border-bottom: 1px solid;
	text-transform: uppercase;
	}
*+.shop__left__title {
	margin-top: 2rem;
	}


/* loaded */
.loaded {
	text-align: center;
	width: 300px;
	margin: auto;
	margin-top: 4rem;
	}

.loaded__bar {
	position: relative;
	height: 6px;
	background: #eee;
	border-radius: .25rem;
	margin: .75rem 0;
	}
.loaded__bar__fill {
	position: absolute;
	height: 100%;
	background: #1d1d1d;
	border-radius: .25rem;
	transition: width .6s;
	}

.loaded__btn .btn {
	width: 100%;
	}




/* filters */
.header__filters {
	position: absolute;
	z-index: 50;
	right: 2rem;
	top: calc(100% - .5rem);
	background: #fff;
	box-shadow: 0 .5rem 1rem rgba(0,0,0,.2);
	width: 400px;
	max-height: calc(100vh - 100%);
	padding: 1rem;
	border-radius: .25rem;
	overflow: auto;
	
	display: none;
	}

.filters {
	position: relative;
	}

.filters select {
	background-color: #fff;
	background-image: url(../img/chevron-down.svg);
	border: 1px solid;
	border-radius: 2rem;
	}

.filter-terms {
	list-style-type: none;
	margin: 0;
	padding: 0;
	}
li>.filter-terms,
.filter-terms li+li {
	margin-top: .5rem;
	}
.filter-terms .filter-terms {
	padding-left: 1rem;
	}

li>.filter-terms {
	border-left: 1px solid;
	}



/* shop checkbox */
.checkbox {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: .875rem;
	line-height: 1rem;
	}
.checkbox>input,
.checkbox>input+span {
	width: 20px;
	height: 20px;
	}
.checkbox>input {
	position: absolute;
	right: 0;
	top: 0;
	opacity: 0;
	}
.checkbox>input+span {
	background: rgba(0,0,0,.1) center center / 16px no-repeat;
	}
.checkbox>input:checked+span {
	background-image: url(../img/check--white.svg);
	}


/* shop slider */
.slider {
	position: relative;
	height: 24px;
	}
.slider__rail,
.slider__fill {
	position: absolute;
	background: rgba(0,0,0,.1);
	width: 100%;
	height: 6px;
	top: 9px;
	border-radius: 10px;
	}
.slider__fill {
	width: 0;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	}
.slider__ball {
	position: absolute;
	left: 0;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	}



/* shop products */
.products {
	position: relative;
	display: grid;
	grid-gap: 1.5rem;
	grid-row-gap: 2rem;
	}

.products--2 {
	grid-template-columns: repeat(2, 1fr);
	}
.products--3 {
	grid-template-columns: repeat(3, 1fr);
	}
.products--4 {
	grid-template-columns: repeat(4, 1fr);
	}
.products--5 {
	grid-template-columns: repeat(5, 1fr);
	}



.product {
	/*border: 1px solid #eee;*/
	background: #fff;
	box-shadow: 0 0 1px rgba(0,0,0,.4);
	border-radius: .5rem;
	padding: .75rem;
	min-width: 0;
	
	display: flex;
	flex-direction: column;
	}

.product__sale,
.product__new,
.product__upcoming {
	position: absolute;
	z-index: 1;
	width: 70px;
	height: 70px;
	right: .5rem;
	top: .5rem;
	background: center center / cover no-repeat;
	color: #fff;
	border-radius: 50%;
	
	font-size: 1.25rem;
	line-height: 1em;
	text-align: center;
	
	display: flex;
	align-items: center;
	justify-content: center;
	}

.product__new,
.product__upcoming {
	right: auto;
	left: .5rem;
	font-size: 1rem;
	}

.product__sale--small {
	font-size: 1rem;
	}

.product__img {
	display: block;
	position: relative;
	padding-bottom: 100%;
	border-radius: .25rem;
	overflow: hidden;
	}

.product__img__text {
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: rgba(0,0,0,.6);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 1rem;
	opacity: 0;
	transition: opacity .6s .2s;
	}

/* show only on hover */
@media (hover: hover) and (pointer: fine) {
.product__img__text:hover {
	opacity: 1;
	}
}

.product__meta {
	margin-top: 1rem;
	
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	}
.product__meta>:last-child {
	margin-top: auto;
	}
.product__meta>:nth-last-child(2) {
	margin-bottom: 1rem;
	}


.product__description {
	color: #888;
	}

.product h1 {
	font-size: 1rem;
	line-height: 1.25rem;
	/*white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;*/
	margin-right: 1rem;
	letter-spacing: 1px;
	}



.instock,
.outofstock {
	display: block;
	font-size: .875rem;
	line-height: 1rem;
	background: left center / 16px no-repeat;
	padding-left: calc(.25rem + 16px);
	margin-top: .25rem;
	}


.price ins {
	text-decoration: none;
	}
.product del+ins {
	text-decoration: none;
	}


.product__toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	}
.product__toggle::after {
	content: '';
	width: 20px;
	height: 20px;
	background: url(../img/chevron-down.svg) right center / 20px no-repeat;
	}
.product__toggle--open::after {
	transform: rotate(180deg);
	}





/* single */
.single__img {
	position: relative;
	padding-bottom: 40%;
	border-radius: .5rem;
	overflow: hidden;
	}
.single__img img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	}

.single__img h1 {
	position: absolute;
	left: 0;
	bottom: 2rem;
	color: #fff;
	padding: 1rem;
	padding-left: 2rem;
	border-radius: 0 .5rem .5rem 0;
	}

.single__meta {
	border-bottom: 2px solid;
	padding-bottom: .5rem;
	margin-top: 1rem;
	margin-bottom: 3rem;
	}

.page {
	display: flex;
	}
.page__left {
	flex-grow: 1;
	padding: 2rem;
	}
.page__right {
	flex: 0 0 360px;
	margin-left: 2rem;
	padding: 2rem;
	}



/* terms */
.terms {
	overflow: hidden;
	}
.terms__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: -.25rem;
	}
.term {
	display: inline-block;
	padding-left: calc(.5rem + 16px);
	background: left center / 16px no-repeat;
	font-size: .875rem;
	line-height: 1.25rem;
	font-weight: bold;
	margin: .25rem;
	}



.single__articles__article {
	border: 1px solid #eee;
	background: #fff;
	border-radius: .5rem;
	}

.single__articles__article+.single__articles__article {
	margin-top: 1rem;
	}

.single__articles__article {
	padding: 1rem;
	}

.single__articles__article img {
	border-radius: .5rem;
	}
.single__articles__article h1 {
	font-size: 1.25rem;
	line-height: 1.75rem;
	margin-top: 1rem;
	}
.single__articles__article p {
	margin-top: .5rem;
	}

.read {
	display: flex;
	border-radius: .5rem;
	margin: 2rem 0;
	overflow: hidden;
	}


.read__img {
	flex: 0 0 200px;
	overflow: hidden;
	}
.read__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	}
.read__text {
	flex-grow: 1;
	margin-left: 1rem;
	padding: 1rem;
	}
.read__text p {
	margin-top: .5rem;
	}

.steps {
	counter-reset: steps;
	margin-top: 1rem;
	}
.steps__step {
	counter-increment: steps;
	display: flex;
	align-items: flex-start;
	}
.steps__step+.steps__step {
	margin-top: 1rem;
	}
.steps__step::before {
	content: counter(steps)".";
	display: flex;
	align-items: center;
	justify-content: center;
	
	width: 2rem;
	height: 2rem;
	flex-shrink: 0;
	
	font-size: 1.5rem;
	line-height: 2rem;
	font-weight: bold;
	margin-right: .5rem;
	}

.ingredients {
	margin: 1rem 0;
	}

.ingredients__item+.ingredients__item {
	border-top: 1px dashed #ddd;
	padding-top: .5rem;
	margin-top: .5rem;
	}





/* single product */
.single-product {
	display: flex;
	align-items: flex-start;
	margin: auto;
	}
.single-product__main {
	margin-left: 3rem;
	flex: 0 0 55%;
	}

.single-product__main__meta {
	}

.single-product__img {
	display: grid;
	grid-gap: 1rem;
	grid-template-columns: repeat(3, 1fr);
	flex: 1;
	}
.single-product__img>:first-child {
	grid-column: span 4;
	}

.single-product__img img {
	border-radius: .5rem;
	}


.single-product__img__size {
	position: relative;
	padding-bottom: 100%;
	}
.single-product__img__size>img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	}


.single-product__img__thumb {
	border: 2px solid #eee;
	padding: 4px;
	cursor: pointer;
	}


#price {
	font-size: 1.25rem;
	line-height: 1.75rem;
	}



.taste {
	position: relative;
	max-width: 320px;
	height: 22px;
	
	border-radius: 1rem;
	margin-top: .25rem;
	overflow: hidden;
	
	display: flex;
	align-items: center;
	padding: 0 .75rem;
	}
.taste::after {
	content: '';
	position: absolute;
	height: 100%;
	left: 0;
	}
.taste--1::after {width: 20%}
.taste--2::after {width: 40%}
.taste--3::after {width: 60%}
.taste--4::after {width: 80%}
.taste--5::after {width: 100%}

.taste+.taste {
	margin-top: .5rem;
	}

.taste>span {
	position: relative;
	z-index: 1;
	font-size: .875rem;
	line-height: 1rem;
	font-weight: bold;
	}





/* articles */
.articles {
	display: grid;
	grid-gap: 2rem;
	grid-row-gap: 4rem;
	}
.articles--1 {
	grid-template-columns: repeat(1, 1fr);
	}
.articles--2 {
	grid-template-columns: repeat(2, 1fr);
	}

.article {
	display: flex;
	background: #fff;
	}
.article__img {
	flex: 0 0 35%;
	margin-right: 3rem;
	}
.article__img img {
	border-radius: .25rem;
	}
.article h1 {
	font-size: 1.5rem;
	line-height: 2rem;
	}

.lead {
	font-size: .875rem;
	line-height: 1rem;
	font-weight: bold;
	text-transform: uppercase;
	}


.time {
	display: inline-flex;
	align-items: center;
	background: url(../img/clock.svg) left center / 1.25rem no-repeat;
	padding-left: 1.75rem;
	font-size: .875rem;
	line-height: 1.25rem;
	font-weight: bold;
	}





/* footer */
.footer {
	overflow: hidden;
	}

.footer__top>div {
	}

.footer-menu {
	flex-direction: column;
	}

.footer__about {
	max-width: 400px;
	}

.footer__title {
	text-transform: uppercase;
	margin-bottom: .5rem;
	font-weight: bold;
	}

.footer__openhours {
	margin-left: 3rem;
	}

.openhours {
	list-style-type: none;
	margin: 0;
	padding: 0;
	margin-top: .25rem;
	}

.footer__nav {
	margin-left: 6rem;
	}
.footer__nav a {
	color: #fff;
	font-weight: 400;
	}

.footer__newsletter {
	margin-left: auto;
	}

.footer__newsletter input {
	display: block;
	height: 40px;
	background: #fff;
	border: none;
	padding: 0 1rem;
	width: 300px;
	}


.social {
	display: inline-block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #000 center center / 20px no-repeat;
	}

.social+.social {
	margin-left: 1rem;
	}






/* WOOCOMMERCE */


/* checkout */
.woocommerce ul.order_details {
	padding-left: 0;
	margin-top: 1rem;
	}
@media only screen and (max-width: 600px) {
.woocommerce ul.order_details {
	display: flex;
	flex-direction: column;
	}
.woocommerce ul.order_details>li {
	border: none;
	}
.woocommerce ul.order_details>li+li {
	margin-top: .5rem;
	}
.woocommerce-column+.woocommerce-column {
	margin-top: 2rem;
	}
}














/* MEDIA */

/* 900 */
@media only screen and (max-width: 900px) {

/* header */
.logo {
	height: 24px;
	}

.header__nav__center,
.header__nav__right {
	display: none;
	}

.header__btn {
	width: 20px;
	height: 20px;
	}

.header__btn+.header__btn {
	margin-left: 1.25rem;
	}

.cart-btn__qty {
	width: 22px;
	height: 22px;
	right: -10px;
	top: -13px;
	}

.toggle {
	position: relative;
	display: block;
	width: 20px;
	height: 12px;
	margin-left: 1.25rem;
	}

.toggle>span {
	position: absolute;
	height: 2px;
	background: #000;
	right: 0;
	transition: top .3s .3s, width .3s .3s, transform .3s;
	}
.toggle>span:first-child {
	width: 20px;
	top: 0;
	}
.toggle>span:last-child {
	width: 12px;
	top: 10px;
	}

.toggle--open>span {
	transition: top .3s, width 0s .3s, transform .3s .3s;
	}
.toggle--open>span:first-child {
	top: 6px;
	transform: rotate(-45deg);
	}
.toggle--open>span:last-child {
	top: 6px;
	transform: rotate(45deg);
	width: 100%;
	}

.header__btm span+span {
	display: none;
	}
.shipping-counter {
	background-size: 1.75rem;
	padding-right: 2.5rem;
	}


.mobile-cart-btn {
	position: relative;
	width: 20px;
	height: 20px;
	background: url(../img/shopping-cart.svg) center center / 100% no-repeat;
	margin-left: auto;
	margin-right: 2rem;
	}
.mobile-cart-btn .cart-btn__qty {
	right: -15px;
	top: -10px;
	}

.header__cart,
.header__search,
.header__filters {
	position: fixed;
	width: 100%;
	height: calc(100% - 50px);
	max-height: none;
	left: 0;
	right: 0;
	top: 50px;
	padding: 1.5rem;
	box-shadow: none;
	border-radius: 0;
	}

.mobile-menu {
	position: fixed;
	width: 100%;
	height: calc(100% - 50px);
	left: 0;
	top: 50px;
	background: #fff;
	padding: 1rem;
	text-transform: uppercase;
	/*font-size: 1rem;
	line-height: 2.25rem;*/
	overflow: hidden auto;
	display: none;
	}

.mobile-menu ul {
	display: block;
	list-style: none;
	padding: 0;
	margin: 0;
	}
.mobile-menu ul ul {
	padding-left: 1.5rem;
	}
.mobile-menu li {
	border-top: 1px solid #eee;
	padding: .75rem 0;
	}

.mobile-menu .sub-menu {
	display: none;
	}

.menu-item-has-children {
	position: relative;
	}
.menu-item-has-children::after {
	content: '';
	position: absolute;
	width: 20px;
	height: 20px;
	right: 0;
	top: 13px;
	background: url(../img/chevron-down.svg) center center / 100% no-repeat;
	}

.menu-item-has-children.open {
	padding-bottom: 0;
	}
.menu-item-has-children.open>.sub-menu {
	display: block;
	margin-top: .75rem;
	}
.menu-item-has-children.open::after {
	transform: rotate(180deg);
	}



/* hero */
.hero {
	min-height: 300px;
	}
.inner .hero__title {
	font-size: 2rem;
	line-height: 2.5rem;
	}


.products {
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 1rem;
	}

/* footer */
.footer__top,
.footer__newsletter,
.footer__newsletter>.flx {
	flex-direction: column;
	}
.footer__top>*,
.footer__newsletter>*,
.footer__newsletter>.flx>* {
	margin-left: 0;
	width: 100%;
	}
.footer__top>*+* {
	margin-top: 2rem;
	}
.footer__newsletter>.flx>*+* {
	margin-top: .5rem;
	}

}




/* 600 */
@media only screen and (max-width: 600px) {

.heading {
	font-size: 1.25rem;
	line-height: 1.75rem;
	}

.banner {
	flex-direction: column;
	}
.banner__text {
	font-size: 1.5rem;
	line-height: 2rem;
	}
.banner__right {
	display: none;
	}

.products {
	grid-template-columns: repeat(2, 1fr);
	}

.product__sale,
.product__new,
.product__upcoming {
	width: 60px;
	height: 60px;
	font-size: .75rem;
	}



.shop {
	display: block;
	}
.shop__left {
	margin-bottom: 2rem;
	display: none;
	}
.shop__right {
	padding: 0;
	}

.single-product {
	flex-direction: column;
	}
.single-product__img,
.single-product__main {
	width: 100%;
	}
.single-product__main {
	margin-left: 0;
	margin-top: 2rem;
	}


.footer__newsletter .flx {
	flex-direction: column;
	}
.footer__newsletter input {
	width: 100%;
	}
.footer__newsletter .btn {
	margin-left: 0;
	margin-top: 1rem;
	}

}