/* BrightNet site styles, Phase 1 refresh (Nov 2026).
   Direction agreed with Kelvin: navy + the logo's red, calm and corporate (networking-solutions company), small square corners,
   no glow / pills / gradients, WhatsApp in brand colours. Headings: IBM Plex Sans; body text stays Open Sans.
   Served as a file by the Code Snippets snippet "BrightNet: site styles". Source: _source/redesign/site.css */
:root {
  --bn-navy: #0f1e33; --bn-navy-2: #1b2d4a; --bn-red: #d71f27; --bn-red-d: #b3171e;
  --bn-ink: #111827; --bn-text: #4b5563; --bn-muted: #6b7280; --bn-line: #e3e6eb; --bn-soft: #f5f6f8; --bn-r: 4px;
  --bn-head: "IBM Plex Sans", "Open Sans", Arial, sans-serif;
}

/* ---------- type ---------- */
h1, h2, h3, h4, h5, h6, .elementor-heading-title { font-family: var(--bn-head) !important; font-style: normal !important; letter-spacing: -0.005em; }

/* ---------- header ---------- */
.header-top { background: var(--bn-navy) !important; }
#navmenu > ul > li > a { font-family: var(--bn-head) !important; font-weight: 500 !important; font-size: 15px !important; color: var(--bn-ink) !important; }
#navmenu > ul > li > a:hover { color: var(--bn-red) !important; }
.cart-contents, .intech-mini-cart-items, .header-cart, li.intech-mini-cart { display: none !important; }
#navmenu > ul > li.bn-menu-quote { display: block !important; float: left; margin: -11px 0 -11px 16px; }
#navmenu > ul > li.bn-menu-quote > a, ul#main-menu > li.bn-menu-quote > a { display: inline-flex !important; align-items: center; gap: 8px; height: auto !important; line-height: 1 !important; padding: 11px 16px !important; border-radius: var(--bn-r); background: var(--bn-red); color: #fff !important; font-weight: 600 !important; }
#navmenu > ul > li.bn-menu-quote > a:hover { background: var(--bn-red-d); color: #fff !important; }
.bn-qcount { display: inline-block; min-width: 20px; padding: 3px 6px; border-radius: 3px; background: #fff; color: var(--bn-red); font-size: 12px; font-weight: 700; text-align: center; }
.bn-qcount[hidden] { display: none; }
@media (min-width: 992px) {
  .site-header { position: sticky; top: -47px; z-index: 990; background: #fff; border-bottom: 1px solid var(--bn-line); }
}
.bn-howto { background: var(--bn-soft); border-bottom: 1px solid var(--bn-line); color: var(--bn-ink); font-size: 14px; line-height: 1.5; text-align: center; padding: 10px 16px; }
.bn-howto a { color: var(--bn-red); font-weight: 600; }

/* ---------- icons + buttons ---------- */
.bn-ico { width: 18px; height: 18px; fill: currentColor; flex: none; }
.bn-btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 13px 20px; border-radius: var(--bn-r); border: 1px solid transparent; font: 600 15px/1.2 var(--bn-head); text-decoration: none !important; transition: background .15s, border-color .15s, color .15s; cursor: pointer; }
.bn-btn-primary { background: var(--bn-red); color: #fff !important; }
.bn-btn-primary:hover { background: var(--bn-red-d); }
.bn-btn-ghost { background: #fff; color: var(--bn-navy) !important; border-color: #c9ced6; }
.bn-btn-ghost:hover { border-color: var(--bn-navy); }
.bn-btn-light { background: transparent; color: #fff !important; border-color: rgba(255,255,255,.7); }
.bn-btn-light:hover { background: rgba(255,255,255,.1); border-color: #fff; }
.elementor-button { background: var(--bn-navy) !important; border-radius: var(--bn-r) !important; font-family: var(--bn-head) !important; font-weight: 600 !important; }
.elementor-button:hover { background: var(--bn-navy-2) !important; }

/* ---------- homepage ---------- */
.intech-slider-table-call { background: rgba(15,30,51,.55); }
.intech-slide-content h1, .intech-slide-content h2 { line-height: 1.12 !important; font-weight: 600 !important; }
.bn-hero-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.service-box { border-radius: 6px !important; border: 1px solid var(--bn-line); box-shadow: none !important; transition: border-color .2s; }
.service-box:hover { border-color: #b8c0cc; box-shadow: none !important; transform: none !important; }

/* ---------- product grid (shop, categories, search, related) ---------- */
.intech-product-item { position: relative; height: 100%; border: 1px solid var(--bn-line); border-radius: 6px; background: #fff; overflow: hidden; transition: border-color .15s; }
.intech-product-item:hover { border-color: #b8c0cc; }
.intech-product-item .intech-product-bg { position: static !important; height: auto !important; aspect-ratio: 1 / 1; background-size: contain !important; background-repeat: no-repeat !important; background-position: center !important; background-color: #fff; border-bottom: 1px solid var(--bn-line); }
.intech-product-item .intech-product-bg::before, .intech-product-item .intech-product-bg::after { display: none !important; }
.intech-product-item .intech-pro-item-bottom { padding: 12px 14px 64px !important; }
.intech-product-item .intech-pro-item-title a::after { content: ""; position: absolute; inset: 0; z-index: 2; }
.intech-product-item .woocommerce-loop-product__title { font-family: var(--bn-head) !important; font-size: 14px !important; line-height: 1.4 !important; font-weight: 600 !important; color: var(--bn-ink) !important; text-align: left !important; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; min-height: 5.6em; margin: 0 !important; }
/* bottom action row: "Add to quote" (becomes a quantity box once added) */
.intech-product-item .intech-pro-item-btns { position: absolute !important; left: 12px !important; right: 12px !important; bottom: 12px !important; top: auto !important; width: auto !important; height: auto !important; opacity: 1 !important; visibility: visible !important; transform: none !important; background: none !important; z-index: 3; }
.intech-product-item .intech-pro-ibtn, .intech-product-item .intech-pro-addtocart { position: static !important; display: block !important; width: 100% !important; height: auto !important; opacity: 1 !important; visibility: visible !important; transform: none !important; margin: 0 !important; padding: 0 !important; background: none !important; }
.intech-product-item .intech-pro-compare, .intech-product-item .intech-pro-item-wishlist, .single-product .summary .yith-wcwl-add-to-wishlist { display: none !important; }
.eael-product-grid .woocommerce ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 18px !important; }
.eael-product-grid .woocommerce ul.products li.product { margin: 0 !important; width: auto !important; }
@media (max-width: 767px) {
  .eael-product-grid .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
  .intech-product-item .woocommerce-loop-product__title { font-size: 13px !important; }
  .intech-pro-item-wishlist .yith-wcwl-add-to-wishlist a { font-size: 12.5px !important; padding: 0 6px !important; }
}

/* ---------- product search box ---------- */
.woocommerce-product-search { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 24px; }
.woocommerce-product-search .search-field { flex: 1 1 100%; min-width: 0; height: 44px; padding: 0 14px; border: 1px solid #c9ced6; border-radius: var(--bn-r); background: #fff; font-size: 15px; }
.woocommerce-product-search .search-field:focus { outline: none; border-color: var(--bn-navy); box-shadow: 0 0 0 2px rgba(15,30,51,.12); }
.woocommerce-product-search button { flex: 1 1 100%; height: 44px; padding: 0 16px; border: 0; border-radius: var(--bn-r); background: var(--bn-navy); color: #fff; font-family: var(--bn-head); font-weight: 600; cursor: pointer; }
.woocommerce-product-search button:hover { background: var(--bn-navy-2); }

/* ---------- single product: request-a-quote box ---------- */
.bn-enquire { margin: 18px 0 22px; padding: 20px; border: 1px solid var(--bn-line); border-radius: 6px; background: #fff; }
.bn-enquire h3 { font-size: 17px !important; margin: 0 0 6px !important; color: var(--bn-ink); }
.bn-enquire-note { margin: 0 0 14px !important; font-size: 14px; line-height: 1.6; color: var(--bn-text); }
.bn-enquire-more { margin: 12px 0 0 !important; font-size: 13.5px; color: var(--bn-muted); }
.bn-enquire-more a { color: var(--bn-navy); font-weight: 600; text-decoration: underline; }

/* ---------- floating WhatsApp + back to top ---------- */
.bn-float-wa { position: fixed; right: 20px; bottom: 20px; z-index: 9999; display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 50%; background: var(--bn-navy); color: #fff !important; box-shadow: 0 4px 14px rgba(15,30,51,.3); text-decoration: none !important; }
.bn-float-wa:hover { background: var(--bn-navy-2); }
.bn-float-wa .bn-ico { width: 26px; height: 26px; }
.bn-float-wa span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
#back-top { left: 20px !important; right: auto !important; bottom: 20px !important; width: 40px !important; height: 40px !important; border-radius: var(--bn-r) !important; background: var(--bn-navy) !important; }

/* ---------- footer ---------- */
.ft3-icon i { background: var(--bn-navy) !important; }
.ft3-content label { color: var(--bn-ink) !important; font-family: var(--bn-head); }
.ft3-icon i.fa-envelope-open-o { font-family: "Font Awesome 5 Free" !important; font-weight: 900 !important; }
.ft3-icon i.fa-envelope-open-o::before { content: "\f0e0"; }
.ft3-top .container > .row { border-radius: 6px !important; }
.bn-footer { background: var(--bn-navy); color: #c3cad6; padding: 92px 0 28px; margin-top: 0; font-size: 14.5px; line-height: 1.7; }
.bn-footer .bn-wrap { max-width: 1140px; margin: 0 auto; padding: 0 16px; display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.3fr; gap: 32px; }
.bn-footer h4 { color: #fff !important; font-size: 15px !important; margin: 0 0 14px !important; }
.bn-footer p { color: #c3cad6; margin: 0 0 6px; }
.bn-footer a { color: #c3cad6 !important; text-decoration: none; }
.bn-footer a:hover { color: #fff !important; }
.bn-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.bn-footer .bn-brand { font: 700 26px/1 var(--bn-head); color: #fff; margin-bottom: 12px; }
.bn-footer .bn-brand span { color: #ff3b42; }
.bn-footer .bn-btn { margin-top: 14px; }
.bn-footer-bottom { max-width: 1140px; margin: 36px auto 0; padding: 18px 16px 0; border-top: 1px solid rgba(255,255,255,.12); font-size: 13px; color: #8f9bb0; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.site-footer .ft3-top { position: relative; z-index: 2; }
@media (max-width: 991px) { .bn-footer .bn-wrap { grid-template-columns: 1fr 1fr; } .bn-footer { padding-top: 48px; } }
@media (max-width: 600px) { .bn-footer .bn-wrap { grid-template-columns: 1fr; } }

/* ---------- shop page heading + category list ---------- */
.bn-archive-head { margin: 0 0 18px; }
.bn-archive-head h1 { font-size: 28px !important; line-height: 1.25 !important; margin: 0 0 6px !important; color: var(--bn-ink) !important; font-weight: 600 !important; }
.bn-archive-head p { margin: 0 0 6px; color: var(--bn-text); font-size: 15px; line-height: 1.65; max-width: 820px; }
@media (max-width: 767px) { .bn-archive-head h1 { font-size: 22px !important; } .bn-archive-head p { font-size: 14px; } }
.eael-simple-menu-container { border: 1px solid var(--bn-line) !important; border-radius: 6px !important; overflow: hidden; background: #fff !important; }
.eael-simple-menu-container .eael-simple-menu li { border: 0 !important; border-bottom: 1px solid var(--bn-line) !important; background: #fff !important; }
.eael-simple-menu-container .eael-simple-menu li:last-child { border-bottom: 0 !important; }
.eael-simple-menu-container .eael-simple-menu li > a { font: 500 14px/1.35 var(--bn-head) !important; color: var(--bn-ink) !important; text-transform: none !important; padding: 12px 44px 12px 16px !important; background: #fff !important; border: 0 !important; }
.eael-simple-menu-container .eael-simple-menu li > a:hover { color: var(--bn-red) !important; background: var(--bn-soft) !important; }
.eael-simple-menu-container .eael-simple-menu li ul li > a { font-size: 13.5px !important; font-weight: 400 !important; padding-left: 28px !important; color: var(--bn-text) !important; }
.eael-simple-menu-container .eael-simple-menu-indicator { border: 0 !important; background: transparent !important; color: #98a2b3 !important; }
.eael-simple-menu-container .eael-simple-menu-indicator svg, .eael-simple-menu-container .eael-simple-menu-indicator i { fill: #98a2b3 !important; color: #98a2b3 !important; }
.bn-chips { display: flex; gap: 8px; overflow-x: auto; padding: 2px 0 12px; margin: 0 0 6px; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.bn-chips::-webkit-scrollbar { display: none; }
.bn-chips a { flex: none; padding: 10px 14px; border: 1px solid #c9ced6; border-radius: var(--bn-r); background: #fff; color: var(--bn-ink) !important; font: 500 14px/1 var(--bn-head); white-space: nowrap; text-decoration: none !important; }
.bn-chips a.is-active { background: var(--bn-navy); border-color: var(--bn-navy); color: #fff !important; }

/* ---------- phones: get products on the first screen ---------- */
@media (max-width: 767px) {
  .elementor-element-4b8419b .intech-slide-item, .elementor-element-4b8419b .intech-slider-table, .elementor-element-4b8419b .intech-slider-table-call { height: 120px !important; min-height: 0 !important; }
  .elementor-element-4b8419b .intech-slide-content h1, .elementor-element-4b8419b .intech-slide-content h2 { font-size: 30px !important; margin: 0 !important; }
  .elementor-element-4b8419b .bn-hero-ctas, .elementor-element-4b8419b .intech-slide-content p { display: none !important; }
  .elementor-element-f1b3f29 { display: none !important; }
  .woocommerce-product-search { flex-wrap: nowrap; margin-bottom: 14px; }
  .woocommerce-product-search .search-field { flex: 1 1 auto; }
  .woocommerce-product-search button { flex: 0 0 auto; width: auto; padding: 0 18px; }
  .bn-howto { font-size: 13px; padding: 8px 14px; }
}

/* ---------- quote flow: buttons, quantity box, popup, phone bar ---------- */
.bn-add { display: inline-flex; align-items: center; justify-content: center; gap: 8px; width: 100%; height: 40px; padding: 0 12px; border: 1px solid var(--bn-red); border-radius: var(--bn-r); background: var(--bn-red); color: #fff !important; font: 600 14px/1 var(--bn-head); cursor: pointer; text-decoration: none !important; white-space: nowrap; }
.bn-add:hover { background: var(--bn-red-d); border-color: var(--bn-red-d); }
.bn-add-lg { width: auto; flex: 1 1 180px; height: 46px; font-size: 15px; }
.bn-add-done { background: #fff; color: var(--bn-navy) !important; border-color: var(--bn-navy); }
.bn-add-done:hover { background: var(--bn-soft); border-color: var(--bn-navy); }
.bn-step { display: inline-flex; align-items: stretch; height: 40px; border: 1px solid #c9ced6; border-radius: var(--bn-r); overflow: hidden; background: #fff; flex: none; }
.bn-step button { width: 34px; border: 0; background: #fff; color: var(--bn-ink); font-size: 18px; line-height: 1; cursor: pointer; padding: 0; }
.bn-step button:hover { background: var(--bn-soft); }
.bn-step input { width: 44px; border: 0; border-left: 1px solid #c9ced6; border-right: 1px solid #c9ced6; text-align: center; font: 600 14px var(--bn-head); color: var(--bn-ink); background: #fff; padding: 0; margin: 0; height: auto; -moz-appearance: textfield; appearance: textfield; }
.bn-step input::-webkit-inner-spin-button, .bn-step input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.bn-inq { display: flex; align-items: center; gap: 8px; }
.bn-ok { font-size: 12.5px; font-weight: 600; color: #12733a; white-space: nowrap; }
.bn-pp-act { display: flex; flex-wrap: wrap; gap: 10px; }
.bn-pp-act .bn-step { height: 46px; }
.bn-enquire-more a { color: var(--bn-navy); font-weight: 600; text-decoration: underline; }
.bn-toast { position: fixed; left: 50%; bottom: 22px; z-index: 10000; transform: translate(-50%, 16px); opacity: 0; transition: opacity .2s, transform .2s; display: flex; align-items: center; gap: 12px; max-width: calc(100% - 32px); padding: 10px 10px 10px 14px; border-radius: 6px; background: var(--bn-navy); color: #fff; font-size: 14px; box-shadow: 0 6px 18px rgba(15,30,51,.25); }
.bn-toast.show { opacity: 1; transform: translate(-50%, 0); }
.bn-toast a { background: #fff; color: var(--bn-navy) !important; border-radius: var(--bn-r); padding: 7px 10px; font-weight: 600; font-size: 13px; text-decoration: none !important; white-space: nowrap; }
.bn-mbar { display: none; }
@media (max-width: 767px) {
  .bn-mbar:not([hidden]) { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 9998; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px)); background: #fff; border-top: 1px solid var(--bn-line); box-shadow: 0 -4px 12px rgba(15,30,51,.08); font-size: 14px; color: var(--bn-ink); }
  .bn-mbar .bn-btn { padding: 11px 16px; font-size: 14px; }
  body.bn-has-mbar .bn-float-wa { bottom: 84px; }
  body.bn-has-mbar #back-top { bottom: 84px !important; }
  body.bn-has-mbar .bn-toast { bottom: 84px; }
  body.bn-has-mbar { padding-bottom: 70px; }
  .bn-card-act .bn-ok { display: none; }
  .bn-card-act .bn-step { width: 100%; }
  .bn-card-act .bn-step input { flex: 1; }
  .bn-add { font-size: 13px; }
}

/* ---------- /quote/ page ---------- */
.bn-quote-app { max-width: 980px; margin: -40px auto 40px; font-size: 15px; color: var(--bn-ink); }
.bn-quote-app .bn-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.bn-q-lede { color: var(--bn-text); margin: 0 0 16px; }
.bn-q-list { border: 1px solid var(--bn-line); border-radius: 6px; background: #fff; }
.bn-q-item { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto auto; gap: 14px; align-items: center; padding: 12px 14px; border-bottom: 1px solid var(--bn-line); }
.bn-q-item:last-child { border-bottom: 0; }
.bn-q-item img, .bn-q-noimg { width: 64px; height: 64px; object-fit: contain; border: 1px solid var(--bn-line); border-radius: 4px; background: #fff; }
.bn-q-noimg { display: flex; align-items: center; justify-content: center; font-size: 12px; color: var(--bn-muted); }
.bn-q-name { min-width: 0; font-family: var(--bn-head); font-weight: 600; font-size: 14.5px; line-height: 1.4; }
.bn-q-name a { color: var(--bn-ink) !important; text-decoration: none; }
.bn-q-name a:hover { text-decoration: underline; }
.bn-q-tag { display: inline-block; margin-left: 8px; padding: 2px 6px; border-radius: 3px; background: var(--bn-soft); color: var(--bn-muted); font: 500 11.5px var(--bn-head); vertical-align: middle; }
.bn-q-rm { border: 0; background: none; color: var(--bn-muted); text-decoration: underline; cursor: pointer; font-size: 13.5px; padding: 0; }
.bn-q-addpart { margin: 14px 0 0; padding: 12px 14px; border: 1px dashed #c9ced6; border-radius: 6px; }
.bn-q-addpart label { display: block; font-size: 13.5px; font-weight: 600; margin-bottom: 8px; }
.bn-q-addpart input { flex: 1 1 240px; min-width: 0; height: 44px; padding: 0 12px; border: 1px solid #c9ced6; border-radius: var(--bn-r); font-size: 15px; }
.bn-q-addpart .bn-btn { height: 44px; padding: 0 18px; }
.bn-q-sum { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin: 12px 0 26px; font-size: 14px; color: var(--bn-text); }
.bn-q-sum a { color: var(--bn-navy) !important; font-weight: 600; }
.bn-q-h { font-size: 18px !important; margin: 0 0 10px !important; }
.bn-q-choose { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.bn-q-opt { text-align: left; display: grid; gap: 4px; padding: 14px 16px; border: 1px solid #c9ced6; border-radius: 6px; background: #fff; color: var(--bn-ink); cursor: pointer; font-family: inherit; }
.bn-q-opt b { font: 600 15.5px var(--bn-head); }
.bn-q-opt span { font-size: 13.5px; color: var(--bn-text); }
.bn-q-opt[aria-pressed="true"] { border-color: var(--bn-navy); box-shadow: inset 0 0 0 1px var(--bn-navy); }
.bn-q-panel { margin-top: 14px; padding: 16px; border: 1px solid var(--bn-line); border-radius: 6px; background: var(--bn-soft); }
.bn-chat { background: #ece5dd; border-radius: 6px; padding: 14px; margin-bottom: 12px; }
.bn-chat-h { font-size: 12.5px; color: var(--bn-muted); margin-bottom: 8px; }
.bn-bubble { margin-left: auto; max-width: 560px; padding: 10px 12px; border-radius: 8px 8px 2px 8px; background: #dcf8c6; color: #111; font-size: 13.5px; white-space: pre-wrap; word-break: break-word; }
.bn-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 14px; }
.bn-q-form label { display: grid; gap: 5px; font-size: 13.5px; font-weight: 600; color: var(--bn-ink); }
.bn-q-form .bn-full { grid-column: 1 / -1; }
.bn-q-form input:not([type=radio]), .bn-q-form select, .bn-q-form textarea { width: 100%; min-height: 44px; padding: 9px 12px; border: 1px solid #c9ced6; border-radius: var(--bn-r); background: #fff; font: 400 15px "Open Sans", sans-serif; color: var(--bn-ink); }
.bn-q-form textarea { min-height: 80px; resize: vertical; }
.bn-q-form fieldset { border: 0; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 18px; }
.bn-q-form legend { font-size: 13.5px; font-weight: 600; margin-bottom: 6px; padding: 0; }
.bn-q-form .bn-radio { display: inline-flex; align-items: center; gap: 6px; font-weight: 400; font-size: 14.5px; }
.bn-q-form .bn-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.bn-q-form .bn-row { margin-top: 14px; }
.bn-q-form button[disabled] { opacity: .65; cursor: wait; }
.bn-q-err { margin: 12px 0 0; color: var(--bn-red); font-weight: 600; font-size: 14px; }
.bn-q-small { margin: 10px 0 0; font-size: 12.5px; color: var(--bn-muted); }
.bn-q-empty { padding: 30px; border: 1px dashed #c9ced6; border-radius: 6px; text-align: center; color: var(--bn-text); }
.bn-q-empty p { margin: 0 0 14px; }
.bn-q-done { max-width: 640px; }
.bn-q-title { font-size: 30px !important; line-height: 1.2 !important; font-weight: 600 !important; margin: 0 0 8px !important; color: var(--bn-ink) !important; }
@media (max-width: 700px) { .bn-q-title { font-size: 24px !important; } }
.bn-ref { font-family: "IBM Plex Mono", ui-monospace, monospace; background: var(--bn-soft); border: 1px solid var(--bn-line); border-radius: 4px; padding: 2px 8px; color: var(--bn-navy); }
@media (max-width: 700px) {
  .bn-q-item { grid-template-columns: 56px minmax(0, 1fr); gap: 8px 12px; }
  .bn-q-item img, .bn-q-noimg { width: 56px; height: 56px; grid-row: span 2; }
  .bn-q-item .bn-step, .bn-q-item .bn-q-rm { grid-column: 2; justify-self: start; }
  .bn-q-item .bn-q-rm { margin-top: -2px; }
  .bn-q-choose, .bn-grid2 { grid-template-columns: 1fr; }
}

/* /quote/ page: full width, no empty theme sidebar */
.page-id-9564 .theme-content .row > .col-lg-4 { display: none !important; }
.page-id-9564 .theme-content .row > .col-lg-8 { flex: 0 0 100% !important; max-width: 100% !important; }

/* live search status line above the grid */
.bn-live-status { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin: 0 0 16px; padding: 12px 14px; border: 1px solid var(--bn-line); border-radius: 6px; background: var(--bn-soft); font-size: 14.5px; color: var(--bn-ink); }
.bn-live-status[hidden] { display: none; }
.bn-live-status span { flex: 1 1 260px; }
.bn-live-status .bn-btn { padding: 10px 16px; font-size: 14px; }
.bn-live-clear { border: 0; background: none; padding: 0; color: var(--bn-navy); font-weight: 600; text-decoration: underline; cursor: pointer; font-size: 14px; }

/* the theme fades the fixed menu bar in from transparent; make it solid straight away */
.header-main-area.on { background-color: #fff !important; transition: none !important; box-shadow: 0 1px 0 var(--bn-line), 0 6px 18px rgba(15,30,51,.06); }