/* ============================================================================
   The site header — one file, every page.
   ----------------------------------------------------------------------------
   Every page carries its own inline <style>, and those styles disagree with
   each other: some set `*{box-sizing:border-box}` and some don't, body font
   sizes run 18-19px, and `line-height` is never declared at all. The header
   used to inherit all of that, so its band height, row height and logo
   alignment came out slightly different on each family of pages.

   So this file inherits nothing. Every property that affects the header's box
   model or typography is stated outright, and the handful that page CSS
   declares !important are restated !important here. Change a header value
   here and it changes on all 136 pages.
   ========================================================================== */

#cdShell{
  --cdh-max:1320px;      /* content width, matched to the widest page shell */
  --cdh-row:82px;        /* nav row height — the header is 123px all-in      */
  --cdh-navy:#163A5D;
  --cdh-cream:#FCFAF6;
  --cdh-line:#E5E0D8;
  position:sticky;
  top:0;
  z-index:60;
  background:#FAF8F5;
  border-bottom:1px solid var(--cdh-line);
  font-family:'Hanken Grotesk',Arial,sans-serif;
  font-size:16px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:normal;
  text-transform:none;
  text-align:left;
  -webkit-text-size-adjust:100%;
}
/* Reset inherited box model for everything inside, then state each part. */
#cdShell *,#cdShell *::before,#cdShell *::after{
  box-sizing:border-box!important;
  margin:0;
  padding:0;
  font-family:inherit;
  line-height:inherit;
}

/* ── Announcement band ─────────────────────────────────────────────────── */
#cdShell .cdh-band{
  padding:10px 20px!important;
  background:#123350;
  color:#F2F6F9;
  font-size:14px!important;
  line-height:1.4!important;
  letter-spacing:.03em;
  text-align:center;
}
#cdShell .cdh-band a{color:#F2F6F9;text-decoration:underline;text-underline-offset:3px}

/* ── Nav row ───────────────────────────────────────────────────────────── */
#cdShell .cdh-row{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:12px!important;
  height:var(--cdh-row)!important;
  min-height:0!important;
  max-width:var(--cdh-max);
  margin:0 auto!important;
  padding:0 28px!important;
  border:0!important;
  background:none;
}
#cdShell .cdh-logo{display:inline-flex!important;align-items:center;flex:0 0 auto}
#cdShell .cdh-logo img{
  height:58px!important;
  width:auto!important;
  max-width:none!important;
  display:block;
  border-radius:0!important;
}
#cdShell .cdh-nav{
  display:flex;
  align-items:center;
  gap:2px;
  margin-left:auto!important;
  white-space:nowrap;
}
#cdShell .cdh-tab{
  display:inline-flex;
  align-items:center;
  padding:10px 8px!important;
  border-radius:999px;
  font-family:'Source Serif 4',Georgia,serif;
  font-size:17px;
  font-weight:400;
  line-height:1;
  white-space:nowrap;
  color:#20242B;
  text-decoration:none;
  transition:background .25s,color .25s;
}
#cdShell .cdh-tab:hover{background:#EFEAE2;color:var(--cdh-navy)}
#cdShell .cdh-tab[aria-current="page"]{font-weight:700;color:var(--cdh-navy)}

/* ── Calls to action ───────────────────────────────────────────────────── */
#cdShell .cdh-ctas{display:flex;align-items:center;gap:10px;flex:0 0 auto}
#cdShell .cdh-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  height:44px!important;
  padding:0 20px!important;
  border:0;
  border-radius:999px;
  font-family:inherit;
  font-size:15px!important;
  font-weight:600;
  line-height:1!important;
  letter-spacing:.01em;
  white-space:nowrap;
  text-decoration:none;
  cursor:pointer;
  transition:background .25s,color .25s,transform .25s;
}
#cdShell .cdh-navy{background:var(--cdh-navy);color:var(--cdh-cream)}
#cdShell .cdh-navy:hover{background:#0E2740;color:var(--cdh-cream);transform:translateY(-1px)}
#cdShell .cdh-cream{background:var(--cdh-cream);color:var(--cdh-navy);box-shadow:inset 0 0 0 1px var(--cdh-navy)}
#cdShell .cdh-cream:hover{background:#EDE6DA;color:var(--cdh-navy);transform:translateY(-1px)}
#cdShell .cdh-btn:active{transform:translateY(1px)}
#cdShell .cdh-menubtn{display:none}

/* ── Drop-down menu ────────────────────────────────────────────────────── */
#cdShell #cdhMenu{border-top:1px solid var(--cdh-line)}
#cdShell #cdhMenu[hidden]{display:none!important}
#cdShell #cdhMenu nav{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:6px 14px;
  max-width:var(--cdh-max);
  margin:0 auto;
  padding:14px 28px 20px!important;
}

/* ── Widths ────────────────────────────────────────────────────────────────
   Measured in headless Chrome with the Source Serif webfont settled — before
   it swaps in, the Georgia fallback is narrower and every one of these fits
   when it should not.

   The governing constraint is that .cdh-row is capped at --cdh-max (1320px),
   so no viewport ever gives the row more space than that. Tab padding is
   therefore tight unconditionally: gating it on viewport width let the tabs
   relax at wide viewports inside a box that had not grown, and the row spilled
   105px past the content column every other section lines up with.

   With eight tabs the row needs ~1317px carrying both CTAs, which 1320px only
   just clears. Dropping the secondary CTA first is the right trade — one-click
   navigation is worth more than a second button — and it is also what clears
   the 601-759px band, where the nav is already hidden but the logo, both CTAs
   and the Menu button together needed 758px and scrolled the whole page
   sideways. */
@media (max-width:1400px){
  #cdShell [data-cta="nav-visualizer"]{display:none!important}
}
/* Below this even the tightened eight tabs cannot sit beside the logo and the
   remaining CTA, so the whole nav folds into the Menu button. */
@media (max-width:1160px){
  #cdShell .cdh-nav{display:none}
  #cdShell .cdh-menubtn{display:inline-flex}
}
@media (max-width:600px){
  #cdShell .cdh-row{
    height:auto!important;
    min-height:64px!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    padding:10px 16px!important;
  }
  #cdShell .cdh-logo img{height:42px!important}
  #cdShell .cdh-ctas{margin-left:auto}
  #cdShell [data-cta="nav-visualizer"]{display:none!important}
  #cdShell #cdhMenu nav{padding:14px 16px 18px!important}
}
@media (prefers-reduced-motion:reduce){
  #cdShell .cdh-btn,#cdShell .cdh-tab{transition:none}
  #cdShell .cdh-btn:hover,#cdShell .cdh-btn:active{transform:none}
}
