/* Canonical header used by the landing page and Resources. */
.site-header { position:sticky; top:0; z-index:50; height:88px; background:rgba(255,255,255,.96); border-bottom:1px solid #e3e8e5; font-family:'DM Sans',sans-serif; }
.site-header .header-inner { width:min(1280px,calc(100% - 96px)); height:100%; padding:0; margin-inline:auto; display:flex; justify-content:space-between; align-items:center; gap:24px; }
.site-header .brand { display:inline-flex; align-items:center; gap:12px; flex-shrink:0; color:#20201d; text-decoration:none; }
.site-header .brand-mark { display:flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:50%; background:#111; }
.site-header .brand-mark img { width:38px; height:38px; border-radius:50%; object-fit:contain; }
.site-header .brand-name { font-size:15px; font-weight:650; letter-spacing:3px; }
.site-header .brand-name>span { display:block; font-family:'IBM Plex Mono',monospace; font-size:8px; font-weight:400; letter-spacing:1.7px; margin-top:5px; }
.site-header nav { display:flex; align-items:center; gap:30px; font-size:12px; font-weight:500; }
.site-header nav>a { position:relative; color:#20201d; padding-block:12px; text-decoration:none; }
.site-header nav>a:hover,.site-header nav>a[aria-current] { color:#96722d; }
.site-header nav>a[aria-current]:not(.nav-cta) { text-decoration:underline; text-underline-offset:8px; }
.site-header nav .nav-cta { display:inline-flex; align-items:center; padding:12px 18px; gap:16px; background:#25241f; color:#fff; border:1px solid #25241f; border-radius:5px; }
.site-header nav .nav-cta span { margin:0; }
.site-header nav .nav-cta:hover { background:#96722d; color:#fff; }
.site-header .menu-toggle { display:none; }
.site-header a:focus-visible,.site-header button:focus-visible { outline:2px solid #96722d; outline-offset:4px; }
@media(max-width:1150px) { .site-header .header-inner { width:calc(100% - 64px); } .site-header nav { gap:20px; } }
@media(max-width:900px) { .site-header nav { gap:16px; font-size:11px; } .site-header .brand-name { font-size:13px; letter-spacing:2px; } .site-header .brand-mark { width:40px; height:40px; } .site-header .brand-mark img { width:34px; height:34px; } .site-header nav .nav-cta { padding-inline:12px; gap:6px; } }
@media(max-width:860px) { .site-header { height:78px; } .site-header .menu-toggle { display:flex; align-items:center; gap:18px; background:transparent; color:#20201d; border:1px solid #e3e8e5; border-radius:4px; padding:10px 14px; font-size:12px; cursor:pointer; } .site-header nav { display:none; position:absolute; top:77px; left:0; right:0; padding:20px; background:#fff; border-bottom:1px solid #e3e8e5; flex-direction:column; align-items:stretch; gap:4px; font-size:14px; } .site-header nav.is-open { display:flex; } .site-header nav>a { padding:12px; } .site-header nav .nav-cta { display:flex; justify-content:space-between; margin-top:8px; padding:13px; } }
@media(max-width:720px) { .site-header .header-inner { width:calc(100% - 40px); } .site-header .brand-name { font-size:12px; letter-spacing:2px; } .site-header .brand-name>span { font-size:7px; } .site-header .brand-mark { width:38px; height:38px; } .site-header .brand-mark img { width:32px; height:32px; } }
.site-header,.site-header * { box-sizing:border-box; }
.site-header nav { line-height:18px; }
html { scrollbar-gutter:stable; }
html::-webkit-scrollbar { width:8px; }
html::-webkit-scrollbar-track { background:#fff; }
html::-webkit-scrollbar-thumb { background:#b9c8bf; border-radius:6px; }
html { scrollbar-color:auto; }
::-webkit-scrollbar { width:8px; }
::-webkit-scrollbar-track { background:#fff; }
::-webkit-scrollbar-thumb { background:#b9c8bf; border-radius:6px; }
