/* STLBEAST V182 — FINISHED HEADER POLISH LOCK
   Purpose: keep the V181 safe deep-lock approach, then refine the header so it feels finished.
   Scope: public main-site header/footer logo presentation only. No product/checkout/member/admin/Hub logic. */
:root{
  --stlb182-black:#020813;
  --stlb182-navy:#061425;
  --stlb182-cyan:#20d9ff;
  --stlb182-blue:#1494ff;
  --stlb182-purple:#8d55ff;
  --stlb182-ink:#dff4ff;
}

/* Header container: wider, cleaner, and never clipped. */
.v114-nav.stlb147-premium-nav,
header.nav.stlb159-nav,
header.stlb125-nav,
.sb-header,
.seo-nav{
  width:min(1480px,calc(100vw - 24px))!important;
  max-width:min(1480px,calc(100vw - 24px))!important;
  margin:14px auto 36px!important;
  padding:0!important;
  overflow:visible!important;
  filter:none!important;
}

.v114-nav.stlb147-premium-nav .stlb147-nav-shell,
header.nav.stlb159-nav,
header.stlb125-nav .stlb147-nav-shell,
.sb-header .sb-nav,
.seo-nav{
  display:grid!important;
  grid-template-columns:minmax(340px,475px) minmax(500px,1fr) minmax(280px,390px)!important;
  grid-template-areas:"brand nav search"!important;
  align-items:center!important;
  gap:22px!important;
  min-height:124px!important;
  padding:18px 26px!important;
  border-radius:24px!important;
  border:1px solid rgba(32,217,255,.40)!important;
  background:
    radial-gradient(circle at 50% -6px, rgba(32,217,255,.52) 0 2px, transparent 3px 17%),
    linear-gradient(90deg, rgba(2,10,19,.98), rgba(5,17,31,.98) 48%, rgba(13,8,30,.97))!important;
  box-shadow:
    0 28px 80px rgba(0,0,0,.46),
    0 0 42px rgba(32,217,255,.13),
    inset 0 0 0 1px rgba(255,255,255,.045),
    inset 0 -14px 44px rgba(32,217,255,.055)!important;
}
.v114-nav.stlb147-premium-nav .stlb147-nav-shell::before,
header.nav.stlb159-nav::before,
header.stlb125-nav .stlb147-nav-shell::before,
.sb-header .sb-nav::before,
.seo-nav::before{
  inset:10px!important;
  border-radius:18px!important;
  border-color:rgba(120,205,255,.20)!important;
  background:
    linear-gradient(90deg, rgba(32,217,255,.10), transparent 18%, transparent 78%, rgba(141,85,255,.08)),
    linear-gradient(180deg, rgba(255,255,255,.035), transparent)!important;
}

/* Logo plate: visible, finished, scaled, and not dependent on one fragile method. */
.v114-nav .stlb147-logo-frame,
header.nav .stlb159-brand,
.stlb125-nav .stlb125-brand,
.sb-header .sb-logo,
.seo-nav .logo,
header.nav > .logo{
  grid-area:brand!important;
  width:100%!important;
  max-width:475px!important;
  min-height:88px!important;
  height:88px!important;
  padding:8px 18px!important;
  border-radius:20px!important;
  border:1px solid rgba(32,217,255,.56)!important;
  background:
    url('/assets/images/brand/stlbeast-nav-logo-v181.png?v=181') center/88% auto no-repeat,
    radial-gradient(circle at 20px 20px, rgba(32,217,255,.14) 0 3px, transparent 4px) 0 0/18px 18px,
    linear-gradient(90deg, rgba(3,16,31,.99), rgba(2,8,17,.99))!important;
  box-shadow:
    0 0 34px rgba(32,217,255,.20),
    inset 0 0 0 1px rgba(255,255,255,.055),
    inset 0 -8px 25px rgba(32,217,255,.14)!important;
  opacity:1!important;
  visibility:visible!important;
  overflow:hidden!important;
}
.v114-nav .stlb147-logo-frame::before,
header.nav .stlb159-brand::before,
.stlb125-nav .stlb125-brand::before,
.sb-header .sb-logo::before,
.seo-nav .logo::before,
header.nav > .logo::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:linear-gradient(110deg, rgba(255,255,255,.06), transparent 22%, transparent 78%, rgba(32,217,255,.08))!important;
  display:block!important;
}
.v114-nav .stlb147-logo-frame::after,
header.nav .stlb159-brand::after,
.stlb125-nav .stlb125-brand::after,
.sb-header .sb-logo::after,
.seo-nav .logo::after,
header.nav > .logo::after{
  bottom:-2px!important;
  width:58px!important;
  height:4px!important;
  opacity:.9!important;
}
.v114-nav .stlb147-logo-frame > .stlb161-logo,
header.nav .stlb159-brand > .stlb161-logo,
.stlb125-nav .stlb125-brand > .stlb161-logo,
.sb-header .sb-logo > .stlb161-logo,
.seo-nav .logo > .stlb161-logo,
header.nav > .logo > .stlb161-logo{
  display:flex!important;
  width:100%!important;
  height:100%!important;
  align-items:center!important;
  justify-content:center!important;
  opacity:1!important;
  visibility:visible!important;
}
.v114-nav .stlb147-logo-frame img,
header.nav .stlb159-brand img,
.stlb125-nav .stlb125-brand img,
.sb-header .sb-logo img,
.seo-nav .logo img,
header.nav > .logo img,
.v114-nav .stlb147-logo-frame .stlb161-logo img,
header.nav .stlb159-brand .stlb161-logo img{
  display:block!important;
  width:auto!important;
  max-width:92%!important;
  height:auto!important;
  max-height:76px!important;
  object-fit:contain!important;
  opacity:1!important;
  visibility:visible!important;
  filter:drop-shadow(0 0 15px rgba(32,217,255,.36)) saturate(1.08) contrast(1.06)!important;
}

/* Nav looks like it belongs inside the bar, but does not fight the logo. */
.v114-nav .stlb147-link-row,
header.nav .navlinks,
.stlb125-nav .stlb125-links,
.sb-header .sb-menu,
.seo-nav nav{
  grid-area:nav!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:0!important;
  min-width:0!important;
  overflow:visible!important;
}
.v114-nav .stlb147-link-row a,
header.nav .navlinks a,
.stlb125-nav .stlb125-links a,
.sb-header .sb-menu a,
.seo-nav nav a{
  height:46px!important;
  min-height:46px!important;
  padding:0 18px!important;
  border-radius:0!important;
  border:0!important;
  border-left:1px solid rgba(120,205,255,.13)!important;
  background:transparent!important;
  color:rgba(240,248,255,.90)!important;
  font-size:clamp(.64rem,.66vw,.82rem)!important;
  letter-spacing:.055em!important;
  text-shadow:0 0 14px rgba(32,217,255,.10)!important;
  white-space:nowrap!important;
}
.v114-nav .stlb147-link-row a:first-child,
header.nav .navlinks a:first-child,
.stlb125-nav .stlb125-links a:first-child,
.sb-header .sb-menu a:first-child,
.seo-nav nav a:first-child{border-left:0!important;}
.v114-nav .stlb147-link-row a:hover,
header.nav .navlinks a:hover,
.stlb125-nav .stlb125-links a:hover,
.sb-header .sb-menu a:hover,
.seo-nav nav a:hover{
  color:#fff!important;
  text-shadow:0 0 18px rgba(32,217,255,.38)!important;
}
.v114-nav .stlb147-link-row a.active,
header.nav .navlinks a.active,
.stlb125-nav .stlb125-links a.active,
.sb-header .sb-menu a.active,
.seo-nav nav a.active,
.v114-nav .stlb147-link-row a[aria-current="page"],
header.nav .navlinks a[aria-current="page"]{
  min-width:86px!important;
  margin:0 8px!important;
  border:1px solid rgba(32,217,255,.70)!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,rgba(18,195,245,.95),rgba(141,85,255,.92))!important;
  color:#04101d!important;
  box-shadow:0 0 22px rgba(32,217,255,.28)!important;
}

/* Search: right-side finished input on desktop, full-width on stacked layouts. */
.v114-nav .stlb147-searchbox,
header.nav .stlb159-search,
.stlb125-nav .stlb125-search,
.sb-header .sb-nav > a[href*="search"],
.seo-nav > a[href*="search"]{
  grid-area:search!important;
  justify-self:end!important;
  width:100%!important;
  max-width:390px!important;
  height:58px!important;
  min-height:58px!important;
  border-radius:18px!important;
  border:1px solid rgba(32,217,255,.62)!important;
  background:linear-gradient(180deg,rgba(4,23,39,.93),rgba(2,12,24,.96))!important;
  box-shadow:0 0 28px rgba(32,217,255,.18), inset 0 0 20px rgba(32,217,255,.06)!important;
  color:#dff4ff!important;
}
.v114-nav .stlb147-searchicon{font-size:1.35rem!important;color:#8feeff!important;}
.v114-nav .stlb147-searchtext{font-size:.88rem!important;letter-spacing:.02em!important;color:#dff4ff!important;}

/* Desktop-but-not-ultrawide: make it a deliberate stacked premium header. */
@media(max-width:1320px){
  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    grid-template-columns:1fr!important;
    grid-template-areas:"brand" "nav" "search"!important;
    width:min(700px,100%)!important;
    min-height:0!important;
    padding:18px 18px 20px!important;
    gap:14px!important;
  }
  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    justify-self:center!important;
    width:min(440px,92vw)!important;
    height:86px!important;
    min-height:86px!important;
  }
  .v114-nav .stlb147-link-row,
  header.nav .navlinks,
  .stlb125-nav .stlb125-links,
  .sb-header .sb-menu,
  .seo-nav nav{
    justify-self:center!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(126px,1fr))!important;
    gap:8px!important;
    width:min(560px,100%)!important;
  }
  .v114-nav .stlb147-link-row a,
  header.nav .navlinks a,
  .stlb125-nav .stlb125-links a,
  .sb-header .sb-menu a,
  .seo-nav nav a{
    border:1px solid rgba(120,205,255,.13)!important;
    border-radius:999px!important;
    background:rgba(5,17,31,.52)!important;
    height:38px!important;
    min-height:38px!important;
    padding:0 9px!important;
    font-size:.60rem!important;
  }
  .v114-nav .stlb147-link-row a.active,
  header.nav .navlinks a.active,
  .stlb125-nav .stlb125-links a.active,
  .sb-header .sb-menu a.active,
  .seo-nav nav a.active{margin:0!important;}
  .v114-nav .stlb147-searchbox,
  header.nav .stlb159-search,
  .stlb125-nav .stlb125-search,
  .sb-header .sb-nav > a[href*="search"],
  .seo-nav > a[href*="search"]{
    justify-self:center!important;
    max-width:min(520px,100%)!important;
    height:48px!important;
    min-height:48px!important;
  }
}

@media(max-width:620px){
  .v114-nav.stlb147-premium-nav,
  header.nav.stlb159-nav,
  header.stlb125-nav,
  .sb-header,
  .seo-nav{width:calc(100vw - 12px)!important;margin:8px auto 18px!important;}
  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{padding:12px 10px 14px!important;border-radius:18px!important;gap:10px!important;}
  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(322px,88vw)!important;
    height:74px!important;
    min-height:74px!important;
    padding:6px 10px!important;
    background-size:90% auto,18px 18px,auto!important;
  }
  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{max-width:292px!important;max-height:62px!important;}
  .v114-nav .stlb147-link-row,
  header.nav .navlinks,
  .stlb125-nav .stlb125-links,
  .sb-header .sb-menu,
  .seo-nav nav{grid-template-columns:1fr 1fr!important;width:min(330px,100%)!important;gap:7px!important;}
  .v114-nav .stlb147-link-row a,
  header.nav .navlinks a,
  .stlb125-nav .stlb125-links a,
  .sb-header .sb-menu a,
  .seo-nav nav a{height:34px!important;min-height:34px!important;font-size:.51rem!important;letter-spacing:.04em!important;}
  .v114-nav .stlb147-searchbox,
  header.nav .stlb159-search,
  .stlb125-nav .stlb125-search,
  .sb-header .sb-nav > a[href*="search"],
  .seo-nav > a[href*="search"]{max-width:min(330px,100%)!important;height:42px!important;min-height:42px!important;}
}

/* Footer logo should remain modest, not a second giant header. */
.v114-footer .v114-logo,
footer .v114-logo{
  max-width:260px!important;
  min-height:auto!important;
  height:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.v114-footer .v114-logo img,
footer .v114-logo img{max-width:240px!important;max-height:76px!important;}


/* STLBEAST V183 — LOGO UNCROP FINAL POLISH
   Purpose: fix the visible top/bottom logo clipping without changing page content.
   Scope: public main-site header/footer logo containers only. */

:root{
  --stlb183-logo-h-desktop:108px;
  --stlb183-logo-h-stack:100px;
  --stlb183-logo-h-mobile:88px;
}

/* Let the actual logo breathe. The earlier lock worked structurally, but the plate was too shallow
   and overflow hidden clipped the glow/bottom edge. */
.v114-nav .stlb147-logo-frame,
header.nav .stlb159-brand,
.stlb125-nav .stlb125-brand,
.sb-header .sb-logo,
.seo-nav .logo,
header.nav > .logo{
  height:var(--stlb183-logo-h-desktop)!important;
  min-height:var(--stlb183-logo-h-desktop)!important;
  padding:12px 22px 14px!important;
  overflow:visible!important;
  box-sizing:border-box!important;
  background-size:88% auto,18px 18px,auto!important;
  background-position:center center,0 0,center!important;
}

/* Stop decorative pseudo-elements from masking or visually slicing the logo bottom edge. */
.v114-nav .stlb147-logo-frame::before,
header.nav .stlb159-brand::before,
.stlb125-nav .stlb125-brand::before,
.sb-header .sb-logo::before,
.seo-nav .logo::before,
header.nav > .logo::before{
  inset:-1px!important;
  opacity:.78!important;
  mix-blend-mode:normal!important;
}

.v114-nav .stlb147-logo-frame::after,
header.nav .stlb159-brand::after,
.stlb125-nav .stlb125-brand::after,
.sb-header .sb-logo::after,
.seo-nav .logo::after,
header.nav > .logo::after{
  bottom:-8px!important;
  transform:none!important;
  opacity:.75!important;
  pointer-events:none!important;
}

/* Real image is authoritative. Keep full image visible with contain sizing. */
.v114-nav .stlb147-logo-frame img,
header.nav .stlb159-brand img,
.stlb125-nav .stlb125-brand img,
.sb-header .sb-logo img,
.seo-nav .logo img,
header.nav > .logo img,
.v114-nav .stlb147-logo-frame .stlb161-logo img,
header.nav .stlb159-brand .stlb161-logo img{
  width:auto!important;
  height:auto!important;
  max-width:94%!important;
  max-height:82px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:auto!important;
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  position:relative!important;
  z-index:2!important;
}

/* Keep the logo link/wrapper from clipping children. */
.v114-nav .stlb147-logo-frame > *,
header.nav .stlb159-brand > *,
.stlb125-nav .stlb125-brand > *,
.sb-header .sb-logo > *,
.seo-nav .logo > *,
header.nav > .logo > *{
  overflow:visible!important;
}

/* The complete header shell needs enough top/bottom room for the taller logo plate. */
.v114-nav.stlb147-premium-nav .stlb147-nav-shell,
header.nav.stlb159-nav,
header.stlb125-nav .stlb147-nav-shell,
.sb-header .sb-nav,
.seo-nav{
  min-height:148px!important;
  padding-top:22px!important;
  padding-bottom:24px!important;
  overflow:visible!important;
}

/* Stacked desktop/tablet header: preserve the same spacing but keep logo fully visible. */
@media(max-width:1320px){
  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    min-height:0!important;
    padding:18px 18px 22px!important;
    gap:14px!important;
  }

  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    height:var(--stlb183-logo-h-stack)!important;
    min-height:var(--stlb183-logo-h-stack)!important;
    padding:11px 18px 14px!important;
    overflow:visible!important;
    background-size:88% auto,18px 18px,auto!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-height:76px!important;
  }
}

/* Mobile: slightly taller logo plate, no crop, nav/search remain compact underneath. */
@media(max-width:620px){
  .v114-nav.stlb147-premium-nav,
  header.nav.stlb159-nav,
  header.stlb125-nav,
  .sb-header,
  .seo-nav{
    margin:8px auto 20px!important;
    overflow:visible!important;
  }

  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    padding:14px 10px 16px!important;
    gap:10px!important;
    overflow:visible!important;
  }

  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(340px,90vw)!important;
    height:var(--stlb183-logo-h-mobile)!important;
    min-height:var(--stlb183-logo-h-mobile)!important;
    padding:9px 12px 12px!important;
    overflow:visible!important;
    background-size:90% auto,18px 18px,auto!important;
    border-radius:19px!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:314px!important;
    max-height:68px!important;
    object-fit:contain!important;
  }
}

/* Footer logo uncrop: allow the glow and lower edge to show while keeping it modest. */
.v114-footer .v114-logo,
footer .v114-logo,
footer .stlb147-logo-frame,
footer .stlb159-brand,
footer .logo{
  overflow:visible!important;
  min-height:86px!important;
  height:auto!important;
  padding:4px 0 10px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  background:transparent!important;
  box-shadow:none!important;
}

.v114-footer .v114-logo img,
footer .v114-logo img,
footer .stlb147-logo-frame img,
footer .stlb159-brand img,
footer .logo img{
  display:block!important;
  width:auto!important;
  max-width:260px!important;
  max-height:82px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
}

/* Safety: page edges should not clip header/footer glow. */
body,
.site-shell,
.main-shell,
.page-shell{
  overflow-x:hidden!important;
}



/* STLBEAST V184 — CLEAN LOGO PLATE FINAL
   Fixes the remaining issue shown after V183:
   the logo plate was displaying both a background-logo layer and the real image,
   which created a cropped/duplicated oversized logo behind the actual logo.
   This makes the real image the only brand mark and gives it a clean fitted plate. */

.v114-nav .stlb147-logo-frame,
header.nav .stlb159-brand,
.stlb125-nav .stlb125-brand,
.sb-header .sb-logo,
.seo-nav .logo,
header.nav > .logo{
  background:
    radial-gradient(circle at 22px 22px, rgba(32,217,255,.13) 0 3px, transparent 4px) 0 0/18px 18px,
    linear-gradient(90deg, rgba(3,18,32,.98), rgba(1,8,16,.98) 52%, rgba(4,20,34,.96))!important;
  width:min(560px,92vw)!important;
  max-width:560px!important;
  height:118px!important;
  min-height:118px!important;
  padding:18px 32px 20px!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}

/* Remove duplicated/cropped pseudo/background visual noise over the brand area. */
.v114-nav .stlb147-logo-frame::before,
header.nav .stlb159-brand::before,
.stlb125-nav .stlb125-brand::before,
.sb-header .sb-logo::before,
.seo-nav .logo::before,
header.nav > .logo::before{
  background:
    linear-gradient(110deg, rgba(255,255,255,.05), transparent 26%, transparent 75%, rgba(32,217,255,.06))!important;
  opacity:.55!important;
}

.v114-nav .stlb147-logo-frame::after,
header.nav .stlb159-brand::after,
.stlb125-nav .stlb125-brand::after,
.sb-header .sb-logo::after,
.seo-nav .logo::after,
header.nav > .logo::after{
  bottom:-10px!important;
}

/* The actual image is the final logo. Never crop it, never cover it. */
.v114-nav .stlb147-logo-frame img,
header.nav .stlb159-brand img,
.stlb125-nav .stlb125-brand img,
.sb-header .sb-logo img,
.seo-nav .logo img,
header.nav > .logo img,
.v114-nav .stlb147-logo-frame .stlb161-logo img,
header.nav .stlb159-brand .stlb161-logo img{
  display:block!important;
  width:100%!important;
  max-width:440px!important;
  height:auto!important;
  max-height:82px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0 auto!important;
  position:relative!important;
  z-index:3!important;
  background:transparent!important;
}

/* If the logo is wrapped by an inline/text helper, keep the wrapper centered and unclipped. */
.v114-nav .stlb147-logo-frame .stlb161-logo,
header.nav .stlb159-brand .stlb161-logo,
.stlb125-nav .stlb125-brand .stlb161-logo,
.sb-header .sb-logo .stlb161-logo,
.seo-nav .logo .stlb161-logo,
header.nav > .logo .stlb161-logo{
  width:100%!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}

/* Header shell gets matching breathing room for the cleaner larger plate. */
.v114-nav.stlb147-premium-nav .stlb147-nav-shell,
header.nav.stlb159-nav,
header.stlb125-nav .stlb147-nav-shell,
.sb-header .sb-nav,
.seo-nav{
  padding-top:26px!important;
  padding-bottom:28px!important;
  gap:18px!important;
}

/* Tablet/stacked layouts */
@media(max-width:1320px){
  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(520px,92vw)!important;
    max-width:520px!important;
    height:112px!important;
    min-height:112px!important;
    padding:17px 28px 19px!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:420px!important;
    max-height:78px!important;
  }
}

/* Mobile */
@media(max-width:620px){
  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(350px,90vw)!important;
    max-width:350px!important;
    height:96px!important;
    min-height:96px!important;
    padding:14px 20px 16px!important;
    border-radius:20px!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:300px!important;
    max-height:66px!important;
  }
}

/* Footer: keep only the real image, no cropped background logo. */
.v114-footer .v114-logo,
footer .v114-logo,
footer .stlb147-logo-frame,
footer .stlb159-brand,
footer .logo{
  background:transparent!important;
  overflow:visible!important;
}

.v114-footer .v114-logo img,
footer .v114-logo img,
footer .stlb147-logo-frame img,
footer .stlb159-brand img,
footer .logo img{
  width:auto!important;
  max-width:260px!important;
  max-height:82px!important;
  object-fit:contain!important;
}


/* STLBEAST V185 — LOGO PLATE FINISHED FIT
   Purpose: the logo is now stable but too small inside an oversized empty plate.
   This pass makes the logo feel incorporated without touching the rest of the site. */

/* Make the logo plate match the actual banner proportions more closely. */
.v114-nav .stlb147-logo-frame,
header.nav .stlb159-brand,
.stlb125-nav .stlb125-brand,
.sb-header .sb-logo,
.seo-nav .logo,
header.nav > .logo{
  width:min(500px,86vw)!important;
  max-width:500px!important;
  height:112px!important;
  min-height:112px!important;
  padding:10px 20px 12px!important;
  border-radius:24px!important;
  overflow:visible!important;
  background:
    radial-gradient(circle at 22px 22px, rgba(32,217,255,.12) 0 3px, transparent 4px) 0 0/18px 18px,
    linear-gradient(90deg, rgba(3,18,32,.99), rgba(1,8,16,.99) 52%, rgba(5,22,36,.97))!important;
}

/* Larger real logo, still contained. */
.v114-nav .stlb147-logo-frame img,
header.nav .stlb159-brand img,
.stlb125-nav .stlb125-brand img,
.sb-header .sb-logo img,
.seo-nav .logo img,
header.nav > .logo img,
.v114-nav .stlb147-logo-frame .stlb161-logo img,
header.nav .stlb159-brand .stlb161-logo img{
  width:100%!important;
  max-width:455px!important;
  height:auto!important;
  max-height:92px!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:scale(1.08)!important;
  transform-origin:center!important;
  filter:drop-shadow(0 0 18px rgba(32,217,255,.42)) saturate(1.12) contrast(1.08)!important;
}

/* Tighten the decorative under-glow so it doesn't look like a random divider. */
.v114-nav .stlb147-logo-frame::after,
header.nav .stlb159-brand::after,
.stlb125-nav .stlb125-brand::after,
.sb-header .sb-logo::after,
.seo-nav .logo::after,
header.nav > .logo::after{
  width:86px!important;
  height:5px!important;
  bottom:-12px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg, transparent, rgba(32,217,255,.92), transparent)!important;
  box-shadow:0 0 18px rgba(32,217,255,.55)!important;
}

/* Header container breathes, but does not become huge. */
.v114-nav.stlb147-premium-nav .stlb147-nav-shell,
header.nav.stlb159-nav,
header.stlb125-nav .stlb147-nav-shell,
.sb-header .sb-nav,
.seo-nav{
  padding-top:22px!important;
  padding-bottom:24px!important;
  gap:16px!important;
}

/* Tablet / stacked */
@media(max-width:1320px){
  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(470px,88vw)!important;
    max-width:470px!important;
    height:106px!important;
    min-height:106px!important;
    padding:10px 18px 12px!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:430px!important;
    max-height:88px!important;
    transform:scale(1.07)!important;
  }
}

/* Mobile */
@media(max-width:620px){
  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(342px,90vw)!important;
    max-width:342px!important;
    height:94px!important;
    min-height:94px!important;
    padding:9px 16px 11px!important;
    border-radius:20px!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:310px!important;
    max-height:70px!important;
    transform:scale(1.06)!important;
  }

  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    gap:11px!important;
  }
}

/* Footer logo: keep it crisp, not oversized. */
.v114-footer .v114-logo img,
footer .v114-logo img,
footer .stlb147-logo-frame img,
footer .stlb159-brand img,
footer .logo img{
  max-width:260px!important;
  max-height:78px!important;
  transform:none!important;
}


/* STLBEAST V186 — DEEP LOGO HEADER FINISH
   Deep fix after V185: stop using a large empty decorative logo plate.
   The logo itself becomes the visual plate, sized with a close-fit transparent canvas.
   Page content, products, checkout, membership, admin and Hub are untouched. */

/* Header frame: keep premium shell, but reduce wasted vertical air around logo. */
.v114-nav.stlb147-premium-nav .stlb147-nav-shell,
header.nav.stlb159-nav,
header.stlb125-nav .stlb147-nav-shell,
.sb-header .sb-nav,
.seo-nav{
  padding-top:18px!important;
  padding-bottom:22px!important;
  gap:14px!important;
  overflow:visible!important;
}

/* Logo zone: no duplicate plate, no background logo, no big empty rounded box.
   The logo graphic is the badge. */
.v114-nav .stlb147-logo-frame,
header.nav .stlb159-brand,
.stlb125-nav .stlb125-brand,
.sb-header .sb-logo,
.seo-nav .logo,
header.nav > .logo{
  width:min(520px,88vw)!important;
  max-width:520px!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:486 / 150!important;
  padding:0!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:0 0 36px rgba(32,217,255,.20)!important;
}

/* Remove logo-area decorative overlays that were causing boxes, slices, or duplicate layers. */
.v114-nav .stlb147-logo-frame::before,
header.nav .stlb159-brand::before,
.stlb125-nav .stlb125-brand::before,
.sb-header .sb-logo::before,
.seo-nav .logo::before,
header.nav > .logo::before,
.v114-nav .stlb147-logo-frame::after,
header.nav .stlb159-brand::after,
.stlb125-nav .stlb125-brand::after,
.sb-header .sb-logo::after,
.seo-nav .logo::after,
header.nav > .logo::after{
  display:none!important;
  content:none!important;
}

/* Real logo image: final authoritative mark. Use the V186 transparent padded version as backup. */
.v114-nav .stlb147-logo-frame,
header.nav .stlb159-brand,
.stlb125-nav .stlb125-brand,
.sb-header .sb-logo,
.seo-nav .logo,
header.nav > .logo{
  background-image:url('/assets/images/brand/stlbeast-header-logo-v186.png?v=186')!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
}

/* If there is an img inside, show it. If the image path fails, the CSS background above still shows. */
.v114-nav .stlb147-logo-frame img,
header.nav .stlb159-brand img,
.stlb125-nav .stlb125-brand img,
.sb-header .sb-logo img,
.seo-nav .logo img,
header.nav > .logo img,
.v114-nav .stlb147-logo-frame .stlb161-logo img,
header.nav .stlb159-brand .stlb161-logo img{
  display:block!important;
  width:100%!important;
  max-width:520px!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  margin:0 auto!important;
  opacity:1!important;
  visibility:visible!important;
  position:relative!important;
  z-index:4!important;
  filter:drop-shadow(0 0 22px rgba(32,217,255,.45)) saturate(1.12) contrast(1.08)!important;
}

/* Wrapper helpers must not make a second cropped box. */
.v114-nav .stlb147-logo-frame .stlb161-logo,
header.nav .stlb159-brand .stlb161-logo,
.stlb125-nav .stlb125-brand .stlb161-logo,
.sb-header .sb-logo .stlb161-logo,
.seo-nav .logo .stlb161-logo,
header.nav > .logo .stlb161-logo{
  width:100%!important;
  height:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  background:transparent!important;
}

/* Stacked tablet/medium screens: polished, not huge. */
@media(max-width:1320px){
  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    padding-top:16px!important;
    padding-bottom:20px!important;
    gap:12px!important;
  }

  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(500px,88vw)!important;
    max-width:500px!important;
    aspect-ratio:486 / 150!important;
    box-shadow:0 0 32px rgba(32,217,255,.18)!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:500px!important;
  }
}

/* Mobile: logo fills the brand area without a giant empty plate. */
@media(max-width:620px){
  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    padding-top:12px!important;
    padding-bottom:14px!important;
    gap:9px!important;
  }

  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(340px,90vw)!important;
    max-width:340px!important;
    aspect-ratio:486 / 150!important;
    box-shadow:0 0 26px rgba(32,217,255,.20)!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:340px!important;
  }

  /* Navigation stays clean under the logo. */
  .v114-nav .stlb147-link-row,
  header.nav .navlinks,
  .stlb125-nav .stlb125-links,
  .sb-header .sb-menu,
  .seo-nav nav{
    margin-top:4px!important;
  }
}

/* Footer logo follows same clean principle but remains small. */
.v114-footer .v114-logo,
footer .v114-logo,
footer .stlb147-logo-frame,
footer .stlb159-brand,
footer .logo{
  background:none!important;
  box-shadow:none!important;
  border:0!important;
  width:auto!important;
  max-width:300px!important;
  min-height:0!important;
  padding:0!important;
  overflow:visible!important;
}

.v114-footer .v114-logo img,
footer .v114-logo img,
footer .stlb147-logo-frame img,
footer .stlb159-brand img,
footer .logo img{
  display:block!important;
  width:auto!important;
  max-width:280px!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  transform:none!important;
}


/* STLBEAST V187 — REAL LOGO ONLY FINAL
   Deep correction after V186 screenshot:
   V186 intentionally used a backup CSS background logo. On the live site it renders behind
   the real img, creating a duplicated oversized/cropped logo. This final layer removes
   every CSS background-logo method and uses only the actual image element. */

/* Brand wrapper: no background image, no duplicate logo layer, no cropped behind-image. */
.v114-nav .stlb147-logo-frame,
header.nav .stlb159-brand,
.stlb125-nav .stlb125-brand,
.sb-header .sb-logo,
.seo-nav .logo,
header.nav > .logo{
  background-image:none!important;
  background:none!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:0 0 28px rgba(32,217,255,.16)!important;
  width:min(520px,88vw)!important;
  max-width:520px!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  padding:0!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}

/* Absolutely no decorative pseudo-layers in the logo area. */
.v114-nav .stlb147-logo-frame::before,
header.nav .stlb159-brand::before,
.stlb125-nav .stlb125-brand::before,
.sb-header .sb-logo::before,
.seo-nav .logo::before,
header.nav > .logo::before,
.v114-nav .stlb147-logo-frame::after,
header.nav .stlb159-brand::after,
.stlb125-nav .stlb125-brand::after,
.sb-header .sb-logo::after,
.seo-nav .logo::after,
header.nav > .logo::after{
  display:none!important;
  content:none!important;
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Real image is the only visible mark. */
.v114-nav .stlb147-logo-frame img,
header.nav .stlb159-brand img,
.stlb125-nav .stlb125-brand img,
.sb-header .sb-logo img,
.seo-nav .logo img,
header.nav > .logo img,
.v114-nav .stlb147-logo-frame .stlb161-logo img,
header.nav .stlb159-brand .stlb161-logo img{
  display:block!important;
  width:100%!important;
  max-width:520px!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  margin:0 auto!important;
  opacity:1!important;
  visibility:visible!important;
  position:relative!important;
  z-index:10!important;
  background:transparent!important;
  filter:drop-shadow(0 0 18px rgba(32,217,255,.38)) saturate(1.10) contrast(1.06)!important;
}

/* Any inner logo wrappers must not create their own plate. */
.v114-nav .stlb147-logo-frame .stlb161-logo,
header.nav .stlb159-brand .stlb161-logo,
.stlb125-nav .stlb125-brand .stlb161-logo,
.sb-header .sb-logo .stlb161-logo,
.seo-nav .logo .stlb161-logo,
header.nav > .logo .stlb161-logo{
  display:flex!important;
  width:100%!important;
  height:auto!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  background:none!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}

/* Header shell remains premium but must not visually mask the logo. */
.v114-nav.stlb147-premium-nav .stlb147-nav-shell,
header.nav.stlb159-nav,
header.stlb125-nav .stlb147-nav-shell,
.sb-header .sb-nav,
.seo-nav{
  overflow:visible!important;
  padding-top:18px!important;
  padding-bottom:22px!important;
}

/* Tablet */
@media(max-width:1320px){
  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(500px,88vw)!important;
    max-width:500px!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:500px!important;
  }
}

/* Mobile */
@media(max-width:620px){
  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(340px,90vw)!important;
    max-width:340px!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:340px!important;
  }
}

/* Footer: real image only. */
.v114-footer .v114-logo,
footer .v114-logo,
footer .stlb147-logo-frame,
footer .stlb159-brand,
footer .logo{
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
  border:0!important;
  overflow:visible!important;
}

.v114-footer .v114-logo::before,
footer .v114-logo::before,
footer .stlb147-logo-frame::before,
footer .stlb159-brand::before,
footer .logo::before,
.v114-footer .v114-logo::after,
footer .v114-logo::after,
footer .stlb147-logo-frame::after,
footer .stlb159-brand::after,
footer .logo::after{
  display:none!important;
  content:none!important;
}

.v114-footer .v114-logo img,
footer .v114-logo img,
footer .stlb147-logo-frame img,
footer .stlb159-brand img,
footer .logo img{
  display:block!important;
  width:auto!important;
  max-width:280px!important;
  height:auto!important;
  object-fit:contain!important;
  transform:none!important;
}


/* STLBEAST V188 — LOGO SCALE + SPACING FINAL
   Fix after V187 screenshot:
   real logo is finally the only logo, but it is too tall and overlaps the nav row.
   This locks the brand mark to a finished banner size and reserves enough vertical spacing. */

/* Header shell: give logo/nav/search their own rows and prevent overlap. */
.v114-nav.stlb147-premium-nav .stlb147-nav-shell,
header.nav.stlb159-nav,
header.stlb125-nav .stlb147-nav-shell,
.sb-header .sb-nav,
.seo-nav{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-areas:"brand" "nav" "search"!important;
  justify-items:center!important;
  align-items:center!important;
  gap:16px!important;
  padding:22px 18px 24px!important;
  overflow:visible!important;
}

/* Logo frame: exact reserved box, no oversized real-image bleed. */
.v114-nav .stlb147-logo-frame,
header.nav .stlb159-brand,
.stlb125-nav .stlb125-brand,
.sb-header .sb-logo,
.seo-nav .logo,
header.nav > .logo{
  grid-area:brand!important;
  width:min(470px,82vw)!important;
  max-width:470px!important;
  height:116px!important;
  min-height:116px!important;
  max-height:116px!important;
  padding:0!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:none!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:0 0 24px rgba(32,217,255,.16)!important;
}

/* The actual logo image must fit INSIDE the reserved box. */
.v114-nav .stlb147-logo-frame img,
header.nav .stlb159-brand img,
.stlb125-nav .stlb125-brand img,
.sb-header .sb-logo img,
.seo-nav .logo img,
header.nav > .logo img,
.v114-nav .stlb147-logo-frame .stlb161-logo img,
header.nav .stlb159-brand .stlb161-logo img{
  display:block!important;
  width:100%!important;
  max-width:470px!important;
  height:auto!important;
  max-height:108px!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  margin:0 auto!important;
  position:relative!important;
  z-index:5!important;
  opacity:1!important;
  visibility:visible!important;
  filter:drop-shadow(0 0 16px rgba(32,217,255,.34)) saturate(1.08) contrast(1.05)!important;
}

/* Inner wrappers cannot exceed the reserved logo row. */
.v114-nav .stlb147-logo-frame .stlb161-logo,
header.nav .stlb159-brand .stlb161-logo,
.stlb125-nav .stlb125-brand .stlb161-logo,
.sb-header .sb-logo .stlb161-logo,
.seo-nav .logo .stlb161-logo,
header.nav > .logo .stlb161-logo{
  width:100%!important;
  max-width:470px!important;
  height:116px!important;
  max-height:116px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}

/* Nav row gets clear spacing below logo. */
.v114-nav .stlb147-link-row,
header.nav .navlinks,
.stlb125-nav .stlb125-links,
.sb-header .sb-menu,
.seo-nav nav{
  grid-area:nav!important;
  margin:0!important;
  width:min(760px,100%)!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(150px,1fr))!important;
  gap:10px 14px!important;
  justify-items:stretch!important;
  align-items:center!important;
}

.v114-nav .stlb147-link-row a,
header.nav .navlinks a,
.stlb125-nav .stlb125-links a,
.sb-header .sb-menu a,
.seo-nav nav a{
  height:44px!important;
  min-height:44px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 14px!important;
  border-radius:999px!important;
  border:1px solid rgba(120,205,255,.14)!important;
  background:rgba(5,17,31,.54)!important;
  font-size:.72rem!important;
  letter-spacing:.075em!important;
  line-height:1!important;
  white-space:nowrap!important;
}

/* Search row stays below nav, never over logo/nav. */
.v114-nav .stlb147-searchbox,
header.nav .stlb159-search,
.stlb125-nav .stlb125-search,
.sb-header .sb-nav > a[href*="search"],
.seo-nav > a[href*="search"]{
  grid-area:search!important;
  justify-self:center!important;
  width:min(700px,92%)!important;
  max-width:700px!important;
  height:58px!important;
  min-height:58px!important;
  margin-top:2px!important;
}

/* Wide desktop can still use the same stable stacked header because it is now clean and premium. */
@media(min-width:1321px){
  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    width:min(1250px,calc(100vw - 32px))!important;
    max-width:1250px!important;
  }
}

/* Tablet */
@media(max-width:900px){
  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(430px,84vw)!important;
    max-width:430px!important;
    height:106px!important;
    min-height:106px!important;
    max-height:106px!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:430px!important;
    max-height:98px!important;
  }

  .v114-nav .stlb147-logo-frame .stlb161-logo,
  header.nav .stlb159-brand .stlb161-logo,
  .stlb125-nav .stlb125-brand .stlb161-logo,
  .sb-header .sb-logo .stlb161-logo,
  .seo-nav .logo .stlb161-logo,
  header.nav > .logo .stlb161-logo{
    max-width:430px!important;
    height:106px!important;
    max-height:106px!important;
  }

  .v114-nav .stlb147-link-row,
  header.nav .navlinks,
  .stlb125-nav .stlb125-links,
  .sb-header .sb-menu,
  .seo-nav nav{
    width:min(620px,100%)!important;
    grid-template-columns:repeat(3,minmax(120px,1fr))!important;
    gap:8px!important;
  }

  .v114-nav .stlb147-link-row a,
  header.nav .navlinks a,
  .stlb125-nav .stlb125-links a,
  .sb-header .sb-menu a,
  .seo-nav nav a{
    font-size:.60rem!important;
    height:38px!important;
    min-height:38px!important;
  }
}

/* Mobile */
@media(max-width:620px){
  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    gap:10px!important;
    padding:14px 10px 16px!important;
  }

  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(320px,88vw)!important;
    max-width:320px!important;
    height:82px!important;
    min-height:82px!important;
    max-height:82px!important;
    overflow:hidden!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:320px!important;
    max-height:76px!important;
  }

  .v114-nav .stlb147-logo-frame .stlb161-logo,
  header.nav .stlb159-brand .stlb161-logo,
  .stlb125-nav .stlb125-brand .stlb161-logo,
  .sb-header .sb-logo .stlb161-logo,
  .seo-nav .logo .stlb161-logo,
  header.nav > .logo .stlb161-logo{
    max-width:320px!important;
    height:82px!important;
    max-height:82px!important;
  }

  .v114-nav .stlb147-link-row,
  header.nav .navlinks,
  .stlb125-nav .stlb125-links,
  .sb-header .sb-menu,
  .seo-nav nav{
    width:min(330px,100%)!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }

  .v114-nav .stlb147-link-row a,
  header.nav .navlinks a,
  .stlb125-nav .stlb125-links a,
  .sb-header .sb-menu a,
  .seo-nav nav a{
    height:34px!important;
    min-height:34px!important;
    font-size:.51rem!important;
    letter-spacing:.045em!important;
  }

  .v114-nav .stlb147-searchbox,
  header.nav .stlb159-search,
  .stlb125-nav .stlb125-search,
  .sb-header .sb-nav > a[href*="search"],
  .seo-nav > a[href*="search"]{
    width:min(330px,100%)!important;
    height:44px!important;
    min-height:44px!important;
  }
}

/* Footer logo remains unaffected by header scaling. */
.v114-footer .v114-logo img,
footer .v114-logo img,
footer .stlb147-logo-frame img,
footer .stlb159-brand img,
footer .logo img{
  max-width:260px!important;
  max-height:76px!important;
}


/* STLBEAST V189 — WIDE INTEGRATED HEADER FINAL
   Purpose: implement the approved final direction:
   - logo integrated confidently into a wide top bar
   - nav sits beside the logo on large screens
   - search sits below as a full-width premium bar
   - no cropped logo, no duplicate logo backgrounds, no giant empty plate
   Scope: public main-site header/footer presentation only. */

/* Main header shell: wide premium cyber panel. */
.v114-nav.stlb147-premium-nav,
header.nav.stlb159-nav,
header.stlb125-nav,
.sb-header,
.seo-nav{
  width:min(1580px,calc(100vw - 24px))!important;
  max-width:min(1580px,calc(100vw - 24px))!important;
  margin:14px auto 34px!important;
  overflow:visible!important;
}

.v114-nav.stlb147-premium-nav .stlb147-nav-shell,
header.nav.stlb159-nav,
header.stlb125-nav .stlb147-nav-shell,
.sb-header .sb-nav,
.seo-nav{
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(420px,640px) minmax(560px,1fr)!important;
  grid-template-areas:
    "brand nav"
    "search search"!important;
  align-items:center!important;
  justify-items:stretch!important;
  gap:18px 24px!important;
  padding:22px 28px 26px!important;
  min-height:0!important;
  overflow:visible!important;
  border-radius:28px!important;
  border:1px solid rgba(32,217,255,.42)!important;
  background:
    radial-gradient(circle at 7% 40%, rgba(32,217,255,.18), transparent 28%),
    radial-gradient(circle at 96% 50%, rgba(190,62,255,.18), transparent 26%),
    linear-gradient(90deg, rgba(3,14,27,.98), rgba(4,12,25,.98) 58%, rgba(18,9,34,.97))!important;
  box-shadow:
    0 32px 92px rgba(0,0,0,.50),
    0 0 42px rgba(32,217,255,.15),
    inset 0 0 0 1px rgba(255,255,255,.045),
    inset 0 -16px 54px rgba(32,217,255,.055)!important;
}

/* Keep decorative shell treatment subtle only on the panel, not on the logo. */
.v114-nav.stlb147-premium-nav .stlb147-nav-shell::before,
header.nav.stlb159-nav::before,
header.stlb125-nav .stlb147-nav-shell::before,
.sb-header .sb-nav::before,
.seo-nav::before{
  content:""!important;
  position:absolute!important;
  inset:10px!important;
  border-radius:22px!important;
  pointer-events:none!important;
  display:block!important;
  border:1px solid rgba(120,205,255,.16)!important;
  background:
    linear-gradient(90deg, rgba(32,217,255,.08), transparent 22%, transparent 78%, rgba(141,85,255,.09)),
    linear-gradient(180deg, rgba(255,255,255,.035), transparent 45%)!important;
  z-index:0!important;
}

.v114-nav.stlb147-premium-nav .stlb147-nav-shell > *,
header.nav.stlb159-nav > *,
header.stlb125-nav .stlb147-nav-shell > *,
.sb-header .sb-nav > *,
.seo-nav > *{
  position:relative!important;
  z-index:2!important;
}

/* Brand: real logo only, flush integrated into the left of the cyber bar. */
.v114-nav .stlb147-logo-frame,
header.nav .stlb159-brand,
.stlb125-nav .stlb125-brand,
.sb-header .sb-logo,
.seo-nav .logo,
header.nav > .logo{
  grid-area:brand!important;
  justify-self:start!important;
  align-self:center!important;
  width:100%!important;
  max-width:640px!important;
  height:138px!important;
  min-height:138px!important;
  max-height:138px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* No duplicate logo layers. */
.v114-nav .stlb147-logo-frame::before,
header.nav .stlb159-brand::before,
.stlb125-nav .stlb125-brand::before,
.sb-header .sb-logo::before,
.seo-nav .logo::before,
header.nav > .logo::before,
.v114-nav .stlb147-logo-frame::after,
header.nav .stlb159-brand::after,
.stlb125-nav .stlb125-brand::after,
.sb-header .sb-logo::after,
.seo-nav .logo::after,
header.nav > .logo::after{
  display:none!important;
  content:none!important;
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Real logo image fills the brand area without crop. */
.v114-nav .stlb147-logo-frame img,
header.nav .stlb159-brand img,
.stlb125-nav .stlb125-brand img,
.sb-header .sb-logo img,
.seo-nav .logo img,
header.nav > .logo img,
.v114-nav .stlb147-logo-frame .stlb161-logo img,
header.nav .stlb159-brand .stlb161-logo img{
  display:block!important;
  width:100%!important;
  max-width:620px!important;
  height:auto!important;
  max-height:132px!important;
  object-fit:contain!important;
  object-position:left center!important;
  transform:none!important;
  margin:0!important;
  opacity:1!important;
  visibility:visible!important;
  background:transparent!important;
  filter:drop-shadow(0 0 20px rgba(32,217,255,.36)) saturate(1.12) contrast(1.07)!important;
}

/* Logo helper wrapper must not create a box. */
.v114-nav .stlb147-logo-frame .stlb161-logo,
header.nav .stlb159-brand .stlb161-logo,
.stlb125-nav .stlb125-brand .stlb161-logo,
.sb-header .sb-logo .stlb161-logo,
.seo-nav .logo .stlb161-logo,
header.nav > .logo .stlb161-logo{
  width:100%!important;
  max-width:620px!important;
  height:138px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
}

/* Nav: integrated right-side premium icon/button row style, still using real links. */
.v114-nav .stlb147-link-row,
header.nav .navlinks,
.stlb125-nav .stlb125-links,
.sb-header .sb-menu,
.seo-nav nav{
  grid-area:nav!important;
  width:100%!important;
  max-width:860px!important;
  justify-self:end!important;
  display:grid!important;
  grid-template-columns:repeat(6,minmax(82px,1fr))!important;
  gap:0!important;
  align-items:stretch!important;
  justify-items:stretch!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  border-radius:20px!important;
  background:linear-gradient(90deg, rgba(2,10,19,.25), rgba(4,15,28,.42))!important;
  box-shadow:inset 0 -1px 0 rgba(32,217,255,.10)!important;
}

.v114-nav .stlb147-link-row a,
header.nav .navlinks a,
.stlb125-nav .stlb125-links a,
.sb-header .sb-menu a,
.seo-nav nav a{
  min-width:0!important;
  height:92px!important;
  min-height:92px!important;
  padding:12px 8px 10px!important;
  border-radius:0!important;
  border:0!important;
  border-left:1px solid rgba(120,205,255,.15)!important;
  background:transparent!important;
  color:rgba(238,248,255,.92)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  text-align:center!important;
  font-size:.68rem!important;
  line-height:1.15!important;
  letter-spacing:.062em!important;
  white-space:normal!important;
  text-shadow:0 0 12px rgba(32,217,255,.10)!important;
}

.v114-nav .stlb147-link-row a:first-child,
header.nav .navlinks a:first-child,
.stlb125-nav .stlb125-links a:first-child,
.sb-header .sb-menu a:first-child,
.seo-nav nav a:first-child{
  border-left:0!important;
}

/* Active nav state: refined underline/gradient, not oversized. */
.v114-nav .stlb147-link-row a.active,
header.nav .navlinks a.active,
.stlb125-nav .stlb125-links a.active,
.sb-header .sb-menu a.active,
.seo-nav nav a.active,
.v114-nav .stlb147-link-row a[aria-current="page"],
header.nav .navlinks a[aria-current="page"]{
  margin:0!important;
  border-radius:0!important;
  background:linear-gradient(180deg, rgba(32,217,255,.10), rgba(141,85,255,.08))!important;
  color:#fff!important;
  box-shadow:inset 0 -4px 0 rgba(32,217,255,.85), 0 0 20px rgba(32,217,255,.12)!important;
}

/* Search: full-width premium bar below logo/nav. */
.v114-nav .stlb147-searchbox,
header.nav .stlb159-search,
.stlb125-nav .stlb125-search,
.sb-header .sb-nav > a[href*="search"],
.seo-nav > a[href*="search"]{
  grid-area:search!important;
  justify-self:center!important;
  width:min(1420px,96%)!important;
  max-width:1420px!important;
  height:66px!important;
  min-height:66px!important;
  margin:2px auto 0!important;
  border-radius:22px!important;
  border:1px solid rgba(32,217,255,.72)!important;
  background:linear-gradient(180deg,rgba(4,21,36,.92),rgba(2,10,21,.98))!important;
  box-shadow:
    0 0 30px rgba(32,217,255,.20),
    inset 0 0 22px rgba(32,217,255,.07),
    inset 0 0 0 1px rgba(255,255,255,.035)!important;
  color:#dff8ff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
}

.v114-nav .stlb147-searchicon{font-size:1.45rem!important;color:#8feeff!important;}
.v114-nav .stlb147-searchtext{font-size:1.08rem!important;letter-spacing:.015em!important;color:#e9f9ff!important;font-weight:800!important;}

/* Medium/stacked: keep the same quality, but stack logo above nav to protect readability. */
@media(max-width:1180px){
  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    grid-template-columns:1fr!important;
    grid-template-areas:"brand" "nav" "search"!important;
    justify-items:center!important;
    gap:14px!important;
    padding:18px 16px 20px!important;
  }

  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    justify-self:center!important;
    width:min(620px,90vw)!important;
    max-width:620px!important;
    height:132px!important;
    min-height:132px!important;
    max-height:132px!important;
    justify-content:center!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:600px!important;
    max-height:126px!important;
    object-position:center!important;
    margin:0 auto!important;
  }

  .v114-nav .stlb147-logo-frame .stlb161-logo,
  header.nav .stlb159-brand .stlb161-logo,
  .stlb125-nav .stlb125-brand .stlb161-logo,
  .sb-header .sb-logo .stlb161-logo,
  .seo-nav .logo .stlb161-logo,
  header.nav > .logo .stlb161-logo{
    justify-content:center!important;
    height:132px!important;
    max-width:600px!important;
  }

  .v114-nav .stlb147-link-row,
  header.nav .navlinks,
  .stlb125-nav .stlb125-links,
  .sb-header .sb-menu,
  .seo-nav nav{
    max-width:780px!important;
    grid-template-columns:repeat(3,minmax(140px,1fr))!important;
    gap:8px 12px!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .v114-nav .stlb147-link-row a,
  header.nav .navlinks a,
  .stlb125-nav .stlb125-links a,
  .sb-header .sb-menu a,
  .seo-nav nav a{
    height:48px!important;
    min-height:48px!important;
    flex-direction:row!important;
    gap:8px!important;
    border:1px solid rgba(120,205,255,.16)!important;
    border-radius:999px!important;
    background:rgba(5,17,31,.58)!important;
    font-size:.66rem!important;
    white-space:nowrap!important;
  }

  .v114-nav .stlb147-link-row a.active,
  header.nav .navlinks a.active,
  .stlb125-nav .stlb125-links a.active,
  .sb-header .sb-menu a.active,
  .seo-nav nav a.active,
  .v114-nav .stlb147-link-row a[aria-current="page"],
  header.nav .navlinks a[aria-current="page"]{
    border-radius:999px!important;
    background:linear-gradient(135deg,rgba(32,190,245,.95),rgba(141,85,255,.95))!important;
    color:#04101d!important;
    box-shadow:0 0 20px rgba(32,217,255,.22)!important;
  }

  .v114-nav .stlb147-searchbox,
  header.nav .stlb159-search,
  .stlb125-nav .stlb125-search,
  .sb-header .sb-nav > a[href*="search"],
  .seo-nav > a[href*="search"]{
    width:min(760px,94%)!important;
    height:56px!important;
    min-height:56px!important;
  }
}

/* Mobile: compact stacked header with logo filling the available width, still no crop. */
@media(max-width:620px){
  .v114-nav.stlb147-premium-nav,
  header.nav.stlb159-nav,
  header.stlb125-nav,
  .sb-header,
  .seo-nav{
    width:calc(100vw - 10px)!important;
    margin:6px auto 18px!important;
  }

  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    border-radius:20px!important;
    padding:12px 8px 14px!important;
    gap:9px!important;
  }

  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo{
    width:min(356px,92vw)!important;
    max-width:356px!important;
    height:92px!important;
    min-height:92px!important;
    max-height:92px!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img{
    max-width:356px!important;
    max-height:88px!important;
  }

  .v114-nav .stlb147-logo-frame .stlb161-logo,
  header.nav .stlb159-brand .stlb161-logo,
  .stlb125-nav .stlb125-brand .stlb161-logo,
  .sb-header .sb-logo .stlb161-logo,
  .seo-nav .logo .stlb161-logo,
  header.nav > .logo .stlb161-logo{
    height:92px!important;
    max-width:356px!important;
  }

  .v114-nav .stlb147-link-row,
  header.nav .navlinks,
  .stlb125-nav .stlb125-links,
  .sb-header .sb-menu,
  .seo-nav nav{
    width:min(336px,100%)!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }

  .v114-nav .stlb147-link-row a,
  header.nav .navlinks a,
  .stlb125-nav .stlb125-links a,
  .sb-header .sb-menu a,
  .seo-nav nav a{
    height:35px!important;
    min-height:35px!important;
    padding:0 8px!important;
    font-size:.52rem!important;
    letter-spacing:.045em!important;
  }

  .v114-nav .stlb147-searchbox,
  header.nav .stlb159-search,
  .stlb125-nav .stlb125-search,
  .sb-header .sb-nav > a[href*="search"],
  .seo-nav > a[href*="search"]{
    width:min(336px,100%)!important;
    height:44px!important;
    min-height:44px!important;
    border-radius:16px!important;
  }

  .v114-nav .stlb147-searchtext{font-size:.78rem!important;}
}

/* Footer logo: do not inherit giant header behavior. */
.v114-footer .v114-logo,
footer .v114-logo,
footer .stlb147-logo-frame,
footer .stlb159-brand,
footer .logo{
  background:none!important;
  box-shadow:none!important;
  border:0!important;
  width:auto!important;
  max-width:300px!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  overflow:visible!important;
}
.v114-footer .v114-logo img,
footer .v114-logo img,
footer .stlb147-logo-frame img,
footer .stlb159-brand img,
footer .logo img{
  width:auto!important;
  max-width:280px!important;
  height:auto!important;
  max-height:82px!important;
  object-fit:contain!important;
  transform:none!important;
}


/* STLBEAST V190 — MOBILE LOGO FILL + HEADER BALANCE FINAL
   Fix after V189 screenshot:
   The header is structurally stable, but on narrow screens the logo is still rendering too small.
   This forces the actual header logo/image wrapper to fill the mobile header width confidently
   while preserving the real-image-only/no-crop/no-duplicate-logo rules. */

/* Stronger header-only logo targeting. Avoid body/product images. */
.v114-nav :is(a,div,span)[class*="logo"],
.v114-nav :is(a,div,span)[class*="brand"],
header.nav :is(a,div,span)[class*="logo"],
header.nav :is(a,div,span)[class*="brand"],
header.stlb125-nav :is(a,div,span)[class*="logo"],
header.stlb125-nav :is(a,div,span)[class*="brand"],
.sb-header :is(a,div,span)[class*="logo"],
.sb-header :is(a,div,span)[class*="brand"],
.seo-nav :is(a,div,span)[class*="logo"],
.seo-nav :is(a,div,span)[class*="brand"]{
  background:none!important;
  background-image:none!important;
  overflow:visible!important;
}

/* Desktop / wide fallback: logo should still be confident if class names vary. */
.v114-nav img[alt*="STL"],
.v114-nav img[src*="logo"],
header.nav img[alt*="STL"],
header.nav img[src*="logo"],
header.stlb125-nav img[alt*="STL"],
header.stlb125-nav img[src*="logo"],
.sb-header img[alt*="STL"],
.sb-header img[src*="logo"],
.seo-nav img[alt*="STL"],
.seo-nav img[src*="logo"]{
  display:block!important;
  width:100%!important;
  max-width:620px!important;
  height:auto!important;
  max-height:132px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0 auto!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  filter:drop-shadow(0 0 20px rgba(32,217,255,.36)) saturate(1.12) contrast(1.07)!important;
}

/* Medium stacked layouts: remove the tiny-logo look. */
@media(max-width:1180px){
  .v114-nav :is(a,div,span)[class*="logo"],
  .v114-nav :is(a,div,span)[class*="brand"],
  header.nav :is(a,div,span)[class*="logo"],
  header.nav :is(a,div,span)[class*="brand"],
  header.stlb125-nav :is(a,div,span)[class*="logo"],
  header.stlb125-nav :is(a,div,span)[class*="brand"],
  .sb-header :is(a,div,span)[class*="logo"],
  .sb-header :is(a,div,span)[class*="brand"],
  .seo-nav :is(a,div,span)[class*="logo"],
  .seo-nav :is(a,div,span)[class*="brand"]{
    width:min(650px,94vw)!important;
    max-width:min(650px,94vw)!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
    margin:0 auto!important;
    border:0!important;
    box-shadow:none!important;
  }

  .v114-nav img[alt*="STL"],
  .v114-nav img[src*="logo"],
  header.nav img[alt*="STL"],
  header.nav img[src*="logo"],
  header.stlb125-nav img[alt*="STL"],
  header.stlb125-nav img[src*="logo"],
  .sb-header img[alt*="STL"],
  .sb-header img[src*="logo"],
  .seo-nav img[alt*="STL"],
  .seo-nav img[src*="logo"]{
    width:min(650px,94vw)!important;
    max-width:min(650px,94vw)!important;
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
  }
}

/* Phone: logo should be the obvious brand centerpiece, not a small badge. */
@media(max-width:620px){
  .v114-nav.stlb147-premium-nav .stlb147-nav-shell,
  header.nav.stlb159-nav,
  header.stlb125-nav .stlb147-nav-shell,
  .sb-header .sb-nav,
  .seo-nav{
    padding:10px 10px 14px!important;
    gap:10px!important;
  }

  .v114-nav .stlb147-logo-frame,
  header.nav .stlb159-brand,
  .stlb125-nav .stlb125-brand,
  .sb-header .sb-logo,
  .seo-nav .logo,
  header.nav > .logo,
  .v114-nav :is(a,div,span)[class*="logo"],
  .v114-nav :is(a,div,span)[class*="brand"],
  header.nav :is(a,div,span)[class*="logo"],
  header.nav :is(a,div,span)[class*="brand"],
  header.stlb125-nav :is(a,div,span)[class*="logo"],
  header.stlb125-nav :is(a,div,span)[class*="brand"],
  .sb-header :is(a,div,span)[class*="logo"],
  .sb-header :is(a,div,span)[class*="brand"],
  .seo-nav :is(a,div,span)[class*="logo"],
  .seo-nav :is(a,div,span)[class*="brand"]{
    width:min(390px,94vw)!important;
    max-width:min(390px,94vw)!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    padding:0!important;
    margin:0 auto 2px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
    background:none!important;
    background-image:none!important;
    border:0!important;
    box-shadow:none!important;
  }

  .v114-nav .stlb147-logo-frame img,
  header.nav .stlb159-brand img,
  .stlb125-nav .stlb125-brand img,
  .sb-header .sb-logo img,
  .seo-nav .logo img,
  header.nav > .logo img,
  .v114-nav img[alt*="STL"],
  .v114-nav img[src*="logo"],
  header.nav img[alt*="STL"],
  header.nav img[src*="logo"],
  header.stlb125-nav img[alt*="STL"],
  header.stlb125-nav img[src*="logo"],
  .sb-header img[alt*="STL"],
  .sb-header img[src*="logo"],
  .seo-nav img[alt*="STL"],
  .seo-nav img[src*="logo"]{
    width:min(390px,94vw)!important;
    max-width:min(390px,94vw)!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
  }

  /* Slightly bigger buttons/search to match the stronger logo. */
  .v114-nav .stlb147-link-row,
  header.nav .navlinks,
  .stlb125-nav .stlb125-links,
  .sb-header .sb-menu,
  .seo-nav nav{
    width:min(360px,100%)!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }

  .v114-nav .stlb147-link-row a,
  header.nav .navlinks a,
  .stlb125-nav .stlb125-links a,
  .sb-header .sb-menu a,
  .seo-nav nav a{
    height:37px!important;
    min-height:37px!important;
    font-size:.54rem!important;
  }

  .v114-nav .stlb147-searchbox,
  header.nav .stlb159-search,
  .stlb125-nav .stlb125-search,
  .sb-header .sb-nav > a[href*="search"],
  .seo-nav > a[href*="search"]{
    width:min(360px,100%)!important;
    height:46px!important;
    min-height:46px!important;
  }
}

/* Tiny screens */
@media(max-width:390px){
  .v114-nav img[alt*="STL"],
  .v114-nav img[src*="logo"],
  header.nav img[alt*="STL"],
  header.nav img[src*="logo"],
  header.stlb125-nav img[alt*="STL"],
  header.stlb125-nav img[src*="logo"],
  .sb-header img[alt*="STL"],
  .sb-header img[src*="logo"],
  .seo-nav img[alt*="STL"],
  .seo-nav img[src*="logo"]{
    width:min(350px,94vw)!important;
    max-width:min(350px,94vw)!important;
  }
}


/* STLBEAST V191 — DEEP HEADER RESET FINAL
   The prior patches stabilized the logo, but too many inherited logo/header rules still compete.
   This layer resets ONLY the current STLBEAST public header markup:
   .v114-nav.stlb147-premium-nav > .stlb147-nav-shell
   It rebuilds the header from predictable boxes and avoids broad logo guessing.
   Result: no crop, no duplicate logo, no overlap, less wasted space, cleaner premium layout. */

/* 0) Contain legacy header side-effects inside this one component. */
.v114-nav.stlb147-premium-nav,
.v114-nav.stlb147-premium-nav *{
  box-sizing:border-box!important;
}

.v114-nav.stlb147-premium-nav{
  width:min(1560px,calc(100vw - 18px))!important;
  max-width:min(1560px,calc(100vw - 18px))!important;
  margin:12px auto 34px!important;
  padding:0!important;
  overflow:visible!important;
  isolation:isolate!important;
}

/* 1) Final outer cyber panel. */
.v114-nav.stlb147-premium-nav > .stlb147-nav-shell{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(390px,610px) minmax(520px,1fr)!important;
  grid-template-areas:
    "brand nav"
    "search search"!important;
  align-items:center!important;
  justify-items:stretch!important;
  gap:18px 26px!important;
  min-height:0!important;
  width:100%!important;
  max-width:100%!important;
  padding:24px 30px 26px!important;
  border-radius:30px!important;
  overflow:visible!important;
  border:1px solid rgba(32,217,255,.48)!important;
  background:
    linear-gradient(90deg,rgba(4,20,32,.98),rgba(3,11,22,.98) 56%,rgba(22,10,39,.97)),
    radial-gradient(circle at 5% 42%,rgba(32,217,255,.18),transparent 28%),
    radial-gradient(circle at 96% 50%,rgba(205,65,255,.18),transparent 28%)!important;
  box-shadow:
    0 30px 90px rgba(0,0,0,.52),
    0 0 44px rgba(32,217,255,.15),
    inset 0 0 0 1px rgba(255,255,255,.045),
    inset 0 -14px 42px rgba(32,217,255,.055)!important;
}

/* Shell glow only; no logo overlays. */
.v114-nav.stlb147-premium-nav > .stlb147-nav-shell::before{
  content:""!important;
  position:absolute!important;
  inset:10px!important;
  border-radius:24px!important;
  pointer-events:none!important;
  z-index:0!important;
  display:block!important;
  border:1px solid rgba(105,213,255,.14)!important;
  background:
    linear-gradient(90deg,rgba(32,217,255,.08),transparent 25%,transparent 76%,rgba(171,85,255,.08)),
    linear-gradient(180deg,rgba(255,255,255,.03),transparent 48%)!important;
}
.v114-nav.stlb147-premium-nav > .stlb147-nav-shell > *{
  position:relative!important;
  z-index:2!important;
}

/* 2) LOGO — only the real image, in a dedicated left slot. */
.v114-nav.stlb147-premium-nav .stlb147-logo-frame{
  grid-area:brand!important;
  width:100%!important;
  max-width:610px!important;
  height:132px!important;
  min-height:132px!important;
  max-height:132px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
  line-height:0!important;
}
.v114-nav.stlb147-premium-nav .stlb147-logo-frame::before,
.v114-nav.stlb147-premium-nav .stlb147-logo-frame::after{
  display:none!important;
  content:none!important;
}

/* wrapper */
.v114-nav.stlb147-premium-nav .stlb147-logo-frame .stlb161-logo{
  width:100%!important;
  max-width:610px!important;
  height:132px!important;
  min-height:132px!important;
  max-height:132px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  line-height:0!important;
}

/* image */
.v114-nav.stlb147-premium-nav .stlb147-logo-frame img{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:126px!important;
  object-fit:contain!important;
  object-position:left center!important;
  margin:0!important;
  padding:0!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  position:relative!important;
  z-index:3!important;
  background:transparent!important;
  filter:drop-shadow(0 0 18px rgba(32,217,255,.35)) saturate(1.10) contrast(1.06)!important;
}
.v114-nav.stlb147-premium-nav .stlb161-logo-fallback{
  display:none!important;
}

/* 3) NAV — integrated right of logo on desktop. */
.v114-nav.stlb147-premium-nav .stlb147-link-row{
  grid-area:nav!important;
  justify-self:end!important;
  align-self:center!important;
  width:100%!important;
  max-width:880px!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:repeat(6,minmax(78px,1fr))!important;
  gap:0!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  background:linear-gradient(90deg,rgba(2,10,19,.22),rgba(4,15,28,.38))!important;
  border-radius:20px!important;
  box-shadow:inset 0 -1px 0 rgba(32,217,255,.12)!important;
}
.v114-nav.stlb147-premium-nav .stlb147-link-row a{
  height:94px!important;
  min-height:94px!important;
  padding:12px 8px 10px!important;
  margin:0!important;
  border:0!important;
  border-left:1px solid rgba(120,205,255,.14)!important;
  border-radius:0!important;
  background:transparent!important;
  color:rgba(236,248,255,.94)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  text-align:center!important;
  font-size:.68rem!important;
  line-height:1.15!important;
  letter-spacing:.065em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  text-shadow:0 0 12px rgba(32,217,255,.12)!important;
  box-shadow:none!important;
}
.v114-nav.stlb147-premium-nav .stlb147-link-row a:first-child{
  border-left:0!important;
}
.v114-nav.stlb147-premium-nav .stlb147-link-row a.active,
.v114-nav.stlb147-premium-nav .stlb147-link-row a[aria-current="page"]{
  color:#fff!important;
  background:linear-gradient(180deg,rgba(32,217,255,.10),rgba(141,85,255,.08))!important;
  box-shadow:inset 0 -4px 0 rgba(32,217,255,.88),0 0 20px rgba(32,217,255,.14)!important;
}

/* 4) SEARCH — premium bar below; no overlap. */
.v114-nav.stlb147-premium-nav .stlb147-searchbox{
  grid-area:search!important;
  justify-self:center!important;
  width:min(1420px,96%)!important;
  max-width:1420px!important;
  height:66px!important;
  min-height:66px!important;
  padding:0 26px!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  border-radius:22px!important;
  border:1px solid rgba(32,217,255,.74)!important;
  background:linear-gradient(180deg,rgba(4,21,36,.92),rgba(2,10,21,.98))!important;
  box-shadow:
    0 0 30px rgba(32,217,255,.20),
    inset 0 0 22px rgba(32,217,255,.07),
    inset 0 0 0 1px rgba(255,255,255,.035)!important;
  color:#dff8ff!important;
  text-decoration:none!important;
}
.v114-nav.stlb147-premium-nav .stlb147-searchicon{
  font-size:1.45rem!important;
  color:#8feeff!important;
  line-height:1!important;
}
.v114-nav.stlb147-premium-nav .stlb147-searchtext{
  font-size:1.08rem!important;
  letter-spacing:.015em!important;
  color:#e9f9ff!important;
  font-weight:900!important;
}

/* 5) Intermediate width — keep logo + nav side-by-side longer, so it doesn't become a huge stacked logo too early. */
@media(max-width:1180px) and (min-width:821px){
  .v114-nav.stlb147-premium-nav > .stlb147-nav-shell{
    grid-template-columns:minmax(330px,500px) minmax(380px,1fr)!important;
    grid-template-areas:
      "brand nav"
      "search search"!important;
    gap:14px 18px!important;
    padding:18px 18px 20px!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-logo-frame,
  .v114-nav.stlb147-premium-nav .stlb147-logo-frame .stlb161-logo{
    height:106px!important;
    min-height:106px!important;
    max-height:106px!important;
    max-width:500px!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-logo-frame img{
    max-height:102px!important;
    max-width:500px!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-link-row{
    grid-template-columns:repeat(3,minmax(120px,1fr))!important;
    gap:8px!important;
    background:transparent!important;
    box-shadow:none!important;
    max-width:560px!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-link-row a{
    height:42px!important;
    min-height:42px!important;
    flex-direction:row!important;
    gap:8px!important;
    border:1px solid rgba(120,205,255,.16)!important;
    border-radius:999px!important;
    background:rgba(5,17,31,.58)!important;
    font-size:.58rem!important;
    white-space:nowrap!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-link-row a.active,
  .v114-nav.stlb147-premium-nav .stlb147-link-row a[aria-current="page"]{
    border-radius:999px!important;
    background:linear-gradient(135deg,rgba(32,190,245,.95),rgba(141,85,255,.95))!important;
    color:#04101d!important;
    box-shadow:0 0 20px rgba(32,217,255,.22)!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-searchbox{
    height:54px!important;
    min-height:54px!important;
  }
}

/* 6) Mobile stack — compact, no crop, no overlap, no giant top image. */
@media(max-width:820px){
  .v114-nav.stlb147-premium-nav{
    width:calc(100vw - 10px)!important;
    margin:8px auto 20px!important;
  }
  .v114-nav.stlb147-premium-nav > .stlb147-nav-shell{
    grid-template-columns:1fr!important;
    grid-template-areas:"brand" "nav" "search"!important;
    justify-items:center!important;
    gap:12px!important;
    padding:14px 10px 16px!important;
    border-radius:22px!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-logo-frame,
  .v114-nav.stlb147-premium-nav .stlb147-logo-frame .stlb161-logo{
    justify-content:center!important;
    width:min(380px,92vw)!important;
    max-width:min(380px,92vw)!important;
    height:96px!important;
    min-height:96px!important;
    max-height:96px!important;
    margin:0 auto!important;
    overflow:visible!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-logo-frame img{
    width:auto!important;
    max-width:min(380px,92vw)!important;
    height:auto!important;
    max-height:92px!important;
    object-position:center!important;
    margin:0 auto!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-link-row{
    width:min(360px,100%)!important;
    max-width:360px!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-link-row a{
    height:37px!important;
    min-height:37px!important;
    padding:0 8px!important;
    border:1px solid rgba(120,205,255,.16)!important;
    border-radius:999px!important;
    background:rgba(5,17,31,.58)!important;
    flex-direction:row!important;
    font-size:.54rem!important;
    letter-spacing:.045em!important;
    white-space:nowrap!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-link-row a.active,
  .v114-nav.stlb147-premium-nav .stlb147-link-row a[aria-current="page"]{
    border-radius:999px!important;
    background:linear-gradient(135deg,rgba(32,190,245,.95),rgba(141,85,255,.95))!important;
    color:#04101d!important;
    box-shadow:0 0 20px rgba(32,217,255,.22)!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-searchbox{
    width:min(360px,100%)!important;
    height:46px!important;
    min-height:46px!important;
    border-radius:16px!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-searchtext{
    font-size:.78rem!important;
  }
}

/* 7) Very small phones. */
@media(max-width:390px){
  .v114-nav.stlb147-premium-nav .stlb147-logo-frame,
  .v114-nav.stlb147-premium-nav .stlb147-logo-frame .stlb161-logo{
    width:min(342px,92vw)!important;
    max-width:min(342px,92vw)!important;
    height:86px!important;
    min-height:86px!important;
    max-height:86px!important;
  }
  .v114-nav.stlb147-premium-nav .stlb147-logo-frame img{
    max-width:min(342px,92vw)!important;
    max-height:82px!important;
  }
}
