#vol-push-cart {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 20;
  max-width: 320px;
  height: 100%;
  transform: translate3d(100%, 0, 0);
  transition: 0.5s all ease;
  visibility: visible;
  background-color: white;
  color: #000; }
  #vol-push-cart:after {
    background: rgba(0, 0, 0, 0.15); }
  #vol-push-cart .push-cart__inner {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    background-color: inherit;
    height: 100%; }
  #vol-push-cart .push-cart__header, #vol-push-cart .push-cart__body, #vol-push-cart .push-cart__footer {
    position: relative;
    width: 100%;
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; }
  #vol-push-cart .push-cart__header, #vol-push-cart .push-cart__footer {
    padding: 10px 15px; }
  #vol-push-cart .push-cart__header {
    background-color: inherit;
    border-bottom: 1px solid #bbbbbb;
    cursor: pointer; }
    #vol-push-cart .push-cart__header .push-cart__title {
      margin: 0; }
  #vol-push-cart .push-cart__body {
    -ms-flex: 1 0 0vh;
        flex: 1 0 0vh;
    overflow-y: auto; }
  #vol-push-cart .push-cart__footer {
    background-color: inherit;
    -ms-flex-item-align: end;
        align-self: flex-end;
    font-size: 14px;
    border-top: 1px solid #bbbbbb; }
    #vol-push-cart .push-cart__footer.push-cart__footer--focus-mobile {
      position: fixed;
      bottom: 0;
      z-index: 21;
      display: block;
      background-color: #fff;
      -ms-flex-item-align: normal;
          -ms-grid-row-align: normal;
          align-self: normal; }
    #vol-push-cart .push-cart__footer--coupon-wrap {
      background-color: #e9e9e9;
      margin-bottom: 10px;
      background-image: linear-gradient(#e9e9e9 12vh, #c9c9c9 100%);
      max-height: 15vh;
      transition: 0.5s background color ease;
      overflow-y: auto; }
    #vol-push-cart .push-cart__footer--trigger {
      text-align: center;
      font-weight: 600;
      cursor: pointer;
      display: block;
      color: #3b3b3b; }
    #vol-push-cart .push-cart__footer--coupon-list {
      margin-bottom: 0; }
    #vol-push-cart .push-cart__footer .alert {
      margin-bottom: 5px; }
    #vol-push-cart .push-cart__footer__control {
      padding-top: 10px; }
  #vol-push-cart .push-cart__coupon-info, #vol-push-cart .push-cart__coupon-text, #vol-push-cart .push-cart__coupon-amt, #vol-push-cart .push-cart__coupon-remove {
    display: inline-block;
    vertical-align: top;
    margin-right: -4px; }
  #vol-push-cart .push-cart__coupon-item {
    padding: 5px 8px; }
    #vol-push-cart .push-cart__coupon-item:nth-child(even) {
      background-color: rgba(255, 255, 255, 0.4); }
  #vol-push-cart .push-cart__coupon-info {
    width: 90%; }
  #vol-push-cart .push-cart__coupon-text {
    width: 70%; }
  #vol-push-cart .push-cart__coupon-amt {
    width: 30%;
    text-align: center; }
  #vol-push-cart .push-cart__coupon-remove {
    width: 10%;
    text-align: center; }
  #vol-push-cart .push-cart__coupon-remove .icon {
    width: 14px;
    height: 14px;
    transform: rotate(angle); }
  #vol-push-cart .push-cart__coupon .apply-coupon {
    padding: 9px 16px;
    font-weight: 400;
    border-radius: 0;
    cursor: pointer;
    transition: 0.5s background-color ease; }
  #vol-push-cart .push-cart__checkout {
    font-weight: 700;
    font-size: 14px;
    padding-top: 10px;
    padding-bottom: 10px;
    width: 49%; }
  #vol-push-cart .push-cart__item {
    position: relative;
    padding: 15px;
    transition: 0.5s all ease; }
    #vol-push-cart .push-cart__item:not(:first-child) {
      border-top: 1px solid #eeeeee; }
    #vol-push-cart .push-cart__item:last-child {
      border-bottom: 1px solid #eeeeee; }
    #vol-push-cart .push-cart__item[data-is-product="N"] {
      border-top: none;
      padding-top: 0; }
      #vol-push-cart .push-cart__item[data-is-product="N"] .push-cart__item__price {
        display: block;
        text-align: right; }
      #vol-push-cart .push-cart__item[data-is-product="N"] .push-cart__item--bottom {
        display: none; }
      #vol-push-cart .push-cart__item[data-is-product="N"] .push-cart__item__details {
        padding-right: 0; }
      #vol-push-cart .push-cart__item[data-is-product="N"][data-product-code="SETUP"] a {
        pointer-events: none; }
      #vol-push-cart .push-cart__item[data-is-product="N"][data-product-code="SETUP"] .push-cart__item__img-wrapper {
        display: none; }
      #vol-push-cart .push-cart__item[data-is-product="N"][data-product-code="SETUP"] .push-cart__item__details {
        margin-left: 25%; }
    #vol-push-cart .push-cart__item__price {
      display: none; }
    #vol-push-cart .push-cart__item--top, #vol-push-cart .push-cart__item--bottom {
      position: relative;
      padding: 5px 15px 5px 0; }
    #vol-push-cart .push-cart__item__img {
      max-height: 100px; }
      #vol-push-cart .push-cart__item__img-wrapper {
        width: 25%; }
      #vol-push-cart .push-cart__item__img-anchor {
        display: inline-block;
        max-width: 100%; }
    #vol-push-cart .push-cart__item__details {
      width: 75%;
      padding-right: 10px;
      padding-left: 10px;
      overflow-y: auto;
      max-height: 100px;
      line-height: normal; }
    #vol-push-cart .push-cart__item__title {
      display: block;
      color: #000;
      font-weight: 700;
      margin: 0;
      transition: 0.5s all ease; }
    #vol-push-cart .push-cart__item__options-wrapper {
      padding-top: 5px;
      padding-bottom: 5px; }
    #vol-push-cart .push-cart__item__total {
      display: inline-block;
      float: right;
      width: 55%;
      text-align: right; }
  #vol-push-cart .push-cart__remove {
    position: absolute;
    top: 0;
    right: 0; }
  #vol-push-cart .push-cart__close-menu {
    position: absolute;
    top: 50%;
    left: 15px;
    transform: translateY(-50%); }
  #vol-push-cart .push-cart__empty {
    text-align: center;
    transition: 0.5s all ease; }
  #vol-push-cart .push-cart__btn {
    width: 48%; }
  #vol-push-cart .push-cart__result {
    padding-top: 10px;
    padding-left: 10px;
    padding-bottom: 10px; }
  #vol-push-cart .push-cart__result .icon {
    transform: rotate(45deg);
    font-size: 16px;
    width: 15px;
    height: 15px; }
  #vol-push-cart .push-cart__result--text {
    margin: 0; }
  #vol-push-cart .push-cart__coupon {
    padding-bottom: 10px; }
  #vol-push-cart .push-cart__coupon .form-control {
    height: 40px;
    padding-top: 0;
    padding-bottom: 0;
    border: 1px solid #3b3b3b; }
  #vol-push-cart .push-cart--vol-loader {
    width: 125px;
    height: 125px;
    position: absolute;
    z-index: 12;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: 0.5s opacity ease; }
  #vol-push-cart .push-cart--vol-loader.hide-vol-loader {
    opacity: 0; }
  #vol-push-cart .push-cart--vol-loader__contents {
    position: fixed;
    text-indent: -9999em;
    border-top: 20px solid rgba(255, 255, 255, 0.4);
    border-right: 20px solid rgba(255, 255, 255, 0.4);
    border-bottom: 20px solid rgba(255, 255, 255, 0.4);
    border-left: 20px solid #fff;
    transform: translateZ(0);
    animation: load8 1.1s infinite linear; }
  #vol-push-cart .push-cart__body .push-cart--vol-loader {
    position: absolute; }
  #vol-push-cart .push-cart--vol-loader__contents, #vol-push-cart .push-cart--vol-loader__contents:after {
    position: relative;
    border-radius: 50%;
    width: 100%;
    height: 100%; }
  #vol-push-cart .vol-qty-toggle--decrement, #vol-push-cart .vol-qty-input, #vol-push-cart .vol-qty-toggle-increment {
    height: 30px; }
  #vol-push-cart .vol-qty-input {
    line-height: 10px;
    text-align: center; }
  #vol-push-cart .vol-qty-toggle {
    float: left;
    text-align: center;
    width: 45%; }
    #vol-push-cart .vol-qty-toggle-input {
      text-align: center; }
    #vol-push-cart .vol-qty-toggle .icon {
      width: 14px;
      height: 14px; }
    #vol-push-cart .vol-qty-toggle .input-group-addon {
      padding: 5px 8px;
      cursor: pointer; }
    #vol-push-cart .vol-qty-toggle .input-group-addon:hover {
      background-color: #c8c8c8; }

.push-cart-open .menu-mask {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 15;
  width: 100%;
  height: 100%;
  background: transparent; }

.vol-fade {
  animation: vol-fade 0.5s forwards; }
  .vol-fade-add {
    animation: vol-fade-add 1.25s forwards; }
  .vol-fade-remove {
    animation: vol-fade-remove 0.65s forwards; }

.vol-loading#vol-push-cart:after,
.vol-loading .page-wrap:after,
.push-cart-open .page-wrap:after {
  opacity: 1;
  visibility: visible;
  z-index: 11; }

.page-wrap:after,
#vol-push-cart:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.35);
  content: '';
  opacity: 0;
  visibility: hidden;
  transition: 0.5s all ease, 0s z-index;
  z-index: 1; }

body.push-cart-open {
  position: fixed;
  overflow: hidden;
  height: 100%; }

body[class*='push-cart-open'] #vol-push-cart {
  transform: translate3d(0, 0, 0);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2); }

@keyframes vol-fade-remove {
  0% {
    opacity: 1;
    overflow: hidden; }
  10% {
    max-height: 150px;
    opacity: 0.9; }
  20% {
    max-height: 130px;
    opacity: 0.8; }
  30% {
    max-height: 110px;
    opacity: 0.7; }
  40% {
    max-height: 90px;
    opacity: 0.6; }
  50% {
    max-height: 70px;
    opacity: 0.5; }
  60% {
    max-height: 50px;
    opacity: 0.4; }
  70% {
    max-height: 30px;
    opacity: 0.3; }
  80% {
    max-height: 20px;
    opacity: 0.2; }
  90% {
    max-height: 10px;
    opacity: 0.1; }
  100% {
    opacity: 0;
    max-height: 0px;
    overflow: hidden; } }

@keyframes vol-fade-add {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes vol-fade {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes load8 {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
