/* Language switcher and locale adjustments. Linked after page CSS. */

.am-lang {
  display: inline-flex;
  align-items: center;
  gap: 0.7em;
  direction: ltr;
}
.am-lang a {
  color: oklch(0.955 0.008 85 / 0.45);
}
.am-lang a[aria-current="page"] {
  color: oklch(0.955 0.008 85);
}
.am-lang a:hover {
  color: var(--accent);
}

.am-rule { transform-origin: left; }
[dir="rtl"] .am-rule { transform-origin: right; }

.am-faq-link {
  margin-top: 48px;
  font-family: Jost, sans-serif;
  font-size: 12px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}
.am-faq-link a {
  color: oklch(0.955 0.008 85 / 0.55);
}
.am-faq-link a:hover { color: var(--accent); }

@media (max-width: 860px) {
  .am-nav { gap: 10px; }
}

[dir="ltr"] .am-bidi,
[dir="rtl"] .am-bidi { unicode-bidi: isolate; }

[dir="rtl"] dd[dir="ltr"],
[dir="rtl"] .cabinet-nap [dir="ltr"],
[dir="rtl"] input[dir="ltr"] {
  text-align: right;
}
[dir="rtl"] .cabinet-nap [dir="ltr"] {
  display: block;
}

html[lang="ar"] .am-page,
html[lang="ar"] .am-page *,
html[lang="ar"] .am-shell,
html[lang="ar"] .am-shell * {
  letter-spacing: 0 !important;
  text-transform: none !important;
}
html[lang="ar"] .am-wordmark {
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}
html[lang="ar"] .am-page {
  font-family: "Noto Sans Arabic", Jost, system-ui, sans-serif !important;
}
html[lang="ar"] .am-page input,
html[lang="ar"] .am-page textarea,
html[lang="ar"] .am-page select,
html[lang="ar"] .am-page button {
  font-family: "Noto Sans Arabic", Jost, sans-serif !important;
}
html[lang="ar"] .am-ar-serif {
  font-family: Amiri, "Cormorant Garamond", serif !important;
}
html[lang="ar"] .am-hero-line { white-space: normal; }
html[lang="ar"] .am-hero-lead,
html[lang="ar"] .am-faq summary,
html[lang="ar"] .am-practice h1,
html[lang="ar"] .am-scope h2,
html[lang="ar"] .am-block h2,
html[lang="ar"] .am-others h2,
html[lang="ar"] .am-ar-serif {
  font-family: Amiri, "Cormorant Garamond", serif;
}
html[lang="ar"] .am-shell {
  font-family: "Noto Sans Arabic", Jost, system-ui, sans-serif;
}
html[lang="ar"] .am-practice h1 {
  letter-spacing: 0;
  max-width: 14em;
}
html[lang="ar"] .am-topbar,
html[lang="ar"] .am-topbar-addr,
html[lang="ar"] .am-topbar-phone,
html[lang="ar"] a[href^="tel:"],
html[lang="ar"] a[href^="mailto:"] {
  letter-spacing: 0.02em;
}

.am-map {
  padding: clamp(56px, 8vh, 88px) clamp(20px, 5vw, 64px) clamp(48px, 7vh, 72px);
  border-top: 1px solid oklch(0.955 0.008 85 / 0.12);
}
.am-map-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px 28px;
  max-width: 1320px;
  margin: 0 auto 22px;
}
.am-map-kicker {
  margin: 0;
  flex: 1 0 100%;
  font-size: 12px;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: var(--accent);
}
.am-map-head h2 {
  flex: 1 1 16rem;
  margin: 0;
  font-family: "Cormorant Garamond", serif;
  font-weight: 300;
  font-size: clamp(28px, 4vw, 44px);
  line-height: 1.15;
  letter-spacing: -0.02em;
}
.am-map-dir {
  flex: 0 0 auto;
  font-size: 12.5px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  border-bottom: 1px solid oklch(0.955 0.008 85 / 0.25);
  padding-bottom: 4px;
}
.am-map-dir:hover { color: var(--accent); }
.am-map-frame {
  max-width: 1320px;
  margin: 0 auto;
  height: 420px;
  background: oklch(0.17 0.008 70);
  border: 1px solid oklch(0.955 0.008 85 / 0.12);
}
.am-map-frame iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}
@media (max-width: 860px) {
  .am-map-frame { height: 280px; }
}
