/* Shared public navigation. Keep these rules independent of each page theme. */
:root{--header-h:84px}
@media(max-width:1320px){:root{--header-h:76px}}
@media(max-width:600px){:root{--header-h:68px}}
@font-face{font-family:AXMNav;src:url('/assets/fonts/NeueMachina-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:AXMNav;src:url('/assets/fonts/NeueMachina-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
.axm-header{--nav-accent:#9dffc4;--nav-line:rgba(255,255,255,.14);box-sizing:border-box;position:fixed;z-index:80;top:0;left:0;right:0;height:84px;padding:0 clamp(20px,4vw,80px);display:flex;align-items:center;justify-content:space-between;gap:28px;background:rgba(36,39,42,.97);border-bottom:1px solid var(--nav-line);color:#f2f3f1;font:400 12px/1.4 AXMNav,Arial,sans-serif}
.axm-header[data-section=agro]{--nav-accent:#bdf771}.axm-header[data-section=apiary]{--nav-accent:#9ff}.axm-header[data-section=automatic]{--nav-accent:#ffc799}.axm-header[data-section=analytic]{--nav-accent:#ff8838}.axm-header[data-section=software]{--nav-accent:#ff7878}
/* Each direction owns its hover, current and keyboard-focus color on every page. */
.axm-directions>a:is([href="/robotics"],[href="/en/robotics"]){--nav-accent:#9dffc4}
.axm-directions>a:is([href="/agro"],[href="/en/agro"]){--nav-accent:#bdf771}
.axm-directions>a:is([href="/apiary"],[href="/en/apiary"]){--nav-accent:#99ffff}
.axm-directions>a:is([href="/automatic"],[href="/en/automatic"]){--nav-accent:#ffc799}
.axm-directions>a:is([href="/analytic"],[href="/en/analytic"]){--nav-accent:#ff8838}
.axm-directions>a:is([href="/software"],[href="/en/software"]){--nav-accent:#ff7878}
.axm-header .axm-directions>a:focus-visible{color:var(--nav-accent)}
.axm-header *{box-sizing:border-box}.axm-header a{color:inherit;text-decoration:none;white-space:nowrap}.axm-header a:focus-visible,.axm-header summary:focus-visible{outline:2px solid var(--nav-accent);outline-offset:5px;border-radius:2px}.axm-header summary{list-style:none;cursor:pointer}.axm-header summary::-webkit-details-marker{display:none}.axm-header summary::marker{content:''}
.axm-brand{display:flex;align-items:center;gap:18px;flex-shrink:0}.axm-brand-mark{display:block;width:96px;height:27px;background:#f2f3f1;mask:url('/assets/img/axm-mark.svg') center/contain no-repeat;-webkit-mask:url('/assets/img/axm-mark.svg') center/contain no-repeat}.axm-brand-context,.axm-brand-tagline{padding-left:18px;border-left:1px solid var(--nav-line)}.axm-brand-context{font-size:15px;color:var(--nav-accent)}.axm-brand-tagline{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#97999b}
.axm-menu{margin:0;padding:0;border:0;min-width:0}.axm-menu-toggle{display:none}.axm-navigation,.axm-directions,.axm-utilities{display:flex;align-items:center}.axm-navigation{gap:clamp(20px,2.4vw,44px)}.axm-directions,.axm-utilities{gap:clamp(14px,1.4vw,28px)}.axm-utilities{border-left:1px solid var(--nav-line);padding-left:clamp(20px,2.4vw,44px)}.axm-navigation a,.axm-submenu>summary{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#b1b3b2;transition:color .15s}.axm-navigation a:hover,.axm-navigation a[aria-current],.axm-submenu>summary:hover,.axm-submenu[data-current]>summary,.axm-submenu[open]>summary{color:var(--nav-accent)}.axm-directions>a{padding:15px 0}.axm-directions>a[aria-current]{box-shadow:0 1px 0 var(--nav-accent)}
.axm-submenu{position:relative;margin:0;padding:0;border:0}.axm-submenu>summary{display:flex;align-items:center;gap:8px;padding:15px 0}.axm-chevron{width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-top:-3px}.axm-submenu[open] .axm-chevron{transform:rotate(225deg);margin-top:3px}.axm-submenu-panel{position:absolute;top:calc(100% + 10px);left:-20px;min-width:240px;padding:10px;background:#2a2f33;border:1px solid var(--nav-line);border-radius:8px;box-shadow:0 16px 40px #0004;display:flex;flex-direction:column;gap:2px}.axm-submenu-panel a{display:block;padding:13px 12px;font-size:11px;letter-spacing:0;text-transform:none}.axm-submenu-panel a:hover,.axm-submenu-panel a[aria-current]{background:#ffffff08;border-radius:4px}
.axm-utilities .axm-cabinet{color:var(--nav-accent);border:1px solid color-mix(in srgb,var(--nav-accent) 45%,transparent);padding:11px 14px;border-radius:6px}.axm-utilities .axm-lang{display:grid;place-items:center;width:40px;height:38px;border:1px solid var(--nav-line);border-radius:6px;font-size:11px;letter-spacing:0}.axm-utilities .axm-cabinet:hover,.axm-utilities .axm-lang:hover{background:#ffffff08}.axm-menu-icon{display:block;width:18px;height:12px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}.axm-menu-icon:after{content:'';position:absolute;top:4px;left:0;right:0;border-top:1px solid currentColor}
@media(min-width:1321px){.axm-menu:not([open])>.axm-navigation{display:flex}.axm-menu::details-content{content-visibility:visible;display:block}}
@media(max-width:1320px){
  .axm-header{height:76px;gap:16px}.axm-menu-toggle{display:flex;align-items:center;gap:14px;min-height:44px;padding:10px 0 10px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#f2f3f1}.axm-menu[open]>.axm-menu-toggle{color:var(--nav-accent)}
  .axm-navigation{position:absolute;top:100%;left:0;right:0;max-height:calc(100vh - 76px);max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;background:#24272a;border-bottom:1px solid var(--nav-line);padding:22px clamp(20px,4vw,80px) 28px;display:block;box-shadow:0 20px 35px #0004}.axm-directions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:0 28px}.axm-directions>a,.axm-submenu>summary{padding:17px 0;font-size:13px}.axm-directions>a[aria-current]{box-shadow:none}.axm-submenu-panel{position:static;min-width:0;border:0;border-left:1px solid var(--nav-line);background:transparent;box-shadow:none;border-radius:0;padding:0 0 8px 10px}.axm-submenu-panel a{white-space:normal;padding:12px 8px;line-height:1.5}.axm-utilities{margin-top:16px;padding:22px 0 0;border-left:0;border-top:1px solid var(--nav-line);gap:22px;flex-wrap:wrap}.axm-utilities>a{padding:10px 0}.axm-utilities .axm-lang{margin-left:auto}
  html.axm-menu-open{overflow:hidden}html.axm-menu-open .tour-bar{visibility:hidden}
}
@media(max-width:600px){.axm-header{height:68px;padding:0 20px}.axm-brand{gap:13px}.axm-brand-mark{width:80px;height:24px}.axm-brand-context,.axm-brand-tagline{padding-left:13px}.axm-brand-context{font-size:13px;max-width:148px;white-space:normal;line-height:1.25}.axm-brand-tagline{font-size:8px}.axm-navigation{max-height:calc(100vh - 68px);max-height:calc(100dvh - 68px);padding:12px 24px 24px}.axm-directions{display:block}.axm-directions>a{display:block;border-bottom:1px solid #ffffff08}.axm-submenu-panel{padding-bottom:12px}.axm-utilities{gap:16px}.axm-utilities>a{font-size:10px}.axm-utilities .axm-cabinet{padding:11px 12px}.axm-utilities .axm-lang{width:36px}}
@media(prefers-reduced-motion:reduce){.axm-header *{transition:none!important}}
/* Sound toggle (E22). Off by default. The header's inline script sets :root[data-axm-audio] from the saved choice
   before paint, site-header.js keeps aria-pressed in step; [data-axm-audio-wait] = on, waiting for a gesture/loading. */
.axm-sound{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex-shrink:0;box-sizing:border-box;min-width:40px;height:38px;margin:0;padding:0 12px;border:1px solid var(--nav-line,#ffffff24);border-radius:6px;background:transparent;color:#b1b3b2;font:500 10px/1 AXMNav,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:color .15s,border-color .15s,background-color .15s;-webkit-tap-highlight-color:transparent}
.axm-sound:hover{color:var(--nav-accent,#9dffc4);background:#ffffff08}
.axm-sound:focus-visible{outline:2px solid var(--nav-accent,#9dffc4);outline-offset:3px}
.axm-sound[hidden]{display:none}
.axm-sound-icon{flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.axm-sound .axm-sound-waves{display:none}
:root[data-axm-audio=on] .axm-sound{color:var(--nav-accent,#9dffc4);border-color:color-mix(in srgb,var(--nav-accent,#9dffc4) 45%,transparent)}
:root[data-axm-audio=on] .axm-sound .axm-sound-waves{display:inline}
:root[data-axm-audio=on] .axm-sound .axm-sound-mute{display:none}
:root[data-axm-audio-wait] .axm-sound .axm-sound-waves{animation:axm-sound-wait 1.6s ease-in-out infinite}
@keyframes axm-sound-wait{50%{opacity:.3}}
.axm-sound-label{white-space:nowrap}
@media(min-width:1321px){
  .axm-header .axm-menu{margin-left:auto}
  .axm-header>.axm-sound{margin-left:calc(clamp(14px,1.4vw,28px) - 28px)}
}
@media(max-width:1320px){
  .axm-header>.axm-sound{order:1;margin-left:auto;width:44px;height:44px;padding:0;border-color:transparent}
  :root[data-axm-audio=on] .axm-header>.axm-sound{border-color:transparent}
  .axm-header>.axm-menu{order:2}
}
/* Phones: the brand, a long section name («Конфиденциальность»), the sound button and the menu share 320–600 px.
   The menu keeps its name for screen readers but shows only the ≡ icon (44 px target); the mark is a bit smaller
   below 400 px. Checked at 320/360/390 on all 24 pages (check_engine.mjs layout). */
@media(max-width:600px){
  .axm-header{gap:8px}
  .axm-header>.axm-sound{width:40px}
  .axm-header .axm-menu-toggle{justify-content:center;gap:0;min-width:44px;padding:10px 0;font-size:0;letter-spacing:0}
}
@media(max-width:400px){.axm-header .axm-brand-mark{width:68px;height:20px}.axm-header .axm-brand{gap:11px}.axm-header .axm-brand-context,.axm-header .axm-brand-tagline{padding-left:11px}}
@media(max-width:340px){.axm-header .axm-brand-mark{width:60px;height:18px}.axm-header .axm-brand-context{font-size:11px}}
.axm-sound--bar,.axm-header>.axm-sound{position:relative}
@media(min-width:1321px) and (max-width:1439px){.axm-header>.axm-sound{width:40px;padding:0}}
@media(max-width:1439px){.axm-header>.axm-sound .axm-sound-label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);border:0}}
/* The copy in the chapter bar (stories, wide screens): a round icon button like the next-chapter arrow. */
.axm-tourbar .axm-sound{width:44px;height:44px;min-width:44px;padding:0;border:1px solid #ffffff24;border-radius:50%;color:#afb5b8}
.axm-tourbar .axm-sound:hover{color:var(--tour-accent);border-color:var(--tour-accent);background:transparent}
.axm-tourbar .axm-sound:focus-visible{outline:1px solid var(--tour-accent);outline-offset:3px}
:root[data-axm-audio=on] .axm-tourbar .axm-sound{color:var(--tour-accent);border-color:color-mix(in srgb,var(--tour-accent) 55%,transparent)}
.axm-tourbar .axm-sound-label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);border:0}
@media(min-width:701px){.tour-bar.axm-tourbar.axm-tourbar--sound{grid-template-columns:64px minmax(0,1fr) 44px 44px}}
@media(max-width:700px){.axm-tourbar .axm-sound{display:none}}
@media(prefers-reduced-motion:reduce){:root[data-axm-audio-wait] .axm-sound .axm-sound-waves{animation:none;opacity:.6}.axm-sound{transition:none}}
