/* Shared, persistent navigation on every page, including the printable résumé. */
:root{--site-header-height:108px}
html{scroll-padding-top:calc(var(--site-header-height) + 16px)}
.site-header{position:sticky;top:0;z-index:20;border-bottom:1px solid #d4dfe9;background:#faf8f2;color:#172f4d;font:14px/1.5 'Segoe UI',Arial,sans-serif}
.site-header *{box-sizing:border-box}
.site-header .header-inner{width:min(1160px,calc(100% - 80px));margin-inline:auto;min-height:108px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px}
.site-header .wordmark{grid-column:1;grid-row:1;font:28px/1.15 Georgia,'Times New Roman',serif;letter-spacing:-.8px;color:inherit;text-decoration:none;white-space:nowrap}
.site-header .wordmark span{display:block;font:11px/1.5 'Segoe UI',Arial,sans-serif;letter-spacing:1.8px;margin-top:7px}
.site-header .menu-toggle{grid-column:3;grid-row:1;display:block;background:transparent;color:inherit;border:1px solid #a7bacd;border-radius:7px;min-height:44px;padding:9px 15px;font:14px/1.5 'Segoe UI',Arial,sans-serif;cursor:pointer}
.site-header .menu-toggle[hidden]{display:none}
.site-header nav{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:flex-end;gap:20px;min-width:0;font-size:13px;font-weight:600}
.site-header nav a{display:flex;align-items:center;min-height:44px;padding:10px 0;color:inherit;text-decoration:none;white-space:nowrap}
.site-header nav a:hover,.site-header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}
.site-header a:focus-visible,.site-header button:focus-visible{outline:3px solid #326ca5;outline-offset:4px}
html[data-menu=closed] .site-header #primary-nav{display:none}
@media(max-width:1120px){
  .site-header .header-inner{width:calc(100% - 64px);grid-template-columns:minmax(0,1fr) auto;gap:12px 24px;padding-block:18px;min-height:92px}
  .site-header .menu-toggle{grid-column:2}
  .site-header nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:12px 24px;flex-wrap:wrap}
  .site-header .wordmark{font-size:26px}
}
@media(max-width:680px){
  :root{--site-header-height:240px}
  .site-header .header-inner{width:calc(100% - 40px);padding-block:16px;min-height:85px;gap:14px 16px}
  .site-header .wordmark{font-size:26px}
  .site-header .wordmark span{font-size:10px;margin-top:5px}
  .site-header nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;max-height:30vh;max-height:30dvh;overflow-y:auto;overscroll-behavior:contain;padding:5px}
  .site-header nav a{padding:10px;white-space:normal;font-size:13px}
}
@media(max-width:360px){.site-header .wordmark{font-size:23px;white-space:normal}.site-header .menu-toggle{padding-inline:12px}.site-header nav a{font-size:12px}}
@media print{.site-header{display:none}html{scroll-padding-top:0}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.creator-credit{font:12px/1.6 'Segoe UI',Arial,sans-serif;color:#536579;margin:18px 0 0}
.creator-credit a{display:inline-block;padding-block:5px;color:inherit;text-underline-offset:3px;overflow-wrap:anywhere}
.creator-credit a:focus-visible{outline:3px solid #326ca5;outline-offset:3px}
.resume-credit{width:min(1160px,calc(100% - 40px));margin:0 auto;padding:0 0 24px}
@media print{.creator-credit,.resume-credit{display:none}}
