/* The one language menu. Same look on every page, on phone and desktop. */
.lang-menu { position: relative; flex: none; font-family: 'Manrope', 'Assistant', system-ui, sans-serif; }
.lang-menu summary { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 12px; border: 1px solid rgba(15, 34, 53, .18); border-radius: 999px; background: #fff; color: #0f2235; font-size: 13px; font-weight: 700; line-height: 1; cursor: pointer; list-style: none; user-select: none; white-space: nowrap; }
.lang-menu summary::-webkit-details-marker { display: none; }
.lang-menu summary:focus-visible, .lang-menu a:focus-visible { outline: 2px solid #1f6fc4; outline-offset: 2px; }
.lang-menu .lang-globe { color: #2471d8; flex: none; }
.lang-menu .lang-chevron { flex: none; transition: transform .15s ease; }
.lang-menu[open] .lang-chevron { transform: rotate(180deg); }
.lang-menu .lang-list { position: absolute; top: calc(100% + 6px); inset-inline-end: 0; z-index: 70; min-width: 148px; padding: 6px; border: 1px solid rgba(15, 34, 53, .1); border-radius: 14px; background: #fff; box-shadow: 0 12px 28px rgba(15, 34, 53, .18); }
.lang-menu .lang-list a { display: block; margin: 0; padding: 10px 12px; border-radius: 10px; color: #0f2235; font-size: 15px; font-weight: 600; line-height: 1.2; opacity: 1; text-align: start; text-decoration: none; }
.lang-menu .lang-list a:hover { background: #eef5fd; color: #0f2235; }
.lang-menu .lang-list a[aria-current="true"] { background: #eef5fd; color: #1f6fc4; font-weight: 800; }

/* Inner pages: brand, links, language. The sky keeps its width clipped and lets the list hang below it. */
header.site { overflow-x: clip; overflow-y: visible; }
header.site .wrap { align-items: center; }
header.site nav.top { margin-inline-start: auto; padding-inline-end: 0; }
header.site .lang-menu { margin-inline-start: 18px; }
@media (max-width: 640px) {
  header.site .wrap { row-gap: 6px; }
  header.site .lang-menu { order: 1; margin-inline-start: auto; }
  header.site nav.top { order: 2; flex-basis: 100%; margin-inline-start: 0; }
  header.site nav.top a:first-child, [dir="rtl"] header.site nav.top a:first-child { margin-inline: 0; }
}
@media print { .lang-menu { display: none; } }
