.language-switcher {
  --language-color: #f8f4ee;
  --language-border: rgba(248, 244, 238, .24);
  --language-background: rgba(248, 244, 238, .04);
  position: relative;
  display: block;
  width: max-content;
  max-width: 100%;
  color: var(--language-color);
  white-space: nowrap;
}
.language-switcher > summary {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  padding: 9px 12px;
  border: 1px solid var(--language-border);
  border-radius: 10px;
  background: var(--language-background);
  color: inherit;
  font: 600 13px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  cursor: pointer;
  list-style: none;
  user-select: none;
}
.language-switcher > summary::-webkit-details-marker { display: none; }
.language-switcher > summary::marker { content: ''; }
.language-switcher > summary:hover { border-color: currentColor; }
.language-switcher > summary:focus-visible,
.language-options a:focus-visible { outline: 2px solid #c83b5a; outline-offset: 3px; }
.language-switcher > summary > svg { width: 18px; height: 18px; flex-shrink: 0; }
.language-switcher > summary > .language-chevron { width: 14px; height: 14px; margin-left: 6px; }
.language-switcher[open] > summary > .language-chevron { transform: rotate(180deg); }
.language-switcher .language-options {
  position: absolute;
  z-index: 100;
  inset: calc(100% + 8px) 0 auto auto;
  display: grid;
  gap: 3px;
  width: 196px;
  max-width: calc(100vw - 34px);
  margin: 0;
  padding: 6px;
  list-style: none;
  background: #fff;
  border: 1px solid #e3dfe1;
  border-radius: 12px;
  box-shadow: 0 12px 36px rgba(0, 0, 0, .2);
}
.language-switcher:not([open]) > .language-options { display: none; }
.language-switcher .language-options li { margin: 0; padding: 0; }
.language-switcher .language-options a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 42px;
  margin: 0;
  padding: 10px 12px;
  border: 0;
  border-radius: 7px;
  color: #29242a;
  text-decoration: none;
  font: 500 14px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.language-switcher .language-options a:hover,
.language-switcher .language-options a:focus-visible { color: #8a1631; background: #f7f3f4; }
.language-switcher .language-options a[aria-current] { color: #991e3b; background: #fbf0f3; font-weight: 650; }
.language-selected { width: 18px; text-align: center; }
.language-switcher-policy {
  --language-color: #514a51;
  --language-border: #d9d3d7;
  --language-background: #fff;
}
.language-switcher-footer { justify-self: end; }
.language-switcher-footer .language-options { top: auto; bottom: calc(100% + 8px); }
.language-switcher-mobile .language-options { left: 0; right: auto; }
.language-management-actions { display: flex; align-items: center; justify-content: flex-end; gap: 16px; flex-wrap: wrap; }
@media (max-width: 980px) {
  .site-header .language-switcher-header,
  .suite-site-header .language-switcher-header { display: none; }
}
@media (max-width: 640px) {
  .language-switcher-footer { justify-self: start; }
  .language-switcher-footer .language-options { left: 0; right: auto; }
}
/* The mobile navigation scrolls as one sheet; the language list expands inside it. */
@media (max-width: 980px) {
  .mobile-menu[data-open] { overflow-y: auto; }
  .language-switcher-mobile { margin: 12px 24px 24px; }
  .language-switcher-mobile .language-options { position: static; margin-top: 8px; }
}
