/* Argenox signal control. Finite, interruptible transitions; no idle loop. */
@media (max-width:1040px) {
 .site-header .nav-toggle { position: relative; display: flex; flex: 0 0 48px; flex-direction: column; align-items: center; justify-content: center; gap: 0; width: 48px; height: 48px; padding: 0; border: 1px solid var(--border-2); border-radius: 15px; background: var(--surface); color: var(--text); -webkit-tap-highlight-color: transparent; touch-action: manipulation; transition: background-color 200ms ease, border-color 200ms ease, color 200ms ease, transform 120ms var(--ease-out); }
 .site-header .nav-toggle:active { transform: scale(.96); }
 .site-header .nav-toggle:focus-visible { outline: 2px solid var(--cyan-ink); outline-offset: 3px; }
 .ax-menu-symbol { display: block; width: 30px; height: 30px; }
 .ax-menu-symbol svg { display: block; width: 100%; height: 100%; overflow: visible; }
 .ax-menu-wave,.ax-menu-cross { transform-origin: 16px 16px; transition: transform 250ms var(--ease-out), opacity 160ms ease; }
 .ax-menu-wave-outer { color: var(--cyan-ink); }
 .ax-menu-wave-middle { transition-delay: 30ms; }
 .ax-menu-wave-inner { transition-delay: 60ms; }
 .ax-menu-cross { opacity: 0; transform: rotate(0deg) scaleX(.65); }
 .site-header .nav-toggle[aria-expanded="true"] { background: var(--navy); border-color: var(--navy); color: #fff; }
 .nav-toggle[aria-expanded="true"] .ax-menu-wave { opacity: 0; }
 .nav-toggle[aria-expanded="true"] .ax-menu-wave-outer { transform: translateY(-4px) scale(1.08); }
 .nav-toggle[aria-expanded="true"] .ax-menu-wave-middle { transform: translateY(-2px); }
 .nav-toggle[aria-expanded="true"] .ax-menu-wave-inner { transform: translateY(2px); }
 .nav-toggle[aria-expanded="true"] .ax-menu-cross { opacity: 1; transition-delay: 60ms; }
 .nav-toggle[aria-expanded="true"] .ax-menu-cross-a { transform: rotate(45deg) scaleX(1); }
 .nav-toggle[aria-expanded="true"] .ax-menu-cross-b { transform: rotate(-45deg) scaleX(1); }
 /* Keep the existing navigation mounted so closing can reverse from any point. */
 .site-header .nav { display: flex; flex-direction: column; align-items: stretch; gap: 0; position: absolute; top: var(--header-h,72px); left: 0; right: 0; max-height: calc(100svh - var(--header-h,72px)); overflow-y: auto; overscroll-behavior: contain; padding: 8px var(--gutter) 24px; background: var(--bg); border-bottom: 1px solid var(--border); box-shadow: 0 18px 28px -24px rgba(16,45,79,.25); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-10px); transition: opacity 200ms var(--ease-out), transform 250ms var(--ease-out), visibility 0s linear 250ms; }
 .site-header.ax-nav-open .nav { opacity: 1; visibility: visible; pointer-events: auto; transform: none; transition-delay: 0s; }
}
@media (max-width:1040px) and (hover:hover) and (pointer:fine) {
 .site-header .nav-toggle:hover { border-color: var(--cyan-ink); }
}

/* Search is a separate layer below the header and above a closing mobile menu. */
.site-header .search-pop { position: absolute; top: 100%; left: 0; right: 0; z-index: 3; padding: 12px 0 16px; background: var(--bg); border-bottom: 1px solid var(--border); box-shadow: 0 18px 28px -24px rgba(16,45,79,.25); }
.site-header .search-pop[hidden] { display: none; }
.site-header .search-pop input { display: block; min-width: 0; font-size: 16px; }
@media(max-width:1040px) {
 .site-header.search-open .nav { opacity: 0; visibility: hidden; pointer-events: none; transition: none; }
}

/* Sharper signal icon (#2550): true circular arcs, a touch heavier, sized to whole pixels. */
@media (max-width:1040px) {
 .ax-menu-symbol { width: 28px; height: 28px; }
 .ax-menu-wave-outer { color: #00aff0; }
 .ax-menu-wave-middle { color: #0a84ff; }
 .site-header .nav-toggle[aria-expanded="true"] .ax-menu-wave-outer, .site-header .nav-toggle[aria-expanded="true"] .ax-menu-wave-middle { color: inherit; }
}

/* Open state (premium, light): a white button with a soft cool-grey gradient, a fine blue ring and glow,
   and a gradient X in Argenox blue, instead of a flat navy square. */
@media (max-width:1040px) {
 .site-header .nav-toggle[aria-expanded="true"] {
  border-color: rgba(10,132,255,.28);
  background: linear-gradient(180deg, #ffffff 0%, #f3f7fc 100%);
  color: #0a84ff;
  box-shadow: inset 0 1px 0 #fff, inset 0 -1px 0 rgba(11,31,54,.06), 0 10px 24px -12px rgba(10,132,255,.55), 0 0 0 4px rgba(0,175,240,.10);
 }
 .site-header .nav-toggle[aria-expanded="true"] .ax-menu-cross path { stroke: url(#ax-x-grad); stroke-width: 2.25; }
 .nav-toggle[aria-expanded="true"] .ax-menu-cross-a { transform: rotate(45deg) scaleX(.78); }
 .nav-toggle[aria-expanded="true"] .ax-menu-cross-b { transform: rotate(-45deg) scaleX(.78); }
}
@media (max-width:1040px) and (hover:hover) and (pointer:fine) {
 .site-header .nav-toggle[aria-expanded="true"]:hover { border-color: rgba(10,132,255,.5); }
}
