/*
 * Business Support Buddy navigation
 * Mobile-first, permission-aware, and isolated from legacy menu styles.
 */

:root{
  --bsb-menu-height:64px;
  --bsb-menu-safe-top:env(safe-area-inset-top, 0px);
  --bsb-menu-offset:calc(var(--bsb-menu-height) + var(--bsb-menu-safe-top));
  --bsb-menu-surface:rgba(8,15,28,.92);
  --bsb-menu-border:rgba(255,255,255,.10);
  --bsb-menu-muted:rgba(226,232,240,.66);
  --bsb-menu-focus:#8ed8ff;
}

html{
  scroll-padding-top:calc(var(--bsb-menu-offset) + 16px);
}

/* The shared navigation is fixed on every page that loads this component.
   Reserve its exact mobile-safe height so page content never sits beneath it. */
body{
  padding-top:var(--bsb-menu-offset) !important;
}

.bsb-menu,
.bsb-menu *{
  box-sizing:border-box;
}

.bsb-menu{
  position:fixed !important;
  inset:0 0 auto;
  z-index:4000;
  min-height:calc(var(--bsb-menu-height) + var(--bsb-menu-safe-top));
  padding-top:var(--bsb-menu-safe-top);
  border-bottom:1px solid var(--bsb-menu-border);
  background:linear-gradient(180deg, rgba(8,15,28,.97), rgba(8,15,28,.88));
  box-shadow:0 12px 30px rgba(0,0,0,.16);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
}

.bsb-menu__inner{
  width:100%;
  max-width:none;
  min-height:var(--bsb-menu-height);
  margin:0 auto;
  padding:.5rem clamp(.75rem, 2vw, 2.25rem);
  display:grid;
  grid-template-columns:minmax(0, auto) minmax(0, 1fr) auto;
  align-items:center;
  gap:clamp(.45rem, 1.2vw, 1rem);
}

.bsb-menu__brand{
  min-width:0;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  gap:clamp(.45rem, 2vw, .65rem);
  color:#fff;
  text-decoration:none;
}

.bsb-menu__brand:hover{
  color:#fff;
}

.bsb-menu__brand-mark{
  width:40px;
  height:40px;
  flex:0 0 40px;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(142,216,255,.20);
  border-radius:14px;
  color:#eaf7ff;
  background:
    radial-gradient(circle at 28% 22%, rgba(142,216,255,.28), transparent 46%),
    linear-gradient(145deg, rgba(79,140,255,.30), rgba(79,140,255,.10));
  box-shadow:0 10px 24px rgba(0,0,0,.24);
}

.bsb-menu__brand-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
}

.bsb-menu__brand-title{
  max-width:none;
  overflow:visible;
  color:#fff;
  font-size:clamp(.74rem, 3.5vw, 1rem);
  font-weight:900;
  letter-spacing:-.012em;
  line-height:1.12;
  text-overflow:clip;
  white-space:nowrap;
}

.bsb-menu__brand-subtitle{
  max-width:none;
  margin-top:.12rem;
  overflow:visible;
  color:var(--bsb-menu-muted);
  font-size:clamp(.57rem, 2.75vw, .75rem);
  font-weight:650;
  line-height:1.15;
  text-overflow:clip;
  white-space:nowrap;
}

.bsb-menu__nav{
  min-width:0;
  display:none;
  align-items:center;
  justify-content:center;
  gap:.16rem;
}

.bsb-menu__nav-link{
  min-height:42px;
  padding:.66rem .68rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.38rem;
  border:1px solid transparent;
  border-radius:12px;
  background:transparent;
  color:rgba(248,250,252,.82);
  font:inherit;
  font-size:.84rem;
  font-weight:780;
  line-height:1.1;
  text-decoration:none;
  white-space:nowrap;
  transition:
    color .16s ease,
    background-color .16s ease,
    border-color .16s ease,
    transform .16s ease;
}

.bsb-menu__nav-link:hover,
.bsb-menu__nav-link:focus-visible,
.bsb-menu__nav-link[aria-expanded="true"]{
  border-color:rgba(255,255,255,.10);
  background:rgba(255,255,255,.07);
  color:#fff;
  transform:translateY(-1px);
}

.bsb-menu__nav-link.is-active{
  border-color:rgba(114,199,255,.32);
  background:linear-gradient(135deg, rgba(114,199,255,.18), rgba(79,140,255,.13));
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(114,199,255,.06);
}

.bsb-menu__nav-button{
  cursor:pointer;
}

.bsb-menu__nav-button .bi-chevron-down{
  font-size:.68rem;
  transition:transform .16s ease;
}

.bsb-menu__nav-button[aria-expanded="true"] .bi-chevron-down{
  transform:rotate(180deg);
}

.bsb-menu__actions,
.bsb-menu__compact-actions,
.bsb-menu__desktop-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

.bsb-menu__actions{
  min-width:0;
}

.bsb-menu__compact-actions{
  gap:.42rem;
}

.bsb-menu__desktop-actions{
  display:none;
  gap:.5rem;
}

.bsb-menu__utility,
.bsb-menu__toggle{
  min-width:44px;
  min-height:44px;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.42rem;
  border:1px solid rgba(255,255,255,.13);
  border-radius:14px;
  background:rgba(255,255,255,.055);
  color:#fff;
  font:inherit;
  font-size:.83rem;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  transition:
    background-color .16s ease,
    border-color .16s ease,
    color .16s ease,
    transform .16s ease;
}

.bsb-menu__utility{
  padding:.65rem;
}

.bsb-menu__utility--account{
  padding:.34rem;
}

.bsb-menu__utility:hover,
.bsb-menu__utility:focus-visible,
.bsb-menu__toggle:hover,
.bsb-menu__toggle:focus-visible,
.bsb-menu__toggle[aria-expanded="true"]{
  border-color:rgba(142,216,255,.32);
  background:rgba(114,199,255,.12);
  color:#fff;
  transform:translateY(-1px);
}

.bsb-menu__toggle{
  padding:0;
  cursor:pointer;
}

.bsb-menu__toggle i{
  font-size:1.35rem;
}

.bsb-menu__utility-label{
  display:none;
}

.bsb-menu__utility-avatar{
  width:31px;
  height:31px;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(142,216,255,.22);
  border-radius:10px;
  background:rgba(79,140,255,.18);
  color:#fff;
  font-size:.82rem;
  font-weight:900;
}

.bsb-menu__button{
  min-height:42px;
  padding:.7rem .9rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  border:1px solid transparent;
  border-radius:13px;
  font-size:.84rem;
  font-weight:850;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
  transition:
    transform .16s ease,
    filter .16s ease,
    background-color .16s ease,
    border-color .16s ease;
}

.bsb-menu__button:hover,
.bsb-menu__button:focus-visible{
  transform:translateY(-1px);
}

.bsb-menu__button--secondary{
  border-color:rgba(255,255,255,.15);
  background:rgba(255,255,255,.055);
  color:#fff;
}

.bsb-menu__button--secondary:hover{
  border-color:rgba(255,255,255,.24);
  background:rgba(255,255,255,.09);
  color:#fff;
}

.bsb-menu__button--primary{
  border-color:rgba(142,216,255,.38);
  background:linear-gradient(135deg, #7ed2ff, #5c91ff);
  color:#06101f;
  box-shadow:0 12px 24px rgba(59,130,246,.20);
}

.bsb-menu__button--primary:hover{
  color:#06101f;
  filter:brightness(1.04);
}

.bsb-menu__context{
  max-width:190px;
  min-height:42px;
  padding:.44rem .68rem;
  display:none;
  align-items:center;
  gap:.5rem;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  color:#f8fafc;
}

.bsb-menu__context.is-support-active{
  border-color:rgba(250,204,21,.28);
  background:rgba(250,204,21,.09);
  color:#fff5bf;
}

.bsb-menu__context > span{
  min-width:0;
  display:flex;
  flex-direction:column;
}

.bsb-menu__context small,
.bsb-menu__context strong{
  overflow:hidden;
  line-height:1.05;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.bsb-menu__context small{
  color:var(--bsb-menu-muted);
  font-size:.62rem;
  font-weight:750;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.bsb-menu__context strong{
  margin-top:.16rem;
  font-size:.75rem;
  font-weight:850;
}

.bsb-menu__account-trigger{
  max-width:210px;
  min-height:44px;
  padding:.35rem .55rem;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  background:rgba(255,255,255,.045);
  color:#fff;
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:background-color .16s ease, border-color .16s ease;
}

.bsb-menu__account-trigger:hover,
.bsb-menu__account-trigger:focus-visible,
.bsb-menu__account-trigger[aria-expanded="true"]{
  border-color:rgba(142,216,255,.28);
  background:rgba(114,199,255,.10);
}

.bsb-menu__avatar{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(142,216,255,.18);
  border-radius:11px;
  background:rgba(79,140,255,.18);
  font-size:.8rem;
  font-weight:900;
}

.bsb-menu__account-copy{
  min-width:0;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
}

.bsb-menu__account-copy strong,
.bsb-menu__account-copy small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.bsb-menu__account-copy strong{
  font-size:.78rem;
  line-height:1.1;
}

.bsb-menu__account-copy small{
  margin-top:.12rem;
  color:var(--bsb-menu-muted);
  font-size:.67rem;
  line-height:1.1;
}

.bsb-menu__account-trigger > .bi-chevron-down{
  color:var(--bsb-menu-muted);
  font-size:.66rem;
}

.bsb-menu__dropdown{
  position:relative;
}

.bsb-menu-solutions,
.bsb-menu-account{
  margin-top:.65rem !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  border:1px solid rgba(255,255,255,.11);
  background:
    radial-gradient(circle at 0 0, rgba(114,199,255,.13), transparent 34%),
    linear-gradient(180deg, rgba(13,23,42,.995), rgba(8,15,28,.995));
  box-shadow:0 30px 80px rgba(0,0,0,.50);
  color:#fff;
}

.bsb-menu-solutions{
  position:fixed !important;
  top:calc(var(--bsb-menu-safe-top) + var(--bsb-menu-height)) !important;
  left:50% !important;
  right:auto !important;
  width:min(760px, calc(100vw - 1.5rem));
  max-width:calc(100vw - 1.5rem);
  max-height:calc(100vh - var(--bsb-menu-height) - var(--bsb-menu-safe-top) - 1.25rem);
  max-height:calc(100dvh - var(--bsb-menu-height) - var(--bsb-menu-safe-top) - 1.25rem);
  padding:.8rem;
  border-radius:22px;
  transform:translateX(-50%) !important;
}

.bsb-menu-solutions__intro{
  padding:.75rem .8rem .9rem;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.bsb-menu-solutions__intro strong,
.bsb-menu-solutions__intro p{
  display:block;
}

.bsb-menu-solutions__intro strong{
  color:#fff;
  font-size:1rem;
  font-weight:900;
  line-height:1.25;
}

.bsb-menu-solutions__intro p{
  margin:.3rem 0 0;
  color:var(--bsb-menu-muted);
  font-size:.8rem;
  line-height:1.45;
}

.bsb-menu-solutions__kicker,
.bsb-menu-account__eyebrow,
.bsb-menu-drawer__eyebrow{
  display:block;
  margin-bottom:.25rem;
  color:rgba(186,230,253,.68);
  font-size:.66rem;
  font-weight:850;
  letter-spacing:.075em;
  line-height:1.1;
  text-transform:uppercase;
}

.bsb-menu-solutions__grid{
  margin-top:.7rem;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.48rem;
}

.bsb-menu-solutions__link{
  min-width:0;
  min-height:78px;
  padding:.72rem;
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  align-items:start;
  gap:.65rem;
  border:1px solid rgba(255,255,255,.065);
  border-radius:15px;
  background:rgba(255,255,255,.025);
  color:#fff;
  text-decoration:none;
  transition:
    background-color .16s ease,
    border-color .16s ease,
    transform .16s ease;
}

.bsb-menu-solutions__link:hover,
.bsb-menu-solutions__link:focus-visible{
  border-color:rgba(114,199,255,.24);
  background:rgba(114,199,255,.075);
  color:#fff;
  transform:translateY(-1px);
}

.bsb-menu-solutions__icon{
  width:36px;
  height:36px;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(142,216,255,.14);
  border-radius:12px;
  background:rgba(79,140,255,.13);
  color:#dff4ff;
}

.bsb-menu-solutions__copy{
  min-width:0;
}

.bsb-menu-solutions__title,
.bsb-menu-solutions__description{
  display:block;
}

.bsb-menu-solutions__title{
  color:#fff;
  font-size:.82rem;
  font-weight:850;
  line-height:1.25;
}

.bsb-menu-solutions__description{
  margin-top:.16rem;
  color:var(--bsb-menu-muted);
  font-size:.7rem;
  font-weight:600;
  line-height:1.35;
}

.bsb-menu-solutions__arrow{
  margin-top:.15rem;
  color:rgba(226,232,240,.45);
  font-size:.72rem;
}

.bsb-menu-account{
  position:fixed !important;
  top:calc(var(--bsb-menu-safe-top) + var(--bsb-menu-height)) !important;
  right:clamp(.75rem, 2vw, 1.75rem) !important;
  left:auto !important;
  width:min(360px, calc(100vw - 1.5rem));
  max-height:calc(100vh - var(--bsb-menu-height) - var(--bsb-menu-safe-top) - 1.25rem);
  max-height:calc(100dvh - var(--bsb-menu-height) - var(--bsb-menu-safe-top) - 1.25rem);
  padding:.75rem;
  border-radius:20px;
  transform:none !important;
}

.bsb-menu-account__header{
  padding:.7rem;
  display:flex;
  align-items:center;
  gap:.72rem;
  border:1px solid rgba(255,255,255,.07);
  border-radius:16px;
  background:rgba(255,255,255,.025);
}

.bsb-menu-account__avatar{
  width:44px;
  height:44px;
  flex:0 0 44px;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(142,216,255,.18);
  border-radius:14px;
  background:rgba(79,140,255,.18);
  font-weight:900;
}

.bsb-menu-account__header > div{
  min-width:0;
}

.bsb-menu-account__header strong,
.bsb-menu-account__header small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.bsb-menu-account__header strong{
  color:#fff;
  font-size:.88rem;
  line-height:1.2;
}

.bsb-menu-account__header small{
  margin-top:.18rem;
  color:var(--bsb-menu-muted);
  font-size:.7rem;
  line-height:1.3;
}

.bsb-menu-account__support{
  margin-top:.55rem;
  padding:.72rem;
  display:flex;
  align-items:flex-start;
  gap:.58rem;
  border:1px solid rgba(250,204,21,.24);
  border-radius:15px;
  background:rgba(250,204,21,.08);
  color:#fff7c7;
}

.bsb-menu-account__support > div{
  min-width:0;
}

.bsb-menu-account__support strong,
.bsb-menu-account__support span{
  display:block;
}

.bsb-menu-account__support strong{
  color:#fff;
  font-size:.76rem;
  line-height:1.25;
}

.bsb-menu-account__support span{
  margin-top:.15rem;
  color:rgba(255,247,199,.76);
  font-size:.68rem;
  line-height:1.35;
}

.bsb-menu-account__links{
  margin-top:.55rem;
  display:grid;
  gap:.42rem;
}

.bsb-menu-account__links > a{
  min-width:0;
  padding:.68rem;
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  align-items:start;
  gap:.62rem;
  border:1px solid rgba(255,255,255,.06);
  border-radius:14px;
  background:rgba(255,255,255,.02);
  color:#fff;
  text-decoration:none;
}

.bsb-menu-account__links > a:hover,
.bsb-menu-account__links > a:focus-visible{
  border-color:rgba(114,199,255,.22);
  background:rgba(114,199,255,.07);
  color:#fff;
}

.bsb-menu-account__links > a.is-warning{
  border-color:rgba(250,204,21,.20);
  background:rgba(250,204,21,.06);
  color:#fff7c7;
}

.bsb-menu-account__links > a > i{
  width:32px;
  height:32px;
  display:inline-grid;
  place-items:center;
  border-radius:10px;
  background:rgba(79,140,255,.13);
  color:#dff4ff;
}

.bsb-menu-account__links strong,
.bsb-menu-account__links small{
  display:block;
}

.bsb-menu-account__links strong{
  color:inherit;
  font-size:.77rem;
  line-height:1.25;
}

.bsb-menu-account__links small{
  margin-top:.13rem;
  color:var(--bsb-menu-muted);
  font-size:.68rem;
  line-height:1.3;
}

.offcanvas.bsb-menu-drawer{
  --bs-offcanvas-width:min(100vw, 420px);
  z-index:4050;
  border-left:1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(circle at 100% 0, rgba(79,140,255,.14), transparent 32%),
    linear-gradient(180deg, #0c1629, #08101e 72%);
  color:#fff;
}

.bsb-menu-drawer__header{
  width:100%;
  min-height:calc(76px + env(safe-area-inset-top, 0px));
  display:flex;
  justify-content:space-between !important;
  gap:.75rem;
  padding:
    calc(.8rem + env(safe-area-inset-top, 0px))
    calc(1rem + env(safe-area-inset-right, 0px))
    .8rem
    calc(1rem + env(safe-area-inset-left, 0px));
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.09);
}

.bsb-menu-drawer__heading{
  flex:1 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  gap:.68rem;
}

.bsb-menu-drawer__mark{
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(142,216,255,.18);
  border-radius:13px;
  background:rgba(79,140,255,.16);
}

.bsb-menu-drawer__brand-copy{
  flex:1 1 auto;
  min-width:0;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}

.bsb-menu-drawer__title{
  margin:0 !important;
  display:block !important;
  overflow:visible;
  color:#fff;
  font-size:clamp(.72rem, 3.6vw, .93rem) !important;
  font-weight:900;
  letter-spacing:-.01em;
  line-height:1.15 !important;
  text-overflow:clip;
  white-space:nowrap;
  visibility:visible !important;
  opacity:1 !important;
}

.bsb-menu-drawer__heading p{
  margin:.18rem 0 0;
  display:block !important;
  overflow:visible;
  color:var(--bsb-menu-muted);
  font-size:clamp(.55rem, 2.7vw, .7rem);
  font-weight:650;
  line-height:1.2;
  text-overflow:clip;
  white-space:nowrap;
  visibility:visible !important;
  opacity:1 !important;
}

.bsb-menu-drawer__close{
  width:44px;
  height:44px;
  flex:0 0 44px;
  margin-inline-start:auto;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  background:rgba(255,255,255,.055);
  color:#fff;
  font-size:1rem;
}

.bsb-menu-drawer__close:hover,
.bsb-menu-drawer__close:focus-visible{
  border-color:rgba(142,216,255,.28);
  background:rgba(114,199,255,.10);
}

.bsb-menu-drawer__body{
  padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom, 0px));
  overscroll-behavior:contain;
}

.bsb-menu-drawer__welcome,
.bsb-menu-drawer__account,
.bsb-menu-drawer__section,
.bsb-menu-drawer__solutions,
.bsb-menu-drawer__contact{
  border:1px solid rgba(255,255,255,.085);
  border-radius:18px;
  background:rgba(255,255,255,.028);
}

.bsb-menu-drawer__welcome,
.bsb-menu-drawer__account,
.bsb-menu-drawer__section,
.bsb-menu-drawer__contact{
  padding:.9rem;
}

.bsb-menu-drawer__welcome h3,
.bsb-menu-drawer__section h3{
  margin:0 !important;
  color:#fff;
  font-size:1rem !important;
  font-weight:900;
  line-height:1.25 !important;
}

.bsb-menu-drawer__welcome p{
  margin:.38rem 0 0;
  color:var(--bsb-menu-muted);
  font-size:.79rem;
  font-weight:600;
  line-height:1.45;
}

.bsb-menu-drawer__cta-grid{
  margin-top:.8rem;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.5rem;
}

.bsb-menu-drawer__action{
  min-width:0;
  min-height:46px;
  padding:.7rem .75rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.44rem;
  border:1px solid rgba(255,255,255,.13);
  border-radius:13px;
  background:rgba(255,255,255,.045);
  color:#fff;
  font-size:.78rem;
  font-weight:850;
  line-height:1.15;
  text-align:center;
  text-decoration:none;
}

.bsb-menu-drawer__action:hover,
.bsb-menu-drawer__action:focus-visible{
  border-color:rgba(142,216,255,.30);
  background:rgba(114,199,255,.10);
  color:#fff;
}

.bsb-menu-drawer__action.is-primary{
  border-color:rgba(142,216,255,.36);
  background:linear-gradient(135deg, #7ed2ff, #5c91ff);
  color:#06101f;
}

.bsb-menu-drawer__action.is-warning{
  border-color:rgba(250,204,21,.28);
  background:rgba(250,204,21,.09);
  color:#fff7c7;
}

.bsb-menu-drawer__section,
.bsb-menu-drawer__solutions,
.bsb-menu-drawer__contact{
  margin-top:.75rem;
}

.bsb-menu-drawer__section-heading{
  margin-bottom:.68rem;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:.75rem;
}

.bsb-menu-drawer__section-heading > span{
  flex:0 0 auto;
  padding:.25rem .45rem;
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  color:var(--bsb-menu-muted);
  font-size:.63rem;
  font-weight:750;
}

.bsb-menu-drawer__quick-links{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.48rem;
}

.bsb-menu-drawer__quick-links > a{
  min-width:0;
  min-height:50px;
  padding:.68rem;
  display:flex;
  align-items:center;
  gap:.5rem;
  border:1px solid rgba(255,255,255,.07);
  border-radius:13px;
  background:rgba(255,255,255,.025);
  color:#fff;
  font-size:.75rem;
  font-weight:800;
  text-decoration:none;
}

.bsb-menu-drawer__quick-links > a:hover,
.bsb-menu-drawer__quick-links > a:focus-visible{
  border-color:rgba(114,199,255,.25);
  background:rgba(114,199,255,.08);
  color:#fff;
}

.bsb-menu-drawer__quick-links i{
  color:#bfe8ff;
}

.bsb-menu-drawer__solutions{
  overflow:hidden;
}

.bsb-menu-drawer__solution-links{
  padding:.72rem;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.45rem;
}

.bsb-menu-drawer__solution-links > a{
  min-width:0;
  min-height:58px;
  padding:.58rem;
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  align-items:center;
  gap:.48rem;
  border:1px solid rgba(255,255,255,.07);
  border-radius:12px;
  background:rgba(255,255,255,.024);
  color:#fff;
  text-decoration:none;
}

.bsb-menu-drawer__solution-links > a:hover,
.bsb-menu-drawer__solution-links > a:focus-visible{
  border-color:rgba(114,199,255,.24);
  background:rgba(114,199,255,.075);
  color:#fff;
}

.bsb-menu-drawer__solution-links > a > span{
  width:30px;
  height:30px;
  display:inline-grid;
  place-items:center;
  border-radius:10px;
  background:rgba(79,140,255,.13);
  color:#dff4ff;
  font-size:.78rem;
}

.bsb-menu-drawer__solution-links strong{
  min-width:0;
  font-size:.68rem;
  font-weight:800;
  line-height:1.25;
}

.bsb-menu-drawer__solution-links > a > .bi-chevron-right{
  color:rgba(226,232,240,.42);
  font-size:.62rem;
}

.bsb-menu-drawer__contact{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  align-items:center;
  gap:.7rem;
  color:#fff;
  text-decoration:none;
  touch-action:manipulation;
  box-shadow:0 10px 26px rgba(0,0,0,.12);
  transition:
    transform .18s ease,
    border-color .18s ease,
    background-color .18s ease,
    box-shadow .18s ease;
}

.bsb-menu-drawer__contact-icon{
  width:40px;
  height:40px;
  flex:0 0 40px;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(153,246,228,.14);
  border-radius:13px;
  background:rgba(45,212,191,.10);
  color:#99f6e4;
  font-size:1rem;
}

.bsb-menu-drawer__contact-content{
  min-width:0;
  display:block;
}

.bsb-menu-drawer__contact-eyebrow{
  display:block;
  margin-bottom:.22rem;
  color:#9de6ff;
  font-size:.6rem;
  font-weight:850;
  letter-spacing:.075em;
  line-height:1.2;
  text-transform:uppercase;
}

.bsb-menu-drawer__contact strong{
  display:block;
  color:#fff;
  font-size:.82rem;
  font-weight:900;
  line-height:1.28;
}

.bsb-menu-drawer__contact-copy{
  display:block;
  margin-top:.3rem;
  color:var(--bsb-menu-muted);
  font-size:.7rem;
  font-weight:600;
  line-height:1.45;
}

.bsb-menu-drawer__contact-action{
  margin-top:.55rem;
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  color:#a9e2ff;
  font-size:.73rem;
  font-weight:850;
  line-height:1.2;
}

.bsb-menu-drawer__contact-action i{
  font-size:.7rem;
  transition:transform .18s ease;
}

.bsb-menu-drawer__contact-chevron{
  color:rgba(226,232,240,.42);
  font-size:.72rem;
  transition:transform .18s ease, color .18s ease;
}

.bsb-menu-drawer__contact:hover,
.bsb-menu-drawer__contact:focus-visible{
  border-color:rgba(114,199,255,.3);
  background:
    linear-gradient(135deg, rgba(114,199,255,.10), rgba(45,212,191,.055)),
    rgba(255,255,255,.035);
  color:#fff;
  text-decoration:none;
  box-shadow:0 16px 34px rgba(0,0,0,.2);
  transform:translateY(-2px);
}

.bsb-menu-drawer__contact:hover .bsb-menu-drawer__contact-action i,
.bsb-menu-drawer__contact:focus-visible .bsb-menu-drawer__contact-action i,
.bsb-menu-drawer__contact:hover .bsb-menu-drawer__contact-chevron,
.bsb-menu-drawer__contact:focus-visible .bsb-menu-drawer__contact-chevron{
  color:#c9efff;
  transform:translateX(3px);
}

.bsb-menu-drawer__contact:active{
  transform:translateY(0) scale(.995);
}

.bsb-menu-drawer__account.is-support-active{
  border-color:rgba(250,204,21,.22);
  background:
    radial-gradient(circle at 0 0, rgba(250,204,21,.10), transparent 40%),
    rgba(255,255,255,.028);
}

.bsb-menu-drawer__account-top{
  display:flex;
  align-items:center;
  gap:.7rem;
}

.bsb-menu-drawer__avatar{
  width:44px;
  height:44px;
  flex:0 0 44px;
  display:inline-grid;
  place-items:center;
  border:1px solid rgba(142,216,255,.18);
  border-radius:14px;
  background:rgba(79,140,255,.18);
  font-weight:900;
}

.bsb-menu-drawer__account-top > div{
  min-width:0;
}

.bsb-menu-drawer__account-top strong,
.bsb-menu-drawer__account-top small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.bsb-menu-drawer__account-top strong{
  color:#fff;
  font-size:.88rem;
  line-height:1.2;
}

.bsb-menu-drawer__account-top small{
  margin-top:.16rem;
  color:var(--bsb-menu-muted);
  font-size:.7rem;
  line-height:1.3;
}

.bsb-menu-drawer__support{
  margin-top:.7rem;
  padding:.62rem;
  display:flex;
  align-items:flex-start;
  gap:.5rem;
  border:1px solid rgba(250,204,21,.20);
  border-radius:13px;
  background:rgba(250,204,21,.07);
  color:#fff7c7;
  font-size:.7rem;
  font-weight:650;
  line-height:1.4;
}

.bsb-menu-drawer__links{
  display:grid;
  gap:.45rem;
}

.bsb-menu-drawer__link{
  min-width:0;
  min-height:52px;
  padding:.55rem .65rem;
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  align-items:center;
  gap:.58rem;
  border:1px solid rgba(255,255,255,.07);
  border-radius:13px;
  background:rgba(255,255,255,.025);
  color:#fff;
  font-size:.78rem;
  font-weight:820;
  line-height:1.2;
  text-decoration:none;
}

.bsb-menu-drawer__link:hover,
.bsb-menu-drawer__link:focus-visible{
  border-color:rgba(114,199,255,.25);
  background:rgba(114,199,255,.08);
  color:#fff;
}

.bsb-menu-drawer__link.is-active{
  border-color:rgba(114,199,255,.34);
  background:linear-gradient(135deg, rgba(114,199,255,.15), rgba(79,140,255,.10));
}

.bsb-menu-drawer__link-icon{
  width:34px;
  height:34px;
  display:inline-grid;
  place-items:center;
  border-radius:11px;
  background:rgba(79,140,255,.13);
  color:#dff4ff;
}

.bsb-menu-drawer__link > .bi-chevron-right{
  color:rgba(226,232,240,.42);
  font-size:.68rem;
}

.bsb-menu-drawer__footer{
  position:sticky;
  bottom:calc(-1rem - env(safe-area-inset-bottom, 0px));
  z-index:2;
  margin:1rem -1rem calc(-1rem - env(safe-area-inset-bottom, 0px));
  padding:.8rem 1rem calc(.8rem + env(safe-area-inset-bottom, 0px));
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.5rem;
  border-top:1px solid rgba(255,255,255,.09);
  background:rgba(8,16,30,.96);
  box-shadow:0 -16px 30px rgba(0,0,0,.18);
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
}

.bsb-menu-drawer__footer .is-warning{
  grid-column:1 / -1;
}

.bsb-menu :focus-visible,
.bsb-menu-solutions :focus-visible,
.bsb-menu-account :focus-visible,
.bsb-menu-drawer :focus-visible{
  outline:3px solid var(--bsb-menu-focus) !important;
  outline-offset:2px !important;
}

@media (min-width:420px){
  .bsb-menu__utility:not(.bsb-menu__utility--account){
    padding:.65rem .72rem;
  }

  .bsb-menu__utility-label{
    display:inline;
  }
}

@media (max-width:349.98px){
  .bsb-menu__brand-mark{
    width:36px;
    height:36px;
    flex-basis:36px;
  }

  .bsb-menu-drawer__solution-links{
    grid-template-columns:1fr;
  }
}

@media (min-width:1100px){
  .bsb-menu[data-authenticated="false"] .bsb-menu__nav{
    display:flex;
  }

  .bsb-menu[data-authenticated="false"] .bsb-menu__desktop-actions{
    display:flex;
  }

  .bsb-menu[data-authenticated="false"] .bsb-menu__compact-actions{
    display:none;
  }
}

@media (min-width:1360px){
  .bsb-menu[data-authenticated="true"] .bsb-menu__nav{
    display:flex;
  }

  .bsb-menu[data-authenticated="true"] .bsb-menu__desktop-actions{
    display:flex;
  }

  .bsb-menu[data-authenticated="true"] .bsb-menu__compact-actions{
    display:none;
  }

  .bsb-menu[data-authenticated="true"] .bsb-menu__brand{
    max-width:250px;
  }
}

@media (min-width:1500px){
  .bsb-menu__context{
    display:inline-flex;
  }
}

@media (min-width:1360px) and (max-width:1499.98px){
  .bsb-menu[data-authenticated="true"] .bsb-menu__inner{
    gap:.45rem;
    padding-right:.75rem;
    padding-left:.75rem;
  }

  .bsb-menu[data-authenticated="true"] .bsb-menu__nav-link{
    padding-right:.5rem;
    padding-left:.5rem;
    font-size:.78rem;
  }

  .bsb-menu[data-authenticated="true"] .bsb-menu__account-trigger{
    max-width:175px;
  }
}

/* Outcome-led public mega menu and grouped touch navigation. */
.bsb-menu-solutions{
  width:min(1180px, calc(100vw - 2rem));
  max-width:calc(100vw - 2rem);
  padding:.85rem;
}

.bsb-menu-solutions__panels{
  margin-top:.75rem;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);
  align-items:stretch;
  gap:.7rem;
}

.bsb-menu-solutions__group,
.bsb-menu-solutions__guidance{
  min-width:0;
  height:100%;
  padding:.72rem;
  border:1px solid rgba(255,255,255,.075);
  border-radius:17px;
  background:rgba(255,255,255,.022);
}

.bsb-menu-solutions__group{
  display:flex;
  flex-direction:column;
}

.bsb-menu-solutions__group-heading{
  min-height:57px;
  padding:.1rem .15rem .65rem;
  display:flex;
  flex-direction:column;
  gap:.22rem;
  border-bottom:1px solid rgba(255,255,255,.065);
}
.bsb-menu-solutions__group-heading > span{color:#eef8ff;font-size:.78rem;font-weight:900;line-height:1.3}
.bsb-menu-solutions__group-heading > small{color:var(--bsb-menu-muted);font-size:.66rem;line-height:1.4}

.bsb-menu-solutions__list{
  flex:1 1 auto;
  margin:.58rem 0 0;
  padding:0;
  display:grid;
  grid-auto-rows:1fr;
  gap:.38rem;
  list-style:none;
}

.bsb-menu-solutions__list > li{margin:0;padding:0}

.bsb-menu-solutions__group:first-child .bsb-menu-solutions__list{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.bsb-menu-solutions__group:nth-child(2) .bsb-menu-solutions__list{
  grid-template-columns:1fr;
  grid-template-rows:repeat(3,minmax(0,1fr));
}

.bsb-menu-solutions__link{
  height:100%;
  min-height:82px;
  padding:.56rem;
  align-items:center;
  border-radius:13px;
}
.bsb-menu-solutions__link.is-featured{
  border-color:rgba(114,199,255,.16);
  background:linear-gradient(135deg,rgba(114,199,255,.075),rgba(79,140,255,.035));
}
.bsb-menu-solutions__link.is-active{
  border-color:rgba(114,199,255,.38);
  background:linear-gradient(135deg,rgba(114,199,255,.16),rgba(79,140,255,.1));
}
.bsb-menu-solutions__link.is-active .bsb-menu-solutions__title::after{
  margin-left:.4rem;
  color:#7ce4bd;
  content:"Current";
  font-size:.52rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.bsb-menu-solutions__guidance{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:.62rem;
  background:
    radial-gradient(circle at 100% 0,rgba(104,226,177,.1),transparent 42%),
    rgba(255,255,255,.024);
}
.bsb-menu-solutions__guidance-kicker{
  grid-column:1 / -1;
  color:#86e4c5;
  font-size:.63rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.bsb-menu-solutions__managed{
  min-width:0;
  padding:.72rem;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:start;
  gap:.62rem;
  border:1px solid rgba(113,224,188,.18);
  border-radius:14px;
  color:#fff;
  background:rgba(85,211,171,.06);
  text-decoration:none;
}
.bsb-menu-solutions__managed > span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:.22rem}
.bsb-menu-solutions__managed strong{color:#fff;font-size:.8rem;line-height:1.25}
.bsb-menu-solutions__managed small{color:var(--bsb-menu-muted);font-size:.67rem;line-height:1.4}
.bsb-menu-solutions__managed > i{margin-top:.15rem;color:rgba(226,232,240,.5);font-size:.72rem}
.bsb-menu-solutions__managed:hover,
.bsb-menu-solutions__managed:focus-visible{border-color:rgba(113,224,188,.38);color:#fff;background:rgba(85,211,171,.1)}

.bsb-menu-solutions__help{
  padding:.85rem;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:.3rem .55rem;
  border-radius:14px;
  background:linear-gradient(145deg,rgba(78,137,255,.17),rgba(64,196,220,.07));
}
.bsb-menu-solutions__help > i{grid-row:1 / span 2;color:#a9e7ff;font-size:1rem}
.bsb-menu-solutions__help strong{color:#fff;font-size:.78rem;line-height:1.25}
.bsb-menu-solutions__help p{grid-column:1 / -1;margin:.38rem 0;color:var(--bsb-menu-muted);font-size:.68rem;line-height:1.45}
.bsb-menu-solutions__help button{
  grid-column:1 / -1;
  min-height:42px;
  padding:.62rem .72rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border:1px solid rgba(142,216,255,.3);
  border-radius:11px;
  color:#071426;
  background:linear-gradient(135deg,#8de3ff,#77a3ff);
  font:inherit;
  font-size:.73rem;
  font-weight:900;
  cursor:pointer;
}

@media (min-width:1280px){
  .bsb-menu-solutions__panels{
    grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(250px,.82fr);
  }

  .bsb-menu-solutions__guidance{
    grid-column:auto;
    display:flex;
    flex-direction:column;
  }

  .bsb-menu-solutions__managed{
    margin-top:.15rem;
  }

  .bsb-menu-solutions__help{
    flex:1 1 auto;
    margin-top:auto;
    align-content:center;
  }
}

.bsb-menu-drawer__solutions{padding:.85rem}
.bsb-menu-drawer__solutions-heading{margin-bottom:.65rem}
.bsb-menu-drawer__solutions-heading h3{margin:0;color:#fff;font-size:1rem;font-weight:900;line-height:1.25}
.bsb-menu-drawer__solution-group{margin-top:.5rem;border:1px solid rgba(255,255,255,.075);border-radius:14px;background:rgba(255,255,255,.022)}
.bsb-menu-drawer__solution-group summary{
  min-height:62px;
  padding:.7rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.65rem;
  color:#fff;
  cursor:pointer;
  list-style:none;
  touch-action:manipulation;
}
.bsb-menu-drawer__solution-group summary::-webkit-details-marker{display:none}
.bsb-menu-drawer__solution-group summary > span{min-width:0;display:flex;flex-direction:column;gap:.18rem}
.bsb-menu-drawer__solution-group summary strong{font-size:.78rem;line-height:1.3}
.bsb-menu-drawer__solution-group summary small{color:var(--bsb-menu-muted);font-size:.65rem;line-height:1.35}
.bsb-menu-drawer__solution-group summary > i{flex:0 0 auto;color:#a9dfff;font-size:.72rem;transition:transform .16s ease}
.bsb-menu-drawer__solution-group[open] summary{border-bottom:1px solid rgba(255,255,255,.07)}
.bsb-menu-drawer__solution-group[open] summary > i{transform:rotate(180deg)}

.bsb-menu-drawer__solution-links{
  margin:0;
  padding:.5rem;
  display:grid;
  grid-template-columns:1fr;
  gap:.4rem;
  list-style:none;
}
.bsb-menu-drawer__solution-links > li{margin:0;padding:0}
.bsb-menu-drawer__solution-links > li > a{
  min-width:0;
  min-height:66px;
  padding:.62rem;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:.55rem;
  border:1px solid rgba(255,255,255,.07);
  border-radius:12px;
  color:#fff;
  background:rgba(255,255,255,.024);
  text-decoration:none;
}
.bsb-menu-drawer__solution-links > li > a:hover,
.bsb-menu-drawer__solution-links > li > a:focus-visible{border-color:rgba(114,199,255,.27);color:#fff;background:rgba(114,199,255,.08)}
.bsb-menu-drawer__solution-links > li > a.is-featured{border-color:rgba(114,199,255,.16);background:rgba(79,140,255,.065)}
.bsb-menu-drawer__solution-links > li > a.is-active{border-color:rgba(114,199,255,.38);background:linear-gradient(135deg,rgba(114,199,255,.16),rgba(79,140,255,.1))}
.bsb-menu-drawer__solution-links > li > a > span:first-child,
.bsb-menu-drawer__managed > span:first-child{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:#dff4ff;
  background:rgba(79,140,255,.14);
}
.bsb-menu-drawer__solution-links > li > a > span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:.18rem}
.bsb-menu-drawer__solution-links > li > a strong{font-size:.72rem;line-height:1.3}
.bsb-menu-drawer__solution-links > li > a small{color:var(--bsb-menu-muted);font-size:.63rem;line-height:1.35}
.bsb-menu-drawer__solution-links > li > a > .bi-chevron-right{color:rgba(226,232,240,.45);font-size:.65rem}

.bsb-menu-drawer__managed{
  min-width:0;
  min-height:82px;
  margin-top:.65rem;
  padding:.72rem;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:.6rem;
  border:1px solid rgba(113,224,188,.2);
  border-radius:14px;
  color:#fff;
  background:rgba(85,211,171,.065);
  text-decoration:none;
}
.bsb-menu-drawer__managed > span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:.16rem}
.bsb-menu-drawer__managed small{color:#86e4c5;font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.bsb-menu-drawer__managed strong{font-size:.76rem;line-height:1.3}
.bsb-menu-drawer__managed em{color:var(--bsb-menu-muted);font-size:.62rem;font-style:normal;line-height:1.35}
.bsb-menu-drawer__managed > i{color:rgba(226,232,240,.45);font-size:.65rem}

.bsb-menu-drawer__talk{
  width:100%;
  min-height:52px;
  margin-top:.55rem;
  padding:.68rem .75rem;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:.62rem;
  border:1px solid rgba(142,216,255,.32);
  border-radius:14px;
  color:#071426;
  background:linear-gradient(135deg,#8de3ff,#77a3ff);
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.bsb-menu-drawer__talk > span{display:flex;flex-direction:column}
.bsb-menu-drawer__talk small{font-size:.58rem;font-weight:800;text-transform:uppercase}
.bsb-menu-drawer__talk strong{font-size:.78rem;font-weight:900}

@media (max-height:760px) and (min-width:1100px){
  .bsb-menu-solutions__intro{display:none}
  .bsb-menu-solutions__panels{margin-top:0}
  .bsb-menu-solutions__link{min-height:60px}
  .bsb-menu-solutions__description{font-size:.64rem}
}

@media (prefers-reduced-motion:reduce){
  .bsb-menu *,
  .bsb-menu-solutions *,
  .bsb-menu-account *,
  .bsb-menu-drawer *{
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
  }
}

@media (forced-colors:active){
  .bsb-menu,
  .bsb-menu-solutions,
  .bsb-menu-account,
  .offcanvas.bsb-menu-drawer{
    border-color:CanvasText;
    background:Canvas;
    color:CanvasText;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }
}
