/* Product presentation shared with the block editor. Prices and content stay native. */
body.single-product { background:#f8f5ef; }
body .lf-product { max-width:1440px; padding:36px 5vw 76px; }
body .lf-product .lf-product-intro { align-items:flex-start; gap:6vw; }
body .lf-product .lf-product-summary { min-width:0; }
body .lf-product .lf-eyebrow { font-size:12px; }
body .lf-product h1 { color:#ab2a23; font-size:clamp(48px,5.3vw,78px); line-height:1.02; }
body .lf-product .lf-product-photo { min-width:0; }
body .lf-product .lf-product-photo .woocommerce-product-gallery { float:none; width:100%; margin:0; }
body .lf-product .lf-product-photo .woocommerce-product-gallery__image img { aspect-ratio:1/1; width:100%; height:auto; object-fit:cover; }
body .lf-product .lf-product-photo .flex-control-thumbs { display:flex; gap:12px; padding:0; margin:16px 0; list-style:none; }
body .lf-product .lf-product-photo .flex-control-thumbs li { float:none; width:calc((100% - 24px)/3); }
body .lf-product .lf-product-photo .flex-control-thumbs img { aspect-ratio:3/2; object-fit:cover; opacity:.65; cursor:pointer; }
body .lf-product .lf-product-photo .flex-control-thumbs img.flex-active { opacity:1; outline:2px solid #ab2a23; outline-offset:3px; }
body .lf-product form.cart { width:100%; margin-top:28px; }
body .lf-product .lf-native-variations { display:none; }
body .lf-product .lf-format-options { padding:0; margin:0 0 24px; border:0; min-width:0; }
body .lf-product .lf-format-options legend { padding:0; margin:0 0 13px; color:#231e19; font:500 13px/1.6 Manrope,sans-serif; }
body .lf-product .lf-format-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
body .lf-product .lf-format-list label { position:relative; display:block; cursor:pointer; min-width:0; }
body .lf-product .lf-format-list input { position:absolute; width:1px; height:1px; margin:0; opacity:0; }
body .lf-product .lf-format-list label>span { display:flex; flex-direction:column; gap:9px; border:1px solid #d9cfc3; padding:15px 12px; font:400 13px/1.4 Manrope,sans-serif; color:#231e19; background:#fff; min-height:78px; box-sizing:border-box; }
body .lf-product .lf-format-list strong { font-size:19px; font-weight:500; white-space:nowrap; }
body .lf-product .lf-format-list input:checked+span { background:#f1e6da; border-color:#ab2a23; color:#ab2a23; }
body .lf-product .lf-format-list input:focus-visible+span { outline:2px solid #235a43; outline-offset:3px; }
body .lf-product .lf-format-list input:disabled+span { opacity:.45; cursor:not-allowed; }
body .lf-product .woocommerce-variation-add-to-cart, body .lf-product form.cart:not(.variations_form):not(.grouped_form) { display:flex; flex-wrap:wrap; gap:16px; align-items:center; }
body .lf-product .lf-product-quantity { display:flex; flex:0 0 auto; float:none; width:134px; height:46px; border:1px solid #c9bcb0; background:#fff; margin:0!important; }
body .lf-product .lf-product-quantity button { flex:0 0 44px; width:44px; height:44px; min-width:44px; min-height:44px; padding:0; border:0; border-radius:0; box-shadow:none; color:#ab2a23; background:transparent; font:400 24px/1 Manrope,sans-serif; }
body .lf-product .lf-product-quantity input.qty { width:44px; min-width:0; min-height:44px; height:44px; padding:0; margin:0; border:0; font:500 16px/1 Manrope,sans-serif; text-align:center; appearance:textfield; }
body .lf-product .lf-product-quantity input::-webkit-inner-spin-button, body .lf-product .lf-product-quantity input::-webkit-outer-spin-button { appearance:none; margin:0; }
body .lf-product .lf-product-quantity button:disabled { opacity:.35; cursor:default; }
body .lf-product .single_add_to_cart_button { flex:1 1 180px; float:none; min-height:52px; margin:0; }
body .lf-product :is(button,input):focus-visible { outline:2px solid #235a43; outline-offset:3px; }
body .lf-product .woocommerce-variation-price { margin-bottom:18px; font-size:24px; color:#ab2a23; }
body .lf-product .lf-product-photo:has(img[src*="placeholder"]) { display:none; }
@media (min-width:1100px) { body .lf-product .lf-product-photo { position:sticky; top:64px; } }
@media (max-width:781px) {
 body .lf-product { padding:24px 5vw 48px; }
 body .lf-product .lf-product-intro { gap:28px; }
 body .lf-product h1 { font-size:clamp(44px,12.5vw,60px); }
 body .lf-product .lf-product-photo .woocommerce-product-gallery__image img { aspect-ratio:3/2; max-height:none; }
 body .lf-product .lf-format-list label>span { padding:14px 10px; }
 body .lf-product .lf-format-list strong { font-size:17px; }
 body .lf-product .single_add_to_cart_button { flex-basis:100%; }
 body .lf-product .lf-product-intro:has(img[src*="placeholder"]) .lf-product-summary { padding:24px 16px; }
}
.orderable-product-fields-group[data-lf-quarter][hidden], .lf-quarter-note[hidden] { display:none!important; }
.lf-quarter-note { font-size:13px; line-height:1.5; color:#62554a; }
.orderable-product-option[role="checkbox"]:focus-visible { outline:2px solid #235a43; outline-offset:3px; }
body .lf-product .orderable-product-fields-group-wrap { flex-basis:100%; width:100%; }
body .lf-product .orderable-product-fields-group { margin-bottom:20px; }
body .lf-product .orderable-product-option { min-height:48px; }
body .lf-product .lf-configured-price { font:500 15px/1.5 Manrope,sans-serif; margin:8px 0; color:#ab2a23; }
