/* header.css — site header + CSS-only hamburger nav */
.site-header { background: #f4efe6; border-bottom: 1px solid #d8cfc0; position: sticky; top: 0; z-index: 50; }
.site-header .site-header-inner { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; max-width: 1180px; margin: 0 auto; padding: 14px 20px; }
.site-header .site-header-logo { display: inline-flex; align-items: center; line-height: 0; }
.site-header .site-header-logo:hover { text-decoration: none; }
.site-header .site-nav-toggle { position: absolute; left: -9999px; }
.site-header .site-nav-button { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: #211c17; border: 1px solid #d8cfc0; border-radius: 6px; padding: 8px 14px; cursor: pointer; }
.site-header .site-nav { flex-basis: 100%; max-height: 0; overflow: hidden; transition: max-height 0.3s ease; }
.site-header .site-nav-toggle:checked ~ .site-nav { max-height: 420px; }
.site-header .site-nav-list { list-style: none; margin: 0; padding: 12px 0 4px; }
.site-header .site-nav-item { border-top: 1px solid #ece4d7; }
.site-header .site-nav-link { display: block; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 14px; letter-spacing: 0.04em; color: #211c17; padding: 12px 2px; }
.site-header .site-nav-link:hover { color: #b8482a; text-decoration: none; }

@media (min-width: 768px) {
  .site-header .site-nav-button { display: none; }
  .site-header .site-nav { flex-basis: auto; max-height: none; overflow: visible; }
  .site-header .site-nav-list { display: flex; gap: 26px; padding: 0; }
  .site-header .site-nav-item { border-top: 0; }
  .site-header .site-nav-link { padding: 4px 0; }
}
