.site-header{
  margin-top:8px;
  position:fixed;
  top:8px;
  left:0;
  right:0;
  z-index:40;
  padding:14px 0;
  transition:padding .18s ease;
}

.site-header.is-scrolled{padding:10px 0}

.header-inner{
  min-height:var(--header-h);
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:18px;
  border:1px solid var(--stroke);
  border-radius:24px;
  padding:12px 16px;
  background:rgba(10,10,10,.72);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:0 18px 42px rgba(0,0,0,.26);
}

.brand{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}

.brand-logo{
  width:58px;
  height:58px;
  border-radius:18px;
  display:grid;
  grid-template-columns:1fr 1fr;
  place-items:center;
  background:linear-gradient(135deg, #6c0808 0%, var(--red-2) 60%, #ff6767 100%);
  box-shadow:0 16px 36px rgba(225,28,28,.28), inset 0 1px 0 rgba(255,255,255,.2);
  font-weight:900;
  text-transform:uppercase;
}

.brand-logo.small{
  width:46px;
  height:46px;
  border-radius:14px;
  font-size:.85rem;
}

.brand-text{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}

.brand-text small{
  color:#d2d7df;
  font-size:.74rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  white-space:nowrap;
}

.brand-text strong{
  color:#fff;
  font-size:.98rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  white-space:nowrap;
}

.site-nav{
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}

.site-nav a{
  min-height:42px;
  padding:0 14px;
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  color:#eef1f6;
  font-size:.93rem;
  font-weight:700;
  text-transform:lowercase;
  transition:background .18s ease, color .18s ease, border-color .18s ease;
  border:1px solid transparent;
}

.site-nav a:hover,
.site-nav a.active{
  background:rgba(255,255,255,.05);
  border-color:var(--stroke);
}

.nav-cta{
  min-height:48px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  color:#fff;
  font-size:.94rem;
  font-weight:900;
  text-transform:lowercase;
  background:linear-gradient(135deg, #7b0c0c 0%, var(--red) 50%, var(--red-3) 100%);
  box-shadow:0 14px 34px rgba(185,15,15,.22);
}

.nav-toggle{
  display:none;
  width:50px;
  height:50px;
  border:none;
  border-radius:14px;
  background:rgba(255,255,255,.04);
  border:1px solid var(--stroke);
  padding:0;
  cursor:pointer;
}

.nav-toggle span{
  display:block;
  width:20px;
  height:2px;
  margin:5px auto;
  background:#fff;
  border-radius:999px;
  transition:transform .18s ease, opacity .18s ease;
}

/* brand image override: blackline.jpg */
.brand-logo{
  display:block;
  overflow:hidden;
  padding:0;
  background:
    url("../img/blackline.jpg") center 42% / cover no-repeat !important;
}

.brand-logo span{
  display:none !important;
}

.brand-logo.small{
  background:
    url("../img/blackline.jpg") center 42% / cover no-repeat !important;
}

/* brand wordmark image override */
.brand-text{
  display:flex;
  align-items:center;
  min-width:0;
}

.brand-wordmark{
  display:block;
  width:auto;
  height:56px;
  max-width:100%;
  object-fit:contain;
  image-rendering:auto;
  filter:drop-shadow(0 2px 10px rgba(0,0,0,.18));
}

.footer-brand-link .brand-wordmark{
  height:44px;
}

@media (max-width: 640px){
  .brand-wordmark{
    height:44px;
  }

  .footer-brand-link .brand-wordmark{
    height:36px;
  }
}

/* header wordmark balanced final fix */
.site-header{
  margin-top:6px;
  padding:8px 0 !important;
}

.site-header.is-scrolled{
  padding:6px 0 !important;
}

.site-header .header-inner{
  min-height:62px !important;
  padding:7px 11px !important;
  border-radius:19px !important;
}

.site-header .brand{
  gap:7px !important;
  align-items:center !important;
}

.site-header .brand-logo{
  width:64px !important;
  height:64px !important;
  border-radius:16px !important;
  transform:translateY(4px) !important;
}

.site-header .brand-text{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 1 auto !important;
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
}

.site-header .brand-wordmark{
  display:block !important;
  width:auto !important;
  height:36px !important;
  max-width:200px !important;
  object-fit:contain !important;
  image-rendering:auto !important;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.12)) !important;
}

.site-header .nav-toggle{
  width:40px !important;
  height:40px !important;
  border-radius:12px !important;
  justify-self:end !important;
  align-self:center !important;
  transform:translateY(4px) !important;
}

.site-header .nav-toggle span{
  width:18px !important;
  margin:3px auto !important;
}

.site-footer .brand-text,
.footer-brand-link .brand-text{
  flex:0 1 auto !important;
}

.site-footer .brand-wordmark,
.footer-brand-link .brand-wordmark{
  width:auto !important;
  height:80px !important;
  max-width:135px !important;
}

@media (max-width: 820px){
  .site-header{
  margin-top:6px;
    padding:8px 0 !important;
  }

  .site-header .header-inner{
    min-height:86px !important;
    padding:7px 10px !important;
    border-radius:18px !important;
  }

  .site-header .brand-logo{
    width:60px !important;
    height:86px !important;
    border-radius:15px !important;
    transform:translateY(4px) !important;
  }

  .site-header .brand-wordmark{
    height:35px !important;
    max-width:186px !important;
  }

  .site-header .nav-toggle{
    width:39px !important;
    height:39px !important;
    border-radius:11px !important;
    justify-self:end !important;
    align-self:center !important;
    transform:translateY(4px) !important;
  }
}

@media (max-width: 640px){
  .site-header{
  margin-top:6px;
    padding:7px 0 !important;
  }

  .site-header .header-inner{
    min-height:58px !important;
    padding:6px 9px !important;
    border-radius:17px !important;
  }

  .site-header .brand{
    gap:6px !important;
  }

  .site-header .brand-logo{
    width:56px !important;
    height:82px !important;
    border-radius:15px !important;
    transform:translateY(4px) !important;
  }

  .site-header .brand-wordmark{
    height:36px !important;
    max-width:190px !important;
  }

  .site-header .nav-toggle{
    width:38px !important;
    height:38px !important;
    border-radius:11px !important;
    justify-self:end !important;
    align-self:center !important;
    transform:translateY(4px) !important;
  }

  .site-header .nav-toggle span{
    width:17px !important;
    margin:3px auto !important;
  }

  .site-footer .brand-wordmark,
  .footer-brand-link .brand-wordmark{
    height:28px !important;
    max-width:125px !important;
  }
}

/* wordmark visual resize only */
.site-header .header-inner{
  position:relative !important;
}

.site-header .brand{
  position:static !important;
}

.site-header .brand-text{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%, -50%) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:0 !important;
  pointer-events:none !important;
  z-index:3 !important;
}

.site-header .brand-wordmark{
  display:block !important;
  width:auto !important;
  height:80px !important;
  max-width:160px !important;
  object-fit:contain !important;
  transform:scale(3.40) !important;
  transform-origin:center center !important;
}

@media (max-width: 820px){
  .site-header .brand-wordmark{
    height:29px !important;
    max-width:156px !important;
    transform:scale(3.05) !important;
  }
}

@media (max-width: 640px){
  .site-header .brand-wordmark{
    height:28px !important;
    max-width:150px !important;
    transform:scale(2.80) !important;
  }
}
/* end wordmark visual resize only *//* header premium solid final */
.site-header{
  margin-top:6px;
  padding:8px 0 !important;
}

.site-header.is-scrolled{
  padding:6px 0 !important;
}

.site-header .header-inner{
  min-height:62px !important;
  padding:7px 11px !important;
  border-radius:22px !important;
  position:relative !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 9% 20%, rgba(145, 12, 12, .28), transparent 19%),
    radial-gradient(circle at 52% 50%, rgba(255,255,255,.028), transparent 20%),
    linear-gradient(180deg, rgba(30,30,32,.96), rgba(10,10,12,.98)) !important;
  border:1px solid rgba(255,255,255,.09) !important;
  box-shadow:
    0 18px 42px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.045),
    inset 0 -1px 0 rgba(255,255,255,.02) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.site-header .header-inner::before{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.16), transparent);
  pointer-events:none;
}

.site-header .header-inner::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.035), transparent 28%);
  opacity:.8;
}

.site-header .brand{
  gap:10px !important;
  align-items:center !important;
  position:static !important;
  z-index:2 !important;
}

.site-header .brand-logo{
  width:64px !important;
  height:64px !important;
  border-radius:18px !important;
  transform:none !important;
  box-shadow:
    0 10px 24px rgba(90,0,0,.22),
    0 0 0 1px rgba(255,255,255,.07),
    inset 0 1px 0 rgba(255,255,255,.05) !important;
}

.site-header .brand-text{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%, -50%) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:0 !important;
  pointer-events:none !important;
  z-index:3 !important;
}

.site-header .brand-wordmark{
  display:block !important;
  width:auto !important;
  height:36px !important;
  max-width:220px !important;
  object-fit:contain !important;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.14)) !important;
  transform:scale(1.04) !important;
  transform-origin:center center !important;
}

.site-header .nav-toggle{
  width:44px !important;
  height:82px !important;
  border-radius:15px !important;
  justify-self:end !important;
  align-self:center !important;
  transform:none !important;
  position:relative !important;
  z-index:4 !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.012)),
    rgba(255,255,255,.02) !important;
  border:1px solid rgba(255,255,255,.09) !important;
  box-shadow:
    0 8px 18px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.05) !important;
}

.site-header .nav-toggle span{
  width:18px !important;
  height:2.2px !important;
  margin:3.5px auto !important;
  border-radius:999px !important;
  background:#f6f6f7 !important;
}

@media (max-width: 820px){
  .site-header .header-inner{
    min-height:86px !important;
    padding:7px 10px !important;
    border-radius:21px !important;
  }

  .site-header .brand-logo{
    width:60px !important;
    height:86px !important;
    border-radius:17px !important;
  }

  .site-header .brand-wordmark{
    height:35px !important;
    max-width:208px !important;
  }

  .site-header .nav-toggle{
    width:42px !important;
    height:80px !important;
    border-radius:14px !important;
  }
}

@media (max-width: 640px){
  .site-header{
  margin-top:6px;
    padding:7px 0 !important;
  }

  .site-header .header-inner{
    min-height:58px !important;
    padding:6px 9px !important;
    border-radius:20px !important;
  }

  .site-header .brand{
    gap:8px !important;
  }

  .site-header .brand-logo{
    width:56px !important;
    height:82px !important;
    border-radius:16px !important;
  }

  .site-header .brand-wordmark{
    height:86px !important;
    max-width:198px !important;
    transform:scale(1.03) !important;
  }

  .site-header .nav-toggle{
    width:40px !important;
    height:40px !important;
    border-radius:14px !important;
  }

  .site-header .nav-toggle span{
    width:17px !important;
    margin:3px auto !important;
  }
}/* header wordmark left only final */
.site-header .brand{
  gap:0 !important;
  align-items:center !important;
  position:static !important;
  z-index:2 !important;
}

.site-header .brand-logo{
  display:none !important;
}

.site-header .brand-text{
  position:absolute !important;
  left:78px !important;
  top:50% !important;
  transform:translateY(calc(-50% - 9px)) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  min-width:0 !important;
  max-width:calc(100% - 86px) !important;
  pointer-events:none !important;
  z-index:3 !important;
}

.site-header .brand-wordmark{
  display:block !important;
  width:auto !important;
  height:86px !important;
  max-width:min(52vw, 230px) !important;
  object-fit:contain !important;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.14)) !important;
  transform:none !important;
  transform-origin:left center !important;
}

@media (max-width: 820px){
  .site-header .brand-text{
    left:16px !important;
    max-width:calc(100% - 80px) !important;
  }

  .site-header .brand-wordmark{
    height:82px !important;
    max-width:min(54vw, 220px) !important;
  }
}

@media (max-width: 640px){
  .site-header .brand-text{
    left:15px !important;
    max-width:calc(100% - 74px) !important;
  }

  .site-header .brand-wordmark{
    height:80px !important;
    max-width:min(75vw, 340px) !important;
  }
}/* hide top header bar keep menu button final */
.site-header{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.site-header::before,
.site-header::after,
.site-header .header-inner::before,
.site-header .header-inner::after{
  display:none !important;
  content:none !important;
}

.site-header .header-inner{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  min-height:0 !important;
  padding:0 !important;
}

.site-header .brand,
.site-header .brand-logo,
.site-header .brand-text,
.site-header .brand-wordmark,
.site-header .nav-cta{
  display:none !important;
}

.site-header .nav-toggle{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  position:fixed !important;
  top:16px !important;
  right:12px !important;
  z-index:9999 !important;
}

/* === sidebar jitter guard header v1: start === */
@media (max-width: 820px){
  html body.menu-open .site-header,
  html body.menu-open .site-header *,
  html body.menu-open #navToggle,
  html body.menu-open #navToggle *{
    animation:none !important;
    transition:none !important;
  }

  html body .site-header,
  html body .site-header .header-inner{
    overflow:visible !important;
    contain:none !important;
    backface-visibility:hidden !important;
    -webkit-backface-visibility:hidden !important;
  }
}
/* === sidebar jitter guard header v1: end === */

