/* Development-wide outer grid. Blocksy remains the source of width and gutters. */
body.kbbd-site-grid{
 --kbb-grid-width:min(var(--theme-container-width-base,90vw),var(--theme-normal-container-max-width,1490px));
 --kbb-grid-gutter:calc((100vw - var(--kbb-grid-width))/2);
}
.kbbd-site-grid #header [data-row]>.ct-container,
.kbbd-site-grid .ct-footer .ct-container{
 width:var(--theme-container-width)!important;
 max-width:var(--theme-normal-container-max-width)!important;
}
.kbbd-site-grid #header [data-device="mobile"] .site-branding{margin-left:0!important}
.kbbd-site-grid :is(.kbbd-wrap,.woocommerce-breadcrumb,.kbb-news-shell,
 .kbb-contact-container,.kbb-contact-methods-inner,
 .kbb-about-inside-inner,.kbb-about-benefits-inner,.kbb-trade-application-inner,
 .kbb-faq26-inner,.kbb-hiw-stage-list,.kbb-hiw-access-grid,.kbb-hiw-support-grid,
 .kbb-mp-hierarchy__inner,.kbb-mp-explorer__inner,.kbb-mp-benefits__inner,.kbb-mp-doors__inner,
 .kbb-capacity__inner){
 width:var(--theme-container-width)!important;
 max-width:var(--theme-normal-container-max-width)!important;
 margin-inline:auto;
 box-sizing:border-box;
}
/* Remove extra outer insets; cards/forms keep their own internal padding. */
.kbbd-site-grid :is(.kbb-contact-form-section,.kbb-about-inside,.kbb-about-benefits,
 .kbb-trade-application,.kbb-faq26-main,.kbb-hiw-journey,.kbb-hiw-access,.kbb-hiw-support,
 .kbb-mp-explorer,.kbb-mp-benefits,.kbb-mp-doors,.kbb-capacity){padding-inline:0!important}
.kbbd-site-grid .entry-content>.kb-row-layout-wrap:not(:is(.kbb-contact-hero,.kbb-contact-location,
 .kbb-about-hero,.kbb-about-process,.kbb-trade-hero,.kbb-trade-intro,.kbb-faq26-hero,
 .kbb-hiw-hero,.kbb-hiw-manufacturing))>.kt-row-column-wrap,
.kbbd-site-grid .kbb-footer-cta .kt-row-column-wrap{
 width:var(--theme-container-width)!important;
 max-width:var(--theme-normal-container-max-width)!important;
 margin-inline:auto!important;
 padding-inline:0!important;
}
/* These legacy split panels use viewport-wide outer rows. */
.kbbd-site-grid :is(.kbb-contact-hero,.kbb-contact-location,.kbb-about-hero,.kbb-about-process,
 .kbb-trade-hero,.kbb-trade-intro,.kbb-faq26-hero,.kbb-hiw-hero,.kbb-hiw-manufacturing){
 width:100vw!important;max-width:100vw!important;margin-inline:calc(50% - 50vw)!important;
}
.kbbd-site-grid .kbb-category-hero__copy,
.kbbd-site-grid :is(.kbb-contact-hero-copy,.kbb-about-hero-copy,.kbb-about-process-copy,
 .kbb-trade-hero-copy,.kbb-trade-intro-copy,.kbb-faq26-hero-copy,.kbb-hiw-hero-copy)>.kt-inside-inner-col{padding-left:var(--kbb-grid-gutter)!important}
/* More Products is already inside the theme container. */
.kbbd-site-grid .kbb-mp-hero__copy{padding-left:0!important}
.kbbd-site-grid :is(.kbb-contact-location-copy,.kbb-hiw-manufacturing-copy)>.kt-inside-inner-col{
 padding-right:var(--kbb-grid-gutter)!important;
}
.kbbd-site-grid .kbb-contact-hero-card{right:var(--kbb-grid-gutter)}
.kbbd-site-grid .kbb-mp-hierarchy__item:first-child{padding-left:0}
.kbbd-site-grid .kbb-mp-hierarchy__item:last-child{padding-right:0}
@media(max-width:999px){
 .kbbd-site-grid .kbb-category-hero__copy{padding-inline:var(--kbb-grid-gutter)!important}
 .kbbd-site-grid :is(.kbb-contact-hero-copy,.kbb-about-hero-copy,.kbb-about-process-copy,
 .kbb-trade-hero-copy,.kbb-trade-intro-copy,.kbb-faq26-hero-copy,.kbb-hiw-hero-copy,
 .kbb-contact-location-copy,.kbb-hiw-manufacturing-copy)>.kt-inside-inner-col{padding-inline:var(--kbb-grid-gutter)!important}
 .kbbd-site-grid .kbb-mp-hero__copy{padding-inline:0!important}
}

/* Category copy follows the content grid, so wide-screen gutters cannot squeeze titles. */
.kbbd-site-grid .kbb-category-hero h1{overflow-wrap:normal;word-break:normal}
@media(min-width:1000px){
 .kbbd-site-grid .kbb-category-hero{grid-template-columns:calc(var(--kbb-grid-gutter) + var(--kbb-grid-width)*.43) minmax(0,1fr)}
}
@media(min-width:768px) and (max-width:999px){
 .kbbd-site-grid .kbb-category-hero{grid-template-columns:calc(var(--kbb-grid-gutter) + var(--kbb-grid-width)*.5) minmax(0,1fr)}
}

/* Full-bleed homepage photography with copy and badges on the shared grid. */
.kbbd-site-grid .kbbh-hero,.kbbd-site-grid .kbbh-support{
 display:grid;
 grid-template-columns:minmax(0,1fr) minmax(0,calc(var(--kbb-grid-width)*.43)) minmax(0,calc(var(--kbb-grid-width)*.57)) minmax(0,1fr);
}
.kbbd-site-grid .kbbh-hero-copy{grid-column:2;grid-row:1;padding-left:0;--home-gutter:0px;min-width:0}
.kbbd-site-grid .kbbh-hero-photo{grid-column:3/5;grid-row:1}
.kbbd-site-grid .kbbh-origin{position:relative;grid-column:3;grid-row:1;justify-self:end;align-self:end;right:auto;bottom:auto;margin-bottom:28px;z-index:1}
.kbbd-site-grid .kbbh-hero-copy::after{left:14px}
.kbbd-site-grid .kbbh-hero-copy::before{left:0}
.kbbd-site-grid .kbbh-support{grid-template-columns:minmax(0,1fr) minmax(0,calc(var(--kbb-grid-width)*.51)) minmax(0,calc(var(--kbb-grid-width)*.49)) minmax(0,1fr)}
.kbbd-site-grid .kbbh-support>figure{grid-column:1/3;grid-row:1}
.kbbd-site-grid .kbbh-support-copy{grid-column:3;grid-row:1;padding-right:0;min-width:0}
@media(max-width:980px) and (min-width:761px){
 .kbbd-site-grid .kbbh-hero{grid-template-columns:minmax(0,1fr) repeat(2,minmax(0,calc(var(--kbb-grid-width)*.5))) minmax(0,1fr)}
}
@media(max-width:760px){
 .kbbd-site-grid .kbbh-hero,.kbbd-site-grid .kbbh-support{grid-template-columns:minmax(0,1fr) var(--kbb-grid-width) minmax(0,1fr)}
 .kbbd-site-grid .kbbh-hero-copy{grid-column:2;grid-row:1;padding-inline:0}
 .kbbd-site-grid .kbbh-hero-photo{grid-column:1/-1;grid-row:2}
 .kbbd-site-grid .kbbh-origin{grid-column:2;grid-row:2;margin-bottom:20px}
 .kbbd-site-grid .kbbh-support>figure{grid-column:1/-1;grid-row:1}
 .kbbd-site-grid .kbbh-support-copy{grid-column:2;grid-row:2;padding-inline:0}
 .kbbd-site-grid .kbbh-capacity .kbbd-wrap>div{padding-inline:0}
}

/* Packing now has its own quieter composition within the same container. */
.kbbd-site-grid .kbbh-packing{display:block;background:var(--warm);margin:0;padding:64px 0}
.kbbh-packing-inner{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:64px;align-items:center}
.kbbd-site-grid .kbbh-packing-copy{padding:0;min-width:0}
.kbbd-site-grid .kbbh-packing h2{color:var(--blue);max-width:520px}
.kbbd-site-grid .kbbh-packing .kbbh-packing-note{border:0;padding:0;font-size:17px;line-height:1.65;color:var(--muted);max-width:470px;margin:0}
.kbbd-site-grid .kbbh-checklist{margin:28px 0}
.kbbd-site-grid .kbbh-checklist li{gap:15px;align-items:start;margin:0;padding:20px 0;border-top:1px solid var(--line)}
.kbbd-site-grid .kbbh-checklist li::before{margin-top:1px;color:var(--blue);border-color:var(--blue)}
.kbbh-checklist strong{display:block;color:var(--blue);font-size:17px;line-height:1.5;margin-bottom:5px}
.kbbh-checklist li span{display:block;color:var(--muted);font-size:15px;font-weight:400;line-height:1.6}
.kbbd-site-grid .kbbh-packing-toggle{border-color:var(--blue);color:var(--blue);margin:0}
.kbbd-site-grid .kbbh-packing-toggle:hover{background:var(--blue);color:#fff}
.kbbd-site-grid .kbbh-packing-toggle:focus-visible{outline-color:var(--blue)}
.kbbd-site-grid .kbbh-packing-inner>figure{display:block;width:100%;align-self:center}
.kbbd-site-grid .kbbh-packing figcaption{background:transparent;text-align:right;padding:10px 0 0;font-size:11px;line-height:1.5}
@media(max-width:1100px){.kbbh-packing-inner{gap:36px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}}
@media(max-width:900px){
 .kbbd-site-grid .kbbh-packing{padding:40px 0}
 .kbbh-packing-inner{grid-template-columns:1fr;gap:30px}
 .kbbd-site-grid .kbbh-packing .kbbh-packing-note{max-width:560px;font-size:16px}
 .kbbd-site-grid .kbbh-checklist{margin:24px 0 10px}
 .kbbh-checklist strong{font-size:16px}.kbbh-checklist li span{font-size:14px}
 .kbbd-site-grid .kbbh-packing figcaption{text-align:left}
}
