/* ================================================================
   Hira Theme Styles — combined front-end CSS
   (shop/category/related cards + cart + checkout). Loaded by the
   plugin after the theme & page builder, so it can't be truncated.
   ================================================================ */

/* ===================== RELATED / UP-SELL PRODUCTS ===================== */
/* ============================================================
   Hira Compounds — Related / Up-sell products card styling
   Makes the WooCommerce "Related products" widget match the
   shop-page card look, and hides the "Sale!" badge.
   Paste into: Appearance → Customize → Additional CSS
   (or Elementor → Site Settings → Custom CSS).
   ============================================================ */

/* grid */
.related.products ul.products,
.up-sells.products ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}
.related.products ul.products::before,
.related.products ul.products::after,
.up-sells.products ul.products::before,
.up-sells.products ul.products::after { content: none !important; display: none !important; }

/* heading */
.related.products > h2,
.up-sells.products > h2 { color: #14304f; }

/* card */
.related.products ul.products li.product,
.up-sells.products ul.products li.product {
	width: auto !important;
	margin: 0 !important;
	float: none !important;
	display: flex;
	flex-direction: column;
	text-align: left;
	background: #fff;
	border: 1px solid #e6ebf1;
	border-radius: 14px;
	overflow: hidden;
	padding: 10px 10px 16px;
	transition: border-color .2s, box-shadow .2s, transform .2s;
}
.related.products ul.products li.product:hover,
.up-sells.products ul.products li.product:hover {
	border-color: #2f6fed;
	box-shadow: 0 10px 28px rgba(20, 48, 79, .10);
	transform: translateY(-2px);
}

/* the loop link wraps image + title + price */
.related.products li.product a.woocommerce-LoopProduct-link,
.related.products li.product a.woocommerce-loop-product__link,
.up-sells.products li.product a.woocommerce-LoopProduct-link,
.up-sells.products li.product a.woocommerce-loop-product__link {
	display: block;
	text-decoration: none;
}

/* image area */
.related.products li.product img,
.up-sells.products li.product img {
	width: 100% !important;
	height: 220px;
	object-fit: contain;
	background: #eef3f6;
	border-radius: 10px;
	padding: 12px;
	margin: 0 0 14px !important;
	mix-blend-mode: multiply;
	display: block;
}

/* title */
.related.products li.product .woocommerce-loop-product__title,
.up-sells.products li.product .woocommerce-loop-product__title {
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.3;
	color: #14304f !important;
	padding: 0 6px;
	margin: 0 0 6px !important;
}

/* price */
.related.products li.product .price,
.up-sells.products li.product .price {
	color: #14304f !important;
	font-size: 1.22rem;
	font-weight: 800;
	padding: 0 6px;
	margin: 0 0 14px !important;
}
.related.products li.product .price del,
.up-sells.products li.product .price del { color: #8a97a6; font-weight: 400; font-size: .72em; margin-right: 4px; }
.related.products li.product .price ins,
.up-sells.products li.product .price ins { text-decoration: none; }

/* add-to-cart button → navy, blue on hover (matches shop cards) */
.related.products li.product .button,
.related.products li.product a.add_to_cart_button,
.up-sells.products li.product .button,
.up-sells.products li.product a.add_to_cart_button {
	display: block;
	text-align: center;
	margin: auto 6px 0 !important;      /* margin-top:auto pins it to the bottom */
	padding: 12px 16px;
	background: #14304f !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 8px;
	font-size: .9rem;
	font-weight: 700;
	text-decoration: none;
	line-height: 1.2;
}
.related.products li.product .button:hover,
.related.products li.product a.add_to_cart_button:hover,
.up-sells.products li.product .button:hover,
.up-sells.products li.product a.add_to_cart_button:hover {
	background: #2f6fed !important;
	color: #fff !important;
}
.related.products li.product .added_to_cart,
.up-sells.products li.product .added_to_cart { display: none !important; }

/* star rating (if shown) */
.related.products li.product .star-rating,
.up-sells.products li.product .star-rating { margin: 0 6px 8px; font-size: .8em; }

/* remove the "Sale!" badge */
.related.products span.onsale,
.up-sells.products span.onsale { display: none !important; }

/* responsive */
@media (max-width: 1024px) {
	.related.products ul.products,
	.up-sells.products ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
}
@media (max-width: 480px) {
	.related.products ul.products,
	.up-sells.products ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.related.products li.product img,
	.up-sells.products li.product img { height: 150px; }
}

/* ===================== CATEGORY / SHOP ARCHIVE ======================= */
/* ============================================================
   Hira Compounds — CATEGORY / shop archive styling  (v3)
   Replaces ALL previous category snippets. ID-level specificity
   (#main) so the theme / WooCommerce / Elementor can't override
   the title, price, button or Sale badge.
   Paste the WHOLE file into Appearance → Customize → Additional CSS.
   ============================================================ */

/* 20px padding all sides */
.tax-product_cat #main.site-main,
.post-type-archive-product #main.site-main { padding: 20px !important; box-sizing: border-box; }

/* ---- header ---- */
.tax-product_cat #main .woocommerce-breadcrumb,
.post-type-archive-product #main .woocommerce-breadcrumb { color: #8a97a6 !important; font-size: .9rem; margin: 0 0 14px; }
.tax-product_cat #main .woocommerce-breadcrumb a,
.post-type-archive-product #main .woocommerce-breadcrumb a { color: #2f6fed !important; text-decoration: none; }
.tax-product_cat #main .woocommerce-products-header,
.post-type-archive-product #main .woocommerce-products-header { background: none !important; padding: 0 !important; margin: 0 0 6px !important; border: 0 !important; }
.tax-product_cat #main .woocommerce-products-header__title,
.tax-product_cat #main h1.page-title,
.post-type-archive-product #main .woocommerce-products-header__title,
.post-type-archive-product #main h1.page-title { color: #14304f !important; background: none !important; font-size: 2rem; font-weight: 800; line-height: 1.2; margin: 0 0 6px !important; padding: 0 !important; }

/* ---- grid ---- */
.tax-product_cat #main ul.products,
.post-type-archive-product #main ul.products { display: grid !important; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 24px; margin: 0 0 30px !important; padding: 0 !important; list-style: none !important; }
.tax-product_cat #main ul.products::before, .tax-product_cat #main ul.products::after,
.post-type-archive-product #main ul.products::before, .post-type-archive-product #main ul.products::after { content: none !important; display: none !important; }

/* ---- card ---- */
.tax-product_cat #main ul.products li.product,
.post-type-archive-product #main ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; display: flex !important; flex-direction: column; text-align: left; background: #fff !important; border: 1px solid #e6ebf1 !important; border-radius: 14px !important; overflow: hidden; padding: 10px 10px 16px !important; transition: border-color .2s, box-shadow .2s, transform .2s; }
.tax-product_cat #main ul.products li.product:hover,
.post-type-archive-product #main ul.products li.product:hover { border-color: #2f6fed !important; box-shadow: 0 10px 28px rgba(20,48,79,.10); transform: translateY(-2px); }

.tax-product_cat #main li.product a.woocommerce-LoopProduct-link, .tax-product_cat #main li.product a.woocommerce-loop-product__link,
.post-type-archive-product #main li.product a.woocommerce-LoopProduct-link, .post-type-archive-product #main li.product a.woocommerce-loop-product__link { display: block !important; text-decoration: none !important; }

/* image */
.tax-product_cat #main li.product img,
.post-type-archive-product #main li.product img { width: 100% !important; height: 220px; object-fit: contain; background: #eef3f6; border-radius: 10px; padding: 12px; margin: 0 0 14px !important; mix-blend-mode: multiply; display: block; }

/* title */
.tax-product_cat #main li.product .woocommerce-loop-product__title,
.post-type-archive-product #main li.product .woocommerce-loop-product__title { font-size: 1.05rem !important; font-weight: 700 !important; line-height: 1.3 !important; color: #14304f !important; text-align: left !important; padding: 0 6px !important; margin: 0 0 6px !important; }

/* price */
.tax-product_cat #main li.product .price,
.post-type-archive-product #main li.product .price { color: #14304f !important; font-size: 1.22rem !important; font-weight: 800 !important; padding: 0 6px !important; margin: 0 0 14px !important; }
.tax-product_cat #main li.product .price del,
.post-type-archive-product #main li.product .price del { color: #8a97a6 !important; font-weight: 400 !important; font-size: .72em !important; margin-right: 4px; }
.tax-product_cat #main li.product .price ins,
.post-type-archive-product #main li.product .price ins { text-decoration: none !important; }

/* button — navy fill, blue on hover */
.tax-product_cat #main li.product a.button,
.tax-product_cat #main li.product a.add_to_cart_button,
.post-type-archive-product #main li.product a.button,
.post-type-archive-product #main li.product a.add_to_cart_button { display: block !important; text-align: center !important; width: auto !important; margin: auto 6px 0 !important; padding: 12px 16px !important; background: #14304f !important; color: #fff !important; border: 0 !important; border-radius: 8px !important; font-size: .9rem !important; font-weight: 700 !important; text-decoration: none !important; line-height: 1.2 !important; }
.tax-product_cat #main li.product a.button:hover,
.tax-product_cat #main li.product a.add_to_cart_button:hover,
.post-type-archive-product #main li.product a.button:hover,
.post-type-archive-product #main li.product a.add_to_cart_button:hover { background: #2f6fed !important; color: #fff !important; }
.tax-product_cat #main li.product .added_to_cart,
.post-type-archive-product #main li.product .added_to_cart { display: none !important; }
.tax-product_cat #main li.product .star-rating,
.post-type-archive-product #main li.product .star-rating { margin: 0 6px 8px !important; font-size: .8em !important; }

/* remove the "Sale!" badge */
.tax-product_cat #main .onsale,
.tax-product_cat #main span.onsale,
.post-type-archive-product #main .onsale,
.post-type-archive-product #main span.onsale { display: none !important; }

/* result count + ordering */
.tax-product_cat #main .woocommerce-result-count,
.post-type-archive-product #main .woocommerce-result-count { color: #8a97a6 !important; font-size: .95rem; margin-bottom: 18px; }
.tax-product_cat #main .woocommerce-ordering select,
.post-type-archive-product #main .woocommerce-ordering select { border: 1.5px solid #e6ebf1 !important; border-radius: 8px !important; padding: 8px 12px !important; color: #14304f !important; background: #fff !important; font-size: .9rem; }

/* pagination */
.tax-product_cat #main .woocommerce-pagination ul,
.post-type-archive-product #main .woocommerce-pagination ul { display: inline-flex !important; gap: 6px; border: 0 !important; margin: 28px 0 0; padding: 0; list-style: none; }
.tax-product_cat #main .woocommerce-pagination ul li,
.post-type-archive-product #main .woocommerce-pagination ul li { border: 0 !important; margin: 0; }
.tax-product_cat #main .woocommerce-pagination ul li a,
.tax-product_cat #main .woocommerce-pagination ul li span,
.post-type-archive-product #main .woocommerce-pagination ul li a,
.post-type-archive-product #main .woocommerce-pagination ul li span { border: 1px solid #e6ebf1 !important; border-radius: 8px !important; min-width: 40px; height: 40px; line-height: 38px !important; padding: 0 6px; color: #14304f !important; background: #fff !important; font-weight: 700; }
.tax-product_cat #main .woocommerce-pagination ul li span.current,
.tax-product_cat #main .woocommerce-pagination ul li a:hover,
.post-type-archive-product #main .woocommerce-pagination ul li span.current,
.post-type-archive-product #main .woocommerce-pagination ul li a:hover { background: #14304f !important; color: #fff !important; border-color: #14304f !important; }

/* responsive */
@media (max-width: 1024px) {
	.tax-product_cat #main ul.products, .post-type-archive-product #main ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
}
@media (max-width: 480px) {
	.tax-product_cat #main ul.products, .post-type-archive-product #main ul.products { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
	.tax-product_cat #main li.product img, .post-type-archive-product #main li.product img { height: 150px; }
	.tax-product_cat #main .woocommerce-products-header__title, .post-type-archive-product #main .woocommerce-products-header__title { font-size: 1.5rem; }
}

/* ===================== CHECKOUT ====================================== */
/* ============================================================
   Hira Compounds — CHECKOUT page styling  (v2)
   Replaces the previous checkout snippet. Adds: 1200px content
   width + 20px page padding, structured product name/pack/meta,
   and ID-anchored payment-box + Place-order rules that outrank
   WooCommerce Payments / Stripe.
   Paste the WHOLE file into Appearance → Customize → Additional CSS.
   ============================================================ */

/* ---- lock content width + 20px padding all sides ---- */
.woocommerce-checkout .woocommerce {
	max-width: 1200px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 20px !important;
	box-sizing: border-box !important;
}

/* ---- headings ---- */
.woocommerce-checkout h1.entry-title,
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #ship-to-different-address,
.woocommerce-checkout #order_review_heading { color: #14304f !important; font-weight: 800; }

/* ---- links → brand blue (not pink) ---- */
.woocommerce-checkout .woocommerce a,
.woocommerce-checkout form.checkout a,
.woocommerce-checkout #payment a,
.woocommerce-checkout .woocommerce-privacy-policy-text a,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a { color: #2f6fed !important; text-decoration: none; }
.woocommerce-checkout .woocommerce a:hover,
.woocommerce-checkout form.checkout a:hover { color: #14304f !important; text-decoration: underline; }

/* ---- labels + required ---- */
.woocommerce-checkout .form-row label,
.woocommerce-checkout .woocommerce-form__label { color: #14304f; font-weight: 600; }
.woocommerce-checkout .required,
.woocommerce-checkout abbr.required { color: #e05563; border: 0; text-decoration: none; }
.woocommerce-checkout .optional { color: #8a97a6; }

/* ---- inputs / selects / textarea ---- */
.woocommerce-checkout .input-text,
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout input[type="number"],
.woocommerce-checkout textarea,
.woocommerce-checkout select {
	border: 1.5px solid #e6ebf1 !important;
	border-radius: 8px !important;
	color: #14304f !important;
	background: #fff !important;
	padding: 12px 14px !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
	box-shadow: none !important;
	min-height: 48px;
}
.woocommerce-checkout textarea { min-height: 90px; }
.woocommerce-checkout .input-text:focus,
.woocommerce-checkout input:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus {
	border-color: #2f6fed !important;
	box-shadow: 0 0 0 3px rgba(47, 111, 237, .14) !important;
	outline: none !important;
}
.woocommerce-checkout ::placeholder { color: #9aa7b5; }

/* select2 (country / state) */
.woocommerce-checkout .select2-container .select2-selection--single {
	border: 1.5px solid #e6ebf1 !important; border-radius: 8px !important; min-height: 48px !important; padding: 8px 10px !important; background: #fff !important;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered { color: #14304f; line-height: 30px; }
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow { height: 46px; }
.woocommerce-checkout .select2-container--open .select2-selection--single { border-color: #2f6fed !important; box-shadow: 0 0 0 3px rgba(47,111,237,.14) !important; }

/* radios + checkboxes */
.woocommerce-checkout input[type="radio"],
.woocommerce-checkout input[type="checkbox"] { accent-color: #2f6fed; width: 16px; height: 16px; }

/* ---- coupon bar ---- */
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	background: #f4f8fc !important; border-top: 3px solid #2f6fed !important; color: #14304f !important; border-radius: 8px;
}
.woocommerce-checkout .woocommerce-info::before { color: #2f6fed !important; }
.woocommerce-checkout form.checkout_coupon { border: 1px solid #e6ebf1; border-radius: 10px; }
.woocommerce-checkout form.checkout_coupon .button { background: #14304f !important; color: #fff !important; border-radius: 8px !important; }

/* ---- order review table ---- */
.woocommerce-checkout #order_review .shop_table,
.woocommerce-checkout .woocommerce-checkout-review-order-table {
	border: 1px solid #e6ebf1 !important; border-radius: 12px !important; overflow: hidden; border-collapse: separate !important; border-spacing: 0 !important;
}
.woocommerce-checkout #order_review .shop_table th { color: #14304f !important; background: #f7f9fc !important; }
.woocommerce-checkout #order_review .shop_table td,
.woocommerce-checkout #order_review .shop_table th { border-top: 1px solid #eef2f7 !important; padding: 14px 16px !important; }
.woocommerce-checkout #order_review .order-total .amount,
.woocommerce-checkout #order_review .order-total .woocommerce-Price-amount { color: #14304f !important; font-size: 1.1rem; }

/* ---- product name / pack / meta structure ---- */
.woocommerce-checkout #order_review td.product-name {
	color: #14304f !important; font-weight: 700; line-height: 1.4;
}
.woocommerce-checkout #order_review td.product-name .hpp-cart-pack {
	display: block; margin-top: 4px; color: #2f6fed !important; font-size: .82rem; font-weight: 700;
}
.woocommerce-checkout #order_review td.product-name .product-quantity {
	display: inline-block; margin-top: 4px; color: #5f6f82 !important; font-weight: 700;
}
.woocommerce-checkout #order_review td.product-name .variation,
.woocommerce-checkout #order_review td.product-name dl.variation {
	margin: 6px 0 0; color: #8a97a6 !important; font-size: .82rem; line-height: 1.4;
}
.woocommerce-checkout #order_review td.product-name .variation dt,
.woocommerce-checkout #order_review td.product-name .variation dd { display: inline; margin: 0; font-weight: 600; }
.woocommerce-checkout #order_review td.product-name .variation p { margin: 0; }

/* shipping method rows */
.woocommerce-checkout #shipping_method li { margin: 0 0 8px; }
.woocommerce-checkout #shipping_method label { color: #14304f; }

/* ---- payment box (outrank WooCommerce Payments / Stripe) ---- */
.woocommerce-checkout #payment,
.woocommerce-checkout #order_review #payment {
	background: #f7f9fc !important; border: 1px solid #e6ebf1 !important; border-radius: 12px !important;
}
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment ul.wc_payment_methods { background: transparent !important; border-bottom: 1px solid #e6ebf1 !important; list-style: none !important; margin: 0 !important; padding-left: 0 !important; }
.woocommerce-checkout #payment ul.payment_methods li::before { content: none !important; }
.woocommerce-checkout #payment ul.payment_methods li { background: transparent !important; }
.woocommerce-checkout #payment div.payment_box,
.woocommerce-checkout #payment .wc_payment_method .payment_box {
	background: #fff !important; border: 1px solid #e6ebf1 !important; border-radius: 10px !important; color: #5f6f82 !important; box-shadow: none !important;
}
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #fff !important; }
.woocommerce-checkout #payment label { color: #14304f !important; }

/* ---- Place order button → navy (double-ID beats the gateway's purple) ---- */
.woocommerce-checkout #payment #place_order,
.woocommerce-checkout #order_review #place_order,
.woocommerce-checkout button#place_order,
.woocommerce-checkout #place_order {
	background: #14304f !important;
	background-image: none !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 8px !important;
	padding: 15px 34px !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	text-shadow: none !important;
	box-shadow: 0 8px 20px rgba(20, 48, 79, .18) !important;
	transition: background .2s, transform .12s;
}
.woocommerce-checkout #payment #place_order:hover,
.woocommerce-checkout button#place_order:hover,
.woocommerce-checkout #place_order:hover { background: #2f6fed !important; transform: translateY(-1px); }

/* responsive */
@media (max-width: 768px) {
	.woocommerce-checkout #place_order { width: 100%; }
	.woocommerce-checkout .woocommerce { padding: 16px !important; }
}

/* ===================== CART ========================================== */
/* ===================== CART PAGE ===================== */
/* content width + padding (match checkout) */
.woocommerce-cart .woocommerce { max-width: 1200px; margin-left: auto; margin-right: auto; padding: 20px; box-sizing: border-box; }

.woocommerce-cart .entry-title, .woocommerce-cart h1.page-title { color: #14304f; }
.woocommerce-cart .woocommerce a { color: #2f6fed; text-decoration: none; }
.woocommerce-cart .woocommerce a:hover { color: #14304f; }

/* ---- cart table ---- */
.woocommerce-cart table.cart, .woocommerce-cart table.shop_table.cart {
	border: 1px solid #e6ebf1 !important; border-radius: 12px !important; overflow: hidden; border-collapse: separate !important; border-spacing: 0 !important;
}
.woocommerce-cart table.cart th { color: #14304f !important; background: #f7f9fc !important; border: 0 !important; padding: 14px 16px !important; font-weight: 800; }
.woocommerce-cart table.cart td { border-top: 1px solid #eef2f7 !important; padding: 14px 16px !important; vertical-align: middle; }
.woocommerce-cart table.cart td.product-name,
.woocommerce-cart table.cart td.product-name a { color: #14304f !important; font-weight: 700; }
.woocommerce-cart table.cart td.product-name .hpp-cart-pack { display: block; margin-top: 4px; color: #2f6fed !important; font-size: .82rem; font-weight: 700; }
.woocommerce-cart table.cart td.product-name .variation,
.woocommerce-cart table.cart td.product-name dl.variation { margin: 6px 0 0; color: #8a97a6 !important; font-size: .82rem; }
.woocommerce-cart table.cart td.product-name .variation dt,
.woocommerce-cart table.cart td.product-name .variation dd { display: inline; margin: 0; font-weight: 600; }
.woocommerce-cart td.product-price, .woocommerce-cart td.product-subtotal { color: #14304f !important; font-weight: 700; }
.woocommerce-cart td.product-thumbnail img { width: 52px; border: 1px solid #e6ebf1; border-radius: 8px; }
.woocommerce-cart a.remove { color: #e05563 !important; font-weight: 700; border-radius: 50%; }
.woocommerce-cart a.remove:hover { background: #e05563 !important; color: #fff !important; }
.woocommerce-cart td.product-quantity input.qty { border: 1.5px solid #e6ebf1 !important; border-radius: 8px !important; padding: 8px !important; color: #14304f; min-height: 44px; }

/* coupon + update cart */
.woocommerce-cart .coupon input#coupon_code { border: 1.5px solid #e6ebf1 !important; border-radius: 8px !important; padding: 10px 12px !important; min-height: 44px; }
.woocommerce-cart button[name="apply_coupon"],
.woocommerce-cart button[name="update_cart"] { background: #14304f !important; color: #fff !important; border: 0 !important; border-radius: 8px !important; padding: 12px 18px !important; font-weight: 700 !important; }
.woocommerce-cart button[name="apply_coupon"]:hover,
.woocommerce-cart button[name="update_cart"]:hover { background: #2f6fed !important; }
.woocommerce-cart button[name="update_cart"]:disabled { opacity: .5 !important; }

/* balance the coupon / update-cart row (keep the cell as a table-cell so its
   colspan still spans the full width — do NOT set display:flex on the td) */
.woocommerce-cart td.actions { padding: 16px !important; overflow: hidden; }
.woocommerce-cart td.actions .coupon { float: left; display: inline-flex; align-items: center; gap: 8px; margin: 0; }
.woocommerce-cart td.actions .coupon input#coupon_code { width: 240px; max-width: 100%; margin: 0 !important; min-height: 46px; }
.woocommerce-cart td.actions .coupon .button { min-height: 46px; margin: 0 !important; }
.woocommerce-cart td.actions button[name="update_cart"] { float: right; margin: 0 !important; min-height: 46px; }
@media (max-width: 600px) {
	.woocommerce-cart td.actions .coupon { float: none; display: flex; flex-wrap: wrap; margin-bottom: 10px; }
	.woocommerce-cart td.actions .coupon input#coupon_code { width: 100%; flex: 1 1 auto; }
	.woocommerce-cart td.actions button[name="update_cart"] { float: none; width: 100%; }
}

/* cart totals box */
.woocommerce-cart .cart_totals h2 { color: #14304f; }
.woocommerce-cart .cart_totals table.shop_table { border: 1px solid #e6ebf1 !important; border-radius: 12px !important; overflow: hidden; border-collapse: separate !important; border-spacing: 0 !important; }
.woocommerce-cart .cart_totals th { color: #14304f !important; background: #f7f9fc !important; }
.woocommerce-cart .cart_totals td, .woocommerce-cart .cart_totals th { border-top: 1px solid #eef2f7 !important; padding: 14px 16px !important; }
.woocommerce-cart .cart_totals .order-total .amount,
.woocommerce-cart .cart_totals .order-total .woocommerce-Price-amount { color: #14304f !important; }
.woocommerce-cart .shipping-calculator-button { color: #2f6fed !important; }

/* proceed to checkout button → navy */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart a.checkout-button.button.alt {
	background: #14304f !important; background-image: none !important; color: #fff !important; border: 0 !important;
	border-radius: 8px !important; padding: 16px !important; font-weight: 800 !important; font-size: 1.05rem !important;
	text-shadow: none !important; box-shadow: 0 8px 20px rgba(20, 48, 79, .18) !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart a.checkout-button.button.alt:hover { background: #2f6fed !important; }

/* ---- cross-sells ("You may be interested in…") → shop cards ---- */
.woocommerce-cart .cross-sells h2 { color: #14304f; }
.woocommerce-cart .cross-sells ul.products { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.woocommerce-cart .cross-sells ul.products::before,
.woocommerce-cart .cross-sells ul.products::after { content: none !important; display: none !important; }
.woocommerce-cart .cross-sells ul.products li.product {
	width: auto !important; margin: 0 !important; float: none !important; display: flex !important; flex-direction: column; text-align: left;
	background: #fff !important; border: 1px solid #e6ebf1 !important; border-radius: 14px !important; overflow: hidden; padding: 10px 10px 16px !important;
	transition: border-color .2s, box-shadow .2s, transform .2s;
}
.woocommerce-cart .cross-sells ul.products li.product:hover { border-color: #2f6fed !important; box-shadow: 0 10px 28px rgba(20, 48, 79, .10); transform: translateY(-2px); }
.woocommerce-cart .cross-sells li.product a.woocommerce-LoopProduct-link,
.woocommerce-cart .cross-sells li.product a.woocommerce-loop-product__link { display: block !important; text-decoration: none !important; }
.woocommerce-cart .cross-sells li.product img { width: 100% !important; height: 200px; object-fit: contain; background: #eef3f6; border-radius: 10px; padding: 12px; margin: 0 0 14px !important; mix-blend-mode: multiply; display: block; }
.woocommerce-cart .cross-sells li.product .woocommerce-loop-product__title { color: #14304f !important; font-size: 1.05rem !important; font-weight: 700 !important; padding: 0 6px; margin: 0 0 6px !important; }
.woocommerce-cart .cross-sells li.product .price { color: #14304f !important; font-size: 1.15rem !important; font-weight: 800 !important; padding: 0 6px; margin: 0 0 12px !important; }
.woocommerce-cart .cross-sells li.product .price del { color: #8a97a6 !important; font-weight: 400 !important; font-size: .72em !important; }
.woocommerce-cart .cross-sells li.product .price ins { text-decoration: none !important; }
.woocommerce-cart .cross-sells li.product a.button,
.woocommerce-cart .cross-sells li.product a.add_to_cart_button {
	display: block !important; text-align: center !important; margin: auto 6px 0 !important; padding: 12px 16px !important;
	background: #14304f !important; color: #fff !important; border: 0 !important; border-radius: 8px !important; font-weight: 700 !important; text-decoration: none !important;
}
.woocommerce-cart .cross-sells li.product a.button:hover,
.woocommerce-cart .cross-sells li.product a.add_to_cart_button:hover { background: #2f6fed !important; }
.woocommerce-cart .cross-sells .onsale,
.woocommerce-cart .cross-sells span.onsale { display: none !important; }

@media (max-width: 600px) {
	.woocommerce-cart .cross-sells ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.woocommerce-cart .cross-sells li.product img { height: 140px; }
}
