/* STLBEAST V233 — PREMIUM LOGO SAFE FRAME
   Final emergency logo correction. Loads after V232.
   Goal: stop logo cropping, remove the cramped black-rectangle feel, and keep a premium framed STLBEAST header/footer mark. */

:root{
  --stlb233-cyan:#21c8ff;
  --stlb233-blue:#267cff;
  --stlb233-purple:#8b5cff;
  --stlb233-ink:#030915;
  --stlb233-panel:#071222;
}

html,body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}
@supports (overflow-x:clip){html,body{overflow-x:clip!important;}}
*,*::before,*::after{box-sizing:border-box!important;}

/* Clean cinematic header container. This keeps your current layout but stops the logo area from looking cramped. */
.v114-nav,
.v114-nav.stlb147-premium-nav,
header.stlb125-nav,
.stlb125-nav,
header.nav.stlb159-nav,
.stlb159-nav,
.site-header,
.sb-header,
header[class*="nav"]{
  max-width:min(1980px,calc(100vw - 24px))!important;
  width:calc(100% - 24px)!important;
  margin:14px auto 24px!important;
  padding:14px!important;
  overflow:hidden!important;
  border:1px solid rgba(38,196,255,.42)!important;
  border-radius:0 28px 0 28px!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(36,196,255,.26),transparent 20%),
    linear-gradient(90deg,rgba(2,8,18,.98),rgba(5,16,30,.98) 48%,rgba(2,8,18,.98))!important;
  box-shadow:
    inset 0 0 0 1px rgba(140,218,255,.08),
    inset 0 0 46px rgba(0,144,255,.14),
    0 14px 38px rgba(0,0,0,.46)!important;
}

.v114-nav .stlb147-nav-shell,
.stlb125-nav .stlb147-nav-shell,
.stlb159-nav,
.stlb159-nav .stlb147-nav-shell,
.site-header .header-inner,
.nav-inner,
.header-inner,
.sb-header .sb-nav{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:minmax(420px,560px) minmax(0,1fr) minmax(230px,340px)!important;
  grid-template-areas:"brand links search"!important;
  gap:20px!important;
  align-items:center!important;
  overflow:visible!important;
}

/* Premium logo plate: real breathing room, no hard crop, no stretched image. */
a.v114-logo,
a.v114-logo.clean-wordmark,
a.stlb125-brand,
a.stlb159-brand,
a.stlb147-logo-frame,
.v114-logo,
.stlb125-brand,
.stlb159-brand,
.stlb147-logo-frame,
.logo,
.site-logo,
.brand,
.sb-logo{
  grid-area:brand!important;
  position:relative!important;
  isolation:isolate!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:560px!important;
  min-width:0!important;
  min-height:132px!important;
  height:auto!important;
  padding:14px 18px!important;
  margin:0!important;
  overflow:visible!important;
  text-decoration:none!important;
  border:1px solid rgba(30,204,255,.62)!important;
  border-radius:0 24px 0 24px!important;
  background:
    linear-gradient(90deg,rgba(0,4,10,.96),rgba(3,16,28,.94),rgba(0,4,10,.96)),
    radial-gradient(circle at 20% 50%,rgba(30,178,255,.24),transparent 48%)!important;
  box-shadow:
    inset 0 0 0 1px rgba(190,236,255,.10),
    inset 0 0 30px rgba(0,160,255,.14),
    0 0 26px rgba(0,148,255,.14)!important;
}

a.v114-logo::before,
a.stlb159-brand::before,
a.stlb147-logo-frame::before,
.logo::before,
.sb-logo::before{
  content:""!important;
  position:absolute!important;
  inset:7px!important;
  z-index:-1!important;
  border:1px solid rgba(108,216,255,.22)!important;
  border-radius:0 18px 0 18px!important;
  background:
    repeating-linear-gradient(90deg,rgba(255,255,255,.032) 0 1px,transparent 1px 10px),
    radial-gradient(circle at 0% 50%,rgba(20,170,255,.16),transparent 42%)!important;
  pointer-events:none!important;
}

a.v114-logo::after,
a.stlb159-brand::after,
a.stlb147-logo-frame::after,
.logo::after,
.sb-logo::after{
  content:""!important;
  position:absolute!important;
  left:34%!important;
  right:34%!important;
  bottom:-2px!important;
  height:3px!important;
  z-index:2!important;
  background:linear-gradient(90deg,transparent,var(--stlb233-cyan),transparent)!important;
  box-shadow:0 0 18px var(--stlb233-cyan)!important;
  pointer-events:none!important;
}

/* Hide old text/fallback chunks that can make the brand block look cheap or stacked. */
a.logo > span:not(.stlb161-logo),
a.v114-logo > span:not(.stlb161-logo),
a.stlb159-brand > span:not(.stlb161-logo),
a.stlb125-brand > span:not(.stlb161-logo),
.stlb156-logo-fallback,
.stlb161-logo-fallback{
  display:none!important;
}

/* Critical uncrop rule: the actual logo is transparent, contained, centered, and never forced to fill a short box. */
.stlb161-logo,
header .stlb161-logo,
footer .stlb161-logo{
  position:relative!important;
  z-index:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:520px!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:0!important;
  margin:0 auto!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.stlb161-logo img,
header .stlb161-logo img,
img[src*="stlbeast-header-logo-v232"],
img[src*="stlbeast-header-logo-v233"],
img[src*="stlbeast-nav-logo"]{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  max-width:520px!important;
  height:auto!important;
  max-height:118px!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  transform:none!important;
  clip-path:none!important;
  background:transparent!important;
  filter:
    drop-shadow(0 0 10px rgba(52,194,255,.42))
    drop-shadow(0 0 22px rgba(85,92,255,.18))!important;
}

/* Navigation/search containment remains locked. */
.v114-links,
.stlb125-links,
.stlb159-links,
.stlb147-link-row,
.navlinks,
.header-links,
.menu,
header nav[aria-label="Primary navigation"]{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}

/* Footer logo: smaller premium badge, never oversized/cropped. */
footer a.v114-logo,
footer a.logo,
footer .sb-logo,
.v114-footer a.v114-logo,
.footer a.logo,
.stlb159-footer a.logo{
  width:min(420px,100%)!important;
  max-width:100%!important;
  min-height:96px!important;
  padding:12px 16px!important;
  margin:0 auto 18px!important;
  overflow:visible!important;
}
footer .stlb161-logo,
.v114-footer .stlb161-logo,
.footer .stlb161-logo,
.stlb159-footer .stlb161-logo{
  width:100%!important;
  max-width:380px!important;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}
footer .stlb161-logo img,
.v114-footer .stlb161-logo img,
.footer .stlb161-logo img,
.stlb159-footer .stlb161-logo img{
  width:100%!important;
  max-width:380px!important;
  height:auto!important;
  max-height:82px!important;
  object-fit:contain!important;
}

@media(max-width:1180px){
  .v114-nav,
  .v114-nav.stlb147-premium-nav,
  header.stlb125-nav,
  .stlb125-nav,
  header.nav.stlb159-nav,
  .stlb159-nav,
  .site-header,
  .sb-header,
  header[class*="nav"]{
    width:calc(100% - 16px)!important;
    max-width:calc(100vw - 16px)!important;
    margin:8px auto 18px!important;
    padding:12px!important;
  }
  .v114-nav .stlb147-nav-shell,
  .stlb125-nav .stlb147-nav-shell,
  .stlb159-nav,
  .stlb159-nav .stlb147-nav-shell,
  .site-header .header-inner,
  .nav-inner,
  .header-inner,
  .sb-header .sb-nav{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:"brand" "links" "search"!important;
    justify-items:center!important;
    gap:12px!important;
  }
  a.v114-logo,
  a.v114-logo.clean-wordmark,
  a.stlb125-brand,
  a.stlb159-brand,
  a.stlb147-logo-frame,
  .logo,.site-logo,.brand,.sb-logo{
    width:min(660px,100%)!important;
    max-width:100%!important;
    min-height:118px!important;
    padding:12px 16px!important;
  }
  .stlb161-logo img,
  header .stlb161-logo img,
  img[src*="stlbeast-header-logo-v233"]{
    max-width:620px!important;
    max-height:104px!important;
  }
}

@media(max-width:620px){
  .v114-nav,
  .v114-nav.stlb147-premium-nav,
  header.stlb125-nav,
  .stlb125-nav,
  header.nav.stlb159-nav,
  .stlb159-nav,
  .site-header,
  .sb-header,
  header[class*="nav"]{
    width:calc(100% - 8px)!important;
    max-width:calc(100vw - 8px)!important;
    padding:8px!important;
    border-radius:0 18px 0 18px!important;
  }
  a.v114-logo,
  a.v114-logo.clean-wordmark,
  a.stlb125-brand,
  a.stlb159-brand,
  a.stlb147-logo-frame,
  .logo,.site-logo,.brand,.sb-logo{
    width:100%!important;
    min-height:96px!important;
    padding:10px 12px!important;
    border-radius:0 16px 0 16px!important;
  }
  a.v114-logo::before,
  a.stlb159-brand::before,
  a.stlb147-logo-frame::before,
  .logo::before,
  .sb-logo::before{inset:6px!important;border-radius:0 12px 0 12px!important;}
  .stlb161-logo img,
  header .stlb161-logo img,
  img[src*="stlbeast-header-logo-v233"]{
    max-width:100%!important;
    max-height:82px!important;
  }
}

@media(max-width:390px){
  a.v114-logo,
  a.v114-logo.clean-wordmark,
  a.stlb125-brand,
  a.stlb159-brand,
  a.stlb147-logo-frame,
  .logo,.site-logo,.brand,.sb-logo{
    min-height:86px!important;
    padding:8px 10px!important;
  }
  .stlb161-logo img,
  header .stlb161-logo img,
  img[src*="stlbeast-header-logo-v233"]{max-height:72px!important;}
}
