/* Company chrome, scoped to this draft so the shared legacy CSS stays untouched. */
.b2-visually-hidden { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.b2-company-header { position:relative; z-index:20; background:#fff; color:#333; }
.b2-company-sos { background:#ff7a00; color:#fff; text-align:center; font-size:14px; font-weight:700; padding:8px 16px; }
.b2-company-sos a { display:flex; justify-content:center; align-items:center; gap:10px; }
.b2-company-sos a:hover { color:#fff; text-decoration:underline; }
.b2-company-mobile { display:none; }
.b2-company-top { background:#3583c1; color:#fff; font-size:12px; }
.b2-company-top>.b2-wrap { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-block:8px; }
.b2-company-tagline,.b2-company-top>.b2-wrap>div { display:flex; align-items:center; gap:20px; }
.b2-company-tagline { gap:10px; }
.b2-company-tagline img { object-fit:contain; }
.b2-company-top a:hover { color:#fff; text-decoration:underline; }
.b2-company-main { display:grid; grid-template-columns:minmax(220px,300px) minmax(180px,1fr) auto; gap:44px; align-items:center; padding-block:26px; }
.b2-company-logo img { width:300px; height:auto; }
.b2-company-search { position:relative; display:flex; align-items:center; min-width:0; }
.b2-company-search input { width:100%; min-width:0; min-height:44px; padding:10px 42px 10px 14px; border:1px solid #d0d0d0; border-radius:4px; font-size:14px; }
.b2-company-search>button { position:absolute; right:4px; top:2px; width:38px; height:40px; border:0; background:transparent; font-size:27px; cursor:pointer; color:#555; }
#b2-company-results { position:absolute; top:calc(100% + 4px); left:0; right:0; max-height:360px; overflow-y:auto; background:#fff; border:1px solid #ddd; box-shadow:0 8px 24px #0002; z-index:40; font-size:14px; }
#b2-company-results a,#b2-company-results p { display:block; padding:10px 14px; margin:0; border-bottom:1px solid #eee; }
#b2-company-results a:hover,#b2-company-results a:focus { background:#eaf4fb; color:#165c90; }
.b2-company-contact { display:flex; flex-direction:column; text-align:right; font-size:17px; line-height:1.8; }
.b2-company-navigation { background:#f4f4f4; border-block:1px solid #e5e5e5; }
.b2-company-menu { display:flex; align-items:center; gap:30px; position:relative; }
.b2-company-menu-group { padding-block:14px; }
.b2-company-menu-group>summary { cursor:pointer; font-size:14px; font-weight:700; color:#2184d2; list-style:none; }
.b2-company-menu-group>summary::after { content:'⌄'; margin-left:8px; }
.b2-company-menu-group[open]>summary { color:#124f7f; }
.b2-company-menu-group[open]>.mega-dropdown { display:grid; grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); gap:20px; position:absolute; top:100%; left:0; right:0; max-height:65vh; overflow:auto; overscroll-behavior:contain; background:#fff; padding:26px; border:1px solid #ddd; box-shadow:0 12px 25px #0002; z-index:30; }
.b2-company-menu .mega-submenu { padding:0; margin:0; min-width:0; font-size:12px; list-style:none; }
.b2-company-menu .mega-submenu>li { list-style:none; margin:5px 0; }
.b2-company-menu .mega-submenu a { color:#2779b2; }
.b2-company-menu .mega-submenu a:hover { text-decoration:underline; }
.b2-company-menu .mega-submenu h5,.b2-company-menu .mega-submenu h9 { display:block; font-size:14px; letter-spacing:0; font-weight:700; color:#333; margin:0 0 8px; }
.b2-company-menu .mega-submenu img { width:min(100%,150px); height:auto; }
.b2-company-menu .bestseller-tag,.b2-company-menu .newproduct-tag { display:inline-block; font-size:8px; background:#e28500; color:#fff; padding:1px 4px; border-radius:3px; margin-left:4px; }
.b2-company-menu .newproduct-tag { background:#007bff; }
.b2-company-mobile-menu { display:none; }
.b2-company-footer { background:#f8f8f8; color:#686867; }
.b2-company-customers { text-align:center; padding-block:40px; }
.b2-company-customers h2 { font-size:21px; font-weight:600; color:#333; letter-spacing:0; }
.b2-company-customers img { margin:auto; width:auto; max-width:100%; height:auto; }
.b2-company-footer #Subscribe { background:transparent!important; }
.b2-company-footer .newsletter-signup { background:#0088cc; color:#fff; display:flex; justify-content:center; align-items:center; gap:28px; padding:24px 32px; }
.b2-company-footer .newsletter-copy { display:flex; align-items:center; gap:18px; min-width:0; }
.b2-company-footer .newsletter-copy img { width:64px; height:64px; object-fit:contain; flex-shrink:0; }
.b2-company-footer .newsletter-copy p { font-size:14px; margin:0; }
.b2-company-footer .newsletter-copy strong { font-size:16px; }
.b2-company-footer .newsletter-form { width:min(100%,480px); }
.b2-company-footer .newsletter-form form { display:flex; gap:10px; }
.b2-company-footer .newsletter-form input { flex:1; min-width:0; border:1px solid #eee; border-radius:4px; min-height:44px; padding:10px 14px; }
.b2-company-footer .newsletter-form button { border:0; border-radius:4px; background:#225d8b; color:#fff; padding:10px 20px; cursor:pointer; min-height:44px; }
.b2-company-footer .footer-top { width:min(1320px,calc(100% - 64px)); margin:auto; padding-block:40px; }
.b2-company-footer .row-custom { display:grid; grid-template-columns:minmax(180px,1.3fr) repeat(4,minmax(0,1fr)); gap:30px; }
.b2-company-footer .row-custom>div { width:auto; min-width:0; }
.b2-company-footer .style5 { font-size:16px; color:#333; font-weight:700; }
.b2-company-footer .widget-body { list-style:none; padding:0; margin:12px 0 0; font-size:13px; }
.b2-company-footer .widget-body li { margin:7px 0; }
.b2-company-footer .logo-footer { max-width:230px!important; width:100%; margin-bottom:20px; }
.b2-company-footer .img-responsive { max-width:70px!important; }
.b2-company-copyright { border-top:1px solid #e4e4e4; text-align:center; font-size:12px; padding:24px 16px; }
@media (max-width:1100px) { .b2-company-main { gap:24px; grid-template-columns:minmax(200px,270px) minmax(180px,1fr); } .b2-company-contact { grid-column:1/-1; flex-direction:row; justify-content:space-between; font-size:15px; } }
@media (max-width:900px) { .b2-company-footer .row-custom { grid-template-columns:repeat(2,minmax(0,1fr)); } .b2-company-footer .newsletter-signup { flex-direction:column; align-items:stretch; } .b2-company-footer .newsletter-form { width:100%; } }
@media (max-width:767px) {
    .b2-company-main { grid-template-columns:minmax(0,1fr); gap:16px; padding-block:18px; }
    .b2-company-logo img { width:min(300px,100%); margin-inline:auto; }
    .b2-company-top { font-size:11px; }
    .b2-company-top>.b2-wrap { justify-content:center; }
    .b2-company-tagline { display:none; }
    .b2-company-contact { font-size:12px; flex-wrap:wrap; justify-content:center; gap:0 16px; }
    .b2-company-mobile-menu { display:block; padding:12px 16px; color:#2184d2; font-weight:700; }
    .b2-company-mobile-menu summary { cursor:pointer; }
    .b2-company-menu { display:none; flex-direction:column; align-items:stretch; gap:0; }
    .b2-company-navigation:has(.b2-company-mobile-menu[open]) .b2-company-menu { display:flex; }
    .b2-company-menu-group { padding-block:12px; border-top:1px solid #ddd; }
    .b2-company-menu-group[open]>.mega-dropdown { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:14px; padding:18px 12px; gap:20px 12px; max-height:65dvh; box-shadow:none; }
    .b2-company-menu .mega-submenu { font-size:12px; }
    .b2-company-menu .mega-submenu a { display:inline-block; padding-block:5px; }
}
@media (max-width:640px) {
    .b2-company-desktop { display:none; }
    .b2-company-mobile { display:inline; }
    .b2-company-sos { font-size:12px; }
    .b2-company-footer .footer-top { width:calc(100% - 32px); }
    .b2-company-customers { padding-block:30px; }
    .b2-company-footer .newsletter-signup { padding:22px 16px; }
    .b2-company-footer .newsletter-copy { gap:12px; }
    .b2-company-footer .newsletter-copy strong { font-size:13px; }
    .b2-company-footer .newsletter-copy p { font-size:12px; }
    .b2-company-footer .newsletter-copy img { width:46px; height:46px; }
    .b2-company-footer .newsletter-form form { flex-wrap:wrap; }
    .b2-company-footer .newsletter-form input { flex-basis:180px; }
    .b2-company-footer .row-custom>div:first-child { grid-column:1/-1; }
}

/* Restore the company's complete horizontal menu and its hover dropdowns. */
.b2-company-navigation { background:whitesmoke; box-shadow:0 2px 7px #0005; }
.b2-company-menu { justify-content:center; gap:0; min-height:70px; }
.b2-company-menu .main-menu { display:flex; align-items:stretch; justify-content:center; width:100%; padding:0; margin:0; list-style:none; }
.b2-company-menu .main-menu>li { list-style:none; }
.b2-company-menu .main-menu>li>a { display:flex; align-items:center; justify-content:center; min-height:70px; padding:0 14px; color:#2184d2; font-size:15px; font-weight:500; white-space:nowrap; }
.b2-company-menu .main-menu>li:hover,.b2-company-menu .main-menu>li.is-open { background:#8bbee7; }
.b2-company-menu .main-menu>li>.mega-dropdown { display:none; position:absolute; top:100%; left:0; right:0; padding:20px; background:whitesmoke; box-shadow:0 4px 7px #0003; border-radius:0 0 10px 10px; z-index:30; max-height:70vh; overflow:auto; }
.b2-company-menu .main-menu>li.is-open>.mega-dropdown,.b2-company-menu .main-menu>li:focus-within>.mega-dropdown { display:flex; gap:16px; }
.b2-company-menu .mega-submenu { flex:1; min-width:0; }
.b2-company-menu .mega-submenu:not(:first-child) { border-left:1px solid #81aed380; padding-left:16px; }
.b2-company-menu .mega-submenu h5 { color:steelblue; }
@media (hover:hover) and (pointer:fine) { .b2-company-menu .main-menu>li:hover>.mega-dropdown { display:flex; gap:16px; } }
@media (min-width:768px) and (max-width:1200px) { .b2-company-menu .main-menu>li>a { font-size:12px; padding-inline:8px; } }
@media (max-width:767px) {
    .b2-company-menu { min-height:0; }
    .b2-company-menu .main-menu { flex-direction:column; }
    .b2-company-menu .main-menu>li>a { min-height:44px; padding:10px; justify-content:space-between; }
    .b2-company-menu .main-menu>li>.mega-dropdown { position:static; }
    .b2-company-menu .main-menu>li.is-open>.mega-dropdown,.b2-company-menu .main-menu>li:focus-within>.mega-dropdown { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
    .b2-company-menu .mega-submenu:not(:first-child) { border:0; padding-left:0; }
}
