/* Shared navigation and direct contact links. */
.header .nav{gap:22px;white-space:nowrap}
.header .header-inner{gap:24px}
.nav-visualizer{display:inline-flex;align-items:center;gap:6px}
.nav-visualizer svg{width:17px;height:17px;color:var(--lime);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.nav-contact{display:flex;gap:8px;padding-left:18px;border-left:1px solid #ffffff25}
.header .nav .nav-contact a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:9px 12px;border:1px solid #ffffff38;border-radius:100px;font-size:.8125rem;transition:background .2s,border-color .2s,color .2s}
.header .nav .nav-contact a:after{display:none}
.header .nav .nav-contact a:hover{background:#ffffff12;border-color:var(--lime);color:var(--lime)}
.nav-contact svg,.mobile-bar svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.header .nav a:focus-visible,.mobile-bar a:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
@media(max-width:1240px){
  .header .header-inner{gap:18px}
  .header .header-cta{margin-left:auto}
  .header .menu-toggle{display:block;flex-shrink:0}
  .header .nav{display:none;position:absolute;top:100%;left:0;right:0;background:#102e26;padding:20px max(24px,calc((100vw - 1144px)/2));border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff25;flex-direction:column;align-items:stretch;gap:5px;max-height:calc(100dvh - 170px);overflow-y:auto;overscroll-behavior:contain}
  .header .nav.open{display:flex}
  .header .nav>a{width:100%;min-height:44px;padding:11px 4px;font-size:1rem}
  .header .nav>a:after{bottom:5px;max-width:100px}
  .header .nav .nav-contact{width:100%;margin-top:10px;padding:16px 0 0;border-left:0;border-top:1px solid #ffffff25}
  .header .nav .nav-contact a{flex:1;width:auto;max-width:220px;font-size:.875rem}
}
@media(max-width:560px){
  .header .header-inner{gap:10px}
  .header .nav{padding:14px 20px 20px;max-height:calc(100dvh - 190px)}
  .mobile-bar{gap:7px;padding-left:12px;padding-right:12px}
  .mobile-bar .btn{gap:6px;padding:9px 7px;font-size:.75rem;white-space:nowrap;min-width:0}
  .mobile-bar .btn:last-child{flex:1.15}
}
@media(prefers-reduced-motion:reduce){.header .nav .nav-contact a{transition:none}}

@media(max-width:370px){.mobile-bar svg{display:none}}
