.ch-site-header { --nav-accent:#fb4f14; }
.ch-site-header .ch-header-inner { position:relative; }
.ch-site-header .ch-journal-pill { display:none; }
.ch-site-header .ch-nav-root { gap:14px; }
.ch-site-header .ch-nav-item > a { font-size:14px; letter-spacing:0; }
.ch-site-header .has-children { display:grid; grid-template-columns:minmax(0,1fr) 28px; align-items:center; }
.ch-site-header .ch-subnav-toggle { display:grid; place-items:center; width:28px; height:40px; min-height:40px; padding:0; border:0; border-radius:4px; color:#fff; background:transparent; cursor:pointer; }
.ch-site-header .ch-subnav-toggle img,.ch-site-header .ch-menu-toggle img,.ch-site-header .ch-nav-icon { filter:invert(1); flex:none; }
.ch-site-header .ch-subnav-toggle img { transition:transform .15s ease; }
.ch-site-header .ch-subnav-toggle[aria-expanded="true"] img { transform:rotate(180deg); }
.ch-site-header a:focus-visible,.ch-site-header button:focus-visible { outline:2px solid #ffad8c; outline-offset:3px; }
.ch-site-header .ch-subnav-toggle:hover { background:#252525; }
.ch-site-header .ch-subnav { background:#111; border-color:#414141; border-top-color:var(--nav-accent); }
.ch-site-header .ch-subnav .ch-nav-item > a { white-space:normal; line-height:1.35; }
.ch-site-header .ch-subnav .has-children > a { padding-right:4px; }
.ch-site-header .ch-subnav-toggle { justify-self:end; }
.ch-site-header[data-nav-ready] .has-children > .ch-subnav { opacity:0; visibility:hidden; pointer-events:none; }
.ch-site-header[data-nav-ready] .is-nav-open > .ch-subnav { opacity:1; visibility:visible; pointer-events:auto; }
.ch-site-header .ch-nav-all-tools > a { color:#ff9b74; font-weight:800; }
.ch-site-header .ch-nav-icon { width:19px; height:19px; object-fit:contain; }

@media(min-width:1121px) {
  .ch-site-header .ch-header-inner { grid-template-columns:auto minmax(0,1fr) auto; column-gap:20px; }
  .ch-site-header .ch-brand img { width:194px; min-width:160px; }
  .ch-site-header .ch-nav-root > .has-children > a { padding-right:0; }
  .ch-site-header .ch-nav-root > .has-children > .ch-subnav-toggle { width:24px; }
  .ch-site-header .is-nav-open > .ch-subnav { transform:translate(-50%,0); }
  .ch-site-header .ch-subnav .is-nav-open > .ch-subnav { transform:translate(0,0); }
  .ch-site-header .ch-labs-nav { position:static; }
  .ch-site-header .ch-labs-nav > a { position:relative; }
  .ch-site-header .ch-labs-nav > a::after { content:""; position:absolute; top:100%; left:0; right:-28px; height:32px; }
  .ch-site-header .ch-labs-nav > .ch-subnav { width:min(980px,calc(100vw - 52px)); min-width:0; top:calc(100% - 1px); left:50%; max-height:calc(100dvh - 114px); overflow:auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 24px; padding:18px 24px 24px; }
  .ch-site-header .ch-labs-nav .ch-nav-all-tools { grid-column:1/-1; padding-bottom:12px; border-bottom:1px solid #353535; }
  .ch-site-header .ch-labs-nav .ch-nav-all-tools > a { padding:0; min-height:28px; justify-content:flex-start; }
  .ch-site-header .ch-labs-nav .ch-nav-category { display:block; min-width:0; }
  .ch-site-header .ch-labs-nav .ch-nav-category > a { padding:0 8px 8px; min-height:32px; color:#ff9b74; justify-content:flex-start; gap:9px; font-size:14px; }
  .ch-site-header .ch-labs-nav .ch-nav-category > .ch-subnav-toggle { display:none; }
  .ch-site-header .ch-labs-nav .ch-nav-category > .ch-subnav { position:static; width:100%; min-width:0; transform:none!important; padding:0; opacity:1!important; visibility:visible!important; pointer-events:auto!important; border:0; border-radius:0; box-shadow:none; background:transparent; }
  .ch-site-header .ch-labs-nav .ch-nav-category .ch-nav-item > a { min-height:36px; padding:8px; color:#eee; font-size:13px; font-weight:500; justify-content:flex-start; }
  .ch-site-header .ch-labs-nav .ch-nav-category .ch-nav-item > a:hover { color:#fff; background:#2a2a2a; }
  .ch-site-header .ch-labs-nav:not(.is-nav-open) > .ch-subnav { transform:translate(-50%,8px); }
  .ch-site-header[data-nav-ready] .ch-labs-nav:not(.is-nav-open) .ch-subnav { visibility:hidden!important; pointer-events:none!important; }
}

@media(min-width:1121px) and (max-height:680px) {
  .ch-site-header .ch-nav-root > .has-children:not(.ch-labs-nav) > .ch-subnav { max-height:calc(100dvh - 88px); overflow:auto; }
  .ch-site-header .ch-nav-root > .has-children:not(.ch-labs-nav) .ch-subnav .ch-subnav { position:static; grid-column:1/-1; min-width:0; width:100%; transform:none!important; display:none; padding:4px 0 4px 9px; border:0; border-left:1px solid #555; border-radius:0; box-shadow:none; }
  .ch-site-header[data-nav-ready] .ch-nav-root > .has-children:not(.ch-labs-nav) .ch-subnav .is-nav-open > .ch-subnav { display:block; }
  .ch-site-header:not([data-nav-ready]) .ch-subnav .has-children:hover > .ch-subnav,
  .ch-site-header:not([data-nav-ready]) .ch-subnav .has-children:focus-within > .ch-subnav { display:block; }
}

@media(max-width:1120px) {
  .ch-site-header .ch-header-inner { grid-template-columns:auto minmax(0,1fr) auto; }
  .ch-site-header .ch-store-button { justify-self:end; }
  .ch-site-header .ch-main-nav { max-height:calc(100dvh - 96px); overscroll-behavior:contain; }
  .ch-site-header .ch-main-nav .has-children { grid-template-columns:minmax(0,1fr) 46px; }
  .ch-site-header .ch-subnav-toggle { width:46px; height:48px; min-height:48px; border-bottom:1px solid #292929; }
  .ch-site-header .ch-nav-item > a { font-size:16px; min-height:48px; line-height:1.35; }
  .ch-site-header .ch-subnav .ch-nav-item > a { padding:12px 8px; min-height:46px; font-size:14px; }
  .ch-site-header .ch-subnav .ch-subnav .ch-nav-item > a { color:#ddd; font-size:14px; }
  .ch-site-header .ch-subnav { background:transparent; }
  .ch-site-header .ch-nav-category > a { gap:10px; justify-content:flex-start; }
  .ch-site-header[data-nav-ready] .has-children > .ch-subnav { display:none; }
  .ch-site-header[data-nav-ready] .is-nav-open > .ch-subnav { display:block; }
  .ch-site-header .ch-menu-toggle { width:44px; height:44px; min-width:44px; padding:9px; border-radius:4px; }
  .ch-site-header .ch-menu-toggle[aria-expanded="true"] { background:#262626; }
}

@media(max-width:620px) {
  .ch-site-header .ch-main-nav { max-height:calc(100dvh - 82px); }
}

@media(prefers-reduced-motion:reduce) {
  .ch-site-header .ch-subnav-toggle img { transition:none; }
}
