
/* =========================================================
   V43 — HEADER LOGO HARD RESET
   Prevents repeated/broken logo rendering across all pages.
========================================================= */

/* Homepage logo anchor + secondary-page brand anchor */
.premium-header .brand-logo,
.premium-header .logo.brand-logo,
.site-header .brand{
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  line-height:0!important;
  overflow:visible!important;

  background:none!important;
  background-image:none!important;
  background-repeat:no-repeat!important;
  background-size:auto!important;
  box-shadow:none!important;
  border:0!important;
}

/* Prevent any legacy decoration from acting like another logo. */
.premium-header .brand-logo::before,
.premium-header .brand-logo::after,
.premium-header .logo.brand-logo::before,
.premium-header .logo.brand-logo::after,
.site-header .brand::before,
.site-header .brand::after{
  content:none!important;
  display:none!important;
  background:none!important;
}

/* One physical logo image, consistently sized. */
.premium-header .brand-logo > img,
.premium-header .logo.brand-logo > img,
.site-header .brand > img{
  display:block!important;
  flex:0 0 auto!important;
  width:238px!important;
  max-width:238px!important;
  height:auto!important;
  max-height:58px!important;
  margin:0!important;
  padding:0!important;

  object-fit:contain!important;
  object-position:left center!important;

  background:transparent!important;
  background-image:none!important;
  background-repeat:no-repeat!important;
  box-shadow:none!important;
  border:0!important;
  transform:none!important;
}

/* Defensive: if duplicate logo images ever get injected, only show first. */
.premium-header .brand-logo > img + img,
.premium-header .logo.brand-logo > img + img,
.site-header .brand > img + img{
  display:none!important;
}

/* Keep header flex layout stable around the logo. */
.premium-header nav,
.site-header .header-inner{
  min-width:0!important;
}

@media (max-width:760px){
  .premium-header .brand-logo,
  .premium-header .logo.brand-logo,
  .site-header .brand{
    flex:1 1 auto!important;
    max-width:calc(100% - 62px)!important;
  }

  .premium-header .brand-logo > img,
  .premium-header .logo.brand-logo > img,
  .site-header .brand > img{
    width:min(205px, 58vw)!important;
    max-width:205px!important;
    max-height:50px!important;
  }
}

@media (max-width:360px){
  .premium-header .brand-logo > img,
  .premium-header .logo.brand-logo > img,
  .site-header .brand > img{
    width:min(185px, 56vw)!important;
    max-width:185px!important;
    max-height:46px!important;
  }
}
