/* Native disclosure: usable without JavaScript, visible focus, no flag icons. */
.header-inner { gap: 18px; }
.language-menu { position: relative; margin-inline-start: 0; font: 14px/1.4 var(--sans); flex: 0 0 auto; }
.language-code { display: none; }
.language-menu summary { display: flex; align-items: center; gap: 9px; min-height: 44px; padding: 8px 10px; cursor: pointer; list-style: none; }
.language-menu summary::-webkit-details-marker { display: none; }
.language-menu summary::after { content: ''; width: 7px; height: 7px; border-inline-end: 1.5px solid currentColor; border-block-end: 1.5px solid currentColor; transform: rotate(45deg); margin-block-start: -4px; }
.language-menu[open] summary::after { transform: rotate(225deg); margin-block-start: 4px; }
.language-menu nav { position: absolute; inset-inline-end: 0; top: 100%; min-width: 150px; padding: 5px; background: var(--paper); border: 1px solid var(--line); z-index: 30; }
.language-menu nav a { display: flex; align-items: center; min-height: 44px; padding: 9px 14px; text-decoration: none; }
.language-menu nav a:hover, .language-menu nav a[aria-current] { background: #e5e9dc; color: #173f35; }
.language-menu summary:focus-visible { outline: 3px solid var(--orange); outline-offset: 3px; }
.main-nav { margin-inline-start: auto; }
html[lang="ru"] .main-nav { gap: 18px; }
html[lang="ru"] h1, html[lang="ru"] h2 { letter-spacing: -.025em; }
html[lang="ru"] .article-content { overflow-wrap: break-word; }
@media (max-width: 1100px) {
  .header-inner { flex-wrap: wrap; column-gap: 12px; row-gap: 0; padding-block: 12px 0; }
  .header-inner > .brand { order: 0; }
  .language-menu { order: 2; }
  .header-inner > .button { order: 1; margin-inline-start: auto; }
  .main-nav { order: 3; width: 100%; justify-content: space-between; margin: 4px 0 0; }
  .main-nav > a, .services-menu > summary { min-height: 44px; display: flex; align-items: center; }
}
@media (max-width: 600px) {
  .header-inner > .brand { font-size: 23px; gap: 6px; }
  .header-inner > .brand img { width: 26px; height: 26px; }
  .language-menu { font-size: 14px; }
  .language-name { display: none; }
  .language-code { display: inline; }
  .language-menu summary { padding-inline: 6px; }
  .header-inner > .button { min-height: 44px; padding: 8px 10px; font-size: 12px; gap: 7px; }
  html[lang="ru"] .main-nav { gap: 8px; flex-wrap: wrap; }
  html[lang="ru"] .main-nav > a, html[lang="ru"] .services-menu > summary { font-size: 12px; }
}
@media (max-width: 380px) {
  .header-inner { column-gap: 6px; }
  .header-inner > .brand img { display: none; }
  .header-inner > .button { max-width: 105px; }
  html[lang="ru"] .main-nav { display: grid; grid-template-columns: 1fr 1fr; }
  html[lang="ru"] .main-nav > a { justify-content: flex-start; }
}

.translation-notice { max-width: 75ch; margin: 24px auto; padding: 16px 24px; font-size: 16px; background: #e5e9dc; color: #173f35; }
