/* FONTS */
@import url('https://fonts.googleapis.com/css?family=Montserrat:300,400,500,600,700');

/* GLOBAL */
#v-checkout-wrapper {
  position: relative;
  z-index: 999999
}

.v-checkout {
  background: #fff;
  font-family: Montserrat;
  font-size: 14px;
  font-weight: 500;
  padding: 20px;
  color: #111;
  box-sizing: border-box;
  position: fixed;
  top: 0px;
  height: 100%;
  width: 340px;
  border: 1px solid #E0E0E0;
  box-shadow: -1px 0 3px 2px rgba(208,208,208,0.5);
}

.v-checkout.default {
  right: -340px;
}

.v-checkout.active {
  -webkit-animation: slideLeft 0.5s forwards;
  animation: slideLeft 0.5s forwards;
}

.v-checkout.inactive {
  right: 0px;
  -webkit-animation: slideRight 0.5s forwards;
  animation: slideRight 0.5s forwards;
}

@-webkit-keyframes slideLeft { 100% { right: 0; } }
@keyframes slideLeft { 100% { right: 0; } }

@-webkit-keyframes slideRight { 100% { right: -340px; } }
@keyframes slideRight { 100% { right: -340px; } }

.v-btn {
  border: 0;
  width: fit-content;
  height: 50px;
  background-color: #000;
  color: #fff;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1.25px;
  text-transform: uppercase;
  font-family: Montserrat;
  cursor: pointer;
  width: 120px;
  height: 40px;
  line-height: 40px;
  border-radius: 5px;
}

.v-checkout select {
  background-color: #fff;
  border: 0;
  padding: 0;
  margin: 0;
  border-radius: 0!important;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  background: url(https://s3-us-west-2.amazonaws.com/violet-sdks/js/v0/select_arrow.png) no-repeat #fff;
  background-size: 12px;
  background-position: left;
  font-size: 14px;
  font-weight: 500;
  padding-left: 24px;
}

.v-checkout select option {
  -webkit-appearance: none;.
  background-color: #fff!important;
}

.v-checkout input[type="text"], .v-checkout input[type="number"], .v-checkout input[type="email"] {
  background-color: #fff;
  border: 0;
  padding: 0;
  margin: 0;
  border-bottom: 1px solid #111;
  border-radius: 0!important;
  -webkit-appearance: none;
  font-size: 14px;
}

.v-checkout button:focus, .v-checkout input:focus, .v-checkout select:focus {
  outline: none
}

.v-checkout button:disabled {
  pointer-events: none;
  background-color: #ccc;
}

.v-checkout input, .v-checkout select {
  font-family: Montserrat!important;
}


.v-checkout .v-cart-nav {
  text-align: right;
  margin-top: 10px;
}


.v-checkout .v-cart-nav .v-btn-wrap {
  display: inline-block;
}

.v-checkout .v-co-screen-title {
  font-size: 18px;
  line-height: 22px;
  font-weight: bold;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  margin-bottom: 20px;
  color: #111111;
  text-align: center;
}

/* @media all and (max-width: 520px) {
  .v-checkout .v-co-screen-title {
      font-size: 24px;
     letter-spacing: 2.4px;
  }
} */

.v-checkout .v-btn-prev {
  text-align: right;
  margin-right: 5px;
}

.v-checkout .v-btn-next {
  text-align: left;
  margin-left: 5px;
}

.v-checkout .v-btn-prev button {
  background: transparent;
	background-color: #E4E4E4;
  color: #111;
  font-size: 10px;
}

.v-qty-adjuster {
  width: 55px;
  margin: 0 auto;
}

.v-qty-adjuster div {
  display: inline-block;
}

.v-qty-adjuster .v-qty-count {
  width: 15px;
  text-align: center;
}

.v-qty-adjuster .v-qty-trigger {
  background: #111;
  color: #fff;
  width: 16px;
  height: 16px;
  text-align: center;
  border-radius: 100px;
  line-height: 14px;
  font-weight: 700;
  cursor: pointer;
}

.v-qty-adjuster .v-qty-trigger:last-child {
  line-height: 16px;
}

.v-btn-prev img {
  display: inline-block;
  margin-right: 10px;
  margin-bottom: -1px;
}

.v-secure-checkout {
  grid-area: cartSecureCheckout;
  align-self: end;
  font-size: 10px;
  font-weight: 300;
  letter-spacing: 1.6px;
  text-align: right;
  padding-right: 30px;
  padding-bottom: 30px;
  margin-top:30px;
}

.v-secure-checkout a {
  color: #111;
  font-weight: 500;
}

.v-secure-checkout img {
  width: 30px;
  height: 34px;
  margin-bottom: -12px;
  margin-right: 5px;
}


/* LOADING / ERROR */
.v-loading-view, .v-error-view-full  {
  position: fixed;
  top: 0;
  right: 0;
  width: 339px;
  height: 100%;
  text-align: center;
  background: rgba(255,255,255, .8);
  display: grid;
  font-family: Montserrat;
  font-size: 14px;
  font-weight: 500;
  color: #111;
}

/* ERROR */
.v-error-view-full .v-error {
  align-self: center;
}

.v-error-view-full .v-error span {
  display: block;
}

.v-checkout .v-error-msg {
  width: 100%;
  height: 30px;
  background-color: #f1534d;
  color: #fff;
  text-align: center;
  line-height: 30px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  display: none;
}

.v-error-close {
  margin-top: 50px;
}

.v-error-close button {
	background-color: #E4E4E4;
  color: #111;
}


.v-pdp #v-error, .v-cart-view #v-error, .v-shipping-address-view #v-error, .v-billing-address-view #v-error, .v-payment-method-view #v-error {
  position: absolute;
  left: 0;
  top: 0;
}

/* BUY BUTTON */
#v-buy-btn {
  color: #fff;
  background: #111
}

/* PDP */
.v-pdp {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: min-content min-content min-content min-content min-content min-content min-content min-content min-content;
  grid-auto-flow: row dense;
  grid-template-areas:
  "cartHeader cartHeader cartHeader"
  "pdpProductBrandName pdpProductBrandName pdpProductBrandName"
  "pdpProductName pdpProductName pdpProductName"
  "pdpStoreName pdpStoreName pdpStoreName"
  "pdpProductPrice pdpProductPrice pdpProductPrice"
  "pdpProductMedia pdpProductMedia pdpProductMedia"
  "pdpProductQty pdpProductQty pdpProductQty"
  "pdpProductVariants pdpProductVariants pdpProductVariants"
  "pdpProductDesc pdpProductDesc pdpProductDesc";
  height: calc(100% - 80px);
  overflow-y: scroll;
  overflow-x: hidden;
}

#v-cart-preview-overlay {
  height: 175px;
  width: 100%;
  position: absolute;
  left: 0;
  background: #fff;
  border-bottom: 1px solid #ddd;
  z-index: 2;
  padding: 30px 0;
  box-sizing: border-box;
  transition: top 0.5s ease 0s;
}

#v-cart-preview-overlay.inactive, #v-primary-error-overlay.inactive {
  top: -175px;
}

#v-cart-preview-overlay.active, #v-primary-error-overlay.active {
  top: 0px;
}

#v-cart-preview-overlay .v-cart-controls-wrapper, #v-primary-error-overlay .v-cart-controls-wrapper {
  padding:0;
  border-top: 0;
  height: 40px;
  bottom: 30px;
}

#v-cart-preview-overlay .v-co-screen-title {
  margin-bottom: 5px;
  text-transform: none;
}

#v-cart-preview-overlay .v-error-body {
  text-align: center;
  font-size: 12px;
  padding: 0 20px;
}

#v-cart-preview-overlay .v-cart-preview-lines {
  width: 250px;
  font-size: 12px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin: 0 auto;
}

#v-cart-preview-overlay .v-cart-preview-lines .v-cart-preview-price {
  text-align: right;
}

.v-pdp .v-product-name {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 3px;
  line-height: 15px;
  text-align: center;
  grid-area: pdpProductName;
  margin-bottom: 5px;

}

.v-pdp .v-brand-name {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.2px;
  grid-area: pdpProductBrandName;
  margin-bottom: 2px;
  letter-spacing: 2.5px;
  text-align: center;
}

.v-pdp .v-seller-name {
  grid-area: pdpStoreName;
  text-align: center;
  font-size: 12px;
  font-weight: lighter;
  margin-bottom: 8px;
  margin-top: 3px;
}

.v-pdp .v-seller-name-value {
  border-bottom: 1px solid #111;
}

.v-pdp .v-seller-name-value a {
  text-decoration: none;
  color: #111;
}

.v-pdp .v-product-desc {
    font-size: 14px;
    font-weight: 200;
    letter-spacing: 0.2px;
    grid-area: pdpProductDesc;
    margin-bottom: 25px;
}


.v-pdp .v-product-desc .v-product-desc-label {
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 1.75px;
	line-height: 18px;
	text-align: center;
  text-transform: uppercase;
  margin-bottom: 30px;
}

.v-pdp .v-product-desc .v-product-desc-body {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1.75px;
	line-height: 20px;
	text-align: center;
}

.v-pdp .v-product-price {
  grid-area: pdpProductPrice;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 3px;
	line-height: 15px;
	text-align: center;
}

.v-pdp .v-product-price .v-compare-price {
  margin-left: 10px;
  opacity: 0.25
}

.v-product-variants {
  grid-area: pdpProductVariants;
  margin-bottom: 80px;
  display: flex;
  -webkit-flex-flow: row wrap;
justify-content: space-around;
}

.v-product-variants .v-variant:first-child {
}

.v-product-variants .v-variant:last-child {
}

.v-pdp .v-product-qty-wrap {
  grid-area: pdpProductQty;
  align-self: center;
  margin-bottom: 20px;
}

.v-pdp .v-product-qty-wrap .v-product-qty {
  grid-template-columns: 1fr 1fr;
}

.v-pdp .v-product-qty-wrap .v-product-qty label {
  display: none;
}

.v-pdp .v-product-qty-wrap .v-product-qty input {
  width: 50px;
  text-align: center;
  font-size: 16px;
  padding-bottom: 5px;
}


#v-cart-header {
  grid-area: cartHeader;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
  "pdpCloseCart pdpViewCart"
}

#v-cart-header #violet-view-cart {
  grid-area: pdpViewCart;
  text-align: right;
  position: relative;
}

#v-cart-header #violet-close-cart {
  grid-area: pdpCloseCart;
  text-align: left;
  position: relative;
  cursor: pointer;
  padding-top: 5px;
}

#violet-view-cart button {
  width: 22px;
  background: #fff;
  padding: 0;
  margin: 0;
  height: auto;
  line-height: normal;
}

#violet-view-cart button img {
  position: relative;
  right: 12px;
  top: 5px;
}

#violet-view-cart .v-item-count {
  position: absolute;
  width: 16px;
  height: 16px;
  background-color: #6d32da;
  border-radius: 100px;
  font-size: 10px;
  color: #eee;
  text-align: center;
  line-height: 15px;
  font-weight: 700;
  top: -0px;
  right: 0px;
  text-indent: 2px;
  border: 1px solid #fff;
}

#v-product-cart-controls {
  text-align: center;
}

#v-product-cart-controls .v-btn-add-to-cart {
  margin-right: 10px;
}

#v-product-cart-controls .v-btn-buy-now button {
  background: #111;
  color: #fff;
}

#v-product-cart-controls button {
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 1.25px;
  color: #111;
  background-color: #E4E4E4;
}

#v-product-cart-controls .v-btn-wrap {
  display: inline-block;
}



.v-variant:first-child {
  padding-top: 0px;
}

.v-variant:nth-child(odd) {
  margin-right: 10px;
}

.v-variant:nth-child(even) {
  margin-left: 10px;
}


.v-variant {
  width: 45%;
  text-align: center;
  border-bottom: 1px solid #000;
  margin-bottom: 10px;
}

.v-variant label {
  display: none;
}

.v-variant .v-select-wrap {
}

.v-variant .v-select-wrap select {
  width: 100%;
  font-size: 12px;
  padding-bottom: 2px;
  white-space: pre-wrap;
}

#v-product-cart-controls {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  background: #fff;
  height: 100px;
  box-sizing: border-box;
  padding: 30px 0;
  border-top: 1px solid #ddd
}

.v-pdp #v-product-cart-controls {
  grid-area: pdpCartControls;
}

.v-pdp #v-product-cart-controls button {
  width: 120px;
  height: 40px;
  line-height: 40px;
  border-radius: 5px;
}

#v-product-media-queue-wrap {
  display: none;
  overflow: hidden;
  overflow-x: scroll;
}

#v-product-media-queue {
  height: 72px;
  margin-top: 5px;
  white-space: nowrap;
}

#v-product-media-queue .v-product-media {
  margin-right: 10px;
  cursor: pointer;
  width: 72px;
  height: 72px;
  display: inline-block;
  background-position: center;
}

#v-product-media-queue .v-product-media.selected {
  border-color: #eee;
}


#v-product-media-display {
  grid-area: pdpProductMedia;
  height: 250px;
  width: 100%;
  margin-right: 40px;
  margin-bottom: 30px;
  margin-top: 20px;
}

#v-product-media-display .media-carousel {
  display: grid;
  grid-template-columns: 20px 1fr 20px;
}

#v-product-media-display .media-carousel .carousel-trigger {
  display: grid;
  align-content: center;
  cursor: pointer;
}

#v-product-media-focused {
  height:250px;
  width: 250px;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-position: center;
}

/* @media all and (max-width: 520px) {
  .v-pdp {
    grid-template-columns: 1fr 50px;
    grid-template-rows: min-content min-content min-content min-content min-content 1fr;
    grid-template-areas:
    "pdpProductName pdpViewCart"
    "pdpProductBrandName pdpProductBrandName"
    "pdpProductMedia pdpProductMedia"
    "pdpProductDesc pdpProductDesc"
    "pdpProductPrice pdpProductPrice"
    "pdpProductQty pdpProductQty"
    "pdpProductVariants pdpProductVariants"
    "pdpCartControls pdpCartControls"
  }

  #v-product-media-display {
    margin-right: 0px;
  }
} */


/* CART */
.v-cart-view {
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: min-content;
  grid-template-areas:
  "cartHeader"
  "cartHeading"
  "cartBags"
  "cartBags"
  "cartControls";
  padding-bottom: 100px;
  overflow-y: scroll;
  overflow-x: hidden;
  height: 100%;
}

.v-cart-controls-wrapper {
  background: #fff;
  grid-area: cartControls;
  text-align: center;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100px;
  box-sizing: border-box;
  padding: 30px 0;
  border-top: 1px solid #eee;
}

.v-cart-controls-gradient {
  position: absolute;
  width: 100%;
  height: 45px;
  top: -46px;
  background-image: linear-gradient(to bottom, transparent, white 80%);
  pointer-events: none;
  /* background-image: linear-gradient(to bottom, transparent, white); */
}

.v-cart-controls-wrapper .v-btn-prev,  .v-cart-controls-wrapper .v-btn-next {
  display: inline-block;
}

.v-cart-controls-wrapper.multi {
  height: 188px;
  padding: 15px 0;
}


.v-cart-view .v-co-screen-title {
  grid-area: cartHeading;
  margin-bottom: 30px;
}

.v-cart-view .v-secure-checkout {
  padding-right: 0;
  padding-bottom: 0;
}

.v-cart-view .v-cart-bags {
  grid-area: cartBags;
  margin-bottom: 90px;
}

.v-cart-view .v-bag {
  box-sizing: border-box;
  margin-bottom: 30px;
}

.v-cart-view .v-bag-merchant {
  letter-spacing: 1px;
  margin-bottom: 6px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
}

.v-cart-view .v-btn-prev {
  grid-area: cartBackBtn;
  align-self: end;
}

.v-cart-view .v-btn-prev button {
  height: auto;
}

.v-cart-view .v-btn-next {
  grid-area: cartCheckoutBtn;
}

.v-cart-view .v-btn-next button {
  font-weight: 600;
  letter-spacing: 1.6px;
}

.v-cart-view .v-cart-totals {
  width: 100%;
  min-height: 200px;
  background-color: #d8d8d8;
  grid-area: cartTotals;
  padding: 0 20px 25px 20px;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: min-content;
  position: relative;
}

.v-cart-view .v-cart-totals h2 {
  font-size: 24px;
  font-weight: bold;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: 0.9px;
  text-align: center;
  text-transform: uppercase;
  margin-top: 15px;
}

.v-cart-view .v-cart-totals-bag {
  font-size: 14px;
  letter-spacing: 1.4px;
}

.v-cart-view .v-cart-totals-bag {
  margin-bottom: 10px;
}

.v-cart-view .v-cart-totals-bag.last {
  margin-bottom: 30px;
}

.v-cart-view .v-cart-totals-bag, .v-cart-subtotal {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.v-cart-view .v-cart-subtotal {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 1.6px;
  position: absolute;
  bottom: 20px;
  width: 100%;
  margin-top: 30px;
  padding: 20px;
  box-sizing: border-box;
}

.v-cart-view .v-bag-price, .v-subtotal-value {
  text-align: right;
}


.v-cart-view .v-bag-sku-wrapper {
  border-left: 2px solid #111;
  border-right: 2px solid #111;
  padding: 0 8px;
  padding-bottom: 15px;
}



.v-cart-view .v-bag-sku {
  display: grid;
  grid-template-areas:
  "baggedProductThumb baggedProductName baggedProductName"
  "baggedProductThumb baggedProductBrand baggedProductBrand"
  "baggedProductOpts baggedProductOpts baggedProductPrice";
  grid-template-columns: 60px 1fr min-content;
  grid-template-rows: max-content;
  border: 1px solid #111;
  box-sizing: border-box;
}

.v-bag .v-bag-sku-wrapper:last-child {
  padding-bottom: 0;
}

.v-cart-view .v-bag .v-bag-sku .v-bag-sku-name {
  grid-area: baggedProductName;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1px;
  padding-left: 10px;
  padding-top: 8px;
  padding-bottom: 5px;
  line-height: 13px;
}

.v-cart-view .v-bag .v-bag-sku .v-bag-sku-brand {
  grid-area: baggedProductBrand;
  font-size: 12px;
  font-weight: 500;
  padding-left: 10px;
}

.v-cart-view .v-bag .v-bag-sku .v-bag-sku-price {
  grid-area: baggedProductPrice;
  font-size: 11px;
  font-weight: bold;
  padding-top: 4px;
  padding-bottom: 3px;
  border-top: 1px solid #111;
  padding-right: 10px;
  line-height: 18px;
}

.v-cart-view .v-bag .v-bag-sku .v-bag-opts {
  grid-area: baggedProductOpts;
  display: inline-block;
  border-top: 1px solid #111;
  padding-top: 4px;
  padding-bottom: 5px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding-left: 5px;
}

.v-cart-view .v-bag .v-bag-sku .v-bag-opts .v-bag-sku-qty {
  display: inline-block;
  margin-right: 50px;
  transform: scale(0.8);
}

.v-cart-view .v-bag .v-bag-sku .v-bag-opts .v-bag-sku-qty input {
  width: 50px;
  text-align: center;
  font-size: 16px;
  padding-bottom: 5px;
}

.v-cart-view .v-bag .v-bag-sku .v-bag-opts .v-bag-sku-qty label {
  display: none;
}

.v-bag-item-controls {
  display: inline-block;
  font-size: 12px;
}
.v-bag-item-controls .v-btn-update-sku {
  display: none;
}

.v-bag-item-controls .v-btn-remove-sku {
  background: transparent;
  color: #111;
  padding: 0;
  margin: 0;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1px;
  height: 12px;
  line-height: 12px;
  font-size: 10px;
  width: auto;
  text-transform: none;
  border-bottom: 1px solid #111;
  border-radius: 0;
}

.v-bag .v-bag-sku .v-btn-wrap {
  display: inline-block;
  font-size: 10px;
}

.v-btn-update-sku {
  display: none;
}

.v-bag-sku-thumb, .v-sm-product-thumb {
  width: 50px;
  height: 50px;
  grid-area: baggedProductThumb;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  margin: 10px 5px 10px 10px;
  background-size: contain;
}


/* @media all and (max-width: 700px) {
  .v-cart-view {
    grid-template-columns: 1fr;
    grid-template-areas:
    "cartBags"
    "cartBackBtn"
    "cartTotals"
    "cartCheckoutBtn"
    "cartSecureCheckout";
  }

  .v-cart-view .v-bag .v-bag-sku .v-bag-opts {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
  .v-cart-view .v-bag .v-bag-sku .v-bag-opts .v-bag-sku-qty {
    margin-right: 0;
  }
  .v-cart-view .v-cart-totals {
    margin-top: 35px;
  }

  .v-cart-view .v-secure-checkout {
    text-align: center;
  }
} */


/* SHIPPING ADDRESS */
#v-shipping-address {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
  "addressMatch addressMatch"
  "addressEmail addressEmail"
  "addressName addressName"
  "addressOne addressOne"
  " addressTwo addressTwo"
  "addressCountry addressState"
  "addressCity addressZip";
}



.v-address-view {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: min-content min-content min-content;
  grid-template-areas:
  "cartHeader cartHeader"
  "addressHeading addressHeading"
  "addressForm addressForm"
  "addressBackBtn addressNextBtn";
  overflow-y: scroll;
  overflow-x: hidden;
  height: calc(100% - 80px);
}


.v-address-view .v-co-screen-title {
  grid-area: addressHeading;
  margin-bottom: 10px;
}

.v-address-form {
  grid-area: addressForm;
  padding-bottom: 20px;
}

.v-address-view .v-btn-prev {
  grid-area: addressBackBtn;
}

.v-address-view .v-btn-next {
  grid-area: addressNextBtn;
}
.v-address-form > div {
  padding: 12px 0;
}

.v-address-form > div label {
  display: none;
}

.v-address-form .v-address-match label {
  display: inline-block;
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 1.2px;
  margin-left: 9px;
}

.v-checkout .v-address-form > div input[type="text"], .v-checkout .v-address-form > div input[type="email"], .v-checkout .v-address-form > div select {
  width: 100%;
  padding-bottom: 5px;
  font-size: 12px;
  font-weight: 500;
  font-style: normal;
  font-stretch: normal;
  line-height: normal;
  letter-spacing: 1.2px;
  text-align: center;
}

.v-address-form .v-address-match {
  grid-area: addressMatch;
  grid-template-columns: 20px 1fr;
  text-align: center;
  padding-top:0px;
}
.v-address-form .v-address-email {
  grid-area: addressEmail;
  position: relative;
}
.v-address-form .v-address-first-name {
  grid-area: addressName;
  position: relative;
}
.v-address-form .v-address-line-1 {
  grid-area: addressOne;
  position: relative;
}
.v-address-form .v-address-line-2 {
  grid-area: addressTwo;
  position: relative;
}
.v-address-form .v-address-city {
  grid-area: addressCity;
  grid-template-columns: 40px 1fr;
  margin-right: 14px;
  position: relative;
}
.v-address-form .v-address-state {
  grid-area: addressState;
  grid-template-columns: 50px 1fr;
  border-bottom: 1px solid #111;
  padding-bottom: 0px;
  margin-bottom: 12px;
  margin-left: 14px;
  position: relative;
}
.v-address-form .v-address-country {
  grid-area: addressCountry;
  grid-template-columns: 70px 1fr;
  margin-right: 14px;
  border-bottom: 1px solid #111;
  padding-bottom: 0px;
  margin-bottom: 12px;
  position: relative;
}
.v-address-form .v-address-zip {
  grid-area: addressZip;
  grid-template-columns: 110px 1fr;
  margin-left: 14px;
  position: relative;
}

/* BILLING ADDRESS */
#v-billing-address {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
  "addressName addressName"
  "addressOne addressOne"
  " addressTwo addressTwo"
  "addressCountry addressState"
  "addressCity addressZip";
}

/* SHIPPING METHODS */
.v-shipping-methods-view {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: min-content min-content min-content;
  grid-template-areas:
  "cartHeader cartHeader"
  "smFormHeading smFormHeading"
  "smForm smForm"
  "smPrevBtn smNextBtn";
  overflow-y: scroll;
  height: calc(100% - 80px);
}

.v-shipping-methods-view .v-co-screen-title {
  grid-area: smFormHeading;
}

#v-shipping-methods {
  grid-area: smForm;
  min-height: 195px;
}

.v-shipping-methods-view .v-btn-prev {
  grid-area: smPrevBtn;
}

.v-shipping-methods-view .v-btn-next {
  grid-area: smNextBtn;
}

.v-bag-sm {
  box-sizing: border-box;
  padding: 0 10px;
  margin-bottom: 30px;
  background-color: #fff;
}

.v-bag-sm.multi {
  /* border-left: 10px solid #aaa; */
}

.v-bag-sm.multi .v-sm-wrapper {
  border-left: 2px solid #111;
  border-right: 2px solid #111;
  padding: 0 10px;
}

.v-bag-sm .v-bag-sm-merchant {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 6px;
  text-transform: uppercase;
  letter-spacing: 1px;
  text-align: center;
}

.v-sm {
  font-size: 12px;
  letter-spacing: 1.2px;
  padding: 10px;
  color: #111111;
  line-height: 16px;
  display: grid;
  grid-template-columns: 20px 1fr;
  grid-column-gap: 15px;
  grid-template-areas:
  "smToggle smLabel"
  "smToggle smPrice"
}

.v-sm .v-sm-toggle {
  grid-area: smToggle
}
.v-sm .v-sm-label {
  grid-area: smLabel
}
.v-sm .v-sm-price {
  grid-area: smPrice;
  font-weight: bold;
}

/*
@media all and (max-width: 520px) {
  #v-shipping-address {
    grid-template-columns: 1fr;
    grid-template-areas:
    "addressMatch"
    "addressEmail"
    "addressName"
    "addressOne"
    "addressTwo"
    "addressCountry"
    "addressState"
    "addressCity"
    "addressZip";
  }

  #v-billing-address {
    grid-template-columns: 1fr;
    grid-template-areas:
    "addressEmail"
    "addressName"
    "addressOne"
    "addressTwo"
    "addressCountry"
    "addressState"
    "addressCity"
    "addressZip";
  }

  #v-shipping-address select, #v-billing-address select {
    background: url(https://s3-us-west-2.amazonaws.com/violet-sdks/js/v0/select_arrow.png) 98% / 5% no-repeat #fff;
  }

  .v-address-form .v-address-email,
  .v-address-form .v-address-line-1,
  .v-address-form .v-address-country,
  .v-address-form .v-address-state,
  .v-address-form .v-address-city {
    margin-right: 0!important;
  }
} */


/* PAYMENT METHOD */
.v-payment-method-view {
  overflow-y: scroll;
  overflow-x: hidden;
  height: calc(100% - 80px);
  grid-template-rows: min-content min-content min-content;
}

.v-payment-method-view .v-co-screen-title {
}

#v-payment-form label {
  margin-bottom: 10px;
  display: block;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1.2px;
  text-align: center;
}

#card-element {
  height: 50px;
  box-sizing: border-box;
  border: 1px solid #111;
  padding: 10px;
  padding-top: 18px;
}

#card-errors {
  margin-top: 10px;
  height: 15px;
  color: #F1534D;
  font-size: 8px;
  font-weight: 500;
  letter-spacing: 1.2px;
  text-align: center;
}

#v-payment-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
  "pmCardElements pmCardElements"
  "pmPrevBtn pmNextBtn";
}

#v-payment-form .v-card-elements {
  grid-area: pmCardElements;
}

#v-payment-form .v-card-elements.sm {
  height: 190px;
  margin-top: 13px;
}


#v-payment-form  .v-existing-pm {
  grid-area: pmExisting;
}

#v-payment-form  .v-pm-new {
  grid-area: pmNew;
}

#v-payment-fomr .v-btn-wrap {
  align-self: flex-end;
}

.v-payment-method-view .v-existing-pm {
  margin-bottom: 60px;
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: min-content;
  grid-template-areas:
  "existingPmLabel"
  "existingPmCard"
  "existingPmCurrent";
  text-align: center;
  padding-top: 35px;
}

.v-existing-pm .label {
  grid-area: existingPmLabel;
  display: block;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-align: center;
  margin-bottom: 6px;
}

.v-existing-pm .card {
  grid-area: existingPmCard;
  font-size: 10px;
  font-weight: 300;
  letter-spacing: 1px;
  text-align: center;
  margin-bottom: 25px;
}

.v-existing-pm .card span {
  text-transform: uppercase;
}

.v-existing-pm .use-current {
  grid-area: existingPmCurrent;
  text-align: center;
}

.v-payment-method-view .v-btn-prev {
  grid-area: pmPrevBtn;
}

.v-payment-method-view .v-btn-next {
  grid-area: pmNextBtn;
}



/* ORDER REVIEW */
.v-co-cart-overview {
  padding:0 ;
}

.v-cart-review {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: auto;
  grid-template-areas:
  "cartHeader cartHeader"
  "reviewScreenTitle reviewScreenTitle"
  "cartAddresses cartAddresses"
  "cartPaymentMethod cartPaymentMethod"
  "cartReviewPrevBtn cartReviewNextBtn";
  text-align: center;
  overflow-y: scroll;
  overflow-x: hidden;
  height: calc(100% - 80px);
  grid-template-rows: min-content min-content min-content min-content min-content;
}

.v-cart-review .v-btn-prev {
  grid-area: cartReviewPrevBtn
}

.v-cart-review .v-btn-next {
  grid-area: cartReviewNextBtn
}

.v-cart-review .v-co-screen-title {
  grid-area: reviewScreenTitle
}

.v-cart-review .v-cart-addresses {
  grid-area: cartAddresses;
}

.v-cart-review .v-cart-addresses .v-s-addr{
  display: grid;
  grid-auto-rows: min-content min-content min-content min-content 1fr;
  margin: 30px 0;
}

.v-cart-review .v-cart-addresses .v-b-addr{
  display: grid;
  grid-auto-rows: min-content min-content min-content min-content 1fr;
}

.v-cart-review .v-pm {
  margin-top: 35px;
  grid-area: cartPaymentMethod;
  display: grid;
  grid-auto-rows: min-content min-content 1fr;
  padding-bottom: 30px;
}

.v-cart-review .v-section-body {
  font-size: 12px;
}


.v-cart-overview {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: auto;
  grid-template-areas:
  "cartHeader cartHeader"
  "cartError cartError"
  "cartTitle cartTitle"
  "cartEditTrigger cartEditTrigger"
  "cartBags cartBags"
  "bagTotals bagTotals"
  "cartPrevBtn cartNextBtn";
  overflow-y: scroll;
  overflow-x: hidden;
  height: calc(100% - 80px);
  grid-template-rows: min-content min-content min-content min-content min-content;
}

.v-cart-overview .v-co-screen-title {
  margin-bottom: 0;
}

.v-cart-overview .v-bag-edit-trigger {
  grid-area: cartEditTrigger;
  font-size: 14px;
	font-weight: 500;
	letter-spacing: 1.75px;
	line-height: 18px;
	text-align: center;
  margin-bottom: 20px;
  cursor: pointer;
  text-decoration: underline;
}

.v-cart-overview .v-error-msg {
  grid-area: cartError;
}

.v-cart-overview .v-co-screen-title {
  grid-area: cartTitle;
}


/* SINGLE */
.v-cart-overview .v-cart-bags.single {
  grid-area: cartBags;
  /* padding-left: 30px;
  padding-right: 30px; */
  margin-top: 30px;
}


.v-cart-overview .v-bag {
  box-sizing: border-box;
  padding: 0 10px;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas:
  "bagMerchant"
  "bagSkus"
  "bagShippingMethod"
  "bagTotals";
  grid-auto-rows: min-content min-content 1fr;
  margin-bottom: 30px;
}

.v-cart-overview .v-bag.multi {
  padding: 0px;
}

.v-cart-overview .v-bag.single .v-bag-merchant {
  display: none
}

.v-cart-overview .v-bag.multi:last-child {
  margin-bottom: 90px;
}

.v-cart-overview .v-cart-bags.multi .v-bag {
}

.v-cart-overview .v-cart-bags.multi .v-bag .v-bag-totals {
  /* display: none!important; */
}


.v-cart-overview .v-bag:last-child {
  margin-bottom: 0px;
}

.v-cart-overview .v-bag .v-bag-merchant {
  grid-area: bagMerchant;
}

.v-cart-overview .v-bag .v-bag-edit-trigger {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 1.3px;
  cursor: pointer;
  border-bottom: 1px solid #111
}

.v-cart-overview .v-bag .v-bag-skus {
  grid-area: bagSkus;
}

.v-cart-overview .v-bag .v-bag-merchant {
  letter-spacing: 1px;
  margin-bottom: 6px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
}

.v-cart-overview .v-bag .v-bag-shipping-method {
    grid-area: bagShippingMethod;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas:
    "smIcon"
    "smLabel"
    "smPrice";
    grid-auto-rows: min-content;
    margin-bottom: 33px;
}

.v-cart-overview .v-bag .v-bag-shipping-method .v-bag-sm-icon {
  grid-area: smIcon;
  text-align: center;
  margin-bottom: 5px;
}

.v-cart-overview .v-bag .v-bag-shipping-method .v-bag-sm-icon img {
  height: 30px;
  width: 30px;
}

.v-cart-overview .v-bag .v-bag-shipping-method .v-bag-sm-label {
  grid-area: smLabel;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.1px;
  text-align: left;
  margin-bottom: 3px;
  padding-left: 10px;
}

.v-cart-overview .v-bag .v-bag-shipping-method .v-bag-sm-price {
  grid-area: smPrice;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1px;
  text-align: center;
}

.v-cart-overview .v-bag .v-bag-totals {
    grid-area: bagTotals;
    padding: 12px 0;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1.4px;
    display: grid;
    grid-auto-rows: min-content min-content min-content 1fr;
    line-height: 22px;
    text-align: right;
}

.v-cart-overview .v-bag .v-bag-totals .v-totals-label {
  float: left;
}

.v-cart-overview .v-bag .v-bag-totals .v-bag-totals-total {
  align-self: end;
  font-size: 16px;
  font-weight: 700;
  margin-top: 30px;
}


.v-cart-controls-wrapper.multi .v-bag-totals {
    grid-area: bagTotals;
    padding: 0px 55px;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 1.4px;
    display: grid;
    grid-auto-rows: min-content min-content min-content 1fr;
    line-height: 20px;
    text-align: right;
}

.v-totals-label, .v-cart-controls-wrapper.multi .v-bag-totals .v-totals-label {
  float: left;
}

.v-cart-controls-wrapper.multi .v-bag-totals .v-bag-totals-total {
  align-self: end;
  font-size: 16px;
  font-weight: 700;
  margin-top: 8px;
  margin-bottom: 24px;
}

.v-cart-controls-wrapper.multi .v-bag-totals .v-bag-totals-total .v-totals-label .v-bag-count {
  display: none;
}

.v-cart-overview .v-cart-addresses {
  margin-top: 35px;
  padding-bottom: 30px;
  grid-area: cartAddresses;
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding-left: 30px;
}


.v-cart-overview .v-section-label, .v-cart-review .v-section-label {
  font-size: 16px;
  letter-spacing: 1px;
  margin-bottom: 3px;
  font-weight: 600;
}

.v-cart-overview .v-section-body {
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 1px;
}



.v-cart-overview .v-cart-edit {
  align-self: end;
}
.v-cart-overview .v-cart-edit-trigger, .v-cart-review .v-cart-edit-trigger {
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-bottom: 1px solid #111;
  display: inline-block;
  cursor: pointer;
}

.v-cart-overview .v-cart-totals {
  padding: 20px 30px;
  grid-area: cartTotals;
  background: #111;
  color: #fff;
}

.v-cart-overview .v-cart-totals .v-cart-totals-total {
  font-size: 30px;
  letter-spacing: 1.5px;
  font-weight: 600;
}

.v-cart-overview .v-cart-totals .v-cart-totals-total .v-total-amount {
  float: right;
}

.v-cart-overview .v-cart-totals .v-cart-totals-total .v-bag-count {
  font-weight: 300;
}

.v-cart-overview .v-cart-totals .v-cart-totals-sub-total {
  display: none;
}

.v-cart-overview .v-cart-totals .v-cart-totals-tax-total {
  display: none;
}

.v-cart-overview .v-cart-totals .v-cart-totals-shipping-total {
  display: none;
}

.v-cart-overview .v-btn-prev {
  grid-area: cartPrevBtn;
}

.v-cart-overview .v-btn-prev button {
  height: auto;
}

.v-cart-overview .v-btn-next {
  grid-area: cartNextBtn;
}

.v-cart-overview .v-btn-next button {
  width: 120px;
}

.v-cart-overview .v-bag .v-bag-skus.single .v-bag-sku {
  display: grid;
  grid-template-areas:
  "cartProductThumb"
  "cartProductName"
  "cartProductQty";
  grid-template-columns:1fr;
  margin-bottom: 15px;
}

.v-cart-overview .v-bag .v-bag-skus.single .v-bag-sku-thumb {
  grid-area: cartProductThumb;
  height: 50px;
  width: 50px;
  margin: 0 auto;
  margin-bottom: 10px;
}

.v-cart-overview .v-bag .v-bag-skus.single .v-bag-sku .v-bag-sku-name {
  grid-area: cartProductName;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1px;
  text-align: center;
}

.v-cart-overview .v-bag .v-bag-skus.single .v-bag-sku .v-bag-sku-brand {
  display: none;
}

.v-cart-overview .v-bag .v-bag-skus.single .v-bag-sku .v-bag-sku-price {
  grid-area: cartProductPrice;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.1px;
  display: none;
  text-align: center;
}

.v-cart-overview .v-bag .v-bag-skus.single .v-bag-sku .v-bag-sku-qty {
  grid-area: cartProductQty;
  display: inline-block;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 15px;
  text-align: center;
  margin-top: 3px;
}

.v-cart-overview .v-bag .v-bag-skus.multi {
  border-left: 2px solid #111;
  border-right: 2px solid #111;
  padding: 0 8px;
}


.v-cart-overview .v-bag .v-bag-skus.multi .v-bag-sku {
  display: grid;
  grid-template-areas:
  "baggedProductThumb baggedProductName baggedProductName"
  "baggedProductThumb baggedProductBrand baggedProductBrand"
  "baggedProductThumb baggedProductOpts baggedProductPrice";
  grid-template-columns: 60px 1fr min-content;
  grid-template-rows: max-content;
  border: 1px solid #111;
  box-sizing: border-box;
  margin-bottom: 10px;
}

.v-cart-overview .v-bag .v-bag-skus.multi .v-bag-sku:last-child {
  margin-bottom: 0px;
}

.v-cart-overview .v-bag .v-bag-skus.multi .v-bag-sku-thumb {
  width: 50px;
  height: 50px;
  grid-area: baggedProductThumb;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  margin: 10px 5px 10px 10px;
}

.v-cart-overview .v-bag .v-bag-skus.multi .v-bag-sku .v-bag-sku-name {
  grid-area: baggedProductName;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1px;
  padding-left: 10px;
  padding-top: 8px;
  padding-bottom: 5px;
  line-height: 13px;
}

.v-cart-overview .v-bag .v-bag-skus.multi .v-bag-sku .v-bag-sku-brand {
  grid-area: baggedProductBrand;
  font-size: 12px;
  font-weight: 500;
  padding-left: 10px;
}

.v-cart-overview .v-bag .v-bag-skus.multi .v-bag-sku .v-bag-sku-price {
  grid-area: baggedProductPrice;
  font-size: 12px;
  font-weight: bold;
  padding: 4px 10px 10px 0;
  line-height: 15px;
  letter-spacing: 1.5px;
}

.v-cart-overview .v-bag .v-bag-skus.multi .v-bag-sku .v-bag-sku-qty {
  grid-area: baggedProductOpts;
  font-size: 12px;
	font-weight: 500;
	letter-spacing: 1.5px;
	line-height: 15px;
  padding: 4px 0 10px 10px;
}
.v-cart-overview .v-bag .v-bag-shipping-method.multi {
  border-left: 2px solid #111;
  border-right: 2px solid #111;
  padding: 0 8px;
  display: grid;
  grid-template-columns: 30px 1fr min-content;
  grid-template-areas:
  "smIcon smLabel smPrice";
  align-items: center;
  padding-top: 10px;
}

.v-cart-overview .v-bag .v-bag-shipping-method.multi .v-bag-sm-icon {
  margin-bottom: 0px;
}

.v-cart-overview .v-bag .v-bag-shipping-method.multi .v-bag-sm-icon img {
  display: block
}

.v-cart-overview .v-bag .v-bag-shipping-method.multi .v-bag-sm-label {
  margin-bottom: 0px;
  font-size: 10px;
}


.v-cart-overview .v-bag .v-bag-shipping-method.single .v-bag-sm-label {
  text-align: center;
}



/* SUCCSS */
.v-co-success {
  padding:0 ;
  max-height: 360px;
  background: #111111;
}
.v-success-view {
  height: 100%;
  text-align: center;
  display: grid;
  min-height: 360px;
  min-height: -webkit-fill-available;
  grid-template-rows: min-content min-content min-content min-content 1fr;
  grid-template-areas:
  "cartHeader"
  "successOrderNo"
  "successMessage"
  "successMerchants"
  "successSupport"
  "successFoot";
  overflow-y: scroll;
  overflow-x: hidden;
  height: calc(100% - 80px);
}

.v-success-view .v-success-icon {
  height: 64px;
  margin-bottom: 20px;
}

.v-success-view .v-success-icon img {
  height: 64px;
  width: : 64px;
}

.v-success-view .v-success-msg {
  font-size: 12px;
  letter-spacing: 0.86px;
  line-height: 20px;
  text-align: center;
  font-weight: 400;
  margin-bottom: 5px;
  grid-area: successMessage
}

.v-success-view .v-success-merchants {
  grid-area: successMerchants;
  margin-top: 20px;
  margin-bottom: 30px;
}

.v-success-view .v-success-merchants ul {
  list-style: none;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  padding: 0px;
}

.v-success-view .v-success-merchants ul li {
  text-decoration: underline;
  font-size: 12px;
}

.v-success-view .v-success-support {
  grid-area: successSupport;
  font-size: 12px;
  letter-spacing: 0.86px;
  line-height: 20px;
}

.v-success-view .v-success-order-no {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 1.5px;
  grid-area: successOrderNo;
  margin-bottom: 25px;
}

.v-success-view .v-success-order-no span:first-child {
  display: block;
  font-size: 24px;
	font-weight: bold;
	letter-spacing: 0.2px;
}

.v-success-view .v-success-order-no span.v-order-no {
	font-size: 24px;
	font-weight: 500;
	letter-spacing: 0.2px;
}


.v-success-view .v-success-foot {
  grid-area: successFoot;
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  background: #fff;
  height: 100px;
  box-sizing: border-box;
  padding: 26px 0;
  border-top: 1px solid #ddd
}

.v-success-view .v-success-foot .v-success-foot-label {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 1.8px;
  line-height: 30px;
  text-align: center;
  text-transform: uppercase;
}

.v-success-view .v-success-foot .v-success-foot-msg {
  font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1px;
	line-height: 15px;
	text-align: center;
}

/* @media all and (max-width: 650px) and (min-width: 521px) {
  .v-cart-overview .v-cart-totals .v-cart-totals-total {
    font-size: 24px;
    letter-spacing: .75px;
  }

  .v-cart-overview .v-bag .v-bag-totals {
    font-size: 12px;
  }

  .v-cart-overview .v-bag {
    grid-column-gap: 10px;
  }

  .v-cart-overview .v-bag-sku {
    grid-column-gap: 5px;
  }

  .v-cart-overview .v-secure-checkout img {
    display: block;
    margin: 0 auto;
    margin-bottom: 10px;
  }
} */

/* @media all and (max-width: 520px) {
  .v-cart-overview {
    grid-template-columns: 1fr;
    grid-template-areas:
    "cartTotals"
    "cartError"
    "cartAddresses"
    "cartPaymentMethod"
    "cartBags"
    "cartPrevBtn"
    "cartSecureCheckout"
    "cartNextBtn";
  }
  .v-cart-overview .v-cart-totals {
    width: 100%;
    box-sizing: border-box;
  }


  .v-cart-overview .v-cart-totals .v-cart-totals-total {
    font-size: 18px;
    letter-spacing: .5px;
  }


  .v-cart-overview .v-cart-addresses {
    grid-template-columns: 1fr;
    padding-left: 0;
  }

  .v-cart-overview .v-cart-addresses .v-s-addr,
  .v-cart-overview .v-cart-addresses .v-b-addr,
  .v-cart-overview .v-pm {
    margin: 0 auto;
    width: 170px;
  }

  .v-cart-review .v-cart-addresses .v-s-addr {
    margin-bottom: 15px;
  }

   .v-cart-overview .v-cart-addresses .v-b-addr {

   }

   .v-cart-overview .v-pm {
     padding-right: 0px;
   }

   .v-cart-overview .v-bag {
     grid-template-columns: 1fr;
   }

   .v-cart-overview .v-bag .v-bag-totals {
     display: none;
   }

   .v-cart-overview .v-btn-prev {
     display: none;
   }

   .v-cart-overview .v-secure-checkout {
     text-align: center;
   }

   .v-cart-overview .v-btn-wrap.v-btn-next {
      width: 100%;
      background: transparent;
      box-sizing: border-box;
      padding: 0px;
   }
   .v-cart-overview .v-btn-wrap.v-btn-next button {
     background: #6d32da;
     color: #fff;
   }
} */


/* ERRORS FULL */
.v-co-error {
  padding:0 ;
  max-height: 360px;
  background: #111111;
}

.v-error-view {
  font-family: Montserrat!important;
  background: #111111;
  color: #eeeeee;
  height: 100%;
  text-align: center;
  display: grid;
  align-items: center;
  align-content: center;
  min-height: 360px;
  min-height: -webkit-fill-available;
  position: fixed;
  right: 0;
  top: 0;
  width: 340px;
  overflow-y: scroll;
  overflow-x: hidden;
  height: calc(100% - 80px);
  grid-template-rows: min-content min-content min-content min-content min-content;
}

.v-error-view .v-error-icon {
  height: 64px;
  margin-bottom: 20px;
}

.v-error-view .v-error-icon img {
  height: 64px;
  width: : 64px;
}

.v-error-view .v-error-body {
  font-size: 36px;
  font-weight: 700;
  letter-spacing: 1.5px;
  margin-bottom: 5px
}

.v-error-view .v-error-cause {
  margin-top: 60px;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 1.2px;
}


.v-input.error {
  color: #F1534D!important;
  border-color: #F1534D!important
}

.v-input-error {
  position: absolute;
  text-align: center;
  width: 100%;
  left: 0;
  color: #F1534D;
  font-size: 8px;
  font-weight: 500;
  letter-spacing: 1.2px;
  margin-top: 2px;
}

.v-noselect {
  -webkit-touch-callout: none;
    -webkit-user-select: none;
     -khtml-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
}


.loading-preview {
  width: 100%;
  display: grid;
  height: 100%;
  align-items: center;
  align-content: center;
  text-align: center;
  animation: fadein 2s;
}

.loading-preview img {
  transform: rotate(180deg);
  margin: 0 auto;
  display: inline-block;
  width: 100px;
  height: 100px;
}

.v-pdp {
  animation: fadein 1s;
}

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

#v-product-cart-controls .v-cart-controls-powered-by {
    margin-top:15px;
}
#v-product-cart-controls {
  padding: 30px 0;
}

.v-powered-by {
  position: absolute;
  width: 100%;
  top: -40px;
}


/* ----------- iPhone 6+, 7+ and 8+ ----------- */
/* Portrait and Landscape */
@media all
  and (min-width: 320px)
  and (max-width: 736px) {
    .v-checkout {
        width: 100%;
    }

    .v-cart-controls-gradient {
      display: none;
    }

    input, select {
      font-size: 16px!important;
    }

    .v-address-form > div {
      padding: 16px 0;
    }
}
