.site-header{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  background:var(--color-bg-primary);
  border-bottom:var(--border-thin);
  z-index:1000;
}
body{padding-top:80px;}
.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:80px;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
}
.brand-mark{
  height:44px;
  width:auto;
}
.brand-text{
  font-family:var(--font-heading);
  font-size:1.2rem;
  letter-spacing:0.08em;
}
.primary-nav{
  display:block;
}
.nav-list{
  display:flex;
  gap:24px;
  align-items:center;
  list-style:none;
}
.nav-cta a{
  background:var(--color-accent-primary);
  padding:10px 16px;
}
.nav-toggle{
  display:none;
  width:48px;
  height:48px;
  align-items:center;
  justify-content:center;
}
.nav-toggle-lines,
.nav-toggle-lines::before,
.nav-toggle-lines::after{
  content:"";
  display:block;
  width:22px;
  height:2px;
  background:#fff;
  position:relative;
}
.nav-toggle-lines::before{position:absolute;top:-6px;}
.nav-toggle-lines::after{position:absolute;top:6px;}
@media(max-width:900px){
  .nav-toggle{display:flex;}
  .primary-nav{
    position:fixed;
    top:80px;
    right:0;
    width:100%;
    max-width:320px;
    background:var(--color-bg-secondary);
    border-left:var(--border-thin);
    transform:translateX(100%);
    transition:transform var(--transition-fast);
    height:calc(100vh - 80px);
    overflow-y:auto;
  }
  .primary-nav.open{transform:translateX(0);}
  .nav-list{
    flex-direction:column;
    align-items:flex-start;
    padding:24px;
  }
}