/* CREx site header (2026-10-16). One header for every page, rebuild and older design.
   Load this stylesheet last. Every selector is scoped to .site-header so page CSS
   (rebuild.css, drafts.css, shared/site.css, brand.css, inline styles) cannot leak in.
   Behaviour lives in assets/site-nav.js. The collapse breakpoint (1080px) is repeated there. */

.site-header{--sn-ink:#111111;--sn-muted:#525252;--sn-line:#dedede;--sn-purple:#6b10d6;--sn-paper:#ffffff;--sn-surface:#f5f5f5;position:relative;z-index:30;background:var(--sn-paper);border-bottom:1px solid var(--sn-line);color:var(--sn-ink);font-family:Geist,Calibri,sans-serif;font-size:13px;line-height:1.4;-webkit-font-smoothing:antialiased}
.site-header *,.site-header *::before,.site-header *::after{box-sizing:border-box}
.site-header .header-inner{width:calc(100% - 112px);max-width:1360px;height:82px;margin:0 auto;padding:0;display:flex;align-items:center;justify-content:space-between;gap:30px}
.site-header .brand{width:91px;flex:none;display:inline-flex;align-items:center;gap:0;margin:0;padding:0;font-weight:inherit}
.site-header .brand img{width:100%;max-width:none;height:auto;display:block;mix-blend-mode:multiply}
.site-header .menu-toggle{display:none}
.site-header .primary-nav{display:flex;align-items:center;gap:26px;margin:0;padding:0;font-size:13px;letter-spacing:.005em}
.site-header .primary-nav a,.site-header .nav-group-toggle{color:var(--sn-ink);text-decoration:none;white-space:nowrap}
.site-header .primary-nav>a:not(.nav-cta),.site-header .nav-group-toggle{padding:10px 0}
.site-header .primary-nav a:hover,.site-header .nav-group-toggle:hover{color:var(--sn-purple)}
.site-header .primary-nav .consulting-link{margin:0;font-size:inherit;color:var(--sn-ink)}
.site-header .primary-nav .consulting-link:hover{color:var(--sn-purple)}
.site-header .consulting-link span{font-size:12px;margin-left:5px}
.site-header .primary-nav .nav-cta{display:flex;align-items:center;gap:22px;width:auto;margin:0;padding:13px 17px;border:1px solid var(--sn-ink);border-radius:3px;background:var(--sn-ink);color:#ffffff;font-size:13px}
.site-header .primary-nav .nav-cta:hover{background:var(--sn-purple);border-color:var(--sn-purple);color:#ffffff}

/* Training drop-down */
.site-header .nav-group{position:relative}
.site-header .nav-group-toggle{display:inline-flex;align-items:center;gap:6px;margin:0;border:0;background:none;font:inherit;letter-spacing:inherit;cursor:pointer}
.site-header .nav-group-toggle svg{width:9px;height:9px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .15s}
.site-header .nav-group[data-open="true"] .nav-group-toggle svg{transform:rotate(180deg)}
.site-header .nav-menu{position:absolute;top:calc(100% + 12px);left:-16px;z-index:40;display:none;gap:2px;min-width:290px;padding:8px;background:var(--sn-paper);border:1px solid var(--sn-line);border-radius:8px;box-shadow:0 24px 48px -20px rgba(16,20,27,.18)}
.site-header .nav-menu::before{content:"";position:absolute;top:-13px;left:0;right:0;height:13px}
.site-header .nav-menu-end{left:auto;right:-16px}
.site-header .nav-group[data-open="true"] .nav-menu{display:grid}
.site-header .nav-menu a{display:grid;gap:2px;padding:10px 12px;border-radius:6px;white-space:normal}
.site-header .nav-menu a:hover{background:var(--sn-surface);color:var(--sn-ink)}
.site-header .nav-menu strong{font-size:13.5px;font-weight:500;color:var(--sn-ink)}
.site-header .nav-menu span{font-size:12px;line-height:1.4;color:var(--sn-muted)}
@media(hover:hover) and (min-width:1081px){.site-header .nav-group:hover .nav-menu{display:grid}}

@media(max-width:1360px){.site-header .header-inner{width:calc(100% - 72px)}.site-header .primary-nav{gap:20px}.site-header .primary-nav .nav-cta{gap:14px;padding:12px 14px}}

/* Collapsed: menu button and a drop-down panel */
@media(max-width:1080px){
.site-header .header-inner{position:static;height:72px}
.site-header .brand{width:83px}
.site-header .menu-toggle{display:flex;align-items:center;gap:12px;margin:0;padding:9px 0 9px 9px;border:0;background:transparent;color:var(--sn-ink);font:inherit;font-size:12px;cursor:pointer}
.site-header .menu-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.25}
.site-header .primary-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:12px 36px 26px;background:var(--sn-paper);border-bottom:1px solid var(--sn-line);box-shadow:0 15px 20px #1111110c}
.site-header .primary-nav[data-open="true"]{display:flex}
.site-header .primary-nav>a:not(.nav-cta),.site-header .nav-group-toggle{width:100%;padding:11px 0;font-size:15px;justify-content:space-between;border-bottom:1px solid var(--sn-line)}
.site-header .nav-menu{position:static;min-width:0;padding:4px 0 8px 14px;border:0;border-radius:0;background:none;box-shadow:none}
.site-header .nav-menu::before{display:none}
.site-header .nav-menu a{padding:9px 0}
.site-header .nav-menu a:hover{background:none}
.site-header .primary-nav .nav-cta{align-self:flex-start;margin-top:18px}
}
@media(max-width:760px){.site-header .header-inner{width:calc(100% - 40px)}.site-header .primary-nav{padding:8px 20px 24px}}
@media print{.site-header{display:none!important}}
