@charset "utf-8";

/* CSS Document */

/* ====================================================================================================
	Table of Content

	1. Overrides of base layout
	2. Cart
	3. Clear Fix

*/

/*   ===================================================================================================
     1. Overrides of base layout
======================================================================================================== */
	.container-holder {
		padding: 30px 25px 30px;
		font-family: Montserrat, Helvetica, Arial, sans-serif;
		font-size: 14px;
		color: #5d5341;
		}


/*   ===================================================================================================
     2. Cart
======================================================================================================== */

.currency-picker {
	margin: auto;
    text-align: center;
    background: #f7f7f7;
    padding: 5px 0px 5px 0px;
	width: 100%;
    margin-top: 15px;
	}

	.currency-picker img {
		vertical-align: middle;
		}

.cart-wrapper{ }

	.cart-header,
	.cart-header .header {
		border-bottom: 1px solid #b8b8b8;
		margin-top: 10px;
	}

	.cart-header .header {
		border-style: none;
	}
	.cart-header {
		font-size: 18px;
		font-family: 'proxima-nova', 'Montserrat', Helvetica, Arial, sans-serif;
		color: #5D5341;
		line-height: 36px;
		margin-bottom: 16px;
	}

	.cart-item-description{
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		margin-top: 20px;
		vertical-align: top;
		-webkit-box-flex: 2;
		    -ms-flex-positive: 2;
		        flex-grow: 2;

	}

			.cart-item-description-product-image {
				display: inline-block;
				padding: 0 20px;
				-ms-flex-negative: 0;
				    flex-shrink: 0;
			}

			.cart-item-description-product-image .label-image {
				-webkit-filter: drop-shadow(0 3px 3px #a0a0a0);
				        filter: drop-shadow(0 3px 3px #a0a0a0);
			}

			.cart-item-description-product-image .product-image,
			.cart-item-description-product-image .label-image,
			.cart-item-description-product-image .wine-image {
				width: 170px;
				height: 240px;
				background-image: url(../images/cart/wine-label-placeholder.svg);
				background-position: 50%;
				background-repeat: no-repeat;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				vertical-align: top;
				text-align: center;
			}
			.cart-item-description-product-image .hover-effect:hover {
				-webkit-filter: brightness(0.80) drop-shadow(2px 4px 6px #ccc);
				        filter: brightness(0.80) drop-shadow(2px 4px 6px #ccc);
				-webkit-transition: .5s ease;
				transition: .5s ease;
			}
			.cart-item-description-product-image .label-image .no-label,
			.cart-item-description-product-image .wine-image .no-wine {
				width: 100%;
				text-align: center;
				padding: 5px;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				background: none;
				color: black;
				font-size: 16px;
			}
			.wine-site .cart-item-description-product-image {
				width: 290px;
				padding-right: 0;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
			}
			.wine-site .cart-item-description-product-image img {
				display: inline-block;
			}
			.wine-site .cart-item-description-product-image a[href]:hover {
				text-decoration: none;
			}
			.wine-site .cart-item-description-product-image .label-image {

			}
			.wine-site .cart-item-description-product-image .wine-image {
				width: 115px;
				max-width: 50%;
				background-image: url(../images/cart/wine-bottle-placeholder.svg);
			}

			.wine-site .cart-item-description-product-image .product-image,
			.wine-site .cart-item-description-product-image .wine-image.sample {
				margin-left: auto;
				margin-right: auto;
				display: block;
			}

			.cart-item-description-product-image label {
				display:block;
				max-width: 99%;
			}
			.wine-site .cart-item-description-product-image label {
				max-width:290px;
			}
			.cart-item-description-product-title {
				font-size: 18px;
				font-family: 'proxima-nova', 'Montserrat', Helvetica, Arial, sans-serif;
				color: #5D5341;
				margin-top: 0;
				}
			.cart-item-description-product-title .issample {
				color: #A32A6C;
				font: 150% 'proxima-nova', 'Montserrat', Helvetica, Arial, sans-serif;
				text-transform: uppercase;
				line-height: 200px;
			}
		.cart-item-quantity {
			display: inline-block;
			margin-top: 20px;
			text-align:right;
			padding: 0 20px 0 10px;
			-webkit-box-flex: 1;
			    -ms-flex-positive: 1;
			        flex-grow: 1;
		}
		.cart-item-quantity .item-pricing-marker {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-orient: vertical;
			-webkit-box-direction: normal;
			    -ms-flex-direction: column;
			        flex-direction: column;
			-webkit-box-align: end;
			    -ms-flex-align: end;
			        align-items: flex-end;
		}
		.cart-item-quantity input {
			width: 80px;
			text-align: center;
			display: inline-block;
			margin-bottom: 7px;
			padding: 5px;
		}
		.cart-item-quantity form.remove-item {
			text-align:left;
			vertical-align: middle;
		}

		.cart-product-addons,
		.reorder-desc {
			margin-top: 10px;
		}

		.reorder-desc > div {
			position:relative;
			font-size:15px;
			font-weight: bold;
		}

		.reorder-preview {
			position: absolute;
			display: none;
			left: 150px;
			bottom: 35px;
			padding: 10px;
			background: white;
			border: 1px solid #ad9e80;
			z-index: 10;
		}

		.reorder-preview img {
			max-width:300px;
			max-height:300px;
		}

		.cart-item-quantity .cart-addons .show-addons {
			display: none;
			cursor: pointer;
		}

		.cart-item .addon-flex {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
		}

		.cart-item .addon-desc {
			-webkit-box-flex: 1;
			    -ms-flex: 1;
			        flex: 1;
		}

		.cart-item .addon-price {
			padding: 5px;
			font-size: 120%;
		}

		.cart-item-price{
			display: inline-block;
			margin-top: 20px;
			max-width: 140px;
			vertical-align: top;
			text-align: right;
			-webkit-box-flex: 1;
			    -ms-flex-positive: 1;
			        flex-grow: 1;
		}
		.item-price-total {
			margin-right: 30px;
		}
		.cart-header .cart-item-quantity {
			text-align: left;
		}
		.cart-item form.update-cartitem.labeladdon {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-align: center;
			    -ms-flex-align: center;
			        align-items: center;
		}
		.cart-item form.update-cartitem input[type=checkbox] {
			-ms-flex-negative: 0;
			    flex-shrink: 0;
		}

		.cart-item form.update-cartitem {
			-webkit-transition: opacity 0.3s ease-out;
			transition: opacity 0.3s ease-out;
		}
		.cart-item form.update-cartitem.ajax {
			opacity: 0.5;
		}

	.cart-item-removed {
		padding: 10px;
	}
	.cart-item-removed,
	.cart-item {
		border-bottom: 1px solid #b8b8b8;
		margin-bottom: 16px;
		padding-bottom: 10px;
		}

	.cart-summary {
		border-bottom: 1px solid #b8b8b8;
		margin-bottom: 16px;
		padding-bottom: 10px;
		position: relative;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: end;
		    -ms-flex-align: end;
		        align-items: flex-end;
		-ms-flex-wrap: wrap-reverse;
		    flex-wrap: wrap-reverse;
		gap: 20px;
	}

	.checkout-wrapper.receipt .cart-item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}

	.checkout-wrapper.receipt .cart-summary {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		/* align-items: flex-end; */
	}

	.checkout-wrapper.receipt .cart-summary .group {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: end;
		    -ms-flex-pack: end;
		        justify-content: flex-end;
	}

	.cart-summary-label {
		color: #5d5341;
		height: 36px;
		font-size: 14px;
		line-height: 36px;
		margin: 0 10px;
		text-align: right;
		white-space: nowrap;
	}

	.cart-summary-value {
		color: #5d5341;
		/* display: inline-block; */
		text-align: right;
		font-size: 16px;
		line-height: 36px;
	}

	.cart-summary-column {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}

	.cart-summary.group {
		-webkit-box-align: end;
		    -ms-flex-align: end;
		        align-items: flex-end;
		-ms-flex-wrap: wrap-reverse;
		    flex-wrap: wrap-reverse;
		gap: 10px;
	}

	.cart-summary.group,
	.cart-summary-totals {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		-webkit-box-flex: 1;
		    -ms-flex-positive: 1;
		        flex-grow: 1;
		-webkit-box-pack: right;
		    -ms-flex-pack: right;
		        justify-content: right;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}

/* 	.group {
		display: flex;
		flex-direction: row;
		flex-grow: 1;
		justify-content: right;
		align-items: flex-start;
	} */

	.cart-tools {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-flex: 1;
		    -ms-flex-positive: 1;
		        flex-grow: 1;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		line-height: 1.5em;
		margin-top: 8px;
	}

	.cart-tools > a {
		cursor: pointer;
	}

	.cart-summary .discount {
		color: #b83d38
	}

	.cart-subtotal-price {
		font-weight: 500;
	}

	.cart-summary-label .cart-subtext {
		font-size: 10px;
	}

	.cart-summary-subtotal{}
	.cart-summary-shipping{}
	.cart-summary-taxes{}

	.cart-summary-total .cart-summary-label {
		color: #333;
		font-size: 24px;
	}

	.cart-summary-total .cart-summary-value{
		color: #333;
		font-size: 24px;
	}

	/* .cart-tools {
		position: absolute;
		bottom: 16px;
		left: 30px;
	} */


/*   ===================================================================================================
     3. Clear Fix
======================================================================================================== */

.regular-price {
	text-decoration:line-through;
	margin-right:1em;
	color: #b83d38;
}

ul.discount-text {
	display:inline-block;
	text-align:right;
	padding-left:0px;
}

ul.discount-text li {
	list-style:none;
}
.cart-checkout .center { text-align:center }
.cart-checkout .or {margin:2px;}
.clearfix { clear:both }

.cart-tools .generic-button.alt2 {
	margin-right: 0;
}

.generic-button.alt3 {
	margin-left: 0.5ex;
}

.cart-tools .generic-button.alt2,
.generic-button.alt3 {
	margin-top: 4px;
	margin-bottom: 4px;
}

.submit-link {
	background: none!important;
	border: none;
	padding: 0!important;
	color: #ac271f;
	cursor: pointer;
}

.empty-cart-dialog .buttons {
	text-align:right;
	margin-top:50px;
}

.empty-cart-dialog .buttons .ok,.empty-cart-dialog .buttons .cancel {
	margin: 0 10px;
}

.receipt-ordernumber {
	float:right;
}

.update-cartitem.mediatypes input,
.update-cartitem.mediatypes label,
.update-cartitem.mediatypes span {
	vertical-align: middle;
}

.cart-checkout-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.cart-checkout-container p {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
}

.cart-checkout-container .cart-checkout {
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}

.cart-wrapper .extra-price {
	margin-left: 0.3em;
}
.cart-wrapper .item-pricing-marker [title] {
	border-bottom: 1px dashed rgba(0, 0, 0, 0.2);
	border-radius:2px;
	position: relative;
}
.cart-item .cart-item-options {
	/* text-transform: uppercase; */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 15px;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	line-height: 1.2em;
}

.cart-item .cart-item-group.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.cart-item .cart-item-options > *,
.cart-item .cart-item-options .submit-link {
	color: #ac271f;
	font-size: 14px;
	font-family: Montserrat, Helvetica, Arial, sans-serif;
}

.cart-summary .cart-tools > a:hover,
.cart-item .cart-item-options > a:hover,
.submit-link:hover {
	text-decoration: underline;
}

.cart-summary .cart-tools > a:not(:first-child):before,
.cart-item .cart-item-options > a:not(:first-child):before,
.cart-item .cart-item-options > form:not(:first-child):before {
	content: "|";
	padding: 0 7px;
	color: #5d5341;
}

.cart-item .cart-item-options > * {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.cart-item .cart-item-options button {
	text-align: left;
}

.cart-item .cart-item-options button:hover {
	text-decoration: underline;
}

/* .cart-item .edit-label .generic-button {
	display: block;
    width: 167px;
    margin: 5px auto;
}
.cart-item .edit-label .submit-button {
	display: block;
    width: 167px;
	font: 14px/18px proxima-nova,Montserrat,Helvetica,Arial,sans-serif;
} */
.cart-item #media-types-container label {
	font-size: 15px;
	margin: 0 5px 0 2px;
}
body.touched .cart-wrapper .item-pricing-marker [title] > * {
	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
}
body.touched .cart-wrapper .item-pricing-marker [title]:hover:after {
	position: absolute;
	top: 100%;
	right: -10%;
	content: attr(title);
	border: 1px solid rgba(0, 0, 0, 0.2);
	background-color: white;
	-webkit-box-shadow: 1px 1px 3px;
	        box-shadow: 1px 1px 3px;
	padding: 0.3em;
	z-index: 1;
}
body.touched .cart-wrapper .item-pricing-marker [title]:hover > * {
	-webkit-user-select: auto;
	   -moz-user-select: auto;
	    -ms-user-select: auto;
	        user-select: auto
}

@media screen and (max-width: 970px) {
	.cart-table {
		display: table;
		width: 100%;
	}

/* 	.cart-item,
	.cart-header {
		display: table-row;
	} */

/* 	.cart-item > div:not(.cart-item-removed),
	.cart-header .header {
		display: table-cell;
		width: auto;
		padding: 0;
		padding-top: 0.5ex;
	} */
	.cart-item div.cart-item-quantity {
		padding-right: 0.5em;
	}

	/* .cart-tools {
		flex-grow: 1;
	} */
	.cart-summary-label {
		width: auto;
	}

	.cart-header .header {
		border-bottom-style: solid;
	}

	/* .cart-tools {
		position: static;
	} */
/*
	.cart-item-quantity .cart-product-addons,
	.cart-item-quantity .cart-product-addons label {
		width: auto;
	} */

	.cart-item-description-product-image {
		display: block;
		padding-left: 0;
	}

	.cart-item-description-product-image .product-image,
	.cart-item-description-product-image .label-image,
	.cart-item-description-product-image .wine-image {
		/* width: 100%;
		height: 180px; */
		/* width: 120px; */
		background-size: contain;
		/* background-position: 0 0; */
	}

	.wine-site .cart-item-description-product-image .label-image {
		width: 50%;
	}

	.wine-site .cart-item-description-product-image {
		width: 250px;
	}
}

@media screen and (max-width: 750px) {
	.item-price-total {
		margin-right: 0;
	}
	.wine-site .cart-item-price {
		display: none;
	}
}

@media screen and (max-width: 650px) {
	.cart-item-description-product-image .product-image,
	.wine-site.cart-item-description-product-image .label-image,
	.wine-site.cart-item-description-product-image .wine-image {
		max-width: 150px;
        height: 170px;
/* 		max-height: 40vw;
		background-size: contain; */
	}
	.wine-site .cart-item > .cart-item-group {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
}

@media screen and (max-width: 600px) {
	.cart-item > .cart-item-group {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}

	.container-holder {
		padding:15px 10px 9px;
	}
}

@media screen and (max-width: 500px) {
	/* .cart-item-description-product-image .product-image,
	.cart-item-description-product-image .label-image,
	.cart-item-description-product-image .wine-image {
		width: 100%;
		max-width: 150px;
		height: 120px;
		max-height: 40vw;
		background-size: contain;
	} */
	.cart-item-description-text,
	.cart-item-description-product-image {
		padding: 5px;
	}
	.wine-site .cart-item-description-product-image {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.cart-item-description-text .label-size {
		display: none;
	}
	.cart-item-price {
		display: none;
	}

}

@media screen and (max-width: 430px) {
	.cart-item .cart-item-options > *, 
	.cart-item .cart-item-options .submit-link,
	.cart-tools > a {
		font-size: 11.5px;
	}
	
}

@media screen and (max-width: 400px) {
	.cart-item #media-types-container label {
		font-size: 13px;
	}

	/* .cart-item-group.flex {
		flex-direction: column;
	} */
}
