/* Product refinements, 21 October 2026. */
body.single-product div.product.mhs-standard-product .mhs-product-short-description { line-height:1.65; margin-bottom:18px; }
body.single-product .mhs-product-availability { margin:0 0 18px; line-height:1.6; }

/* Explicit states survive the different card, gallery and purchase-button skins. */
body .mhs-wishlist-toggle { transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s; }
body .mhs-wishlist-toggle:hover,
body.single-product .mhs-gallery-wishlist .mhs-wishlist-toggle:hover,
body.single-product .mhs-standard-product .mhs-product-actions .mhs-wishlist-toggle:hover,
body.woocommerce ul.products li.product .mhs-wishlist-toggle:hover { background:#e0f4e8; color:#147c46; border-color:#21aa64; box-shadow:0 0 0 3px #21aa6440; }
body .mhs-wishlist-toggle[aria-pressed="true"],
body.single-product .mhs-gallery-wishlist .mhs-wishlist-toggle[aria-pressed="true"],
body.single-product .mhs-standard-product .mhs-product-actions .mhs-wishlist-toggle[aria-pressed="true"],
body.woocommerce ul.products li.product .mhs-wishlist-toggle[aria-pressed="true"] { background:#21aa64; color:#fff; border-color:#21aa64; }
body .mhs-wishlist-toggle[aria-pressed="true"] .mhs-icon { fill:currentColor; }
body .mhs-wishlist-toggle[aria-pressed="true"]:hover { box-shadow:0 0 0 3px #147c4666; }
body .mhs-wishlist-toggle:focus-visible { outline:3px solid #147c46; outline-offset:3px; }
body.single-product .mhs-standard-product .mhs-product-actions .mhs-wishlist-toggle { position:relative; min-height:42px; padding:9px 12px; border:1px solid #d3ded7; border-radius:5px; }
body.single-product .mhs-product-actions .mhs-wishlist-toggle .mhs-wishlist-tooltip { left:0; right:auto; }
body .mhs-wishlist-toggle:focus:not(:focus-visible):not(:hover) .mhs-wishlist-tooltip { display:none; }

body.single-product .mhs-standard-product .mhs-product-buy-box .mhs-purchase-details { display:grid; grid-template-columns:1fr; gap:16px; width:100%; margin-top:18px; padding:20px; background:#fff; border:1px solid #cbded2; border-radius:7px; box-shadow:0 3px 12px #143b2410; }
.mhs-purchase-details__delivery { display:flex; gap:12px; align-items:flex-start; }
.mhs-purchase-details__delivery > .mhs-icon { flex-shrink:0; width:26px; height:26px; margin-top:2px; }
body .mhs-purchase-details h3 { display:flex; align-items:center; gap:10px; margin:0 0 7px; color:#163c2a; font-size:17px; line-height:1.35; font-weight:700; }
body .mhs-purchase-details p { display:block; margin:0 0 6px; font-size:14px; line-height:1.5; }
.mhs-purchase-details__delivery a { color:#147c46; font-size:13px; text-decoration:underline; text-underline-offset:3px; }
.mhs-purchase-details__payment { border-top:1px solid #dce8e1; padding-top:15px; }
.mhs-purchase-details__payment small { display:block; margin-top:9px; color:#56655c; font-size:12px; line-height:1.5; }
.mhs-purchase-details__payments { gap:8px; }

.mhs-shop-filters .mhs-shop-filter-form__choices label:not([hidden]) { display:flex; align-items:center; gap:10px; min-height:36px; line-height:1.4; }
.mhs-shop-filters .mhs-shop-filter-form__choices label input { flex:0 0 16px; width:16px; height:16px; margin:0; accent-color:#21aa64; }
.mhs-shop-filter-form__choices label .mhs-filter-color { display:inline-block; flex:0 0 30px; width:30px; height:30px; border-radius:50%; border:1px solid #8b978f; background-position:center; background-size:cover; box-shadow:inset 0 0 0 2px #ffffff70; }
.mhs-shop-filter-form__choices label:has(input:checked) .mhs-filter-color { outline:2px solid #21aa64; outline-offset:2px; }
.mhs-shop-filter-form__choices label span { min-width:0; overflow-wrap:anywhere; color:#35493e; font-size:14px; }

/* Keep native WooCommerce controls together and align both columns at the top. */
body .mhs-commerce-page form.checkout { align-items:start; column-gap:32px; row-gap:24px; }
body .mhs-commerce-page #customer_details { grid-column:1; grid-row:auto; min-width:0; }
body .mhs-commerce-page .mhs-checkout-order { grid-column:2; grid-row:auto; min-width:0; width:100%; }
body .mhs-commerce-page .woocommerce-billing-fields > h3,
body .mhs-commerce-page #order_review_heading { margin:0 0 20px; padding:0; font-size:24px; line-height:1.3; }
body .mhs-commerce-page #order_review { margin:0; float:none; }
body .mhs-commerce-page .woocommerce-billing-fields__field-wrapper > .form-row:first-child { margin-top:0; }
body.woocommerce-cart .mhs-commerce-page { width:calc(100% - 40px); max-width:1440px; padding:40px 20px 64px; }
body.woocommerce-cart .mhs-commerce-page > .woocommerce { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:24px 30px; align-items:start; }
body.woocommerce-cart .mhs-commerce-page .woocommerce-notices-wrapper,
body.woocommerce-cart .mhs-commerce-page > .woocommerce > .woocommerce-info,
body.woocommerce-cart .mhs-commerce-page > .woocommerce > .cart-empty,
body.woocommerce-cart .mhs-commerce-page > .woocommerce > .return-to-shop { grid-column:1/-1; }
body.woocommerce-cart .mhs-commerce-page .cart-collaterals { position:static; width:100%; min-width:0; }
body.woocommerce-cart .mhs-commerce-page .cart-collaterals::before { display:none; }
body.woocommerce-cart .mhs-commerce-page .cart_totals { padding:22px; }
body.woocommerce-cart .mhs-commerce-page .woocommerce-cart-form { margin:0; }
body.woocommerce-cart .mhs-commerce-page table.shop_table { margin-top:0; }

.mhs-legal-document { font-size:16px; line-height:1.75; overflow-wrap:anywhere; }
.mhs-legal-document p { margin:0 0 18px; color:#39483f; }
.mhs-legal-document__title { font-size:19px; }
.mhs-legal-document h2 { margin:32px 0 18px; font-size:clamp(21px,2.1vw,28px); line-height:1.3; scroll-margin-top:160px; }
.mhs-shipping-panel > .mhs-legal-document { margin-top:40px; padding-top:28px; border-top:1px solid #dce5df; }
@media(max-width:1199px) {
 body.woocommerce-cart .mhs-commerce-page > .woocommerce { display:block; }
 body.woocommerce-cart .mhs-commerce-page .cart-collaterals { margin-top:24px; }
}
@media(max-width:767px) {
 body.woocommerce-cart .mhs-commerce-page { width:100%; padding:28px 18px 40px; }
 body .mhs-commerce-page form.checkout { display:block; }
 body .mhs-commerce-page .mhs-checkout-order { margin-top:28px; }
 body.single-product .mhs-standard-product .mhs-product-buy-box .mhs-purchase-details { padding:16px; }
 .mhs-legal-document { font-size:15px; }
}
@media(prefers-reduced-motion:reduce) { body .mhs-wishlist-toggle { transition:none; } }
