/* Emaila Digital 5.3.0. Shared English and Arabic presentation. */
@font-face { font-family:"Inter"; font-style:normal; font-weight:100 900; font-display:swap; src:url(../fonts/inter-latin-wght-normal.woff2) format("woff2"); }
@font-face { font-family:"Noto Sans Arabic"; font-style:normal; font-weight:100 900; font-display:swap; src:url(../fonts/noto-sans-arabic-latin-wght-normal.woff2) format("woff2"); }
@font-face { font-family:"Noto Sans Arabic"; font-style:normal; font-weight:100 900; font-display:swap; src:url(../fonts/noto-sans-arabic-arabic-wght-normal.woff2) format("woff2"); unicode-range:U+0600-06FF,U+0750-077F,U+0870-089F,U+08A0-08FF,U+200C-200E,U+FB50-FDFF,U+FE70-FEFC; }
:root { --ink:#192b43; --muted:#536174; --blue:#073b78; --blue-dark:#062f68; --pink:#b72f6b; --line:#dde3eb; --soft:#f5f7fa; --paper:#fff; --font:"Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif; --max:1240px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:112px; -webkit-text-size-adjust:100%; }
html[lang=ar] { --font:"Noto Sans Arabic",Tahoma,Arial,sans-serif; }
body { margin:0; color:var(--ink); background:var(--paper); font:15px/1.8 var(--font); -webkit-font-smoothing:antialiased; }
body:has(dialog[open]:not(.contact-dialog)) { overflow:hidden; }
h1,h2,h3,h4,p { margin:0; }
h1,h2,h3,h4 { line-height:1.25; letter-spacing:-.025em; font-weight:600; text-wrap:balance; }
h1 { font-size:52px; } h2 { font-size:36px; } h3 { font-size:19px; }
p { color:var(--muted); } p+p { margin-top:16px; }
em { color:var(--blue); font-style:normal; }
a { color:inherit; text-decoration:none; text-underline-offset:4px; }
a:hover { color:var(--blue); }
a,button,input,summary { -webkit-tap-highlight-color:transparent; }
:is(a,button,input,summary):focus-visible { outline:3px solid #df3e84; outline-offset:4px; }
button,input { font:inherit; } button { border:0; background:none; color:inherit; cursor:pointer; }
img { display:block; max-width:100%; height:auto; } svg { display:block; flex-shrink:0; }
ul { list-style:none; margin:0; padding:0; } address { font-style:normal; }
bdi { unicode-bidi:isolate; overflow-wrap:anywhere; }
[hidden] { display:none!important; }
.sr-only { position:absolute!important; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.container { width:min(var(--max),calc(100% - 80px)); margin-inline:auto; }
.icon { display:inline-block; vertical-align:middle; width:22px; height:22px; flex-shrink:0; }
.flag { width:28px; height:20px; object-fit:cover; border-radius:2px; flex-shrink:0; box-shadow:0 0 0 1px #152b4815; }
.skip-link { position:fixed; inset-block-start:-80px; inset-inline-start:20px; z-index:200; background:var(--blue); color:white; padding:12px 20px; }
.skip-link:focus { inset-block-start:8px; } #main-content:focus { outline:none; }

/* Header */
.topbar { background:var(--blue-dark); color:white; font-size:11px; }
.topbar-inner { min-height:36px; display:flex; justify-content:space-between; align-items:center; gap:24px; }
.topbar-links { display:flex; align-items:center; gap:28px; }
.topbar a { display:flex; align-items:center; gap:8px; min-height:36px; color:white; }
.topbar a:hover { text-decoration:underline; } .topbar .icon { width:14px; height:14px; }
.site-header { position:sticky; inset-block-start:0; z-index:40; background:#fff; border-bottom:1px solid var(--line); box-shadow:0 3px 12px #152b4805; }
.header-inner { min-height:88px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.site-brand { flex-shrink:0; width:158px; } .site-brand img { width:158px; height:64px; object-fit:contain; }
.primary-nav { display:flex; gap:25px; align-items:center; }
.primary-nav a { position:relative; display:flex; align-items:center; min-height:48px; font-size:13px; font-weight:700; white-space:nowrap; }
.primary-nav a::after { content:""; position:absolute; inset-inline:0; bottom:0; height:3px; background:var(--pink); transform:scaleX(0); transition:transform .18s; }
.primary-nav a[aria-current] { color:var(--blue); } .primary-nav a[aria-current]::after,.primary-nav a:hover::after { transform:scaleX(1); }
.header-actions { display:flex; gap:18px; align-items:center; flex-shrink:0; }
.language-switch { min-height:44px; min-width:48px; display:flex; align-items:center; justify-content:center; color:var(--blue); font-weight:700; font-family:"Noto Sans Arabic",Arial,sans-serif; }
.menu-toggle { display:none; align-items:center; justify-content:center; width:44px; height:44px; border:1px solid var(--line); border-radius:6px; }
.menu-close { display:none; } .site-header.is-open .menu-open { display:none; } .site-header.is-open .menu-close { display:flex; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:50px; padding:12px 22px; border:1px solid transparent; border-radius:6px; font-size:13px; font-weight:800; line-height:1.6; text-align:center; transition:background .18s,color .18s; }
.button--primary { background:var(--blue); color:white; } .button--primary:hover { background:var(--blue-dark); color:white; }
.button--light { background:#fff; color:var(--blue); } .button--light:hover { background:#e7effb; }
.button--secondary { background:white; border-color:var(--line); }
.button--small { min-height:42px; padding:8px 14px; }
.button--whatsapp { background:#eaf8ef; color:#09693a; border-color:#bde3ce; }
.button .icon { width:19px; height:19px; } .header-cta.button { min-height:46px; padding:11px 18px; }
.text-link { display:inline-flex; align-items:center; gap:10px; min-height:44px; font-size:13px; font-weight:800; color:var(--blue); }
.text-link:hover { text-decoration:underline; } .text-link .icon { width:18px; height:18px; }
.eyebrow { display:flex; align-items:center; gap:8px; color:var(--blue); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:0; margin-bottom:16px; }
.eyebrow-dot,.status-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--pink); }

/* Main pages */
.home-hero { padding:64px 0 0; background:#f0f5fc; border-bottom:1px solid var(--line); }
.hero-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr); gap:76px; align-items:center; }
.hero-copy h1 { font-size:58px; line-height:1.14; } .hero-copy h1 em { font-size:46px; }
.hero-lead { font-size:16px; line-height:1.85; max-width:620px; margin-top:24px; }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:28px; }
.hero-proof { display:flex; align-items:center; gap:16px; margin-top:30px; } .hero-proof>span { display:flex; gap:7px; } .hero-proof p { font-size:12px; }
.hero-stats { display:grid; grid-template-columns:repeat(3,1fr) 1.25fr; gap:28px; align-items:center; margin-top:48px; padding-block:26px; border-top:1px solid #ccdaed; }
.hero-stats>div { display:flex; align-items:center; gap:14px; } .hero-stats strong { color:var(--blue); font-size:32px; line-height:1.2; }
.hero-stats span { font-size:11px; line-height:1.55; max-width:104px; color:var(--muted); }
.hero-stats>a { display:flex; align-items:center; justify-content:flex-end; gap:16px; font-size:12px; font-weight:800; }
.network-board { min-width:0; background:white; border-top:3px solid var(--pink); }
.network-board-top,.network-board-foot { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:17px 24px; font-size:11px; color:var(--muted); }
.network-board-top { border-bottom:1px solid var(--line); font-weight:700; } .network-board-top>.icon { color:var(--blue); width:19px; }
.network-core { padding:24px; display:flex; align-items:center; gap:20px; }
.network-core img { width:154px; height:68px; object-fit:contain; } .network-core p { font-size:12px; line-height:1.65; border-inline-start:1px solid var(--line); padding-inline-start:20px; }
.network-stage { padding:0 24px; }
.network-node { display:flex; align-items:center; gap:14px; border-top:1px solid var(--line); padding:14px 0; }
.network-node>span { flex:1; } .network-node strong { display:block; font-size:13px; } .network-node small { display:block; font-size:11px; color:var(--muted); }
.network-node>.icon { color:var(--blue); width:18px; } .network-board-foot { background:#f8fafc; }
.network-board-foot a { display:grid; place-items:center; min-width:40px; min-height:40px; color:var(--blue); }
.brand-strip { padding:30px 0 34px; border-bottom:1px solid var(--line); } .brand-strip p { text-align:center; font-size:11px; font-weight:700; margin-bottom:23px; }
.brand-strip-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:28px; align-items:center; }
.brand-strip-grid a { display:flex; align-items:center; justify-content:center; min-height:60px; }
.brand-strip img { width:auto; max-width:148px; height:48px; object-fit:contain; }
.section { padding:82px 0; } .section--soft { background:var(--soft); border-block:1px solid #e5edf6; }
.section-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:48px; margin-bottom:34px; }
.section-heading>div { flex:1; } .section-intro { max-width:400px; font-size:14px; }
.section-heading--center { display:block; text-align:center; max-width:720px; margin:0 auto 36px; } .section-heading--center .eyebrow { justify-content:center; } .section-heading--center .section-intro { max-width:600px; margin:18px auto 0; }
.intro-grid,.story-grid,.markets-grid,.values-grid,.cross-border-grid { display:grid; grid-template-columns:1fr 1.2fr; gap:76px; align-items:start; }
.lead-copy { font-size:18px; line-height:1.8; } .intro-grid .text-link { margin-top:16px; }
.advantage-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:32px; margin-top:50px; padding-top:32px; border-top:1px solid var(--line); }
.advantage-top { display:flex; align-items:center; justify-content:space-between; color:var(--blue); margin-bottom:18px; } .advantage-top>span { font-size:11px; color:#8293ac; }
.advantage h3 { font-size:17px; margin-bottom:12px; } .advantage p { font-size:13px; }
.capability-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.capability { background:white; border:1px solid var(--line); border-radius:8px; padding:28px; display:flex; flex-direction:column; align-items:flex-start; }
.capability--0 { grid-column:span 2; } .capability-top { display:flex; align-items:center; gap:12px; color:var(--muted); font-size:11px; margin-bottom:22px; }
.icon-box { display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; background:#eaf1fd; border-radius:6px; color:var(--blue); flex-shrink:0; }
.capability h3 { font-size:24px; margin-bottom:14px; } .capability p { font-size:14px; } .capability .text-link { margin-top:auto; padding-top:20px; }
.tag-row,.brand-markets { display:flex; flex-wrap:wrap; gap:6px; margin-top:20px; }
.tag-row>span,.brand-markets>span { padding:4px 9px; background:#edf3fb; color:#405d84; border-radius:4px; font-size:10px; font-weight:600; }
.objective-bar { display:flex; align-items:center; justify-content:space-between; gap:28px; padding:26px 32px; margin-top:28px; background:var(--blue-dark); color:white; }
.objective-bar span { font-size:11px; color:#c7dafa; } .objective-bar h3 { font-size:20px; margin-top:5px; }
.brand-grid,.business-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.brand-card,.business-card { border:1px solid var(--line); border-radius:8px; padding:28px; display:flex; flex-direction:column; background:white; min-width:0; }
.brand-card-logo { display:flex; align-items:center; height:80px; } .brand-card-logo img { max-width:185px; max-height:72px; object-fit:contain; }
.brand-card p { margin:20px 0 22px; font-size:13px; } .brand-markets { margin-top:12px; }
.brand-sites { display:flex; flex-wrap:wrap; gap:4px 18px; padding-top:12px; border-top:1px solid var(--line); margin-top:auto; }
.brand-sites a { display:flex; align-items:center; gap:6px; min-height:40px; color:var(--blue); font-size:11px; font-weight:800; } .brand-sites .icon { width:14px; height:14px; }
.section-end { margin-top:24px; text-align:center; }
.markets-section { background:#edf4fc; } .markets-grid h2+p,.values-grid h2+p { margin-top:22px; }
.footprint-stat { display:flex; align-items:center; gap:16px; margin-top:26px; } .footprint-stat strong { font-size:68px; line-height:1; color:var(--blue); } .footprint-stat span { font-size:12px; line-height:1.6; color:var(--muted); }
.markets-grid .text-link { margin-top:18px; }
.market-row { display:flex; align-items:center; gap:18px; padding:24px 0; border-bottom:1px solid #cbd9ed; } .market-row:first-child { border-top:1px solid #cbd9ed; }
.market-row>span:nth-child(2) { flex:1; } .market-row strong { display:block; font-size:22px; } .market-row small { display:block; font-size:13px; color:var(--muted); margin-top:4px; } .market-row>.icon { color:var(--blue); }
.market-flag .flag { width:37px; height:26px; }
.leadership-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:80px; align-items:center; }
.portrait-wrap { position:relative; padding-bottom:20px; } .portrait-frame { height:510px; background:#edf2f7; overflow:hidden; }
.portrait-frame img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.portrait-caption { background:white; position:relative; margin:-42px 20px 0; padding:18px 22px; border-inline-start:3px solid var(--pink); box-shadow:0 8px 32px #1530580e; }
.portrait-caption span { display:block; font-size:11px; color:var(--muted); } .portrait-caption strong { font-size:20px; }
.credentials { margin-top:18px; font-size:12px; font-weight:700; } .leadership-copy blockquote { margin:28px 0 22px; border-inline-start:3px solid var(--blue); padding-inline-start:24px; font-size:21px; line-height:1.7; }
.leadership-copy .text-link { margin-top:18px; }
.cta-section { background:var(--blue); color:white; }
.cta-inner { display:flex; align-items:center; justify-content:space-between; gap:50px; padding-block:48px; }
.cta-inner .eyebrow,.cta-inner p { color:#e0ebff; } .cta-inner h2 { font-size:34px; } .cta-inner p:not(.eyebrow) { max-width:670px; margin-top:16px; }
.cta-inner .button { flex-shrink:0; background:white; color:var(--blue); }
.page-hero { padding:36px 0 54px; background:var(--soft); border-bottom:1px solid var(--line); }
.breadcrumb { display:flex; flex-wrap:wrap; gap:10px; align-items:center; font-size:11px; color:var(--muted); margin-bottom:36px; }
.page-hero-grid { display:grid; grid-template-columns:1.65fr 1fr; gap:70px; align-items:center; }
.page-hero-grid:has(>div:only-child) { grid-template-columns:1fr; }
.hero-aside { border-inline-start:2px solid #b5cbee; padding:8px 0 8px 30px; padding-inline:30px 0; }
.hero-aside>.icon { margin:16px 0; color:var(--blue); } .hero-aside h2 { font-size:22px; } .hero-aside p { font-size:13px; margin-top:18px; }
.hero-aside .icon-box { margin-bottom:20px; } .hero-aside>a { display:inline-block; margin-top:18px; color:var(--blue); font-weight:700; }
.directory-metric>strong { display:block; font-size:66px; color:var(--blue); line-height:1.1; margin-bottom:18px; } .directory-metric>strong>span { font-size:28px; color:#607796; }
.large-number { font-size:76px; line-height:1.1; margin-bottom:22px; color:var(--blue); font-weight:800; }
.story-art { align-self:center; } .story-grid { grid-template-columns:.9fr 1.2fr; } .story-grid h2+p { margin-top:24px; }
.purpose-note { display:flex; flex-direction:column; gap:9px; border-top:1px solid var(--line); padding-top:24px; margin-top:26px; } .purpose-note>span { color:var(--blue); font-size:11px; font-weight:800; }
.steps-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; } .step { border-top:2px solid var(--blue); padding:24px 0; }
.step-number { display:block; color:#6b7f9c; font-size:12px; font-weight:700; margin-bottom:20px; } .step>.icon { color:var(--blue); margin-bottom:18px; } .step h3 { margin-bottom:16px; } .step p { font-size:13px; }
.values-section { background:#f8fafc; border-block:1px solid var(--line); } .value-row { display:flex; gap:22px; padding:23px 0; border-bottom:1px solid var(--line); } .value-row:first-child { padding-top:0; } .value-row>span { font-size:11px; color:var(--blue); } .value-row h3 { margin-bottom:12px; } .value-row p { font-size:13px; }

/* Directory and country pages */
.directory-toolbar { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-bottom:24px; } .directory-toolbar h2 { font-size:26px; } .directory-toolbar .eyebrow { margin-bottom:8px; }
.search-wrap { display:flex; align-items:center; gap:12px; border:1px solid #aebfd8; border-radius:6px; padding:0 14px; min-height:54px; width:420px; }
.search-wrap>.icon { color:#5a7292; } .search-wrap input { width:100%; min-width:0; padding:13px 0; border:0; color:var(--ink); background:transparent; font-size:13px; }
.search-clear { flex-shrink:0; } .search-wrap input:focus { outline:none; } .search-wrap:focus-within { outline:3px solid var(--blue); outline-offset:2px; }
.filter-chips { display:flex; flex-wrap:wrap; gap:8px; } .filter-chip { display:flex; align-items:center; gap:8px; border:1px solid var(--line); padding:10px 14px; border-radius:6px; min-height:44px; font-size:12px; font-weight:700; }
.filter-chip .flag { width:21px; height:15px; } .filter-chip .icon { width:18px; height:18px; } .filter-chip.is-active { color:white; background:var(--blue); border-color:var(--blue); }
.results-count { margin-top:20px; font-size:12px; } .business-group { margin-top:44px; }
.business-group-heading { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-bottom:25px; } .business-group-heading p { max-width:570px; font-size:13px; }
.market-title { display:flex; align-items:center; gap:12px; flex-shrink:0; } .market-title h2 { font-size:28px; } .listing-count { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; background:#edf3fb; color:var(--blue); border-radius:4px; font-size:11px; font-weight:700; }
.business-card-head { display:flex; justify-content:space-between; gap:12px; color:var(--muted); font-size:11px; } .business-card-head .icon { width:17px; height:17px; }
.business-logo { height:114px; display:flex; align-items:center; } .business-logo img { width:auto; max-width:205px; max-height:74px; }
.business-card>p { font-size:13px; } .business-card .tag-row { margin-bottom:24px; }
.business-website { display:flex; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid var(--line); margin-top:auto; padding-top:18px; color:var(--blue); font-size:13px; font-weight:700; overflow-wrap:anywhere; }
.business-website small { display:block; color:var(--muted); font-size:10px; font-weight:500; margin-bottom:3px; } .business-website .icon { width:18px; height:18px; }
.directory-empty { text-align:center; padding:70px 24px; } .directory-empty>.icon { width:34px; height:34px; color:var(--blue); margin-bottom:18px; } .directory-empty h2 { font-size:26px; } .directory-empty p { margin:18px 0; }
.use-case-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; } .use-case { border-top:1px solid #c8d9ee; padding-top:24px; } .use-case h3 { margin-bottom:16px; } .use-case p { font-size:13px; }
.country-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.country-card { display:flex; flex-direction:column; padding:30px; border:1px solid var(--line); border-radius:8px; min-width:0; }
.country-card-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:25px; } .country-flag .flag { width:42px; height:30px; } .country-index { font-size:12px; color:#8193ad; }
.country-city { display:flex; align-items:center; gap:6px; font-size:11px; } .country-city .icon { width:15px; height:15px; }
.country-card h2 { font-size:29px; margin:10px 0 20px; } .country-card h3 { font-size:17px; line-height:1.55; margin-bottom:15px; } .country-card>p:not(.country-city) { font-size:13px; }
.check-list { display:grid; gap:10px; margin:25px 0; } .check-list li { display:flex; gap:9px; font-size:12px; align-items:start; } .check-list .icon { color:#147349; width:17px; height:17px; margin-top:3px; }
.country-links { margin-top:auto; } .country-links>.text-link { font-size:12px; margin-top:10px; }
.cross-border-points { display:grid; grid-template-columns:1fr 1fr; gap:13px; margin:24px 0; } .cross-border-points>span { display:flex; align-items:center; gap:8px; font-size:12px; } .cross-border-points .icon { color:#147349; width:18px; }
.office-compact-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; } .compact-office { display:flex; align-items:center; gap:18px; padding:20px; border:1px solid var(--line); border-radius:6px; } .compact-office>span { flex:1; } .compact-office strong { display:block; font-size:15px; } .compact-office small { color:var(--muted); font-size:12px; } .compact-office>.icon { color:var(--blue); }

/* Contact. The embedded Desk service retains control of its own form. */
.direct-section { padding:34px 0; } .direct-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.direct-card { border-inline-start:2px solid #c8d9ee; padding-inline-start:22px; } .direct-card>div { display:flex; align-items:center; gap:12px; } .direct-card h2 { font-size:18px; }
.direct-card>p { font-size:11px; margin:8px 0; } .direct-phone { display:block; font-size:23px; font-weight:800; color:var(--blue); } .direct-card>.text-link { font-size:12px; }
.enquiry-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:64px; align-items:start; } .enquiry-copy h2+p { margin-top:24px; }
.enquiry-step { display:flex; align-items:start; gap:18px; margin-top:28px; } .enquiry-step>span { font-size:12px; color:var(--blue); font-weight:800; border-bottom:2px solid var(--pink); } .enquiry-step h3 { font-size:16px; margin-bottom:7px; } .enquiry-step p { font-size:13px; }
.contact-alternative { display:flex; flex-direction:column; gap:5px; padding-top:26px; margin-top:28px; border-top:1px solid var(--line); } .contact-alternative>span { font-size:12px; color:var(--muted); } .contact-alternative>a { display:flex; align-items:center; gap:10px; color:var(--blue); font-weight:800; }
.enquiry-copy>.text-link { margin-top:18px; }
.enquiry-card { min-width:0; background:white; padding:32px; border:1px solid var(--line); border-radius:8px; }
.enquiry-card-heading { display:flex; align-items:center; gap:16px; border-bottom:1px solid var(--line); padding-bottom:25px; margin-bottom:20px; } .enquiry-card-heading h2 { font-size:23px; } .enquiry-card-heading p { font-size:12px; margin-top:6px; }
.desk-form-host { min-height:240px; } .desk-form-host iframe { display:block; max-width:100%; width:100%; border:0; } .embed-status,.embed-notice { font-size:13px; padding:16px; background:var(--soft); }
.enquiry-privacy { display:flex; align-items:start; gap:10px; margin-top:22px; border-top:1px solid var(--line); padding-top:18px; } .enquiry-privacy .icon { width:18px; height:18px; color:var(--blue); margin-top:3px; } .enquiry-privacy p { font-size:10px; } .enquiry-privacy a { color:var(--blue); text-decoration:underline; }
.office-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; } .office-card { border:1px solid var(--line); border-radius:8px; padding:30px; min-width:0; }
.office-card-top { display:flex; gap:10px; align-items:center; color:var(--muted); font-size:12px; margin-bottom:18px; } .office-card h3 { font-size:28px; } .office-type { font-size:12px; margin:6px 0 22px; }
.office-card address p { display:flex; gap:12px; align-items:start; font-size:14px; } .office-card address .icon { width:18px; height:18px; color:var(--blue); margin-top:4px; } .office-card address a { overflow-wrap:anywhere; }
.office-links { display:flex; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid var(--line); margin-top:24px; padding-top:14px; }
.legal-layout { display:grid; grid-template-columns:245px 1fr; gap:70px; } .legal-toc { position:sticky; top:116px; align-self:start; display:flex; flex-direction:column; gap:4px; } .legal-toc h2 { font-size:16px; margin-bottom:14px; } .legal-toc a { padding:9px 0; font-size:12px; color:var(--blue); }
.legal-content { max-width:800px; } .legal-section+.legal-section { padding-top:32px; margin-top:32px; border-top:1px solid var(--line); } .legal-section h2 { font-size:25px; margin-bottom:20px; } .legal-section a { color:var(--blue); text-decoration:underline; }
.not-found { text-align:center; padding:72px 0 100px; } .not-found .eyebrow,.not-found .hero-actions { justify-content:center; } .not-found p:not(.error-code,.eyebrow) { max-width:650px; margin:24px auto 0; } .error-code { font-size:88px; font-weight:800; line-height:1.1; color:var(--blue); margin-bottom:24px; }

/* Footer */
.site-footer { background:#fff; border-top:4px solid var(--pink); }
.footer-heading { display:flex; justify-content:space-between; align-items:center; gap:32px; padding-block:44px 34px; } .footer-heading h2 { font-size:31px; } .footer-heading .eyebrow { font-size:10px; margin-bottom:12px; }
.footer-offices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); background:var(--soft); border-block:1px solid var(--line); }
.footer-office { display:flex; align-items:center; gap:16px; padding:24px; } .footer-office+.footer-office { border-inline-start:1px solid var(--line); } .footer-office>span { flex:1; min-width:0; } .footer-office strong { display:block; font-size:13px; } .footer-office small { display:block; font-size:12px; color:var(--muted); margin-top:3px; } .footer-office>.icon { width:16px; color:var(--blue); }
.footer-grid { display:grid; grid-template-columns:1.5fr .85fr 1.05fr .8fr; gap:46px; padding-block:46px; }
.footer-logo { width:164px; height:68px; object-fit:contain; object-position:left center; margin-bottom:17px; }
.footer-intro>p { max-width:330px; font-size:12px; line-height:1.9; }
.footer-email { display:flex; align-items:center; gap:9px; margin-top:18px; font-size:12px; color:var(--blue); font-weight:700; } .footer-email .icon { width:17px; height:17px; }
.footer-grid>div>h2 { font-size:13px; margin:16px 0 16px; }
.footer-grid>div:not(.footer-intro)>a { display:flex; align-items:center; gap:7px; min-height:38px; font-size:12px; color:var(--muted); } .footer-grid>div:not(.footer-intro)>a:hover { color:var(--blue); } .footer-grid>div>a>.icon { width:14px; height:14px; }
.footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:24px; border-top:1px solid var(--line); padding:22px 0 92px; font-size:11px; }
.footer-bottom>div { display:flex; align-items:center; gap:22px; } .footer-bottom a { display:flex; align-items:center; gap:6px; min-height:40px; } .footer-bottom .icon { width:14px; height:14px; transform:rotate(-90deg); }

/* Native dialogs and the floating office panel */
.contact-float { position:fixed; inset-inline-end:24px; bottom:24px; z-index:60; display:flex; align-items:center; justify-content:center; gap:11px; min-height:54px; padding:13px 20px; border-radius:8px; background:var(--blue); color:#fff; border:2px solid white; box-shadow:0 5px 24px #1754bc36; font-size:13px; font-weight:800; }
.contact-float:hover { background:var(--blue-dark); color:white; }
.site-dialog { border:1px solid var(--line); border-radius:8px; padding:28px; width:min(520px,calc(100% - 32px)); max-height:calc(100dvh - 48px); color:var(--ink); box-shadow:0 18px 70px #10264629; }
.site-dialog::backdrop { background:#10264633; }
.dialog-top { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:10px; } .dialog-top .eyebrow { margin:0; }
.icon-button { display:inline-flex; align-items:center; justify-content:center; min-width:42px; min-height:42px; border-radius:6px; background:#edf3fb; color:var(--blue); }
.site-dialog h2 { font-size:28px; } .site-dialog>p { font-size:13px; margin-top:16px; }
.market-options { display:grid; margin:20px 0; } .market-option { display:flex; align-items:center; gap:15px; padding:17px 0; border-top:1px solid var(--line); } .market-option>span { flex:1; } .market-option strong,.market-option small { display:block; } .market-option strong { font-size:14px; } .market-option small { font-size:12px; color:var(--muted); } .market-option>.icon { width:17px; color:var(--blue); }
.site-dialog.contact-dialog { position:fixed; inset:auto; inset-inline-end:24px; bottom:24px; margin:0; padding:0; width:min(420px,calc(100% - 32px)); max-height:calc(100dvh - 48px); overflow:hidden; border:0; }
.contact-dialog[open] { display:grid; grid-template-rows:auto minmax(0,1fr) auto; }
.contact-dialog::backdrop { background:#10264612; }
.contact-dialog-heading { display:flex; align-items:center; gap:12px; padding:19px 18px; color:white; background:var(--blue); }
.contact-dialog-icon { display:grid; place-items:center; width:44px; height:44px; border:1px solid #ffffff60; border-radius:6px; flex-shrink:0; }
.contact-dialog-heading>div { flex:1; min-width:0; } .contact-dialog-heading h2 { color:white; font-size:19px; line-height:1.35; } .contact-dialog-heading p { color:#e4edfc; font-size:11px; margin-top:4px; line-height:1.6; }
.contact-dialog-heading .icon-button { color:white; background:#ffffff20; min-width:40px; min-height:40px; }
.contact-dialog-body { background:#f3f7fd; overflow-y:auto; overscroll-behavior:contain; padding:14px; display:flex; flex-direction:column; gap:12px; }
.office-option { padding:15px; border:1px solid #dce6f4; border-radius:8px; background:#fff; }
.office-option-heading { display:flex; gap:12px; align-items:center; } .office-option-heading>div { flex:1; min-width:0; }
.office-option-icon { width:42px; height:42px; background:#eaf1fd; color:var(--blue); border-radius:6px; display:grid; place-items:center; flex-shrink:0; }
.office-option-heading h3 { font-size:16px; line-height:1.4; } .office-option-heading p { font-size:11px; line-height:1.5; margin:2px 0; } .office-option-number { display:inline-flex; min-height:25px; align-items:center; font-size:11px; font-weight:700; color:#496287; }
.office-option-heading>.flag { width:24px; height:17px; }
.office-option-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:12px; }
.office-option-actions>a { display:flex; align-items:center; justify-content:center; min-height:44px; gap:8px; padding:8px; border-radius:6px; font-size:12px; font-weight:800; }
.office-option-actions .icon { width:18px; height:18px; }
.office-call { background:#edf4ff; border:1px solid #c5d9fa; color:var(--blue-dark); } .office-call:hover { background:#dceaff; }
.office-whatsapp { background:#edf9f1; border:1px solid #bfe8cd; color:#08743c; } .office-whatsapp:hover { background:#d9f3e3; color:#075b31; }
.office-option-details { margin-top:5px; } .office-option-details summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; min-height:34px; padding-top:4px; font-size:10px; color:#5d708c; list-style:none; }
.office-option-details summary::-webkit-details-marker { display:none; } .office-option-details summary .icon { width:12px; height:12px; transform:rotate(90deg); } .office-option-details[open] summary .icon { transform:rotate(-90deg); }
.office-option-details address { padding-top:6px; font-size:11px; } .office-option-details address a { display:inline-flex; align-items:center; min-height:36px; color:var(--blue); overflow-wrap:anywhere; } .office-option-details .text-link { min-height:32px; font-size:10px; }
.contact-dialog-footer { padding:12px 18px; background:white; border-top:1px solid var(--line); }
.contact-dialog-footer a { display:flex; align-items:center; justify-content:center; gap:10px; min-height:36px; font-size:12px; font-weight:800; color:var(--blue); } .contact-dialog-footer a:last-child { font-size:10px; font-weight:600; min-height:30px; color:var(--muted); } .contact-dialog-footer .icon { width:17px; height:17px; }

[dir=rtl] .icon--direction { transform:rotate(180deg); } [dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3 { line-height:1.55; }
[dir=rtl] .hero-copy h1 { font-size:50px; } [dir=rtl] .hero-copy h1 em { font-size:41px; } [dir=rtl] .footer-logo { object-position:right center; }
[dir=rtl] .contact-dialog-heading h2 { font-size:18px; } [dir=rtl] .office-option-heading h3 { font-size:14px; }

@media (max-width:1199px) {
  .container { width:calc(100% - 56px); } .header-inner { gap:22px; } .primary-nav { gap:17px; } .header-actions { gap:12px; }
  .hero-grid { gap:36px; } .hero-copy h1 { font-size:50px; } .hero-copy h1 em { font-size:40px; }
  .network-core { gap:15px; padding:22px; } .network-core img { width:130px; } .network-core p { font-size:11px; padding-inline-start:15px; }
  .intro-grid,.story-grid,.markets-grid,.values-grid,.leadership-grid,.cross-border-grid { gap:44px; } .page-hero-grid { gap:40px; }
  .country-card { padding:24px; } .country-card h2 { font-size:25px; } .direct-phone { font-size:20px; }
  .footer-grid { gap:25px; } .footer-office { padding:20px 17px; gap:12px; } .footer-office strong { font-size:12px; }
}
@media (max-width:1023px) {
  .header-inner { flex-wrap:wrap; min-height:80px; } .site-brand,.site-brand img { width:145px; } .site-brand img { height:58px; }
  .primary-nav { order:3; flex-basis:100%; padding:12px 0 20px; justify-content:space-between; flex-wrap:wrap; }
  .js .primary-nav { display:none; } .js .site-header.is-open .primary-nav { display:flex; } .menu-toggle:not([hidden]) { display:flex; }
  .hero-grid { grid-template-columns:1.15fr 1fr; gap:28px; } .hero-copy h1 { font-size:44px; } .hero-copy h1 em { font-size:34px; } .hero-lead { font-size:14px; }
  .network-core { flex-direction:column; gap:10px; text-align:center; } .network-core p { border:0; padding:0; } .network-core p br { display:none; }
  .network-board-top,.network-board-foot { padding:12px 20px; } .network-stage { padding:0 20px; } .network-node { padding:13px 0; }
  .hero-stats { gap:18px; } .hero-stats>div { gap:10px; } .hero-stats>a { font-size:11px; } .hero-stats strong { font-size:28px; }
  .brand-strip-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 32px; } .brand-strip img { max-width:150px; }
  h1 { font-size:44px; } h2 { font-size:31px; } .section { padding:64px 0; }
  .section-heading { gap:30px; } .section-intro { max-width:330px; font-size:13px; }
  .advantage-grid { grid-template-columns:repeat(2,1fr); gap:30px; }
  .brand-grid,.business-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .country-grid { grid-template-columns:1fr; } .country-card { padding:28px; } .country-card h2 { font-size:31px; }
  .country-card .check-list { grid-template-columns:1fr 1fr; } .country-links { display:grid; grid-template-columns:1fr 1fr; gap:24px; align-items:center; } .country-links>.text-link { justify-self:end; }
  .steps-grid { grid-template-columns:repeat(2,1fr); } .portrait-frame { height:460px; } .leadership-grid { grid-template-columns:.9fr 1.1fr; gap:35px; }
  .leadership-copy blockquote { font-size:18px; } .leadership-copy p { font-size:13px; }
  .footer-grid { grid-template-columns:1.3fr 1fr; gap:24px 70px; } .footer-intro>p { max-width:420px; }
  .footer-offices { grid-template-columns:1fr; } .footer-office+.footer-office { border-inline-start:0; border-top:1px solid var(--line); }
  .footer-office { padding:17px 24px; } .footer-office>span { display:flex; justify-content:space-between; align-items:center; gap:16px; } .footer-office strong { font-size:13px; } .footer-office small { margin:0; }
  .enquiry-grid { gap:32px; grid-template-columns:.85fr 1.15fr; } .enquiry-card { padding:24px; } .direct-phone { font-size:19px; }
  .legal-layout { grid-template-columns:190px 1fr; gap:40px; }
}
@media (max-width:767px) {
  .container { width:calc(100% - 40px); } body { font-size:14px; } .topbar { font-size:10px; } .topbar-links>a:first-child { display:none; } .topbar-inner { gap:14px; }
  .header-inner { min-height:76px; gap:15px; } .site-brand,.site-brand img { width:138px; } .header-actions { gap:9px; } .header-cta.button { display:none; } .language-switch { min-width:45px; font-size:13px; }
  .primary-nav { gap:0; flex-direction:column; align-items:stretch; max-height:calc(100dvh - 100px); overflow:auto; } .primary-nav a { min-height:47px; font-size:14px; border-top:1px solid var(--line); padding-inline:10px; } .primary-nav a::after { display:none; } .primary-nav a[aria-current] { background:var(--soft); }
  .home-hero { padding-top:40px; } .hero-grid { grid-template-columns:1fr; gap:32px; } .hero-copy h1,[dir=rtl] .hero-copy h1 { font-size:42px; } .hero-copy h1 em,[dir=rtl] .hero-copy h1 em { font-size:34px; }
  .hero-lead { font-size:15px; margin-top:20px; } .hero-actions { gap:12px 20px; margin-top:24px; } .hero-proof { margin-top:24px; }
  .network-core { flex-direction:row; text-align:start; gap:20px; } .network-core img { width:150px; } .network-core p { border-inline-start:1px solid var(--line); padding-inline-start:20px; } .network-core p br { display:initial; }
  .network-node { padding:13px 0; } .network-core { padding-block:16px; }
  .hero-stats { grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:28px; padding-block:24px; gap:24px 12px; } .hero-stats>div { display:block; } .hero-stats strong { font-size:31px; } .hero-stats span { display:block; font-size:10px; margin-top:5px; } .hero-stats>a { grid-column:1/-1; justify-content:space-between; border-top:1px solid var(--line); padding-top:16px; }
  .brand-strip { padding:25px 0; } .brand-strip-grid { gap:12px 22px; } .brand-strip img { max-width:100%; height:40px; }
  .section { padding:50px 0; } h1,[dir=rtl] .page-hero h1 { font-size:37px; } h2 { font-size:29px; }
  .section-heading { display:block; margin-bottom:28px; } .section-intro { max-width:none; margin-top:20px; font-size:14px; }
  .intro-grid,.story-grid,.markets-grid,.values-grid,.cross-border-grid,.leadership-grid,.page-hero-grid,.enquiry-grid { grid-template-columns:1fr; gap:30px; }
  .lead-copy { font-size:16px; } .advantage-grid { margin-top:32px; padding-top:26px; gap:26px 22px; } .advantage h3 { font-size:16px; } .advantage p { font-size:12px; }
  .capability-grid { grid-template-columns:1fr 1fr; gap:16px; } .capability { padding:24px; } .capability--0 { grid-column:1/-1; } .capability h3 { font-size:21px; } .capability p { font-size:13px; }
  .capability-top { flex-wrap:wrap; margin-bottom:16px; } .objective-bar { flex-direction:column; align-items:flex-start; padding:24px; gap:20px; }
  .brand-grid,.business-grid { gap:16px; } .brand-card,.business-card { padding:22px; } .brand-card-logo img { max-width:100%; } .business-logo img { max-width:100%; }
  .market-row strong { font-size:20px; } .footprint-stat strong { font-size:54px; }
  .portrait-wrap { max-width:420px; width:100%; } .portrait-frame { height:470px; } .leadership-copy p { font-size:14px; } .leadership-copy blockquote { font-size:20px; }
  .cta-inner { padding-block:36px; flex-direction:column; align-items:flex-start; gap:24px; } .cta-inner h2 { font-size:29px; }
  .page-hero { padding:25px 0 36px; } .breadcrumb { margin-bottom:25px; } .hero-aside { padding-block:4px; padding-inline:22px 0; } .hero-aside p { margin-top:12px; } .hero-aside h2 { font-size:21px; }
  .directory-metric>strong { font-size:50px; margin-bottom:12px; } .directory-metric>strong>span { font-size:24px; } .large-number { font-size:52px; margin-bottom:12px; }
  .directory-toolbar { flex-direction:column; align-items:stretch; gap:20px; } .directory-toolbar h2 { font-size:24px; } .search-wrap { width:100%; } .filter-chip { font-size:11px; padding:9px 12px; }
  .business-group-heading { flex-direction:column; align-items:flex-start; gap:12px; } .market-title h2 { font-size:26px; } .business-group { margin-top:32px; }
  .use-case-grid { grid-template-columns:1fr; gap:25px; } .use-case .step-number { margin-bottom:10px; }
  .country-links { grid-template-columns:1fr; gap:6px; } .country-links>.text-link { justify-self:start; } .country-card .check-list { grid-template-columns:1fr; }
  .office-compact-grid { grid-template-columns:1fr; gap:12px; } .compact-office { padding:18px; }
  .direct-grid { grid-template-columns:1fr; gap:20px; } .direct-section { padding-block:28px; } .direct-card { display:grid; grid-template-columns:1fr 1fr; gap:2px 16px; } .direct-card>div { grid-column:1; } .direct-card>p { grid-column:1; margin:3px 0; } .direct-phone { grid-column:2; grid-row:1; font-size:18px; justify-self:end; } .direct-card>.text-link { grid-column:2; grid-row:2; justify-self:end; }
  .enquiry-card { padding:24px; } .office-grid { gap:18px; } .office-card { padding:24px; } .office-card h3 { font-size:24px; } .office-card address p { font-size:13px; }
  .legal-layout { grid-template-columns:1fr; gap:30px; } .legal-toc { position:static; display:flex; flex-flow:row wrap; gap:4px 18px; border-bottom:1px solid var(--line); padding-bottom:20px; } .legal-toc h2 { flex-basis:100%; margin-bottom:4px; } .legal-section h2 { font-size:23px; }
  .footer-heading { flex-direction:column; align-items:flex-start; padding-block:34px 28px; gap:23px; } .footer-heading h2 { font-size:28px; }
  .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px 24px; padding-block:30px; } .footer-intro { grid-column:1/-1; } .footer-intro>p { max-width:500px; } .footer-logo { width:156px; }
  .footer-office { padding:16px; gap:12px; } .footer-office>span { display:block; } .footer-office small { margin-top:3px; }
  .footer-bottom { display:block; padding-top:20px; } .footer-bottom>div { margin-top:12px; gap:22px; }
  .contact-float { inset-inline-end:16px; bottom:16px; min-height:52px; padding:12px 16px; font-size:12px; }
  .site-dialog.contact-dialog { inset-inline-end:16px; bottom:16px; max-height:calc(100dvh - 32px); } .contact-dialog-heading { padding:16px; gap:10px; }
  .site-dialog { padding:24px; } .site-dialog h2 { font-size:25px; } .contact-dialog-heading h2 { font-size:18px; } .contact-dialog-heading p { font-size:10px; }
  .not-found { padding:50px 0 70px; } .not-found h1 { font-size:33px; }
}
@media (max-width:519px) {
  .container { width:calc(100% - 32px); } .topbar-inner>span { font-size:9px; } .topbar-links a { font-size:9px; gap:5px; } .topbar .icon { width:12px; height:12px; }
  .header-actions { gap:7px; } .site-brand,.site-brand img { width:128px; }
  .hero-copy h1,[dir=rtl] .hero-copy h1 { font-size:38px; } .hero-copy h1 em,[dir=rtl] .hero-copy h1 em { font-size:30px; } h1,[dir=rtl] .page-hero h1 { font-size:32px; }
  h2 { font-size:27px; } .hero-actions .button { padding-inline:16px; } .hero-proof p { font-size:10px; }
  .network-core { gap:15px; } .network-core img { width:132px; } .network-core p { padding-inline-start:15px; font-size:10px; }
  .brand-strip-grid { gap:12px 17px; } .brand-strip img { height:36px; } .brand-strip p { font-size:10px; margin-bottom:14px; }
  .capability-grid,.brand-grid,.business-grid,.office-grid { grid-template-columns:1fr; } .capability--0 { grid-column:auto; } .capability h3 { font-size:23px; }
  .brand-card-logo img { max-width:200px; } .business-logo img { max-width:210px; } .business-logo { height:105px; }
  .steps-grid { grid-template-columns:1fr; gap:4px; } .step { padding:22px 0; } .step-number { margin-bottom:12px; }
  .cross-border-points { grid-template-columns:1fr; gap:12px; } .direct-card { display:block; } .direct-phone { margin-top:9px; font-size:23px; } .direct-card>.text-link { min-height:38px; }
  .enquiry-card { padding:22px 17px; } .enquiry-card-heading { gap:12px; } .enquiry-card-heading h2 { font-size:21px; } .enquiry-card-heading p { font-size:11px; }
  .contact-alternative a { font-size:13px; } .portrait-frame { height:435px; } .portrait-caption strong { font-size:18px; }
  .footer-grid>div:not(.footer-intro)>a { font-size:11px; } .footer-grid>div>h2 { font-size:12px; }
  .office-option { padding:12px; } .office-option-heading { gap:10px; } .office-option-heading h3 { font-size:15px; } .office-option-icon { width:36px; height:36px; } .office-option-heading>.flag { width:21px; height:15px; }
  .office-option-actions { gap:8px; } .contact-dialog-icon { display:none; } .contact-dialog-body { padding:12px; gap:10px; }
}
@media (max-width:359px) {
  .hero-copy h1,[dir=rtl] .hero-copy h1 { font-size:34px; } .hero-copy h1 em,[dir=rtl] .hero-copy h1 em { font-size:27px; }
  .topbar-links .icon { display:none; } .topbar-inner { gap:8px; } .network-core { padding-inline:16px; } .network-core img { width:110px; }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:8px; } .footer-grid { grid-template-columns:1fr; } .footer-intro { grid-column:auto; }
  .office-option-heading>.flag { display:none; } .contact-float>span { display:none; } .contact-float { width:52px; }
}
/* Refined global typography, navigation and footer. */
.topbar { background:#102e50; }
.site-header { box-shadow:0 3px 14px #192b4308; }
.primary-nav a { font-weight:500; font-size:13px; }
.primary-nav a::after { height:2px; background:var(--blue); }
.button,.text-link,.eyebrow,.hero-stats>a { font-weight:600; }
.button { border-radius:5px; }
.eyebrow { font-size:11px; letter-spacing:.08em; }
.home-hero,.page-hero { background:#f3f6fa; }
.hero-copy h1 { font-size:clamp(34px,3.6vw,50px); line-height:1.17; font-weight:600; }
.hero-copy h1 em { font-size:.84em; }
.hero-lead { line-height:1.75; }
.network-board { border-top:2px solid var(--blue); box-shadow:0 8px 30px #192b4305; }
.network-board strong,.hero-stats strong { font-weight:600; }
.site-footer { background:#102e50; border-top:3px solid #0c61c9; color:#fff; }
.footer-grid { padding-block:48px 34px; gap:40px; }
.footer-logo { width:170px; height:72px; padding:8px 12px; background:white; border-radius:5px; object-fit:contain; }
.footer-intro>p { color:#c0cede; font-size:12px; line-height:1.85; max-width:350px; margin-top:20px; }
.footer-email { color:#edf5ff; font-size:12px; font-weight:500; }
.footer-grid>div>h2 { color:#fff; font-size:13px; font-weight:600; margin-top:8px; margin-bottom:14px; letter-spacing:0; }
.footer-grid>div:not(.footer-intro)>a { color:#c0cede; font-size:12px; font-weight:400; min-height:35px; }
.site-footer a:hover { color:#fff; text-decoration:underline; }
.footer-offices { border:1px solid #ffffff26; border-radius:6px; background:#ffffff04; }
.footer-office { padding:18px 22px; }
.footer-office+.footer-office { border-color:#ffffff26; }
.footer-office strong { color:#fff; font-size:12px; font-weight:500; }
.footer-office small { color:#bdcddd; font-size:11px; }
.footer-office>.icon { color:#b9cfe9; }
.footer-bottom { border:0; padding-block:20px 90px; color:#b6c7d9; }
.footer-bottom p { color:inherit; }

/* Physical corners stay the same in English and Arabic. */
a.language-switch { position:fixed; inset:auto; left:14px; bottom:14px; z-index:60; display:flex; gap:8px; min-width:106px; height:44px; padding:0 14px; background:white; color:#073b78; border:1px solid #ccd9e8; border-radius:7px; box-shadow:0 5px 18px #102e501c; font-size:13px; font-weight:600; }
.language-switch .icon { width:17px; height:17px; }
.language-switch:hover { background:#f0f5fb; }
a.contact-float { inset:auto; right:14px; bottom:14px; width:54px; height:54px; min-height:54px; padding:0; border:3px solid white; border-radius:50%; background:linear-gradient(135deg,#073b78,#0c63ce); box-shadow:0 10px 24px rgba(7,59,120,.28); }
.contact-float .icon { width:22px; height:22px; }
.contact-float>span { display:none; }
body:has(#contact-dialog[open]) .contact-float { visibility:hidden; }

/* Exact compact geometry from emailadigital.com.sa (300px / 54px launcher).
   Kept independent of page typography so global type changes cannot enlarge it. */
#contact-dialog { position:fixed; inset:auto; right:14px; bottom:14px; z-index:70; margin:0; padding:0; width:300px; max-width:calc(100vw - 20px); max-height:calc(100dvh - 28px); overflow-y:auto; border:1px solid rgba(7,54,112,.14); border-radius:16px; background:#fff; box-shadow:0 14px 36px rgba(0,25,65,.22); font-family:Arial,Helvetica,sans-serif; line-height:1.35; }
#contact-dialog[open] { display:block; }
#contact-dialog .contact-dialog-heading { display:flex; align-items:flex-start; gap:10px; padding:14px; color:white; background:linear-gradient(135deg,#062f68,#0c61c9); }
#contact-dialog .contact-dialog-heading>div { align-self:center; }
#contact-dialog .contact-dialog-icon { display:flex; align-items:center; justify-content:center; width:38px; height:38px; flex:0 0 38px; border:1px solid rgba(255,255,255,.25); border-radius:11px; background:rgba(255,255,255,.14); }
#contact-dialog .contact-dialog-icon .icon { width:18px; height:18px; }
#contact-dialog .contact-dialog-heading h2 { margin:0; padding:0; font-size:15px; font-weight:700; line-height:1.2; letter-spacing:0; text-wrap:wrap; color:white; }
#contact-dialog .contact-dialog-heading p { margin:2px 0 0; font-size:11px; line-height:1.35; color:rgba(255,255,255,.92); }
#contact-dialog .icon-button { width:30px; height:30px; flex:0 0 30px; min-width:30px; min-height:30px; padding:0; border-radius:9px; background:rgba(255,255,255,.15); color:white; }
#contact-dialog .icon-button .icon { width:16px; height:16px; }
#contact-dialog .contact-dialog-body { display:grid; gap:8px; padding:10px; background:#f5f8fc; overflow:visible; }
#contact-dialog .office-option { padding:10px; border:1px solid #e5ecf5; border-radius:14px; background:white; }
#contact-dialog .office-option-heading { display:flex; align-items:center; gap:9px; margin-bottom:8px; }
#contact-dialog .office-option-icon { display:flex; align-items:center; justify-content:center; width:35px; height:35px; flex:0 0 35px; border-radius:10px; color:white; background:linear-gradient(135deg,#073b78,#0c63ce); }
#contact-dialog .office-option-icon .icon { width:16px; height:16px; }
#contact-dialog .office-option-heading h3 { margin:0; padding:0; font-size:14px; font-weight:700; line-height:1.2; letter-spacing:0; text-wrap:wrap; color:#14213d; }
#contact-dialog .office-option-heading h3 a:hover { text-decoration:underline; }
#contact-dialog .office-option-heading p { display:block; margin:1px 0 0; color:#68758a; font-size:11px; line-height:1.25; }
#contact-dialog .office-option-actions { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin:0; }
#contact-dialog .office-option-actions>a { display:flex; align-items:center; justify-content:center; min-height:36px; gap:6px; padding:8px 6px; border-radius:10px; font-size:12px; font-weight:700; line-height:1.1; }
#contact-dialog .office-option-actions .icon { width:15px; height:15px; }
#contact-dialog .office-call { color:#073b78; border:1px solid #cfe0f5; background:#edf5ff; }
#contact-dialog .office-whatsapp { color:#087b3b; border:1px solid #c6ecd6; background:#eafff2; }

/* Numbered section menu with an active section indicator. */
.legal-layout { grid-template-columns:260px minmax(0,1fr); gap:56px; }
.legal-toc { display:block; position:sticky; top:112px; align-self:start; padding:18px; border:1px solid var(--line); border-radius:8px; background:#f7f9fc; }
.legal-toc h2 { font-size:12px; font-weight:600; color:#536174; letter-spacing:.04em; margin:0 0 14px; }
.legal-toc ol { list-style:none; padding:0; margin:0; display:grid; gap:5px; }
.legal-toc li { margin:0; }
.legal-toc a { display:flex; align-items:center; gap:9px; padding:10px; min-height:44px; border:1px solid transparent; border-radius:5px; font-size:12px; font-weight:500; line-height:1.55; color:#485c73; }
.legal-toc a>span:nth-child(2) { flex:1; }
.legal-toc a .icon { width:12px; height:12px; }
.legal-toc .toc-number { font-size:10px; color:#708198; font-variant-numeric:tabular-nums; }
.legal-toc a:hover { background:#eaf0f8; color:var(--blue); }
.legal-toc a[aria-current] { color:var(--blue); background:#fff; border-color:#cbd9e9; box-shadow:0 2px 6px #073b7807; }
.legal-section h2 { font-weight:600; }
[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3,[dir=rtl] .eyebrow { letter-spacing:0; }
[dir=rtl] .hero-copy h1 { font-size:clamp(32px,3.3vw,46px); }
[dir=rtl] .hero-copy h1 em { font-size:.84em; }

@media (max-width:1023px) {
  .footer-grid { gap:32px; }
  .legal-layout { grid-template-columns:220px minmax(0,1fr); gap:32px; }
}
@media (max-width:767px) {
  .hero-copy h1 { font-size:40px; }
  .hero-copy h1 em { font-size:.84em; }
  .footer-grid { padding-block:34px 24px; gap:28px 24px; }
  .footer-office { padding:15px; }
  .legal-layout { grid-template-columns:1fr; gap:30px; }
  .legal-toc { position:static; padding:16px; }
  .legal-toc ol { grid-template-columns:1fr 1fr; gap:5px 10px; }
}
@media (max-width:600px) {
  #contact-dialog { right:10px; bottom:10px; left:10px; width:auto; max-width:none; max-height:calc(100dvh - 20px); }
  a.contact-float { right:10px; bottom:10px; }
  a.language-switch { left:10px; bottom:10px; }
}
@media (max-width:519px) {
  .hero-copy h1 { font-size:36px; }
  .legal-toc ol { grid-template-columns:1fr; }
}
@media (max-width:340px) {
  #contact-dialog .office-option-actions { grid-template-columns:1fr; }
  .hero-copy h1 { font-size:32px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; animation:none!important; } }
/* 5.3 — map-led homepage, brand slider and platform illustrations. */
.home-hero { position:relative; overflow:hidden; background:radial-gradient(ellipse at 82% 28%,#e8f1fc 0,transparent 48%),linear-gradient(120deg,#fff,#f4f7fb); padding-top:62px; }
.hero-grid { grid-template-columns:minmax(0,1fr) minmax(0,1.12fr); gap:44px; }
.hero-copy h1 { font-size:clamp(36px,3.7vw,52px); }
.hero-copy h1 em { font-size:.79em; }
.hero-copy .hero-lead { font-size:15px; max-width:540px; }
.hero-stats { margin-top:42px; }
.global-map { margin:0; min-width:0; position:relative; border:1px solid #dce6f1; border-radius:12px; background:linear-gradient(155deg,#fff,#f4f8fd); box-shadow:0 22px 55px #1749770b; overflow:hidden; }
.map-topline { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:22px 24px 0; }
.map-kicker { color:#536f8b; text-transform:uppercase; font-size:10px; font-weight:600; letter-spacing:.12em; }
.map-coordinate { display:flex; align-items:center; gap:7px; color:#6f8499; font-size:9px; letter-spacing:.05em; }
.map-coordinate .icon { width:14px; height:14px; }
.map-canvas { position:relative; width:100%; aspect-ratio:900/520; direction:ltr; }
.map-geography { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
.map-label { position:absolute; display:flex; align-items:center; gap:6px; padding:5px 8px; color:#183b64; background:#ffffffed; border:1px solid #d6e3f1; border-radius:5px; font-size:10px; line-height:1.3; font-weight:500; white-space:nowrap; transform:translate(-50%,0); box-shadow:0 4px 12px #123d7310; }
.map-label a:hover,a.map-label:hover { color:var(--blue); border-color:#81a7d2; }
.map-country-code { font-size:8px; letter-spacing:.025em; font-weight:700; color:#5d7a9a; }
.global-map figcaption { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 24px 20px; }
.global-map h2 { font-size:21px; font-weight:600; line-height:1.3; }
.global-map figcaption p { font-size:11px; margin-top:7px; }
.map-explore { width:36px; height:36px; display:grid; place-items:center; border:1px solid #cfddea; border-radius:50%; background:#fff; color:var(--blue); }
.map-explore .icon { width:17px; height:17px; }
.map-team-strip { display:flex; justify-content:space-between; align-items:center; gap:14px; border-top:1px solid #e0e8f2; background:#ffffff99; padding:13px 24px; font-size:9px; }
.map-team-strip>span { color:#64788e; } .map-team-strip strong { font-weight:500; color:#345c87; }
.brand-carousel { padding:27px 0 30px; background:#fff; border-bottom:1px solid var(--line); }
.carousel-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
.carousel-heading>p { font-size:11px; font-weight:500; color:#627389; }
.carousel-controls { display:flex; align-items:center; gap:6px; direction:ltr; }
.carousel-controls button { display:flex; align-items:center; justify-content:center; min-width:32px; height:32px; border:1px solid #dce4ee; border-radius:5px; color:#54708b; font-size:10px; }
.carousel-controls button:hover { color:var(--blue); border-color:#9ab7d6; background:#f5f8fc; }
.carousel-controls [data-carousel-pause] { min-width:49px; padding-inline:8px; }
.carousel-controls .icon { width:13px; height:13px; }
.carousel-controls [data-carousel-prev] .icon { transform:rotate(180deg); }
.carousel-controls [data-carousel-next] .icon { transform:none; }
.logo-track { display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#d5dfeb transparent; padding:4px 1px 10px; direction:ltr; scroll-padding-inline:1px; }
.logo-slide { display:flex; align-items:center; justify-content:center; flex:0 0 190px; height:102px; padding:13px 17px; border:1px solid #e9edf3; border-radius:7px; scroll-snap-align:start; background:#fff; }
.logo-slide img { width:100%; height:70px; object-fit:contain; filter:grayscale(1); opacity:.68; transition:filter .25s,opacity .25s,transform .25s; }
.logo-slide:hover,.logo-slide:focus-visible { border-color:#c7d6e9; }
.logo-slide:hover img,.logo-slide:focus img { filter:grayscale(0); opacity:1; transform:scale(1.035); }
.logo-slide--accounts,.logo-slide--pcmo { padding-inline:8px; }
.logo-slide--accounts img,.logo-slide--pcmo img { height:88px; }
.capability { position:relative; overflow:hidden; }
.capability-art { display:block; width:100%; max-width:230px; height:130px; margin:0 0 22px; color:#4f7fb3; stroke-width:1.65; }
.capability--0 .capability-art { max-width:290px; height:166px; color:#4675a8; }
.capability-art rect { fill:#f0f5fc; }
.platform-section { position:relative; background:#f4f7fb; border-block:1px solid #e4eaf1; overflow:hidden; }
.platform-intro { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:75px; align-items:center; margin-bottom:40px; }
.platform-intro h2 { font-size:34px; line-height:1.28; max-width:670px; }
.platform-intro>div>p:last-child { font-size:14px; max-width:580px; margin-top:22px; }
.platform-network { position:relative; width:310px; height:260px; justify-self:end; }
.platform-orbit { position:absolute; left:50%; top:50%; border:1px solid #cbdced; border-radius:50%; transform:translate(-50%,-50%) rotate(-28deg); }
.orbit-one { width:295px; height:185px; } .orbit-two { width:215px; height:215px; border-style:dashed; border-color:#d7c8e4; }
.platform-hub { position:absolute; left:50%; top:50%; width:120px; height:80px; padding:14px; display:grid; place-items:center; transform:translate(-50%,-50%); border-radius:18px; background:white; border:1px solid #dce6f1; box-shadow:0 12px 36px #073b7810; }
.orbit-node { display:grid; place-items:center; width:45px; height:45px; border:1px solid #cbdced; border-radius:12px; background:#fff; box-shadow:0 6px 18px #073b7809; color:#366797; position:absolute; }
.node-code { left:14px; top:73px; } .node-finance { right:21px; top:32px; } .node-case { left:68px; bottom:16px; } .node-support { right:1px; bottom:55px; }
.orbit-node .icon { width:22px; height:22px; }
.orbit-dot { position:absolute; width:6px; height:6px; border-radius:50%; background:#b84b86; }
.dot-one { left:132px; top:22px; } .dot-two { right:83px; bottom:28px; background:#3e80c4; }
.platform-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.platform-tile { min-width:0; border:1px solid #dce5ef; border-radius:8px; background:white; overflow:hidden; scroll-margin-top:112px; }
.platform-logo { height:150px; padding:23px 25px; display:grid; place-items:center; }
.platform-logo img { max-width:100%; width:100%; height:105px; object-fit:contain; }
.platform-caption { display:flex; align-items:center; justify-content:space-between; gap:8px; border-top:1px solid #e8edf3; padding:14px 16px; background:#fcfdff; }
.platform-caption>span { display:flex; align-items:center; gap:7px; color:#58718b; font-size:10px; }
.platform-caption .icon { width:15px; height:15px; }
.platform-caption>a { color:#446c97; padding:4px; }

/* First landing popup, independent of page flow. */
#region-dialog { padding:0; width:min(440px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); border-radius:14px; overflow:auto; background:#fff; border:1px solid #d4e1f0; box-shadow:0 24px 100px #0c29473d; }
#region-dialog::backdrop { background:#102e5066; backdrop-filter:blur(3px); }
#region-dialog .region-close { position:absolute; top:12px; inset-inline-end:12px; z-index:1; width:32px; height:32px; min-width:32px; min-height:32px; background:#ffffffdd; border:1px solid #dce6f1; border-radius:50%; color:#486482; }
.region-close .icon { width:15px; height:15px; }
.region-visual { position:relative; height:122px; overflow:hidden; display:grid; place-items:center; background:linear-gradient(135deg,#f4f8fd,#e6eef9); border-bottom:1px solid #e2eaf5; }
.region-visual>img { position:absolute; width:390px; height:225px; object-fit:contain; opacity:.62; top:-37px; left:50%; transform:translateX(-50%); }
.region-visual>span { z-index:0; display:grid; place-items:center; width:54px; height:54px; border:1px solid #c2d6ed; border-radius:16px; background:#fffffff0; color:#175694; box-shadow:0 8px 24px #12467514; }
.region-visual .icon { width:28px; height:28px; }
.region-content { padding:27px 30px 22px; text-align:start; }
.region-content .eyebrow { font-size:9px; margin-bottom:12px; }
#region-dialog h2 { font-size:25px; line-height:1.3; letter-spacing:-.025em; font-weight:600; }
#region-dialog #region-description { margin-top:14px; font-size:13px; line-height:1.7; color:#63758a; }
.region-choices { display:grid; gap:10px; margin-top:25px; }
.region-choices .button { width:100%; min-height:45px; font-size:12px; border-radius:6px; }
.region-choices .button--secondary { border-color:#cfddeb; color:#214f80; }
.region-choices .button:focus-visible { outline:2px solid #4c78a5; outline-offset:3px; }
.region-other { display:flex; justify-content:center; align-items:center; gap:10px; font-size:11px; color:#57728f; min-height:34px; }
.region-other .icon { width:15px; height:15px; }
.region-content .region-footnote { margin-top:18px; color:#6c7e91; font-size:10px; text-align:center; }
[dir=rtl] .map-label { font-family:var(--font); direction:rtl; font-size:9px; }
[dir=rtl] .map-country-code { direction:ltr; }
[dir=rtl] #region-dialog h2 { letter-spacing:0; line-height:1.55; }
@media (max-width:1199px) {
  .hero-grid { gap:30px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .hero-copy h1 { font-size:44px; } .map-label { font-size:9px; padding:4px 6px; }
  .map-country-code { font-size:7px; }
  .map-topline,.map-team-strip { padding-inline:18px; } .global-map figcaption { padding-inline:18px; }
  .global-map h2 { font-size:19px; } .map-team-strip { font-size:8px; }
  .platform-intro { gap:40px; }
  .platform-logo { padding-inline:18px; }
}
@media (max-width:1023px) {
  .hero-grid { grid-template-columns:1fr; gap:35px; }
  .hero-copy { max-width:650px; }
  .hero-copy .hero-lead { max-width:610px; }
  .global-map { max-width:750px; width:100%; }
  .map-label { font-size:11px; }
  .map-country-code { font-size:9px; }
  .map-topline { padding:22px 24px 0; }
  .map-team-strip { font-size:10px; }
  .global-map figcaption { padding-inline:24px; }
  .platform-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .platform-intro { grid-template-columns:1fr 270px; gap:30px; }
  .platform-network { transform:scale(.85); transform-origin:center right; }
  .platform-intro h2 { font-size:29px; }
}
@media (max-width:767px) {
  .home-hero { padding-top:38px; }
  .hero-copy h1 { font-size:40px; } .hero-copy .hero-lead { font-size:14px; }
  .hero-grid { gap:32px; }
  .map-topline { padding:18px 16px 0; gap:8px; }
  .map-kicker { font-size:8px; } .map-coordinate { font-size:7px; }
  .map-label,[dir=rtl] .map-label { font-size:8px; gap:4px; padding:4px 5px; }
  .map-country-code { font-size:7px; }
  .global-map figcaption { padding:8px 16px 17px; }
  .global-map h2 { font-size:19px; } .global-map figcaption p { font-size:10px; }
  .map-team-strip { font-size:8px; padding:12px 16px; flex-wrap:wrap; gap:5px 12px; }
  .hero-stats { margin-top:30px; }
  .brand-carousel { padding-block:20px 24px; }
  .carousel-heading { gap:10px; } .carousel-heading>p { font-size:10px; max-width:205px; }
  .logo-slide { flex-basis:166px; height:95px; }
  .logo-slide img { height:62px; } .logo-slide--accounts img,.logo-slide--pcmo img { height:80px; }
  .platform-intro { grid-template-columns:1fr; gap:10px; margin-bottom:26px; }
  .platform-intro h2 { font-size:29px; } .platform-intro>div>p:last-child { font-size:13px; }
  .platform-network { justify-self:center; transform:scale(.85); transform-origin:center; margin-block:-10px; }
  .platform-grid { gap:14px; }
  .platform-logo { height:125px; padding:15px; } .platform-logo img { height:90px; }
  .platform-caption { padding:11px 12px; } .platform-caption>span { font-size:9px; gap:5px; }
  .capability-art { height:120px; margin-bottom:16px; } .capability--0 .capability-art { height:150px; }
  .region-content { padding:24px 23px 20px; }
  #region-dialog h2 { font-size:24px; }
}
@media (max-width:519px) {
  .hero-copy h1 { font-size:36px; }
  .platform-grid { grid-template-columns:1fr 1fr; }
  .platform-caption>span>.icon { display:none; }
  .platform-logo { height:115px; padding:12px; }
  .platform-logo img { height:85px; }
  .platform-caption>span { min-height:26px; }
}
@media (max-width:359px) {
  .hero-copy h1 { font-size:31px; } .map-country-code { display:none; }
  .map-label,[dir=rtl] .map-label { font-size:7px; }
  .carousel-heading>p { max-width:155px; font-size:9px; }
  .carousel-controls { gap:3px; } .carousel-controls button { min-width:29px; }
  .platform-grid { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) { .logo-slide img { transition:none; } }
@media print {
  .topbar,.site-header,.site-footer,.contact-float,.language-switch,.site-dialog,.button,.hero-actions,.search-wrap,.filter-chips { display:none!important; }
  body { font-size:11pt; color:black; background:white; } .container { width:100%; } .section,.page-hero,.home-hero { padding:18pt 0; background:white; }
  .hero-grid,.page-hero-grid,.intro-grid,.legal-layout,.enquiry-grid { display:block; } .network-board,.legal-toc { display:none; }
  .brand-card,.business-card,.office-card { break-inside:avoid; } h1,h2,h3,em { color:black!important; } h1 { font-size:28pt; } h2 { font-size:22pt; }
}
