
@keyframes header-menu-in{from{opacity:0;transform:translate(-50%,-5px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:1050px){
  .menu-toggle,.menu{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:82px;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--forest);font:700 10px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background .18s,border-color .18s,color .18s}
  .menu-icon{display:block;width:17px;height:17px;flex:0 0 auto}
  .menu-icon path{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
  .menu-toggle:hover,.menu:hover{background:var(--cream);border-color:var(--brass)}
  .menu-toggle[aria-expanded=true],.menu[aria-expanded=true]{background:var(--forest);border-color:var(--forest);color:var(--paper)}
  .menu-toggle:focus-visible,.menu:focus-visible,.nav-links a:focus-visible{outline:3px solid var(--brass);outline-offset:3px}
  .nav-cta{display:none}
  .nav-links{display:none;position:absolute;top:calc(100% + 8px);left:50%;right:auto;transform:translateX(-50%);width:min(640px,calc(100% - 32px));max-height:calc(100vh - 104px);overflow:auto;overscroll-behavior:contain;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--paper);box-shadow:0 18px 38px rgba(15,33,24,.18);grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;flex-direction:initial;align-items:initial}
  .nav-links[data-open=true],.nav-links[data-open="true"]{display:grid;animation:header-menu-in .16s ease-out both}
  .nav-links a,.nav-links a:last-child{display:flex;align-items:center;min-height:46px;padding:10px 12px;border:1px solid #e9e5db;border-radius:4px;background:rgba(255,255,255,.72);color:#374139;text-decoration:none;font-size:12px;font-weight:600;line-height:1.25;transition:background .18s,border-color .18s,color .18s}
  .nav-links a:hover{background:var(--cream);border-color:var(--line);color:var(--forest)}
  .nav-actions>.btn{display:inline-flex;min-height:44px;padding:0 14px;font-size:10px}
}
@media(max-width:720px){.nav-actions>.btn{display:none}}
@media(max-width:540px){
  .announcement,.topline{display:none}
  .nav{min-height:66px;gap:8px}
  .brand{gap:8px}
  .brand-mark{width:32px;height:35px}
  .brand-name{font-size:20px}
  .brand-place{font-size:7px;letter-spacing:.16em}
  .menu-toggle,.menu{min-height:42px;padding:0 11px}
  .nav-links{width:calc(100% - 24px);padding:9px;gap:4px}
  .nav-links a,.nav-links a:last-child{min-height:43px;padding:9px 8px;font-size:11px}
}
@media(max-width:360px){.nav{width:calc(100% - 24px)}.brand-name{font-size:18px}.nav-links{width:calc(100% - 20px);padding:8px;gap:3px}.nav-links a,.nav-links a:last-child{padding:8px 6px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.nav-links[data-open=true],.nav-links[data-open="true"],.menu-toggle,.menu,.menu-icon path{animation:none!important;transition:none!important}}
