/* Local script coverage and logical layout; brand drawings keep their geometry. */
@font-face { font-family:"Noto Sans Arabic"; src:url('/assets/fonts/NotoSansArabic.ttf') format('truetype'); font-weight:100 900; font-style:normal; font-display:swap; }
@font-face { font-family:"Noto Sans Devanagari"; src:url('/assets/fonts/NotoSansDevanagari.ttf') format('truetype'); font-weight:100 900; font-style:normal; font-display:swap; }
@font-face { font-family:"Noto Sans JP"; src:url('/assets/fonts/NotoSansJP.ttf') format('truetype'); font-weight:100 900; font-style:normal; font-display:swap; }
@font-face { font-family:"Noto Sans SC"; src:url('/assets/fonts/NotoSansSC.ttf') format('truetype'); font-weight:100 900; font-style:normal; font-display:swap; }
html:lang(ar) { --language-font:"Noto Sans Arabic","Source Sans 3","Source Sans",sans-serif; }
html:lang(hi) { --language-font:"Noto Sans Devanagari","Source Sans 3","Source Sans",sans-serif; }
html:lang(ja) { --language-font:"Noto Sans JP","Source Sans 3","Source Sans",sans-serif; }
html:lang(zh) { --language-font:"Noto Sans SC","Source Sans 3","Source Sans",sans-serif; }
html:is(:lang(ar),:lang(hi),:lang(ja),:lang(zh)) body,
html:is(:lang(ar),:lang(hi),:lang(ja),:lang(zh)) body * { font-family:var(--language-font); }
html:is(:lang(ar),:lang(hi),:lang(ja),:lang(zh)) :is(h1,h2,h3,.hero-motion__caption) { letter-spacing:normal; line-height:1.4; }
html:lang(ar) body { line-height:1.8; }
.language-menu,.portal-language__menu { max-height:min(70dvh,560px); overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
.language-menu a,.portal-language__menu a { overflow-wrap:anywhere; }
.portal-header-actions { display:flex; align-items:center; gap:12px; }
.portal-header-actions .header-icon { flex-shrink:0; }
html[dir="rtl"] .language-menu,html[dir="rtl"] .portal-language__menu,html[dir="rtl"] .quick-contact-menu { left:0; right:auto; text-align:start; }
html[dir="rtl"] :is(input[type="email"],input[type="url"],input[type="password"],a[href^="mailto:"]) { direction:ltr; unicode-bidi:isolate; }
html[dir="rtl"] :is(.home-signature svg,.domain-story__puzzle,.direct-portrait,.hero-motion__scene) { direction:ltr; }
html[dir="rtl"] [data-hero-thought] text { direction:rtl; unicode-bidi:plaintext; }
html[dir="rtl"] .complete-footer,html[dir="rtl"] .home-value__copy,html[dir="rtl"] .direct-panel__copy { text-align:start; }
@media(max-width:640px) {
  html[dir="rtl"] .quick-contact-menu { left:16px; right:16px; }
  .portal-header-actions { gap:8px; }
  .portal-header .portal-logo img { max-width:150px; }
  .portal-header .header-icon { width:38px; min-width:38px; height:42px; }
  html:is(:lang(ar),:lang(hi),:lang(ja),:lang(zh)) .hero h1 { font-size:clamp(28px,8.2vw,42px); }
}

html .language-menu a:lang(ar),html .portal-language__menu a:lang(ar) {font-family:"Noto Sans Arabic","Source Sans 3","Source Sans",sans-serif;}
html .language-menu a:lang(hi),html .portal-language__menu a:lang(hi) {font-family:"Noto Sans Devanagari","Source Sans 3","Source Sans",sans-serif;}
html .language-menu a:lang(ja),html .portal-language__menu a:lang(ja) {font-family:"Noto Sans JP","Source Sans 3","Source Sans",sans-serif;}
html .language-menu a:lang(zh),html .portal-language__menu a:lang(zh) {font-family:"Noto Sans SC","Source Sans 3","Source Sans",sans-serif;}

html[dir="rtl"] .home-signature figcaption {direction:ltr;unicode-bidi:isolate;}
