/* Everyday Heroes global site header — matched to the approved website header. */
:root{
  --eh-header-red:#e21d32;
  --eh-header-blue:#1478ff;
  --eh-header-display:"Barlow Condensed","Arial Narrow",Impact,sans-serif;
  --eh-header-body:Inter,Arial,Helvetica,sans-serif;
  --eh-header-shell:min(1718px,calc(100vw - 32px));
}

.eh-site-header,
.eh-site-header *{box-sizing:border-box}
.eh-site-header{
  position:relative;
  z-index:1000;
  flex:0 0 auto;
  background:rgba(1,6,12,.98);
  border-top:1px solid rgba(71,128,178,.20);
  border-bottom:1px solid rgba(44,111,170,.36);
  box-shadow:0 8px 34px rgba(0,0,0,.44);
  font-family:var(--eh-header-body);
}
.eh-site-header::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:1px;
  background:linear-gradient(90deg,var(--eh-header-red),transparent 37%,transparent 63%,var(--eh-header-blue));
  opacity:.9;
  pointer-events:none;
}
.eh-header-inner{
  width:var(--eh-header-shell);
  min-height:93px;
  margin:0 auto;
  display:grid;
  grid-template-columns:430px minmax(0,1fr) 55px;
  align-items:center;
  gap:18px;
}
.eh-brand{
  display:flex;
  align-items:center;
  min-width:0;
  height:78px;
  padding:8px 14px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(37,112,176,.52);
  background:linear-gradient(135deg,rgba(7,18,30,.97),rgba(2,7,13,.78));
  box-shadow:inset 0 0 24px rgba(20,120,255,.05);
}
.eh-brand:hover{color:#fff;border-color:rgba(64,153,231,.76)}
.eh-brand-mark{
  width:62px;
  height:62px;
  flex:0 0 62px;
  display:grid;
  place-items:center;
}
.eh-brand-logo{
  width:62px;
  height:62px;
  display:block;
  object-fit:contain;
  filter:drop-shadow(0 0 8px rgba(20,120,255,.25));
}
.eh-brand-fallback{
  width:58px;
  height:58px;
  display:none;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:linear-gradient(145deg,#c50c20,#63000b);
  border:3px solid #d5dbe3;
  font:900 25px/1 var(--eh-header-display);
}
.eh-brand-copy{display:grid;min-width:0;margin-left:12px}
.eh-brand-copy strong{
  color:#fff;
  font:italic 900 31px/.95 var(--eh-header-display);
  letter-spacing:.025em;
  text-transform:uppercase;
  white-space:nowrap;
}
.eh-brand-copy span{
  color:var(--eh-header-red);
  font:700 12px/1.1 var(--eh-header-body);
  letter-spacing:.055em;
  margin-top:7px;
  white-space:nowrap;
}
.eh-primary-nav{min-width:0;align-self:stretch}
.eh-nav-list{
  height:100%;
  list-style:none;
  display:flex;
  align-items:stretch;
  justify-content:flex-end;
  gap:2px;
  margin:0;
  padding:0;
}
.eh-nav-list>li{position:relative;display:flex;align-items:stretch}
.eh-nav-list a{
  display:flex;
  align-items:center;
  min-height:92px;
  padding:0 clamp(9px,.92vw,16px);
  color:#c8d0d9;
  text-decoration:none;
  font:800 17px/1 var(--eh-header-display);
  letter-spacing:.035em;
  text-transform:uppercase;
  white-space:nowrap;
  border-bottom:2px solid transparent;
  transition:color .16s ease,background .16s ease,border-color .16s ease;
}
.eh-nav-list>li:hover>a,
.eh-nav-list>li.is-current>a{
  color:#fff;
  border-bottom-color:var(--eh-header-red);
  background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(226,29,50,.05));
}
.eh-search-toggle,
.eh-menu-toggle{
  appearance:none;
  color:#fff;
  background:linear-gradient(145deg,#c50c20,#63000b);
  border:1px solid rgba(255,69,86,.58);
  cursor:pointer;
}
.eh-search-toggle{
  width:55px;
  height:55px;
  display:grid;
  place-items:center;
  padding:0;
}
.eh-search-toggle:hover{background:linear-gradient(145deg,#e2152d,#79000d)}
.eh-search-toggle svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.eh-menu-toggle{display:none;width:48px;height:48px;padding:0}
.eh-menu-lines{display:grid;gap:5px}
.eh-menu-lines i{display:block;width:23px;height:2px;background:#fff;transition:.2s}
.eh-screen-reader-text{
  border:0!important;
  clip:rect(1px,1px,1px,1px)!important;
  clip-path:inset(50%)!important;
  height:1px!important;
  margin:-1px!important;
  overflow:hidden!important;
  padding:0!important;
  position:absolute!important;
  width:1px!important;
  white-space:nowrap!important;
}
.eh-search-panel{
  border-top:1px solid rgba(255,255,255,.08);
  background:#030a12;
}
.eh-search-panel[hidden]{display:none}
.eh-search-inner{
  width:var(--eh-header-shell);
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 0;
}
.eh-site-search-form{flex:1;display:flex;gap:10px;margin:0}
.eh-site-search-form input{
  flex:1;
  min-width:0;
  min-height:48px;
  padding:0 16px;
  color:#fff;
  background:#06111e;
  border:1px solid #243a50;
  outline:0;
  font-family:var(--eh-header-body);
}
.eh-site-search-form input:focus{border-color:var(--eh-header-blue);box-shadow:0 0 0 3px rgba(20,120,255,.14)}
.eh-site-search-form button,
.eh-search-close{
  min-height:48px;
  padding:0 20px;
  color:#fff;
  font:800 16px/1 var(--eh-header-display);
  text-transform:uppercase;
  background:#10243a;
  border:1px solid #294c70;
  cursor:pointer;
}
.eh-site-search-form button{background:linear-gradient(145deg,var(--eh-header-red),#79000d);border-color:#e95362}

/* Codex utility bar now sits beneath the shared site header. */
.app-header{box-shadow:0 4px 22px rgba(0,0,0,.28)!important}
.codex-emblem .material-icons-round{font-size:29px;color:#e8ecf4}

@media(max-width:1500px){
  :root{--eh-header-shell:min(1480px,calc(100vw - 24px))}
  .eh-header-inner{grid-template-columns:minmax(300px,350px) minmax(0,1fr) 50px;gap:8px}
  .eh-brand{height:72px;padding:7px 11px}
  .eh-brand-mark,.eh-brand-logo{width:56px;height:56px;flex-basis:56px}
  .eh-brand-copy strong{font-size:26px}
  .eh-nav-list a{padding-inline:7px;font-size:15px}
  .eh-search-toggle{width:50px;height:50px}
}
@media(max-width:1120px){
  .eh-header-inner{grid-template-columns:1fr 48px 48px;min-height:78px}
  .eh-menu-toggle{display:grid;place-items:center;grid-column:2;grid-row:1}
  .eh-search-toggle{grid-column:3;grid-row:1;width:48px;height:48px}
  .eh-primary-nav{
    position:absolute;
    left:0;
    right:0;
    top:100%;
    max-height:calc(100vh - 80px);
    overflow:auto;
    padding:12px;
    background:rgba(1,6,12,.995);
    border-top:1px solid rgba(255,255,255,.08);
    box-shadow:0 18px 40px rgba(0,0,0,.5);
    display:none;
  }
  .eh-site-header.eh-menu-open .eh-primary-nav{display:block}
  .eh-nav-list{display:block;height:auto}
  .eh-nav-list>li{display:block}
  .eh-nav-list a{min-height:48px;padding:0 14px;font-size:17px}
}
@media(max-width:640px){
  :root{--eh-header-shell:calc(100vw - 18px)}
  .eh-header-inner{min-height:72px;grid-template-columns:1fr 44px 44px;gap:6px}
  .eh-brand{height:62px;padding:6px 5px;border:0;background:transparent}
  .eh-brand-mark,.eh-brand-logo{width:50px;height:50px;flex-basis:50px}
  .eh-brand-copy{margin-left:7px}
  .eh-brand-copy strong{font-size:20px}
  .eh-brand-copy span{display:none}
  .eh-menu-toggle,.eh-search-toggle{width:44px;height:44px}
  .eh-search-inner{display:block;padding:12px 0}
  .eh-site-search-form{display:grid;grid-template-columns:1fr auto}
  .eh-search-close{width:100%;margin-top:8px}
}
@media(max-width:390px){
  .eh-brand-copy strong{font-size:17px}
  .eh-brand-mark,.eh-brand-logo{width:45px;height:45px;flex-basis:45px}
}
