/* Product options. Keep Woo's selects, variation events and order submission as the source of truth. */
.hui-storefront .hui-product-page .hui-product-intro .hui-detail-price {
    font-size:clamp(23px,2.3vw,28px); line-height:1.22; font-weight:650; color:var(--green);
    font-variant-numeric:tabular-nums; letter-spacing:-.026em; margin:0 0 12px;
}
.hui-storefront .hui-product-page .hui-detail-price :is(.amount,bdi) { font-size:inherit; }
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-detail-price {
    display:flex; align-items:baseline; flex-wrap:wrap; gap:3px 10px;
}
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-detail-price del {
    margin:0; color:#647169; font-size:.69em; font-weight:450; opacity:1;
}
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-detail-price ins {
    background:transparent; color:inherit; font-weight:inherit; text-decoration:none;
}
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-detail-price .amount { white-space:nowrap; }
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-product-intro .description:empty { display:none; }
.hui-storefront .hui-product-page[data-hui-unified-price].hui-price-synced .hui-native-order .woocommerce-variation-price { display:none; }

.hui-storefront .hui-native-order .hui-option-cards { display:flow-root; min-inline-size:0; }
.hui-storefront .hui-native-order .variations :is(legend,.label label) {
    color:var(--ink); font:650 16px/1.35 var(--sans,sans-serif); margin:0 0 8px;
}
.hui-storefront .hui-native-order .hui-option-cards > legend {
    float:left; min-height:32px; display:flex; align-items:center; max-inline-size:100%; padding:0;
}
.hui-storefront .hui-native-order .hui-inline-size-guide {
    float:right; display:inline-flex; gap:6px; align-items:center; justify-content:flex-end;
    min-height:32px; margin:0 0 8px; padding:0; color:var(--green); line-height:1.3; font-size:14px;
    text-decoration:underline; text-underline-offset:3px; border:0; background:transparent;
}
.hui-storefront .hui-native-order .hui-inline-size-guide svg { flex:none; width:16px; height:16px; }
.hui-storefront .hui-native-order .hui-size-help-row[hidden] { display:none !important; }
.hui-storefront .hui-native-order .hui-option-card-grid {
    clear:both; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px;
}
.hui-storefront .hui-native-order .hui-option-card { display:block; margin:0; min-width:0; min-height:48px; }
.hui-storefront .hui-native-order .hui-option-card-content {
    display:flex; flex-direction:column; justify-content:center; align-items:flex-start;
    min-height:48px; padding:10px 36px 10px 14px; border:1px solid #bac6bd; border-radius:8px;
    background:#fff; line-height:1.35; color:var(--ink);
}
.hui-storefront .hui-native-order .hui-option-card-title {
    display:block; margin:0; font:600 16px/1.35 var(--sans,sans-serif); color:inherit;
}
.hui-storefront .hui-native-order .hui-option-card-price {
    font:500 15px/1.35 var(--sans,sans-serif); margin:2px 0 0; color:var(--green); font-variant-numeric:tabular-nums;
}
.hui-storefront .hui-native-order .hui-option-card > input[type=radio] {
    appearance:none; -webkit-appearance:none; position:absolute; top:50%; right:13px; bottom:auto; left:auto;
    transform:translateY(-50%); box-sizing:border-box; width:16px; height:16px;
    min-width:16px; min-height:16px; max-width:16px; max-height:16px;
    margin:0; padding:0; border:1.5px solid #83968a; border-radius:50%; background:#fff; box-shadow:none;
    cursor:inherit;
}
.hui-storefront .hui-native-order .hui-option-card > input[type=radio]:checked {
    background:radial-gradient(circle at center,var(--green) 0 4px,transparent 4.5px),#fff;
    border-color:var(--green);
}
.hui-storefront .hui-native-order .hui-option-card > input[type=radio]:checked + .hui-option-card-content {
    background:#eff5ef; border-color:var(--green); box-shadow:inset 0 0 0 1px var(--green); color:var(--green);
}
.hui-storefront .hui-native-order .hui-option-card > input[type=radio]:focus-visible + .hui-option-card-content {
    outline:2px solid var(--green); outline-offset:3px;
}
.hui-storefront .hui-native-order .hui-option-card > input[type=radio]:disabled + .hui-option-card-content {
    background:#f6f7f5; color:#626e65; border-color:#d5dcd6; opacity:1; cursor:not-allowed;
}
.hui-storefront .hui-native-order .hui-option-card > input[type=radio]:disabled + .hui-option-card-content .hui-option-card-title { text-decoration:line-through; }
.hui-storefront .hui-native-order .hui-option-availability { display:block; margin:2px 0 0; color:#59675e; font:500 13px/1.25 var(--sans,sans-serif); }
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-native-order table.variations { margin:0; }
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-native-order .variations .value { margin:0 0 8px; }
.hui-storefront .hui-native-order .variations .reset_variations { font-size:14px; padding:4px 0; }
/* A radio changes directly to the other size. Keep Woo's reset for dependent, multi-attribute choices. */
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-native-order .variations tr:only-child:has(.hui-option-cards) .reset_variations { display:none; }

.hui-storefront .hui-product-page[data-hui-unified-price] .hui-native-order .woocommerce-variation-description p {
    margin:0 0 5px; color:#53635a; font-size:14px; line-height:1.5;
}
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-native-order .woocommerce-variation .stock {
    margin:3px 0 0; font:500 14px/1.45 var(--sans,sans-serif);
}
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-native-order .woocommerce-variation .in-stock { color:#345b45; }
/* Leave the native price readable on products or integrations that do not adopt the shared price. */
.hui-storefront .hui-native-order .woocommerce-variation-price .price {
    display:flex; align-items:baseline; gap:3px 9px; flex-wrap:wrap;
    margin:8px 0; color:var(--green); font:650 23px/1.25 var(--sans,sans-serif); text-decoration:none;
}
.hui-storefront .hui-native-order .woocommerce-variation-price .price :is(.amount,bdi) { font:inherit; }
.hui-storefront .hui-native-order .woocommerce-variation-price .price del { font-size:16px; font-weight:450; color:#647169; opacity:1; margin:0; }
.hui-storefront .hui-native-order .woocommerce-variation-price .price ins { font:inherit; text-decoration:none; background:none; color:inherit; }
.hui-storefront .hui-native-order form.cart button.button:is(.single_add_to_cart_button,.hui-native-buy) {
    font:650 16px/1.25 var(--sans,sans-serif); min-height:48px; letter-spacing:0;
}
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-native-order form.cart .woocommerce-variation-add-to-cart {
    display:flex; flex-direction:column; align-items:stretch; gap:8px;
}
.hui-storefront .hui-product-page[data-hui-unified-price] .hui-native-order form.cart button.button:is(.single_add_to_cart_button,.hui-native-buy) {
    flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:100%; min-width:0;
    min-height:48px; padding:12px 16px; margin:0; float:none; border-radius:999px;
}
@media(max-width:760px) {
    .hui-storefront .hui-product-page[data-hui-unified-price] .product-detail-grid {
        grid-template-areas:"gallery" "intro" "order"; row-gap:18px;
    }
    .hui-storefront .hui-product-page[data-hui-unified-price] h1 { font-size:clamp(27px,6.7vw,32px); line-height:1.14; margin:0 0 9px; }
    .hui-storefront .hui-product-page[data-hui-unified-price] .hui-product-benefits { padding-top:0; }
    .hui-storefront .hui-product-page .hui-mobile-purchase { gap:10px; }
    .hui-storefront .hui-product-page .hui-mobile-purchase > div { flex:1 1 auto; max-width:none; }
    .hui-storefront .hui-product-page .hui-mobile-purchase [data-hui-sticky-label] { font-size:13px; }
    .hui-storefront .hui-product-page .hui-mobile-purchase strong { font-size:17px; font-weight:650; line-height:1.2; overflow-wrap:break-word; }
    .hui-storefront .hui-product-page .hui-mobile-purchase .btn { font-size:14px; min-height:46px; min-width:108px; padding:10px 15px; border-radius:999px; letter-spacing:.01em; text-transform:none; }
}
/* Woo's classic CSS hardcodes a purple background on .alt:disabled[disabled]:hover.
   Apply a scoped palette to paint properties only; Woo still controls validity and submission. */
.hui-storefront :is(.hui-native-order form.cart button.button:is(.single_add_to_cart_button,.hui-native-buy),
    .hui-product-page .hui-mobile-purchase button[data-hui-sticky-action],
    .wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,
    .woocommerce a.checkout-button,:where(#place_order)) {
    --hui-btn-bg:var(--green,#254b3e);--hui-btn-ink:#fff;--hui-btn-border:var(--green,#254b3e);
    --hui-btn-over:var(--deep,#19382d);--hui-btn-over-ink:#fff;
    appearance:none; -webkit-appearance:none; -webkit-tap-highlight-color:transparent;
    background:var(--hui-btn-bg) !important;color:var(--hui-btn-ink) !important;
    border:1px solid var(--hui-btn-border) !important;box-shadow:none !important;
}
.hui-storefront .hui-native-order form.cart button.button.single_add_to_cart_button {
    --hui-btn-bg:#fff;--hui-btn-ink:var(--green);--hui-btn-over:#e8efe9;--hui-btn-over-ink:var(--deep);
}
.hui-storefront :is(.hui-native-order form.cart button.button:is(.single_add_to_cart_button,.hui-native-buy),
    .hui-product-page .hui-mobile-purchase button[data-hui-sticky-action],
    .wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,
    .woocommerce a.checkout-button,:where(#place_order)):is(:hover,:active,:focus-visible,.loading,.processing,[aria-busy=true]) {
    background:var(--hui-btn-over) !important;color:var(--hui-btn-over-ink) !important;
}
.hui-storefront :is(.hui-native-order form.cart button.button:is(.single_add_to_cart_button,.hui-native-buy),
    .hui-product-page .hui-mobile-purchase button[data-hui-sticky-action],
    .wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,
    .woocommerce a.checkout-button,:where(#place_order)):focus-visible {outline:2px solid var(--green);outline-offset:3px;}
.hui-storefront :is(.hui-native-order form.cart button.button:is(.single_add_to_cart_button,.hui-native-buy),
    .hui-product-page .hui-mobile-purchase button[data-hui-sticky-action],
    .wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,
    .woocommerce a.checkout-button,:where(#place_order)):is(:disabled,[disabled],.disabled,[aria-disabled=true],.wc-variation-selection-needed,.wc-variation-is-unavailable),
.hui-storefront .hui-native-order .woocommerce-variation-add-to-cart-disabled button.button:is(.single_add_to_cart_button,.hui-native-buy) {
    background:#e3ebe5 !important; color:#44594b !important; border-color:#bac9be !important;
    opacity:1 !important;cursor:not-allowed;
}
@media(forced-colors:active) {
    .hui-storefront .hui-native-order .hui-option-card > input[type=radio] { appearance:auto; }
}
