/*

vinespring stylesheet

author:   	vin, vinagency.com
version:  	2.3

contents:
			general
			account links
			account
			registration
			cart
			products
			product layouts
			allocations
			theme alignment
			theme lightness
			media queries


breakpoints:
			mobile first
			tablet 			480px
			small desktop	768px
			full desktop	999px


*/



/* =general */

.vinespring-container {
position: relative;
min-height: 300px;
}
.vinespring-container > div[data-vsplugin] {
opacity:0;
-webkit-transition: all .75s ease-out;
-moz-transition: all .75s ease-out;
-ms-transition: all .75s ease-out;
transition: all .75s ease-out;
}
.vinespring-container.loaded > div[data-vsplugin] {
opacity:1;
-webkit-transition: all .75s ease-out;
-moz-transition: all .75s ease-out;
-ms-transition: all .75s ease-out;
transition: all .75s ease-out;
}

.vs2-required {
display: inline-block;
padding: 0 3px;
}
.vs2-error,
.vs2-error a,
.vs2-error a:link {
color: #aa0000;
}
label > span {
display: block;
}
.vs2-loading,
.vs2-cart-loading {
width:100%;
}
.vs2x-mediumForm {
margin-left:auto;
margin-right:auto;
}
#vs-account .vs2x-mediumForm {
width:auto;
max-width: 100%;
}
.vs2-saveCancel a {
text-transform: uppercase;
text-decoration: none;
padding: .5em 1em;
font-size: 15px;
font-family: 'Questrial', sans-serif;
}
body .vs2x-form.vs2x-mediumForm,
body .vs2x-max48 {
max-width: 100%;
}



/* =account links */

.vs-accountlinks {
font-size: 14px;
}
.vs-accountlinks a,
.vs-accountlinks i {
cursor:pointer;
}
.vs2-accountlinks-inner > span {
display: inline-block;
}
.vs2-accountlinks-inner > span a {
display: inline-block;
padding: 5px;
text-decoration: none;
}
.vs2-accountlinks-inner a span {
font-size:14px;
text-transform: uppercase;
}
.vs2-cart-confirmation-custom,
.vs2-cart-confirmation {
display: none;
position: fixed;
z-index: 2000;
top: -4px;
right: -4px;
padding: 15px 20px 0;
width:325px;
background-color: #fff;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
box-sizing:border-box;
border: 4px solid #c0a369;
}
.vs2-cart-confirmation div {
font-size:13px;
}
.vs2-cart-confirmation a {
font-size: 1em;
display: block;
padding: .5em 1em;
margin: 0 auto 10px;
border-radius: 2px;
text-decoration: none;
cursor: pointer;
text-transform: uppercase;
text-decoration: none;
text-align:center;
}
.vs2-cart-confirmation-custom p {
margin-bottom: 1em;
clear:both;
}
.vs2-cart-confirmation-custom .button-close {
float:right;
margin:-20px -24px 0 0;
padding:20px 20px 10px 20px;
}
.vs2-cart-confirmation-custom .button-review {
font-size: 16px;
letter-spacing: .5px;
display: inline-block;
padding: .75em 15px;
display: block;
margin: 0 auto 20px;
border-radius: 2px;
text-decoration: none;
cursor: pointer;
text-transform: uppercase;
text-decoration: none;
text-align:center;
}
.vs2-cart-confirmation-custom .button-close {
cursor:pointer;
}
.vs2-cart-confirmation-custom h3 {
float:left;
margin: .25em 0 .5em;
}



/* =account */

#vs2-account-nav {
margin-bottom: 2em;
max-width: 1200px;
text-align: center;
}
#vs2-account-nav > div {
display: inline-block;
margin-right: 15px;
}
#vs2-account-nav a {
font-family: 'Questrial', sans-serif;
font-size:16px;
letter-spacing: 1px;
text-transform: uppercase;
text-decoration: none;
}
#vs2-account-main {
margin: 0 auto;
/*max-width: 960px;*/
}
.vs2x-form a,
#vs2-account-profile-form a {
display: inline-block;
padding-top: .5em;
}
.vs2-account-login-register-link,
.vs2-account-login-password-link {
text-decoration: none;
}
#vs2-account-login-form,
#vs2-account-password-form,
#vs2-account-forgotPassword-form {
max-width:480px;
}
#vs2-account-login-form div.vs2x-row > div.vs2x-m6,
#vs2-account-forgotPassword-form div.vs2x-row > div.vs2x-m6 {
width:100% !important;
}
#vs2-account-nav .vs2-account-nav-allocations {
display: none;
}
#vs2-account-nav .vs2-account-nav-clubs {}

.vs2-account-header h2 {
margin-bottom: 1.0em;
}


/* =registration */

#vs-form-register legend {
display: none;
}
#vs-form-register fieldset {
border: none;
padding: 0;
margin-bottom: 0;
}
#vs-form-register .vs2x-row:last-child {
margin-top: 1.5em;
}
#vs-form-register .vs2x-form.vs2x-mediumForm {
max-width:100%;
width: 100%;
}




/* =cart */

.vs-cart {}
.vs-cart form {
margin: 0 auto;
max-width: 100% !important;
}
.vs2-cart-header {
position: relative;
}
.vs2-cart-section {
padding-top: 1em;
margin-bottom: 1em;
}
a.vs2-cart-edit,
a.vs2-cart-edit:link,
a.vs2-cart-edit:visited {
display: inline-block;
position: absolute;
/*top: -.25em;*/
right: 0;
text-decoration: none;
cursor: pointer;
display: inline-block;
padding: .5em 8px;
margin-bottom: 0;
}
.vs2-cart-items > .vs2x-row {
padding-top: 1em;
margin:0 auto;
}
.vs2-cart-section > .vs2x-row:first-of-type {
padding-top: 1em;
}



/* =products */

.productlist-item,
.productlist-rows-item,
.productdetail-item {
overflow: hidden;
margin-bottom: 3em;
}
.product-text {
margin-bottom: 1.5em;
}
.product-text h2 {
margin-top: 0;
}
.product-form h3 {
margin-top: .125em;
}
.vs2-productList-price {
text-align: center;
}
.vs2-productList-sub > .vs2-productList-quantity {
padding-right: 0;
text-align: right;
}
.vs2-productList-bottleSize {
text-align: left;
}
.vs2-productList-notAvailable:empty,
.vs2-productList-soldOut:empty,
.vs2-productList-bottleSize:empty,
.vs2-productList-addToCart:empty,
.vs2-productList-sub:empty {
display: none;
}
.vs2-productList-soldOut span:last-child {
text-transform: capitalize;
color: #aa0000;
white-space: nowrap;
}
/*.vs2-productList-notAvailable {
margin: .25em 0;
}*/
.vs2-productList-sub > span,
.vs2-productList-soldOut > span,
.vs2-allocation-sub > span {
display: inline-block;
width:32%;
}
.vs2-productList-soldOut {
padding: .5em 0;
}
.vs2-productList-item {
margin-bottom: 2em !important;
clear: left;
overflow: hidden;
}
.vs2-productList-item > div {
float: none;
clear: none;
}
.vs2-productList-item > .vs2-productList-details {
float: none;
clear: none;
}
.vs2-productList-subs {
max-width: 360px;
padding:1em 0 0;
margin:0 0 .5em;
}

/*.vs2-productList-sub:first-child {
border-top: none !important;
padding-top: 0;
}
*/



.vs2-productList-addToCart button {
width: 100%;
max-width: 360px;
margin-left: auto;
margin-right: auto;
}

.vs2-productList-sub,
.vs2-productList-notAvailable {
padding:.5em 0 .5em;
}
.vs2-allocation-sub {
max-width: 300px;
}
.vs2-productList-sub > .vs2-productList-quantity {
padding-right: 0;
}
.vs2-productList-quantity-input {
width: 40px;
text-align: center;
}
.vs2-productList-quantity-dropdown,
.vs2-allocations-quantity-dropdown {
width: 50px;
}
.vs2-productList-addToCart,
.vs2-allocations-addToCart {
margin-top: .5em;
}
.vs2-productDetail-attributes {
margin-top: 1.5em;
}
.vs2-productDetail-attributes li {
list-style: none;
position:relative;
}
.vs2-productDetail-attributes li:before {
content: '\b7\a0';
position:absolute;
right:100%;
font-size:2em;
}



/* =product layouts */

.product-image a {
display: block;
margin-bottom: 1em;
}
.productlist-rows-item .productlist-item {
clear: both;
}
.productlist-rows-item img {
max-height:300px;
}
.productlist-grid {
justify-content:center;
}
.productlist-grid .product-image {
width:100%;
}
.productlist-grid .product-image img {
width:auto;
max-height: 300px;
}
.productlist-grid .product-image a {
display: block;
}
.productdetail-item img {
width:auto;
max-height: 500px;
}
.productlist-footer {
margin-top: 1.5em;
}



/* =allocations */

.vs2-allocations-details h3 {
text-align:left;
}
#vs2-account-main.vs2-account-allocations {
/*max-width:54em;*/
/*max-width:640px;*/
}
.vs2-account-allocations > div {
margin-bottom: 2em;
}
.vs2-allocations-image img {
text-align: center;
}
.vs2-allocations-details {}

.vs2-allocations-soldOut .vs2-productList-bottleSize {
display: inline-block;
margin-right: 20px;
}
.vs2-allocations-soldOut span:last-child {/*sold out*/
opacity: .4;
}



/* =theme alignment */

.vs2-loading,
.vs2-cart-loading,
#vs2-cart-emptyCart-message,
.vs2-account-allocations-empty,
.vs2-account-orders-none,
.vs2-account-clubs-empty {
text-align: center;
}
#vs2-account-nav,
#vs2-account-login-form,
#vs2-account-password-form,
#vs2-account-forgotPassword-form {
margin-left:auto;
margin-right: auto;
}
.product-form,
.product-form h3 {
text-align: center;
}
.vs2-productList-subs {
margin-left:auto;
margin-right: auto;
}
.vs2-productList-subs {
margin-left:auto;
margin-right: auto;
}
.vs2-productList-subs,
.vs2-productList-addToCart {
text-align: center;
}
.productlist-carousel .product-image,
.productlist-grid .product-image {
text-align: center;
}

.productlist-rows-item .product-image,
.product-image {
text-align: center;
}

.productlist-rows-item .product-image,
.product-image {
text-align: center;
}



/* =theme lightness */

.vs2-cart-items > .vs2x-row,
.theme-lightness-light .vs2-cart-items > .vs2x-row {
border-top:1px solid rgba(0,0,0,.2);
}
.theme-lightness-dark .vs2-cart-items > .vs2x-row {
border-top:1px solid rgba(255,255,255,.2);
}
/*.vs2-cart-section > .vs2x-row:first-of-type,
.theme-lightness-light .vs2-cart-section > .vs2x-row:first-of-type {
border-top:1px solid rgba(0,0,0,.2);
}
.theme-lightness-dark .vs2-cart-section > .vs2x-row:first-of-type {
border-top:1px solid rgba(255,255,255,.2);
}*/


/*.theme-lightness-light .vs2-productList-subs {
border:1px solid rgba(0,0,0,.2);
background-color: #fff;
}
.theme-lightness-light .vs2-productList-sub {
border-top:1px solid rgba(0,0,0,.2);
}
.theme-lightness-dark .vs2-productList-subs {
border:1px solid rgba(255,255,255,.2);
background-color: #000;
}
.theme-lightness-dark .vs2-productList-sub {
border-top:1px solid rgba(255,255,255,.2)
}*/

/*
.theme-lightness-dark #vs2-cart-confirmation,
.theme-lightness-dark #vs2-cart-confirmation-custom {
border: 1px solid #aaa;
border: 1px solid rgba(255,255,255,.4);
}*/


/* =media queries */

@media only screen and (max-width: 480px){/* =mobile */

.vs2-cart-confirmation-custom {
width:100%;
top:0;
left:0;
border-left:none;
border-right:none;
border-top:none;
}
.productlist-rows-item .product-image,
.product-image {
float: none;
width: auto;
margin-right: auto;
margin-bottom: 2em;
}
.vs2-productList-subs {
max-width: 300px;
margin:0;
}



.vs2-allocations-image.vs2x-s6.vs2x-m4,
.vs2-allocations-details.vs2x-s6.vs2x-m8 {
width:100%;
}
}

@media only screen and (max-width: 768px){/* =mobile & tablet */

.vs-accountlinks {
position: absolute;
top: 0;
right: 10px;
z-index: 1010;
text-align: right;
}
.vs-accountlinks .icon-basket,
.vs-accountlinks .icon-user {
font-size:1em;
}
.vs2-accountlinks-user-label,
.vs2-accountlinks-cart-label {
display: none;
}
.vs2-accountlinks-inner > span a {
padding:10px 5px;
}

/*.vs2-productList-sub {
padding: 0 0 .5em;
}*/

}

@media only screen and (min-width: 480px) and (max-width: 768px){/* =tablet */

}

@media only screen and (min-width: 480px){/* =tablet & desktop */

.product-form h2,
.product-form h3,
.productlist-rows-item h2,
.productlist-rows-item h3 {
text-align: left;
}
}

@media only screen and (min-width: 768px) and (max-width: 999px){/* =small desktop */

}

@media only screen and (min-width: 768px){/* =all desktop */

.vs-accountlinks {
position: absolute;
z-index: 1010;
top: 10px;
right: 20px;
}
.vs-accountlinks i {
font-size:16px;
}
.vs2-accountlinks-user-label,
.vs2-accountlinks-cart-label {
display: none;
}
/*.vs2-accountlinks-user i,
.vs2-accountlinks-cart i {
display:none;
}
*/
.productlist-rows-item .product-image,
.product-image {
text-align: center;
}
.product-image a {
display: block;
}
}
@media only screen and (min-width: 999px){/* =full desktop */

}


@media only print {

.vs2-no-print {
display: none;
}

}


