@import url('https://fonts.googleapis.com/css?family=Anton|Buenard:400,700');
@import url('https://fonts.googleapis.com/css2?family=Dela+Gothic+One&family=Rubik+Mono+One&family=Russo+One&family=Seymour+One&display=swap');

@font-face {
  font-family: 'Steppe';
  src: url('../fonts/Steppe/Steppe.eot'); /* IE9 Compat Modes */
  src: url('../fonts/Steppe/Steppe.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/Steppe/Steppe.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/Steppe/Steppe.woff') format('woff'), /* Pretty Modern Browsers */
       url('../fonts/Steppe/Steppe.ttf')  format('truetype'); /* Safari, Android, iOS */
        font-style: normal;
		font-weight: normal;
		text-rendering: optimizeLegibility;

}


article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block;}audio,canvas,video{display:inline-block;}audio:not([controls]){display:none;height:0;}[hidden]{display:none;}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}body{margin:0;}a:focus{outline:thin dotted;}a:active,a:hover{outline:0;}h1{font-size:2em;margin:0.67em 0;}abbr[title]{border-bottom:1px dotted;}b,strong{font-weight:bold;}dfn{font-style:italic;}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0;}mark{background:#ff0;color:#000;}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em;}pre{white-space:pre-wrap;}q{quotes:"\201C" "\201D" "\2018" "\2019";}small{font-size:80%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sup{top:-0.5em;}sub{bottom:-0.25em;}img{border:0;}svg:not(:root){overflow:hidden;}figure{margin:0;}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em;}legend{border:0;padding:0;}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0;}button,input{line-height:normal;}button,select{text-transform:none;}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;}button[disabled],html input[disabled]{cursor:default;}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none;}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}textarea{overflow:auto;vertical-align:top;}table{border-collapse:collapse;border-spacing:0;}
*,
*::after,
*::before {
	box-sizing: border-box;
}

body {
	--color-text: #fff;
	--color-bg: #3c3e42;
	--color-link: #fff;
	--color-link-hover: #fff;
	--color-info: #fff;
/* 	font-family: 'Buenard', serif; */
	font-family: "Steppe", sans-serif;
	min-height: 100vh;
	color: #57585c;
	color: var(--color-text);
	background-color: #fff;
	background-color: var(--color-bg);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.preview-open {
	overflow: hidden;
}

/* Page Loader */
.js .loading::before {
	content: '';
	position: fixed;
	z-index: 100000;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--color-bg);
}

.js .loading::after {
	content: '';
	position: fixed;
	z-index: 100000;
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	pointer-events: none;
	border-radius: 50%;
	opacity: 0.4;
	background: var(--color-link);
	animation: loaderAnim 0.7s linear infinite alternate forwards;
}

@keyframes loaderAnim {
	to {
		opacity: 1;
		transform: scale3d(0.5,0.5,1);
	}
}

a {
	text-decoration: none;
	color: var(--color-link);
	outline: none;
}

a:hover,
a:focus {
	color: var(--color-link-hover);
	outline: none;
}

.hidden {
	position: absolute;
	overflow: hidden;
	width: 0;
	height: 0;
	pointer-events: none;
}

/* Icons */
.icon {
	display: block;
	width: 1.5em;
	height: 1.5em;
	margin: 0 auto;
	fill: currentColor;
}

main {
	position: relative;
}

.content {
	position: relative;
}


/* Section */


.page {
	padding: 3rem 0	
}

/* Header */
.codrops-header {
	position: relative;
	z-index: 100;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	align-items: center;
	padding: 1rem 2rem;
}

.codrops-header__title {
	font-size: 1em;
	font-weight: bold;
	margin: 0;
	padding: 0;
}

.info {
	margin: 0 0 0 1.25em;
	color: var(--color-info);
}

.github {
	display: block;
	margin: 0 0 0 auto;
}

/* Top Navigation Style */
.codrops-links {
	position: relative;
	display: flex;
	justify-content: center;
	margin: 0 1em 0 0;
	text-align: center;
	white-space: nowrap;
}

.codrops-icon {
	display: inline-block;
	margin: 0.15em;
	padding: 0.25em;
}

.grid {
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}

.container {
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}

.grid__item {
	display: flex;
	justify-content: center;
	margin: 0 0 10rem 0;
	cursor: pointer;
}

.grid__item .box__title-inner.green::before {
    -webkit-text-fill-color: #55b59a;
        -webkit-text-stroke: 1px #55b59a;	
}
.grid__item:hover .box__title-inner.green {
	-webkit-text-stroke: 1px #55b59a;
}



.grid__item .box__title-inner.blue::before {
    -webkit-text-fill-color: #3b6abf;
        -webkit-text-stroke: 1px #3b6abf;	
}
.grid__item:hover .box__title-inner.blue {
	-webkit-text-stroke: 1px #3b6abf;
}



.grid__item .box__title-inner.red::before {
    -webkit-text-fill-color: #d8291e;
        -webkit-text-stroke: 1px #d8291e;	
}
.grid__item:hover .box__title-inner.red {
	-webkit-text-stroke: 1px #d8291e;
}



.grid__item .box__title-inner.pink::before {
    -webkit-text-fill-color: #d68fbc;
        -webkit-text-stroke: 1px #d68fbc;	
}
.grid__item:hover .box__title-inner.pink {
	-webkit-text-stroke: 1px #d68fbc;
}




.grid__item .box__title-inner.yellow::before {
    -webkit-text-fill-color: #ecd441;
        -webkit-text-stroke: 1px #ecd441;	
}
.grid__item:hover .box__title-inner.yellow {
	-webkit-text-stroke: 1px #ecd441;
}



.grid__item .box__title-inner.natural::before {
    -webkit-text-fill-color: #dec9a7;
        -webkit-text-stroke: 1px #dec9a7;	
}
.grid__item:hover .box__title-inner.yellow {
	-webkit-text-stroke: 1px #dec9a7;
}



.grid__item .box__title-inner.black::before {
    -webkit-text-fill-color: #000;
        -webkit-text-stroke: 1px #000;	
}
.grid__item:hover .box__title-inner.black {
	-webkit-text-stroke: 1px #000;
}











.box {
	position: relative;
	margin: 2rem;
}

.box__title {
	margin: 0;
	line-height: 1;
	position: absolute;
	z-index: 100;
}

.box__title-inner {
/*
	display: block;
	position: relative;
	font-weight: normal;
	text-transform: uppercase;
	font-size: 4.15rem;
	letter-spacing: 0.15rem;
	line-height: 1.25;
	font-family: 'Anton', sans-serif;
*/
	
	display: block;
    position: relative;
    font-weight: normal;
    text-transform: uppercase;
    font-size: 2.65rem;
    letter-spacing: 5.6px;
    line-height: 1.25;
    font-family: 'Anton', sans-serif;
    transition: all 0.3s ease-in-out;
/*
    font-family: 'Dela Gothic One', cursive;
	font-family: 'Rubik Mono One', sans-serif;
	font-family: 'Russo One', sans-serif;
	font-family: 'Seymour One', sans-serif;
*/
}

.box__title-inner[data-hover], .box__deco[data-hover] {
	-webkit-text-stroke: 1px #fff;
	text-stroke: 1px #fff;
	-webkit-text-fill-color: transparent;
	text-fill-color: transparent;
	color: transparent;
}

.box__title-inner::before, .box__deco::before {
	content: attr(data-hover);
	position: absolute;
	top: 0;
	left: 0;
	height: 0;
	overflow: hidden;
	white-space: nowrap;
	-webkit-text-stroke: 0;
	text-stroke: 0;
	-webkit-text-fill-color: #fff;
	text-fill-color: #fff;
	color: #fff;
	transition: all 0.3s !important;
}

.grid__item:hover .box__title-inner::before, .grid__item:hover .box__deco::before {
	height: 100%;
	width: 100%;
}

.box__text {
	margin: 0;
	position: absolute;
	top: -6rem;
	font-weight: normal;
	text-transform: uppercase;
	letter-spacing: 0.15rem;
	font-size: 1.75rem;
	margin: 0.5rem 1rem;
	font-family: 'Anton', sans-serif;
/*
	font-family: 'Dela Gothic One', cursive;
	font-family: 'Rubik Mono One', sans-serif;
	font-family: 'Russo One', sans-serif;
	font-family: 'Seymour One', sans-serif;
*/
}

.box__text-inner {
	position: relative;
	display: block;
	border: 3px solid var(--color-text);
	padding: 0.25rem 1.25rem;
}

.box__text-inner--reverse {
	background-image: url('../img/design/noisy-white-bg.png');
/* 	background-image: url('../img/design/noisy-red-bg.png'); */
/* 	background: var(--color-text); */
	color: var(--color-bg);
}

.box__img {
	display: block;
	flex: none;
	margin: 0 auto;
	max-width: 100%;
/*
	filter: grayscale(1);
	transition: filter 0.3s;
*/
	pointer-events: none;
}

.grid__item:hover .box__img:not(.box__img--original) {
	filter: grayscale(0);
}

.box__shadow {
	position: absolute;
	width: 100%;
	height: 100%;
	top: -1rem;
	left: -1rem;
	z-index: -1;
	background: url('../img/border.png');
/* 	background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAOklEQVQoU43MSwoAMAgD0eT+h7ZYaOlHo7N+DNHL2HAGgBWcyGcKbqTghTL4oQiG6IUpOqFEC5bI4QD8PAoKd9j4XwAAAABJRU5ErkJggg==); */
}

.box__deco {
	position: absolute;
	right: -2rem;
	display: none;
	
	
	font-weight: normal;
    text-transform: uppercase;
    font-size: 2.65rem;
    letter-spacing: 5.6px;
    line-height: 1.25;
    font-family: 'Anton', sans-serif;
	
}

.box__deco.red::before {
	-webkit-text-fill-color: #f32c25 !important;
    -webkit-text-stroke: 1px #f32c25 !important;
}


.box__deco.black::before {
	-webkit-text-fill-color: #000 !important;
    -webkit-text-stroke: 1px #000 !important;
}






.box__content {
	position: absolute;
	max-width: 195px;
	font-size: 0.9rem;
	text-align: right;
	display: none;
}

.box__content strong {
	white-space: nowrap;
}

.product-info {
	font-size: 1rem;
	color: #cfa776;
} 

.overlay {
	pointer-events: none;
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	overflow: hidden;
}

.overlay--open {
	pointer-events: auto;
}

.overlay__reveal {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #000;
	position: absolute;
	z-index: 100;
	transform: translate3d(100%,0,0);
}

.overlay__item {
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 0;
	background: var(--color-bg);
	opacity: 0;
	display: flex;
	flex-direction: column;
    align-items: center;
    padding: 5rem 5vw;
    justify-content: center;
}

.overlay__item.active {
	z-index: 1
}

.overlay__item .box {
	max-width: 600px;
	max-height: 100%;
	margin: 3rem;
	margin-top: -60px
}

.overlay__item .box__title {
	bottom: 0;
}

.overlay__item .box__shadow {
	z-index: -1
}

.box__img--original {
	max-height: calc(100vh - 10rem);
	filter: none;
}

.overlay__close {
	position: absolute;
	left: -90px;
/*
	
	top: 0;
	right: 0;
*/
	background: none;
	border: 0;
/*
	margin: 1rem;
	padding: 1rem;
*/
/* 	opacity: 0; */
}

.overlay__close:focus {
	outline: none;
}

.overlay__close svg {
	fill: var(--color-text);	
}

.overlay__content {
	font-size: 1rem;
	line-height: 1.5;
	max-width: 25rem;
	margin: 3rem 0 0 10vw;
}

@media screen and (min-width: 55em) {
	.grid {
		display: grid;
		align-items: center;
		padding: 3rem 3rem 15rem 3rem;
		grid-row-gap: 2rem;
		grid-template-columns: repeat(3,calc(100% / 3));
		padding-top: 0
	}
	.grid__item {
		margin: 0;
	}
	
	.overlay__item {
		flex-direction: row;
	}
	.overlay__content {
		font-size: 2.25rem;
		margin-top: 0;
	}
	.overlay__item .box__title--bottom {
		bottom: 0;
	}
	
}
	.box {
		margin: 4rem;
	}
	.box__title {
		top: -2rem;
/* 		right: -4.5rem; */
		right: -2.6rem;
		-webkit-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
	}
	.box__title--straight {
		-webkit-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
	}
	.box__title--straight .box__title-inner::before {
		width: 0;
		height: auto;
	}
	.box__title--bottom {
/* 		bottom: -5rem; */
		bottom: -3.1rem;
		top: auto;
	}
	.box__title--left {
		left: -2rem;
		right: auto;
	}
	.box__text--topcloser {
		top: -5rem;
	}
	.box__text--bottom {
		bottom: -5rem;
		top: auto;
	}
	.box__text--bottomcloser {
		bottom: -5rem;
		top: auto;
	}
	.box__text--right {
		right: 0;
		left: auto;
	}
	.box__text-inner--rotated1 {
		transform: rotate(4deg);
	}
	.box__text-inner--rotated2 {
		transform: rotate(-3deg);
	}
	.box__text-inner--rotated3 {
		transform: rotate(-15deg);
	}
	.box__deco {
		display: block;
	}
	.box__deco--left {
		right: auto;
		left: -3rem;
	}
	.box__deco--top {
		bottom: -30px;
		top: auto;
	}



@media screen and (min-width: 80em) {
/*
	.grid {
		grid-template-columns: repeat(4,25%);
	}
*/
/*
	.grid__item:nth-child(4n-2) {
		margin-top: -8rem;
		margin-bottom: 8rem;
	}
*/
/*
	.grid__item:nth-child(4n) {
		margin-top: -5rem;
	}
*/
	.box {
		margin: 6rem 4.5rem;
	}
	.box__content {
		display: block;
	}
}

@media screen and (max-width: 55em) {
	
	.overlay__close {
		position: static;
		display: block;
		margin-bottom: 15px
	}
	
	.container {
		padding: 0 30px;
	}
	
	.content {
		flex-direction: column;
		height: auto;
		min-height: 0;
	}
	.content--fixed {
		position: relative;
		z-index: 1000;
		display: block;
		padding: 0.85em;
	}
	.codrops-header {
		flex-direction: column;
		align-items: center;
		padding-bottom: 5rem;
	}
	.codrops-header__title {
		font-weight: bold;
		padding-bottom: 0.25em;
		text-align: center;
	}
	.info {
		margin: 0;
	}
	.github {
		display: block;
		margin: 1em auto;
	}
	.codrops-links {
		margin: 0;
	}
	
	
	.grid__item {
		margin-bottom: 3rem
	}
	
}




/* CART */

.shopping-cart {
    margin-bottom: 3rem;
    /*
  width: 750px;
  height: 423px;
  margin: 80px auto;
  background: #FFFFFF;
  box-shadow: 1px 2px 3px 0px rgba(0,0,0,0.10);
  border-radius: 6px;
*/

    display: flex;
    flex-direction: column;
}

.item {
    padding: 20px 30px;
    display: flex;
    border-bottom: 1px solid #4e5156;
    align-items: center;
    background-color: #323438;
}

.item > * {
    flex: 1;
}

.item .buttons {
    flex: 0 0 50px;
}

.buttons {
    position: relative;
    margin-right: 15px;
}
.delete-btn,
.like-btn {
    display: inline-block;
    cursor: pointer;
}
.delete-btn {
    width: 18px;
    height: 17px;
    background: url("../img/design/delete-icn.svg") no-repeat center;
}

.like-btn {
    position: absolute;
    top: 9px;
    left: 15px;
    background: url("../img/design/twitter-heart.png");
    width: 60px;
    height: 60px;
    background-size: 2900%;
    background-repeat: no-repeat;
}
.is-active {
    animation-name: animate;
    animation-duration: 0.8s;
    animation-iteration-count: 1;
    animation-timing-function: steps(28);
    animation-fill-mode: forwards;
}

@keyframes animate {
    0% {
        background-position: left;
    }
    50% {
        background-position: right;
    }
    100% {
        background-position: right;
    }
}
.image {
    margin-right: 50px;
}

Let’s add some basic style to product name and description. .description {
    margin-right: 60px;
    width: 115px;
}

.description {
    min-width: 120px;
    margin-right: 60px;
}

.description span {
    display: block;
    /*
  font-size: 14px;
  color: #43484D;
  font-weight: 400;
*/
}

.description span:first-child {
    margin-bottom: 5px;
}
.description span:last-child {
    font-weight: 300;
    margin-top: 8px;
    color: #86939e;
}
.quantity {
    margin-right: 60px;
}
.quantity input {
    -webkit-appearance: none;
    border: none;
    text-align: center;
    width: 50px;
    font-size: 1.4rem;
    color: #fff;
    background-color: transparent;
}

button[class*="btn"] {
    width: 30px;
    height: 30px;
    background-color: transparent;
    /*   border-radius: 6px; */
    border: none;
    cursor: pointer;
}
.minus-btn img {
    margin-bottom: 3px;
}
.plus-btn img {
    margin-top: 2px;
}

button:focus,
input:focus {
    outline: 0;
}
.total-price {
    font-size: 2rem;
}

.image img {
    width: 200px;
} 


@media (max-width: 800px) {
    .shopping-cart {
        width: 100%;
        height: auto;
        overflow: hidden;
    }
    
    .total-amount {
		font-size: 1.4rem !important   
    }
    
    .item {
        height: auto;
        flex-wrap: wrap;
        justify-content: center;
		display: block;
		text-align: center
    }
    
    .item .buttons {
		text-align: right;
		margin-right: 0    
    }
    
    .image img {
        width: 100%;
    }
    .image,
    .quantity,
    .description {
        width: 100%;
        text-align: center;
        margin: 6px 0;
    }
    
    .quantity {
	    width: 60%;
	    float: left
    }
    
    .cart-item.item:after {
	    clear: both;
	    display: block
    }
}
