/* Six editorial links per panel; full collections stay on their archive pages. */
.site-header .header-inner { position:relative; }
.site-header .hx-nav-group > a::after { display:none; }
.site-header .hx-nav-toggle { display:inline-flex; align-items:center; justify-content:center; width:24px; height:32px; padding:0; border:0; background:transparent; color:#aebed3; cursor:pointer; vertical-align:middle; }
.site-header .hx-nav-toggle[aria-expanded="true"] svg { transform:rotate(180deg); }
.site-header .hx-nav-toggle:focus-visible,.site-header .hx-featured-dropdown a:focus-visible { outline:2px solid #79f4d1; outline-offset:3px; }
.site-header .hx-featured-dropdown { width:min(800px,calc(100vw - 48px)); min-width:0; max-width:none; padding:24px; visibility:hidden; opacity:0; pointer-events:none; background:radial-gradient(ellipse at 100% 0, #16373966,transparent 50%),#0b121d; border:1px solid #2c4148; border-radius:16px; }
.site-header .hx-nav-group.dropdown-open .hx-featured-dropdown { visibility:visible; opacity:1; pointer-events:auto; transform:translateX(-50%) translateY(0); }
.hx-nav-heading { display:flex; justify-content:space-between; gap:24px; align-items:center; margin-bottom:18px; }
.hx-nav-heading > div > span { font-size:10px; text-transform:uppercase; letter-spacing:.16em; color:#79f4d1; font-weight:600; }
.hx-nav-heading p { margin:6px 0 0; font-family:"Space Grotesk",sans-serif; font-size:22px; line-height:1.3; color:#f2f6fa; letter-spacing:-.025em; }
.hx-nav-count { font-size:10px; white-space:nowrap; color:#aebed3; padding:6px 9px; border:1px solid #293a47; border-radius:4px; }
.site-header .hx-nav-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; padding:0; list-style:none; }
.site-header .hx-nav-cards li { min-width:0; }
.site-header .hx-nav-cards a { height:100%; min-height:86px; padding:12px; gap:13px; border:1px solid #27333f; background:#121e2b99; color:#edf3f8; border-radius:9px; }
.site-header .hx-nav-cards a::before { display:none; }
.site-header .hx-nav-cards a:hover,.site-header .hx-nav-cards a:focus-visible,.site-header .hx-nav-cards a[aria-current="page"] { border-color:#649e91; background:#1a3535; transform:none; }
.hx-nav-thumb { display:grid; place-items:center; flex:0 0 56px; height:56px; border:1px solid #ffffff1a; border-radius:6px; overflow:hidden; color:#79f4d1; font-family:"Space Grotesk",sans-serif; font-size:18px; background:linear-gradient(145deg,#22453e,#182536); }
.hx-nav-thumb img { width:100%; height:100%; object-fit:cover; }
.hx-nav-thumb-icon { background:linear-gradient(145deg,#1b3a34,#16233a); }
.hx-nav-thumb-icon svg { width:24px; height:24px; }
.hx-nav-thumb-icon img { width:28px; height:28px; object-fit:contain; }
.site-header .hx-nav-cards a:hover .hx-nav-thumb-icon,.site-header .hx-nav-cards a:focus-visible .hx-nav-thumb-icon { border-color:#79f4d1; }
.hx-nav-card-copy { flex:1; min-width:0; }
.hx-nav-card-copy strong { display:block; font-weight:500; font-size:13px; line-height:1.5; }
.hx-nav-card-copy small { display:block; font-size:10px; color:#aebed3; line-height:1.5; margin-top:5px; }
.hx-nav-arrow { color:#79f4d1; font-size:16px; flex-shrink:0; }
.site-header .hx-featured-dropdown .dropdown-view-all { justify-content:space-between; margin-top:16px; padding:13px 4px 0; border:0; border-top:1px solid #2b3b47; border-radius:0; font-size:12px; color:#79f4d1; }
.site-header .hx-featured-dropdown .dropdown-view-all:hover { background:none; transform:none; color:#fff; }
@media(min-width:1001px) {
  .site-header .nav-list > .hx-nav-group { position:static; display:flex; align-items:center; }
  .site-header .nav-list > li > a { white-space:nowrap; }
  /* Label + chevron read as one link, like the original ::after arrow: same colour, small gap,
     and both light up / the chevron flips when the group is hovered or open. Footprint stays ~14px
     so all seven items still fit on one line. */
  .site-header .hx-nav-toggle { width:11px; height:24px; margin-left:3px; color:var(--ink-2,#9aa5d1); transition:color .2s ease; }
  .site-header .hx-nav-toggle svg { width:11px; height:11px; stroke-width:2; transition:transform .2s ease, color .2s ease; }
  .site-header .hx-nav-group:hover > a,.site-header .hx-nav-group.dropdown-open > a,.site-header .hx-nav-group:focus-within > a { color:var(--ink-0,#f2f6fa); }
  .site-header .hx-nav-group:hover .hx-nav-toggle,.site-header .hx-nav-group.dropdown-open .hx-nav-toggle,.site-header .hx-nav-group:focus-within .hx-nav-toggle { color:var(--accent-0,#79f4d1); }
  .site-header .hx-nav-group:hover .hx-nav-toggle svg,.site-header .hx-nav-group.dropdown-open .hx-nav-toggle svg { transform:rotate(180deg); }
  .site-header .hx-nav-toggle[aria-expanded="true"] svg { transform:rotate(180deg); }
  /* The legacy .has-dropdown::after is a 12px strip at top:100%/left:0/right:0. With the group
     position:static it resolves against the header, i.e. a full-width invisible bar under the nav
     that every group owns and the last one wins - hover it on the way down and Case Studies opens.
     Kill it outright. */
  .site-header .hx-nav-group::after { content:none; display:none; }
  .site-header .hx-featured-dropdown { top:100%; left:50%; margin-top:0; }
  /* Invisible bridge over the header padding so the pointer never "leaves" the group on the way down to the panel.
     The legacy .dropdown::before is a 1px top rule pinned to top:0, so every one of its properties is overridden here. */
  .site-header .hx-featured-dropdown::before { content:""; position:absolute; left:0; right:0; top:auto; bottom:100%; height:48px; background:none; border-radius:0; }
}
/* "Case Studies" is the widest label; below 1440px pull the items closer so the logo keeps clear air. */
@media(min-width:1001px) and (max-width:1440px) {
  .site-header .nav-list { gap:16px; }
}
@media(min-width:1001px) and (max-width:1200px) {
  .site-header .nav-list { gap:13px; }
}
/* Between the drawer (1000px) and ~1100px the seven items + the HapzSoft pill + the CTA can't all fit;
   the pill is the least important of the three, so it goes first. */
@media(min-width:1001px) and (max-width:1100px) {
  .site-header .brand-switch { display:none; }
}
@media(max-width:1000px) {
  .site-header .nav-list,.site-header .hx-nav-group { width:100%; }
  .site-header .hx-nav-toggle { float:right; width:44px; height:44px; margin-top:-5px; border:1px solid #2b3b47; border-radius:7px; }
  .site-header .hx-featured-dropdown { display:none; width:100%; padding:18px 0 0; margin:0; max-height:none; overflow:visible; transform:none; border:0; background:none; }
  .site-header .hx-nav-group.dropdown-open .hx-featured-dropdown { display:block; max-height:none; transform:none; }
  .hx-nav-heading { margin-bottom:12px; }
  .hx-nav-heading p { font-size:17px; }
  .hx-nav-count { display:none; }
  .site-header .hx-nav-cards { grid-template-columns:1fr; gap:7px; }
  .site-header .hx-nav-cards a { min-height:68px; padding:9px; gap:10px; }
  .hx-nav-thumb { flex-basis:42px; height:42px; font-size:14px; }
  .hx-nav-card-copy strong { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { .site-header .hx-featured-dropdown,.site-header .hx-nav-cards a { transition:none; } }
