.main-cart {
  width: 100%;
  height: auto;
  color: rgba(0, 0, 0, 0.8);
  background-image: url("images/dinner1.jpg");
  background-position: center;
  background-size: cover;
  padding: 0 0 1em 0;
}

.main-cart .overlay {
  width: 90%;
  height: auto;
  padding: 2em 1em;
  background-color: rgba(255, 255, 255, 0.95);
  border-radius: 1em;
  margin: 1em auto;
  box-sizing: border-box;
  font-size: 1.2em;
}

#cart table {
  width: 100%;
}

#cartList tr {
  width: 100%;
  display: flex;
}

#cartList td {
  padding: 0.5em;
  width: 100%;
}

#cartList tr td.cart-img {
  display: none;
}

#cartList tr td.cart-price {
  width: 20%;
}

#cartList tr td #cart-img-frame {
  width: 5em;
  height: 5em;
  margin: 0 2em;
  border-radius: 1em;
  overflow: hidden;
  position: relative;
}

#cartList tr td #cart-img-frame img {
  width: 150%;
  height: auto;
  position: absolute;
}

.cart-wrap-counter {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

#minus,
#plus {
  width: 1.5em;
  height: 1.5em;
  background-color: rgb(255, 196, 0);
  border-radius: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 0.5em;
  cursor: pointer;
}

.remove-item {
  width: 100%;
  color: rgba(255, 0, 0, 0.6);
  border: none;
  text-align: center;
  cursor: pointer;
}

.payment {
  width: 70%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.subtotal-to-pay {
  width: 100%;
  margin: 1em 0 0 auto;
  display: flex;
  justify-content: space-between;
}

.tip-to-pay {
  width: 100%;
  margin: 1em 0 0 auto;
  display: flex;
  justify-content: space-between;
}

.tip-btn-group {
  width: 40%;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  position: relative;
}

.tip-btn-header {
  width: 100%;
  padding: 0;
  background-color: rgba(255, 255, 255, 0.2);
  text-align: end;
  box-sizing: border-box;
}

.tip-btn-group-options {
  width: 100%;
  top: -4em;
  left: 0em;
  position: absolute;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.4);
  display: none;
    
}

.tip-btn {
  padding: 0.5em 1em 0.5em 1em;
  text-align: end;
  box-sizing: border-box;
  background-color: rgb(250, 250, 250, 1);
  border-bottom: 1px rgb(70, 70, 70) solid;
  font-size: 1em;
}

.total-to-pay {
  width: 100%;
  margin: 1em 0 0 auto;
  display: flex;
  justify-content: space-between;
}

.get-checkout {
  width: 100%;
  text-align: center;
  padding: 0.5em 0;
  color: rgba(255, 255, 255, 0.8);
  background-color: rgb(77, 179, 9);
  border-radius: 1em;
  font-size: 1.2em;
}

@media screen and (min-width: 600px) {
  #cartList tr td.cart-img {
    display: flex;
  }

  #cartList tr td.cart-price {
    width: 100%;
  }

  .payment {
    width: 70%;
    margin: 1em auto;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }

  .subtotal-to-pay,
  .tip-to-pay,
  .total-to-pay {
    width: 100%;
  }
}

@media screen and (min-width: 1000px) {
  #cartList tr td.cart-img {
    display: flex;
  }

  .payment {
    width: 80%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-end;
  }

  .subtotal-to-pay,
  .tip-to-pay,
  .total-to-pay,
  .get-checkout {
    width: 40%;
  }
}

@media screen and (min-width: 1700px) {
  #cartList tr td.cart-img {
    display: flex;
  }

  .main-cart .overlay {
    width: 70%;
  }

  .main-cart {
    font-size: 1.8em;
  }
}
