.elementor-14 .elementor-element.elementor-element-6697815e{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:34px 34px;--row-gap:34px;--column-gap:34px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:150px;--padding-bottom:80px;--padding-left:40px;--padding-right:40px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-14 .elementor-element.elementor-element-34924ea{text-align:start;}.elementor-14 .elementor-element.elementor-element-34924ea .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:52px;font-weight:600;color:#3B2A22;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-14 .elementor-element.elementor-element-3b29930{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:400;color:#624439;}@media(min-width:768px){.elementor-14 .elementor-element.elementor-element-6697815e{--content-width:1320px;}}@media(max-width:1024px){.elementor-14 .elementor-element.elementor-element-6697815e{--padding-top:130px;--padding-bottom:70px;--padding-left:30px;--padding-right:30px;}.elementor-14 .elementor-element.elementor-element-34924ea .elementor-heading-title{font-size:38px;}}@media(max-width:767px){.elementor-14 .elementor-element.elementor-element-6697815e{--padding-top:110px;--padding-bottom:60px;--padding-left:18px;--padding-right:18px;}.elementor-14 .elementor-element.elementor-element-34924ea .elementor-heading-title{font-size:30px;}}/* Start custom CSS for woocommerce-cart, class: .elementor-element-9e1d065 */.elementor-14 .elementor-element.elementor-element-9e1d065 .e-cart__column-start .e-cart__buttons,
.elementor-14 .elementor-element.elementor-element-9e1d065 .e-cart__column-start .e-cart__buttons button,
.elementor-14 .elementor-element.elementor-element-9e1d065 .e-cart__column-start button,
.elementor-14 .elementor-element.elementor-element-9e1d065 .woocommerce-cart-form__contents .actions {
  display: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6697815e *//* =========================================================
   KIMIMOOI — WARENKORB / CART PAGE CLEAN FINAL
   Replace all old cart CSS with this only
========================================================= */

body.woocommerce-cart {
  background: #fbf6ee !important;
}

/* Main Elementor wrapper */
.km-cart-page {
  width: 100% !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding-top: 150px !important;
  padding-right: 40px !important;
  padding-bottom: 90px !important;
  padding-left: 40px !important;
  background: #fbf6ee !important;
  color: #3b2a22 !important;
}

/* Hide cross-sells */
body.woocommerce-cart .cross-sells {
  display: none !important;
}

/* Elementor cart widget full width */
.km-cart-page .elementor-widget-woocommerce-cart,
.km-cart-page .elementor-widget-woocommerce-cart .elementor-widget-container,
.km-cart-page .woocommerce,
.km-cart-page .e-cart {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Main layout: left cart + right totals */
.km-cart-page .e-cart__container {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 420px !important;
  gap: 34px !important;
  align-items: start !important;
  justify-content: start !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Outer cards */
.km-cart-page .e-cart__column-start,
.km-cart-page .e-cart__column-end {
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  background: #fffaf4 !important;
  border: 1px solid rgba(98, 68, 57, 0.13) !important;
  border-radius: 30px !important;
  padding: 30px !important;
  box-shadow: 0 24px 70px rgba(59, 42, 34, 0.075) !important;
}

/* Remove inner double-card effects */
.km-cart-page .e-shop-table,
.km-cart-page .e-cart-totals,
.km-cart-page .woocommerce-cart-form,
.km-cart-page .woocommerce-cart-form__contents,
.km-cart-page .cart_totals,
.km-cart-page table.shop_table {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Cart table */
.km-cart-page table.shop_table {
  width: 100% !important;
  table-layout: auto !important;
  border-collapse: separate !important;
  border-spacing: 0 18px !important;
}

/* Table header */
.km-cart-page table.shop_table thead th {
  background: transparent !important;
  border: none !important;
  color: #624439 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.075em !important;
  text-transform: uppercase !important;
  padding: 0 10px 12px !important;
  white-space: nowrap !important;
}

/* Product row reset */
.km-cart-page table.shop_table tbody tr.cart_item {
  background: transparent !important;
  box-shadow: none !important;
}

/* Product row cells as one clean card */
.km-cart-page table.shop_table tbody tr.cart_item td {
  background: #ffffff !important;
  border: none !important;
  padding: 18px 10px !important;
  vertical-align: middle !important;
  box-shadow: 0 14px 38px rgba(59, 42, 34, 0.055) !important;
}

/* Rounded card edges */
.km-cart-page table.shop_table tbody tr.cart_item td:first-child {
  border-radius: 22px 0 0 22px !important;
  padding-left: 16px !important;
}

.km-cart-page table.shop_table tbody tr.cart_item td:last-child {
  border-radius: 0 22px 22px 0 !important;
  padding-right: 16px !important;
}

/* Column sizing — IMPORTANT */
.km-cart-page table.shop_table .product-remove {
  width: 38px !important;
  min-width: 38px !important;
}

.km-cart-page table.shop_table .product-thumbnail {
  width: 86px !important;
  min-width: 86px !important;
}

.km-cart-page table.shop_table .product-name {
  width: auto !important;
  min-width: 310px !important;
}

.km-cart-page table.shop_table .product-price {
  width: 86px !important;
  min-width: 86px !important;
}

.km-cart-page table.shop_table .product-quantity {
  width: 76px !important;
  min-width: 76px !important;
}

.km-cart-page table.shop_table .product-subtotal {
  width: 96px !important;
  min-width: 96px !important;
}

/* Product image */
.km-cart-page .product-thumbnail img {
  width: 74px !important;
  height: 74px !important;
  object-fit: cover !important;
  border-radius: 16px !important;
  display: block !important;
}

/* Product title */
.km-cart-page .product-name,
.km-cart-page .product-name a {
  color: #3b2a22 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

/* Rental details — fixed so text does not overlap */
.km-cart-page .variation {
  display: block !important;
  margin: 7px 0 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
  color: #624439 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.km-cart-page .variation dt,
.km-cart-page .variation dd {
  display: inline !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #624439 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.km-cart-page .variation dt {
  font-weight: 800 !important;
}

.km-cart-page .variation dd {
  font-weight: 500 !important;
}

.km-cart-page .variation dd::after {
  content: "";
  display: block;
  height: 2px;
}

/* Price / subtotal */
.km-cart-page .product-price,
.km-cart-page .product-subtotal,
.km-cart-page .amount {
  color: #3b2a22 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

/* Quantity */
.km-cart-page .quantity input.qty {
  width: 54px !important;
  height: 38px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(98, 68, 57, 0.18) !important;
  background: #fbf6ee !important;
  color: #3b2a22 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-align: center !important;
}

/* Remove button */
.km-cart-page a.remove {
  color: #3b2a22 !important;
  background: #fbf6ee !important;
  border: 1px solid rgba(98, 68, 57, 0.18) !important;
  width: 30px !important;
  height: 30px !important;
  line-height: 27px !important;
  border-radius: 999px !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  text-align: center !important;
}

.km-cart-page a.remove:hover {
  background: #3b2a22 !important;
  color: #ffffff !important;
}

/* Actions row */
.km-cart-page td.actions {
  background: transparent !important;
  box-shadow: none !important;
  padding-top: 18px !important;
}

/* Hide coupon */
.km-cart-page .coupon {
  display: none !important;
}

/* Update cart button */
.km-cart-page button[name="update_cart"],
.km-cart-page .actions .button {
  background: #9a8f85 !important;
  color: #ffffff !important;
  border-radius: 999px !important;
  padding: 13px 26px !important;
  border: none !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  box-shadow: none !important;
}

.km-cart-page button[name="update_cart"]:hover,
.km-cart-page .actions .button:hover {
  background: #624439 !important;
}

/* Totals compact */
.km-cart-page .e-cart__column-end {
  width: 420px !important;
  height: fit-content !important;
  min-height: 0 !important;
}

/* Totals title */
.km-cart-page .cart_totals h2,
.km-cart-page .e-cart-totals__title {
  color: #3b2a22 !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  margin: 0 0 28px !important;
}

/* Totals table */
.km-cart-page .cart_totals table,
.km-cart-page .cart_totals table.shop_table {
  width: 100% !important;
  margin: 0 0 26px !important;
  border: none !important;
  background: transparent !important;
  border-collapse: collapse !important;
}

.km-cart-page .cart_totals th,
.km-cart-page .cart_totals td {
  background: transparent !important;
  border: none !important;
  color: #624439 !important;
  padding: 15px 0 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
}

.km-cart-page .cart_totals td {
  text-align: right !important;
}

.km-cart-page .cart_totals .order-total th,
.km-cart-page .cart_totals .order-total td,
.km-cart-page .cart_totals .order-total .amount {
  color: #3b2a22 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

/* Checkout button */
.km-cart-page .wc-proceed-to-checkout {
  padding: 0 !important;
  margin-top: 26px !important;
}

.km-cart-page .wc-proceed-to-checkout .checkout-button,
.km-cart-page .checkout-button {
  width: 100% !important;
  background: #3b2a22 !important;
  color: #ffffff !important;
  border-radius: 999px !important;
  padding: 18px 26px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  text-align: center !important;
  border: none !important;
  box-shadow: none !important;
}

.km-cart-page .wc-proceed-to-checkout .checkout-button:hover,
.km-cart-page .checkout-button:hover {
  background: #624439 !important;
  color: #ffffff !important;
}

/* Empty cart */
.km-cart-page .cart-empty,
.km-cart-page .woocommerce-info {
  background: #fffaf4 !important;
  border: 1px solid rgba(98, 68, 57, 0.14) !important;
  border-radius: 28px !important;
  padding: 36px !important;
  color: #3b2a22 !important;
  text-align: center !important;
}

/* Tablet */
@media (max-width: 1024px) {
  .km-cart-page {
    max-width: 100% !important;
    padding-top: 130px !important;
    padding-right: 30px !important;
    padding-bottom: 70px !important;
    padding-left: 30px !important;
  }

  .km-cart-page .e-cart__container {
    grid-template-columns: 1fr !important;
    gap: 26px !important;
  }

  .km-cart-page .e-cart__column-end {
    width: 100% !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .km-cart-page {
    padding-top: 115px !important;
    padding-right: 18px !important;
    padding-bottom: 60px !important;
    padding-left: 18px !important;
  }

  .km-cart-page .e-cart__column-start,
  .km-cart-page .e-cart__column-end {
    padding: 20px !important;
    border-radius: 22px !important;
  }

  .km-cart-page table.shop_table thead {
    display: none !important;
  }

  .km-cart-page table.shop_table,
  .km-cart-page table.shop_table tbody,
  .km-cart-page table.shop_table tr,
  .km-cart-page table.shop_table td {
    display: block !important;
    width: 100% !important;
  }

  .km-cart-page table.shop_table tbody tr.cart_item {
    background: #ffffff !important;
    border-radius: 22px !important;
    box-shadow: 0 14px 38px rgba(59, 42, 34, 0.055) !important;
    padding: 18px !important;
    margin-bottom: 18px !important;
  }

  .km-cart-page table.shop_table tbody tr.cart_item td {
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 8px 0 !important;
  }

  .km-cart-page .product-thumbnail img {
    width: 100% !important;
    height: 180px !important;
    border-radius: 18px !important;
  }

  .km-cart-page .variation dt,
  .km-cart-page .variation dd {
    display: block !important;
  }

  .km-cart-page .variation dd::after {
    height: 6px;
  }
}
/* =========================================================
   KIMIMOOI — REMOVE WHITE GRADIENT STRIPES FROM CART ITEMS
   Add at the very end of cart CSS
========================================================= */

/* Remove shadow from each table cell — this caused the white gradient stripes */
.km-cart-page table.shop_table tbody tr.cart_item td {
  box-shadow: none !important;
  background: #ffffff !important;
}

/* Make the full product row look like one clean card */
.km-cart-page table.shop_table tbody tr.cart_item {
  background: #ffffff !important;
  border-radius: 22px !important;
  box-shadow: 0 14px 38px rgba(59, 42, 34, 0.055) !important;
  overflow: hidden !important;
}

/* Keep rounded corners on the first and last cells only */
.km-cart-page table.shop_table tbody tr.cart_item td:first-child {
  border-radius: 22px 0 0 22px !important;
}

.km-cart-page table.shop_table tbody tr.cart_item td:last-child {
  border-radius: 0 22px 22px 0 !important;
}

/* Keep the inner card flat and clean */
.km-cart-page .woocommerce-cart-form__contents,
.km-cart-page table.shop_table {
  background: transparent !important;
}

/* Optional: softer product card background */
.km-cart-page table.shop_table tbody tr.cart_item td {
  background-color: #ffffff !important;
}
/* =========================================================
   KIMIMOOI — CART PRODUCT ROW SAFE FIX
   Fix overflow + improve product details without breaking layout
========================================================= */

/* Keep the main cart columns clean */
.km-cart-page .e-cart__container {
  display: grid !important;
  grid-template-columns: minmax(0, 780px) 420px !important;
  gap: 34px !important;
  align-items: start !important;
}

/* Prevent left product card from entering the totals card */
.km-cart-page .e-cart__column-start {
  overflow: hidden !important;
}

/* Keep totals compact */
.km-cart-page .e-cart__column-end {
  width: 420px !important;
  max-width: 420px !important;
  height: fit-content !important;
  align-self: start !important;
}

/* Make table rows controlled and not wider than the card */
.km-cart-page table.shop_table {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: separate !important;
  border-spacing: 0 18px !important;
}

/* Header row grid */
.km-cart-page table.shop_table thead tr {
  display: grid !important;
  grid-template-columns: 38px 82px minmax(0, 1fr) 86px 72px 96px !important;
  align-items: center !important;
}

/* Product item row grid */
.km-cart-page table.shop_table tbody tr.cart_item {
  display: grid !important;
  grid-template-columns: 38px 82px minmax(0, 1fr) 86px 72px 96px !important;
  align-items: center !important;
  background: #ffffff !important;
  border-radius: 22px !important;
  box-shadow: 0 14px 38px rgba(59, 42, 34, 0.055) !important;
  overflow: hidden !important;
}

/* Remove per-cell shadow/stripes */
.km-cart-page table.shop_table tbody tr.cart_item td {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 18px 10px !important;
  min-width: 0 !important;
}

/* Hide empty header cells for remove + thumbnail */
.km-cart-page table.shop_table thead th.product-remove,
.km-cart-page table.shop_table thead th.product-thumbnail {
  visibility: hidden !important;
}

/* Product column must not force overflow */
.km-cart-page table.shop_table .product-name {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
}

/* Product image */
.km-cart-page .product-thumbnail img {
  width: 72px !important;
  height: 72px !important;
  object-fit: cover !important;
  border-radius: 16px !important;
}

/* Product title */
.km-cart-page .product-name > a,
.km-cart-page .product-name a {
  display: block !important;
  color: #3b2a22 !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  margin-bottom: 8px !important;
  text-decoration: none !important;
}

/* Product details: label + value side by side, but safe */
.km-cart-page .variation {
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) !important;
  column-gap: 10px !important;
  row-gap: 4px !important;
  margin: 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
}

/* Labels */
.km-cart-page .variation dt {
  display: block !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #624439 !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
}

/* Values */
.km-cart-page .variation dd {
  display: block !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #3b2a22 !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}

/* Remove forced breaks from previous CSS */
.km-cart-page .variation dd::after {
  content: none !important;
  display: none !important;
}

/* Price / quantity / subtotal */
.km-cart-page .product-price,
.km-cart-page .product-subtotal,
.km-cart-page .amount {
  color: #3b2a22 !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.km-cart-page .product-quantity {
  text-align: center !important;
}

/* Update cart button stays below */
.km-cart-page td.actions {
  display: block !important;
  background: transparent !important;
  box-shadow: none !important;
  padding-top: 20px !important;
}

/* Tablet */
@media (max-width: 1024px) {
  .km-cart-page .e-cart__container {
    grid-template-columns: 1fr !important;
  }

  .km-cart-page .e-cart__column-end {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .km-cart-page table.shop_table thead {
    display: none !important;
  }

  .km-cart-page table.shop_table tbody tr.cart_item {
    display: block !important;
    padding: 18px !important;
  }

  .km-cart-page table.shop_table tbody tr.cart_item td {
    display: block !important;
    width: 100% !important;
    padding: 8px 0 !important;
  }

  .km-cart-page .variation {
    display: block !important;
  }

  .km-cart-page .variation dt,
  .km-cart-page .variation dd {
    display: block !important;
    white-space: normal !important;
  }

  .km-cart-page .variation dd {
    margin-bottom: 6px !important;
  }
}
/* =========================================================
   KIMIMOOI — CART ITEM SPACING FIX
   Increase vertical space between product cards
========================================================= */

/* Increase space between product rows */
.km-cart-page table.shop_table {
  border-collapse: separate !important;
  border-spacing: 0 26px !important;
}

/* Add softer breathing inside each product card */
.km-cart-page table.shop_table tbody tr.cart_item td {
  padding-top: 22px !important;
  padding-bottom: 22px !important;
}

/* Keep actions row close but clean */
.km-cart-page td.actions {
  padding-top: 22px !important;
  border-top: 1px solid rgba(98, 68, 57, 0.14) !important;
}
/* =========================================================
   KIMIMOOI — REAL SPACE BETWEEN CART PRODUCT CARDS
   Works when cart rows are display:grid
========================================================= */

/* Force vertical spacing between product cards */
.km-cart-page table.shop_table tbody {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
}

/* Keep each product row full width */
.km-cart-page table.shop_table tbody tr.cart_item {
  width: 100% !important;
  margin: 0 !important;
}

/* Keep actions row separate from product cards */
.km-cart-page table.shop_table tbody tr:last-child,
.km-cart-page table.shop_table tbody tr.woocommerce-cart-form__cart-item + tr {
  margin-top: 0 !important;
}

/* Give product cards a cleaner visible separation */
.km-cart-page table.shop_table tbody tr.cart_item {
  background: #ffffff !important;
  border-radius: 22px !important;
  box-shadow: 0 14px 38px rgba(59, 42, 34, 0.06) !important;
}

/* Slightly reduce huge inner compression */
.km-cart-page table.shop_table tbody tr.cart_item td {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}
/* =========================================================
   KIMIMOOI — FIX CART TOTALS AFTER PRODUCT SPACING CODE
   Prevent product-card spacing CSS from affecting totals table
========================================================= */

/* Reset totals table body */
.km-cart-page .cart_totals table.shop_table tbody,
.km-cart-page .e-cart-totals table.shop_table tbody {
  display: table-row-group !important;
}

/* Reset totals rows */
.km-cart-page .cart_totals table.shop_table tbody tr,
.km-cart-page .e-cart-totals table.shop_table tbody tr {
  display: table-row !important;
}

/* Reset totals cells */
.km-cart-page .cart_totals table.shop_table tbody th,
.km-cart-page .cart_totals table.shop_table tbody td,
.km-cart-page .e-cart-totals table.shop_table tbody th,
.km-cart-page .e-cart-totals table.shop_table tbody td {
  display: table-cell !important;
  width: auto !important;
  vertical-align: middle !important;
}

/* Keep label left and price right */
.km-cart-page .cart_totals table.shop_table th,
.km-cart-page .e-cart-totals table.shop_table th {
  text-align: left !important;
}

.km-cart-page .cart_totals table.shop_table td,
.km-cart-page .e-cart-totals table.shop_table td {
  text-align: right !important;
}

/* Restore spacing inside totals */
.km-cart-page .cart_totals th,
.km-cart-page .cart_totals td,
.km-cart-page .e-cart-totals th,
.km-cart-page .e-cart-totals td {
  padding: 15px 0 !important;
}
/* =========================================================
   KIMIMOOI — FINAL FIX FOR DUPLICATED TOTALS LABELS
   Put this at the VERY END of cart CSS
========================================================= */

/* Hide WooCommerce responsive duplicated labels inside Cart Totals */
.km-cart-page .cart_totals td::before,
.km-cart-page .e-cart-totals td::before,
.km-cart-page .cart_totals th::before,
.km-cart-page .e-cart-totals th::before {
  content: none !important;
  display: none !important;
}

/* Restore Cart Totals table behavior only */
.km-cart-page .cart_totals table.shop_table,
.km-cart-page .e-cart-totals table.shop_table {
  display: table !important;
  width: 100% !important;
  border-collapse: collapse !important;
}

.km-cart-page .cart_totals table.shop_table tbody,
.km-cart-page .e-cart-totals table.shop_table tbody {
  display: table-row-group !important;
}

.km-cart-page .cart_totals table.shop_table tr,
.km-cart-page .e-cart-totals table.shop_table tr {
  display: table-row !important;
}

.km-cart-page .cart_totals table.shop_table th,
.km-cart-page .cart_totals table.shop_table td,
.km-cart-page .e-cart-totals table.shop_table th,
.km-cart-page .e-cart-totals table.shop_table td {
  display: table-cell !important;
  width: auto !important;
  padding: 15px 0 !important;
  vertical-align: middle !important;
  background: transparent !important;
  border: none !important;
}

/* Left label / right price */
.km-cart-page .cart_totals table.shop_table th,
.km-cart-page .e-cart-totals table.shop_table th {
  text-align: left !important;
  color: #624439 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

.km-cart-page .cart_totals table.shop_table td,
.km-cart-page .e-cart-totals table.shop_table td {
  text-align: right !important;
  color: #3b2a22 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

/* Total row stronger */
.km-cart-page .cart_totals table.shop_table .order-total th,
.km-cart-page .cart_totals table.shop_table .order-total td,
.km-cart-page .e-cart-totals table.shop_table .order-total th,
.km-cart-page .e-cart-totals table.shop_table .order-total td {
  color: #3b2a22 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}
/* =========================================================
   KIMIMOOI — CART TABLET FIX
   Fix product cards on tablet 768px–1024px
========================================================= */

@media (min-width: 768px) and (max-width: 1024px) {

  /* Page spacing on tablet */
  .km-cart-page {
    max-width: 100% !important;
    padding-top: 120px !important;
    padding-right: 28px !important;
    padding-bottom: 70px !important;
    padding-left: 28px !important;
  }

  /* Stack cart and totals */
  .km-cart-page .e-cart__container {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .km-cart-page .e-cart__column-start,
  .km-cart-page .e-cart__column-end {
    width: 100% !important;
    max-width: 100% !important;
    padding: 26px !important;
    border-radius: 28px !important;
    overflow: hidden !important;
  }

  /* Product table only */
  .km-cart-page .woocommerce-cart-form table.shop_table thead {
    display: none !important;
  }

  .km-cart-page .woocommerce-cart-form table.shop_table,
  .km-cart-page .woocommerce-cart-form table.shop_table tbody {
    display: block !important;
    width: 100% !important;
  }

  /* Space between product cards */
  .km-cart-page .woocommerce-cart-form table.shop_table tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
  }

  /* Product card */
  .km-cart-page .woocommerce-cart-form table.shop_table tbody tr.cart_item {
    display: grid !important;
    grid-template-columns: 42px 92px minmax(0, 1fr) !important;
    grid-template-areas:
      "remove image info"
      "remove image price"
      "remove image quantity"
      "remove image subtotal" !important;
    gap: 8px 18px !important;
    width: 100% !important;
    background: #ffffff !important;
    border-radius: 22px !important;
    padding: 22px !important;
    box-shadow: 0 14px 38px rgba(59, 42, 34, 0.06) !important;
    overflow: hidden !important;
  }

  /* Reset cells */
  .km-cart-page .woocommerce-cart-form table.shop_table tbody tr.cart_item td {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  /* Hide WooCommerce duplicated responsive labels */
  .km-cart-page .woocommerce-cart-form table.shop_table tbody tr.cart_item td::before {
    content: none !important;
    display: none !important;
  }

  /* Assign areas */
  .km-cart-page .woocommerce-cart-form .product-remove {
    grid-area: remove !important;
    align-self: center !important;
    justify-self: center !important;
  }

  .km-cart-page .woocommerce-cart-form .product-thumbnail {
    grid-area: image !important;
    align-self: center !important;
  }

  .km-cart-page .woocommerce-cart-form .product-name {
    grid-area: info !important;
  }

  .km-cart-page .woocommerce-cart-form .product-price {
    grid-area: price !important;
  }

  .km-cart-page .woocommerce-cart-form .product-quantity {
    grid-area: quantity !important;
  }

  .km-cart-page .woocommerce-cart-form .product-subtotal {
    grid-area: subtotal !important;
  }

  /* Product image */
  .km-cart-page .woocommerce-cart-form .product-thumbnail img {
    width: 92px !important;
    height: 92px !important;
    object-fit: cover !important;
    border-radius: 18px !important;
    display: block !important;
  }

  /* Product title */
  .km-cart-page .woocommerce-cart-form .product-name,
  .km-cart-page .woocommerce-cart-form .product-name a {
    color: #3b2a22 !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  /* Product details */
  .km-cart-page .woocommerce-cart-form .variation {
    display: grid !important;
    grid-template-columns: 135px minmax(0, 1fr) !important;
    column-gap: 12px !important;
    row-gap: 5px !important;
    margin-top: 10px !important;
    max-width: 100% !important;
  }

  .km-cart-page .woocommerce-cart-form .variation dt,
  .km-cart-page .woocommerce-cart-form .variation dd {
    display: block !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12.5px !important;
    line-height: 1.35 !important;
  }

  .km-cart-page .woocommerce-cart-form .variation dt {
    color: #624439 !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
  }

  .km-cart-page .woocommerce-cart-form .variation dd {
    color: #3b2a22 !important;
    font-weight: 600 !important;
    overflow-wrap: anywhere !important;
  }

  .km-cart-page .woocommerce-cart-form .variation dd::after {
    content: none !important;
    display: none !important;
  }

  /* Price / quantity / subtotal as clean rows */
  .km-cart-page .woocommerce-cart-form .product-price,
  .km-cart-page .woocommerce-cart-form .product-quantity,
  .km-cart-page .woocommerce-cart-form .product-subtotal {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 20px !important;
    color: #3b2a22 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    padding-top: 6px !important;
  }

  .km-cart-page .woocommerce-cart-form .product-price::before {
    content: "Price:" !important;
    display: inline-block !important;
    color: #624439 !important;
    font-weight: 800 !important;
  }

  .km-cart-page .woocommerce-cart-form .product-quantity::before {
    content: "Quantity:" !important;
    display: inline-block !important;
    color: #624439 !important;
    font-weight: 800 !important;
  }

  .km-cart-page .woocommerce-cart-form .product-subtotal::before {
    content: "Subtotal:" !important;
    display: inline-block !important;
    color: #624439 !important;
    font-weight: 800 !important;
  }

  /* Quantity input if visible */
  .km-cart-page .woocommerce-cart-form .quantity input.qty {
    width: 58px !important;
    height: 38px !important;
    text-align: center !important;
  }

  /* Actions row */
  .km-cart-page .woocommerce-cart-form td.actions {
    display: block !important;
    width: 100% !important;
    padding-top: 24px !important;
    border-top: 1px solid rgba(98, 68, 57, 0.14) !important;
  }

  /* Totals table must stay normal */
  .km-cart-page .cart_totals table.shop_table,
  .km-cart-page .e-cart-totals table.shop_table {
    display: table !important;
    width: 100% !important;
  }

  .km-cart-page .cart_totals table.shop_table tbody,
  .km-cart-page .e-cart-totals table.shop_table tbody {
    display: table-row-group !important;
  }

  .km-cart-page .cart_totals table.shop_table tr,
  .km-cart-page .e-cart-totals table.shop_table tr {
    display: table-row !important;
  }

  .km-cart-page .cart_totals table.shop_table th,
  .km-cart-page .cart_totals table.shop_table td,
  .km-cart-page .e-cart-totals table.shop_table th,
  .km-cart-page .e-cart-totals table.shop_table td {
    display: table-cell !important;
    width: auto !important;
  }

  .km-cart-page .cart_totals td::before,
  .km-cart-page .e-cart-totals td::before {
    content: none !important;
    display: none !important;
  }
}
/* =========================================================
   KIMIMOOI — TABLET PRODUCT CARD ORDER FIX
   Fix product info position inside cart card on tablet
========================================================= */

@media (min-width: 768px) and (max-width: 1024px) {

  /* Product card layout */
  .km-cart-page .woocommerce-cart-form table.shop_table tbody tr.cart_item {
    display: grid !important;
    grid-template-columns: 42px 120px minmax(0, 1fr) !important;
    grid-template-areas:
      "remove image info"
      "remove image price"
      "remove image quantity"
      "remove image subtotal" !important;
    align-items: center !important;
    gap: 8px 22px !important;
    padding: 24px !important;
    text-align: left !important;
  }

  /* Reset all cells */
  .km-cart-page .woocommerce-cart-form table.shop_table tbody tr.cart_item td {
    text-align: left !important;
    justify-self: stretch !important;
    align-self: center !important;
  }

  /* Remove button */
  .km-cart-page .woocommerce-cart-form .product-remove {
    grid-area: remove !important;
    justify-self: center !important;
    align-self: center !important;
  }

  /* Product image */
  .km-cart-page .woocommerce-cart-form .product-thumbnail {
    grid-area: image !important;
    justify-self: start !important;
    align-self: center !important;
  }

  .km-cart-page .woocommerce-cart-form .product-thumbnail img {
    width: 110px !important;
    height: 110px !important;
    object-fit: cover !important;
    border-radius: 20px !important;
  }

  /* Product info should start beside image, not on far right */
  .km-cart-page .woocommerce-cart-form .product-name {
    grid-area: info !important;
    justify-self: stretch !important;
    align-self: center !important;
    text-align: left !important;
  }

  .km-cart-page .woocommerce-cart-form .product-name a {
    text-align: left !important;
    display: block !important;
    font-size: 17px !important;
    line-height: 1.3 !important;
    margin-bottom: 10px !important;
  }

  /* Details: label + value */
  .km-cart-page .woocommerce-cart-form .variation {
    display: grid !important;
    grid-template-columns: 145px minmax(0, 1fr) !important;
    column-gap: 12px !important;
    row-gap: 5px !important;
    text-align: left !important;
    max-width: 100% !important;
  }

  .km-cart-page .woocommerce-cart-form .variation dt,
  .km-cart-page .woocommerce-cart-form .variation dd {
    text-align: left !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
  }

  .km-cart-page .woocommerce-cart-form .variation dt {
    white-space: nowrap !important;
  }

  /* Price rows under details */
  .km-cart-page .woocommerce-cart-form .product-price {
    grid-area: price !important;
  }

  .km-cart-page .woocommerce-cart-form .product-quantity {
    grid-area: quantity !important;
  }

  .km-cart-page .woocommerce-cart-form .product-subtotal {
    grid-area: subtotal !important;
  }

  .km-cart-page .woocommerce-cart-form .product-price,
  .km-cart-page .woocommerce-cart-form .product-quantity,
  .km-cart-page .woocommerce-cart-form .product-subtotal {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 14px !important;
    text-align: left !important;
    font-size: 14px !important;
    font-weight: 800 !important;
  }

  .km-cart-page .woocommerce-cart-form .product-price::before {
    content: "Price:" !important;
    min-width: 145px !important;
    color: #624439 !important;
    font-weight: 800 !important;
  }

  .km-cart-page .woocommerce-cart-form .product-quantity::before {
    content: "Quantity:" !important;
    min-width: 145px !important;
    color: #624439 !important;
    font-weight: 800 !important;
  }

  .km-cart-page .woocommerce-cart-form .product-subtotal::before {
    content: "Subtotal:" !important;
    min-width: 145px !important;
    color: #624439 !important;
    font-weight: 800 !important;
  }
}/* End custom CSS */