.language-switcher { position: relative; flex: 0 0 auto; font-size: .8rem; }
.language-switcher summary { cursor: pointer; padding: .65rem .7rem; border: 1px solid currentColor; border-radius: 2px; font-weight: 700; }
.language-switcher nav { position: absolute; inset-inline-end: 0; top: calc(100% + .6rem); display: grid; min-width: 12rem; max-height: 70vh; overflow-y: auto; padding: .5rem; background: #fff; color: #15171b; border: 1px solid #15171b; box-shadow: 0 8px 24px #0002; z-index: 100; }
.language-switcher nav a { padding: .5rem .7rem; text-decoration: none; }
.language-switcher nav a:hover, .language-switcher nav a[aria-current] { background: #e8efcf; }
.social-links { display: flex; flex-wrap: wrap; gap: .5rem 1.15rem; font-size: .85rem; margin-block: 1rem; }
.social-links a { display: inline-flex; align-items: center; gap: .4em; text-underline-offset: .25em; }
.link-icon { display: inline-block; inline-size: 1em; block-size: 1em; vertical-align: -.14em; flex: none; }
.site-nav .link-icon { inline-size: .8em; block-size: .8em; }
.service-page-links { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin-block: 1.5rem; }
:lang(ar), :lang(hi), :lang(zh), :lang(ja), :lang(ru) { font-family: "Archivo", system-ui, sans-serif; }
html[lang=ar] body { letter-spacing: normal; }
html[dir=rtl] .hero__copy, html[dir=rtl] .business-service__copy, html[dir=rtl] .contact-form { text-align: start; }
html[dir=rtl] input[type=range], html[dir=rtl] audio, html[dir=rtl] input[type=email], html[dir=rtl] input[type=tel] { direction: ltr; }
.site-nav a, .header-contact, .button { overflow-wrap: anywhere; }
a[href^="tel:"], a[href^="mailto:"] { direction: ltr; unicode-bidi: isolate; display: inline-block; }
.legal-intro, .legal-intro > *, .legal-nav, .legal-nav > *, .legal-content, .legal-section { min-width: 0; max-width: 100%; }
.legal-intro h1, .legal-intro .eyebrow, .legal-intro .legal-date, .legal-nav a { overflow-wrap: anywhere; }
.legal-section { grid-template-columns: minmax(0, 1fr); }
.legal-section > * { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 640px) {
  .language-switcher summary { padding: .45rem; }
  .site-header__inner { gap: .5rem; }
  .site-header__inner .brand { font-size: .82rem; gap: .35rem; min-width: 0; margin-inline-end: auto; }
  .site-header__inner .brand__symbol { width: 1.4rem; height: 1.4rem; }
  .site-header__inner .brand__descriptor { font-size: .45rem; letter-spacing: .05em; }
  .site-header__inner .nav-toggle { padding: .6rem .65rem; gap: .4rem; font-size: .65rem; flex-shrink: 0; }
  .legal-header { gap: .5rem; }
  .legal-header .brand { font-size: .8rem; gap: .35rem; }
  .legal-header .brand__symbol { width: 1.3rem; height: 1.3rem; }
  .legal-header .brand__descriptor { display: none; }
  .legal-header .legal-back { min-width: 0; font-size: .6rem; overflow-wrap: anywhere; text-align: end; }
}
@media (max-width: 359px) { .site-header__inner .brand__descriptor { display: none; } }
@media (min-width: 1281px) { html:not([lang=de]):not([lang=en]) .site-nav { gap: .65rem; font-size: .67rem; } html:not([lang=de]):not([lang=en]) .header-contact { display: none; } }
