.mobile-menu {
  position: relative;
  display: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.mobile-menu > summary {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 14px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--ink);
  font-weight: 800;
  line-height: 1;
  list-style: none;
}

.mobile-menu > summary::-webkit-details-marker { display: none; }
.mobile-menu__icon { width: 18px; height: 14px; display: grid; align-content: space-between; }
.mobile-menu__icon::before,
.mobile-menu__icon::after,
.mobile-menu__icon span { content: ""; display: block; height: 2px; border-radius: 999px; background: currentColor; }
.mobile-menu__panel {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 90;
  display: grid;
  width: min(320px, calc(100vw - 30px));
  max-height: calc(100vh - 100px);
  overflow: auto;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(23, 50, 58, .2);
}
.mobile-menu__panel a {
  padding: 11px 12px;
  border-radius: 12px;
  color: var(--ink);
  font-weight: 750;
  text-decoration: none;
}
.mobile-menu__panel a:hover,
.mobile-menu__panel a:focus { background: #edf5f5; color: var(--accent); }
.mobile-menu__panel .langbar { justify-content: space-between; margin-top: 5px; padding: 10px 12px 4px; border-top: 1px solid var(--line); }

.logo-link img { display: block; width: auto; max-width: 82px; height: 24px; }
.logo-link.google img { max-width: 112px; }
.logo-links--large { margin: 20px 0; }
.logo-links--large .logo-link { min-width: 132px; height: 58px; padding: 10px 18px; border: 1px solid #cfe0e1; box-shadow: none; }
.logo-links--large .logo-link img { max-width: 100px; height: 29px; }
.logo-links--large .logo-link.google { min-width: 174px; }
.logo-links--large .logo-link.google img { max-width: 138px; }
.footer-platforms { align-items: flex-start; margin-top: 5px; }
.footer-platforms .logo-link { min-width: 104px; height: 42px; border: 1px solid #d5e2e3; box-shadow: none; }
.logo-link:focus-visible,
.mobile-menu > summary:focus-visible,
.mobile-menu__panel a:focus-visible { outline: 3px solid #e3b84f; outline-offset: 3px; }

@media (max-width: 920px) {
  .mobile-menu { display: block; }
  .nav { min-height: 80px; }
  .brand { max-width: calc(100% - 106px); }
  .logo-links--large { gap: 9px; }
  .logo-links--large .logo-link { min-width: 112px; height: 52px; padding: 8px 13px; }
  .logo-links--large .logo-link.google { min-width: 154px; }
}

@media (max-width: 430px) {
  .brand { font-size: .98rem; }
  .logo-links--large .logo-link,
  .logo-links--large .logo-link.google { flex: 1 1 130px; }
}
