/* Full-width horizontal menu on desktop; touch-friendly wrapping on mobile. */
header nav.mobile-nav-ready{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px}
.mobile-nav-ready>.mobile-menu-toggle{display:inline-flex;order:2;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid currentColor;border-radius:5px;background:transparent;color:inherit;font:600 14px/1.2 Manrope,Arial,sans-serif;cursor:pointer}
.mobile-menu-toggle .mobile-menu-icon{font-size:21px;line-height:1}
.mobile-nav-ready>.theme-toggle{order:1;margin:0;min-height:44px}
.mobile-nav-ready>.mobile-nav-panel{display:none;grid-column:1/-1;order:3;width:100%;min-width:0;border-top:1px solid #557164;padding:14px 0 4px;text-align:right}
.mobile-nav-ready>.mobile-nav-panel.is-open{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.mobile-nav-panel>.links{display:flex;flex-direction:row;flex-wrap:wrap;align-items:stretch;justify-content:flex-end;width:100%;margin:0;gap:8px;order:0}
.mobile-nav-panel>.links>a,.mobile-nav-panel .paxos-menu>summary{display:flex;align-items:center;justify-content:center;padding:11px 14px;font-size:15px;line-height:1.4;min-height:44px;border:1px solid #557164;border-radius:5px;text-align:center;white-space:normal;overflow-wrap:anywhere;text-decoration:none}
.mobile-nav-panel>.links>a{flex:0 1 auto;max-width:260px}
.mobile-nav-panel .paxos-menu{font-size:15px;min-width:0}
.mobile-nav-panel .paxos-menu[open]{flex-basis:100%}
.mobile-nav-panel .paxos-menu[open]>summary{width:fit-content;margin-left:auto}
.mobile-nav-panel .paxos-submenu{position:static;min-width:0;box-shadow:none;padding:8px 0 0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;background:transparent}
.mobile-nav-panel .paxos-submenu a{white-space:normal;font-size:15px;min-height:44px;display:flex;align-items:center;padding:10px 14px;border:1px solid #557164;border-radius:5px}
.mobile-nav-panel>.lang-switch{margin:0;gap:4px;flex:1;min-width:0;justify-content:flex-end}
.mobile-nav-panel>.lang-switch a{padding:10px 8px;font-size:14px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.mobile-nav-panel a:hover,.mobile-nav-panel summary:hover{background:#ffffff0d}
@media(max-width:768px){
  header{position:sticky!important;top:0}
  html{scroll-padding-top:calc(var(--site-header-height,110px) + 12px)!important}
  header nav.mobile-nav-ready{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px 4vw}
  .mobile-nav-ready>.brand{flex:1;max-width:225px;min-width:0;font-size:12px;line-height:1.25}
  .mobile-nav-ready>.mobile-menu-toggle{display:inline-flex;order:2;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 12px;border:1px solid currentColor;border-radius:5px;background:transparent;color:inherit;font:600 14px/1.2 Manrope,Arial,sans-serif;cursor:pointer}
  .mobile-menu-toggle .mobile-menu-icon{font-size:21px;line-height:1}
  .mobile-nav-ready>.mobile-nav-panel{max-height:none;overflow:visible;padding:12px 0 4px}
  .mobile-nav-ready>.mobile-nav-panel.is-open{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
  .mobile-nav-panel>.links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;width:100%;margin:0;gap:8px;order:0}
  .mobile-nav-panel>.links>a{max-width:none;min-width:0}
  .mobile-nav-panel>.links>a,.mobile-nav-panel .paxos-menu>summary{display:block;padding:12px 8px;font-size:16px;line-height:1.4;min-height:44px}
  .mobile-nav-panel .paxos-menu{font-size:16px;align-self:stretch}
  .mobile-nav-panel .paxos-menu>summary{height:100%;text-align:center}
  .mobile-nav-panel .paxos-menu[open]{grid-column:1/-1}
  .mobile-nav-panel .paxos-menu[open]>summary{width:100%;height:auto}
  .mobile-nav-panel .paxos-submenu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px 0 0}
  .mobile-nav-panel .paxos-submenu a{white-space:normal;font-size:15px;min-height:44px}
  .mobile-nav-panel>.lang-switch{margin:0;gap:4px;flex:1;min-width:200px;justify-content:flex-end}
  .mobile-nav-panel>.lang-switch a{padding:10px 8px;font-size:14px;min-height:44px}
  .mobile-nav-ready>.theme-toggle{display:inline-flex;order:1;margin:0;min-height:44px;font-size:12px;padding:8px;justify-content:center}
}
@media(max-width:360px){
  header nav.mobile-nav-ready{column-gap:6px;padding-inline:3vw}
  .mobile-nav-ready>.brand{font-size:11px}
  .mobile-nav-ready>.mobile-menu-toggle{padding-inline:8px;gap:5px}
  .mobile-nav-panel>.links>a,.mobile-nav-panel .paxos-menu>summary{font-size:14px;padding-inline:8px}
}
/* Desktop: keep the same four groups permanently visible in the header. */
@media(min-width:769px){
  header{position:sticky!important;top:0}
  html{scroll-padding-top:calc(var(--site-header-height,110px) + 12px)!important}
  header nav.mobile-nav-ready{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
  .mobile-nav-ready>.brand{flex:0 1 225px;min-width:150px}
  .mobile-nav-ready>.mobile-menu-toggle{display:none}
  .mobile-nav-ready>.mobile-nav-panel,.mobile-nav-ready>.mobile-nav-panel.is-open{display:contents}
  .mobile-nav-panel>.links{display:flex;flex-direction:row;flex:1 1 600px;width:auto;min-width:0;flex-wrap:nowrap;gap:8px;justify-content:flex-end}
  .mobile-nav-panel>.links>a,.mobile-nav-panel .paxos-menu>summary{display:flex;align-items:center;justify-content:center;height:auto;font-size:13px;padding:10px 12px;min-height:44px}
  .mobile-nav-panel>.links>a{max-width:none}
  .mobile-nav-panel .paxos-menu{position:relative;flex:0 1 auto;font-size:13px}
  .mobile-nav-panel .paxos-menu[open]{flex-basis:auto}
  .mobile-nav-panel .paxos-menu[open]>summary{width:auto;margin:0}
  .mobile-nav-panel .paxos-submenu{position:absolute;top:calc(100% + 8px);right:0;left:auto;width:max-content;min-width:260px;max-width:min(360px,90vw);display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:6px;padding:10px;background:var(--deep);color:#fff;border:1px solid #557164;border-radius:5px;box-shadow:0 8px 24px #0005;z-index:20}
  .mobile-nav-panel .paxos-submenu a{font-size:14px;min-height:44px;text-align:left;white-space:normal;overflow-wrap:anywhere}
  .mobile-nav-panel>.lang-switch{flex:0 0 auto;width:auto;margin-left:auto;gap:2px}
  .mobile-nav-panel>.lang-switch a{font-size:12px;padding:8px 5px}
  .mobile-nav-ready>.theme-toggle{flex:0 0 auto;order:1}
}

/* Keep collapsed panels hidden and constrain expanded menus on small screens. */
.nav-group:not([open])>.paxos-submenu{display:none}
@media(max-width:768px){.mobile-nav-ready>.mobile-nav-panel{max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain}.mobile-nav-panel>.lang-switch{min-width:0;flex-wrap:wrap}.mobile-nav-panel .paxos-submenu{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.mobile-nav-panel .paxos-submenu{grid-template-columns:minmax(0,1fr)}.mobile-nav-panel>.links{grid-template-columns:minmax(0,1fr)}.mobile-nav-panel .paxos-menu[open]{grid-column:auto}.mobile-nav-ready>.brand{max-width:none}.mobile-menu-toggle>span:last-child{font-size:13px}}

/* Four primary groups stay side by side on desktop and tablet. */
@media(min-width:769px){
 header nav.mobile-nav-ready{display:grid;grid-template-columns:minmax(130px,1fr) auto;gap:8px 14px}
 .mobile-nav-ready>.brand{grid-column:1;grid-row:1;max-width:280px}
 .mobile-nav-ready>.theme-toggle{grid-column:2;grid-row:1;justify-self:end}
 .mobile-nav-panel>.links{grid-column:1/-1;grid-row:2;display:flex;flex-wrap:nowrap;justify-content:center;width:100%;gap:10px}
 .mobile-nav-panel>.links>.nav-group,.mobile-nav-panel>.links>a{flex:0 1 auto}
 .mobile-nav-panel>.lang-switch{grid-column:1/-1;grid-row:3;justify-content:center;margin:0}
 .mobile-nav-panel>.links>a,.mobile-nav-panel .paxos-menu>summary{font-size:15px;white-space:nowrap;padding:10px 16px}
 .mobile-nav-ready>.mobile-menu-toggle{display:none}
}
@media(min-width:1350px){
 header nav.mobile-nav-ready{display:flex;flex-wrap:nowrap}
 .mobile-nav-ready>.brand{flex:0 1 225px}
 .mobile-nav-panel>.links{width:auto;flex:1;gap:8px}
 .mobile-nav-panel>.lang-switch{margin-left:auto}
 .mobile-nav-panel>.links>a,.mobile-nav-panel .paxos-menu>summary{font-size:13px;padding:10px 12px}
}
