/* Pablo RUNBOOK §10: photo-led cards, clear quantity prices, approved product/footer. Checkout excluded at asset loader. */
body:is(#index,#category,#search,#product) #wrapper>.container { max-width:1488px!important; width:100%!important; margin-inline:auto; padding-inline:24px!important; }
.bjm-home-first { display:block; }.bjm-home-sidebar { display:none; }
.bjm-home-products { min-height:0; grid-template-columns:repeat(4,minmax(0,1fr)); }
.product-miniature.bjm-list-card { padding:6px!important; border:1px solid #e2dfe7; border-radius:12px; background:#fff; }
body:is(#index,#category,#search,#product) .bjm-list-card .thumbnail-container { width:100%!important; height:auto!important; margin:0!important; background:#fff; box-shadow:none; }
body:is(#index,#category,#search,#product) .bjm-list-card .thumbnail-top { width:100%!important; height:auto!important; aspect-ratio:1/1; overflow:hidden; background:#fff; }
body:is(#index,#category,#search,#product) .bjm-list-card .product-thumbnail { width:100%; height:100%; display:block; }
body:is(#index,#category,#search,#product) .bjm-list-card .product-thumbnail img { width:100%!important; height:100%!important; max-width:100%; object-fit:contain; }
body:is(#index,#category,#search,#product) .bjm-list-card .product-description { padding:0!important; height:auto!important; position:static; width:100%!important; text-align:left!important; }
body:is(#index,#category,#search,#product) .bjm-list-card .product-title { margin:8px 0!important; height:44px!important; min-height:0!important; font-size:16px!important; text-align:left!important; }
body:is(#index,#category,#search,#product) .bjm-list-card .product-title a { color:#232323!important; font-size:16px!important; line-height:1.35; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; text-transform:none; }
body:is(#index,#category,#search,#product) .bjm-list-card .bjm-card-badges { position:static!important; display:flex; flex-wrap:wrap; gap:4px; padding:6px 0 0; min-height:34px; pointer-events:none; }
body:is(#index,#category,#search,#product) .bjm-list-card .product-price-and-shipping { margin:0!important; text-align:left!important; justify-content:flex-start!important; gap:4px!important; min-height:24px!important; line-height:1.4!important; }
body:is(#index,#category,#search,#product) .bjm-list-card .price,.bjm-card-from-price { color:#232323; font-size:18px; font-weight:800; }
body:is(#index,#category,#search,#product) .bjm-list-card .regular-price { color:#625b6b!important; font-size:14px; }
body:is(#index,#category,#search,#product) .bjm-list-card .bjm-list-sale-unit { color:#625b6b; font-size:16px; font-weight:400; padding-left:0; }
body:is(#index,#category,#search,#product) .bjm-list-card .bjm-list-details { min-height:0!important; }
body:is(#index,#category,#search,#product) .bjm-list-card .bjm-list-minimum { margin:3px 0 0; min-height:0!important; font-size:16px; line-height:1.4; text-align:left!important; color:#625b6b; }
body:is(#index,#category,#search,#product) .bjm-list-card .bjm-list-state { margin:3px 0 0; min-height:0!important; font-size:16px; text-align:left!important; }
.bjm-pricing-card-ready :is(.price,.regular-price) { display:none!important; }
body#product .featured-products .products { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0!important; }
body#product .featured-products .js-product { min-width:0; max-width:100%; width:auto!important; padding:0!important; margin:0; }
/* Legacy recommendation carousel sets a quarter-width inside each grid cell; neutralize that causal double division. */
body#product .bm-reco-section .products > .js-product { width:100%!important; max-width:100%!important; flex:none!important; }
body#product .product-container { display:grid!important; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:28px; margin:0; }
body#product .product-container>.col-md-6 { width:auto!important; padding:0; min-width:0; }
body#product .h1 { font-size:26px; line-height:1.25; text-transform:none; margin-bottom:14px; }
body#product .product-cover img { width:100%; height:auto; max-height:520px; object-fit:contain; border:1px solid #e2dfe7; border-radius:12px; background:#faf9fc; }
body#product .product-images img { border-radius:8px; }
body#product .product-price { color:#232323!important; font-size:28px; }
.bjm-product-unit { font-size:16px; color:#625b6b; font-weight:400; }
.bjm-product-minimum { font-size:16px; color:#625b6b; margin:6px 0; }
.bjm-product-copy { font-size:16px; color:#232323; margin:10px 0; }
.bjm-product-lot { margin-top:8px; }
.bjm-product-tiers h2 { font-size:18px; margin:14px 0 8px; }
.bjm-product-tiers table { width:100%; border-collapse:collapse; font-size:16px; }
.bjm-product-tiers th,.bjm-product-tiers td { border-bottom:1px solid #e2dfe7; text-align:left; padding:8px 6px; }
body#product.bjm-tiers-ready .product-discounts { display:none!important; }
body#product .product-add-to-cart .product-quantity { display:flex; gap:10px; align-items:center; }
body#product .product-add-to-cart .add { flex:1; }
body#product [data-button-action=add-to-cart] { width:100%; min-height:48px; border-radius:999px!important; background:#7828c8!important; color:#fff!important; font-size:16px; text-transform:none; }
/* Native .btn nowrap lets the longer profile quotation label escape the mobile card. */
body#product .product-actions [data-button-action=add-to-cart] { white-space:normal!important; overflow-wrap:anywhere; }
body#product .product-add-to-cart { padding:14px; border:1px solid #e2dfe7; background:#faf9fc; border-radius:12px; }
body#product #product-description-short { display:none; }
.bjm-product-facts { margin-top:18px; padding:14px; border:1px solid #e2dfe7; border-radius:12px; font-size:16px; }
.bjm-product-facts h2 { font-size:18px; margin:0 0 8px; }.bjm-product-facts p { margin:0 0 8px; }
.bjm-product-facts p { color:#625b6b; }
.bjm-product-facts a,.bjm-product-context a { color:#7828c8; }
.bjm-product-description { padding:16px 0; }.bjm-product-description summary { font-size:18px; font-weight:700; min-height:44px; cursor:pointer; }
.bjm-product-description .product-description { font-size:16px; padding-top:12px; }
.bjm-product-context { padding:18px 0; }.bjm-product-context h2 { font-size:22px; }
.bjm-volume-hero { display:flex; align-items:center; gap:18px; margin:0 0 14px; color:#625b6b; font-size:14px; }
.bjm-volume-hero[hidden] { display:none; }.bjm-volume-hero img { width:240px; height:140px; object-fit:cover; border-radius:12px; }
.bjm-hdr-volume-doors a .bjm-volume-photo { width:100%; height:180px; object-fit:cover; border-radius:10px; grid-column:1/-1; }
.bjm-footer { max-width:1440px; margin:auto; padding:28px 24px; background:#f8f6fb; color:#232323; }
.bjm-footer-columns { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; }
.bjm-footer summary { font-size:18px; font-weight:700; list-style:none; min-height:44px; cursor:pointer; }
.bjm-footer details nav a { display:block; color:#232323; font-size:16px; min-height:30px; padding-block:4px; }
.bjm-footer-contact { display:flex; gap:20px; flex-wrap:wrap; align-items:center; border-top:1px solid #e2dfe7; margin-top:20px; padding-top:20px; }
.bjm-footer-contact a { display:inline-flex; gap:6px; align-items:center; min-height:44px; color:#7828c8; font-size:16px; }
.bjm-footer-contact svg { width:20px; height:20px; color:#1fa855; }.bjm-footer-languages { display:flex; gap:14px; margin-left:auto; }
.bjm-footer p { font-size:16px; color:#625b6b; }.bjm-footer .privacy-settings-link { color:#7828c8; }
.bjm-footer-native-hooks .block_newsletter,.bjm-footer-native-hooks .block-social,.bjm-footer-native-hooks .links,.bjm-footer-native-hooks .text-sm-center { display:none!important; }
.bjm-footer-native-hooks :is(.footer-container,.container,.row) { padding:0!important; margin:0!important; border:0!important; background:transparent!important; }
body:is(#index,#category,#search,#product) #footer { padding-top:0!important; background:#f8f6fb; }
.bjm-footer a:focus-visible,.bjm-footer summary:focus-visible,body#product :is(a,button,input,summary):focus-visible { outline:3px solid #7828c8!important; outline-offset:2px; }
@media(min-width:1680px) { .bjm-home-products,body#product .featured-products .products { grid-template-columns:repeat(6,minmax(0,1fr)); } }
@media(max-width:767px) {
 body:is(#index,#category,#search,#product) #wrapper>.container { padding-inline:12px!important; }
 .bjm-home-products,body#product .featured-products .products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .bjm-home-products { min-height:0; }.bjm-home-products>.js-product:nth-child(n+7) { display:none; }
 .bjm-home-family-grid a { min-width:0; }.bjm-home-family-grid a span { min-width:0; overflow-wrap:anywhere; }
 body#product .product-container { grid-template-columns:1fr; gap:18px; }.bjm-product-price { font-size:26px; }
 .bjm-footer { padding:20px 14px; }.bjm-footer-columns { grid-template-columns:1fr; gap:0; }
 .bjm-footer details { border-bottom:1px solid #e2dfe7; }.bjm-footer summary { padding:10px 0; }
 .bjm-footer summary::after { content:'+'; float:right; color:#7828c8; }.bjm-footer details[open]>summary::after { content:'−'; }
 .bjm-footer details nav { padding-bottom:12px; }.bjm-footer details nav a { min-height:36px; }
 .bjm-footer-contact { display:grid; gap:4px; }.bjm-footer-languages { margin:8px 0 0; flex-wrap:wrap; }
 .bjm-volume-hero { flex-direction:column; align-items:flex-start; gap:4px; }.bjm-volume-hero img { width:100%; height:100px; }
 .bjm-volume-hero { font-size:16px; }
 .bjm-hdr-volume-doors a .bjm-volume-photo { height:140px; }
}
.bjm-footer-native-hooks div:has(> .block-title):has(> .block-icon) { display:none!important; }
