/* One navigation system across every public page, outside the legacy page reset. */
html{scroll-padding-top:104px}body{margin:0}.site-header,.site-header *,.site-menu,.site-menu *,.site-footer,.site-footer *{box-sizing:border-box}
.site-header{position:sticky;top:0;z-index:100;height:84px;display:flex;align-items:center;gap:30px;padding:0 4.5%;border-bottom:1px solid #c9c7b990;background:#eeeae0f5;color:#243135;backdrop-filter:blur(18px);font-family:'Instrument Sans',Arial,sans-serif;line-height:1.4}
.site-header a,.site-menu a,.site-footer a{color:inherit;text-decoration:none}.site-header .wordmark,.site-footer .wordmark{font:600 38px/1 'Instrument Sans',Arial,sans-serif;letter-spacing:-.075em}.site-header .wordmark>span,.site-footer .wordmark>span{color:#9b5940}
.site-header .header-role{font:8px/1.6 'IBM Plex Mono',monospace;color:#616b5c;letter-spacing:.02em;margin-left:35px}
.site-header .desktop-nav{display:flex;align-items:center;gap:27px;font-size:12px;margin-left:auto}
.site-header .desktop-nav>a{padding:10px 0;border-bottom:1px solid transparent}.site-header .desktop-nav>a:hover,.site-header .desktop-nav>a[aria-current]{border-color:#9b5940}
.site-header .header-cta{display:flex;align-items:center;gap:27px;border:1px solid #b5b7a6;padding:14px 17px;font-size:11px;white-space:nowrap}.site-header .header-cta>span{font-size:20px}
.site-header .menu-toggle{display:none;gap:18px;align-items:center;font:11px 'Instrument Sans',Arial,sans-serif;background:none;border:1px solid #b5b7a6;padding:12px;color:inherit;cursor:pointer}.site-header .menu-toggle>span{font-size:20px;line-height:1}
.site-menu{position:fixed;inset:84px 0 auto;z-index:99;background:#e3e3d7;color:#243135;padding:34px 5% 40px;display:grid;grid-template-columns:1fr 1fr;gap:45px;max-height:calc(100dvh - 84px);overflow:auto;box-shadow:0 20px 30px #1c2b2d20;font-family:'Instrument Sans',Arial,sans-serif}.site-menu[hidden]{display:none!important}.site-menu>div{display:flex;flex-direction:column;gap:17px}.site-menu>div>span{font:9px/1.6 'IBM Plex Mono',monospace;letter-spacing:.08em;color:#626c59}.site-menu a{font-size:23px;line-height:1.25;letter-spacing:-.03em;max-width:max-content}.site-menu a[aria-current]{border-bottom:1px solid #9b5940}
.site-footer{background:#e4e2d6;color:#293631;padding:38px 5% 24px;font-family:'Instrument Sans',Arial,sans-serif;border-top:1px solid #c9c7b990}.site-footer-top{display:grid;grid-template-columns:1fr 1fr 2.5fr;align-items:start;gap:35px}.site-footer p{margin:0;font-size:13px;line-height:1.6}.site-footer nav{display:flex;gap:15px 25px;flex-wrap:wrap;font-size:12px;line-height:1.6}.site-footer a:hover{text-decoration:underline;text-underline-offset:5px}.site-footer-bottom{display:flex;gap:25px;align-items:start;border-top:1px solid #b7bbaa;padding-top:22px;margin-top:30px;font-size:11px}.site-footer-bottom>span{font:8px/1.8 'IBM Plex Mono',monospace;margin-right:auto}.site-footer details{max-width:42ch}.site-footer summary{cursor:pointer}.site-footer details p{font-size:11px;line-height:1.7;margin-top:12px}.site-header :focus-visible,.site-menu :focus-visible,.site-footer :focus-visible{outline:2px solid #8a5c3d;outline-offset:5px}
@media(max-width:1150px){.site-header .header-role{display:none}}
@media(max-width:900px){.site-header .desktop-nav{display:none}.site-header .header-cta{margin-left:auto}.site-header .menu-toggle{display:flex}.site-footer-top{grid-template-columns:1fr 1fr}.site-footer nav{grid-column:1/-1}}
@media(max-width:750px){html{scroll-padding-top:92px}.site-header{height:74px;padding-inline:22px;gap:14px}.site-header .wordmark{font-size:34px}.site-header .header-cta{font-size:10px;padding:11px 13px;gap:18px}.site-header .menu-toggle{font-size:10px;padding:13px 12px;gap:16px}.site-menu{top:74px;max-height:calc(100dvh - 74px);padding:26px 22px 31px;gap:30px;grid-template-columns:1fr 1fr}.site-menu a{font-size:19px}.site-menu>div{gap:18px}.site-menu>div>span{font-size:7px}.site-footer{padding:29px 22px 24px}.site-footer-top{gap:26px}.site-footer p{font-size:12px}.site-footer nav{font-size:12px;gap:15px 22px}.site-footer-bottom{flex-wrap:wrap;gap:18px;font-size:10px;margin-top:25px}.site-footer-bottom>span{font-size:7px;width:100%}.site-footer-bottom>details{max-width:70%}.site-footer-bottom>a{margin-left:auto}}
@media(max-width:360px){.site-header{padding-inline:18px;gap:8px}.site-header .wordmark{font-size:31px}.site-header .header-cta{font-size:10px;padding:10px 8px;gap:5px;min-height:44px}.site-header .header-cta>span{font-size:15px}.site-header .menu-toggle{font-size:9px;padding:12px 10px;gap:11px}.site-menu{padding-inline:18px;gap:22px}.site-menu a{font-size:17px}}
/* Legacy pages allowed space for a fixed header; the shared header is in flow. */
#gs-portfolio .engagement-hero,#gs-portfolio .about-signature{padding-top:36px}
#gs-portfolio .chapter-hero{padding-top:61px}
@media(max-width:750px){#gs-portfolio .engagement-hero,#gs-portfolio .about-signature{padding-top:31px}#gs-portfolio .chapter-hero{padding-top:36px}}
