.site-header{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(250,247,242,0.9);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--color-border);
}
.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:80px;
}
.brand{
  display:flex;
  align-items:center;
  gap:0.6rem;
}
.brand-mark{
  height:44px;
  width:auto;
}
.brand-text{
  font-family:var(--font-heading);
  font-size:1.1rem;
  letter-spacing:0.06em;
}
.nav-toggle{
  display:none;
  flex-direction:column;
  gap:4px;
  padding:8px;
}
.nav-toggle-line{
  width:22px;
  height:2px;
  background:var(--color-text-primary);
}
.site-nav{
}
.nav-list{
  display:flex;
  align-items:center;
  gap:1.5rem;
  margin:0;
  padding:0;
}
.nav-list li{margin:0;padding:0;}
.nav-list a{
  font-family:var(--font-heading);
  font-size:0.8rem;
  letter-spacing:0.08em;
  position:relative;
}
.nav-list a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  width:0;
  height:2px;
  background:var(--color-accent-gold);
  transition:width var(--transition-fast);
}
.nav-list a:hover::after{width:100%;}
.nav-cta a{margin-left:0.5rem;}

@media (max-width:900px){
  .nav-toggle{display:flex;}
  .site-nav{
    position:fixed;
    top:80px;
    right:0;
    width:100%;
    max-width:320px;
    height:calc(100vh - 80px);
    background:var(--color-surface);
    box-shadow:var(--shadow-soft);
    transform:translateX(100%);
    transition:transform var(--transition-smooth);
    display:flex;
  }
  .site-nav.open{transform:translateX(0);}
  .nav-list{
    flex-direction:column;
    align-items:flex-start;
    padding:2rem;
    gap:1rem;
    width:100%;
  }
  .brand-mark{height:32px;}
  .header-inner{min-height:64px;}
}
