.ume-market.single-product .wp-block-post-title { font:600 26px/1.3 Arial,sans-serif; letter-spacing:0; overflow-wrap:anywhere; margin:0 0 16px; }
.ume-market.single-product .wp-block-post-excerpt { display:none; }
.single-product .um-product-facts:empty { display:none; }
.ume-market.single-product .woocommerce-product-gallery__image a>img { width:100%; height:auto; aspect-ratio:1; max-height:570px; object-fit:contain; background:#fff; }
.ume-market.single-product .woocommerce-product-gallery .flex-control-thumbs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; margin-top:14px; }
.ume-market.single-product .woocommerce-product-gallery .flex-control-thumbs li { width:auto!important; float:none; margin:0!important; }
.ume-market.single-product .woocommerce-product-gallery .flex-control-thumbs img { width:100%; height:auto; aspect-ratio:1; object-fit:contain; border:1px solid #e1e5e2; border-radius:4px; padding:3px; box-sizing:border-box; opacity:.8; }
.ume-market.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active { border:2px solid #355847; opacity:1; }
.ume-market.single-product .woocommerce-product-gallery .flex-control-thumbs img:focus-visible { outline:2px solid #355847; outline-offset:2px; }
.up-key-facts { display:flex; flex-wrap:wrap; gap:12px 32px; margin:14px 0 20px; padding:14px 0; border-block:1px solid #e0e5e1; }
.up-key-facts:empty { display:none; }
.up-key-facts>div { display:flex; flex-direction:column; gap:3px; }
.up-key-facts dt { color:#65716a; font-size:12px; }
.up-key-facts dd { margin:0; color:#243d30; font-size:14px; font-weight:600; }
.ume-market .up-options { margin:18px 0 24px; }
.ume-market .up-options h2 { font:600 15px/1.4 Arial,sans-serif; margin:0 0 12px; }
.up-options-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.ume-market a.up-option { display:flex; align-items:center; gap:8px; border:1px solid #dce2dd; border-radius:4px; padding:9px; color:#2a3330; text-decoration:none; min-width:0; transition:border-color .15s,background .15s; }
.ume-market a.up-option:hover { background:#f5f8f6; border-color:#789384; }
.ume-market a.up-option.is-selected { border:2px solid #365c49; padding:8px; background:#f0f6f2; }
.up-option img { width:54px; height:54px; flex:none; object-fit:contain; border-radius:2px; }
.up-option>span { display:flex; flex-direction:column; gap:3px; min-width:0; }
.up-option strong { font-size:12px; line-height:1.3; overflow-wrap:anywhere; }
.up-option small { color:#5b695f; font-size:10px; line-height:1.4; overflow-wrap:anywhere; }
.up-option b { font-size:12px; line-height:1.4; }
.ume-market.single-product .woocommerce-tabs { margin-top:28px; padding-top:16px; border-top:1px solid #dce2dd; }
.ume-market.single-product .woocommerce-tabs ul.tabs { display:flex; gap:24px; padding:0 0 1px; overflow-x:auto; margin:0 0 24px; }
.ume-market.single-product .woocommerce-tabs ul.tabs li { flex:none; border:0; background:transparent; border-radius:0; padding:0; margin:0; }
.ume-market.single-product .woocommerce-tabs ul.tabs li::before,.ume-market.single-product .woocommerce-tabs ul.tabs li::after { display:none; }
.ume-market.single-product .woocommerce-tabs ul.tabs li a { padding:14px 0; font:600 14px/1.3 Arial,sans-serif; color:#647168; border-bottom:3px solid transparent; }
.ume-market.single-product .woocommerce-tabs ul.tabs li.active a { color:#263d30; border-color:#365c49; }
.ume-market.single-product .woocommerce-tabs .panel h2 { font:600 22px/1.35 Arial,sans-serif; margin:0 0 20px; }
.ume-market.single-product .woocommerce-tabs .panel { font-size:14px; line-height:1.7; }
.ume-market.single-product .woocommerce-tabs .panel li { margin-bottom:12px; }
.ume-market.single-product .woocommerce-product-attributes { border-collapse:collapse; width:100%; max-width:960px; border:1px solid #e1e5e2; font-size:14px; }
.ume-market.single-product .woocommerce-product-attributes th { width:35%; text-align:left; font-weight:500; }
.ume-market.single-product .woocommerce-product-attributes td { font-style:normal; }
.ume-market.single-product .woocommerce-product-attributes th,.ume-market.single-product .woocommerce-product-attributes td { padding:12px 16px; border-bottom:1px solid #e1e5e2; }
.ume-market.single-product .woocommerce-product-attributes td p { padding:0; margin:0; }
.up-measurements { margin-top:28px; }
.ume-market .up-measurements h3 { font-size:17px; margin-bottom:12px; }
.up-table-scroll { overflow:auto; max-width:960px; }
.up-table-scroll table { width:100%; border-collapse:collapse; font-size:13px; }
.up-table-scroll th,.up-table-scroll td { padding:12px; text-align:left; border:1px solid #e0e5e1; white-space:nowrap; }
.up-table-scroll thead { background:#f0f4f1; }
.up-documents { display:flex; gap:12px; flex-wrap:wrap; }
.ume-market .up-documents>a { display:flex; align-items:center; gap:12px; color:#253e31; border:1px solid #d9e1dc; padding:16px; border-radius:4px; text-decoration:none; }
.up-documents small { display:block; font-size:12px; color:#65716a; margin-top:3px; }
.up-support-links { display:flex; gap:24px; flex-wrap:wrap; margin:24px 0; }
.up-video { display:block; width:100%; max-width:800px; max-height:600px; margin-bottom:20px; }
.up-source-features { max-width:100%; overflow:auto; overflow-wrap:anywhere; }
.up-source-features table { border-collapse:collapse; max-width:100%; }
.up-source-features th,.up-source-features td { border:1px solid #e0e5e1; padding:10px; text-align:left; }
.up-option:focus-visible,.up-documents a:focus-visible,.woocommerce-tabs a:focus-visible { outline:2px solid #356b58; outline-offset:3px; }
@media(min-width:1000px) { .ume-market.single-product main .wp-block-columns { gap:40px; } }
@media(max-width:1100px) and (min-width:782px) { .up-options-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:781px) {
 .ume-market.single-product .wp-block-post-title { font-size:22px; }
 .up-options-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .up-option img { width:44px; height:44px; }
 .ume-market.single-product .woocommerce-tabs ul.tabs { gap:20px; }
 .ume-market.single-product .woocommerce-product-attributes th,.ume-market.single-product .woocommerce-product-attributes td { padding:10px; overflow-wrap:anywhere; }
 .ume-market.single-product .woocommerce-product-gallery .flex-control-thumbs { grid-template-columns:repeat(5,minmax(0,1fr)); }
}
@media(prefers-reduced-motion:reduce) { .up-option { transition:none!important; } }

/* CA purchase information stays adjacent to the native WooCommerce form. */
.uca-fulfillment { border-block:1px solid #dce3df; padding:20px 0; margin:20px 0 14px; color:#222c27; }
.uca-fulfillment-title { display:flex; align-items:center; gap:12px; }
.uca-fulfillment-title>.dashicons { color:#37694f; width:24px; height:24px; font-size:24px; }
.ume-market .uca-fulfillment h2 { margin:0; font:600 16px/1.4 Arial,sans-serif; }
.uca-fulfillment-title p { margin:3px 0 0; color:#647168; font-size:12px; }
.uca-fulfillment-title>strong { margin-left:auto; font-size:12px; color:#256244; background:#eef6f0; padding:5px 9px; border-radius:3px; }
.uca-fulfillment-title>strong.is-unavailable { color:#8b3935; background:#faf0ef; }
.uca-facts { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:18px 0 0; }
.uca-facts dt { color:#647168; font-size:12px; margin-bottom:4px; }
.uca-facts dd { margin:0; font-size:15px; font-weight:600; overflow-wrap:anywhere; }
.uca-note,.ume-market a.uca-help { font-size:12px; line-height:1.6; margin:14px 0 0; }
.uca-help { display:inline-block; color:#345e49; text-decoration:underline; }
.single-product form.cart:has(.uca-order-total) { display:grid!important; grid-auto-flow:row; grid-template-columns:154px minmax(0,1fr); gap:12px 20px; align-items:center; margin:16px 0 20px; }
.single-product form.cart:has(.uca-order-total)::before,.single-product form.cart:has(.uca-order-total)::after { display:none; }
.single-product form.cart>.uca-quantity-label { grid-column:1; grid-row:1; font-size:13px; font-weight:600; }
.single-product form.cart .quantity:has(#uca-quantity) { grid-column:1; grid-row:2; display:grid; grid-template-columns:42px minmax(0,1fr) 42px; width:154px!important; height:46px; margin:0!important; border:1px solid #cbd5ce; border-radius:4px; overflow:hidden; }
.single-product form.cart input#uca-quantity { width:100%; min-width:0; height:44px; box-sizing:border-box; border:0; border-radius:0; padding:0; margin:0; color:#202b24; background:#fff; text-align:center; appearance:textfield; font:600 15px Arial,sans-serif; }
#uca-quantity::-webkit-inner-spin-button,#uca-quantity::-webkit-outer-spin-button { appearance:none; margin:0; }
.single-product form.cart .uca-step { display:grid; place-items:center; width:42px; height:44px; min-height:44px; border:0; border-radius:0; padding:0; background:#f4f6f4; color:#294435!important; cursor:pointer; letter-spacing:0; }
.uca-step .dashicons { font-size:16px; width:16px; height:16px; }
.single-product form.cart .uca-step:disabled { color:#9ca6a0!important; cursor:default; }
.uca-step:focus-visible,#uca-quantity:focus-visible { outline:2px solid #35744f; outline-offset:-3px; }
.single-product form.cart>.uca-order-total { grid-column:2; grid-row:1 / 3; align-self:stretch; display:flex; flex-direction:column; align-items:flex-end; gap:4px; min-width:0; text-align:right; }
.uca-order-total>span { font-size:12px; color:#647168; }
.uca-order-total output { font:600 25px/1.3 Arial,sans-serif; color:#243d30; }
.uca-order-total small { width:100%; max-width:260px; font-size:11px; line-height:1.5; color:#667269; }
.single-product form.cart:has(.uca-order-total)>button.button { grid-column:1 / -1; width:100%; margin:0!important; min-height:46px; float:none; border-radius:4px; font:600 13px/1.4 Arial,sans-serif; letter-spacing:0; }
.single-product form.cart:has(.uca-order-total)>button.uc-buy-now { background:#fff; color:#304e3b!important; border:1px solid #304e3b; }
.up-spec-group { padding:0 0 24px; margin-bottom:24px; border-bottom:1px solid #e0e5e1; }
.ume-market .up-spec-group h3 { font:600 16px/1.4 Arial,sans-serif; margin:0 0 16px; }
.up-spec-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 28px; margin:0; }
.up-spec-grid>div { min-width:0; }
.up-spec-grid dt { font-size:12px; color:#617168; }
.up-spec-grid dd { font-size:14px; margin:3px 0 0; overflow-wrap:anywhere; color:#253d30; }
.up-spec-grid p { margin:0; }

@media(max-width:781px) {
 .up-spec-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
 .single-product form.cart:has(.uca-order-total) { grid-template-columns:144px minmax(0,1fr); gap:12px; }
 .single-product form.cart .quantity:has(#uca-quantity) { width:144px!important; }
 .uca-order-total output { font-size:23px; }
 .uca-fulfillment-title { gap:8px; }
 .ume-market .uca-fulfillment h2 { font-size:15px; }
}

/* Purchase layout applies to manual and API products, independent of source metadata. */
.ume-market.single-product main>.wp-block-columns>.wp-block-column { min-width:0; }
.ume-market.single-product .wp-block-post-excerpt { display:none; }
.ume-market.single-product .um-product-facts:empty { display:none; }
.ume-market.single-product form.cart:has(>.uca-order-total) {
 grid-template-areas:"delivery delivery" "coupon coupon" "quantity-label subtotal" "quantity subtotal" "add add" "buy buy";
 grid-template-rows:auto auto auto auto auto auto; gap:10px 20px;
}
.ume-market.single-product form.cart:has(>.uca-order-total)>.ume-delivery-picker { grid-area:delivery; margin:0 0 6px; padding:12px 0; }
.ume-market.single-product form.cart:has(>.uca-order-total)>.uic-box { grid-area:coupon; margin:0 0 8px; padding:12px 0; }
.ume-market.single-product form.cart:has(>.uca-order-total)>.uca-quantity-label { grid-area:quantity-label; margin:0; }
.ume-market.single-product form.cart:has(>.uca-order-total)>.quantity:has(#uca-quantity) { grid-area:quantity; }
.ume-market.single-product form.cart:has(>.uca-order-total)>.uca-order-total { grid-area:subtotal; justify-content:center; }
.ume-market.single-product form.cart:has(>.uca-order-total)>button.single_add_to_cart_button { grid-area:add; }
.ume-market.single-product form.cart:has(>.uca-order-total)>button.uc-buy-now { grid-area:buy; background:#fff!important; color:var(--studio-accent,#304e3b)!important; }
.ume-market.single-product form.cart input[type=hidden] { display:none!important; }
.ume-market.single-product .uca-fulfillment { margin:16px 0; padding:16px 0; }
.ume-market.single-product .uca-facts { margin-top:12px; }
.ume-market.single-product form.cart .uic-box p:empty { display:none; }
.ume-market.single-product .ume-delivery-picker[hidden] { display:none; }
@media(min-width:1000px) {
 .ume-market.single-product main>.wp-block-columns { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:32px; }
 .ume-market.single-product main>.wp-block-columns>.wp-block-column:first-child>.wp-block-woocommerce-product-image-gallery { position:sticky; top:48px; margin-bottom:0; }
 .ume-market.single-product .woocommerce-product-gallery__image a>img { max-height:none; }
}
@media(max-width:781px) {
 .ume-market.single-product form.cart:has(>.uca-order-total) { grid-template-columns:144px minmax(0,1fr); gap:10px 12px; }
 .ume-market.single-product .uca-order-total small { font-size:11px; }
}

/* Fill the gallery column rather than WooCommerce's fixed 512px block. */
.ume-market.single-product main>.wp-block-columns>.wp-block-column>.wp-block-woocommerce-product-image-gallery { width:100%; max-width:none; margin-inline:0; }
.ume-market.single-product .wp-block-woocommerce-product-image-gallery .woocommerce-product-gallery { width:100%; float:none; margin:0; }

.ume-market.single-product .ume-product-notes { max-width:none; margin-inline:0; padding:28px 0 36px; }
