/* ===== Vaishnav Catalyst — WooCommerce dark overrides ===== */
/* Loaded site-wide; safe with non-WC pages (selectors are WC-prefixed). */

/* ---------- Page background + container polish ---------- */
.vc-site.woocommerce .site-content,
.vc-site.woocommerce-page .site-content{background:var(--ink);color:var(--white);}
.vc-site.woocommerce .content-area,
.vc-site.woocommerce-page .content-area{width:100%;}
.vc-site.woocommerce .site-main{padding:64px 0 96px;}
.vc-site.woocommerce .col-full,
.vc-site.woocommerce-page .col-full{max-width:var(--maxw);padding:0 24px;}

/* page title (Shop / single product) */
.vc-site.woocommerce .page-title,
.vc-site.woocommerce .wc-block-components-title{font-family:var(--display);color:var(--white);font-size:clamp(28px,3.6vw,42px);font-weight:700;letter-spacing:-.02em;margin:0 0 28px;}

/* Breadcrumb (we removed Storefront's, but WC block has it) */
.vc-site.woocommerce .woocommerce-breadcrumb,
.vc-site.woocommerce nav.woocommerce-breadcrumbs{color:var(--muted-2);font-size:13px;margin-bottom:18px;}
.vc-site.woocommerce .woocommerce-breadcrumb a{color:var(--muted);}
.vc-site.woocommerce .woocommerce-breadcrumb a:hover{color:var(--amber);}

/* Notices */
.vc-site.woocommerce .woocommerce-message,
.vc-site.woocommerce .woocommerce-info,
.vc-site.woocommerce .woocommerce-error{background:var(--ink-2);border:1px solid var(--line);border-left:3px solid var(--amber);color:var(--white);border-radius:12px;padding:14px 18px;}
.vc-site.woocommerce .woocommerce-error{border-left-color:#e25c5c;}
.vc-site.woocommerce .woocommerce-message::before{color:var(--amber);}

/* ---------- Product loop / shop cards ---------- */
.vc-site.woocommerce ul.products{ display:grid;grid-template-columns:repeat(3,1fr);gap:24px; }
.vc-site.woocommerce ul.products li.product{ background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius-lg);padding:0;overflow:hidden;transition:transform .2s,border-color .2s; }
.vc-site.woocommerce ul.products li.product:hover{ transform:translateY(-4px);border-color:rgba(245,166,35,.4); }
.vc-site.woocommerce ul.products li.product a.woocommerce-loop-product__link{ display:block;text-decoration:none;color:inherit; }
.vc-site.woocommerce ul.products li.product img{ display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:var(--ink-2); }
.vc-site.woocommerce ul.products li.product .woocommerce-loop-product__title{ font-family:var(--display);font-size:17px;color:var(--white);padding:18px 22px 4px;font-weight:600; }
.vc-site.woocommerce ul.products li.product .price{ color:var(--amber);font-family:var(--display);font-weight:700;padding:0 22px 8px;font-size:18px;display:block; }
.vc-site.woocommerce ul.products li.product .price del{ color:var(--muted-2);font-size:13px;opacity:1;margin-right:4px;font-weight:400; }
.vc-site.woocommerce ul.products li.product .price ins{ background:transparent;color:var(--amber);text-decoration:none; }
.vc-site.woocommerce ul.products li.product .star-rating{ color:var(--amber); }
.vc-site.woocommerce ul.products li.product .button,
.vc-site.woocommerce ul.products li.product .add_to_cart_button{ margin:6px 22px 22px;display:inline-flex;align-items:center;justify-content:center;background:var(--amber);color:#1a1208 !important;border-radius:999px;padding:11px 18px;font-weight:600;font-size:14px;text-decoration:none;box-shadow:0 8px 22px -8px rgba(245,166,35,.5); }
.vc-site.woocommerce ul.products li.product .button:hover{ background:var(--amber-2);color:#1a1208 !important;transform:translateY(-1px); }
.vc-site.woocommerce ul.products li.product .added_to_cart{ display:block;margin:0 22px 22px;color:var(--amber);font-size:13px;font-weight:600; }

/* Star rating */
.vc-site .star-rating{ color:var(--amber); }
.vc-site .star-rating::before{ color:var(--muted-2); }

/* ---------- Pagination ---------- */
.vc-site.woocommerce nav.woocommerce-pagination ul{ border:0; }
.vc-site.woocommerce nav.woocommerce-pagination ul li{ border:0; }
.vc-site.woocommerce nav.woocommerce-pagination ul li a,
.vc-site.woocommerce nav.woocommerce-pagination ul li span{ background:var(--ink-2);color:var(--white);border:1px solid var(--line);border-radius:10px;padding:9px 14px;font-weight:500; }
.vc-site.woocommerce nav.woocommerce-pagination ul li a:hover,
.vc-site.woocommerce nav.woocommerce-pagination ul li span.current{ background:var(--amber);color:#1a1208 !important;border-color:var(--amber); }

/* ---------- Result count + ordering ---------- */
.vc-site.woocommerce .woocommerce-result-count,
.vc-site.woocommerce .woocommerce-ordering select{ color:var(--muted);font-size:14px; }
.vc-site.woocommerce .woocommerce-ordering select{ background:var(--ink-2);border:1px solid var(--line);color:var(--white);border-radius:10px;padding:9px 14px;font-family:var(--body); }

/* ---------- Single product ---------- */
.vc-site.woocommerce div.product{ display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:start; }
.vc-site.woocommerce div.product div.images{ background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px; }
.vc-site.woocommerce div.product div.images img{ border-radius:14px;background:var(--ink-3); }
.vc-site.woocommerce div.product .product_title{ font-family:var(--display);color:var(--white);font-size:clamp(28px,3.6vw,42px);font-weight:700;letter-spacing:-.02em;margin:0 0 12px;line-height:1.1; }
.vc-site.woocommerce div.product .woocommerce-product-details__short-description{ color:var(--muted);font-size:15.5px;line-height:1.7;margin:14px 0 22px; }
.vc-site.woocommerce div.product .price{ color:var(--amber);font-family:var(--display);font-weight:700;font-size:30px;margin:6px 0 22px;display:block; }
.vc-site.woocommerce div.product .price del{ color:var(--muted-2);font-size:18px;opacity:1;margin-right:6px;font-weight:400; }
.vc-site.woocommerce div.product .price ins{ background:transparent;color:var(--amber);text-decoration:none; }
.vc-site.woocommerce div.product .product_meta{ color:var(--muted-2);font-size:13.5px;margin:18px 0; }
.vc-site.woocommerce div.product .product_meta a{ color:var(--muted); }
.vc-site.woocommerce div.product .product_meta a:hover{ color:var(--amber); }
.vc-site.woocommerce div.product .stock{ color:var(--amber);font-weight:600;font-size:14px; }
.vc-site.woocommerce div.product form.cart{ background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin:20px 0; }
.vc-site.woocommerce div.product form.cart .quantity{ display:inline-block;margin-right:10px; }
.vc-site.woocommerce div.product form.cart .quantity .qty{ background:var(--ink);color:var(--white);border:1px solid var(--line-2);border-radius:10px;width:90px;padding:12px 14px;font-size:16px;font-family:var(--body); }
.vc-site.woocommerce div.product form.cart .quantity .qty:focus{ outline:none;border-color:var(--amber);box-shadow:0 0 0 3px rgba(245,166,35,.16); }
.vc-site.woocommerce div.product form.cart .single_add_to_cart_button{ background:var(--amber);color:#1a1208 !important;border-radius:999px;padding:14px 28px;font-weight:600;font-size:15px;box-shadow:0 8px 22px -8px rgba(245,166,35,.55); }
.vc-site.woocommerce div.product form.cart .single_add_to_cart_button:hover{ background:var(--amber-2);color:#1a1208 !important;transform:translateY(-1px); }
.vc-site.woocommerce div.product .product-addon-fields,
.vc-site.woocommerce div.product .variations{ margin:0 0 14px; }
.vc-site.woocommerce div.product .variations tr{ display:block;margin-bottom:10px; }
.vc-site.woocommerce div.product .variations td.label{ color:var(--muted);font-size:14px;padding:8px 0;display:block; }
.vc-site.woocommerce div.product .variations select{ background:var(--ink);color:var(--white);border:1px solid var(--line-2);border-radius:10px;padding:11px 14px;width:100%;max-width:280px;font-family:var(--body); }

/* Tabs */
.vc-site.woocommerce div.product .woocommerce-tabs{ margin-top:48px; }
.vc-site.woocommerce div.product .woocommerce-tabs ul.tabs{ padding:0;margin:0 0 -1px;border-bottom:1px solid var(--line); }
.vc-site.woocommerce div.product .woocommerce-tabs ul.tabs li{ border:0;background:transparent;border-radius:0;margin:0; }
.vc-site.woocommerce div.product .woocommerce-tabs ul.tabs li a{ color:var(--muted);font-weight:600;padding:14px 18px;display:inline-block;font-family:var(--display); }
.vc-site.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{ color:var(--white); }
.vc-site.woocommerce div.product .woocommerce-tabs ul.tabs li.active{ border-bottom:2px solid var(--amber); }
.vc-site.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover{ color:var(--white); }
.vc-site.woocommerce div.product .woocommerce-tabs .panel{ background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;color:var(--muted);line-height:1.7; }
.vc-site.woocommerce div.product .woocommerce-tabs .panel h2{ font-family:var(--display);color:var(--white);font-size:18px;margin:0 0 10px; }

/* Reviews */
.vc-site.woocommerce #reviews .commentlist{ padding:0;list-style:none; }
.vc-site.woocommerce #reviews .commentlist li{ background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;margin-bottom:12px; }
.vc-site.woocommerce #reviews .commentlist .meta{ color:var(--muted);font-size:13px; }
.vc-site.woocommerce #reviews .commentlist .meta strong{ color:var(--white); }
.vc-site.woocommerce #reviews #respond{ background:var(--ink-3);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-top:18px; }
.vc-site.woocommerce #reviews .comment-form-rating{ color:var(--muted); }
.vc-site.woocommerce #reviews input,
.vc-site.woocommerce #reviews textarea{ background:var(--ink);color:var(--white);border:1px solid var(--line-2);border-radius:10px;padding:12px 14px;font-family:var(--body);width:100%; }
.vc-site.woocommerce #reviews input:focus,
.vc-site.woocommerce #reviews textarea:focus{ outline:none;border-color:var(--amber);box-shadow:0 0 0 3px rgba(245,166,35,.16); }

/* Up-sells / related */
.vc-site.woocommerce .related.products,
.vc-site.woocommerce .up-sells.products{ margin-top:60px; }
.vc-site.woocommerce .related.products > h2,
.vc-site.woocommerce .up-sells.products > h2{ font-family:var(--display);color:var(--white);font-size:24px;margin:0 0 22px; }

/* ---------- Cart table ---------- */
.vc-site.woocommerce table.shop_table{ background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);color:var(--white);border-collapse:separate;border-spacing:0; }
.vc-site.woocommerce table.shop_table th{ color:var(--muted);font-family:var(--display);font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.06em;background:rgba(255,255,255,.02);border-bottom:1px solid var(--line);padding:14px 16px; }
.vc-site.woocommerce table.shop_table td{ border-top:1px solid var(--line);color:var(--white);padding:16px;vertical-align:middle; }
.vc-site.woocommerce table.shop_table a{ color:var(--white); }
.vc-site.woocommerce table.shop_table a:hover{ color:var(--amber); }
.vc-site.woocommerce table.shop_table .product-name a{ font-weight:600; }
.vc-site.woocommerce table.shop_table .product-price,
.vc-site.woocommerce table.shop_table .product-subtotal{ color:var(--amber);font-weight:700; }
.vc-site.woocommerce table.shop_table .product-quantity input.qty{ background:var(--ink);color:var(--white);border:1px solid var(--line-2);border-radius:10px;width:80px;padding:10px;font-size:15px;text-align:center; }
.vc-site.woocommerce table.shop_table .product-remove a{ color:var(--muted) !important;font-size:20px;text-decoration:none; }
.vc-site.woocommerce table.shop_table .product-remove a:hover{ color:#e25c5c !important; }
.vc-site.woocommerce table.shop_table .coupon input.input-text{ background:var(--ink);color:var(--white);border:1px solid var(--line-2);border-radius:10px;padding:11px 14px;width:auto;min-width:180px; }
.vc-site.woocommerce table.shop_table .coupon button,
.vc-site.woocommerce table.shop_table .actions button{ background:var(--ink-3);color:var(--white) !important;border:1px solid var(--line-2);border-radius:999px;padding:11px 20px;font-weight:600; }
.vc-site.woocommerce table.shop_table .coupon button:hover,
.vc-site.woocommerce table.shop_table .actions button:hover{ border-color:var(--amber);color:var(--white) !important; }

/* Cart totals / collaterals */
.vc-site.woocommerce .cart-collaterals{ background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-top:24px; }
.vc-site.woocommerce .cart-collaterals .cart_totals h2{ font-family:var(--display);color:var(--white);font-size:20px;margin:0 0 14px; }
.vc-site.woocommerce .cart-collaterals .cart_totals table{ background:transparent;border:0; }
.vc-site.woocommerce .cart-collaterals .order-total th,
.vc-site.woocommerce .cart-collaterals .order-total td{ color:var(--white);font-size:18px;font-weight:700; }
.vc-site.woocommerce .cart-collaterals .order-total td .amount{ color:var(--amber); }
.vc-site.woocommerce .wc-proceed-to-checkout a.checkout-button{ background:var(--amber);color:#1a1208 !important;border-radius:999px;padding:15px 28px;font-weight:600;display:block;text-align:center;box-shadow:0 8px 22px -8px rgba(245,166,35,.5); }
.vc-site.woocommerce .wc-proceed-to-checkout a.checkout-button:hover{ background:var(--amber-2);color:#1a1208 !important; }

/* Empty cart */
.vc-site.woocommerce .cart-empty{ background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);padding:36px;text-align:center;color:var(--white);font-size:18px; }
.vc-site.woocommerce .return-to-shop{ text-align:center;margin-top:18px; }
.vc-site.woocommerce .return-to-shop a{ background:var(--amber);color:#1a1208 !important;border-radius:999px;padding:13px 24px;font-weight:600;display:inline-block; }

/* ---------- Checkout ---------- */
.vc-site.woocommerce form.checkout_coupon,
.vc-site.woocommerce form.login,
.vc-site.woocommerce form.register{ background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);padding:24px;color:var(--white); }
.vc-site.woocommerce .woocommerce-form-coupon-toggle .woocommerce-info{ color:var(--muted); }
.vc-site.woocommerce .woocommerce-checkout{ display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:start; }
.vc-site.woocommerce #customer_details .col-1,
.vc-site.woocommerce #customer_details .col-2{ width:100%; }
.vc-site.woocommerce .woocommerce-billing-fields__field-wrapper,
.vc-site.woocommerce .woocommerce-shipping-fields__field-wrapper,
.vc-site.woocommerce .woocommerce-additional-fields{ display:grid;gap:14px; }
.vc-site.woocommerce .woocommerce-billing-fields h3,
.vc-site.woocommerce .woocommerce-shipping-fields h3,
.vc-site.woocommerce #order_review_heading{ font-family:var(--display);color:var(--white);font-size:20px;margin:0 0 16px; }
.vc-site.woocommerce .form-row{ padding:0;margin:0; }
.vc-site.woocommerce .form-row label{ color:var(--muted);font-size:13.5px;font-weight:500;margin-bottom:6px;display:block; }
.vc-site.woocommerce .form-row input.input-text,
.vc-site.woocommerce .form-row textarea,
.vc-site.woocommerce .form-row select{ background:var(--ink);color:var(--white);border:1px solid var(--line-2);border-radius:10px;padding:13px 14px;font-family:var(--body);font-size:15px;width:100%; }
.vc-site.woocommerce .form-row input.input-text:focus,
.vc-site.woocommerce .form-row textarea:focus,
.vc-site.woocommerce .form-row select:focus{ outline:none;border-color:var(--amber);box-shadow:0 0 0 3px rgba(245,166,35,.16); }
.vc-site.woocommerce .form-row .required{ color:#e25c5c; }
.vc-site.woocommerce .form-row .woocommerce-input-wrapper{ display:block;width:100%; }
.vc-site.woocommerce .select2-container--default .select2-selection--single{ background:var(--ink);color:var(--white);border:1px solid var(--line-2);border-radius:10px;min-height:48px; }
.vc-site.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{ color:var(--white);line-height:48px;padding-left:14px; }
.vc-site.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{ height:46px; }
.vc-site.woocommerce .select2-container--default .select2-selection--multiple{ background:var(--ink);border:1px solid var(--line-2);border-radius:10px;min-height:48px; }
.vc-site.woocommerce .select2-container--default .select2-selection--multiple .select2-selection__choice{ background:var(--ink-3);border:1px solid var(--line-2);color:var(--white); }
.vc-site.woocommerce .select2-dropdown{ background:var(--ink-2);border:1px solid var(--line); }
.vc-site.woocommerce .select2-results__option{ color:var(--white); }
.vc-site.woocommerce .select2-results__option--highlighted{ background:var(--amber) !important;color:#1a1208 !important; }
.vc-site.woocommerce #order_review{ background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);padding:24px;position:sticky;top:90px; }
.vc-site.woocommerce #order_review table.shop_table{ border:0;background:transparent; }
.vc-site.woocommerce #order_review table.shop_table th,
.vc-site.woocommerce #order_review table.shop_table td{ background:transparent;padding:10px 0; }
.vc-site.woocommerce #order_review .cart-subtotal th,
.vc-site.woocommerce #order_review .order-total th{ color:var(--muted);font-weight:500;text-transform:none;letter-spacing:0;font-size:14px; }
.vc-site.woocommerce #order_review .order-total td{ color:var(--white);font-size:18px;font-weight:700; }
.vc-site.woocommerce #order_review .order-total .amount{ color:var(--amber); }
.vc-site.woocommerce #payment{ background:transparent; }
.vc-site.woocommerce #payment ul.payment_methods{ border-bottom:1px solid var(--line); }
.vc-site.woocommerce #payment ul.payment_methods li{ background:var(--ink-3);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-bottom:8px; }
.vc-site.woocommerce #payment div.payment_box{ background:var(--ink);color:var(--muted);border-radius:8px;padding:12px 14px; }
.vc-site.woocommerce #payment div.payment_box::before{ border-bottom-color:var(--ink); }
.vc-site.woocommerce #payment .place-order{ padding-top:16px; }
.vc-site.woocommerce #payment .place-order button#place_order{ background:var(--amber);color:#1a1208 !important;border-radius:999px;padding:15px 28px;font-weight:600;width:100%;font-size:16px;box-shadow:0 8px 22px -8px rgba(245,166,35,.5); }
.vc-site.woocommerce #payment .place-order button#place_order:hover{ background:var(--amber-2);color:#1a1208 !important; }
.vc-site.woocommerce .woocommerce-terms-and-conditions-wrapper{ color:var(--muted);font-size:13.5px; }

/* ---------- My account ---------- */
.vc-site.woocommerce .woocommerce-MyAccount-navigation{ background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);padding:18px; }
.vc-site.woocommerce .woocommerce-MyAccount-navigation ul{ list-style:none;margin:0;padding:0; }
.vc-site.woocommerce .woocommerce-MyAccount-navigation li{ border-bottom:1px solid var(--line); }
.vc-site.woocommerce .woocommerce-MyAccount-navigation li:last-child{ border-bottom:0; }
.vc-site.woocommerce .woocommerce-MyAccount-navigation a{ color:var(--muted);font-weight:500;padding:11px 4px;display:block;text-decoration:none; }
.vc-site.woocommerce .woocommerce-MyAccount-navigation a:hover{ color:var(--amber); }
.vc-site.woocommerce .woocommerce-MyAccount-content{ background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);padding:28px;color:var(--white); }
.vc-site.woocommerce .woocommerce-MyAccount-content h2,
.vc-site.woocommerce .woocommerce-MyAccount-content h3{ font-family:var(--display);color:var(--white); }
.vc-site.woocommerce .woocommerce-MyAccount-content a{ color:var(--amber); }
.vc-site.woocommerce .woocommerce-MyAccount-content .button{ background:var(--amber);color:#1a1208 !important; }
.vc-site.woocommerce .woocommerce-MyAccount-content input.input-text{ background:var(--ink);color:var(--white);border:1px solid var(--line-2);border-radius:10px;padding:11px 14px; }
.vc-site.woocommerce .woocommerce-MyAccount-content label{ color:var(--muted);font-size:14px; }

/* ---------- Mini-cart (header drawer) ---------- */
.vc-site .widget_shopping_cart{ background:var(--ink-2);color:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:18px; }
.vc-site .widget_shopping_cart .woocommerce-mini-cart{ list-style:none;margin:0;padding:0; }
.vc-site .widget_shopping_cart .woocommerce-mini-cart li{ display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line); }
.vc-site .widget_shopping_cart .woocommerce-mini-cart li img{ width:54px;height:54px;object-fit:cover;border-radius:8px; }
.vc-site .widget_shopping_cart .woocommerce-mini-cart li a{ color:var(--white);font-size:14px; }
.vc-site .widget_shopping_cart .woocommerce-mini-cart li .quantity{ color:var(--muted);font-size:12px; }
.vc-site .widget_shopping_cart .woocommerce-mini-cart li .remove_from_cart_button{ color:var(--muted) !important;font-size:18px; }
.vc-site .widget_shopping_cart .total{ color:var(--white);font-weight:700;padding:10px 0; }
.vc-site .widget_shopping_cart .total .amount{ color:var(--amber); }
.vc-site .widget_shopping_cart .buttons a{ display:inline-block;background:var(--ink-3);color:var(--white) !important;border:1px solid var(--line-2);border-radius:999px;padding:10px 16px;font-weight:600;font-size:13.5px;margin:0 4px 4px 0;text-decoration:none; }
.vc-site .widget_shopping_cart .buttons a.checkout{ background:var(--amber);color:#1a1208 !important;border-color:var(--amber); }

/* ---------- Form-row full width helper ---------- */
.vc-site.woocommerce .form-row.form-row-wide,
.vc-site.woocommerce .form-row.form-row-first,
.vc-site.woocommerce .form-row.form-row-last{ width:100%; }

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .vc-site.woocommerce ul.products{ grid-template-columns:repeat(2,1fr); }
  .vc-site.woocommerce div.product{ grid-template-columns:1fr;gap:30px; }
  .vc-site.woocommerce-checkout{ grid-template-columns:1fr; }
  .vc-site.woocommerce #order_review{ position:static; }
}
@media (max-width:560px){
  .vc-site.woocommerce ul.products{ grid-template-columns:1fr; }
}
