/* Kuarbaa Product Suite 1.1.1. Only this suite's product template/widgets are styled.
   Layout/text/images remain native Elementor controls. Security stays on the server. */
.kbp-page{color:#142c46;width:100%;--widgets-spacing:0px;--kbp-navy:#173b63;--kbp-red:#e5292f;font-family:Arial,sans-serif}
.kbp-page *,.kbp-page *:before,.kbp-page *:after{box-sizing:border-box}
.kbp-page [hidden],.kbp-hidden{display:none!important}
.kbp-page .e-con,.kbp-page .elementor-widget{min-width:0}
.kbp-page p{margin:0 0 8px}.kbp-page p:last-child{margin-bottom:0}
.kbp-page .elementor-heading-title{margin:0;overflow-wrap:break-word}
.kbp-page .kbp-summary{container-type:inline-size;container-name:kbp-summary}
.kbp-page .kbp-summary>.elementor-widget{width:100%;flex:0 0 auto}
.kbp-page .kbp-breadcrumb .woocommerce-breadcrumb{margin:0;line-height:1.5}
/* A boxed Elementor container has an inner wrapper. Percentages never have to add up with a pixel gap. */
.kbp-page .kbp-hero>.e-con-inner{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:start;gap:32px}
.kbp-page .kbp-hero>.e-con-inner>.e-con{width:100%;min-width:0}
.kbp-page .kbp-spec-label{width:54%;flex:0 1 54%}
.kbp-page .kbp-spec-value{width:auto;flex:1 1 0}
.kbp-page .kbp-spec-value .elementor-heading-title{overflow-wrap:anywhere}
.kbp-page .kbp-spec-row:nth-child(even){background:#f1f5f9}
.kbp-page .kbp-no-dimension>.kbp-spec-table{width:100%!important}
.kbp-page .kbp-dimension{align-self:flex-start}.kbp-page .kbp-dimension img{width:100%;height:auto;object-fit:contain}
.kbp-page .kbp-card-image img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:7px}
.kbp-page .kbp-feature-icon img{width:38px;height:38px;object-fit:contain;aspect-ratio:1}
.kbp-page .kbp-feature-card{align-items:center;text-align:center}
.kbp-page .kbp-feature-card .elementor-heading-title{text-align:center}
.kbp-page .kbp-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%}
.kbp-page .kbp-kpis>.kbp-kpi{width:100%;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:7px;padding:13px 8px}
.kbp-page .kbp-kpi .elementor-widget-icon{width:auto;align-self:center}
.kbp-page .kbp-kpi .elementor-icon-wrapper{line-height:1}
.kbp-page .kbp-kpi .elementor-icon{font-size:22px}
.kbp-page .kbp-kpi .kbp-value{width:100%}
.kbp-page .kbp-kpi .elementor-heading-title{text-align:center;white-space:nowrap;word-break:normal;font-size:17px;line-height:1.25}
.kbp-page .kbp-kpi .elementor-widget-text-editor{font-size:12px;line-height:1.35}
.kbp-page .kbp-kpis.kbp-kpis-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.kbp-page .kbp-kpis.kbp-kpis-wrap-values .elementor-heading-title{white-space:normal;overflow-wrap:anywhere}
/* Old-template compatibility only. The new template displays battery capacity alone. */
.kbp-page .kbp-battery-values{display:flex;gap:4px;justify-content:center;flex-wrap:wrap;align-items:center}
.kbp-page .kbp-battery-values>.elementor-widget{width:auto;flex:0 0 auto}
/* Four lightweight service items, not another row of large KPI cards. */
.kbp-page .kbp-trust:not([hidden]):not(.kbp-hidden){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;align-items:start;padding:12px 14px;border:1px solid #e8edf3;border-radius:7px;background:#fafbfd}
.kbp-page .kbp-trust .kbp-trust-item:not([hidden]):not(.kbp-hidden){display:grid!important;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:7px;width:100%!important;min-width:0!important;max-width:100%;margin:0;padding:0}
.kbp-page .kbp-trust-item>.elementor-widget-icon{width:18px!important;min-width:18px;max-width:18px;grid-column:1;margin:0!important;justify-self:start}
.kbp-page .kbp-trust-item .elementor-icon{font-size:17px}
.kbp-page .kbp-trust-item>.elementor-widget-heading,.kbp-page .kbp-trust-item>.elementor-widget-text-editor{width:auto!important;min-width:0;grid-column:2;margin:0!important}
.kbp-page .kbp-trust-item .elementor-heading-title,.kbp-page .kbp-trust-item .elementor-widget-text-editor{font-size:13px;line-height:1.45;writing-mode:horizontal-tb;white-space:normal;word-break:normal;overflow-wrap:normal;text-align:left}
.kbp-editor-placeholder{border:1px dashed #98aec4;padding:14px;color:#435b73;background:#f2f6fa;font:13px/1.5 Arial,sans-serif;border-radius:7px}
.kbp-page[data-kbp-editor="1"] .kbp-content-card img[src*="editor-placeholder"]{opacity:.8}
.kbp-page .kbp-quote-link .elementor-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.kbp-muted{color:#64748b;font-size:14px}.kbp-text-link{color:#173b63;font-weight:600;text-decoration:none}
/* Gallery implementation and protection are in gallery.css / gallery.js. */
/* Native WooCommerce forms: quantity row plus THREE aligned actions. Form validation is untouched. */
.kbp-purchase{width:100%;container-type:inline-size;container-name:kbp-purchase;--kbp-price-color:#173b63;--kbp-quote-color:#e5292f}
.kbp-page .kbp-price{font:700 32px/1.2 Arial,sans-serif;color:var(--kbp-price-color);margin:0 0 8px}
.kbp-page .kbp-price :is(.amount,.woocommerce-Price-amount,bdi,ins,.woocommerce-Price-currencySymbol){color:var(--kbp-price-color)!important;font-size:inherit;font-weight:inherit;background:none;text-decoration:none}
.kbp-page .kbp-price del{font-size:18px;color:#697585;font-weight:400}.kbp-page .kbp-price del :is(.amount,bdi){color:#697585!important}
.kbp-price-note{color:#657487;font:13px/1.45 Arial,sans-serif;margin-bottom:14px!important}
.kbp-actions{display:block;width:100%}
.kbp-editor-form{min-width:0;width:100%;padding:0;border:0;margin:0}
.kbp-purchase :is(form.cart:not(.variations_form):not(.grouped_form),.woocommerce-variation-add-to-cart){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:10px!important;width:100%;padding:0;margin:0!important}
.kbp-purchase form.variations_form,.kbp-purchase form.grouped_form{display:block;width:100%;margin:0}
.kbp-purchase .variations{width:100%;margin-bottom:12px}
.kbp-purchase :is(form.cart,.woocommerce-variation-add-to-cart)>input[type="hidden"]{display:none!important}
.kbp-purchase :is(form.cart,.woocommerce-variation-add-to-cart)>:not(.quantity):not(.single_add_to_cart_button):not(.kbp-buy-now):not(.kbp-quote):not(input[type="hidden"]){grid-column:1/-1}
.kbp-purchase .quantity{grid-column:1/-1;grid-row:1;justify-self:start;width:auto!important;margin:0!important;display:inline-flex;align-items:stretch;min-height:40px}
.kbp-purchase .quantity input.qty{width:54px;min-height:40px;max-width:75px}
.kbp-purchase .quantity :is(input[type="button"],button){min-width:30px;min-height:40px;padding:0 8px}
.kbp-primary,.kbp-secondary,.kbp-purchase .single_add_to_cart_button,.kbp-purchase .kbp-buy-now{min-height:44px;padding:12px 14px;display:inline-flex;gap:7px;align-items:center;justify-content:center;border-radius:6px;font:600 14px/1.3 Arial,sans-serif;text-decoration:none!important;text-transform:none;cursor:pointer}
.kbp-purchase .single_add_to_cart_button,.kbp-purchase .kbp-buy-now,.kbp-purchase form .kbp-quote{grid-row:2;width:100%!important;min-width:0!important;max-width:none!important;flex:none!important;margin:0!important;min-height:46px!important;padding:11px 8px!important;text-align:center;white-space:normal;font:600 14px/1.35 Arial,sans-serif!important;letter-spacing:0;box-shadow:none}
.kbp-purchase .single_add_to_cart_button{grid-column:1;background:#173b63!important;color:#fff!important;border:1px solid #173b63!important}
.kbp-purchase .single_add_to_cart_button:before{display:none!important}
.kbp-purchase .kbp-buy-now{grid-column:2;background:#fff!important;color:#173b63!important;border:1px solid #173b63!important}
.kbp-purchase form .kbp-quote{grid-column:3}
.kbp-primary{background:var(--kbp-quote-color,#e5292f)!important;border:1px solid var(--kbp-quote-color,#e5292f)!important;color:#fff!important}
.kbp-secondary{background:#fff!important;color:#173b63!important;border:1px solid #173b63!important}
.kbp-purchase .wd-buy-now-btn{display:none!important}
.kbp-purchase button:disabled{opacity:.6;cursor:not-allowed}
.kbp-page[data-kbp-editor="1"] .kbp-editor-form button:disabled{opacity:1}
.kbp-primary:hover{filter:brightness(.95)}.kbp-secondary:hover,.kbp-buy-now:hover{background:#edf3f8!important}
.kbp-disabled-button{display:block;padding:10px 12px;background:#edf1f5;color:#516375;font-size:13px;border-radius:6px;margin-bottom:10px}
/* Toolkit: native theme wishlist; the share control only ever shares the public product permalink. */
.kbp-product-tools{display:flex;align-items:center;justify-content:flex-start;gap:22px;flex-wrap:wrap;font:13px/1.4 Arial,sans-serif}
.kbp-native-wishlist .wd-action-btn>a{font-size:13px;min-height:36px}.kbp-native-wishlist .wd-wishlist-btn{margin:0}
.kbp-native-wishlist .kbp-editor-placeholder{font-size:12px;padding:8px}
.kbp-share{position:relative}.kbp-share summary{display:inline-flex;align-items:center;gap:7px;min-height:36px;color:#173b63;cursor:pointer;list-style:none;font-weight:500}
.kbp-share summary::-webkit-details-marker{display:none}
.kbp-share-menu{position:absolute;top:100%;right:0;z-index:30;min-width:210px;padding:8px;border:1px solid #dde5ee;border-radius:8px;background:#fff;box-shadow:0 8px 24px #142c461c}
.kbp-share-menu a,.kbp-share-menu button{display:block;width:100%;padding:10px!important;background:#fff!important;color:#173b63!important;border:0!important;border-radius:4px;text-align:left;font:13px/1.4 Arial,sans-serif!important;text-decoration:none;cursor:pointer}
.kbp-share-menu a:hover,.kbp-share-menu button:hover{background:#f0f5fa!important}.kbp-copy-status{font-size:12px;color:#425972;padding:0 10px}
.kbp-page[data-kbp-editor="1"] .kbp-native-wishlist a{pointer-events:none}
.kbp-contact-links{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}
.kbp-contact-links a{display:inline-flex;align-items:center;gap:7px;min-height:32px;text-decoration:none;font:14px/1.45 Arial,sans-serif;color:inherit}
.kbp-contact-links span{overflow-wrap:anywhere}.kbp-contact-editor-note{display:block;margin-top:6px;color:inherit;font-size:11px;opacity:.7}
.kbp-page .kbp-cta{color:#fff}.kbp-page .kbp-cta .kbp-contact-links a{color:#e5eef7}
/* Protected downloads; permission checks and decryption are NOT CSS logic. */
.kbp-document{display:flex;align-items:center;gap:12px;padding:14px 12px;margin-top:10px;background:#f2f6fa;border-radius:8px}
.kbp-file-icon{flex:0 0 36px;height:42px;display:flex;align-items:center;justify-content:center;background:#fff;color:#d62a32;font-size:11px;font-weight:700;border-radius:5px}
.kbp-file-info{min-width:0;flex:1}.kbp-file-info strong{display:block;font-size:14px}.kbp-file-info small{display:block;color:#67798c;font-size:12px;margin-top:3px}
.kbp-file-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:140px;font-size:13px}
.kbp-file-actions a{color:#173b63;font-weight:600;min-height:36px;display:inline-flex;align-items:center}
.kbp-document-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;font-size:13px}.kbp-documents>p{font-size:14px;line-height:1.5}
.kbp-video-play{display:block;padding:0!important;width:100%;aspect-ratio:16/9;position:relative;overflow:hidden;background:#173b63!important;border:0!important;border-radius:9px;cursor:pointer}
.kbp-video-play img{display:block;width:100%!important;height:100%!important;object-fit:cover}
.kbp-video-background{position:absolute;color:#fff;inset:20% 12%;text-align:left;font:700 26px/1.2 Arial,sans-serif}
.kbp-play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#173b63;border:2px solid #fff;border-radius:100%;padding:12px;color:#fff;width:58px;height:58px;display:flex;align-items:center;justify-content:center;font-size:22px}
.kbp-video iframe,.kbp-video video{width:100%;aspect-ratio:16/9;border:0;border-radius:9px;display:block}.kbp-video-note{font-size:12px;color:#66798c;padding-top:8px}
/* Reviews: up to six real reviews loaded initially, manual carousel, further approved reviews via read-only endpoint. */
.kbp-reviews{display:grid;grid-template-columns:minmax(150px,21%) minmax(0,1fr);gap:28px}
.kbp-review-main{min-width:0;container-type:inline-size;container-name:kbp-review-main}
.kbp-score{font-size:42px;line-height:1.1;display:block;color:#142c46}
.kbp-stars{display:inline-block;position:relative;font:26px/1.4 Arial,sans-serif;letter-spacing:2px;color:#dbe3ec;white-space:nowrap}
.kbp-stars-filled{position:absolute;left:0;top:0;overflow:hidden;color:#eea61b}
.kbp-review-summary p{color:#64748b;font-size:13px}.kbp-review-summary>a{display:inline-flex;min-height:40px;align-items:center;font-size:14px}
.kbp-review-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 16px)/2);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:8px;align-items:stretch}
.kbp-review-card,.kbp-review-empty{background:#f4f7fb;padding:20px;border-radius:8px;margin:0;min-width:0;scroll-snap-align:start;overflow-wrap:anywhere}
.kbp-review-content p,.kbp-review-empty p{font-size:15px;line-height:1.6}.kbp-review-empty h3{font-size:18px;margin:0 0 8px}
.kbp-review-author{display:flex;gap:10px;align-items:center}.kbp-review-author strong{font-size:14px}.kbp-review-author time{display:block;color:#6b7c8e;font-size:12px}
.kbp-review-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px;height:38px;background:#e4edf6;border-radius:50%;font-size:18px;color:#173b63}
.kbp-review-rating{color:#e6a01a;letter-spacing:2px;margin:10px 0}.kbp-verified{color:#45675c;font-size:12px}
.kbp-review-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.kbp-review-controls button{background:#fff;color:#173b63;border:1px solid #d3deea;min-height:36px;padding:6px 12px;border-radius:5px;cursor:pointer}
.kbp-review-prev,.kbp-review-next{font:22px/1 Arial,sans-serif}.kbp-review-more{font:600 13px/1.4 Arial,sans-serif;margin-left:auto}.kbp-review-status{font-size:12px;color:#64748b;width:100%}
.kbp-review-form{margin-top:20px}.kbp-review-form summary{cursor:pointer;font-weight:600;padding:14px;background:#edf3f8;border-radius:7px}
.kbp-review-form .comment-respond{max-width:750px;margin:20px 0 0}.kbp-review-form label{display:block;margin:8px 0 6px;font-size:14px}
.kbp-review-form input:not([type=submit]):not([type=hidden]),.kbp-review-form textarea,.kbp-review-form select{max-width:100%;width:100%;border:1px solid #ccd7e3;background:#fff;border-radius:5px;padding:10px;font:inherit}
.kbp-review-form input[type=submit]{background:#173b63;color:#fff;border:0;border-radius:6px;padding:12px 18px}
/* Native details elements: accessible, no JS necessary for the new FAQ. */
.kbp-faq-native{width:100%;display:flex;flex-direction:column;gap:10px}
.kbp-faq-entry{border:1px solid #e8eef5;border-radius:7px;background:#f5f8fc;overflow:hidden}
.kbp-faq-entry summary{list-style:none;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;cursor:pointer;color:#142c46;font:600 15px/1.5 Arial,sans-serif;min-height:54px}
.kbp-faq-entry summary::-webkit-details-marker{display:none}.kbp-faq-symbol{flex:0 0 18px;line-height:1.1;text-align:center;font-size:23px;font-weight:400}
.kbp-faq-symbol:after{content:'+'}.kbp-faq-entry[open] .kbp-faq-symbol:after{content:'−'}
.kbp-faq-answer-text{padding:0 18px 18px;color:#526174;font:15px/1.65 Arial,sans-serif}
/* Legacy FAQ remains functional when the previous template is temporarily active. */
.kbp-faq-toggle{display:flex;align-items:flex-start;justify-content:space-between;width:100%;gap:16px;min-height:28px;padding:0;margin:0;background:none!important;color:inherit!important;border:0!important;box-shadow:none!important;text-transform:none;font:inherit;text-align:left;cursor:pointer}
.kbp-faq-toggle:after{content:'+';font-size:24px;line-height:1}.kbp-faq-toggle[aria-expanded="true"]:after{content:'−'}
.kbp-page .kbp-faq-question{padding:15px 0}.kbp-page .kbp-faq-answer{padding:0 0 16px}
.kbp-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.kbp-related-card{background:#fff;border:1px solid #e9edf3;border-radius:8px;padding:14px;min-width:0}
.kbp-related-image{display:block;aspect-ratio:1}.kbp-related-image img{width:100%!important;height:100%!important;object-fit:contain}
.kbp-related-card h3{font-size:16px;line-height:1.4;margin:12px 0 10px}.kbp-related-card h3 a,.kbp-related-link{color:#173b63;text-decoration:none}.kbp-related-link{font-size:13px;font-weight:600}
.kbp-mobile-bar{display:none}
.kbp-page :is(button,a,summary):focus-visible{outline:3px solid #2a75ba;outline-offset:3px}
@container kbp-summary (max-width:470px){.kbp-page .kbp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container kbp-summary (min-width:710px){.kbp-page .kbp-trust:not([hidden]):not(.kbp-hidden){grid-template-columns:repeat(4,minmax(0,1fr))}}
@container kbp-purchase (max-width:430px){
 .kbp-purchase :is(form.cart:not(.variations_form):not(.grouped_form),.woocommerce-variation-add-to-cart){grid-template-columns:repeat(2,minmax(0,1fr))}
 .kbp-purchase .single_add_to_cart_button{grid-row:2;grid-column:1/-1}
 .kbp-purchase .kbp-buy-now{grid-row:3;grid-column:1}
 .kbp-purchase form .kbp-quote{grid-row:3;grid-column:2}
 .kbp-purchase .kbp-actions:not(.kbp-with-quote) .kbp-buy-now{grid-column:1/-1}
}
@container kbp-review-main (max-width:560px){.kbp-review-carousel{grid-auto-columns:100%}}
@media(max-width:1024px){
 .kbp-page .kbp-hero>.e-con-inner{grid-template-columns:minmax(0,1fr);gap:22px}
 .kbp-gallery{max-width:440px}.kbp-page .kbp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
 .kbp-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .kbp-review-carousel{grid-auto-columns:100%}
}
@media(max-width:767px){
 .kbp-gallery{max-width:350px}.kbp-thumb{flex-basis:58px;width:58px;height:58px}.kbp-thumbs{gap:8px}
 .kbp-page .kbp-price{font-size:28px}.kbp-reviews{grid-template-columns:1fr;gap:16px}
 .kbp-review-summary{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap}.kbp-score{font-size:32px}.kbp-review-summary p{width:100%;margin:0}.kbp-review-summary>a{padding:0}
 .kbp-file-actions{max-width:88px;gap:6px}.kbp-document{gap:8px;padding:12px 8px}.kbp-file-info strong{font-size:13px}
 .kbp-page .kbp-spec-row{padding:10px 8px}.kbp-page .kbp-trust-item .elementor-heading-title,.kbp-page .kbp-trust-item .elementor-widget-text-editor{font-size:12px}
 .kbp-page .kbp-trust:not([hidden]):not(.kbp-hidden){padding:12px 10px;gap:10px}
 .kbp-related-grid{gap:12px}.kbp-related-card{padding:10px}.kbp-related-card h3{font-size:14px}
 .kbp-faq-entry summary{padding:14px;font-size:14px}.kbp-faq-answer-text{padding:0 14px 14px;font-size:14px}
 .kbp-share-menu{right:auto;left:0}.kbp-contact-links{gap:8px 16px}.kbp-contact-links a{font-size:13px}
 .kbp-mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:999;display:flex;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -2px 16px #18355215;border-top:1px solid #e5eaf0}
 .kbp-mobile-bar a{flex:1;font-size:13px;padding:11px 8px}
 body.kbp-has-mobile-bar{padding-bottom:84px}body.kbp-has-mobile-bar .wd-toolbar{display:none!important}
 .kbp-page[data-kbp-editor="1"] .kbp-mobile-bar{position:static;box-shadow:none}
}
@media(prefers-reduced-motion:reduce){.kbp-page *{scroll-behavior:auto!important}}
/* Card grids are shared by all series. Content/field/icon choice stays in Elementor. */
.kbp-page .kbp-details-section{container-type:inline-size;container-name:kbp-details}
.kbp-page .kbp-apps-section{container-type:inline-size;container-name:kbp-apps}
.kbp-page .kbp-detail-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.kbp-page .kbp-application-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.kbp-page .kbp-detail-cards>.kbp-detail-card,.kbp-page .kbp-application-cards>.kbp-application-card{width:100%;min-width:0}
@container kbp-details (max-width:1100px){.kbp-page .kbp-detail-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container kbp-details (max-width:540px){.kbp-page .kbp-detail-cards{grid-template-columns:minmax(0,1fr)}}
@container kbp-apps (max-width:1000px){.kbp-page .kbp-application-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container kbp-apps (max-width:540px){.kbp-page .kbp-application-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.kbp-page .kbp-detail-cards{grid-template-columns:minmax(0,1fr)}.kbp-page .kbp-application-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

.kbp-purchase .single_add_to_cart_button,.kbp-purchase .kbp-buy-now,.kbp-purchase .kbp-quote{text-transform:none!important}
.kbp-purchase svg{flex:0 0 18px;max-width:18px}
.kbp-page .wd-compare-btn,.kbp-page .product-compare-button{display:none!important}
.kbp-purchase form .single_add_to_cart_button,.kbp-purchase form .kbp-buy-now,.kbp-purchase form .kbp-quote{align-self:stretch}

.kbp-mobile-bar .kbp-mobile-wishlist{flex:0 0 42px!important;padding:8px;min-width:42px}

/* 1.1.1 specifications: one editable list, balanced top-to-bottom into two desktop columns.
   Missing rows retain server-side hiding. No JavaScript moves Elementor elements or duplicates IDs. */
.kbp-page .kbp-spec-stack { flex-direction:column!important; align-items:stretch!important; gap:24px!important; }
.kbp-page .kbp-spec-stack>.kbp-spec-balanced { display:block!important; width:100%!important; max-width:none!important; column-count:2; column-gap:28px; column-fill:balance; }
.kbp-page .kbp-spec-balanced>.kbp-spec-row:not([hidden]):not(.kbp-hidden) { display:flex!important; break-inside:avoid; page-break-inside:avoid; width:100%!important; margin:0!important; min-height:39px; }
.kbp-page .kbp-spec-balanced .kbp-spec-label { width:54%!important; flex:0 1 54%!important; min-width:0; }
.kbp-page .kbp-spec-balanced .kbp-spec-value { width:auto!important; flex:1 1 0!important; min-width:0; }
.kbp-page .kbp-spec-stack>.kbp-dimension { width:100%!important; max-width:940px!important; margin:0 auto!important; align-self:center!important; }
.kbp-page .kbp-spec-stack>.kbp-dimension img { display:block; width:100%; height:auto!important; max-height:none; object-fit:contain; }
@media(max-width:1024px) {
 .kbp-page .kbp-spec-stack>.kbp-spec-balanced { column-count:1; }
 .kbp-page .kbp-spec-stack>.kbp-dimension { max-width:100%!important; }
}

/* 1.1.3 variable-product UX */
.kbp-purchase form.variations_form .woocommerce-variation-price{display:none!important}
.kbp-purchase .variations{margin:0 0 8px!important}
.kbp-purchase .variations td,.kbp-purchase .variations th{vertical-align:top!important}
.kbp-purchase .kbp-reset-row{display:flex;align-items:center;justify-content:flex-start;min-height:24px;margin:6px 0 10px;width:100%}
.kbp-purchase .kbp-reset-row .reset_variations{display:inline-flex!important;position:static!important;float:none!important;clear:both!important;width:auto!important;height:auto!important;margin:0!important;padding:3px 0!important;color:#64748b!important;font:500 12px/1.4 Arial,sans-serif!important;text-decoration:none!important;white-space:nowrap!important}
.kbp-purchase .kbp-reset-row .reset_variations:hover{color:#173b63!important;text-decoration:underline!important}
.kbp-purchase .single_variation{margin:0!important;min-height:0!important}
.kbp-purchase .woocommerce-variation-description:empty,.kbp-purchase .woocommerce-variation-availability:empty{display:none!important}
.kbp-purchase .variations :is(.variable-items-wrapper,.wd-swatches-product){max-width:100%;flex-wrap:wrap!important;gap:8px!important}
@container kbp-purchase (max-width:430px){
 .kbp-purchase .variations th,.kbp-purchase .variations td{display:block!important;width:100%!important;padding-left:0!important;padding-right:0!important}
 .kbp-purchase .variations th{padding-bottom:6px!important}
 .kbp-purchase .kbp-reset-row{margin-top:4px;margin-bottom:8px}
}


/* 1.1.5 Dimensions & Packaging: recognize new ACF fields and keep narrow layouts contained. */
.kbp-page .kbp-model-badge{width:max-content!important;max-width:100%;align-self:flex-start}
.kbp-page .kbp-dim-values{display:flex!important;flex-wrap:nowrap!important;width:100%!important}
.kbp-page .kbp-dim-values>.e-con{min-width:0!important}
.kbp-page .kbp-dimpack-section .kbp-value{min-width:0!important;max-width:100%!important}
.kbp-page .kbp-dimpack-section .kbp-value .elementor-heading-title{overflow-wrap:anywhere;word-break:normal}
.kbp-page .kbp-pack-row{min-width:0!important;width:100%!important}
.kbp-page .kbp-pack-row>.elementor-widget-text-editor,.kbp-page .kbp-pack-row>.elementor-widget-heading{min-width:0!important;max-width:100%!important}
@media(min-width:768px){
 .kbp-page .kbp-model-badge{margin-left:auto}
}
@media(max-width:767px){
 .kbp-page .kbp-dimpack-section{padding:20px 14px!important}
 .kbp-page .kbp-dim-values{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important}
 .kbp-page .kbp-dim-values>.e-con{width:100%!important;padding:12px 6px!important}
 .kbp-page .kbp-dim-values .kbp-value .elementor-heading-title{font-size:16px!important;line-height:1.25!important;white-space:normal!important}
 .kbp-page .kbp-pack-row{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:5px!important;padding:10px 8px!important}
 .kbp-page .kbp-pack-row .elementor-widget-heading{text-align:left!important;width:100%!important}
 .kbp-page .kbp-pack-row .elementor-heading-title{text-align:left!important;font-size:14px!important;line-height:1.35!important}
 .kbp-page .kbp-model-badge{margin-left:0!important}
}
@media(max-width:380px){
 .kbp-page .kbp-dim-values{grid-template-columns:1fr!important}
 .kbp-page .kbp-dim-values>.e-con{padding:10px!important}
}

/* 1.1.7 Packaging rows: definitive two-column desktop / stacked mobile fix. */
.kbp-page .kbp-dimpack-section .kbp-pack-row{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
.kbp-page .kbp-dimpack-section .kbp-pack-row>.elementor-widget-text-editor{
  flex:0 1 46%!important;
  width:46%!important;
  max-width:46%!important;
  min-width:0!important;
  margin:0!important;
}
.kbp-page .kbp-dimpack-section .kbp-pack-row>.elementor-widget-heading{
  flex:1 1 54%!important;
  width:54%!important;
  max-width:54%!important;
  min-width:0!important;
  margin:0!important;
  text-align:right!important;
}
.kbp-page .kbp-dimpack-section .kbp-pack-row>.elementor-widget-text-editor .elementor-widget-container,
.kbp-page .kbp-dimpack-section .kbp-pack-row>.elementor-widget-heading .elementor-widget-container{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.kbp-page .kbp-dimpack-section .kbp-pack-row>.elementor-widget-text-editor p{margin:0!important}
.kbp-page .kbp-dimpack-section .kbp-pack-row .elementor-heading-title{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  text-align:right!important;
}
@media(max-width:767px){
  .kbp-page .kbp-dimpack-section .kbp-pack-row{
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:4px!important;
  }
  .kbp-page .kbp-dimpack-section .kbp-pack-row>.elementor-widget-text-editor,
  .kbp-page .kbp-dimpack-section .kbp-pack-row>.elementor-widget-heading{
    flex:0 0 auto!important;
    width:100%!important;
    max-width:100%!important;
    text-align:left!important;
  }
  .kbp-page .kbp-dimpack-section .kbp-pack-row .elementor-heading-title{text-align:left!important}
}

/* 1.1.8: responsive Dimensions & Packaging and native WoodMart mobile navigation. */
.kbp-page .kbp-dimension-static img {cursor:default!important;display:block;width:100%;height:auto;object-fit:contain;}
.kbp-page .kbp-dimension-static .kbp-dimension-zoom {display:none!important;}
.kbp-page .kbp-pack-grid {
 display:grid!important;
 grid-template-columns:minmax(180px,31%) minmax(0,1fr)!important;
 align-items:center!important;
 gap:22px!important;
 width:100%!important;
 min-height:0!important;
 height:auto!important;
}
.kbp-page .kbp-pack-grid>.kbp-pack-photo,
.kbp-page .kbp-pack-grid>.kbp-pack-data {
 width:100%!important;min-width:0!important;min-height:0!important;
 height:auto!important;max-width:none!important;margin:0!important;
}
.kbp-page .kbp-pack-grid>.kbp-pack-photo {padding:12px 10px!important;}
.kbp-page .kbp-packaging-illustration {
 margin:0 auto!important;padding:0!important;
 width:100%;max-width:222px;
 display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
}
.kbp-page .kbp-packaging-illustration img {
 width:100%;height:auto!important;max-height:214px;object-fit:contain;
 display:block;border:0;border-radius:0;box-shadow:none;
}
.kbp-page .kbp-packaging-illustration figcaption {
 color:#64748b;font:400 11px/1.4 Arial,sans-serif;text-align:center;
}
.kbp-page .kbp-pack-grid>.kbp-pack-data{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;}
/* Each label and value fit within a single grid row without percentage+gap overflow. */
.kbp-page .kbp-pack-data .kbp-pack-row {
 display:grid!important;grid-template-columns:minmax(0,46%) minmax(0,1fr)!important;
 gap:12px!important;align-items:center!important;justify-content:normal!important;
 padding:10px 3px!important;margin:0!important;min-height:42px!important;
 width:100%!important;height:auto!important;max-width:100%!important;
}
.kbp-page .kbp-pack-data .kbp-pack-row>.elementor-widget-text-editor,
.kbp-page .kbp-pack-data .kbp-pack-row>.elementor-widget-heading{
 min-width:0!important;max-width:100%!important;width:100%!important;flex:none!important;
 height:auto!important;align-self:center!important;padding:0!important;margin:0!important;
}
.kbp-page .kbp-pack-data .kbp-pack-row>.elementor-widget-heading{text-align:right!important;}
.kbp-page .kbp-pack-data .kbp-pack-row .elementor-heading-title{text-align:right!important;}
/* Center only scenario captions; keep section heading as authored. */
.kbp-page .kbp-application-card>.elementor-widget-heading,
.kbp-page .kbp-application-card .kbp-application-title{
 width:100%!important;text-align:center!important;align-self:center!important;
}
.kbp-page .kbp-application-card .elementor-heading-title{text-align:center!important;}

/* On phones, native WooCommerce actions become comfortable full-width rows. */
@container kbp-purchase (max-width:520px){
 .kbp-purchase :is(form.cart:not(.variations_form):not(.grouped_form),.woocommerce-variation-add-to-cart){
  grid-template-columns:minmax(0,1fr)!important;gap:8px!important;
 }
 .kbp-purchase .single_add_to_cart_button,
 .kbp-purchase .kbp-buy-now,
 .kbp-purchase form .kbp-quote {
  grid-column:1/-1!important;grid-row:auto!important;
  width:100%!important;min-height:46px!important;
 }
 .kbp-purchase .quantity{grid-column:1/-1!important;grid-row:auto!important;margin-bottom:2px!important;}
}
@media(max-width:767px){
 .kbp-page .kbp-pack-grid{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
 .kbp-page .kbp-pack-grid>.kbp-pack-photo{padding:8px!important;}
 .kbp-page .kbp-packaging-illustration{max-width:200px;}
 .kbp-page .kbp-pack-data .kbp-pack-row{grid-template-columns:minmax(0,1fr)!important;gap:3px!important;padding:9px 1px!important;}
 .kbp-page .kbp-pack-data .kbp-pack-row>.elementor-widget-heading,
 .kbp-page .kbp-pack-data .kbp-pack-row .elementor-heading-title{text-align:left!important;}
 /* The 1.1.8 template deliberately does not include the old custom sticky CTA. */
}
/* Hidden optional fields must stay hidden even though the rows use !important grid. */
.kbp-page .kbp-pack-data .kbp-pack-row[hidden],
.kbp-page .kbp-pack-data .kbp-pack-row.kbp-hidden{display:none!important;}
.kbp-page{box-sizing:border-box;}
