/* Gambit shared site chrome (header megamenu + multi-column footer). Self-contained; pair with /lib/site-chrome.js. */
@import url('https://api.fontshare.com/v2/css?f[]=general-sans@400,500,600,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@500;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap');

#siteHeader,#mobileMenu,.site-footer{
  /* worker colors: unique per worker (icon spec); family hues retired as tile fills */
  --w-bogan:#dc4530;--w-atlas:#3a5a86;--w-dealio:#1f4e5f;--w-mira:#8c7038;--w-jericho:#556575;--w-chloe:#2c8091;--w-fleet:#0f74c4;--w-asktodd:#3f4380;--w-askellyn:#6e659f;--w-ayla:#8e5878;--w-dawn:#cc6650;--w-askashleigh:#b06450;
  --w-sam:#b8791f;--w-demi:#2f4858;--w-askshan:#7a2e3f;--w-clinic:#5c4632;
  --w-gillis:#1e1745;
  /* roster audit additions (reserve palette) */
  --ink:#15110d;
  --ink-2:#1f1a14;
  --paper:#ffffff;
  --bone:#f8f5ef;
  --bone-2:#f1ebe2;
  --sand:#d8cebd;
  --sand-deep:#cabca6;
  --clay:#b8957a;
  --clay-deep:#a07c61;
  --line:#e8e1d6;
  --line-2:#efeae1;
  --line-soft:rgba(255,255,255,.10);
  --line-soft-2:rgba(255,255,255,.16);
  --muted:#6f675c;
  --muted-2:#938b7f;
  --muted-d:rgba(240,243,248,.6);
  --status:#3ec46d;
  --status-d:#1f9e54;
  /* worker job-family hues (icon system; match the site scene palette) */
  --f-core:#a07c61;
  --f-ma:#2b3a54;
  --f-sup:#57606e;
  --f-care:#8a5560;
  --f-civic:#54697b;
  --f-log:#a0713a;
  --f-legal:#6b5d3f;
  /* Partners accent: warm clay (no navy / vermilion on this door) */
  --accent:#a07c61;
  --accent-2:#cbb49c;
  --accent-deep:#8a6a52;
  --display:'General Sans','Helvetica Neue',Arial,sans-serif;
  --mark:'Orbitron',sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --maxw:1140px;
  --ease:cubic-bezier(.16,1,.3,1);
  --ease-hero:cubic-bezier(0,.55,.45,1);
}

#siteHeader,#siteHeader *,#mobileMenu,#mobileMenu *,.site-footer,.site-footer *{box-sizing:border-box}
#siteHeader a,#mobileMenu a,.site-footer a{text-decoration:none}
#siteHeader button,#mobileMenu button{font-family:inherit;color:inherit}

.wmark{position:relative;overflow:hidden;border-radius:26%;display:inline-flex;align-items:center;justify-content:center;flex:none;color:#fff;font-family:var(--mark);font-weight:700;line-height:1;background:var(--wm,var(--w-jericho))}
.wmark::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.17) 0 50%,rgba(255,255,255,0) 50%)}
.wmark>b,.wmark>span.mk{position:relative;z-index:1;font-weight:700}
.wmark.s56{width:56px;height:56px;font-size:24px}
.wmark.s46{width:46px;height:46px;font-size:19px}
.wmark.s36{width:36px;height:36px;font-size:15px}
.wmark.s24{width:24px;height:24px;font-size:10.5px}
.wmark.s20{width:20px;height:20px;font-size:9px}
.wmark.two{letter-spacing:-.02em}
.wmark.two.s56{font-size:19px}.wmark.two.s46{font-size:15px}.wmark.two.s36{font-size:12px}.wmark.two.s24{font-size:8.5px}.wmark.two.s20{font-size:7px}
/* role glyphs: supporting language in the Products megamenu (never an avatar) */
.mi.mi-w{display:flex;gap:10px;align-items:center}
.mi-glyph{flex:none;width:18px;height:18px;margin-top:2px;color:var(--muted-2);transition:color .15s}
.mi-glyph svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mi:hover .mi-glyph{color:var(--clay-deep)}
.mi-w .mi-tx{min-width:0;display:block}
/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--display);font-size:14.5px;font-weight:500;padding:13px 22px;border-radius:40px;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:.22s ease;white-space:nowrap}
.btn .ar{transition:transform .22s ease}
.btn:hover .ar{transform:translateX(3px)}
.btn-accent{background:var(--accent);color:#fff}
.btn-accent:hover{background:var(--accent-deep)}
.btn-dark{background:var(--ink);color:var(--paper)}
.btn-dark:hover{background:var(--ink-2)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--clay-deep);color:var(--clay-deep)}
/* ---------- header (shared megamenu) ---------- */
#siteHeader{position:fixed;top:0;left:0;right:0;z-index:200;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-inner{max-width:var(--maxw);margin:0 auto;height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 26px}
.brand{display:flex;align-items:center;height:100%;transition:opacity .15s}
.brand img{height:23px;width:auto;display:block}
.brand:hover{opacity:.85}

.nav-center{display:flex;align-items:stretch;height:60px;gap:2px}
.nav-item{position:relative;height:60px;display:inline-flex;align-items:center;background:none;border:none;cursor:pointer;font-family:var(--display);padding:0 3px}
.nav-item .lbl{display:inline-flex;align-items:center;gap:5px;font-size:14.5px;font-weight:500;color:var(--muted);padding:7px 13px;border-radius:8px;transition:color .15s,background .15s}
.nav-item:hover .lbl,.nav-item.active .lbl{color:var(--ink);background:var(--bone-2)}
.nav-item .cv{width:9px;height:9px;stroke:currentColor;stroke-width:1.7;fill:none;transition:transform .2s var(--ease);opacity:.7}
.nav-item.active .cv{transform:rotate(180deg)}

.nav-right{display:flex;align-items:center;gap:10px}
.nav-link{font-size:14px;font-weight:500;color:var(--muted);padding:8px 12px;border-radius:8px;transition:.15s}
.nav-link:hover{color:var(--ink);background:rgba(0,0,0,.04)}
.btn-ask{display:inline-flex;align-items:center;gap:7px;background:var(--ink);color:#fff;font-size:13.5px;font-weight:500;padding:9px 17px;border-radius:100px;transition:opacity .15s}
.btn-ask:hover{opacity:.85}
.btn-ask .dot{width:6px;height:6px;border-radius:50%;background:var(--status)}

.burger{display:none;background:none;border:none;cursor:pointer;padding:8px;margin-right:-8px}
.burger svg{width:22px;height:22px;stroke:var(--ink);stroke-width:1.6;fill:none}

/* mega panels */
.mega-wrap{position:absolute;top:60px;left:0;right:0;display:flex;justify-content:center;pointer-events:none;padding:0 20px}
.mega{position:absolute;top:0;width:100%;max-width:1040px;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:0 36px 80px -34px rgba(21,17,13,.32),0 4px 14px -8px rgba(21,17,13,.12);padding:28px 32px 30px;opacity:0;transform:translateY(-8px);visibility:hidden;transition:opacity .22s var(--ease),transform .22s var(--ease),visibility .22s;pointer-events:none}
.mega.open{opacity:1;transform:translateY(0);visibility:visible;pointer-events:auto}
.mega-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line-2)}
.mega-head .mh-t{font-family:var(--display);font-weight:600;font-size:19px;letter-spacing:-.02em;color:var(--ink)}
.mega-head .mh-s{font-size:13.5px;color:var(--muted);margin-top:3px;max-width:46ch}
.mh-btn{flex:none;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--ink);border:1px solid var(--line);padding:8px 15px;border-radius:30px;transition:.18s;white-space:nowrap}
.mh-btn:hover{border-color:var(--clay-deep);color:var(--clay-deep)}
.mh-btn .ar{transition:transform .18s}
.mh-btn:hover .ar{transform:translateX(3px)}
.collabel{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin-bottom:12px}
.mi{display:block;padding:9px 11px;border-radius:10px;transition:background .15s;margin:0 -4px}
.mi:hover{background:var(--bone)}
.mi-name{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:600;color:var(--ink);letter-spacing:-.01em}
.mi-role{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--clay-deep);font-weight:500}
.mi:hover .mi-name{color:var(--clay-deep)}
.mi-desc{font-size:12.5px;color:var(--muted);line-height:1.45;margin-top:3px}
.livetag{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--status-d);background:rgba(62,196,109,.13);padding:2px 7px;border-radius:20px}
.livetag .sd{width:5px;height:5px;border-radius:50%;background:var(--status)}
.grid-prod{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.grid-sol{display:grid;grid-template-columns:repeat(4,1fr);gap:22px 26px}
.grid-prt{display:grid;grid-template-columns:1fr 1fr .95fr;gap:26px;align-items:stretch}
.mcol .mi+.mi{margin-top:2px}
.prt-cta{background:var(--ink);border-radius:14px;padding:22px 22px;display:flex;flex-direction:column;justify-content:center;color:#fff}
.prt-cta h4{font-family:var(--display);font-weight:600;font-size:16px;letter-spacing:-.01em;margin-bottom:7px}
.prt-cta p{font-size:12.5px;color:rgba(245,240,232,.66);line-height:1.5;margin-bottom:16px}
.prt-cta .pc-btn{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;background:#fff;color:var(--ink);font-size:13px;font-weight:500;padding:9px 15px;border-radius:30px;transition:.18s}
.prt-cta .pc-btn:hover{background:var(--bone-2)}
.prt-cta .pc-btn .ar{transition:transform .18s}
.prt-cta .pc-btn:hover .ar{transform:translateX(3px)}
.dropdown{position:absolute;top:100%;right:0;width:230px;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 30px 70px -34px rgba(21,17,13,.32),0 4px 14px -8px rgba(21,17,13,.12);padding:9px;opacity:0;transform:translateY(-8px);visibility:hidden;transition:opacity .2s var(--ease),transform .2s var(--ease),visibility .2s;pointer-events:none;z-index:210}
.dropdown.open{opacity:1;transform:translateY(0);visibility:visible;pointer-events:auto}
.dd-link{display:block;padding:10px 12px;border-radius:9px;font-size:14px;font-weight:500;color:var(--ink-2);transition:background .14s,color .14s}
.dd-link:hover{background:var(--bone);color:var(--clay-deep)}

/* mobile menu */
#mobileMenu{display:none;position:fixed;top:60px;left:0;right:0;bottom:0;background:var(--paper);z-index:190;overflow-y:auto;padding:8px 0 40px;border-top:1px solid var(--line)}
#mobileMenu.open{display:block}
.msec{border-bottom:1px solid var(--line-2)}
.msec-h{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:none;cursor:pointer;font-family:var(--display);font-size:16px;font-weight:600;color:var(--ink);padding:17px 24px;text-align:left}
.msec-h .cv{width:14px;height:14px;stroke:var(--muted);stroke-width:1.8;fill:none;transition:transform .22s var(--ease)}
.msec.open .msec-h .cv{transform:rotate(180deg)}
.msec-body{display:none;padding:0 24px 16px}
.msec.open .msec-body{display:block}
.msec-body a{display:block;padding:10px 0;font-size:14.5px;color:var(--muted)}
.msec-body a .mn{color:var(--ink-2);font-weight:600}
.msec-lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin:12px 0 4px}
.m-actions{padding:20px 24px;display:flex;flex-direction:column;gap:10px}
.m-actions a{text-align:center;padding:13px;border-radius:30px;font-weight:500;font-size:15px}
.m-ghost{border:1px solid var(--line);color:var(--ink)}
.m-dark{background:var(--ink);color:#fff}

.mark{font-family:var(--mark);font-weight:800;font-size:19px;letter-spacing:.16em;color:var(--paper);text-decoration:none}
@media(max-width:920px){
  .nav-center,.nav-right{display:none}
  .mega-wrap{display:none}
  .burger{display:block}
}
#siteHeader{transition:background .35s ease,border-color .35s ease}
#siteHeader.onhero{background:transparent;border-bottom-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
#siteHeader.onhero .lbl{color:rgba(255,255,255,.85)}
#siteHeader.onhero .nav-item:hover .lbl,#siteHeader.onhero .nav-item.active .lbl{color:#fff;background:rgba(255,255,255,.14)}
#siteHeader.onhero .nav-link{color:rgba(255,255,255,.85)}
#siteHeader.onhero .nav-link:hover{color:#fff;background:rgba(255,255,255,.1)}
.site-footer{background:var(--ink);padding:44px 0}
.footer-inner{max-width:var(--maxw);margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.footer-left{display:flex;align-items:center;gap:16px}
.footer-logo-img{height:20px;width:auto;display:block;filter:brightness(0) invert(1);opacity:.55}
.footer-tagline{font-size:13px;color:rgba(255,255,255,.6)}
.footer-center{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.footer-center a{font-size:13px;color:rgba(255,255,255,.7);transition:color .15s}
.footer-center a:hover{color:rgba(255,255,255,.95)}
.footer-right{display:flex;align-items:center;gap:16px}
.footer-legal{display:flex;align-items:center;gap:8px}
.footer-legal a{font-size:12px;color:rgba(255,255,255,.6);transition:color .15s}
.footer-legal a:hover{color:rgba(255,255,255,.85)}
.footer-legal span{font-size:12px;color:rgba(255,255,255,.4)}
.footer-socials{display:flex;align-items:center;gap:10px}
.footer-social{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:rgba(255,255,255,.06);transition:background .15s}
.footer-social:hover{background:rgba(255,255,255,.12)}
.footer-social svg{width:16px;height:16px;stroke:rgba(255,255,255,.5);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
/* ---------- multi-column footer (mirrors main nav) ---------- */
.site-footer{padding:64px 0 30px}
.site-footer .footer-inner{display:block}
.footer-top{display:grid;grid-template-columns:1.15fr 3fr;gap:40px;align-items:start}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.footer-brand .footer-logo-img{height:22px}
.footer-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.fcol{display:flex;flex-direction:column;gap:10px}
.fcol-h{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin-bottom:3px}
.fcol a{font-size:13.5px;color:rgba(255,255,255,.62);transition:color .15s}
.fcol a:hover{color:#fff}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:38px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1)}
.footer-copy{font-size:12px;color:rgba(255,255,255,.45)}
@media(max-width:820px){.footer-top{grid-template-columns:1fr;gap:30px}.footer-cols{grid-template-columns:1fr 1fr;gap:24px 20px}.footer-brand{align-items:center;text-align:center}.footer-bottom{justify-content:center}}
