.site-header { position: sticky; z-index: 50; top: 0; background: rgba(244,241,225,.96); border-bottom: 1px solid rgba(141,111,77,.2); backdrop-filter: blur(12px); }
.nav { display: flex; min-height: 82px; align-items: center; justify-content: space-between; }
.brand { display: flex; width: 118px; height: 68px; align-items: center; }
.brand img { width: 108px; height: auto; }
.nav-links { display: flex; align-items: center; gap: clamp(18px, 2.4vw, 38px); font-size: .8rem; font-weight: var(--fw-strong); letter-spacing: .02em; }
.nav-links > a:not(.button) { padding: 10px 0; }
.nav-links > a:not(.button):hover { color: var(--wine); }
.menu-toggle { display: none; width: 44px; height: 44px; border: 0; background: transparent; cursor: pointer; }
.menu-toggle span { display: block; width: 23px; height: 1px; margin: 5px auto; background: var(--ink); }

@media (max-width: 1100px) {
  .nav-links { gap: 18px; }
  .nav-links > a:not(.button) { display: none; }
}

@media (max-width: 800px) {
  .nav { min-height: 72px; }
  .brand { height: 60px; }
  .brand img { width: 92px; }
  .menu-toggle { display: block; }
  .nav-links { position: absolute; top: 72px; right: 0; left: 0; display: none; align-items: stretch; flex-direction: column; gap: 0; padding: 20px 18px 26px; border-bottom: 1px solid var(--line); background: var(--ivory); }
  .nav-links.open { display: flex; }
  .nav-links > a:not(.button) { display: block; padding: 12px 0; border-bottom: 1px solid var(--line); }
  .nav-links .button { margin-top: 14px; }
}
