.product-shipping-info {
	color: #045946;
	font-size: 13px;
	padding: 2px 5px 2px 0px;
	margin: 2px 0px;
}

.product-container {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-content: space-between;
	align-items: flex-start;
	align-items: stretch;
	background-color: #f5f7f9
}

.message-top {
	color: #dc0303;
	font-size: 19px;
	margin-bottom: 1vw
}

.product-container .product-left {
	align-self: flex-start;
	width: 50%;
	background-color: #fff;
	align-self: stretch
}

.product-container .product-left .product-image {
	width: 100%;
	height: 52vw
}

ul.slides {
	display: block;
	position: relative;
	height: 50vw;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	list-style: none
}

.slides * {
	user-select: none;
	-ms-user-select: none;
	-moz-user-select: none;
	-khtml-user-select: none;
	-webkit-user-select: none;
	-webkit-touch-callout: none
}

ul.slides input {
	display: none
}

.slide-container {
	display: block
}

.slide-image {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	opacity: 0;
	transition: all .7s ease-in-out
}

.margin-center {
	margin: 10px auto 0;
	text-align: center
}

.slide-image img {
	width: auto;
	min-width: 100%;
	height: 100%
}

.carousel-dots {
	position: relative;
	left: 0;
	right: 0;
	z-index: 900;
	bottom: 130px;
	height: 130px;
	background: rgba(0, 0, 0, .2);
	text-align: center
}

.carousel-dots .carousel-dot img {
	display: inline-block;
	width: 100px;
	height: 100px;
	margin: 15px 10px 20px;
	border: 4px solid #ddd9cb
}

input:checked+.slide-container .slide-image {
	opacity: 1;
	transform: scale(1);
	transition: opacity 1s ease-in-out
}

input:checked+.slide-container .carousel-controls label {
	display: block
}

input#img-1:checked~.carousel-dots label#img-dot-1,
input#img-2:checked~.carousel-dots label#img-dot-2,
input#img-3:checked~.carousel-dots label#img-dot-3,
input#img-4:checked~.carousel-dots label#img-dot-4,
input#img-5:checked~.carousel-dots label#img-dot-5,
input#img-6:checked~.carousel-dots label#img-dot-6 {
	opacity: 1
}

input:checked+.slide-container .nav label {
	display: block
}

.product-left-text {
	margin: 2vw 0 0 2vw
}

.product-right {
	align-self: flex-start;
	width: 50%
}

.product-price-flex {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-content: space-between;
	align-items: flex-start
}

.product-right-container {
	margin: 1.7vw 2vw 2vw
}

.product-title h1 {
	font-size: 2vw;
	margin: 0
}

.product-title h3 {
	font-size: 1.5vw;
	margin: .5vw 0;
	align-self: center
}

.product-rating {
	align-self: center;
	margin-left: 2vw
}

.product-occasion {
	margin: 1vw 0
}

.product-comes-with {
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-content: space-between;
	align-items: flex-start;
	height: auto
}

.product-comes-with-gift {
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-content: space-between;
	align-items: flex-start;
	height: auto
}

.product-comes-with-gift div {
	width: 80%
}

.product-comes-with div {
	width: 50%
}

.product-comes-with div.product-radio {
	width: 100%
}

.container-radio-product {
	font-size: 18px !important
}

.full {
	width: 100% !important
}

.full div {
	text-align: center;
	width: auto;
	margin-right: 2vw
}

label.product-label {
	display: block
}

label.product-label-big {
	font-size: 17px;
	line-height: 19px;
	color: #333;
	display: inline
}

.product-comes-with div img {
	width: 100px;
	height: 100px;
	display: block
}

.product-occasion h4,
.product-occasion h5 {
	display: inline-block;
	font-size: 1.2em;
	margin: 1em 0
}

h4.no-margin-top {
	margin-top: 0
}

.product-occasion h5 span {
	color: #8c54aa
}

.product-occasion h5 span:nth-child(2) {
	background-color: #eeddf7;
	color: #8c54aa;
	padding: 2px 5px
}

.product-occasion p {
	margin: .7vw 0;
	padding: .5vw 0;
	height: 30px
}

.product-occasion p label {
	position: relative
}

.product-occasion p label span {
	position: absolute;
	top: 3px;
	left: 40px;
	font-size: 1.3em;
	width: 40vw;
	color: #575353;
	font-weight: 200
}

.product-occasion p label span.offer {
	position: relative;
	left: auto;
	font-size: 14px;
	top: 0;
	color: #c70505;
}

[type=checkbox]:checked+label {
	color: #8c54aa
}

.product-occasion p label span#upsell-price {
	background-color: #dedfde;
	padding: 2px 4px;
	width: 10vw;
	position: relative;
	font-size: 1em;
	left: 2vw;
	top: 0;
	float: right;
	text-align: center;
	font-weight: 200
}

.product-occasion p label span#upsell-price span {
	font-size: .7em;
	position: relative;
	left: 0;
	top: 0
}

.product-occasion small {
	margin: 10px 0
}

.custom-dropdown {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 10px 0;
	font-size: 1.2em
}

.custom-dropdown select {
	background-color: #fff;
	color: #8c54aa;
	font-size: inherit;
	padding: .5em 2.5em .5em .5em;
	border: 0;
	margin: 0;
	margin: 0;
	text-indent: .01px;
	width: 100%;
	-webkit-appearance: button
}

.custom-dropdown::after,
.custom-dropdown::before {
	content: "";
	position: absolute;
	pointer-events: none
}

.custom-dropdown::before {
	width: 1em;
	right: 0;
	top: 0;
	bottom: 0;
	border-radius: 0 3px 3px 0
}

.custom-dropdown select[disabled] {
	color: rgba(0, 0, 0, .3)
}

.custom-dropdown select[disabled]::after {
	color: rgba(0, 0, 0, .1)
}

.custom-dropdown::before {
	background-color: rgba(0, 0, 0, .15)
}

.custom-dropdown::after {
	color: rgba(0, 0, 0, .4)
}

.dpifs-clear,
.dpifs-today {
	display: none !important
}

.datepicker-in-fullscreen-controls>a {
	width: 100% !important
}

.dpifs-fake-input {
	font-size: 16px
}

.product-line {
	margin: 0 auto;
	width: 100%;
	height: 2px;
	background-color: #fff
}

.product-line-dark {
	background-color: #f2f3f5
}

.product-line-thin {
	height: 1px
}

.carousel-wrap {
	margin: 10px auto;
	padding: 0 5%;
	width: 80%;
	position: relative;
	display: none;
	opacity: 0
}

.owl-carousel .item {
	position: relative;
	z-index: 100;
	-webkit-backface-visibility: hidden
}

.owl-carousel .item input {
	width: 0;
	height: 0;
	overflow: hidden;
	margin: 0;
	padding: 0;
	float: left;
	display: inline-block;
	position: absolute;
	left: -10000px
}

.owl-nav button {
	margin-top: -40px;
	position: absolute;
	top: 50%;
	color: #cdcbcd;
	background-color: #f5f7f9;
	border: none
}

.owl-nav button img {
	width: 30px;
	height: 38px
}

.owl-nav button {
	font-size: 30px
}

.owl-nav .owl-prev {
	left: -50px
}

.owl-nav .owl-next {
	right: -50px
}

.owl-dots {
	display: none
}

.no-padding {
	padding: 0 !important;
	margin: 0 0 -10px !important
}

.product-addon-item-text {
	text-align: center;
	font-size: 13px
}

.button-qty {
	font-size: 2em;
	padding: 10px
}

[type=checkbox]:checked,
[type=checkbox]:not(:checked) {
	position: absolute;
	left: -9999px
}

[type=checkbox]:checked+label,
[type=checkbox]:not(:checked)+label {
	position: relative;
	padding-left: 1.95em;
	cursor: pointer
}

[type=checkbox]:checked+label:before,
[type=checkbox]:not(:checked)+label:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 1.7em;
	height: 1.7em;
	border: 2px solid #ccc;
	background: #fff;
	border-radius: 4px;
	box-shadow: inset 0 1px 3px rgba(0, 0, 0, .1)
}

[type=checkbox]:checked+label:after,
[type=checkbox]:not(:checked)+label:after {
	content: '\2713\0020';
	position: absolute;
	top: -.14em;
	left: .1em;
	font-size: 2.8em;
	line-height: .8;
	color: #8c54aa;
	transition: all .2s;
	font-family: 'Lucida Sans Unicode', 'Arial Unicode MS', Arial
}

input[type=checkbox]:checked+label span {
	color: #8c54aa
}

input[type=checkbox]:checked+label span span#upsell-price {
	background-color: #eeddf7
}

.upsell-description {
	width: 100%;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-content: space-between;
	align-items: flex-start;
	height: auto;
	display: none
}

.flexbox-add {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex
}

.upsell-img {
	width: 150px;
	margin: 0 10px 10px 0
}

.upsell-img img {
	width: 150px;
	height: 150px;
	margin-right: 20px
}

.upsell-text {
	font-size: 15px;
	width: 78%
}

.upsell-price {
	font-size: 17px
}

[type=checkbox]:not(:checked)+label:after {
	opacity: 0;
	transform: scale(0)
}

[type=checkbox]:checked+label:after {
	opacity: 1;
	transform: scale(1)
}

input#quantity,
input#product-price {
	width: 40px;
	padding: 5px 10px;
	text-align: center;
	font-size: 1.4em;
	color: #8c54aa
}

input#product-price {
	width: 80px;
	padding: 5px 10px;
	text-align: center;
	font-size: 1.4em;
	color: #8c54aa;
	margin-left: 10px;
}

#qty-span {
	font-size: 1.2em;
	padding: 5px 15px 7px;
	color: #8c54aa;
	border: 1px solid #8c54aa;
	border-radius: 20px
}

.grid-margins {
	margin: 16px 0
}

.grid0 {
	width: 100%
}

.grid1 {
	width: 57%
}

.grid1 input[type=text] {
	width: 100%;
	padding: 16px 20px;
	margin-top: 3px;
	display: inline-block;
	border: 1px solid #ccc;
	border-radius: 4px;
	box-sizing: border-box;
	font-size: 17px
}

.grid1 ::placeholder {
	color: #cecdcd;
	opacity: 1
}

.grid1 :-ms-input-placeholder {
	color: #cecdcd
}

.grid1 ::-ms-input-placeholder {
	color: #cecdcd
}

.grid1 label {
	font-size: 12px
}

.form-element-hint {
	font-weight: 400;
	font-size: .8875rem;
	color: #a6a6a6;
	display: block;
	padding: 2px
}

.button-product {
	background-color: #4d2c60;
	color: #fff;
	padding: 10px 20px;
	font-size: 1.5em;
	font-weight: 200;
	width: 20vw;
	border-radius: 30px;
	transition: background .55s ease-out
}

.button-disabled {
	background-color: #8a6e9a;
	color: #fff;
	cursor: not-allowed
}

.product-selection {
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-content: space-between;
	align-items: flex-start;
	height: auto
}

.product-selection-item {
	width: 48%;
	margin-bottom: 1vw
}

.product-comes-with div .button-product img {
	width: 30px;
	height: 30px;
	display: inline;
	margin-top: -5px
}

.product-added {
	background-color: #8c54aa
}

.product-fly-container {
	position: relative;
	text-align: center
}

.product-fly {
	width: 100px;
	height: 100px;
	position: absolute;
	left: 45%;
	top: 20%;
	-webkit-transform: scale(.5);
	transform: scale(.5);
	opacity: 0;
	z-index: 1000
}

.product-fly img {
	max-width: 100%;
	height: auto
}

.product-fly.added {
	-webkit-animation: fly-animation 1.5s ease-in-out;
	animation: fly-animation 1.5s ease-in-out
}

@-webkit-keyframes fly-animation {
	0% {
		opacity: .8
	}

	100% {
		-webkit-transform: scale(.2) translateX(200vw) translateY(-53vw);
		transform: scale(.2) translateX(200vw) translateY(-53vw);
		opacity: 0
	}
}

.img-float-left {
	float: left;
	margin-right: 20px;
	width: 65px;
	height: 58px
}

.obc-image {
	width: 130px;
	height: 91px
}

.mow-image {
	width: 140px;
	height: 68px;
	margin-bottom: 10px
}

.form-radio {
	position: relative;
	margin-bottom: 2.25rem;
	text-align: left
}

.form-radio-margin {
	margin-top: 2vw;
	margin-left: .6vw
}

.container-checkmark,
.container-radio {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	font-size: 22px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none
}

.container-radio input {
	position: absolute;
	opacity: 0;
	cursor: pointer
}

.radio {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #ccc;
	border-radius: 50%
}

.container-radio:hover input~.radio {
	background-color: #aaa
}

.container-radio input:checked~.radio {
	background-color: #8c54aa
}

.radio:after {
	content: "";
	position: absolute;
	display: block
}

.container-radio input:checked~.radio:after {
	display: block
}

.container-radio .radio:after {
	top: 8px;
	left: 8px;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: #fff
}

.obc-link a {
	color: #8c54aa
}

.on-time h5 {
	font-size: 1.7em;
	color: #4d2c60;
	margin: 0 0 7px
}

.on-time p {
	font-size: 1.1em;
	padding: 0;
	margin-top: 0
}

.addon-popup {
	display: none;
	padding: 2em;
	width: 400px;
	text-align: center;
	background: #fff;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%)
}

.cart-slider-wrap {
	position: fixed;
	top: 0;
	bottom: 0;
	right: 0;
	width: 50%;
	transform: translateX(100%);
	transition: .3s ease-out;
	z-index: 999
}

.cart-slider {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: #f5f5f9;
	color: #353535;
	overflow: auto;
	padding: 12em 4em
}

.cart-slider-close {
	position: absolute;
	top: 0;
	left: 0;
	padding: 2.3em .5em 0;
	color: #353535;
	font-size: 2vw;
	z-index: 1000
}

.cart-slider table tr td {
	padding: 10px
}

.cart-slider table tr td img {
	width: 100px;
	height: 100px
}

.cart-slider table tr td.img {
	width: 20%
}

.cart-slider table tr td.img-sm img {
	width: 50px;
	height: 50px;
	margin-right: 20px;
	float: left
}

.cart-slider table tr td.img-sm {
	font-size: 14px
}

.cart-slider table {
	width: 100%
}

.cart-slider table tr th {
	text-align: left;
	padding: 10px;
	font-size: 13px
}

.green {
	color: #085436;
	font-size: 13px
}

.addon-tagline,
.cart-tagline {
	color: #085436;
	font-size: 20px;
	font-weight: 200;
	margin-bottom: 2vw
}

.slider-product-details {
	font-size: 12px
}

.cart-slider-buttons {
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-content: space-between;
	align-items: flex-start;
	height: auto
}

.button-checkout,
.button-continue-shopping {
	padding: 15px 30px;
	width: 35%;
	text-align: center;
	border: 1px solid #4d2c60;
	border-radius: 30px;
	margin: 10px
}

.total {
	text-align: right;
	display: none
}

h4.total {
	margin: 0 0 20px;
	font-size: 16px
}

.cart-slider hr {
	border: 1px solid #fff;
	margin: 20px 0
}

a.button-continue-shopping {
	color: #4d2c60
}

a.button-checkout {
	background-color: #4d2c60;
	color: #fff
}

.button-checkout {
	background-color: #4d2c60
}

.addons {
	background-color: rgba(225, 228, 249, .769)
}

.addon-tagline {
	padding: 10px;
	font-size: 18px
}

.slide {
	transform: translateX(0)
}

.cover {
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, .6);
	z-index: 990;
	width: 100%;
	height: 100%;
	display: none;
	transition: .3s ease-out
}

.display-on {
	display: block
}

.product-description {
	margin-bottom: 2vw
}

.product-description h4 {
	font-size: 1.4em
}

.product-description h4 span {
	font-size: .7em;
	margin-left: 1vw
}



.product-mobile {
	display: none
}

.product-desktop {
	display: block
}

.product-desktop-table {
	display: table-cell
}

.product-mobile-sm {
	display: none
}

.product-testimonial-text h5 {
	font-size: 1.1em
}

p.testimonial-time {
	font-size: .8em;
	margin-bottom: 2em
}

.loyalty-points-info {
	background-color: #8c54aa;
	color: #fff;
	font-size: 14px;
	padding: 3px 10px;
	align-self: center;
	margin-left: 22px
}

.loyalty-points-info-adj {
	background-color: transparent;
	color: #8c54aa;
	font-size: 14px;
	padding: 3px 10px;
	align-self: center;
	margin-left: 0px
}

.loyalty-points-info2 {
	color: #4d2c60;
	font-size: 13px;
	padding-top: 6px;
	margin: 0 auto;
	width: 100% !important
}

#loader {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	background: rgba(0, 0, 0, .45);
	z-index: 10000
}

.loader {
	width: 100px;
	height: 100px;
	border-radius: 100%;
	position: relative;
	margin: 0 auto
}

#loader .loader {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto
}

#loader-1:after,
#loader-1:before {
	content: "";
	position: absolute;
	top: -10px;
	left: -10px;
	width: 100%;
	height: 100%;
	border-radius: 100%;
	border: 10px solid transparent;
	border-top-color: #4d2c60
}

#loader-1:before {
	z-index: 100;
	animation: spin 1s infinite
}

#loader-1:after {
	border: 10px solid #ccc
}

@keyframes spin {
	0% {
		-webkit-transform: rotate(0);
		-ms-transform: rotate(0);
		-o-transform: rotate(0);
		transform: rotate(0)
	}

	100% {
		-webkit-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg)
	}
}

@media(max-width:1920px) {
	.product-left {
		margin-top: 0;
		padding-top: 0
	}

	.cart-slider-close {
		padding-top: 3.3em
	}

	.loyalty-points-info {
		font-size: 12px
	}
}

@media(max-width:1440px) {
	.product-title h1 {
		font-size: 2.5vw
	}

	.product-title h3 {
		font-size: 2vw
	}

	.cart-slider-close {
		padding-top: 2.3em;
		font-size: 3vw
	}

	.cart-slider-wrap {
		width: 60%
	}

	.cart-slider {
		padding: 10em 4em
	}

	.on-time p {
		font-size: 1.1em
	}
}

@media(max-width:1280px) {

	#upsell1-total,
	#upsell2-total,
	#upsell3-total,
	#upsell4-total {
		margin-bottom: 3vw;
	}

	.product-title h1 {
		font-size: 3vw
	}

	.product-title h3 {
		font-size: 2.5vw
	}

	.carousel {
		margin-left: 0;
		margin-right: 0
	}

	.carousel-dots {
		bottom: 100px;
		height: 100px
	}

	.carousel-dots .carousel-dot img {
		width: 70px;
		height: 70px
	}

	.product-occasion h5 {
		line-height: 1.8em
	}

	.cart-slider-wrap {
		width: 70%
	}

	.cart-slider-close {
		padding-top: 2.8em
	}

	.product-selection-item {
		width: 95%
	}

	.product-selection {
		flex-direction: column
	}

	.loyalty-points-info {
		font-size: 11px
	}
}

@media(max-width:1180px) {
	.cart-slider-close {
		font-size: 4vw;
		padding-top: 1.3em
	}
}

@media(max-width:1024px) {
	.carousel-dots .carousel-dot img {
		width: 50px;
		height: 50px
	}

	.carousel-dots {
		bottom: 80px;
		height: 80px
	}

	.product-comes-with-gift {
		display: block
	}

	.product-comes-with-gift div {
		width: 100%
	}

	.full div {
		text-align: center;
		width: auto;
		margin-right: 2vw
	}

	.upsell-img {
		width: 100px
	}

	.upsell-img img {
		width: 100px;
		height: 100px
	}

	.cart-slider-wrap {
		width: 80%
	}

	.cart-slider {
		padding: 8em 4em
	}

	.on-time p {
		font-size: 1em
	}
}

@media(max-width:940px) {
	.product-line {
		margin-top: 6vw;
	}

	#upsell1-total,
	#upsell2-total,
	#upsell3-total,
	#upsell4-total {
		margin-bottom: 4vw;
	}

	.product-occasion p {
		margin: 1.5vw 0;
		padding: .6vw 0
	}

	.product-comes-with:not(.full) {
		display: block;
		margin: 2vw 0
	}

	.product-comes-with:not(.full) div {
		width: 100%
	}

	.button-product {
		width: 40vw
	}

	.product-fly-container {
		margin: 2vw 0
	}

	.cart-slider-wrap {
		width: 90%
	}

	.cart-slider-close {
		font-size: 5vw;
		padding-top: 1.6em
	}

	.on-time p {
		font-size: .8em
	}

	.product-occasion h4.no-margin-top {
		margin-bottom: 0
	}
}

@media(max-width:920px) {
	.upsell-description {
		margin-top: 5vw;
	}
}

@media(max-width:800px) {
	.upsell-description {
		margin-top: 0vw;
	}

	.upsell-img {
		width: 100%
	}

	.upsell-img img {
		width: 170px;
		height: 170px
	}

	.flexbox-add {
		display: block
	}

	.upsell-text {
		width: 100%
	}

	.cart-slider-wrap {
		width: 100%
	}

	.carousel-dots .carousel-dot img {
		margin: 15px 5px 20px
	}

	.loyalty-points-info {
		font-size: 10px
	}
}

@media(max-width:720px) {
	.product-comes-with-gift div {
		width: 80%
	}

	.product-container {
		display: block;
		background-color: #fff
	}

	.product-right-container {
		margin: 1vw 4vw 0
	}

	.product-left,
	.product-right {
		width: 100%
	}

	.product-container .product-left {
		width: 100%
	}

	.product-container .product-left .product-image {
		width: 100%;
		height: 100vw
	}

	ul.slides {
		width: 100vw;
		height: 100vw
	}

	.slide-image img {
		min-width: 100vw
	}

	.carousel-dots .carousel-dot img {
		width: 12vw;
		height: 12vw;
		margin: 2vw
	}

	.carousel-dots {
		bottom: 16vw;
		height: 16vw
	}

	.product-title h1 {
		font-size: 5vw;
		line-height: 8vw
	}

	.product-title h3 {
		font-size: 4.5vw
	}

	.product-comes-with-gift {
		display: flex
	}

	.product-occasion p label span {
		width: 80vw
	}

	.product-occasion p label span#upsell-price {
		width: 20vw
	}

	.carousel-wrap {
		height: 130px
	}

	.owl-nav button {
		background-color: #fff;
		margin-top: -45px
	}

	.flexbox-add {
		display: flex
	}

	.upsell-img {
		width: 150px
	}

	.upsell-img img {
		width: 150px;
		height: 150px
	}

	.upsell-text {
		width: 78%
	}

	.product-mobile {
		display: block
	}

	.product-desktop {
		display: none
	}

	.product-desktop-table {
		display: none
	}

	.product-mobile-sm {
		display: none
	}

	.button-checkout,
	.button-continue-shopping {
		width: 100%
	}

	.cart-slider-buttons {
		width: 50%;
		flex-wrap: wrap;
		margin: 0 auto
	}

	.cart-slider-buttons:nth-child(1) {
		order: 1
	}

	.total {
		display: block
	}

	.product-selection-item {
		width: 45%
	}

	.product-selection {
		flex-direction: row
	}

	.custom-dropdown select {
		border: 1px solid #e6e8ea
	}

	.loyalty-points-info {
		font-size: 12px
	}
}

@media(max-width:640px) {
	.button-product {
		width: 60vw
	}

	.cart-slider-close {
		font-size: 6vw;
		padding-top: 1.9em
	}

	.cart-slider-buttons {
		width: 60%
	}

	.product-selection-item {
		width: 95%
	}

	.product-selection {
		flex-direction: column
	}
}

@media(max-width:600px) {
	.product-desktop-table-sm {
		display: none
	}

	.cart-slider {
		padding: 8em 2em
	}

	.product-desktop-mobile-sm {
		display: table-cell
	}
}

@media(max-width:480px) {

	#upsell1-total,
	#upsell2-total,
	#upsell3-total,
	#upsell4-total {
		margin-bottom: 9vw;
	}

	.product-title h1 {
		font-size: 6vw;
		line-height: 11vw
	}

	.product-title h3 {
		font-size: 5.5vw
	}

	.carousel-dots .carousel-dot img {
		width: 15vw;
		height: 15vw;
		margin: 1vw
	}

	.carousel-dots {
		bottom: 17vw;
		height: 17vw
	}

	.product-comes-with-gift {
		display: block
	}

	.product-comes-with-gift div {
		width: 100%
	}

	.full div {
		text-align: center;
		width: auto;
		margin-right: 3vw
	}

	.product-occasion p {
		margin: 4vw 0
	}

	.button-product {
		width: 90vw
	}

	.carousel-wrap {
		height: 150px
	}

	.owl-nav button {
		margin-top: -35px
	}

	.upsell-img {
		width: 100%
	}

	.upsell-img img {
		width: 170px;
		height: 170px
	}

	.flexbox-add {
		display: block
	}

	.upsell-text {
		width: 100%
	}

	.cart-slider table tr td img {
		width: 40px;
		height: 40px
	}

	.cart-slider table tr td.img {
		width: 1%
	}

	.cart-slider-close {
		font-size: 7vw;
		padding-top: 2.1em
	}

	.cart-slider-buttons {
		width: 80%
	}
}

@media(max-width:380px) {
	.product-occasion p label span {
		font-size: 4.8vw
	}

	.owl-nav button {
		margin-top: -45px
	}

	.cart-slider-close {
		padding-top: 2.3em;
		font-size: 8vw
	}

	.cart-slider-buttons {
		width: 100%
	}

	.product-price-flex {
		flex-wrap: wrap
	}

	.product-rating {
		margin-left: 0
	}

	.loyalty-points-info {
		margin-right: 15px
	}
}

@media(max-width:320px) {
	.product-title h1 {
		font-size: 7vw
	}

	.product-title h3 {
		font-size: 6.5vw
	}

	.carousel-wrap {
		height: 230px
	}
}

#overlay {
	display: none;
	position: fixed;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background-color: #000;
	background-color: rgba(0, 0, 0, .4)
}

.overlay-content {
	background-color: #fefefe;
	margin: 15% auto;
	padding: 20px;
	border: 1px solid #888;
	width: 70%
}

.close {
	color: #aaa;
	float: right;
	font-size: 28px;
	font-weight: 700
}

.close:focus,
.close:hover {
	color: #000;
	text-decoration: none;
	cursor: pointer
}

#submitRatingButton {
	background: #8c54aa;
	border: none;
	color: #fff;
	font-size: 12px;
	padding: 3px;
	flex: 1;
	cursor: pointer;
	transition: .3s ease;
	border-radius: 20px;
	width: 33%;
	margin-bottom: 5px;
}



.shadow-effect {
	background: #efeded;
	padding: 20px 20px 60px;
	border-radius: 0;
}

section {
	display: inline-block;
	margin: .25rem;
	padding: 1rem;
	width: 100%;
	margin-bottom: 3rem
}

.testomonial-info {
	margin-top: -47px;
	margin-left: 20px;
	width: 80%
}



.rating {
	color: #ffba0a;
	font-size: 11px
}

.flex-testimonial img {
	transform-style: preserve-3d;
	max-width: 90px;
	margin: 0 auto 17px
}

.flex-testimonial {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex
}

.float-img {
	float: left;
	padding-right: 10px
}

p.customer-name {
	margin-top: 5px
}

.star-rating-review {
	color: #9a6e1c;
	color: #ddd;
	font-size: 18px;
	position: relative
}

.wrapper {
	width: 33%;
	margin-right: 40%
}

.progress-bar {
	width: 100%;
	background-color: #f5f7f9;
	padding: 3px;
	border-radius: 10px;
	position: relative;
	height: 20px
}

.progress-bar-fill {
	display: block;
	position: relative;
	height: 100%;
	background: #9a6e1c;
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
	transition: width .5s ease-in-out;
	overflow: hidden
}

.rate {
	display: table;
	width: 100px;
	height: 100%;
	margin: 0 auto;
}

.rate:not(:checked)>input {
	display: none
}

.rate:not(:checked)>label {
	float: right;
	width: 1em;
	overflow: hidden;
	white-space: nowrap;
	cursor: pointer;
	font-size: 18px;
	color: #ccc
}

.rate:not(:checked)>label:before {
	content: '★ '
}

.rate>input:checked~label {
	color: #9a6e1c
}

.rate:not(:checked)>label:hover,
.rate:not(:checked)>label:hover~label {
	color: #9a6e1c
}

.rate>input:checked+label:hover,
.rate>input:checked+label:hover~label,
.rate>input:checked~label:hover,
.rate>input:checked~label:hover~label,
.rate>label:hover~input:checked~label {
	color: #9a6e1c
}