/* Shared homepage header. Body content remains in its own component styles. */
.ax-site-header { position: sticky; top: 0; z-index: 100; background: rgba(251,251,248,.78); backdrop-filter: blur(18px) saturate(1.2); border-bottom: 1px solid rgba(18,20,16,.07); box-shadow: 0 6px 24px rgba(0,0,0,.018); }
.ax-site-header * { box-sizing: border-box; }
.ax-site-header .page { width: min(100%,var(--ax-page)); padding-inline: var(--ax-gutter); margin-inline: auto; }
.ax-site-header .content { width: min(100%,var(--ax-content)); margin-inline: auto; }
.ax-site-header .header-inner { height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.ax-site-header .brand { flex: none; line-height: 1; }
.ax-site-header .brand-logo { display: block; width: 132px; height: auto; }
.ax-site-header .nav { display: flex; align-items: center; gap: 28px; margin-left: auto; margin-right: 8px; font: 560 14px/1.4 var(--ax-font-body); color: var(--ax-gray-700); }
.ax-site-header .nav a { text-decoration: none; font: inherit; color: inherit; }
.ax-site-header .nav a:hover { color: var(--ax-black); }
.ax-site-header .nav [aria-current="page"] { text-decoration: underline; text-decoration-color: var(--ax-lime); text-decoration-thickness: 3px; text-underline-offset: 5px; }
.ax-site-header .btn-primary { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 14px 20px; border: 1px solid #b9ee32; border-radius: 12px; background: var(--ax-lime); color: var(--ax-black); font: 650 13px/1.2 var(--ax-font-body); text-decoration: none; white-space: nowrap; box-shadow: 0 1px 2px #0a0a0a0d,0 7px 18px #7b9e201a; }
.ax-site-header .btn-primary:hover { background: #bdf12f; }
.ax-site-header .language-menu { margin-left: 0; }
.ax-site-header .mobile-menu { display: none; position: relative; flex: none; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; background: #ffffff80; color: var(--ax-ink); border: 1px solid var(--ax-line); border-radius: 12px; cursor: pointer; }
.ax-site-header .mobile-menu span { position: relative; display: block; width: 18px; height: 2px; background: currentColor; box-shadow: 0 -6px currentColor,0 6px currentColor; }
.ax-site-header .mobile-menu span::before,.ax-site-header .mobile-menu span::after { display: none; }
.ax-site-header .nav .ax-nav-order { display: none; }
.ax-site-header :is(a,summary,button):focus-visible { outline: 3px solid #577d12; outline-offset: 4px; }
@media(max-width:1100px) {
  .ax-site-header .header-inner { gap: 12px; }
  .ax-site-header .nav { display: none; position: absolute; top: 100%; left: 0; right: 0; margin: 0; padding: 24px var(--ax-gutter); background: #fbfbf8; border-bottom: 1px solid var(--ax-line); max-height: calc(100dvh - 72px); overflow-y: auto; }
  .ax-site-header .nav.is-open { display: grid; gap: 8px; }
  .ax-site-header .nav>a,.ax-site-header .mk-nav-menu summary { display: flex; align-items: center; min-height: 44px; }
  .ax-site-header .mk-nav-menu>div { position: static; width: 100%; box-shadow: none; margin-top: 8px; }
  .ax-site-header .language-menu { margin-left: auto; }
  .ax-site-header .header-cta { display: none; }
  .ax-site-header .mobile-menu { display: inline-flex; }
  .ax-site-header .nav .ax-nav-order { display: inline-flex; width: fit-content; padding: 12px 18px; border-radius: 12px; background: var(--ax-lime); color: var(--ax-black); margin-top: 8px; font-weight: 650; }
}
@media(max-width:780px) { .ax-site-header .header-inner { height: 64px; } .ax-site-header .brand-logo { width: 118px; } .ax-site-header .nav { max-height: calc(100dvh - 64px); } }
@media(max-width:520px) { .ax-site-header .page { padding-inline: 16px; } }
@media print { .ax-site-header { display: none; } }
