/* Shared site header (all pages) */
.gh {
  --gh-gutter: 24px;
  display: flex; align-items: center; gap: 24px;
  width: 100%; max-width: calc(1112px + var(--gh-gutter) * 2); margin: 0 auto;
  padding: 24px var(--gh-gutter) 0;
  font-family: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
}
.wrap > .gh { padding-left: 0; padding-right: 0; }
.gh-name {
  margin-right: auto;
  font-family: "Newsreader", Georgia, serif; font-weight: 500; font-optical-sizing: none;
  font-size: 24px; line-height: 28px; letter-spacing: -0.02em;
  color: #171614; text-decoration: none; white-space: nowrap;
}
.gh-nav { display: flex; align-items: center; gap: 24px; }
.gh-link {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 0; border-bottom: 1px solid transparent;
  font-size: 15px; line-height: 1.5; color: #45433f; text-decoration: none; white-space: nowrap;
  transition: color 160ms ease, border-color 160ms ease;
}
.gh-link--work { gap: 4px; }
.gh-link svg { flex: none; width: 20px; height: 20px; }
.gh-link--about svg { width: 24px; height: 24px; margin: -2px 0; }
.gh-link:hover { color: #171614; border-bottom-color: #d9d5cf; }
.gh-link[aria-current="page"] { color: #171614; border-bottom-color: #75726c; }
.gh-cta {
  flex: none; display: inline-flex; align-items: center;
  padding: 8px 16px; border: 1px solid #45433f; border-radius: 100px;
  font-size: 15px; line-height: 1.5; color: #45433f; text-decoration: none; white-space: nowrap;
  transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
}
.gh-cta:hover { background: #171614; border-color: #171614; color: #fff; }
.gh a:focus-visible { outline: 2px solid #171614; outline-offset: 3px; border-radius: 4px; }
@media (max-width: 760px) {
  .gh { --gh-gutter: 16px; flex-wrap: wrap; row-gap: 8px; padding-top: 20px; }
  .gh-nav { order: 3; width: 100%; gap: 20px; overflow-x: auto; scrollbar-width: none; }
  .gh-nav::-webkit-scrollbar { display: none; }
  .gh-cta { padding: 6px 14px; font-size: 14px; }
}
