/** Zuri Storm shared navigation bar v3.2.7.
 * The approved HOME header is the exact layout reference. Its homepage CSS remains untouched.
 * Remove page-specific variations so Home / Bookshelf / Worlds / About / Shop / Contact / Account / Cart / Checkout align.
 */
body:not(.home) .zs-topbar{
  background:linear-gradient(90deg,#300b13,#52111c 50%,#330d15);
  font-size:10px; letter-spacing:.07em; text-transform:none;
}
body:not(.home) .zs-topbar-inner{min-height:27px;max-width:1400px}
body:not(.home) .zs-topbar a{color:#f2dfcd}
body:not(.home) .zs-header{
  position:relative; background:#0c0b0a; backdrop-filter:none;
  color:#e9dfd3;
}
body:not(.home) .zs-header .zs-header-row{
  display:grid; grid-template-columns:minmax(160px,1fr) auto minmax(120px,1fr);
  align-items:center;gap:24px;min-height:75px;
  max-width:1400px;
  padding-top:0;padding-bottom:0;
}
body:not(.home) .zs-header .zs-brand{flex:initial;min-width:0}
body:not(.home) .zs-header .zs-wordmark{max-width:220px;max-height:60px;width:auto}
body:not(.home) .zs-header .zs-nav{flex:initial;min-width:0}
body:not(.home) .zs-header .zs-nav ul{
  gap:var(--zs-nav-gap,25px);display:flex;flex-direction:row;align-items:center;
  justify-content:center;flex-wrap:nowrap;list-style:none;margin:0;padding:0;
}
body:not(.home) .zs-header .zs-nav a{
  font-family:var(--zs-nav-font,var(--zs-body));
  font-size:var(--zs-nav-size,15px);font-weight:400;line-height:1.5;white-space:nowrap;
  color:#e9dfd3;text-decoration:none;
}
body:not(.home) .zs-header .zs-nav a:hover,
body:not(.home) .zs-header .zs-nav a:focus-visible{color:#e6c58f}
body:not(.home) .zs-header .zs-header-actions{
  display:flex;align-items:center;justify-content:flex-end;gap:19px;
  margin:0;flex:initial;
}
body:not(.home) .zs-header .zs31-header-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:25px;height:32px;color:#e9d7c3;
}
body:not(.home) .zs-header .zs31-header-icon svg{width:19px;height:19px}
body:not(.home) .zs-header .zs31-header-icon:hover{color:#e6c58f}
/* Bookshelf's full-width rescue CSS must not make its header a different width from Home. */
body.post-type-archive-jsmedia_book .zs-header .zs-header-row,
body.post-type-archive-jsmedia_book .zs-topbar .zs-topbar-inner{
  width:min(1400px,calc(100% - 48px))!important;
  max-width:1400px!important;
}
@media (max-width:1180px){
  body:not(.home) .zs-header .zs-header-row{
    grid-template-columns:1fr auto; min-height:72px;
  }
  /* Match the Home menu behavior: use a collapsed toggle; do not render a second menu row. */
  body:not(.home) .zs-header .zs-nav{
    position:absolute;top:100%;left:0;right:0;
    padding:20px 24px;background:#0b0a09;
    border-top:1px solid rgba(230,197,143,.25);display:none;
    z-index:60;
  }
  body:not(.home) .zs-header .zs-nav.is-open{display:block}
  body:not(.home) .zs-header .zs-nav ul{
    flex-direction:column;align-items:flex-start;gap:16px;
  }
  body:not(.home) .zs-header .zs-menu-toggle{display:block}
}
@media (max-width:580px){
  body:not(.home) .zs-topbar{font-size:.51rem}
  body:not(.home) .zs-topbar-inner{min-height:27px}
  body:not(.home) .zs-header .zs-header-row{min-height:66px}
  body:not(.home) .zs-header .zs-wordmark{max-width:155px;max-height:45px}
  body:not(.home) .zs-header .zs-header-actions{gap:9px}
  body:not(.home) .zs-header .zs31-header-icon svg{width:18px;height:18px}
  body.post-type-archive-jsmedia_book .zs-header .zs-header-row,
  body.post-type-archive-jsmedia_book .zs-topbar .zs-topbar-inner{
    width:calc(100% - 20px)!important;
  }
}
