.site-header{position:sticky;top:0;z-index:1000;background:var(--color-surface-base);border-bottom:1px solid var(--color-border-subtle)}
body.nav-open{overflow:hidden}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:72px}
.brand{display:flex;align-items:center;gap:var(--space-3);min-width:0}
.brand-mark{width:48px;height:auto}
.brand-text{font-family:var(--font-heading);font-size:1.25rem;white-space:nowrap}

.nav-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-md);border:1px solid var(--color-border-subtle)}
.nav-toggle-lines, .nav-toggle-lines::before, .nav-toggle-lines::after{display:block;width:20px;height:2px;background:var(--color-text-primary);position:relative}
.nav-toggle-lines::before,.nav-toggle-lines::after{content:"";position:absolute;left:0}
.nav-toggle-lines::before{top:-6px}
.nav-toggle-lines::after{top:6px}
.nav-close{display:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:transparent;color:var(--color-text-primary);cursor:pointer}
.nav-close span,.nav-close span::after{display:block;width:22px;height:2px;background:currentColor;border-radius:999px}
.nav-close span{transform:rotate(45deg)}
.nav-close span::after{content:"";transform:rotate(90deg)}

.primary-nav{display:flex;align-items:center;gap:var(--space-4)}
.nav-list{display:flex;gap:var(--space-4);list-style:none;margin:0;padding:0}
.nav-list li{margin:0;padding:0}
.nav-list a{font-weight:500;position:relative}
.nav-list a[aria-current="page"]::after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:2px;background:var(--color-accent-teal)}
.nav-actions{display:flex;align-items:center}

@media(max-width:900px){
  .nav-toggle{display:flex}
  .primary-nav{position:fixed;inset:0;background:var(--color-surface-base);flex-direction:column;align-items:flex-start;padding:calc(var(--space-7) + 44px) var(--container-pad-mobile) var(--space-5);transform:translateX(100%);visibility:hidden;pointer-events:none;transition:transform .3s ease,visibility 0s linear .3s;overflow-y:auto;overscroll-behavior:contain}
  .primary-nav.open{transform:translateX(0);visibility:visible;pointer-events:auto;transition-delay:0s}
  .nav-close{display:flex;position:absolute;top:var(--space-3);right:var(--container-pad-mobile)}
  .nav-list{flex-direction:column;gap:var(--space-4);width:100%}
  .nav-list a{display:block;font-size:clamp(1.35rem,6vw,2rem);line-height:1.3;padding-block:var(--space-1)}
  .nav-actions{width:100%;margin-top:var(--space-4)}
  .nav-actions .button{width:min(100%,310px);min-height:52px}
  .brand-mark{width:40px}
}

@media(max-width:420px){
  .header-inner{min-height:64px}
  .brand{gap:var(--space-2)}
  .brand-text{font-size:1.05rem}
  .brand-mark{width:36px}
}
