/* =========================================================
   Elementor WooCommerce Cart — match deurklinkhaak.nl
   ========================================================= */

body.woocommerce-cart {
	--dkh-cart-lime: #daf615;
	--dkh-cart-ink: #111;
	--dkh-cart-muted: #9a9a9a;
	--dkh-cart-line: rgba(17, 17, 17, 0.08);
	--dkh-cart-border: rgba(17, 17, 17, 0.08);
	--dkh-cart-thumb: #ebe7e0;
	--dkh-cart-bg: #fafafa;
}

body.woocommerce-cart .elementor-133010,
body.woocommerce-cart .site-main {
	/* background: #fff; */
}

/* Page title */
body.woocommerce-cart .elementor-widget-heading .elementor-heading-title,
body.woocommerce-cart .elementor-element-5f58779 .elementor-heading-title {
	/* margin: 0 0 0.35em !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: clamp(2rem, 4vw, 2.75rem) !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em !important;
	text-transform: none !important;
	color: var(--dkh-cart-ink) !important;
	line-height: 1.15 !important; */
}

/* Cart widget shell */
body.woocommerce-cart .elementor-widget-woocommerce-cart {
	font-family: "Open Sans", sans-serif;
	color: var(--dkh-cart-ink);
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart__container {
	align-items: start;
	gap: 1.5rem 1.75rem;
}

/* Panels */
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-section,
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table,
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-totals,
body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon.e-cart-section {
	background: #fff !important;
	border: 1px solid var(--dkh-cart-border) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 1.5rem 1.5rem 1.35rem !important;
	margin: 0 0 1rem !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table {
	margin-bottom: 0 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon.e-cart-section {
	margin-top: 0 !important;
}

/* Table basics */
body.woocommerce-cart .elementor-widget-woocommerce-cart table.shop_table,
body.woocommerce-cart .elementor-widget-woocommerce-cart table.shop_table td,
body.woocommerce-cart .elementor-widget-woocommerce-cart table.shop_table th {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart table.cart {
	margin: 0 !important;
	width: 100%;
	border-collapse: collapse;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart thead th {
	padding: 0 0.75rem 0.9rem !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.68rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: var(--dkh-cart-muted) !important;
	border-bottom: 1px solid var(--dkh-cart-line) !important;
	vertical-align: bottom;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart thead th.product-thumbnail {
	width: 5.5rem;
	padding-left: 0 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart thead th.product-name {
	text-align: left;
	/* Keep single PRODUCT label spanning thumb+name feel */
}

/* Hide screen-reader-only thumbnail header cell visually already empty */

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart thead th.product-price,
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart thead th.product-quantity,
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart thead th.product-subtotal {
	text-align: center;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart thead th.product-remove {
	width: 2.5rem;
	padding-right: 0 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart tbody tr.cart_item {
	border-bottom: 1px solid var(--dkh-cart-line) !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart tbody tr.cart_item td {
	padding: 1.25rem 0.75rem !important;
	vertical-align: middle;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.9rem !important;
	font-weight: 600 !important;
	color: var(--dkh-cart-ink) !important;
	text-transform: none !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart tbody tr.cart_item td.product-thumbnail {
	padding-left: 0 !important;
	width: 5.5rem;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart tbody tr.cart_item td.product-remove {
	padding-right: 0 !important;
	text-align: right;
}

/* Thumbnail */
body.woocommerce-cart .elementor-widget-woocommerce-cart table.cart img {
	width: 4.5rem !important;
	max-width: 4.5rem !important;
	height: 4.5rem !important;
	object-fit: cover;
	background: var(--dkh-cart-thumb);
	border: 1px solid var(--dkh-cart-border);
	display: block;
}

/* Product name */
body.woocommerce-cart .elementor-widget-woocommerce-cart .product-name a,
body.woocommerce-cart .elementor-widget-woocommerce-cart a.product-name,
body.woocommerce-cart .elementor-widget-woocommerce-cart td.product-name a {
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em;
	text-transform: uppercase !important;
	color: var(--dkh-cart-ink) !important;
	text-decoration: none !important;
	line-height: 1.35;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart td.product-name a:hover {
	text-decoration: underline !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .product-name .variation,
body.woocommerce-cart .elementor-widget-woocommerce-cart .product-name dl {
	margin-top: 0.35rem;
	font-size: 0.75rem !important;
	font-weight: 400 !important;
	text-transform: none !important;
	color: var(--dkh-cart-muted) !important;
}

/* Prices */
body.woocommerce-cart .elementor-widget-woocommerce-cart td.product-price,
body.woocommerce-cart .elementor-widget-woocommerce-cart td.product-subtotal {
	text-align: center;
	white-space: nowrap;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart td.product-subtotal {
	font-weight: 700 !important;
}

/* Quantity with +/- */
body.woocommerce-cart .elementor-widget-woocommerce-cart .product-quantity .quantity {
	display: inline-flex !important;
	align-items: stretch;
	justify-content: center;
	border: 1px solid #cfcfcf !important;
	border-radius: 0 !important;
	background: #fff;
	overflow: hidden;
	width: auto !important;
	min-width: 6.75rem;
	margin: 0 auto;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .dkh-cart-qty-btn {
	appearance: none;
	border: 0;
	background: #fff;
	color: var(--dkh-cart-ink);
	width: 2rem;
	min-height: 2.15rem;
	padding: 0;
	cursor: pointer;
	font-size: 0.95rem;
	line-height: 1;
	box-shadow: none !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .dkh-cart-qty-btn:hover {
	background: #f5f5f5;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .dkh-cart-qty-btn:disabled {
	opacity: 0.35;
	cursor: default;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .product-quantity .quantity .qty,
body.woocommerce-cart .elementor-widget-woocommerce-cart .input-text.qty {
	width: 2.4rem !important;
	min-width: 2.4rem !important;
	max-height: none !important;
	min-height: 2.15rem !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-left: 1px solid #ececec !important;
	border-right: 1px solid #ececec !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	text-align: center !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.85rem !important;
	font-weight: 600 !important;
	color: var(--dkh-cart-ink) !important;
	text-transform: none !important;
	appearance: textfield;
	-moz-appearance: textfield;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .product-quantity .quantity .qty::-webkit-outer-spin-button,
body.woocommerce-cart .elementor-widget-woocommerce-cart .product-quantity .quantity .qty::-webkit-inner-spin-button {
	appearance: none;
	margin: 0;
}

/* Remove = trash */
body.woocommerce-cart .elementor-widget-woocommerce-cart table.shop_table .product-remove a.remove {
	display: inline-block !important;
	width: 1.35rem !important;
	height: 1.35rem !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M8 6V4h8v2'/%3E%3Cpath d='M19 6l-1 14H6L5 6'/%3E%3Cpath d='M10 11v6M14 11v6'/%3E%3C/svg%3E") center / 1rem no-repeat !important;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 0 !important;
	opacity: 0.85;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart table.shop_table .product-remove a.remove:hover {
	opacity: 1;
	background-color: transparent !important;
}

/* Actions row: update cart button only (coupon is separate Elementor section) */
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart td.actions {
	padding: 1.15rem 0 0 !important;
	border: 0 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart td.actions .coupon {
	display: none !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shop_table .button[name="update_cart"],
body.woocommerce-cart .elementor-widget-woocommerce-cart button[name="update_cart"],
body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon button[name="update_cart"],
body.woocommerce-cart .elementor-widget-woocommerce-cart .dkh-cart-update-wrap .button[name="update_cart"] {
	float: right;
	margin: 0 !important;
	padding: 0.7rem 1.1rem !important;
	height: 2.75rem !important;
	min-height: 2.75rem !important;
	background: #fff !important;
	color: #9a9a9a !important;
	border: 1px solid #d8d8d8 !important;
	border-radius: 0 !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.7rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
	line-height: 1.2 !important;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;
}

/* Prominent when qty changed / button enabled */
body.woocommerce-cart .elementor-widget-woocommerce-cart .shop_table .button[name="update_cart"]:not(:disabled),
body.woocommerce-cart .elementor-widget-woocommerce-cart button[name="update_cart"]:not(:disabled),
body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon button[name="update_cart"]:not(:disabled),
body.woocommerce-cart .elementor-widget-woocommerce-cart .dkh-cart-update-wrap .button[name="update_cart"]:not(:disabled) {
	background: #111 !important;
	color: #fff !important;
	border-color: #111 !important;
	opacity: 1 !important;
	cursor: pointer !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shop_table .button[name="update_cart"]:not(:disabled):hover,
body.woocommerce-cart .elementor-widget-woocommerce-cart button[name="update_cart"]:not(:disabled):hover,
body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon button[name="update_cart"]:not(:disabled):hover,
body.woocommerce-cart .elementor-widget-woocommerce-cart .dkh-cart-update-wrap .button[name="update_cart"]:not(:disabled):hover {
	background: #000 !important;
	color: #fff !important;
	border-color: #000 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shop_table .button[name="update_cart"]:disabled,
body.woocommerce-cart .elementor-widget-woocommerce-cart button[name="update_cart"]:disabled,
body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon button[name="update_cart"]:disabled,
body.woocommerce-cart .elementor-widget-woocommerce-cart .dkh-cart-update-wrap .button[name="update_cart"]:disabled {
	background: #fff !important;
	color: #b0b0b0 !important;
	border-color: #e0e0e0 !important;
	opacity: 1 !important;
	cursor: default !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon .dkh-cart-update-wrap {
	margin-left: auto;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon button[name="update_cart"],
body.woocommerce-cart .elementor-widget-woocommerce-cart .dkh-cart-update-wrap .button[name="update_cart"] {
	float: none !important;
}

/* Coupon section — production: input + black PAS TOE */
body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon.e-cart-section .form-row,
body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon .coupon-col {
	display: flex !important;
	align-items: stretch;
	gap: 0.65rem;
	margin: 0 !important;
	flex-wrap: wrap;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon .coupon-col-start {
	flex: 1 1 12rem;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon .coupon-col-end {
	flex: 0 0 auto;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon .input-text,
body.woocommerce-cart .elementor-widget-woocommerce-cart #coupon_code {
	width: 100% !important;
	height: 2.75rem !important;
	margin: 0 !important;
	padding: 0 0.9rem !important;
	border: 1px solid #d0d0d0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--dkh-cart-ink) !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon .input-text::placeholder {
	color: #b0b0b0;
	text-transform: uppercase;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon button.e-apply-coupon,
body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon button[name="apply_coupon"] {
	height: 2.75rem !important;
	min-height: 2.75rem !important;
	padding: 0 1.25rem !important;
	margin: 0 !important;
	background: #111 !important;
	color: #fff !important;
	border: 1px solid #111 !important;
	border-radius: 0 !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
	white-space: nowrap;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon button.e-apply-coupon:hover {
	background: #000 !important;
	color: #fff !important;
}

/* Totals sidebar */
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-totals {
	padding: 1.5rem !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals h2,
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-totals h2 {
	margin: 0 0 1.15rem !important;
	padding: 0 0 0.85rem !important;
	border-bottom: 1px solid var(--dkh-cart-line);
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: var(--dkh-cart-ink) !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals table.shop_table {
	margin: 0 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals table.shop_table tr {
	border: 0 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals table.shop_table td {
	padding: 0.7rem 0 !important;
	border: 0 !important;
	background: transparent !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.05em;
	text-transform: uppercase !important;
	color: var(--dkh-cart-ink) !important;
	vertical-align: top;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals table.shop_table td {
	text-align: right;
	font-weight: 700 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals table.shop_table .woocommerce-shipping-totals td {
	font-weight: 600 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals .woocommerce-shipping-destination,
body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals .woocommerce-shipping-methods,
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-content {
	font-size: 0.72rem !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--dkh-cart-muted) !important;
	line-height: 1.45;
}

/* Calculate shipping */
body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-button,
body.woocommerce-cart .elementor-widget-woocommerce-cart a.shipping-calculator-button {
	display: inline-block !important;
	margin-top: 0.55rem !important;
	padding: 0.45rem 0.75rem !important;
	background: #111 !important;
	color: var(--dkh-cart-lime) !important;
	border: 0 !important;
	border-radius: 0 !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.65rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-button:hover {
	background: #000 !important;
	color: var(--dkh-cart-lime) !important;
}

/* Shipping calculator form (expanded) */
body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form,
body.woocommerce-cart .elementor-widget-woocommerce-cart .woocommerce-shipping-calculator .shipping-calculator-form {
	margin-top: 0.85rem !important;
	padding: 0 !important;
	text-align: left !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form .form-row {
	margin: 0 0 0.85rem !important;
	padding: 0 !important;
	width: 100% !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form label {
	display: block !important;
	margin: 0 0 0.35rem !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.65rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: var(--dkh-cart-muted) !important;
	text-align: left !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form .input-text,
body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form select,
body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form .select2-selection--single {
	width: 100% !important;
	min-height: 2.75rem !important;
	height: 2.75rem !important;
	margin: 0 !important;
	padding: 0 0.9rem !important;
	border: 1px solid #d0d0d0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	outline: none !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--dkh-cart-ink) !important;
	text-align: left !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form .select2-container {
	width: 100% !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form .select2-selection--single {
	display: flex !important;
	align-items: center !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form .select2-selection__rendered {
	padding: 0 !important;
	line-height: 1.2 !important;
	color: var(--dkh-cart-ink) !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form .select2-selection__arrow {
	height: 100% !important;
	right: 0.5rem !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form .button,
body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form button[name="calc_shipping"],
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-totals button[name="calc_shipping"],
body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals button[name="calc_shipping"],
body.woocommerce-cart .elementor-widget-woocommerce-cart button.button[name="calc_shipping"],
body.woocommerce-cart .elementor-widget-woocommerce-cart .woocommerce-shipping-calculator button.button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 2.75rem !important;
	height: 2.75rem !important;
	margin: 0.15rem 0 0 !important;
	padding: 0 1.25rem !important;
	background: #111 !important;
	background-color: #111 !important;
	color: #fff !important;
	border: 1px solid #111 !important;
	border-radius: 0 !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form .button:hover,
body.woocommerce-cart .elementor-widget-woocommerce-cart .shipping-calculator-form button[name="calc_shipping"]:hover,
body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-totals button[name="calc_shipping"]:hover,
body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals button[name="calc_shipping"]:hover,
body.woocommerce-cart .elementor-widget-woocommerce-cart button.button[name="calc_shipping"]:hover,
body.woocommerce-cart .elementor-widget-woocommerce-cart .woocommerce-shipping-calculator button.button:hover {
	background: #000 !important;
	background-color: #000 !important;
	color: #fff !important;
	border-color: #000 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals table.shop_table tr.order-total th,
body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals table.shop_table tr.order-total td {
	padding-top: 1.1rem !important;
	border-top: 1px solid var(--dkh-cart-line) !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals table.shop_table tr.order-total td strong > .woocommerce-Price-amount.amount {
	font-size: 1.35rem !important;
	font-weight: 700 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals table.shop_table tr.order-total td small,
body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals .tax_label,
body.woocommerce-cart .elementor-widget-woocommerce-cart .cart_totals .includes_tax {
	display: block;
	margin-top: 0.25rem;
	font-size: 0.68rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.02em;
	text-transform: uppercase !important;
	color: var(--dkh-cart-muted) !important;
}

/* Checkout CTA */
body.woocommerce-cart .elementor-widget-woocommerce-cart .wc-proceed-to-checkout {
	margin: 1.15rem 0 0 !important;
	padding: 0 !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .wc-proceed-to-checkout .checkout-button,
body.woocommerce-cart .elementor-widget-woocommerce-cart a.checkout-button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 3.25rem !important;
	margin: 0 !important;
	padding: 0.95rem 1.25rem !important;
	background: var(--dkh-cart-lime) !important;
	background-color: var(--dkh-cart-lime) !important;
	color: var(--dkh-cart-ink) !important;
	border: 1px solid #111 !important;
	border-radius: 0 !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.8rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

body.woocommerce-cart .elementor-widget-woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
	background: #c5de12 !important;
	color: var(--dkh-cart-ink) !important;
}

/* Empty cart — production centered state (no Woo info bar) */
body.woocommerce-cart .dkh-empty-cart {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 32rem;
	margin: 0 auto;
	padding: 2.5rem 1rem 3.25rem;
	text-align: center;
}

body.woocommerce-cart .dkh-empty-cart__title {
	margin: 0;
	font-family: "Open Sans", sans-serif !important;
	font-size: 1.125rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.02em !important;
	line-height: 1.35 !important;
	text-transform: uppercase !important;
	color: var(--dkh-cart-ink) !important;
}

body.woocommerce-cart .dkh-empty-cart__text {
	margin: 0.75rem 0 0 !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	color: #6b6b6b !important;
}

body.woocommerce-cart .dkh-empty-cart__actions {
	margin-top: 2rem;
}

body.woocommerce-cart .dkh-empty-cart__cta,
body.woocommerce-cart .dkh-empty-cart a.dkh-empty-cart__cta.button,
body.woocommerce-cart .elementor-kit-5 .dkh-empty-cart a.dkh-empty-cart__cta.button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 0.85rem 2rem !important;
	min-height: 0 !important;
	background: var(--dkh-cart-lime) !important;
	background-color: var(--dkh-cart-lime) !important;
	color: var(--dkh-cart-ink) !important;
	border: 1px solid #111 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.8125rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	line-height: 1.2 !important;
	transition: background-color 0.2s ease;
}

body.woocommerce-cart .dkh-empty-cart__cta:hover,
body.woocommerce-cart .dkh-empty-cart a.dkh-empty-cart__cta.button:hover,
body.woocommerce-cart .elementor-kit-5 .dkh-empty-cart a.dkh-empty-cart__cta.button:hover {
	background: #c5de12 !important;
	color: var(--dkh-cart-ink) !important;
}

/* Hide leftover default empty-cart notice if a plugin re-adds it */
body.woocommerce-cart .elementor-widget-woocommerce-cart .cart-empty.woocommerce-info,
body.woocommerce-cart .return-to-shop {
	display: none !important;
}

/* =========================================================
   WooCommerce notices (updated cart, added to cart, etc.)
   ========================================================= */

body.woocommerce-cart .woocommerce-notices-wrapper,
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-NoticeGroup,
body.woocommerce-cart ul.woocommerce-error,
body.woocommerce-cart ul.woocommerce-info,
body.woocommerce-cart ul.woocommerce-message {
	max-width: none;
}

body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .wc-block-components-notice-banner,
body.woocommerce-cart .woocommerce-notices-wrapper > * {
	display: flex !important;
	align-items: center !important;
	gap: 0.85rem;
	width: 100%;
	margin: 0 0 1.5rem !important;
	padding: 1rem 1.25rem 1rem 1.15rem !important;
	background: #f7f7f7 !important;
	border: 0 !important;
	border-top: 4px solid var(--dkh-cart-lime) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.92rem !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	color: #4a4a4a !important;
	list-style: none !important;
}

body.woocommerce-cart .woocommerce-error {
	border-top-color: #e53935 !important;
}

body.woocommerce-cart .woocommerce-info {
	border-top-color: #111 !important;
}

body.woocommerce-cart .woocommerce-message::before,
body.woocommerce-cart .woocommerce-info::before,
body.woocommerce-cart .woocommerce-error::before {
	position: static !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 1.35rem;
	width: 1.35rem !important;
	height: 1.35rem !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 50% !important;
	font-family: inherit !important;
	font-size: 0 !important;
	line-height: 0 !important;
	content: "" !important;
	background-color: #8fbf00 !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 0.75rem !important;
	color: transparent !important;
	speak: never;
}

body.woocommerce-cart .woocommerce-info::before {
	background-color: #111 !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23daf615' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 8v5M12 16h.01'/%3E%3C/svg%3E") !important;
	background-size: 1rem !important;
}

body.woocommerce-cart .woocommerce-error::before {
	background-color: #e53935 !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M7 7l10 10M17 7L7 17'/%3E%3C/svg%3E") !important;
	background-size: 0.75rem !important;
}

body.woocommerce-cart .woocommerce-message a,
body.woocommerce-cart .woocommerce-info a,
body.woocommerce-cart .woocommerce-error a {
	color: var(--dkh-cart-ink) !important;
	font-weight: 600 !important;
	text-decoration: underline !important;
}

body.woocommerce-cart .woocommerce-message .button,
body.woocommerce-cart .woocommerce-info .button,
body.woocommerce-cart .woocommerce-error .button {
	float: none !important;
	margin-left: auto !important;
	padding: 0.55rem 0.95rem !important;
	background: var(--dkh-cart-lime) !important;
	color: var(--dkh-cart-ink) !important;
	border: 1px solid #111 !important;
	border-radius: 0 !important;
	font-family: "Open Sans", sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

body.woocommerce-cart .woocommerce-message .button:hover,
body.woocommerce-cart .woocommerce-info .button:hover {
	background: #c5de12 !important;
	color: var(--dkh-cart-ink) !important;
}

/* Mobile */
@media (max-width: 1024px) {
	body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-section,
	body.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-totals,
	body.woocommerce-cart .elementor-widget-woocommerce-cart .coupon.e-cart-section {
		padding: 1.15rem !important;
	}
}

@media (max-width: 767px) {
	body.woocommerce-cart .elementor-widget-heading .elementor-heading-title {
		/* font-size: 1.65rem !important; */
	}

	body.woocommerce-cart .elementor-widget-woocommerce-cart table.cart img {
		width: 3.75rem !important;
		max-width: 3.75rem !important;
		height: 3.75rem !important;
	}

	body.woocommerce-cart .elementor-widget-woocommerce-cart .shop_table .button[name="update_cart"] {
		float: none;
		width: 100%;
	}

	body.woocommerce-cart .elementor-widget-woocommerce-cart .e-shop-table .cart tbody tr.cart_item td {
		padding: 0.85rem 0 !important;
	}
}
