.skip-link {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: 100;
  padding: 12px 16px;
  background: #050a12;
  color: #f8fafc;
  border: 1px solid rgba(56, 189, 248, 0.45);
  border-radius: 8px;
  font-family: var(--font-display, "Syne", system-ui, sans-serif);
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
}

.skip-link:focus {
  left: max(16px, env(safe-area-inset-left, 0));
  top: max(16px, env(safe-area-inset-top, 0));
  width: auto;
  height: auto;
  overflow: visible;
}

.lang-toggle {
  min-width: 2.75rem;
  padding: 0.45rem 0.65rem;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.04);
  color: #e2e8f0;
  cursor: pointer;
  font-family: var(--font-display, "Syne", system-ui, sans-serif);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
}

.lang-toggle:hover {
  border-color: rgba(56, 189, 248, 0.45);
  color: #fff;
}

.lang-toggle.is-active {
  border-color: rgba(251, 191, 36, 0.45);
  color: #fde68a;
}

.header-cta .lang-toggle {
  padding: 0.5rem 0.75rem;
}

.header-cta .lang-toggle {
  order: -1;
}

.splash-lang {
  position: absolute;
  top: clamp(1rem, 3vw, 1.5rem);
  right: var(--pad, 1.25rem);
  z-index: 3;
}

.legal-footer a,
.legal-page-footer a,
.footer-inner a {
  color: #38bdf8;
  text-decoration: none;
}

.legal-footer a:hover,
.legal-page-footer a:hover,
.footer-inner a:hover {
  text-decoration: underline;
}
