/* P28C2 – Exact 400px Sidebar Ratio Correction + Full Block Recheck
   Locked reference: 1280px container, 400px sidebar, 24px gap.
   Main column = remainder (856px at the full 1280px container). */
body.mbr-p28-reference-page{
    --p28-container:1280px;
    --p28-side:400px;
    --p28-gap:24px;
}
body.mbr-p28-reference-page .p28-container{
    width:min(1280px,calc(100% - 32px))!important;
    max-width:1280px!important;
    margin-inline:auto!important;
    box-sizing:border-box!important;
}
/* One ratio for EVERY desktop main/sidebar pair. */
body.mbr-p28-reference-page .p28-hero-grid,
body.mbr-p28-reference-page .p28-section-grid,
body.mbr-p28-reference-page .p28-pricing-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 400px!important;
    column-gap:24px!important;
    row-gap:16px!important;
    align-items:start!important;
}
/* Never allow old 318px rail or nested width rules to shrink the reference sidebar. */
body.mbr-p28-reference-page .p28-contact-card,
body.mbr-p28-reference-page .p28-quick,
body.mbr-p28-reference-page #p28-pickup{
    width:400px!important;
    max-width:400px!important;
    min-width:0!important;
    justify-self:stretch!important;
    box-sizing:border-box!important;
}
/* Main column always owns the remainder and may shrink safely. */
body.mbr-p28-reference-page .p28-hero-main,
body.mbr-p28-reference-page .p28-section-grid > :first-child,
body.mbr-p28-reference-page .p28-pricing-grid > :first-child{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
}
/* Recheck block internals after widening the sidebar. */
body.mbr-p28-reference-page .p28-contact-card,
body.mbr-p28-reference-page .p28-quick,
body.mbr-p28-reference-page #p28-pickup{
    overflow:hidden!important;
}
body.mbr-p28-reference-page .p28-contact-head,
body.mbr-p28-reference-page .p28-contact-facts,
body.mbr-p28-reference-page .p28-contact-facts > div,
body.mbr-p28-reference-page .p28-quick-row,
body.mbr-p28-reference-page #p28-pickup li{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
}
body.mbr-p28-reference-page .p28-contact-head h2,
body.mbr-p28-reference-page .p28-contact-facts strong,
body.mbr-p28-reference-page .p28-contact-facts span,
body.mbr-p28-reference-page .p28-quick-row strong,
body.mbr-p28-reference-page .p28-quick-row span,
body.mbr-p28-reference-page #p28-pickup li{
    overflow-wrap:anywhere!important;
    word-break:normal!important;
}
/* Main content/table/media regression protection. */
body.mbr-p28-reference-page .p28-description,
body.mbr-p28-reference-page .p28-description *,
body.mbr-p28-reference-page .p28-summary-top,
body.mbr-p28-reference-page .p28-facts,
body.mbr-p28-reference-page .p28-route-overlay,
body.mbr-p28-reference-page .p28-service-fields,
body.mbr-p28-reference-page .p28-related-grid{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
}
body.mbr-p28-reference-page .p28-description img,
body.mbr-p28-reference-page .p28-description iframe,
body.mbr-p28-reference-page .p28-description video,
body.mbr-p28-reference-page .p28-description table{
    max-width:100%!important;
}
body.mbr-p28-reference-page .p28-table-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
}
/* The reference sidebar is desktop-only. Collapse before the 400px rail becomes cramped. */
@media(max-width:1024px){
    body.mbr-p28-reference-page .p28-container{
        width:calc(100% - 24px)!important;
        max-width:none!important;
    }
    body.mbr-p28-reference-page .p28-hero-grid,
    body.mbr-p28-reference-page .p28-section-grid,
    body.mbr-p28-reference-page .p28-pricing-grid{
        grid-template-columns:minmax(0,1fr)!important;
        gap:16px!important;
    }
    body.mbr-p28-reference-page .p28-contact-card,
    body.mbr-p28-reference-page .p28-quick,
    body.mbr-p28-reference-page #p28-pickup{
        width:100%!important;
        max-width:100%!important;
        position:static!important;
        top:auto!important;
        overflow:visible!important;
    }
}
@media(max-width:639.98px){
    body.mbr-p28-reference-page .p28-container{width:calc(100% - 18px)!important}
    body.mbr-p28-reference-page .p28-hero-grid,
    body.mbr-p28-reference-page .p28-section-grid,
    body.mbr-p28-reference-page .p28-pricing-grid{gap:12px!important}
}
