/* Product navigation is deliberately independent of legacy theme link colors. */
.bb-product-nav {position:relative;z-index:10;background:var(--bb-surface);color:var(--bb-text);font-family:var(--bb-font);font-size:max(14px,var(--bb-small));line-height:var(--bb-line);padding:var(--bb-space-2) var(--bb-space-4);border-block-end:1px solid var(--bb-border);overflow-wrap:anywhere;}
.bb-product-nav *, .bb-product-nav *::before, .bb-product-nav *::after {box-sizing:border-box;}
.bb-product-nav summary {min-block-size:max(44px,var(--bb-target));padding:var(--bb-space-3);cursor:pointer;color:var(--bb-accent);font-weight:600;}
.bb-product-nav summary::marker {color:var(--bb-accent);}
.bb-product-nav .bb-products {display:grid;grid-template-columns:minmax(0,1fr);gap:var(--bb-space-3);max-inline-size:var(--bb-container);margin-inline:auto;padding-block:var(--bb-space-3);}
.bb-product-nav .bb-products>span {display:block;min-inline-size:0;padding:var(--bb-space-3);border:1px solid var(--bb-border);border-radius:var(--bb-radius);}
.bb-product-nav a {display:inline-flex;align-items:center;min-block-size:max(44px,var(--bb-target));max-inline-size:100%;padding:var(--bb-space-2);color:var(--bb-accent)!important;text-decoration:underline;text-underline-offset:0.2em;white-space:normal;}
.bb-product-nav a:hover {color:var(--bb-accent-hover)!important;}
.bb-product-nav [aria-current="page"] {font-weight:700;}
.bb-product-nav small {grid-column:1/-1;color:var(--bb-muted);font-size:max(14px,var(--bb-small));line-height:var(--bb-line);}
.bb-product-nav :focus-visible {outline:3px solid var(--bb-focus);outline-offset:2px;}
@media(min-width:48rem) {.bb-product-nav .bb-products {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(min-width:75rem) {.bb-product-nav .bb-products {grid-template-columns:repeat(4,minmax(0,1fr));}.bb-product-nav .bb-products>a {grid-column:1/-1;}}
/* Main foundation containment: retain all existing IDs, classes and handlers. */
.bb-main #master-head {position:relative;inset-block-start:auto;}
.bb-main #main-logo {min-width:0;max-width:100%;}
.bb-main #main-logo img {max-width:100%;height:auto;}
.bb-main #master-head .container {max-width:100%;}
.bb-main .call-btn {display:inline-block;max-inline-size:100%;overflow-wrap:anywhere;white-space:normal;}
/* Keep the existing News menu/JS hooks; its fixed wrapper must not cover the switcher. */
.bb-product-nav~#header .header-mobile-container .fixed-top {position:relative;}
/* Opt-in reference components; no generic Bootstrap class overrides. */
.bb-surface .bb-nav, .bb-surface .bb-actions, .bb-surface .bb-pagination {display:flex;align-items:center;flex-wrap:wrap;gap:var(--bb-space-3);}
.bb-surface .bb-nav {padding-block:var(--bb-space-3);border-block-end:1px solid var(--bb-border);}
.bb-surface .bb-nav a, .bb-surface .bb-pagination a {display:inline-flex;align-items:center;min-block-size:var(--bb-target);padding:var(--bb-space-2) var(--bb-space-3);}
.bb-surface .bb-nav [aria-current="page"], .bb-surface .bb-pagination [aria-current="page"] {font-weight:700;color:var(--bb-text);}
.bb-surface .bb-search {display:flex;flex-wrap:wrap;align-items:end;gap:var(--bb-space-3);}
.bb-surface .bb-search>div {flex:1 1 15rem;min-inline-size:0;}
.bb-surface .bb-card {display:flex;flex-direction:column;gap:var(--bb-space-3);min-inline-size:0;background:var(--bb-surface);padding:var(--bb-space-6);border:1px solid var(--bb-border);border-radius:var(--bb-radius);}
.bb-surface .bb-card h2, .bb-surface .bb-card p {margin:0;}
.bb-surface .bb-card .bb-actions {margin-block-start:auto;}
.bb-surface .bb-list {padding:0;list-style:none;}
.bb-surface .bb-list>li {padding-block:var(--bb-space-4);border-block-end:1px solid var(--bb-border);}
.bb-surface .bb-table-region {max-inline-size:100%;overflow:auto;border:1px solid var(--bb-border);}
.bb-surface table {inline-size:100%;border-collapse:collapse;background:var(--bb-surface);}
.bb-surface caption {text-align:start;padding:var(--bb-space-3);font-weight:600;}
.bb-surface th, .bb-surface td {text-align:start;padding:var(--bb-space-3);border-block-end:1px solid var(--bb-border);vertical-align:top;}
.bb-surface .bb-table-region table {min-inline-size:36rem;}
.bb-surface .bb-dialog {inline-size:min(var(--bb-dialog),calc(100% - 2rem));max-block-size:calc(100% - 2rem);overflow:auto;border:1px solid var(--bb-border);border-radius:var(--bb-radius);padding:var(--bb-space-6);background:var(--bb-surface);color:var(--bb-text);}
.bb-surface .bb-dialog::backdrop {background:rgb(23 35 59 / 55%);}
.bb-surface .bb-skeleton {min-block-size:8rem;background:var(--bb-canvas);border:1px dashed var(--bb-border);border-radius:var(--bb-radius);padding:var(--bb-space-4);}
.bb-surface [hidden] {display:none!important;}
