/* Cart */
#cart-page {
  --col_spacing: 80px;
  --cart_product_spacing: 15px;
  --cart_product_image: 60px;
  --cart_product_qty: 50px;
  --totals_width: 360px;
  --totals_padding: 32px;
  --totals_spacing: 24px;
}

#cart-page .message {
  margin-bottom:32px;
}

#cart-page .page-wrap {
  display: flex;
}

#cart-page .page-wrap .col-main {
  min-width: calc(100% - var(--totals_width));
  max-width: calc(100% - var(--totals_width));
  padding-right: var(--col_spacing);
}

#cart-page .page-wrap .col-totals {
  min-width: var(--totals_width);
  max-width: var(--totals_width);
  display:flex;
  flex-direction: column;
  gap:24px;
}

#cart-page .cart-products {
  width: 100%;
}

#cart-page .cart-products td:first-child {
  width:0;
}

#cart-page .cart-products td:not(:last-child),
#cart-page .cart-products th:not(:last-child) {
  padding-right:32px;
}

#cart-page .cart-products tr th {
	color: var(--black);
}

#cart-page .cart-products tr th:first-child {
	text-align: left;
}

#cart-page .cart-products tr td {
	padding-top: var(--cart_product_spacing);
}

#cart-page .cart-products tr:not(:last-child) td {
  padding-bottom: var(--cart_product_spacing);
  border-bottom: 1px solid var(--grey_border);
}

#cart-page .cart-products tr td.image {
	width: var(--cart_product_image);
}
#cart-page .cart-products .image-wrap {
  background: #fff;
  border-radius: var(--border_radius);
  overflow: hidden;
  padding: 5%;
}

#cart-page .cart-products .info {
	padding-left: 15px;
}

#cart-page .cart-products .info .title {
	font-weight: bold;
  color: var(--black);
}

#cart-page .cart-products .info .extra-info {
	font-size: .9em;
  margin-top: 5px;
}

#cart-page .cart-products .info .quantity-mobile {
	margin-top: 5px;
}

#cart-page .cart-products .delete {
	display: block;
  padding-left: 15px;
}

#cart-page .totals-wrap {
  padding: var(--totals_padding);
  border-radius: var(--border_radius);
}

#cart-page .totals-wrap:not(.block-gray) {
	background: #fff;
}

#cart-page .totals-wrap .gift-card {
	margin-bottom: var(--totals_spacing);
}

#cart-page .totals-wrap .add-discount,
#cart-page .totals-wrap .add-gift-card {
	display: flex;
  align-items: center;
}

#cart-page .totals-wrap .add-discount input,
#cart-page .totals-wrap .add-gift-card input {
	flex-grow: 10;
  background: #fff;
  margin-right: 10px;
  border:1px solid var(--grey_border);
}

#cart-page .totals-wrap .add-discount .submit-btn,
#cart-page .totals-wrap .add-gift-card .submit-btn {
	min-width: var(--input_height);
  max-width: var(--input_height);
  height: var(--input_height);
  background: var(--accent);
  border-radius: var(--border_radius);
  color: #fff;
  font-size: 1.4em;
  display: flex;
  align-items: center;
  justify-content: center;
}

#cart-page .totals-wrap .total-prices {
	margin-bottom: var(--totals_spacing);
  width: 100%;
}

#cart-page .totals-wrap .total-prices tr td {
	padding-bottom: 10px;
}

#cart-page .totals-wrap .total-prices tr td:first-child {
	font-weight: bold;
  color: var(--black);
}

#cart-page .totals-wrap .total-prices tr td:last-child {
	text-align: right;
}

#cart-page .totals-wrap .total-prices tr:not(:first-child) td {
	padding-top: 10px;
  border-top: 1px solid var(--grey_border);
}

#cart-page .totals-wrap .btn-wrap .btn {
	width: 100%;
}

#cart-page .totals-wrap .btn-wrap .btn:not(:last-child) {
	margin-bottom: 15px;
}

#cart-page .totals-wrap .btn-wrap .btn.to-checkout {
	background: var(--green);
}

#cart-page .totals-wrap .btn-wrap .btn.paypal {
	background: #ffc439;
  color: #003087;
}

/* cartproduct */
.cartproduct__info {
  max-width:450px;
}
.cartproduct__image {
  width:100px;
  padding:10%;
  border-radius: var(--border_radius);
  background:#fff;
}
.cartproduct__image img {
  width:100%;
}
.cartproduct__price {
  font-weight:bold;
}
/* end cartproduct */

#cart-page .order-from-box {
  display: flex;
  align-items: center;
  gap: 6px;
  padding-top: 12px;
  justify-content: center;
}

/* Tooltip icoon */
#cart-page .order-from-box .tooltip {
  position: relative; 
  background: var(--accent);
  width: 18px;
  height: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  border-radius: 50%;
  opacity: 1;
}

#cart-page .order-from-box .tooltip svg {
  width: 70%;
  height: auto;
}

#cart-page .order-from-box .tooltip-message {
  position: absolute;
  bottom: 125%; 
  left: 50%;
  transform: translateX(-50%);
  background: #333;
  color: #fff;
  font-size: 13px;
  padding: 6px 8px;
  border-radius: 6px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
  z-index: 10;
}

#cart-page .order-from-box .tooltip-message::after {
  content: "";
  position: absolute;
  top: 100%; /* onderaan de tooltip */
  left: 50%;
  transform: translateX(-50%);
  border-width: 5px;
  border-style: solid;
  border-color: #333 transparent transparent transparent;
}

#cart-page .order-from-box .tooltip:hover .tooltip-message {
  opacity: 1;
  pointer-events: auto;
}

#cart-page .to-checkout.disabled-under-limit {
	pointer-events: none;  
  opacity: 0.5;        
  cursor: not-allowed;
}

@media (max-width: 1199px) {
	#cart-page {
    --col_spacing: 30px;
    --cart_product_spacing: 15px;
    --cart_product_image: 60px;
    --cart_product_qty: 40px;
    --totals_width: 350px;
    --totals_padding: 25px;
    --totals_spacing: 25px;
  }
}

@media (max-width: 991px) {
  #cart-page {
    --cart_product_spacing: 10px;
    --cart_product_image: 40px;
    --totals_width: 100%;
    --totals_padding: 25px;
    --totals_spacing: 25px;
  }
  
  #cart-page .page-wrap {
  	flex-direction: column;
  }
  
  #cart-page .page-wrap .col-main {
    min-width: 100%;
    max-width: 100%;
    padding-right: 0;
    padding-bottom: var(--col_spacing);
  }
}

@media (max-width: 767px) {
  #cart-page .totals-wrap {
  	margin-left: -15px;
    margin-right: -15px;
  }
  #cart-page .cart-products td:not(:last-child), #cart-page .cart-products th:not(:last-child) {
    padding-right:16px;
  }
  .cartproduct__image {
    width:48px;
  }
  .cartproduct .quantity {
    margin-top:8px;
  }
}
/* End cart */

/* Feedback styling */
/* Begin styling product bundles */
.cartproduct__info .bundled{
  margin-top: 20px;
}

.cartproduct__info .bundled i{
  color: var(--green);
  font-size: 20px;
}

.cartproduct__info .bundled li{
  display: flex;
  align-items: center;
  gap: 10px;
}