/* Shared site chrome: one accent, one navigation, one footer. Loaded after each page's own <style>. */
:root{
  --cyan:#0088AA;--cyan-bright:#00AACC;--cyan-dim:#005F78;--gold:#9A6E00;--border:#C8C2B2;
  --sn-bg:#0A1E35;--sn-bg2:#132B47;--sn-ink:#EEE9DF;--sn-muted:rgba(238,233,223,0.72);
}
/* one accent: the red "track-audit" variant is retired */
body.track-audit{--cyan:#0088AA;--cyan-bright:#00AACC;--cyan-dim:#005F78;--gold:#9A6E00;--border:#C8C2B2;}
/* navigation */
nav.sn{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:24px;
  background:var(--sn-bg);padding:0 32px;min-height:60px;margin:0;border:0;box-shadow:0 1px 0 rgba(255,255,255,0.06);}
nav.sn a{text-decoration:none;border:0;margin:0;}
nav.sn .sn-logo,nav.sn .sn-menu a{line-height:20px;}
nav.sn .sn-logo{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:13px;letter-spacing:3px;text-transform:uppercase;color:var(--sn-ink);white-space:nowrap;padding:18px 0;}
nav.sn .sn-logo span{color:var(--cyan-bright);}
nav.sn .sn-menu{display:flex;align-items:center;gap:22px;}
nav.sn .sn-item{position:relative;}
nav.sn .sn-top{display:block;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--sn-muted);padding:20px 0 17px;border-bottom:3px solid transparent;white-space:nowrap;transition:color .2s;}
nav.sn .sn-top:hover,nav.sn .sn-item:hover>.sn-top{color:var(--sn-ink);}
nav.sn .sn-top[aria-current]{color:var(--cyan-bright);border-bottom-color:var(--cyan-bright);}
nav.sn .has-sub>.sn-top::after{content:"";display:inline-block;width:5px;height:5px;margin:0 0 3px 7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);opacity:.7;}
nav.sn .sn-sub{display:none;position:absolute;left:-16px;top:100%;min-width:230px;background:var(--sn-bg2);border:1px solid rgba(255,255,255,0.08);border-top:2px solid var(--cyan-bright);padding:6px 0;box-shadow:0 12px 28px rgba(0,0,0,0.35);}
nav.sn .sn-item:hover>.sn-sub,nav.sn .sn-item:focus-within>.sn-sub{display:block;}
nav.sn .sn-sub a{display:block;font-family:'DM Sans',system-ui,sans-serif;font-size:14px;color:var(--sn-ink);padding:10px 16px;white-space:nowrap;}
nav.sn .sn-sub a:hover{background:rgba(255,255,255,0.06);}
nav.sn .sn-sub a[aria-current="page"]{color:var(--cyan-bright);}
nav.sn .sn-toggle{display:none;align-items:center;gap:10px;background:none;border:1px solid rgba(238,233,223,0.25);border-radius:6px;color:var(--sn-ink);
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px;letter-spacing:2px;text-transform:uppercase;min-height:44px;padding:0 14px;cursor:pointer;}
nav.sn .sn-bars{display:flex;flex-direction:column;gap:4px;}
nav.sn .sn-bars span{display:block;width:18px;height:2px;background:var(--sn-ink);transition:transform .2s,opacity .2s;}
nav.sn .sn-toggle[aria-expanded="true"] .sn-bars span:nth-child(1){transform:translateY(6px) rotate(45deg);}
nav.sn .sn-toggle[aria-expanded="true"] .sn-bars span:nth-child(2){opacity:0;}
nav.sn .sn-toggle[aria-expanded="true"] .sn-bars span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}
nav.sn a:focus-visible,nav.sn button:focus-visible{outline:2px solid var(--cyan-bright);outline-offset:3px;}
@media (min-width:980px) and (max-width:1180px){
  nav.sn{padding:0 20px;gap:16px;}
  nav.sn .sn-logo{letter-spacing:2px;}
  nav.sn .sn-menu{gap:15px;}
  nav.sn .sn-top{letter-spacing:1px;}
}
@media (max-width:979px){
  nav.sn{padding:0 16px;flex-wrap:wrap;}
  nav.sn .sn-toggle{display:inline-flex;}
  nav.sn .sn-menu{display:none;flex:0 0 calc(100% + 32px);width:calc(100% + 32px);flex-direction:column;align-items:stretch;gap:0;margin:0 -16px;padding:4px 0 16px;
    background:var(--sn-bg2);border-top:1px solid rgba(255,255,255,0.08);max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}
  nav.sn.open .sn-menu{display:flex;}
  nav.sn .sn-item{border-bottom:1px solid rgba(255,255,255,0.07);}
  nav.sn .sn-item:last-child{border-bottom:0;}
  nav.sn .sn-top{font-size:15px;letter-spacing:2px;color:var(--sn-ink);padding:15px 20px;border-bottom:0;border-left:4px solid transparent;}
  nav.sn .sn-top[aria-current]{border-left-color:var(--cyan-bright);background:rgba(0,170,204,0.08);}
  nav.sn .has-sub>.sn-top::after{display:none;}
  nav.sn .sn-sub,nav.sn .sn-item:hover>.sn-sub,nav.sn .sn-item:focus-within>.sn-sub{display:block;position:static;min-width:0;background:none;border:0;box-shadow:none;padding:0 0 10px;}
  nav.sn .sn-sub a{font-size:15px;color:var(--sn-muted);padding:9px 20px 9px 40px;white-space:normal;}
  nav.sn .sn-sub a::before{content:"– ";color:rgba(238,233,223,0.35);}
}
/* footer */
footer.sf{background:var(--sn-bg);color:var(--sn-muted);padding:48px 32px 28px;margin:0;border:0;}
footer.sf .sf-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;}
footer.sf .sf-brand{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:13px;letter-spacing:3px;text-transform:uppercase;color:var(--sn-ink);margin-bottom:12px;}
footer.sf .sf-brand span{color:var(--cyan-bright);}
footer.sf p{font-family:'EB Garamond',Georgia,serif;font-size:16px;line-height:1.6;color:var(--sn-muted);margin:0;}
footer.sf h4{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--cyan-bright);margin:0 0 12px;}
footer.sf .sf-col a{display:block;font-family:'DM Sans',system-ui,sans-serif;font-size:14px;color:var(--sn-muted);text-decoration:none;border:0;padding:5px 0;}
footer.sf .sf-col a:hover{color:var(--sn-ink);}
footer.sf .sf-bottom{max-width:1100px;margin:32px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,0.08);font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;letter-spacing:1px;color:rgba(238,233,223,0.45);}
@media (max-width:800px){footer.sf{padding:40px 16px 24px;}footer.sf .sf-grid{grid-template-columns:1fr 1fr;gap:28px 20px;}footer.sf .sf-about{grid-column:1/-1;}}
/* second accent (amber): key numbers, record labels, primary actions. Cyan stays for navigation and links. */
:root{--acc:#E8B04A;--acc-ink:#8A5A00;}
.stats-bar .stat-num{color:var(--acc);}
body .stats-bar{border-bottom-color:var(--acc);}
.stats-light .stat-num,.stats-light .stat-num span{color:var(--acc-ink);}
body .stats-bar.stats-light{border-bottom-color:var(--acc);}
.record-kicker{background:var(--acc)!important;color:#0A1E35!important;font-weight:600;}
a.btn:not(.btn-ghost){background:var(--acc);color:#0A1E35;}
a.btn:not(.btn-ghost):hover{filter:brightness(1.08);}
.btn-primary{background:var(--acc)!important;color:#0A1E35!important;}
/* Services: the one menu item styled as an invitation */
nav.sn .sn-cta>.sn-top{color:var(--acc);border:1px solid rgba(232,176,74,0.7);border-radius:4px;padding:6px 12px;margin:13px 0;}
nav.sn .sn-cta>.sn-top:hover,nav.sn .sn-cta:hover>.sn-top{color:#0A1E35;background:var(--acc);border-color:var(--acc);}
nav.sn .sn-cta>.sn-top[aria-current]{color:#0A1E35;background:var(--acc);border-color:var(--acc);}
nav.sn .sn-cta .sn-sub{left:auto;right:0;border-top-color:var(--acc);}
@media (max-width:979px){
  nav.sn .sn-cta>.sn-top{margin:0;border:0;border-radius:0;padding:15px 20px;border-left:4px solid var(--acc);color:var(--acc);}
  nav.sn .sn-cta>.sn-top[aria-current]{background:rgba(232,176,74,0.12);color:var(--acc);}
}
/* retired red accent: remaining page-level traces mapped to cyan */
body.track-audit .inline-link{border-bottom-color:rgba(0,95,120,0.3);}
body.track-audit .inline-link:hover{border-bottom-color:var(--cyan);}
body.track-audit .findings strong{background:rgba(0,95,120,0.08);}
body.track-audit .page-header::before{background-image:linear-gradient(rgba(0,170,204,0.07) 1px,transparent 1px),linear-gradient(90deg,rgba(0,170,204,0.07) 1px,transparent 1px);}
