/* Header catalogue dropdowns: dynamic direct product subcategories. */
.sb-site-header .sb-primary-nav .sb-menu--dropdown-ready{
  align-items:center;
  gap:8px!important;
}

.sb-menu-item-has-dropdown{
  position:relative;
  display:flex;
  align-items:center;
}

.sb-menu-parent-row{
  display:flex;
  align-items:center;
  min-width:0;
}

.sb-menu-parent-link{
  white-space:nowrap;
}

.sb-submenu-toggle{
  position:relative;
  z-index:2;
  display:inline-grid;
  place-items:center;
  flex:0 0 22px;
  width:22px;
  height:32px;
  margin:0 0 0 2px;
  padding:0;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#087aa6;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}

.sb-submenu-toggle:hover,
.sb-submenu-toggle:focus-visible{
  background:rgba(84,215,255,.13);
  color:#045e80;
  outline:none;
}

.sb-submenu-toggle__chevron{
  width:7px;
  height:7px;
  border-right:1.7px solid currentColor;
  border-bottom:1.7px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
  transition:transform .2s ease;
}

.sb-menu-item-has-dropdown.is-submenu-open .sb-submenu-toggle__chevron{
  transform:translateY(2px) rotate(225deg);
}

.sb-submenu{
  list-style:none;
  margin:0;
  padding:9px;
}

.sb-submenu a{
  color:#173b4b;
  text-decoration:none;
  font-weight:680;
}

.sb-submenu a::after{
  display:none!important;
  content:none!important;
}

.sb-submenu-item.is-current>a{
  color:#087aa6;
  background:rgba(84,215,255,.10);
}

@media(min-width:901px){
  .sb-submenu{
    position:absolute;
    z-index:120;
    top:calc(100% - 8px);
    left:50%;
    width:min(330px,calc(100vw - 32px));
    max-height:min(64vh,570px);
    overflow-y:auto;
    overscroll-behavior:contain;
    border:1px solid rgba(8,122,166,.16);
    border-radius:16px;
    background:rgba(255,255,255,.985);
    box-shadow:0 22px 54px rgba(16,38,49,.16),0 0 0 1px rgba(84,215,255,.04);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate(-50%,10px);
    transform-origin:50% 0;
    transition:opacity .18s ease,transform .2s ease,visibility .18s ease;
    scrollbar-width:thin;
    scrollbar-color:rgba(8,122,166,.30) transparent;
  }

  .sb-menu-item-has-dropdown:nth-last-child(2)>.sb-submenu{
    left:auto;
    right:0;
    transform:translate(0,10px);
  }

  .sb-menu-item-has-dropdown:hover>.sb-submenu,
  .sb-menu-item-has-dropdown:focus-within>.sb-submenu,
  .sb-menu-item-has-dropdown.is-submenu-open>.sb-submenu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate(-50%,0);
  }

  .sb-menu-item-has-dropdown:nth-last-child(2):hover>.sb-submenu,
  .sb-menu-item-has-dropdown:nth-last-child(2):focus-within>.sb-submenu,
  .sb-menu-item-has-dropdown:nth-last-child(2).is-submenu-open>.sb-submenu{
    transform:translate(0,0);
  }

  .sb-submenu::before{
    content:"";
    position:absolute;
    left:50%;
    top:-5px;
    width:10px;
    height:10px;
    border-left:1px solid rgba(8,122,166,.16);
    border-top:1px solid rgba(8,122,166,.16);
    background:#fff;
    transform:translateX(-50%) rotate(45deg);
  }

  .sb-menu-item-has-dropdown:nth-last-child(2)>.sb-submenu::before{
    left:auto;
    right:28px;
    transform:rotate(45deg);
  }

  .sb-submenu-item{
    position:relative;
    z-index:1;
  }

  .sb-submenu-item>a{
    display:block;
    padding:10px 12px;
    border-radius:10px;
    font-size:.91rem;
    line-height:1.28;
    transition:background .16s ease,color .16s ease,transform .16s ease;
  }

  .sb-submenu-item>a:hover,
  .sb-submenu-item>a:focus-visible{
    color:#046f98;
    background:linear-gradient(90deg,rgba(84,215,255,.13),rgba(234,248,252,.72));
    transform:translateX(2px);
    outline:none;
  }
}

@media(max-width:900px){
  .sb-primary-nav{
    max-height:calc(100vh - 76px);
    overflow-y:auto;
    overscroll-behavior:contain;
  }

  .sb-site-header .sb-primary-nav .sb-menu--dropdown-ready{
    display:grid;
    gap:4px!important;
  }

  .sb-menu-item-has-dropdown{
    display:block;
  }

  .sb-menu-parent-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) 42px;
    align-items:center;
  }

  .sb-menu-parent-link{
    min-width:0;
    white-space:normal;
  }

  .sb-submenu-toggle{
    width:40px;
    height:40px;
    margin:0;
    justify-self:end;
    border:1px solid rgba(8,122,166,.12);
    background:rgba(234,248,252,.55);
  }

  .sb-submenu{
    display:none;
    position:static;
    width:auto;
    max-height:none;
    margin:0 0 7px 8px;
    padding:3px 0 4px 13px;
    border:0;
    border-left:2px solid rgba(84,215,255,.50);
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }

  .sb-menu-item-has-dropdown.is-submenu-open>.sb-submenu{
    display:grid;
    gap:1px;
  }

  .sb-submenu-item>a{
    display:block;
    padding:8px 10px;
    border-radius:8px;
    font-size:.91rem;
    line-height:1.35;
  }

  .sb-submenu-item>a:hover,
  .sb-submenu-item>a:focus-visible{
    background:rgba(84,215,255,.10);
    color:#046f98;
    outline:none;
  }
}

@media(prefers-reduced-motion:reduce){
  .sb-submenu,
  .sb-submenu-toggle,
  .sb-submenu-toggle__chevron,
  .sb-submenu-item>a{
    transition:none!important;
  }
}
