.cxa-shoppingcartpromotion-component .component-content .promo-code-form {
  width: 100%; }
  .cxa-shoppingcartpromotion-component .component-content .promo-code-form input:focus {
    border: 1px solid #adadad !important; }

.cart {
  overflow: hidden;
  padding-top: 80px;
  background: linear-gradient(to right, #F9F9F9 0%, #F9F9F9 55%, #FFFFFF 55%, #FFFFFF 100%);
  /* -----------------------------------------------------------------------------
    CART - MAIN
    ----------------------------------------------------------------------------- */
  /* -----------------------------------------------------------------------------
    CART - SIDEBAR
    ----------------------------------------------------------------------------- */
  /* -----------------------------------------------------------------------------
    CART - EMPTY
    ----------------------------------------------------------------------------- */ }
  .preheader-is-visible .cart {
    padding-top: 110px; }
  .cart .main {
    padding-top: 50px;
    padding-bottom: 50px; }
    .cart .main h1 {
      font-size: 20px;
      line-height: 30px;
      font-weight: 600;
      margin-bottom: 32px; }
    .cart .main .product-card {
      background: #FFFFFF;
      border: 1px solid #adadad;
      margin-bottom: 16px;
      padding: 20px 24px;
      border-radius: 4px; }
      .cart .main .product-card:last-child {
        margin-bottom: 0; }
      .cart .main .product-card h4 {
        font-size: 13px;
        line-height: 20px;
        margin-bottom: 0; }
      .cart .main .product-card p {
        font-size: 11px;
        line-height: 17px;
        margin-bottom: 0;
        color: #5C5C5C; }
      .cart .main .product-card .edit-quantity {
        margin-top: 25px; }
        .cart .main .product-card .edit-quantity button {
          -webkit-appearance: none;
          border: none;
          background: none;
          width: 30px;
          height: 50px;
          text-align: center;
          cursor: pointer;
          padding: 0; }
        .cart .main .product-card .edit-quantity input {
          height: 50px;
          width: 30px;
          text-align: center;
          border: none;
          font-size: 12px;
          line-height: 20px;
          color: #5C5C5C;
          margin-right: -14px; }
        .cart .main .product-card .edit-quantity .decrease-quantity svg {
          height: 10px;
          width: 10px; }
          .cart .main .product-card .edit-quantity .decrease-quantity svg path {
            fill: #5C5C5C; }
        .cart .main .product-card .edit-quantity .increase-quantity svg {
          height: 10px;
          width: 10px; }
          .cart .main .product-card .edit-quantity .increase-quantity svg path {
            fill: #5C5C5C; }
      .cart .main .product-card.product-in-cart .text-right a,
      .cart .main .product-card.product-in-cart .text-right p {
        position: absolute; }
      .cart .main .product-card.product-in-cart .remove-product {
        top: 0;
        right: 15px; }
        .cart .main .product-card.product-in-cart .remove-product svg {
          height: 10px;
          width: 10px;
          stroke: #333333; }
      .cart .main .product-card.product-in-cart .product-price {
        bottom: 0;
        right: 15px;
        line-height: 50px; }
  .cart .sidebar {
    position: relative;
    padding-top: 50px;
    padding-bottom: 50px; }
    .cart .sidebar .form-group {
      margin: 16px 0; }
    .cart .sidebar .order-summary {
      z-index: 1;
      border-radius: 4px;
      border: 1px solid #adadad;
      transition: position .5s ease-in-out, top .5s ease-in-out; }
      .cart .sidebar .order-summary.bottom {
        bottom: 50px; }
      .cart .sidebar .order-summary .promo-code-form {
        display: flex; }
        .cart .sidebar .order-summary .promo-code-form input {
          border-top-right-radius: 0px;
          border-bottom-right-radius: 0px;
          border-right: none; }
        .cart .sidebar .order-summary .promo-code-form .btn {
          height: 60px;
          border-radius: 4px;
          margin: 0;
          border-top-left-radius: 0px;
          border-bottom-left-radius: 0px;
          background: #333333;
          color: #FFFFFF;
          font-size: 13px;
          line-height: 20px;
          font-weight: 600;
          width: 90px;
          transition: all 200ms ease-in-out; }
          .cart .sidebar .order-summary .promo-code-form .btn:hover {
            opacity: 0.8; }
      .cart .sidebar .order-summary .promo {
        font-size: 12px;
        line-height: 20px;
        color: #5C5C5C;
        display: flex; }
        .cart .sidebar .order-summary .promo span {
          padding: 0 10px;
          position: relative; }
          .cart .sidebar .order-summary .promo span:first-child {
            padding-left: 0; }
          .cart .sidebar .order-summary .promo span:after {
            content: '';
            width: 1px;
            height: 10px;
            display: block;
            background: #5C5C5C;
            position: absolute;
            top: 5px;
            right: 0; }
        .cart .sidebar .order-summary .promo a {
          padding: 0 0 0 10px; }
        .cart .sidebar .order-summary .promo .promo--code:before {
          content: '';
          background: url("../images/dist/icon-small-tag.svg");
          height: 17px;
          width: 17px;
          background-size: 17px 17px;
          display: inline-block;
          margin-right: 10px;
          vertical-align: middle; }
    .cart .sidebar .order-total {
      display: flex;
      justify-content: space-between;
      align-content: center; }
      .cart .sidebar .order-total .order-total--value {
        font-weight: 600; }
    .cart .sidebar .submit-order {
      height: 44px;
      display: block;
      margin: 16px 0 0 0;
      background: #039BE5;
      color: #FFFFFF;
      font-size: 13px;
      font-weight: 600;
      line-height: 20px;
      text-align: center;
      width: 100%; }
      .cart .sidebar .submit-order:hover {
        background: #038acc; }
    .cart .sidebar .form-block {
      margin-bottom: 0;
      padding: 24px 30px;
      border-bottom: 1px solid #adadad; }
      .cart .sidebar .form-block h2 {
        font-size: 16px;
        line-height: 24px;
        color: #333333;
        margin-bottom: 0; }
      .cart .sidebar .form-block h4 {
        font-size: 13px;
        line-height: 20px;
        margin-bottom: 0; }
      .cart .sidebar .form-block p {
        font-size: 13px;
        line-height: 20px;
        margin: 0; }
      .cart .sidebar .form-block a {
        color: #5C5C5C;
        text-decoration: underline; }
        .cart .sidebar .form-block a:hover {
          text-decoration: none; }
      .cart .sidebar .form-block:last-child {
        border-bottom: none; }
      .cart .sidebar .form-block.header {
        background: #F9F9F9;
        padding: 16px;
        border-top-left-radius: 4px;
        border-top-right-radius: 4px; }
      .cart .sidebar .form-block.shipping-method {
        display: flex;
        justify-content: space-between;
        align-items: center; }
    .cart .sidebar table {
      margin-bottom: 0; }
      .cart .sidebar table td {
        border: none;
        font-size: 12px;
        line-height: 30px;
        padding: 0; }
  .cart.empty {
    background: #FFFFFF; }
    .cart.empty h3 {
      max-width: 80%;
      margin: 0 auto 75px auto; }
    .cart.empty .sad-face {
      display: block;
      height: 62px;
      width: 62px;
      margin: 77px auto 55px auto; }
    .cart.empty .btn {
      width: auto;
      padding-left: 40px;
      padding-right: 40px;
      margin: 0; }

@media (max-width: 768px) {
  .order-summary {
    /* unset sticky menu */
    position: static !important; }
  .cart {
    background: #FFFFFF;
    overflow: hidden;
    padding-top: 80px;
    /* -----------------------------------------------------------------------------
        CART - EMPTY
        ----------------------------------------------------------------------------- */ }
    .preheader-is-visible .cart {
      padding-top: 0; }
    .cart .main {
      padding: 24px 0 50px 0; }
      .cart .main h1 {
        padding: 0 15px;
        margin-bottom: 24px; }
      .cart .main .product-card {
        border-radius: 0;
        border: none;
        border-bottom: 1px solid #adadad;
        margin-bottom: 0; }
        .cart .main .product-card:first-of-type {
          border-top: 1px solid #adadad; }
    .cart .sidebar {
      /* unset sticky menu */
      height: auto !important; }
    .cart.empty {
      background: #FFFFFF; }
      .cart.empty h3 {
        max-width: none;
        margin: 0 auto 35px auto; }
      .cart.empty .sad-face {
        display: block;
        height: 62px;
        width: 62px;
        border-radius: 100%;
        background: #EEEEEE;
        margin: 35px auto 35px auto; } }

@media (max-width: 576px) {
  .hidden-sm-down {
    display: none; }
  .cart {
    background: #F9F9F9; }
    .cart .main {
      background: #FFFFFF;
      padding-bottom: 0; }
    .cart .sidebar {
      padding: 0;
      margin-top: 55px; }
      .cart .sidebar:after {
        content: '';
        display: none; }
      .cart .sidebar .order-summary {
        border-radius: 0px;
        border-right: 0;
        border-left: 0; }
        .cart .sidebar .order-summary .order-total-wrap {
          margin-top: 36px;
          border-bottom: none;
          border-top: 1px solid #adadad; }
      .cart .sidebar .form-block {
        background: #FFFFFF; }
        .cart .sidebar .form-block.header {
          display: none; } }
