/* ============================================
   Origins by Hawwa — WooCommerce CSS v3.0
   Full override of all WC default styles
   ============================================ */

/* ── Global link fix inside WC ── */
.woocommerce a, .woocommerce-page a { color: var(--espresso); text-decoration: none; }
.woocommerce a:hover, .woocommerce-page a:hover { color: var(--gold); }

/* ── Mobile menu drawer — override WC global link color on all pages ── */
.woocommerce .mobile-menu-overlay .mobile-nav-links a,
.woocommerce-page .mobile-menu-overlay .mobile-nav-links a { color: var(--cream) !important; text-decoration: none; }
.woocommerce .mobile-menu-overlay .mobile-nav-links a:hover,
.woocommerce-page .mobile-menu-overlay .mobile-nav-links a:hover { color: var(--gold) !important; }
.woocommerce .mobile-menu-overlay .mobile-nav-links li.current-menu-item > a,
.woocommerce-page .mobile-menu-overlay .mobile-nav-links li.current-menu-item > a { color: var(--cream) !important; }
.woocommerce .mobile-menu-overlay .mobile-menu-close,
.woocommerce-page .mobile-menu-overlay .mobile-menu-close { color: var(--taupe) !important; }
.woocommerce .mobile-menu-overlay .mobile-menu-social-link,
.woocommerce-page .mobile-menu-overlay .mobile-menu-social-link { color: var(--mink) !important; }

/* ── Breadcrumb ── */
.woocommerce-breadcrumb {
    font-family: 'Jost', sans-serif; font-size: 11px; font-weight: 300;
    color: var(--mink) !important; padding: 16px 0 20px;
    border-bottom: 1px solid var(--sand); margin-bottom: 0; background: none;
}
.woocommerce-breadcrumb a { color: var(--mink) !important; }
.woocommerce-breadcrumb a:hover { color: var(--gold) !important; }

/* ── Prices ── */
.woocommerce .price, .woocommerce div.product p.price,
.woocommerce div.product span.price, .woocommerce-Price-amount.amount {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 34px !important; font-weight: 400 !important;
    color: var(--deep) !important; text-decoration: none !important;
}
.woocommerce div.product p.price { margin-bottom: 20px; display: block; }
.woocommerce .price del .woocommerce-Price-amount { color: var(--taupe) !important; font-size: 22px !important; }
.woocommerce .price ins { background: none; text-decoration: none; }

/* ── Stars ── */
.star-rating, .star-rating span::before, .star-rating::before { color: var(--gold) !important; }

/* ══════════════════════════════════════════════
   BUTTON OVERRIDE — espresso, NOT purple
   Target every possible WC button selector
══════════════════════════════════════════════ */
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce input[type="submit"],
.woocommerce #respond input#submit,
.woocommerce .single_add_to_cart_button,
.woocommerce-page button.button,
.woocommerce-page a.button,
.woocommerce-page input.button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order,
.woocommerce .checkout-button,
.woocommerce .btn.checkout,
.cart .button {
    background: var(--espresso) !important;
    background-color: var(--espresso) !important;
    color: #fff !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 11px !important; font-weight: 400 !important;
    letter-spacing: 3px !important; text-transform: uppercase !important;
    padding: 15px 32px !important; border: none !important;
    border-radius: 0 !important; box-shadow: none !important;
    cursor: pointer !important; transition: background 0.3s !important;
    text-decoration: none !important; display: inline-block !important;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #payment #place_order:hover { background: var(--gold) !important; color: #fff !important; }
.woocommerce button.button:disabled, .woocommerce button.button.disabled { background: var(--taupe) !important; cursor: not-allowed !important; }

/* ── Quantity ── */
.woocommerce .quantity { display: inline-flex; align-items: center; border: 1px solid var(--sand); background: white; margin-right: 12px; }
.woocommerce .quantity .qty { border: none; border-left: 1px solid var(--sand); border-right: 1px solid var(--sand); text-align: center; width: 56px; padding: 12px 6px; font-family: 'Cormorant Garamond', serif; font-size: 20px; color: var(--espresso); background: transparent; -moz-appearance: textfield; outline: none; }
.woocommerce .quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; }

/* ── Notices ── */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
    font-family: 'Jost', sans-serif; font-size: 13px; font-weight: 300;
    padding: 14px 20px 14px 24px; border-left: 3px solid var(--gold);
    border-top: none; border-right: none; border-bottom: none;
    background: var(--cream); color: var(--espresso); margin-bottom: 24px; box-shadow: none;
}
.woocommerce-error { border-left-color: #c0392b; }
.woocommerce-message::before, .woocommerce-info::before { display: none; }
.woocommerce-message a { color: var(--gold) !important; font-weight: 400; }

/* ── Forms ── */
.woocommerce form .form-row label {
    font-family: 'Jost', sans-serif; font-size: 10px; font-weight: 400;
    letter-spacing: 3px; text-transform: uppercase; color: var(--espresso);
    display: block; margin-bottom: 9px;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
    width: 100%; border: 1px solid var(--sand) !important; background: white !important;
    padding: 14px 18px !important; font-family: 'Jost', sans-serif !important;
    font-size: 13px !important; color: var(--espresso) !important;
    outline: none !important; border-radius: 0 !important; box-shadow: none !important; height: auto !important;
}
.woocommerce form .form-row input.input-text:focus { border-color: var(--gold) !important; }

/* ── Cart table ── */
.woocommerce table.shop_table { border: none; border-collapse: collapse; width: 100%; font-family: 'Jost', sans-serif; }
.woocommerce table.shop_table th { font-family: 'Jost', sans-serif; font-size: 10px; font-weight: 400; letter-spacing: 3px; text-transform: uppercase; color: var(--mink); padding: 14px 0; border-bottom: 1px solid var(--sand); border-top: none; text-align: left; }
.woocommerce table.shop_table td { padding: 24px 12px 24px 0; border-bottom: 1px solid var(--sand); vertical-align: middle; }
.woocommerce table.shop_table td.product-name { font-family: 'Cormorant Garamond', serif; font-size: 20px; font-weight: 300; color: var(--espresso); }
.woocommerce table.shop_table td.product-name a { color: var(--espresso) !important; }
.woocommerce table.shop_table td.product-name a:hover { color: var(--gold) !important; }
.woocommerce table.shop_table td.product-price,
.woocommerce table.shop_table td.product-subtotal { font-family: 'Cormorant Garamond', serif; font-size: 22px; font-weight: 400; color: var(--deep); }
.woocommerce table.shop_table td.product-thumbnail img { width: 80px; height: 96px; object-fit: cover; }
.woocommerce .cart a.remove { font-size: 22px; color: var(--taupe) !important; font-weight: 300; text-decoration: none; display: block; width: 24px; text-align: center; line-height: 1; background: none; }
.woocommerce .cart a.remove:hover { color: var(--espresso) !important; background: none; }

/* Cart totals */
.cart_totals h2, .cart-collaterals h2 { font-family: 'Cormorant Garamond', serif; font-size: 30px; font-weight: 300; color: var(--espresso); margin-bottom: 24px; }
.cart_totals table th, .cart_totals table td { font-family: 'Jost', sans-serif; font-size: 13px; font-weight: 300; color: var(--mink); padding: 14px 0; border-bottom: 1px solid var(--sand); }
.cart_totals table tr.order-total th, .cart_totals table tr.order-total td { font-family: 'Cormorant Garamond', serif; font-size: 22px; font-weight: 400; color: var(--espresso); }
.cart_totals { background: var(--cream); padding: 36px; }
.coupon input.input-text { border: 1px solid var(--sand) !important; background: white !important; padding: 13px 18px !important; font-family: 'Jost', sans-serif !important; font-size: 12px !important; color: var(--espresso) !important; outline: none !important; border-radius: 0 !important; width: auto !important; }

/* ── Product Tabs ── */
.woocommerce div.product .woocommerce-tabs ul.tabs { border-bottom: 1px solid var(--sand); padding: 0; margin: 0 0 36px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: transparent; border: none; margin: 0; padding: 0; border-radius: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-family: 'Jost', sans-serif; font-size: 11px; font-weight: 400; letter-spacing: 2.5px; text-transform: uppercase; color: var(--mink) !important; padding: 14px 24px; display: block; border-bottom: 2px solid transparent; text-decoration: none; transition: all 0.2s; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color: var(--espresso) !important; border-bottom-color: var(--gold); }
.woocommerce div.product .woocommerce-tabs .panel { font-family: 'Jost', sans-serif; font-size: 14px; font-weight: 300; line-height: 1.9; color: var(--mink); }
.woocommerce div.product .woocommerce-tabs .panel h2 { display: none; }

/* ── Related products ── */
.related > h2, .related.products > h2 { font-family: 'Cormorant Garamond', serif; font-size: 36px; font-weight: 300; color: var(--espresso); margin-bottom: 32px; padding-top: 60px; border-top: 1px solid var(--sand); }

/* ── My Account — stub replaced by full design block below ── */

/* ── Checkout ── */
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout h3#ship-to-different-address { font-family: 'Cormorant Garamond', serif; font-size: 28px; font-weight: 300; color: var(--espresso); margin-bottom: 24px; padding-bottom: 16px; border-bottom: 1px solid var(--sand); }
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td { font-family: 'Jost', sans-serif; font-size: 13px; font-weight: 300; color: var(--mink); padding: 12px 0; border-bottom: 1px solid var(--sand); }
.woocommerce-checkout-review-order-table tfoot .order-total td { font-family: 'Cormorant Garamond', serif; font-size: 24px; font-weight: 400; color: var(--espresso); }
#payment { background: var(--cream); padding: 28px; border-radius: 0; border: none; }
#payment ul.payment_methods { list-style: none; padding: 0; margin-bottom: 20px; }
#payment ul.payment_methods li label { font-family: 'Jost', sans-serif; font-size: 13px; font-weight: 300; color: var(--espresso); cursor: pointer; }
#payment .payment_box { background: rgba(0,0,0,0.04); font-family: 'Jost', sans-serif; font-size: 12px; font-weight: 300; color: var(--mink); padding: 12px; border-radius: 0; }

/* ── WC pagination ── */
.woocommerce nav.woocommerce-pagination ul { border: none; display: flex; gap: 6px; list-style: none; padding: 0; margin: 40px auto; justify-content: center; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span { font-family: 'Jost', sans-serif; font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: var(--mink) !important; padding: 10px 18px; border: 1px solid var(--sand); display: block; transition: all 0.2s; }
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--espresso); color: white !important; border-color: var(--espresso); }

/* ════════════════════════════════════════════
   Single product — button layout overrides
════════════════════════════════════════════ */
.woocommerce div.product form.cart {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    flex-wrap: wrap;
}

.woocommerce div.product form.cart .quantity { flex-shrink: 0; }

.woocommerce div.product form.cart .single_add_to_cart_button {
    flex: 1;
    text-align: center;
    white-space: nowrap;
    min-width: 160px;
}

/* Ensure btn-add-wishlist always renders */
.btn-add-wishlist {
    display: flex !important;
    visibility: visible !important;
}

/* WC loop wrapper — no float, use our grid */
.woocommerce ul.products::after { content: none; display: none; }
.woocommerce ul.products { overflow: visible; }

/* ════════════════════════════════════════════
   YITH WISHLIST — Single Product Button Reskin
════════════════════════════════════════════ */
.single-wishlist-wrap { margin-bottom: 20px; }
.single-wishlist-wrap .yith-wcwl-add-to-wishlist {
    position: static;
    display: block;
}
.single-wishlist-wrap .yith-wcwl-add-to-wishlist .add_to_wishlist,
.single-wishlist-wrap .yith-wcwl-add-to-wishlist a {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    border: 1px solid var(--sand) !important;
    border-radius: 0 !important;
    padding: 14px 28px !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 10px !important;
    font-weight: 300 !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    color: var(--espresso) !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: border-color 0.25s, color 0.25s, background 0.25s !important;
    width: 100% !important;
    justify-content: center;
}
.single-wishlist-wrap .yith-wcwl-add-to-wishlist .add_to_wishlist:hover,
.single-wishlist-wrap .yith-wcwl-add-to-wishlist a:hover {
    border-color: var(--gold) !important;
    color: var(--gold) !important;
}
/* Show heart icon alongside YITH text */
.single-wishlist-wrap .yith-wcwl-add-to-wishlist .add_to_wishlist::before,
.single-wishlist-wrap .yith-wcwl-add-to-wishlist a::before {
    content: '';
    display: inline-block !important;
    width: 14px !important;
    height: 14px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232A1F1A' stroke-width='1.5'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E") center/contain no-repeat !important;
    flex-shrink: 0 !important;
}
.single-wishlist-wrap .yith-wcwl-add-to-wishlist a.yith-wcwl-wishlistadded::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23B8986A' stroke='%23B8986A' stroke-width='1.5'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E") !important;
}
.single-wishlist-wrap .yith-wcwl-add-to-wishlist a.yith-wcwl-wishlistadded {
    color: var(--gold) !important;
    border-color: var(--gold) !important;
}
/* Hide YITH's own icon span — we use CSS ::before */
.yith-wcwl-add-to-wishlist .yith-wcwl-icon { display: none !important; }
/* YITH notices / feedback */
.yith-wcwl-add-to-wishlist .yith_wcwl_notice { display: none !important; }

/* ════════════════════════════════════════════
   WooCommerce product search widget — hide everywhere
   (we use the header search overlay exclusively)
════════════════════════════════════════════ */
.widget_product_search,
.woocommerce-product-search,
.widget.woocommerce.widget_product_search {
    display: none !important;
}
/* Hide submit buttons ONLY inside search forms — not login/register/checkout */
.site-content form[role="search"] input[type="submit"],
.site-content .searchform input[type="submit"],
.site-content form[role="search"] button[type="submit"],
.site-content .searchform button[type="submit"] {
    display: none !important;
}

/* ════════════════════════════════════════════
   WooCommerce — Extra responsive fixes
════════════════════════════════════════════ */
@media (max-width: 1024px) {
    .product-page { flex-direction: column; gap: 40px; }
    .product-gallery { max-width: 100%; }
}
@media (max-width: 768px) {
    .woocommerce div.product { padding: 0; }
    .single-product-wrap { padding: 0 0 60px; }
    .product-tabs-wrap { padding: 40px 20px 0; }
    .woocommerce .related.products { padding: 0 20px; }
    .woocommerce-cart-form { overflow-x: auto; }
    .woocommerce table.shop_table { font-size: 13px; }
    .woocommerce table.shop_table td,
    .woocommerce table.shop_table th { padding: 10px 8px; }
    .woocommerce-checkout #payment { padding: 16px; }
    .woocommerce-checkout .col2-set .col-1,
    .woocommerce-checkout .col2-set .col-2 { width: 100%; float: none; }
}

/* ════════════════════════════════════════════
   WooCommerce — Mobile 2-column product grids (all pages)
════════════════════════════════════════════ */
@media (max-width: 768px) {
    /* Archive, shop, category pages — 2 columns */
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
        float: none !important;
    }
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    /* Related products — 2 columns */
    .related.products ul.products,
    .upsells.products ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }
}
@media (max-width: 480px) {
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }
}

/* ════════════════════════════════════════════
   FINAL CONSOLIDATED WC MOBILE GRID FIXES
════════════════════════════════════════════ */
@media (max-width: 768px) {
    /* Force 2-col on every WC product loop page */
    .woocommerce ul.products,
    .woocommerce-page ul.products,
    .woocommerce ul.products.cat-grid,
    .woocommerce-page ul.products.cat-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
        float: none !important;
        padding: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
        padding: 0 !important;
        min-height: unset !important;
    }
    /* Related on single product */
    .related.products ul.products,
    .upsells.products ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }
    /* Ensure WC default columns class doesn't override */
    .woocommerce ul.products.columns-3,
    .woocommerce ul.products.columns-4,
    .woocommerce-page ul.products.columns-3,
    .woocommerce-page ul.products.columns-4 {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
@media (max-width: 480px) {
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }
}

/* ════════════════════════════════════════════
   CARD HEART BUTTON — defined in main.css
   (No YITH shortcode on cards; custom button handles AJAX)
════════════════════════════════════════════ */

/* ════════════════════════════════════════════
   CART PAGE — 4-product grid (same cat-card style as shop)
════════════════════════════════════════════ */
.cart-new-products {
    padding: 60px 0 40px;
    clear: both;
}
.cart-new-products .cnp-eyebrow {
    display: block;
    font-family: 'Jost', sans-serif;
    font-size: 10px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--gold, #B8986A);
    margin-bottom: 10px;
}
.cart-new-products .cnp-heading {
    font-family: 'Cormorant Garamond', serif;
    font-size: 36px;
    font-weight: 300;
    color: var(--espresso, #2A1F1A);
    margin-bottom: 32px;
    font-style: italic;
}
.cart-new-products .cnp-heading em {
    font-style: italic;
    color: var(--gold, #B8986A);
}

/* The grid — force 4 columns, override all WC defaults */
.cart-new-products .products.cat-grid,
.cart-new-products-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    float: none !important;
}

/* Each cat-card in the grid fills its cell */
.cart-new-products .cat-card {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

@media (max-width: 900px) {
    .cart-new-products .products.cat-grid,
    .cart-new-products-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
@media (max-width: 500px) {
    .cart-new-products .products.cat-grid,
    .cart-new-products-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ════════════════════════════════════════════
   FOOTER SOCIAL ICONS — polish
════════════════════════════════════════════ */

/* ════════════════════════════════════════════════════════════════
   WOOCOMMERCE DESIGN-MATCH FIXES
   Reconciled against HTML reference files
   ════════════════════════════════════════════════════════════════ */

/* ── WC price inside product cards ── */
.cat-price .woocommerce-Price-amount,
.cat-price .price,
.cat-price .amount {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: inherit !important;
    font-weight: 400 !important;
    color: var(--deep) !important;
    text-decoration: none !important;
}
.cat-price del { opacity: 0.5; }
.cat-price ins { background: none; text-decoration: none; }

/* ── WC price inside featured cards ── */
.product-price .woocommerce-Price-amount,
.product-price .amount {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: inherit !important;
    font-weight: 400 !important;
    color: var(--deep) !important;
}

/* ── Remove WC default product loop column widths ── */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    clear: none !important;
}

/* ── Archive ul.products inherits cat-grid layout ── */
.woocommerce ul.products.cat-grid,
.woocommerce-page ul.products.cat-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    max-width: 1300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* ── Pagination ── */
.woocommerce nav.woocommerce-pagination ul {
    border: none !important;
    margin: 48px auto 0 !important;
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    list-style: none !important;
    padding: 0 !important;
}
.woocommerce nav.woocommerce-pagination ul li { border: none !important; margin: 0 !important; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    font-family: 'Jost', sans-serif !important;
    font-size: 12px !important;
    font-weight: 300 !important;
    color: var(--mink) !important;
    padding: 10px 16px !important;
    border: 1px solid var(--sand) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 42px !important;
    transition: all 0.2s !important;
    text-decoration: none !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover { background: var(--cream) !important; color: var(--espresso) !important; border-color: var(--taupe) !important; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--espresso) !important; color: white !important; border-color: var(--espresso) !important; font-weight: 400 !important; }

/* ── Add to cart button — espresso, transitions to gold ── */
.woocommerce button.button.add_to_cart_button,
.woocommerce button.button.single_add_to_cart_button,
.woocommerce .single_add_to_cart_button {
    background: var(--espresso) !important;
    color: white !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    padding: 16px 32px !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    cursor: pointer !important;
    transition: background 0.3s !important;
    width: 100% !important;
    margin-top: 0 !important;
    display: block !important;
}
.woocommerce button.button.add_to_cart_button:hover,
.woocommerce button.button.single_add_to_cart_button:hover,
.woocommerce .single_add_to_cart_button:hover { background: var(--gold) !important; }

/* ── Quantity input ── */
.woocommerce .quantity {
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid var(--sand) !important;
    background: white !important;
    height: 52px !important;
}
.woocommerce .quantity .qty {
    border: none !important;
    border-left: 1px solid var(--sand) !important;
    border-right: 1px solid var(--sand) !important;
    text-align: center !important;
    width: 52px !important;
    padding: 8px 4px !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 20px !important;
    color: var(--espresso) !important;
    background: transparent !important;
    -moz-appearance: textfield !important;
    outline: none !important;
    height: 100% !important;
}

/* ── WC notices match reference ── */
.woocommerce-message,
.woocommerce-info {
    border-left: 3px solid var(--gold) !important;
    background: var(--cream) !important;
    color: var(--espresso) !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    padding: 14px 20px !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
}

/* ── Cart layout fix when WC renders its own table ── */
.woocommerce-cart .woocommerce {
    padding: 0 !important;
}
.woocommerce-cart table.cart {
    margin-bottom: 0 !important;
}
/* Cart collaterals (order summary) */
.woocommerce-cart .cart-collaterals {
    float: none !important;
    width: 100% !important;
}

/* ── Related products ── */
.related.products > h2,
.related > h2 {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 36px !important;
    font-weight: 300 !important;
    color: var(--espresso) !important;
    margin-bottom: 32px !important;
    padding-top: 60px !important;
    border-top: 1px solid var(--sand) !important;
}

/* ── Responsive WC ── */
@media (max-width: 992px) {
    .woocommerce ul.products.cat-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 768px) {
    .woocommerce ul.products.cat-grid { gap: 10px !important; }
    .woocommerce nav.woocommerce-pagination ul li a,
    .woocommerce nav.woocommerce-pagination ul li span { padding: 8px 12px !important; min-width: 36px !important; }
}

/* ══════════════════════════════════════════════
   CHECKOUT PAGE
   Layout is handled by form-checkout.php template
   via .obh-checkout-inner / .obh-checkout-left / .obh-checkout-right
   — do NOT add grid rules here as they conflict
   ══════════════════════════════════════════════ */

/* Page wrapper — full width, no max-width cap here */
.woocommerce-checkout .woocommerce {
    max-width: 100%;
    margin: 0;
    padding: 0 !important;
}

/* Disable WC's own grid on the <form> — our template wrapper takes over */
.woocommerce-checkout form.woocommerce-checkout {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Input fields — match basket/brand style */
.woocommerce-checkout .woocommerce-input-wrapper input,
.woocommerce-checkout .woocommerce-input-wrapper select,
.woocommerce-checkout .woocommerce-input-wrapper textarea {
    border: 1px solid var(--sand) !important;
    border-radius: 0 !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    color: var(--espresso) !important;
    padding: 13px 16px !important;
    background: white !important;
    transition: border-color 0.2s;
}
.woocommerce-checkout .woocommerce-input-wrapper input:focus,
.woocommerce-checkout .woocommerce-input-wrapper select:focus {
    border-color: var(--gold) !important;
    outline: none !important;
    box-shadow: none !important;
}
.woocommerce-checkout .form-row label {
    font-family: 'Jost', sans-serif;
    font-size: 10px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--mink);
    margin-bottom: 8px;
    display: block;
}

/* Order table in summary */
.woocommerce-checkout .woocommerce-checkout-review-order-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 0;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
    font-family: 'Jost', sans-serif;
    font-size: 13px;
    font-weight: 300;
    color: var(--mink);
    padding: 12px 0;
    border-bottom: 1px solid var(--sand);
    vertical-align: middle;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .order-total td,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .order-total th {
    font-family: 'Cormorant Garamond', serif;
    font-size: 24px;
    font-weight: 400;
    color: var(--espresso);
    border-bottom: none;
    padding-top: 16px;
}

/* Place order button */
.woocommerce-checkout #payment #place_order {
    width: 100% !important;
    background: var(--espresso) !important;
    color: white !important;
    border: none !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    padding: 18px !important;
    cursor: pointer !important;
    transition: background 0.3s !important;
    border-radius: 0 !important;
    margin-top: 16px !important;
}
.woocommerce-checkout #payment #place_order:hover {
    background: var(--deep) !important;
}

/* Payment section */
.woocommerce-checkout #payment {
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
    margin-top: 0 !important;
}
.woocommerce-checkout #payment ul.payment_methods {
    border-bottom: 1px solid var(--sand) !important;
    padding-bottom: 16px !important;
    margin-bottom: 16px !important;
}

/* Responsive — handled entirely inside form-checkout.php template */

/* ══════════════════════════════════════════════════
   ARCHIVE / SHOP — Mobile grid overflow fix
   Prevents cards bleeding off screen edges on mobile
   ══════════════════════════════════════════════════ */
@media (max-width: 768px) {
    /* WC injects a .woocommerce div inside the cat-grid-wrap — constrain it */
    .cat-grid-wrap > .woocommerce,
    .woocommerce-page .woocommerce {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }
    /* The ul.products WC renders — must stay within the wrap */
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    /* Badge + heart btn: stop them overflowing the card edge */
    .cat-badge {
        top: 10px !important;
        left: 10px !important;
        font-size: 8px !important;
        padding: 4px 8px !important;
        max-width: calc(100% - 50px) !important; /* never overlap heart btn */
    }
    .card-heart-btn {
        top: 8px !important;
        right: 8px !important;
        width: 30px !important;
        height: 30px !important;
    }
}

@media (max-width: 480px) {
    .cat-grid-wrap > .woocommerce,
    .woocommerce-page .woocommerce {
        overflow: hidden !important;
    }
    .cat-badge {
        font-size: 7px !important;
        padding: 3px 7px !important;
    }
}

/* ══════════════════════════════════════════════════
   LOGIN / REGISTER PAGE — Button fix
   Root cause: woocommerce_output_content_wrapper was
   removed globally, so .woocommerce wrapper was missing
   on account pages — breaking .woocommerce button.button.
   Fixed in woocommerce-hooks.php (wrapper now kept on
   account/login/cart/checkout pages).
   These rules are a CSS safety net — no .woocommerce
   parent required.
   ══════════════════════════════════════════════════ */

/* Login & register submit — work with OR without .woocommerce wrapper */
.woocommerce-form-login button[type="submit"],
.woocommerce-form-login input[type="submit"],
.woocommerce-form-register button[type="submit"],
.woocommerce-form-register input[type="submit"],
button.woocommerce-form-login__submit,
button.woocommerce-Button,
.login button[type="submit"] {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    background: var(--espresso, #2A1F1A) !important;
    color: #fff !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    padding: 15px 32px !important;
    border: none !important;
    border-radius: 0 !important;
    cursor: pointer !important;
    width: 100% !important;
    margin-top: 8px !important;
    height: auto !important;
    line-height: normal !important;
    overflow: visible !important;
    clip: auto !important;
    position: static !important;
}

.woocommerce-form-login button[type="submit"]:hover,
.woocommerce-form-register button[type="submit"]:hover,
button.woocommerce-form-login__submit:hover,
button.woocommerce-Button:hover {
    background: var(--gold, #B8986A) !important;
    color: #fff !important;
}

/* Mobile: full-width, comfortable tap target */
@media (max-width: 768px) {
    .woocommerce-form-login button[type="submit"],
    .woocommerce-form-register button[type="submit"],
    button.woocommerce-form-login__submit,
    button.woocommerce-Button,
    .login button[type="submit"] {
        width: 100% !important;
        padding: 16px 20px !important;
    }
    .woocommerce-account .woocommerce,
    .woocommerce form.woocommerce-form-login,
    .woocommerce form.register {
        padding: 0 16px !important;
        box-sizing: border-box !important;
    }
}


/* ══════════════════════════════════════════════════════════════════
   MY ACCOUNT — Full Design Match v4
   Pixel-perfect match to reference images:
     • dds.PNG       (WooCommerce default Orders page)
     • Capture.PNG   (Desktop Order History redesign)
     • WhatsApp img  (Mobile My Account)
   ══════════════════════════════════════════════════════════════════ */

/* ── Strip WP page title on account pages ── */
.woocommerce-account .page-title,
.woocommerce-account h1.page-title,
.woocommerce-account .entry-title { display: none !important; }

/* ── Empty notices wrapper ── */
.woocommerce-account .woocommerce-notices-wrapper:empty { display: none; }

/* ── Remove all container padding ── */
.obh-account-main { margin: 0 !important; padding: 0 !important; }
.obh-account-wrap { margin: 0 !important; padding: 0 !important; max-width: 100% !important; }
.woocommerce-account .site-main .container { max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
.woocommerce-account .page-content,
.woocommerce-account .entry-content { padding: 0 !important; margin: 0 !important; }

/* ═══════════════════════════════════════
   OUTER FLEX WRAPPER
   ═══════════════════════════════════════ */
.woocommerce-account .woocommerce {
    display: flex !important;
    align-items: stretch !important;
    min-height: 75vh !important;
    padding: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    gap: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* ═══════════════════════════════════════
   SIDEBAR — cream background, 300px
   ═══════════════════════════════════════ */
.woocommerce-account .woocommerce-MyAccount-navigation {
    float: none !important;
    width: 300px !important;
    min-width: 300px !important;
    flex-shrink: 0 !important;
    background: var(--cream, #F8F4EE) !important;
    border-right: 1px solid var(--sand, #E8DDD0) !important;
    padding: 52px 40px 80px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    box-sizing: border-box !important;
}

/* ── Profile block (avatar + name + email) injected by PHP ── */
.obh-account-profile {
    margin-bottom: 44px;
    width: 100%;
    padding-bottom: 32px;
    border-bottom: 1px solid var(--sand, #E8DDD0);
}

.obh-avatar {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--gold, #B8986A) 0%, var(--espresso, #2A1F1A) 100%);
    color: white;
    font-family: 'Cormorant Garamond', serif;
    font-size: 28px;
    font-weight: 300;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    letter-spacing: 1px;
    flex-shrink: 0;
    box-shadow: 0 4px 20px rgba(184,152,106,0.22);
}

.obh-account-name {
    font-family: 'Cormorant Garamond', serif;
    font-size: 26px;
    font-weight: 300;
    color: var(--espresso, #2A1F1A);
    margin: 0 0 5px;
    line-height: 1.2;
}

.obh-account-email {
    font-family: 'Jost', sans-serif;
    font-size: 12px;
    font-weight: 300;
    color: var(--mink, #9B8B7E);
    letter-spacing: 0.3px;
}

/* ── Nav list ── */
.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 3px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    border-bottom: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    font-family: 'Jost', sans-serif !important;
    font-size: 11px !important;
    font-weight: 300 !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    color: var(--mink, #9B8B7E) !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 13px 16px !important;
    text-decoration: none !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    border-left: 2px solid transparent !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
    color: var(--espresso, #2A1F1A) !important;
    background: white !important;
    border-color: var(--sand, #E8DDD0) !important;
    border-left-color: var(--sand, #E8DDD0) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active > a {
    color: var(--espresso, #2A1F1A) !important;
    background: white !important;
    border: 1px solid var(--sand, #E8DDD0) !important;
    border-left: 2px solid var(--gold, #B8986A) !important;
    font-weight: 400 !important;
    box-shadow: 0 2px 12px rgba(42,31,26,0.05) !important;
    padding-left: 14px !important;
}

/* Logout — visually separated */
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout {
    margin-top: 32px !important;
    padding-top: 32px !important;
    border-top: 1px solid var(--sand, #E8DDD0) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout > a {
    color: rgba(155,139,126,0.5) !important;
    font-size: 10px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout > a:hover {
    color: var(--mink, #9B8B7E) !important;
    background: transparent !important;
    border-color: transparent !important;
}

/* Hide any ghost avatar WC or plugins add */
.woocommerce-account .woocommerce-MyAccount-navigation::before { display: none !important; content: none !important; }

/* ═══════════════════════════════════════
   CONTENT AREA — warm-white, flex 1
   ═══════════════════════════════════════ */
.woocommerce-account .woocommerce-MyAccount-content {
    float: none !important;
    flex: 1 !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 56px 64px 100px !important;
    background: var(--warm-white, #FDFAF6) !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    color: var(--mink, #9B8B7E) !important;
    line-height: 1.9 !important;
    box-sizing: border-box !important;
}

/* ── Section headings ── */
.woocommerce-account .woocommerce-MyAccount-content > h2:first-child,
.woocommerce-account .woocommerce-MyAccount-content h2 {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 52px !important;
    font-weight: 300 !important;
    color: var(--espresso, #2A1F1A) !important;
    margin: 0 0 40px !important;
    letter-spacing: -0.01em !important;
    line-height: 1.1 !important;
    padding-bottom: 20px !important;
    border-bottom: 1px solid var(--sand, #E8DDD0) !important;
}

.woocommerce-account .woocommerce-MyAccount-content h3 {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 28px !important;
    font-weight: 300 !important;
    color: var(--espresso, #2A1F1A) !important;
    margin: 0 0 20px !important;
}

/* ── Dashboard welcome text ── */
.woocommerce-account .woocommerce-MyAccount-content > p,
.woocommerce-account .woocommerce-MyAccount-content p {
    font-family: 'Jost', sans-serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    color: var(--mink, #9B8B7E) !important;
    line-height: 2 !important;
    margin-bottom: 16px !important;
}

.woocommerce-account .woocommerce-MyAccount-content p a {
    color: var(--gold, #B8986A) !important;
    text-decoration: none !important;
    border-bottom: 1px solid var(--gold-light, #D4B896) !important;
    transition: all 0.2s !important;
}
.woocommerce-account .woocommerce-MyAccount-content p a:hover {
    border-bottom-color: var(--gold, #B8986A) !important;
}

/* ═══════════════════════════════════════
   ORDER TABLE → CARD LAYOUT
   ═══════════════════════════════════════ */

/* Table → flex column of cards */
.woocommerce-account .woocommerce-orders-table {
    width: 100% !important;
    border: none !important;
    border-collapse: unset !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    margin-bottom: 0 !important;
}

/* Hide header row */
.woocommerce-account .woocommerce-orders-table thead { display: none !important; }
.woocommerce-account .woocommerce-orders-table tbody { display: contents !important; }

/* Each <tr> = one card with 2-column grid */
.woocommerce-account .woocommerce-orders-table tbody tr {
    display: grid !important;
    grid-template-columns: 1fr 200px !important;
    grid-template-rows: auto auto auto !important;
    background: white !important;
    border: 1px solid var(--sand, #E8DDD0) !important;
    padding: 30px 36px !important;
    gap: 0 28px !important;
    transition: box-shadow 0.3s, transform 0.3s, border-color 0.3s !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

.woocommerce-account .woocommerce-orders-table tbody tr:hover {
    border-color: var(--taupe, #C4B5A5) !important;
    box-shadow: 0 8px 32px rgba(42,31,26,0.07) !important;
    transform: translateY(-2px) !important;
}

/* All cells: reset WC defaults */
.woocommerce-account .woocommerce-orders-table tbody td {
    display: block !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    color: var(--mink, #9B8B7E) !important;
    vertical-align: unset !important;
}

/* ORDER NUMBER — col 1, row 1 */
.woocommerce-account .woocommerce-orders-table__cell-order-number {
    grid-column: 1 !important;
    grid-row: 1 !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: var(--gold, #B8986A) !important;
    padding-bottom: 7px !important;
}

.woocommerce-account .woocommerce-orders-table__cell-order-number a {
    color: var(--gold, #B8986A) !important;
    text-decoration: none !important;
    transition: color 0.2s !important;
}
.woocommerce-account .woocommerce-orders-table__cell-order-number a:hover {
    color: var(--deep, #3D2E28) !important;
}

/* ORDER DATE — col 1, row 2 */
.woocommerce-account .woocommerce-orders-table__cell-order-date {
    grid-column: 1 !important;
    grid-row: 2 !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    color: var(--mink, #9B8B7E) !important;
    padding-bottom: 16px !important;
}

/* STATUS BADGE — col 2, row 1 */
.woocommerce-account .woocommerce-orders-table__cell-order-status {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    align-self: start !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 9px !important;
    font-weight: 400 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 6px 14px !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    background: var(--cream, #F8F4EE) !important;
    color: var(--mink, #9B8B7E) !important;
}

/* Status colour variants */
.woocommerce-account .woocommerce-orders-table__cell-order-status .wc-completed,
.woocommerce-account .woocommerce-orders-table__cell-order-status mark.order-status.status-completed {
    background: rgba(138,158,140,0.14) !important;
    color: var(--sage, #8A9E8C) !important;
}
.woocommerce-account .woocommerce-orders-table__cell-order-status .wc-processing,
.woocommerce-account .woocommerce-orders-table__cell-order-status mark.order-status.status-processing {
    background: rgba(184,152,106,0.12) !important;
    color: var(--gold, #B8986A) !important;
}
.woocommerce-account .woocommerce-orders-table__cell-order-status .wc-on-hold,
.woocommerce-account .woocommerce-orders-table__cell-order-status mark.order-status.status-on-hold {
    background: rgba(90,120,160,0.1) !important;
    color: #5A78A0 !important;
}
.woocommerce-account .woocommerce-orders-table__cell-order-status .wc-cancelled,
.woocommerce-account .woocommerce-orders-table__cell-order-status mark.order-status.status-cancelled {
    background: rgba(192,104,90,0.1) !important;
    color: #C0685A !important;
}

/* WC wraps status text in <mark> — reset it */
.woocommerce-account .woocommerce-orders-table__cell-order-status mark.order-status {
    background: transparent !important;
    color: inherit !important;
    padding: 0 !important;
    font-weight: 400 !important;
    font-size: inherit !important;
    font-family: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
}

/* ORDER TOTAL — col 2, row 2 */
.woocommerce-account .woocommerce-orders-table__cell-order-total {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-self: end !important;
    text-align: right !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 30px !important;
    font-weight: 400 !important;
    color: var(--espresso, #2A1F1A) !important;
    line-height: 1.1 !important;
    padding-bottom: 6px !important;
}

.woocommerce-account .woocommerce-orders-table__cell-order-total .woocommerce-Price-amount,
.woocommerce-account .woocommerce-orders-table__cell-order-total .amount {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 30px !important;
    font-weight: 400 !important;
    color: var(--espresso, #2A1F1A) !important;
}

/* VIEW ORDER ACTIONS — col 2, row 3 */
.woocommerce-account .woocommerce-orders-table__cell-order-actions {
    grid-column: 2 !important;
    grid-row: 3 !important;
    justify-self: end !important;
    text-align: right !important;
    display: flex !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
}

/* "View" link — ghost style, gold on hover */
.woocommerce-account .woocommerce-orders-table__cell-order-actions a,
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.button,
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
    font-family: 'Jost', sans-serif !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--gold, #B8986A) !important;
    text-decoration: none !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    cursor: pointer !important;
    transition: color 0.2s !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    width: auto !important;
    height: auto !important;
    line-height: normal !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

.woocommerce-account .woocommerce-orders-table__cell-order-actions a::after {
    content: ' →' !important;
}

.woocommerce-account .woocommerce-orders-table__cell-order-actions a:hover,
.woocommerce-account .woocommerce-orders-table__cell-order-actions a.button:hover {
    color: var(--espresso, #2A1F1A) !important;
    background: transparent !important;
}

/* ═══════════════════════════════════════
   ADDRESSES
   ═══════════════════════════════════════ */
.woocommerce-account .woocommerce-Addresses {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 24px !important;
}

.woocommerce-account .woocommerce-Address {
    border: 1px solid var(--sand, #E8DDD0) !important;
    padding: 32px !important;
    background: white !important;
    transition: border-color 0.2s !important;
}

.woocommerce-account .woocommerce-Address:hover {
    border-color: var(--taupe, #C4B5A5) !important;
}

.woocommerce-account .woocommerce-Address-title {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 18px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid var(--sand, #E8DDD0) !important;
}

.woocommerce-account .woocommerce-Address-title h3 {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    color: var(--espresso, #2A1F1A) !important;
    margin: 0 !important;
    border: none !important;
    padding: 0 !important;
}

.woocommerce-account .woocommerce-Address-title a {
    font-family: 'Jost', sans-serif !important;
    font-size: 10px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--mink, #9B8B7E) !important;
    text-decoration: none !important;
    transition: color 0.2s !important;
    border-bottom: 1px solid transparent !important;
    padding-bottom: 1px !important;
}

.woocommerce-account .woocommerce-Address-title a:hover {
    color: var(--gold, #B8986A) !important;
    border-bottom-color: var(--gold, #B8986A) !important;
}

address {
    font-family: 'Jost', sans-serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    color: var(--mink, #9B8B7E) !important;
    line-height: 1.95 !important;
    font-style: normal !important;
}

/* ═══════════════════════════════════════
   EDIT ACCOUNT FORM
   ═══════════════════════════════════════ */
.woocommerce-account .woocommerce-EditAccountForm .form-row,
.woocommerce-account .woocommerce-address-fields .form-row { clear: none !important; }

.woocommerce-account .woocommerce-EditAccountForm fieldset {
    border: 1px solid var(--sand, #E8DDD0) !important;
    padding: 32px !important;
    margin-top: 36px !important;
    border-radius: 0 !important;
}

.woocommerce-account .woocommerce-EditAccountForm fieldset legend {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    color: var(--espresso, #2A1F1A) !important;
    padding: 0 12px !important;
}

/* ═══════════════════════════════════════
   MOBILE — stack layout
   ═══════════════════════════════════════ */
@media (max-width: 992px) {
    .woocommerce-account .woocommerce {
        flex-direction: column !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        width: 100% !important;
        min-width: unset !important;
        border-right: none !important;
        border-bottom: 1px solid var(--sand, #E8DDD0) !important;
        padding: 36px 30px 28px !important;
    }

    .obh-account-profile {
        display: flex !important;
        align-items: center !important;
        gap: 18px !important;
        padding-bottom: 24px !important;
    }

    .obh-avatar { margin-bottom: 0 !important; }

    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul li {
        width: auto !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
        display: inline-block !important;
        padding: 9px 16px !important;
        font-size: 9px !important;
        letter-spacing: 1.5px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active > a {
        border-left: 1px solid var(--sand, #E8DDD0) !important;
        border-bottom: 2px solid var(--gold, #B8986A) !important;
        padding-left: 16px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout {
        margin-top: 0 !important;
        padding-top: 0 !important;
        border-top: none !important;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 36px 28px 60px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-content > h2:first-child,
    .woocommerce-account .woocommerce-MyAccount-content h2 {
        font-size: 38px !important;
        margin-bottom: 28px !important;
    }

    .woocommerce-account .woocommerce-orders-table tbody tr {
        grid-template-columns: 1fr auto !important;
        padding: 22px 22px !important;
        gap: 0 18px !important;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-total,
    .woocommerce-account .woocommerce-orders-table__cell-order-total .woocommerce-Price-amount,
    .woocommerce-account .woocommerce-orders-table__cell-order-total .amount {
        font-size: 24px !important;
    }

    .woocommerce-account .woocommerce-Addresses {
        grid-template-columns: 1fr !important;
    }

    .woocommerce-account .woocommerce-Address {
        width: 100% !important;
        float: none !important;
        margin-right: 0 !important;
        margin-bottom: 0 !important;
    }
}

@media (max-width: 768px) {
    .woocommerce-account .woocommerce-MyAccount-navigation { padding: 28px 20px 22px !important; }

    .woocommerce-account .woocommerce-MyAccount-content { padding: 28px 20px 50px !important; }

    .woocommerce-account .woocommerce-MyAccount-content > h2:first-child,
    .woocommerce-account .woocommerce-MyAccount-content h2 {
        font-size: 32px !important;
        margin-bottom: 22px !important;
    }

    .woocommerce-account .woocommerce-orders-table tbody tr {
        padding: 18px 16px !important;
        gap: 0 12px !important;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-total,
    .woocommerce-account .woocommerce-orders-table__cell-order-total .woocommerce-Price-amount,
    .woocommerce-account .woocommerce-orders-table__cell-order-total .amount {
        font-size: 20px !important;
    }

    .woocommerce-account .woocommerce-orders-table__cell-order-actions a {
        font-size: 9px !important;
    }

    .woocommerce-account .woocommerce-EditAccountForm .form-row,
    .woocommerce-account address.woocommerce-address .form-row {
        width: 100% !important;
        float: none !important;
        clear: both !important;
    }
}

/* ═══════════════════════════════════════
   ORDER ITEM NAMES (injected via PHP hook)
   Sit below the date in col 1, row 3
   ═══════════════════════════════════════ */
.obh-order-items {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 20px !important;
    font-weight: 300 !important;
    color: var(--espresso, #2A1F1A) !important;
    line-height: 1.6 !important;
    padding-top: 4px !important;
    grid-column: 1 !important;
    grid-row: 3 !important;
}

/* Row 3 occupies col 1; actions stay col 2 row 3 */
.woocommerce-account .woocommerce-orders-table__cell-order-number {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
}

/* ═══════════════════════════════════════
   ACCOUNT — h2 italic gold <em> styling
   ═══════════════════════════════════════ */
.woocommerce-account .woocommerce-MyAccount-content h2 em,
.woocommerce-account .woocommerce-MyAccount-content > h2:first-child em {
    font-style: italic !important;
    color: var(--gold, #B8986A) !important;
}

/* ═══════════════════════════════════════
   ORDER ITEM NAMES — grid placement fix
   Ensure .obh-order-items sits on col 1
   within the number cell's flex column
   ═══════════════════════════════════════ */
.woocommerce-account .woocommerce-orders-table__cell-order-number {
    grid-column: 1 !important;
    grid-row: 1 / 4 !important; /* spans all rows on left so items show */
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 0 !important;
}

/* The WC order number anchor */
.woocommerce-account .woocommerce-orders-table__cell-order-number a {
    order: 1 !important;
    margin-bottom: 6px !important;
}

/* Date injected separately — keep in flow */
.woocommerce-account .woocommerce-orders-table__cell-order-date {
    grid-column: 1 !important;
    grid-row: 2 !important;
    /* date is a sibling <td> — grid auto-places it */
}

/* Order items names */
.obh-order-items {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 20px !important;
    font-weight: 300 !important;
    color: var(--espresso, #2A1F1A) !important;
    line-height: 1.6 !important;
    margin-top: 14px !important;
    display: block !important;
}

/* ── Fallback: if items don't show via hook, make the card still look good ── */
.woocommerce-account .woocommerce-orders-table tbody tr {
    grid-template-columns: 1fr 200px !important;
    grid-template-rows: auto auto auto !important;
}

/* Re-pin all cells explicitly */
.woocommerce-account .woocommerce-orders-table__cell-order-number  { grid-column: 1 !important; grid-row: 1 !important; }
.woocommerce-account .woocommerce-orders-table__cell-order-date    { grid-column: 1 !important; grid-row: 2 !important; }
.woocommerce-account .woocommerce-orders-table__cell-order-status  { grid-column: 2 !important; grid-row: 1 !important; }
.woocommerce-account .woocommerce-orders-table__cell-order-total   { grid-column: 2 !important; grid-row: 2 !important; }
.woocommerce-account .woocommerce-orders-table__cell-order-actions { grid-column: 2 !important; grid-row: 3 !important; }

/* Items injected inside order-number cell display below the number anchor */
.woocommerce-account .woocommerce-orders-table__cell-order-number {
    display: flex !important;
    flex-direction: column !important;
    grid-row: 1 / 4 !important;
    row-gap: 0 !important;
}

@media (max-width: 768px) {
    .woocommerce-account .woocommerce-orders-table__cell-order-number {
        grid-row: 1 / 3 !important;
    }
    .woocommerce-account .woocommerce-orders-table__cell-order-status  { grid-row: 1 !important; }
    .woocommerce-account .woocommerce-orders-table__cell-order-total   { grid-column: 2 !important; grid-row: 2 !important; }
    .woocommerce-account .woocommerce-orders-table__cell-order-actions { grid-column: 1 / -1 !important; grid-row: 3 !important; justify-self: start !important; }
    .obh-order-items { font-size: 17px !important; }
}


/* ══════════════════════════════════════════════════════════════════
   MY ACCOUNT — LOGIN PAGE REDESIGN (Logged-Out State)
   Beautiful split-panel layout matching brand aesthetic
   ══════════════════════════════════════════════════════════════════ */

/* ── Hide ALL page titles on account pages ── */
.woocommerce-account .entry-title,
.woocommerce-account h1.entry-title,
.woocommerce-account .page-title,
.woocommerce-account h1.page-title,
.woocommerce-account .page-header,
body.woocommerce-account > .site-main > article > .entry-header,
body.woocommerce-account .entry-header { display: none !important; }

/* ── LOGGED-OUT: Full-width split layout ── */
body.woocommerce-account:not(.logged-in) .woocommerce {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    min-height: calc(100vh - 120px) !important;
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
}

/* ── LEFT PANEL: dark espresso with brand identity ── */
body.woocommerce-account:not(.logged-in) .woocommerce::before {
    content: '';
    display: block;
    background: var(--espresso, #2A1F1A);
    position: relative;
    order: -1;
}

/* Wrap all WC login/register content together in right panel */
body.woocommerce-account:not(.logged-in) .woocommerce .woocommerce-notices-wrapper,
body.woocommerce-account:not(.logged-in) .woocommerce form.woocommerce-form-login,
body.woocommerce-account:not(.logged-in) .woocommerce .register,
body.woocommerce-account:not(.logged-in) .woocommerce .col2-set {
    grid-column: 2 / 3;
}

/* ── The full login page layout: outer wrapper ── */
body.woocommerce-account:not(.logged-in) .obh-account-main,
body.woocommerce-account:not(.logged-in) .obh-account-wrap {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    min-height: calc(100vh - 120px) !important;
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

/* ── LEFT DARK PANEL — inject via pseudo on the woocommerce wrapper ── */
body.woocommerce-account:not(.logged-in) .woocommerce > .col2-set {
    display: contents !important;
}
body.woocommerce-account:not(.logged-in) .woocommerce > .col2-set .col-1 {
    grid-column: 1 !important;
    background: var(--espresso, #2A1F1A) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    padding: 80px 70px !important;
    position: relative !important;
    overflow: hidden !important;
}
body.woocommerce-account:not(.logged-in) .woocommerce > .col2-set .col-2 {
    grid-column: 2 !important;
    background: var(--warm-white, #FDFAF6) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: 80px 70px !important;
}

/* ── When NO register form — single login form only ── */
body.woocommerce-account:not(.logged-in) .woocommerce > form.woocommerce-form-login:only-child {
    grid-column: 2 / 3 !important;
    padding: 80px 70px !important;
    margin: 0 !important;
    background: var(--warm-white, #FDFAF6) !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* ── INJECT LEFT BRAND PANEL via ::before on account page wrapper ── */
.woocommerce-account:not(.logged-in) .site-main::before {
    content: '';
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: var(--espresso, #2A1F1A);
    z-index: -1;
    pointer-events: none;
}

/* Login heading — "Login" h2 inside form ── */
body.woocommerce-account:not(.logged-in) .woocommerce h2,
body.woocommerce-account:not(.logged-in) .woocommerce-page h2 {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 42px !important;
    font-weight: 300 !important;
    color: var(--espresso, #2A1F1A) !important;
    margin-bottom: 36px !important;
    letter-spacing: -0.02em !important;
    line-height: 1.1 !important;
}

/* ── INPUT FIELDS on login/register ── */
.woocommerce-account .woocommerce-form__input,
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"],
.woocommerce-account textarea,
.woocommerce-account select {
    font-family: 'Jost', sans-serif !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    color: var(--espresso, #2A1F1A) !important;
    background: white !important;
    border: 1px solid var(--sand, #E8DDD0) !important;
    border-radius: 0 !important;
    padding: 15px 18px !important;
    width: 100% !important;
    outline: none !important;
    transition: border-color 0.2s !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
}
.woocommerce-account input[type="text"]:focus,
.woocommerce-account input[type="email"]:focus,
.woocommerce-account input[type="password"]:focus {
    border-color: var(--gold, #B8986A) !important;
    box-shadow: none !important;
    outline: none !important;
}
.woocommerce-account input::placeholder {
    color: var(--taupe, #C4B5A5) !important;
    font-weight: 300 !important;
}

/* Field labels */
.woocommerce-account label,
.woocommerce-account .woocommerce-form-row label {
    font-family: 'Jost', sans-serif !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: var(--espresso, #2A1F1A) !important;
    margin-bottom: 9px !important;
    display: block !important;
}

/* Form row spacing */
.woocommerce-account .woocommerce-form-row {
    margin-bottom: 22px !important;
}

/* Remember me checkbox area */
.woocommerce-account .woocommerce-form__label-for-checkbox {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 12px !important;
    font-weight: 300 !important;
    color: var(--mink, #9B8B7E) !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    cursor: pointer !important;
}
.woocommerce-account input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    accent-color: var(--gold, #B8986A) !important;
    flex-shrink: 0 !important;
}

/* Lost password link */
.woocommerce-account .woocommerce-LostPassword a,
.woocommerce-account .lost_password a {
    font-family: 'Jost', sans-serif !important;
    font-size: 11px !important;
    font-weight: 300 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: var(--gold, #B8986A) !important;
    text-decoration: none !important;
    border-bottom: 1px solid transparent !important;
    transition: border-color 0.2s !important;
    display: inline-block !important;
    margin-top: 12px !important;
}
.woocommerce-account .woocommerce-LostPassword a:hover { border-bottom-color: var(--gold, #B8986A) !important; }

/* ── SUBMIT / LOG IN buttons ── */
.woocommerce-account .woocommerce-form-login .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-form-register .woocommerce-Button,
.woocommerce-account button[name="login"],
.woocommerce-account button[name="register"],
.woocommerce-account .button.woocommerce-Button {
    background: var(--espresso, #2A1F1A) !important;
    color: white !important;
    border: none !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 3.5px !important;
    text-transform: uppercase !important;
    padding: 18px 36px !important;
    cursor: pointer !important;
    width: 100% !important;
    margin-top: 10px !important;
    transition: background 0.3s !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.woocommerce-account .woocommerce-form-login .woocommerce-form-login__submit:hover,
.woocommerce-account .woocommerce-form-register .woocommerce-Button:hover,
.woocommerce-account button[name="login"]:hover,
.woocommerce-account button[name="register"]:hover {
    background: var(--gold, #B8986A) !important;
    color: white !important;
}

/* Privacy policy note on register */
.woocommerce-account .woocommerce-privacy-policy-text {
    font-family: 'Jost', sans-serif !important;
    font-size: 11px !important;
    font-weight: 300 !important;
    color: var(--mink, #9B8B7E) !important;
    line-height: 1.8 !important;
    margin-top: 16px !important;
}
.woocommerce-account .woocommerce-privacy-policy-text a { color: var(--gold, #B8986A) !important; }

/* ── Remove WC default margins/borders from account form wrapper ── */
.woocommerce-account .u-column1, .woocommerce-account .u-column2 { padding: 0 !important; }
.woocommerce-account .woocommerce-page form.login,
.woocommerce-account .woocommerce-page form.register { border: none !important; padding: 0 !important; background: transparent !important; }


/* ══════════════════════════════════════════════════════════════════
   JERSEY / CATEGORY PAGE — Image display fixes
   ══════════════════════════════════════════════════════════════════ */

/* Ensure product images show at proper height with object-fit */
.cat-card .cat-img img,
.cat-img-inner img,
.cat-product-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
    transition: transform 0.5s ease !important;
}
.cat-card:hover .cat-img-inner img,
.cat-card:hover .cat-img-inner { transform: scale(1.04) !important; }

/* Ensure cat-img has defined height */
.cat-img {
    height: 300px !important;
    position: relative !important;
    overflow: hidden !important;
    display: block !important;
    background: var(--sand, #E8DDD0) !important;
}
.cat-img-inner {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    position: relative !important;
    overflow: hidden !important;
    transition: transform 0.5s ease !important;
}

/* Cat-card always white background, border on bottom */
.cat-card {
    background: white !important;
    overflow: hidden !important;
    box-shadow: 0 4px 24px rgba(42,31,26,0.05) !important;
    transition: transform 0.35s ease, box-shadow 0.35s ease !important;
    cursor: pointer !important;
    display: flex !important;
    flex-direction: column !important;
}
.cat-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 20px 50px rgba(42,31,26,0.12) !important;
}

/* Force 3-col grid override for all WC product lists */
.cat-grid,
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products.cat-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    list-style: none !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
}

/* WC li.product reset */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    clear: none !important;
}


/* ════════════════════════════════════════════════════════
   ORIGINS FIXES v3
   1. White text on all active/primary buttons
   2. Select2 country/state — full mobile fix
   3. Wishlist card collection label + swatch styles
   ════════════════════════════════════════════════════════ */

/* ── 1. White text — every WC button, every context ── */
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce input[type="submit"],
.woocommerce #respond input#submit,
.woocommerce .single_add_to_cart_button,
.woocommerce-page button.button,
.woocommerce-page a.button,
.woocommerce-page input.button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order,
.woocommerce .checkout-button,
.cart .button,
button#place_order, #place_order,
.woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce-form-login button[type="submit"],
.woocommerce-form-login input[type="submit"],
.woocommerce-form-register button[type="submit"],
.woocommerce-form-register input[type="submit"],
button.woocommerce-form-login__submit,
button.woocommerce-Button, .woocommerce-Button,
.login button[type="submit"], .register button[type="submit"],
.woocommerce-account button[type="submit"],
.woocommerce-account .button,
.woocommerce-account a.button,
.woocommerce-account input[type="submit"],
.woocommerce-orders-table__cell-order-actions a.button,
.added_to_cart, a.added_to_cart,
.obw-shop-btn, .btn-primary, .btn-esp, .origins-btn {
    color: #ffffff !important;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #payment #place_order:hover,
button#place_order:hover, #place_order:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
.woocommerce-form-login button[type="submit"]:hover,
.woocommerce-form-register button[type="submit"]:hover,
button.woocommerce-form-login__submit:hover,
button.woocommerce-Button:hover,
.woocommerce-account button[type="submit"]:hover,
.woocommerce-account .button:hover,
.woocommerce-account a.button:hover,
.obw-shop-btn:hover, .btn-primary:hover, .btn-esp:hover {
    color: #ffffff !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current { color: #ffffff !important; }

/* ── 2. Select2 country/state — full fix ── */
select.country_select, select.state_select,
#billing_country, #shipping_country,
#billing_state,   #shipping_state {
    min-height: 48px !important;
    font-size: 13px !important;
    font-family: 'Jost', sans-serif !important;
    color: #2A1F1A !important;
    background: white !important;
    border: 1px solid #E8DDD0 !important;
    border-radius: 0 !important;
    padding: 13px 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    outline: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}
select.country_select:focus, select.state_select:focus {
    border-color: #B8986A !important;
    box-shadow: none !important;
}
/* Select2 container */
.select2-container {
    width: 100% !important;
    display: block !important;
    position: relative !important;
    z-index: 100 !important;
    box-sizing: border-box !important;
}
.select2-container .select2-selection--single,
.select2-container--default .select2-selection--single {
    width: 100% !important;
    height: auto !important;
    min-height: 48px !important;
    border: 1px solid #E8DDD0 !important;
    border-radius: 0 !important;
    background: white !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    outline: none !important;
    transition: border-color 0.2s !important;
}
.select2-container--open .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single {
    border-color: #B8986A !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    font-family: 'Jost', sans-serif !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    color: #2A1F1A !important;
    padding: 13px 42px 13px 16px !important;
    line-height: 1.4 !important;
    display: block !important;
    width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    box-sizing: border-box !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    position: absolute !important;
    right: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 20px !important;
    height: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #9B8B7E transparent transparent !important;
    border-width: 5px 4px 0 !important;
    border-style: solid !important;
    display: block !important;
}
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent #9B8B7E !important;
    border-width: 0 4px 5px !important;
}
.select2-dropdown {
    border: 1px solid #E8DDD0 !important;
    border-radius: 0 !important;
    box-shadow: 0 8px 32px rgba(42,31,26,0.13) !important;
    background: white !important;
    z-index: 999999 !important;
    min-width: 100% !important;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid #E8DDD0 !important;
    border-radius: 0 !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 16px !important;
    font-weight: 300 !important;
    color: #2A1F1A !important;
    padding: 11px 14px !important;
    outline: none !important;
    width: 100% !important;
    box-sizing: border-box !important;
    background: white !important;
}
.select2-results__options {
    max-height: 260px !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}
.select2-results__option {
    font-family: 'Jost', sans-serif !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    color: #2A1F1A !important;
    padding: 11px 16px !important;
    cursor: pointer !important;
}
.select2-results__option--highlighted,
.select2-results__option--highlighted[aria-selected] {
    background: #2A1F1A !important;
    color: #ffffff !important;
}
.select2-results__option[aria-selected="true"] {
    background: #F8F4EE !important;
    color: #2A1F1A !important;
    font-weight: 400 !important;
}
.select2-results__option.select2-results__message,
.select2-results__option--disabled {
    color: #9B8B7E !important;
    font-style: italic !important;
}
/* Form-row overflow fix so dropdown isn't clipped */
.woocommerce .form-row,
.woocommerce p.form-row,
.woocommerce-billing-fields .form-row,
.woocommerce-shipping-fields .form-row,
.woocommerce-checkout .form-row {
    overflow: visible !important;
    position: relative !important;
}
.woocommerce .woocommerce-input-wrapper {
    overflow: visible !important;
    display: block !important;
    width: 100% !important;
}
@media (max-width: 768px) {
    .select2-container .select2-selection--single,
    .select2-container--default .select2-selection--single {
        min-height: 52px !important;
        touch-action: manipulation !important;
        -webkit-tap-highlight-color: transparent !important;
    }
    .select2-results__option {
        padding: 14px 16px !important;
        font-size: 14px !important;
        min-height: 44px !important;
        display: flex !important;
        align-items: center !important;
    }
    .select2-dropdown { left: 0 !important; right: 0 !important; width: 100% !important; }
    .select2-container, .select2-container--default {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    select.country_select.select2-hidden-accessible,
    select.state_select.select2-hidden-accessible {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0,0,0,0) !important;
        white-space: nowrap !important;
    }
}

/* ── 3. Wishlist card — collection label + swatch ── */
.obw-grid-wrap .obw-coll-label {
    display: block !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 9px !important;
    font-weight: 400 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: #9B8B7E !important;
    padding: 18px 18px 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
}
.obw-grid-wrap .obw-swatch-row {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    padding: 4px 18px 6px !important;
    margin: 0 !important;
}
.obw-grid-wrap .obw-swatch-dot {
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
    flex-shrink: 0 !important;
    display: inline-block !important;
    border: 1px solid rgba(0,0,0,0.08) !important;
}
.obw-grid-wrap .obw-swatch-name {
    font-family: 'Jost', sans-serif !important;
    font-size: 11px !important;
    font-weight: 300 !important;
    font-style: italic !important;
    color: #9B8B7E !important;
    line-height: 1 !important;
}
