body.lpd-ready { --lpd-blue:#4456a6; --lpd-yellow:#ffdf00; }
body.lpd-ready .lpd-layout { display:grid!important; grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr); gap:26px!important; align-items:start; }
body.lpd-ready .lpd-header { grid-column:1/-1; display:flex; flex-direction:column; gap:12px; min-width:0; }
body.lpd-ready .lpd-header .elementor-heading-title { font-size:clamp(25px,2.4vw,36px); font-weight:650; line-height:1.2; }
body.lpd-ready .lpd-header .woocommerce-breadcrumb { font-size:12px; line-height:1.6; }
body.lpd-ready .lpd-empty { display:none!important; }
body.lpd-ready .lpd-gallery-column,body.lpd-ready .lpd-buy { width:100%!important; min-width:0!important; padding:0!important; }
body.lpd-ready .lpd-buy { padding:24px!important; background:#fff; border:1px solid #e5e7ef; border-radius:18px; gap:18px; }
body.lpd-ready .lpd-buy .price { font-size:30px!important; font-weight:700; line-height:1.2; color:#171a21; }
body.lpd-ready .lpd-buy .price del { font-size:.65em; opacity:.55; }
body.lpd-ready .lpd-buy .price ins { background:none; text-decoration:none; }
body.lpd-ready .spg { display:grid!important; grid-template-columns:68px minmax(0,1fr); gap:12px; align-items:start; }
body.lpd-ready .spg-main { grid-column:2; grid-row:1; width:100%; border-radius:16px; overflow:hidden; }
body.lpd-ready .spg-main-img { object-fit:contain!important; background:#f6f7f9; }
body.lpd-ready .spg-thumbs { grid-column:1; grid-row:1; display:flex!important; flex-direction:column!important; flex-wrap:nowrap!important; gap:10px!important; width:68px!important; max-height:var(--lpd-gallery-height,560px); overflow-y:auto; margin:0!important; padding:2px!important; scrollbar-width:thin; }
body.lpd-ready .spg-thumbs li { flex:0 0 64px!important; width:64px!important; height:64px!important; list-style:none; }
body.lpd-ready .spg-thumbs .spg-thumb { display:block; width:64px!important; height:64px!important; object-fit:cover; border-radius:9px; border:2px solid transparent; cursor:pointer; }
body.lpd-ready .spg-thumb.is-active { border-color:var(--lpd-blue)!important; }
body.lpd-ready .lpd-buy form.cart { margin:0; width:100%; }
body.lpd-ready .lpd-buy table.variations,body.lpd-ready .lpd-buy table.variations tbody { display:block; width:100%; margin:0 0 16px; }
body.lpd-ready .lpd-buy table.variations tr { display:block; margin:0 0 20px; }
body.lpd-ready .lpd-buy table.variations th,body.lpd-ready .lpd-buy table.variations td { display:block; width:100%; border:0; padding:0; text-align:left; }
body.lpd-ready .lpd-buy table.variations label { display:block; font-size:14px; font-weight:600; color:#252832; margin-bottom:9px; }
body.lpd-ready select.lpd-native-select { display:none!important; }
body.lpd-ready .lpd-options { display:flex; flex-wrap:wrap; gap:8px; }
body.lpd-ready button.lpd-option { height:auto; min-height:42px; max-width:100%; white-space:normal; overflow-wrap:anywhere; border:1px solid #d6d9e3; padding:9px 15px; border-radius:12px; background:#fff; color:#292d36; font-size:13px; line-height:1.45; text-align:left; box-shadow:none; }
body.lpd-ready button.lpd-option.is-selected { color:var(--lpd-blue); border-color:var(--lpd-blue); background:#f0f2ff; }
body.lpd-ready button.lpd-option:disabled { opacity:.4; cursor:not-allowed; }
body.lpd-ready .lpd-option:focus-visible,body.lpd-ready .spg-thumb:focus-visible { outline:2px solid var(--lpd-blue); outline-offset:3px; }
body.lpd-ready .lpd-buy .e-atc-qty-button-holder { display:flex; flex-wrap:wrap; gap:12px; width:100%; }
body.lpd-ready .lpd-buy .single_add_to_cart_button { flex:1; min-height:50px; padding:12px 16px!important; border:0; border-radius:13px!important; background:var(--lpd-blue)!important; color:#fff!important; font-size:15px; font-weight:600; white-space:normal; }
body.lpd-ready .lpd-buy .single_add_to_cart_button.disabled,body.lpd-ready .lpd-buy .single_add_to_cart_button:disabled { opacity:.5; }
body.lpd-ready .lpd-buy .quantity { flex:0 0 95px; max-width:105px; }
body.lpd-ready .lpd-buy .elementor-widget-button .elementor-button { background:var(--lpd-yellow)!important; color:#171717!important; min-height:46px; border-radius:12px; font-size:14px; padding:14px 20px; }
body.lpd-ready .lpd-buy .reset_variations { display:inline-block; margin-top:8px; font-size:12px; }
body.lpd-ready .lpd-help { font-size:12px; line-height:1.5; color:#6b7280; margin:10px 0 0; }
body.lpd-ready .lpd-help:empty { display:none; }
body.lpd-ready .bdt-tabs .bdt-tab { gap:8px; }
body.lpd-ready .bdt-tabs .bdt-tab>li>a { border-radius:10px; font-size:14px; }
.lpd-sticky { display:none; }
@media (max-width:1024px) {
 body.lpd-ready .lpd-layout { grid-template-columns:minmax(0,1.2fr) minmax(290px,1fr); gap:18px!important; }
 body.lpd-ready .lpd-buy { padding:18px!important; }
 body.lpd-ready .spg { grid-template-columns:52px minmax(0,1fr); gap:8px; }
 body.lpd-ready .spg-thumbs { width:52px!important; max-height:var(--lpd-gallery-height,400px); }
 body.lpd-ready .spg-thumbs li,body.lpd-ready .spg-thumbs .spg-thumb { width:48px!important; height:48px!important; flex-basis:48px!important; }
}
@media (max-width:767px) {
 body.lpd-ready { padding-bottom:calc(90px + env(safe-area-inset-bottom,0px)); }
 body.lpd-ready .lpd-layout { grid-template-columns:minmax(0,1fr); gap:18px!important; }
 body.lpd-ready .lpd-header { gap:8px; }
 body.lpd-ready .lpd-header .elementor-heading-title { font-size:25px; }
 body.lpd-ready .lpd-buy { padding:16px!important; border-radius:14px; }
 body.lpd-ready .spg { display:flex!important; flex-direction:column; gap:10px; }
 body.lpd-ready .spg-main { width:100%; }
 body.lpd-ready .spg-thumbs { display:flex!important; flex-direction:row!important; width:100%!important; max-height:none; overflow-x:auto; overflow-y:hidden; }
 body.lpd-ready .spg-thumbs li,body.lpd-ready .spg-thumbs .spg-thumb { width:54px!important; height:54px!important; flex:0 0 54px!important; }
 body.lpd-ready .lpd-buy .price { font-size:28px!important; }
 body.lpd-ready .lpd-sticky { display:flex; position:fixed; z-index:1000; bottom:0; left:0; right:0; align-items:center; gap:12px; padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px)); background:#fff; border-top:1px solid #e5e7ef; box-shadow:0 -4px 20px #1720400d; }
 body.lpd-ready .lpd-sticky-price { min-width:0; flex:1; font-size:18px; font-weight:700; }
 body.lpd-ready .lpd-sticky-price .price { font-size:18px; }
 body.lpd-ready .lpd-sticky-price del { font-size:12px; opacity:.55; }
 body.lpd-ready .lpd-sticky-price ins { text-decoration:none; background:none; }
 body.lpd-ready .lpd-sticky-button { min-height:46px; max-width:60%; border:0; border-radius:12px; padding:10px 16px; color:#fff; background:var(--lpd-blue); font-size:13px; line-height:1.4; }
 body.lpd-ready .lpd-sticky-button:disabled { opacity:.5; }
}

/* Elementor styles every cart button with a widget-level selector. */
body.lpd-ready .lpd-buy form.cart button.lpd-option {
 background:#fff!important; color:#292d36!important;
 padding:10px 15px!important; border:1px solid #d6d9e3!important;
 border-radius:12px!important; font-size:13px!important;
 height:auto!important; min-height:42px; line-height:1.5!important;
 text-shadow:none!important; box-shadow:none!important;
 white-space:normal!important; overflow-wrap:anywhere;
 margin:0!important; transform:none!important;
}
body.lpd-ready .lpd-buy form.cart button.lpd-option:hover:not(:disabled) {
 background:#f7f8fc!important; border-color:#8994c8!important;
}
body.lpd-ready .lpd-buy form.cart button.lpd-option.is-selected {
 background:#f0f2ff!important; color:#34458f!important; border-color:#4456a6!important;
}
body.lpd-ready .lpd-buy form.cart button.lpd-option:disabled { opacity:.4!important; }
body.lpd-ready .lpd-header .elementor-heading-title { font-size:clamp(25px,2.4vw,36px)!important; font-weight:650!important; }
body.lpd-ready .lpd-buy { align-self:start!important; height:auto!important; min-height:0!important; justify-content:flex-start!important; }

body.lpd-ready .lpd-layout > .lpd-gallery-column,
body.lpd-ready .lpd-layout > .lpd-buy { margin-top:0!important; }
body.lpd-ready .lpd-buy form.cart button.lpd-fabric-option {
 display:flex!important; flex-direction:column; gap:5px;
 width:100%!important; align-items:flex-start; text-align:left!important;
}
body.lpd-ready .lpd-option-title { display:block; font-size:14px; font-weight:600; line-height:1.4; }
body.lpd-ready .lpd-option-detail { display:block; font-size:12px; font-weight:400; line-height:1.5; color:#626b7a; }
body.lpd-ready .lpd-option.is-selected .lpd-option-detail { color:#4e5c8e; }

body.lpd-ready .lpd-buy .lpd-quick-row {
 display:grid!important; grid-template-columns:minmax(0,1fr) 46px;
 gap:12px!important; width:100%!important; margin:0!important;
 padding:0 0 0 107px!important; box-sizing:border-box;
 align-items:center!important;
}
body.lpd-ready .lpd-buy .lpd-quick-column,
body.lpd-ready .lpd-buy .lpd-heart-column {
 width:100%!important; min-width:0!important; margin:0!important;
 padding:0!important; align-items:stretch!important;
}
body.lpd-ready .lpd-quick-column .elementor-widget-button,
body.lpd-ready .lpd-quick-column .elementor-button-wrapper { width:100%!important; margin:0!important; }
body.lpd-ready .lpd-buy .lpd-quick-column .elementor-button {
 display:flex!important; width:100%!important; min-height:48px!important;
 align-items:center; justify-content:center; box-sizing:border-box;
 padding:12px 10px!important;
}
body.lpd-ready .lpd-heart-column .lwl-toggle { display:flex; width:46px; height:48px; align-items:center; justify-content:center; margin:0!important; }
@media(max-width:767px) { body.lpd-ready .lpd-buy .lpd-quick-row { padding-left:0!important; } }

/* Keep the native quantity value for WooCommerce; hide only its product-page UI. */
body.lpd-ready .lpd-buy form.cart .quantity { display:none!important; }
body.lpd-ready .lpd-buy .e-atc-qty-button-holder .single_add_to_cart_button { width:100%!important; flex:1 1 100%!important; }
body.lpd-ready .lpd-buy .lpd-quick-row { padding-left:0!important; }

body.lpd-ready .lpd-buy form.cart .single_add_to_cart_button {
 margin:0!important; padding:12px 16px!important; box-sizing:border-box!important;
}
body.lpd-ready .lpd-buy .e-atc-qty-button-holder { margin:0!important; padding:0!important; gap:0!important; }
/* Apply before JS enhancement too, avoiding a dark transient frame. */
body.single-product .spg-main,
body.single-product .spg-main-img { border:0!important; box-shadow:none!important; outline:none!important; }
body.single-product .spg button:focus:not(:focus-visible),
body.lpd-ready .lpd-buy button:focus:not(:focus-visible),
body.lpd-ready .lpd-buy a:focus:not(:focus-visible) { outline:none!important; box-shadow:none!important; }
body.single-product .spg button:focus-visible,
body.lpd-ready .lpd-buy button:focus-visible,
body.lpd-ready .lpd-buy a:focus-visible { outline:2px solid #4456a6!important; outline-offset:3px; }

/* Compact desktop actions; identical widths for the primary and quick-buy buttons. */
@media (min-width:768px) {
 body.lpd-ready .lpd-buy form.cart .single_add_to_cart_button {
  flex:0 1 300px!important; width:300px!important; max-width:100%!important;
 }
 body.lpd-ready .lpd-buy .lpd-quick-row {
  width:358px!important; max-width:100%!important; grid-template-columns:minmax(0,300px) 46px;
 }
}

/* Reserve space for native vertical scrollbars (Windows uses non-overlay bars). */
@media (min-width:768px) {
 body.lpd-ready .spg { grid-template-columns:86px minmax(0,1fr); }
 body.lpd-ready .spg-thumbs {
  width:100%!important; min-width:0!important; box-sizing:border-box!important;
  overflow-x:hidden!important; overflow-y:auto!important; scrollbar-gutter:stable;
 }
 body.lpd-ready .spg-thumbs li {
  flex:0 0 auto!important; width:100%!important; min-width:0!important;
  max-width:100%!important; height:auto!important; aspect-ratio:1;
  box-sizing:border-box!important; margin:0!important;
 }
 body.lpd-ready .spg-thumbs .spg-thumb {
  width:100%!important; max-width:100%!important; height:100%!important;
  box-sizing:border-box!important;
 }
}
@media (min-width:768px) and (max-width:1024px) {
 body.lpd-ready .spg { grid-template-columns:70px minmax(0,1fr); }
}

body.lpd-ready .lpd-buy .lpd-price-row {
 display:flex!important; align-items:center; justify-content:space-between;
 gap:16px; width:100%; min-width:0;
}
body.lpd-ready .lpd-price-row > .elementor-widget-woocommerce-product-price {
 flex:1 1 auto; width:auto!important; min-width:0; margin:0!important;
}
body.lpd-ready .lpd-price-row .price { margin:0!important; }
body.lpd-ready .lpd-price-row > .lpd-price-heart {
 flex:0 0 44px; width:44px!important; margin:0!important; padding:0!important;
 position:static!important;
}
body.lpd-ready .lpd-price-heart .lwl-toggle {
 display:flex!important; align-items:center; justify-content:center;
 width:44px!important; height:44px!important; margin:0!important;
}
body.lpd-ready .lpd-buy .lpd-quick-row {
 grid-template-columns:minmax(0,1fr)!important; width:300px!important; max-width:100%!important;
}
@media(max-width:767px) { body.lpd-ready .lpd-buy .lpd-quick-row { width:100%!important; } }

/* Keep the new price row from shrinking in Elementor's flex container. */
body.lpd-ready .lpd-buy > .lpd-price-row {
 flex:0 0 auto!important; min-height:48px!important; height:auto!important;
 margin:0 0 8px!important; padding:0!important; position:relative!important;
 align-items:center!important; overflow:visible!important;
}
body.lpd-ready .lpd-price-row > .elementor-widget-woocommerce-product-price {
 position:static!important; height:auto!important; min-height:36px!important;
 align-self:center!important; transform:none!important;
}
body.lpd-ready .lpd-price-row .elementor-widget-container { height:auto!important; }
body.lpd-ready .lpd-price-row .price { display:block!important; line-height:1.25!important; }
body.lpd-ready .lpd-price-row > .lpd-price-heart { align-self:center!important; }

/* Reset the original Elementor widget's -49px top margin. */
body.lpd-ready .lpd-buy .elementor-widget-woocommerce-product-add-to-cart > .elementor-widget-container {
 margin:0!important; padding:0!important; transform:none!important; translate:none!important;
}

body.lpd-ready .lpd-buy > .lpd-price-row {
 width:auto!important; max-width:100%!important; align-self:stretch!important;
 box-sizing:border-box!important; flex-wrap:wrap; column-gap:16px; row-gap:6px;
}
body.lpd-ready .lpd-price-row > .lpd-price-heart {
 flex:0 0 auto!important; width:auto!important; max-width:100%!important;
 min-width:0!important; padding:0!important; margin:0!important;
}
body.lpd-ready .lpd-price-row > .elementor-widget-woocommerce-product-price { flex:1 1 140px!important; }
body.lpd-ready .lpd-price-row .lpd-price-heart .lwl-toggle {
 display:inline-flex!important; width:auto!important; max-width:100%!important;
 min-height:44px; height:auto!important; gap:8px!important; padding:0!important;
 border:0!important; border-radius:0!important; background:transparent!important;
 color:#4456a6!important; font-size:13px!important; white-space:nowrap;
}
body.lpd-ready .lpd-price-heart .lwl-text { display:inline!important; order:0; }
body.lpd-ready .lpd-price-heart .lwl-ico { display:inline-flex; order:1; flex-shrink:0; }
