
:root{--ink:#0E1B3D;--ink2:#16285A;--cy:#2BB3D0;--cy2:#1C8FA9;--paper:#F4F7F9;--line:#D9E2E8;--tx:#3E4A5E;--mu:#6A7689;--w:#fff}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--tx);font-family:"IBM Plex Sans Arabic",system-ui,sans-serif;font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased}
[dir=ltr]{font-family:"IBM Plex Sans","IBM Plex Sans Arabic",system-ui,sans-serif}
img{max-width:100%;display:block}a{color:inherit}
.w{width:min(1180px,100% - 40px);margin-inline:auto}
:focus-visible{outline:3px solid var(--cy);outline-offset:3px;border-radius:4px}
h1,h2,h3{color:var(--ink);font-weight:600;line-height:1.3}
h2{font-size:clamp(26px,3vw,36px);font-weight:500}
h3{font-size:19px}
.c{text-align:center}
/* header: ink bar, always */
.hd{position:sticky;top:0;z-index:50;background:rgba(14,27,61,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(43,179,208,.25)}
.hd-in{display:flex;align-items:center;gap:28px;height:72px}
.lg img{height:40px;width:auto}
.nv{display:flex;gap:4px;margin-inline-start:auto}
.nv a,.lang{color:#C9D4E5;text-decoration:none;font-size:15px;padding:8px 12px;border-radius:8px}
.nv a:hover,.lang:hover{color:#fff}
.nv a[aria-current]{color:#fff;box-shadow:inset 0 -2px 0 var(--cy)}
.lang{border:1px solid rgba(255,255,255,.25)}
.mn{display:none;margin-inline-start:auto}.mn summary{list-style:none;cursor:pointer;color:#fff;width:40px;height:40px;display:grid;place-items:center}
.mn summary svg{width:24px;height:24px;stroke:currentColor;stroke-width:1.8;fill:none}.mn summary::-webkit-details-marker{display:none}
.mn nav{position:absolute;inset-inline:0;top:72px;background:var(--ink);display:grid;padding:12px 20px 20px}
.mn nav a{color:#fff;text-decoration:none;padding:12px 4px;border-bottom:1px solid rgba(255,255,255,.08)}
/* hero: the market map */
.hero{background:var(--ink);color:#C9D4E5;overflow:hidden;position:relative}
.hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(14,27,61,.94) 0%,rgba(14,27,61,.7) 38%,rgba(14,27,61,.15) 70%,rgba(14,27,61,.3) 100%),linear-gradient(180deg,rgba(14,27,61,.55) 0%,transparent 25%,transparent 70%,rgba(14,27,61,.95) 100%)}
.hero-bg{position:absolute;inset:0;z-index:0}.hero-bg video{width:100%;height:100%;object-fit:cover;display:block;opacity:.95}
.hero .hero-in{z-index:2;min-height:min(86vh,800px)}
.hero-map{position:relative}.hero .hero-map{aspect-ratio:auto;height:min(68vh,620px);margin-inline-end:-7%}.hero .hero-map svg{position:absolute;inset:0;height:100%}.hero-map .h3d{position:absolute;inset:0;width:100%;height:100%;display:block}.hero-map.is3d svg{visibility:hidden}
[dir=rtl] .hero::before{background:linear-gradient(270deg,rgba(14,27,61,.94) 0%,rgba(14,27,61,.7) 38%,rgba(14,27,61,.15) 70%,rgba(14,27,61,.3) 100%),linear-gradient(180deg,rgba(14,27,61,.55) 0%,transparent 25%,transparent 70%,rgba(14,27,61,.95) 100%)}
.hero-in{position:relative;display:grid;grid-template-columns:1fr 1.05fr;gap:40px;align-items:center;padding:72px 0 80px}
.hero h1{color:#fff;font-size:clamp(38px,5.2vw,66px);font-weight:300;line-height:1.15;letter-spacing:-.01em}
[dir=rtl] .hero h1{letter-spacing:0;line-height:1.3}
.lede{font-size:19px;margin-top:22px;max-width:34em}
.hero .lede{color:#E3EAF4}
.q{margin-top:14px;color:#9FB0C8;max-width:34em;border-inline-start:2px solid var(--cy);padding-inline-start:16px}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.b{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:10px;font-weight:600;font-size:15px;text-decoration:none;border:0;cursor:pointer;font-family:inherit}
.b-c{background:var(--cy);color:var(--ink)}.b-c:hover{background:#4CC4DD}
.b-g{color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}.b-g:hover{box-shadow:inset 0 0 0 1px #fff}
.b-p{background:var(--ink);color:#fff}.b-p:hover{background:var(--ink2)}
.ar{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
[dir=rtl] .ar{transform:scaleX(-1)}
.mmap{width:100%;height:auto;overflow:visible;direction:ltr}
.mmap .grid circle{fill:rgba(201,212,229,.18)}
.mmap .tr{fill:none;stroke:var(--cy);stroke-width:2.2;stroke-linecap:round;stroke-dasharray:420;stroke-dashoffset:420;animation:draw 1.4s cubic-bezier(.6,0,.2,1) forwards;animation-delay:calc(.25s + var(--i) * .18s)}
.mmap .nd circle{fill:var(--ink);stroke:var(--cy);stroke-width:2.2;opacity:0;animation:pop .5s ease forwards;animation-delay:calc(1.2s + var(--i) * .18s)}
.mmap .nd .in{fill:var(--cy);stroke:none}
.mmap .nd text{fill:#fff;font-size:19px;font-weight:600;opacity:0;animation:pop .5s ease forwards;animation-delay:calc(1.3s + var(--i) * .18s);font-family:inherit}
.mmap .nd:hover circle:first-child{fill:var(--ink2);stroke-width:3}
.mmap .nd:focus-visible{outline:none}.mmap .nd:focus-visible circle:first-child{stroke:#fff;stroke-width:3}
.mmap .core rect{fill:var(--ink2);stroke:var(--cy);stroke-width:2}
.hero-map.solo{max-width:560px;margin:0 auto 40px;background:var(--ink);border-radius:20px;padding:28px}
@keyframes draw{to{stroke-dashoffset:0}}@keyframes pop{to{opacity:1}}
@media (prefers-reduced-motion:reduce){.mmap .tr{animation:none;stroke-dashoffset:0}.mmap .nd circle,.mmap .nd text{animation:none;opacity:1}html{scroll-behavior:auto}}
/* bands */
.band{padding:88px 0}.band.alt{background:#fff;border-block:1px solid var(--line)}
.band.dark{background:var(--ink);color:#C9D4E5}.band.dark h2,.band.dark h3{color:#fff}
.split{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:start}
.big{font-size:22px;line-height:1.85;color:var(--ink);margin-top:18px;max-width:30em}
.vm{display:grid;gap:0;border-inline-start:1px solid var(--line)}
.vm>div{padding:4px 32px 28px}.vm>div+div{border-top:1px solid var(--line);padding-top:28px}
.vm p{margin-top:8px}
.head{max-width:44em;margin-bottom:40px}.head p{margin-top:12px}
.prds{list-style:none;border-top:1px solid var(--line)}
.prd{display:grid;grid-template-columns:220px 1fr auto;gap:12px 40px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}
.prd-n{display:flex;align-items:center;gap:12px}
.dot{width:14px;height:14px;border-radius:50%;border:2.2px solid var(--cy);position:relative;flex:none}.dot::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--cy)}
.prd h3{font-size:22px}
.prd>p{color:var(--tx);max-width:40em}
.tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;grid-column:2}
.tags li{font-size:13.5px;padding:4px 12px;border-radius:999px;background:var(--paper);border:1px solid var(--line);color:var(--ink)}
.lnk{display:inline-flex;align-items:center;gap:6px;color:var(--cy2);font-weight:600;text-decoration:none;font-size:15px}
.lnk:hover{text-decoration:underline}
.prd .lnk{grid-column:3;grid-row:1}
.lic{display:grid;grid-template-columns:1fr 2fr;gap:40px;align-items:center}
.lic-row{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:16px;background:#fff}
.lic-i{padding:28px 32px}.lic-i+.lic-i{border-inline-start:1px solid var(--line)}
.lic-i img{height:42px;width:auto;margin-bottom:12px}.lic-i h3{margin-bottom:8px}
.split2{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.tl{list-style:none;margin-top:28px;position:relative}
.tl li{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.tl time{color:var(--cy);font-size:14px;font-weight:600;padding-top:3px}
.tl h3{font-size:17px}.tl p{font-size:15px;color:#9FB0C8;margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tl.full li{border-bottom:1px solid var(--line)}.tl.full p{color:var(--tx);-webkit-line-clamp:unset;display:block}
.lt{margin-top:22px;color:var(--cy)}
.vid p{margin-top:12px;color:#9FB0C8}
.yt{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:16px;overflow:hidden;cursor:pointer;background:#000}
.yt img{width:100%;height:100%;object-fit:cover;opacity:.8}
.pl{position:absolute;inset:0;display:grid;place-items:center}.pl svg{width:68px;height:68px;padding:18px;border-radius:50%;background:var(--cy);fill:var(--ink)}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.logos{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin-top:36px}
.logos li{background:#fff;border:1px solid var(--line);border-radius:12px;aspect-ratio:3/2;position:relative;overflow:hidden}
.logos img{position:absolute;inset:8px;width:calc(100% - 16px);height:calc(100% - 16px);object-fit:contain;mix-blend-mode:multiply}
.ct{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:start}
.frm{display:grid;gap:8px}.frm label{font-size:14.5px;color:var(--ink);margin-top:8px}.frm label span{color:var(--mu);font-size:13px}
.frm input,.frm textarea{font:inherit;font-size:16px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
.frm input:focus,.frm textarea:focus{outline:2px solid var(--cy);border-color:transparent}
.frm small{color:var(--mu);font-size:13px}.frm button{justify-self:start;margin-top:12px}
.frm-msg{font-size:14px;color:var(--cy2)}
.ct-side h3{margin-top:24px;margin-bottom:12px}
.ways{display:grid;gap:12px}.ways div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:10px}
.ways dt{color:var(--mu)}.ways a{text-decoration:none;color:var(--ink);font-weight:600}
.ct-side iframe{width:100%;height:260px;border:0;border-radius:14px;background:var(--line);margin-bottom:12px}
.phead{background:var(--ink);padding:56px 0 48px}.phead h1{color:#fff;font-size:clamp(32px,4vw,48px);font-weight:400;margin-top:10px}
.phead .lede{color:#C9D4E5}.back{color:var(--cy)}
.prose{max-width:46em}.prose h2{font-size:21px;font-weight:600;margin:32px 0 8px}.prose p{margin-top:10px}
.prose ul{margin:10px 0;padding-inline-start:22px}.prose li{margin-top:8px}
.note{margin-top:28px;color:var(--mu);max-width:46em}
.ft{background:var(--ink);color:#9FB0C8;padding-top:56px;font-size:15px}
.ft-in{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.3fr;gap:40px;padding-bottom:40px}
.ft-b img:first-child{height:48px;width:auto}.ft-b p{margin:16px 0;max-width:24em}
.ft-b .cma{height:38px;width:auto;background:#fff;padding:6px 10px;border-radius:8px}
.ft-n{display:grid;gap:10px;align-content:start}.ft-n a{text-decoration:none}.ft-n a:hover{color:#fff}
.ft-bar{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;font-size:13.5px}
.waf{position:fixed;inset-inline-end:20px;bottom:20px;width:56px;height:56px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 6px 18px rgba(14,27,61,.25);z-index:40}
.waf svg{width:30px;height:30px;fill:#fff}
@media (max-width:980px){.nv,.lang{display:none}.mn{display:block}
.hero-in,.split,.split2,.lic,.ct{grid-template-columns:1fr}.hero-in{padding:48px 0 56px;gap:24px}.hero .hero-in{min-height:0}.hero .hero-map{height:auto;aspect-ratio:3/4;margin-inline:0}.hero::before,[dir=rtl] .hero::before{background:linear-gradient(180deg,rgba(14,27,61,.9) 0%,rgba(14,27,61,.75) 50%,rgba(14,27,61,.35) 75%,rgba(14,27,61,.9) 100%)}
.prd{grid-template-columns:1fr}.tags,.prd .lnk{grid-column:auto;grid-row:auto}
.vm{border-inline-start:0;border-top:1px solid var(--line)}.vm>div{padding-inline:0}
.lic-row{grid-template-columns:1fr}.lic-i+.lic-i{border-inline-start:0;border-top:1px solid var(--line)}
.ft-in{grid-template-columns:1fr}.band{padding:64px 0}.tl li{grid-template-columns:1fr;gap:4px}}

/* platform cards: a logo that opens on hover or focus into the platform's line (like Hefth's clients) */
.pfs{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pf{position:relative;height:200px}
.pf-in{position:absolute;inset:0 0 auto 0;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:22px;border-radius:18px;background:#fff;border:1px solid var(--line);text-decoration:none;color:inherit;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s,border-color .4s;z-index:1}
.pf-logo{height:64px;display:grid;place-items:center}.pf-logo img{max-height:64px;max-width:170px;width:auto}
.pf-n{font-weight:600;color:var(--ink);font-size:16px;text-align:center}
.pf-info{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1),opacity .3s;text-align:center}
.pf-info>span{overflow:hidden;display:grid;gap:10px;justify-items:center}
.pf-l{font-size:14.5px;line-height:1.7;color:var(--tx)}
.pf-in:hover,.pf-in:focus-visible{transform:translateY(-4px) scale(1.03);box-shadow:0 22px 44px -22px rgba(14,27,61,.35);border-color:var(--cy);z-index:3}
.pf-in:hover .pf-info,.pf-in:focus-visible .pf-info{grid-template-rows:1fr;opacity:1}
.pf.is-soon .pf-logo,.pf.is-soon .pf-n{opacity:.55}
.soon{position:absolute;top:-9px;inset-inline-end:16px;z-index:4;background:#C8382E;color:#fff;font-size:12px;font-weight:600;padding:2px 10px;border-radius:999px}
.mmap .hb rect{fill:var(--ink2);stroke:rgba(43,179,208,.6);stroke-width:1.5}
.mmap .nd.soon circle:first-child{stroke-dasharray:3 3}
.mmap .nd text{font-size:16px}
.hero-copy>*{animation:hrise 1s cubic-bezier(.2,.7,.2,1) both}.hero-copy>:nth-child(2){animation-delay:.15s}.hero-copy>:nth-child(3){animation-delay:.3s}.hero-copy>:nth-child(4){animation-delay:.45s}
@keyframes hrise{from{opacity:0;transform:translateY(18px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@media (prefers-reduced-motion:reduce){.hero-copy>*{animation:none}}
/* tidy pass (Aziz 2026-10-13): even rows, aligned cards, cleaner paragraph breaks */
p,li,dd{text-wrap:pretty}h1,h2,h3,.pf-n{text-wrap:balance}
/* justified paragraphs so every line runs to the same edge (Aziz 2026-10-13) */
.hero-copy p,.lede,.big,.note,.head p,.vm p,.lic-i p,.tl p,.prose p,.prose li,.ft-b p{text-align:justify;text-justify:inter-word;hyphens:manual}
.pf-l{text-align:justify;text-align-last:center}
@media (max-width:560px){[lang=en] .hero-copy p,[lang=en] .lede,[lang=en] .big,[lang=en] .note,[lang=en] .head p,[lang=en] .tl p,[lang=en] .prose p,[lang=en] .prose li{text-align:start}}
[lang=en] .vm p,[lang=en] .lic-i p,[lang=en] .ft-b p,[lang=en] .tl:not(.full) p{text-align:start}
.hero .q{max-width:34em}
.pf-in{justify-content:flex-start;padding:26px 20px 22px}
.pf-logo{height:64px;flex:none}
.pf-n{min-height:3em;display:flex;align-items:center;justify-content:center;line-height:1.5}
.pfs,.t-kids{align-items:stretch}
.vm>div{display:flex;flex-direction:column}
.lic-row{align-items:stretch}.lic-i{display:flex;flex-direction:column}
.lic-i{align-items:center;text-align:center;gap:16px;padding:32px}.lic-i img{height:60px;width:auto;min-height:0;margin:0;object-fit:contain}.lic-i p{text-align:center!important;margin:0;max-width:24em}.lic-i img.moc{height:92px}.lic{grid-template-columns:minmax(0,.7fr) minmax(0,2.3fr)}.lic .lic-row{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr)}.lic .lic-i{padding:32px 26px}.lic .lic-i p{font-size:15px}@media (min-width:1100px){[lang=ar] .lic .lic-i p{white-space:nowrap;max-width:none}}@media (min-width:1240px){[lang=en] .lic .lic-i p{white-space:nowrap;max-width:none;font-size:14.5px}}.lic-i img:not(.moc){margin-block:16px}
.tl li{align-items:baseline}
.ct>div>.big{margin-top:0}.ct .note{margin-top:20px;max-width:30em}
.frm label span{margin-inline-start:4px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.file{display:flex;align-items:center;gap:14px;padding:8px;border:1px solid var(--line);border-radius:10px;background:#fff;position:relative}
.file .fbtn{margin:0;cursor:pointer;background:var(--ink);color:#fff;font-size:14.5px;font-weight:600;padding:8px 16px;border-radius:8px}
.file:focus-within{outline:2px solid var(--cy)}
.fname{color:var(--mu);font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* partner slider (Aziz 2026-10-13) */
.mq{margin-top:36px;display:grid;gap:14px;direction:ltr;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mq-row{overflow:hidden}
.mq-t{list-style:none;display:flex;gap:14px;width:max-content;animation:mq 46s linear infinite}
.mq-row.r2 .mq-t{animation-direction:reverse;animation-duration:52s}
.mq:hover .mq-t{animation-play-state:paused}
.mq li{flex:none;width:170px;aspect-ratio:3/2;background:#fff;border:1px solid var(--line);border-radius:14px;position:relative;overflow:hidden;transition:border-color .2s,transform .2s}
.mq li:hover{border-color:var(--cy);transform:translateY(-3px)}
.mq img{position:absolute;inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);object-fit:contain;mix-blend-mode:multiply}
@keyframes mq{to{transform:translateX(calc(-50% - 7px))}}
@media (max-width:560px){.mq li{width:130px}}
@media (prefers-reduced-motion:reduce){.mq-t{animation:none;flex-wrap:wrap;width:auto;justify-content:center}.mq-t li[aria-hidden]{display:none}.mq{-webkit-mask-image:none;mask-image:none;padding-inline:16px}}
/* platform cards, dark and themed per brand like the live exit.sa cards (Aziz 2026-10-13) */
.pf{--bg:radial-gradient(130% 150% at 88% 0%,#2E5196 0%,#17295C 46%,#0C1736 100%);--ac:#2BB3D0}
.pf[data-b="t-sec"]{--bg:radial-gradient(130% 150% at 88% 0%,#3D3596 0%,#1C2063 46%,#0B1033 100%)}
.pf[data-b="t-pre"]{--bg:radial-gradient(130% 150% at 85% 0%,#7A5A1C 0%,#3B2A0C 48%,#120C04 100%);--ac:#E2BC63}
.pf-in{background:var(--bg);border:1px solid rgba(255,255,255,.09);color:#fff;box-shadow:0 22px 44px -26px rgba(8,16,40,.75);overflow:hidden;isolation:isolate}
.pf-in::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:26px 26px;-webkit-mask-image:radial-gradient(90% 90% at 85% 0%,#000,transparent 75%);mask-image:radial-gradient(90% 90% at 85% 0%,#000,transparent 75%)}
.pf-in::after{content:"";position:absolute;inset-inline-start:-30%;top:0;width:30%;height:100%;z-index:-1;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);transform:skewX(-18deg);transition:inset-inline-start .9s cubic-bezier(.2,.7,.2,1)}
.pf-in:hover::after,.pf-in:focus-visible::after{inset-inline-start:130%}
.pf-a{display:flex;flex-direction:column;align-items:center;gap:14px;min-width:0;max-width:100%}
.pf-logo img{max-height:62px;max-width:150px;filter:drop-shadow(0 6px 18px rgba(0,0,0,.35))}
.pf-n{color:#fff}
.pf-l{color:rgba(255,255,255,.8)}
.pf .lnk{color:var(--ac)}
.pf-in:hover,.pf-in:focus-visible{border-color:color-mix(in srgb,var(--ac) 60%,transparent);box-shadow:0 26px 50px -24px rgba(8,16,40,.85),0 0 0 1px color-mix(in srgb,var(--ac) 35%,transparent)}
.pf.is-soon .pf-logo,.pf.is-soon .pf-n{opacity:.6}
/* home grid: logo on one side, divider, description on the other; opens on hover */
.pfs .pf{height:224px}
.pfs .pf-in{inset:0;min-height:224px;display:grid;grid-template-columns:1fr 0fr;align-items:center;justify-content:stretch;gap:0;padding:26px 24px;transition:grid-template-columns .55s cubic-bezier(.2,.7,.2,1),gap .55s,transform .4s,box-shadow .4s,border-color .4s}
.pfs .pf-in:hover,.pfs .pf-in:focus-visible{transform:translateY(-4px);grid-template-columns:.8fr 1.2fr;gap:22px}
.pfs .pf-info{display:block;opacity:0;min-width:0;overflow:hidden;border-inline-start:1px solid rgba(255,255,255,.22);padding-inline-start:0;transition:opacity .35s .15s,padding .55s}
.pfs .pf-info>span{display:grid;gap:12px;justify-items:start;overflow:hidden}
.pfs .pf-l{font-size:14px;line-height:1.75;text-align:start;text-align-last:auto;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.pfs .pf-in:hover .pf-info,.pfs .pf-in:focus-visible .pf-info{opacity:1;padding-inline-start:22px}
@media (hover:none),(max-width:560px){.pfs .pf{height:auto}.pfs .pf-in{position:relative;min-height:200px;grid-template-columns:.8fr 1.2fr;gap:18px}.pfs .pf-info{opacity:1;padding-inline-start:18px}.pfs .pf-logo{height:auto;max-width:100%}.pfs .pf-logo img{max-width:100%;max-height:52px}.pfs .pf-l{-webkit-line-clamp:unset;display:block}}
/* tree cards stay stacked */
/* footer: regulator block */
.reg{display:grid;gap:12px;justify-items:end;align-content:start;justify-self:end;max-width:320px}
.reg img{width:168px!important;height:auto!important;filter:brightness(0) invert(1);opacity:.92;background:none;padding:0}
.reg p{margin:0;text-wrap:balance;font-size:13px;line-height:1.8;color:#AEBBD0;text-align:end!important}
@media (max-width:980px){.ft-in{grid-template-columns:1fr 1fr}.reg{justify-self:start;justify-items:start}.reg p{text-align:start!important}}

/* unified page heroes with one animation each (Aziz 2026-10-13) */
.phead{position:relative;overflow:hidden;background:var(--ink);padding:0}
.phead::before{content:"";position:absolute;inset:0;background:radial-gradient(520px 320px at 78% 55%,rgba(43,179,208,.2),transparent 70%),radial-gradient(rgba(201,212,229,.12) 1.2px,transparent 1.4px);background-size:auto,28px 28px;pointer-events:none}
[dir=rtl] .phead::before{background:radial-gradient(520px 320px at 22% 55%,rgba(43,179,208,.2),transparent 70%),radial-gradient(rgba(201,212,229,.12) 1.2px,transparent 1.4px);background-size:auto,28px 28px}
.phead .w.ph-in{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:48px;min-height:340px;padding-block:48px}
.ph-t{max-width:40em}.ph-t>*{animation:hrise .9s cubic-bezier(.2,.7,.2,1) both}.ph-t>:nth-child(2){animation-delay:.1s}.ph-t>:nth-child(3){animation-delay:.2s}
.ph-art{width:min(380px,36vw);height:auto;overflow:visible;fill:none;stroke:#2BB3D0;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:760px){.phead .w.ph-in{grid-template-columns:1fr;gap:8px;min-height:0;padding-block:40px 28px}.ph-art{width:min(300px,80vw);justify-self:center;order:2}}
/* about */
.pa-l{stroke:rgba(43,179,208,.35);stroke-dasharray:200;stroke-dashoffset:200;animation:draw 1.2s ease forwards,pglow 4.2s ease-in-out infinite;animation-delay:calc(var(--i)*.08s),calc(1.4s + var(--i)*.3s)}
.pa-n{fill:#0E1B3D;stroke:#2BB3D0;transform-box:fill-box;transform-origin:center;animation:ppop .5s ease both,pbeat 3s ease-in-out infinite;animation-delay:calc(var(--i)*.1s),calc(1s + var(--i)*.37s)}
.pa-n.c{fill:#2BB3D0}
@keyframes pglow{0%,100%{stroke:rgba(43,179,208,.35)}50%{stroke:#7FE3F5}}
@keyframes pbeat{0%,100%{transform:scale(1)}50%{transform:scale(1.35)}}
@keyframes ppop{from{opacity:0;transform:scale(0)}to{opacity:1}}
/* solutions */
.ps-l{stroke-dasharray:1;stroke-dashoffset:1;animation:psdraw 6s ease-in-out infinite;animation-delay:calc(var(--i)*.12s)}
@keyframes psdraw{0%{stroke-dashoffset:1}25%,80%{stroke-dashoffset:0}100%{stroke-dashoffset:-1}}
.ps-b,.ps-k{fill:#16285A;transform-box:fill-box;transform-origin:center;animation:pspop 6s ease-in-out infinite;animation-delay:calc(var(--i,0)*.15s)}
.ps-b.r{fill:#2BB3D0;stroke:#7FE3F5}.ps-k{stroke:rgba(43,179,208,.8)}
@keyframes pspop{0%{opacity:0;transform:scale(.6)}20%,82%{opacity:1;transform:none}100%{opacity:0;transform:scale(.9)}}
/* news */
.pn-l{stroke:rgba(43,179,208,.5)}
.pn-run{fill:#E8FBFF;stroke:none;filter:drop-shadow(0 0 6px #2BB3D0);animation:pnrun 5s linear infinite}
@keyframes pnrun{from{transform:translateX(0)}to{transform:translateX(320px)}}
.pn-m{opacity:.25;animation:pnm 5s linear infinite;animation-delay:calc(var(--i)*1s - .2s)}
.pn-m rect{fill:#16285A}.pn-m circle{fill:#0E1B3D}.pn-m .tx{stroke:rgba(255,255,255,.55);stroke-width:2.5}
@keyframes pnm{0%{opacity:.25;transform:none}6%{opacity:1;transform:translateY(-6px)}40%{opacity:1;transform:none}60%,100%{opacity:.25}}
.pn-bar{fill:rgba(43,179,208,.25);stroke:none;transform-box:fill-box;transform-origin:bottom;animation:pnbar 2.4s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.2s)}
@keyframes pnbar{from{transform:scaleY(.55)}to{transform:scaleY(1)}}
/* join */
.pj-o{stroke:rgba(43,179,208,.3);stroke-dasharray:4 8}
.pj-team circle{fill:#2BB3D0;stroke:none}
.pj-r{transform-origin:180px 130px;animation:spin 14s linear infinite}.pj-r.r2{animation-duration:22s;animation-direction:reverse}
.pj-r circle{fill:#0E1B3D}
@keyframes spin{to{transform:rotate(360deg)}}
.pj-in{fill:#7FE3F5;stroke:none;animation:pjin 4s cubic-bezier(.5,0,.3,1) infinite}
@keyframes pjin{0%{transform:translate(0,0);opacity:0}15%{opacity:1}70%{transform:translate(-150px,90px);opacity:1}85%,100%{transform:translate(-150px,90px) scale(0);opacity:0}}
/* contact */
.pc-route{stroke:rgba(43,179,208,.6);stroke-dasharray:.02 .03;animation:pcroute 3s linear infinite}
@keyframes pcroute{to{stroke-dashoffset:-.5}}
.pc-ring{transform-box:fill-box;transform-origin:center;animation:pcring 2.4s ease-out infinite;animation-delay:calc(var(--i)*.8s);opacity:0}
@keyframes pcring{0%{transform:scale(.4);opacity:.9}100%{transform:scale(3.2);opacity:0}}
.pc-pin{animation:pcpin 2.4s ease-in-out infinite}.pc-pin path{fill:#16285A;stroke:#2BB3D0}.pc-pin circle{fill:#2BB3D0;stroke:none}
@keyframes pcpin{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.pc-ic{stroke:rgba(43,179,208,.7);animation:pcic 3.6s ease-in-out infinite}.pc-ic.i2{animation-delay:-1.8s}
@keyframes pcic{0%,100%{transform:translateY(0);opacity:.6}50%{transform:translateY(-6px);opacity:1}}
/* privacy */
.pv-s{fill:rgba(22,40,90,.6);stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.6s ease forwards}
.pv-lock{stroke:#7FE3F5;animation:ppop .6s 1.2s ease both}.pv-lock circle{fill:#7FE3F5;stroke:none}
.pv-scan{fill:rgba(127,227,245,.35);stroke:none;animation:pvscan 3s ease-in-out 1.6s infinite}
@keyframes pvscan{0%{transform:translateY(0);opacity:0}10%{opacity:1}90%{opacity:1}100%{transform:translateY(210px);opacity:0}}
.pv-d{fill:#2BB3D0;stroke:none;animation:pvd 3s ease-in-out infinite;animation-delay:calc(var(--i)*.5s)}
@keyframes pvd{0%,100%{opacity:.15}50%{opacity:1}}
/* intellectual property */
.pi-ring{stroke:rgba(43,179,208,.35);stroke-dasharray:6 10;transform-origin:180px 130px;animation:spin 30s linear infinite}.pi-ring.r2{stroke-dasharray:2 8;animation-direction:reverse;animation-duration:18s}
.pi-doc path{fill:#16285A}.pi-t{stroke:rgba(255,255,255,.55);stroke-width:3;stroke-dasharray:80;stroke-dashoffset:80;animation:draw .8s ease forwards;animation-delay:calc(.4s + var(--i)*.15s)}
.pi-c{stroke:#7FE3F5;stroke-width:2.5}
.pi-sat{fill:#7FE3F5;stroke:none;transform-origin:180px 130px;animation:spin 8s linear infinite}
@media (prefers-reduced-motion:reduce){.ph-art *{animation:none!important;stroke-dashoffset:0!important;opacity:1!important}.pj-in,.pn-run,.pv-scan{display:none}.ph-t>*{animation:none}}

/* about: our story (Aziz 2026-10-13) */
.story{list-style:none;position:relative;margin-top:36px;display:grid;gap:0;max-width:820px}
.story::before{content:"";position:absolute;inset-inline-start:11px;top:8px;bottom:8px;width:2px;background:linear-gradient(180deg,#2BB3D0,rgba(43,179,208,.15))}
.story li{position:relative;padding-inline-start:52px;padding-bottom:36px;opacity:0;transform:translateY(14px);animation:tin .7s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(.2s + var(--i)*.18s)}
.story li:last-child{padding-bottom:0}
.st-dot{position:absolute;inset-inline-start:2px;top:6px;width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid #2BB3D0;box-shadow:0 0 0 6px rgba(43,179,208,.12)}
.st-dot::after{content:"";position:absolute;inset:4px;border-radius:50%;background:#2BB3D0;animation:pbeat 2.6s ease-in-out infinite;animation-delay:calc(var(--i)*.4s)}
.st-y{display:inline-block;font-size:13px;font-weight:600;color:#fff;background:var(--ink);border-radius:999px;padding:2px 12px;margin-bottom:8px}
.story h3{font-size:21px}
.story p{margin-top:8px;font-size:17px;line-height:1.9;color:var(--tx);text-align:justify;text-justify:inter-word}[lang=en] .story p{text-align:start}
@media (prefers-reduced-motion:reduce){.story li{animation:none;opacity:1;transform:none}.st-dot::after{animation:none}}

/* about: CEO and board (Aziz 2026-10-13) */
.ld h2{margin-bottom:28px}
.ph{position:relative;overflow:hidden;border-radius:18px;aspect-ratio:4/5;background:#0E1B3D}
.ph .sil,.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ceo{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:48px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 24px 50px -36px rgba(14,27,61,.45)}
.ceo h3{font-size:clamp(24px,2.6vw,32px);font-weight:600}
.role{color:var(--cy2,#1C93AE);font-weight:600;margin-top:4px}
.ceo .bio{margin-top:18px;font-size:17px;line-height:1.9;max-width:36em}
.chair{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:44px;align-items:center;margin-bottom:26px;padding:26px;border-radius:24px;color:#fff;
 background:radial-gradient(120% 140% at 85% 0%,#2E5196 0%,#17295C 46%,#0C1736 100%);box-shadow:0 30px 60px -36px rgba(14,27,61,.7);position:relative;overflow:hidden;animation:tin .7s cubic-bezier(.2,.7,.2,1) both}
.chair::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:26px 26px;-webkit-mask-image:radial-gradient(80% 90% at 85% 0%,#000,transparent 75%);mask-image:radial-gradient(80% 90% at 85% 0%,#000,transparent 75%);pointer-events:none}
.chair .ph{box-shadow:0 20px 40px -20px rgba(0,0,0,.6)}
.chair-tag{display:inline-block;font-size:13.5px;font-weight:600;color:#0E1B3D;background:#7FE3F5;border-radius:999px;padding:3px 14px}
.chair h3{color:#fff;font-size:clamp(24px,2.8vw,34px);margin-top:14px}
.chair .bio{color:#C9D4E5;margin-top:14px;font-size:16.5px;line-height:1.9;max-width:34em}
.bd{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
@media (max-width:1000px){.bd{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.chair{grid-template-columns:1fr;gap:20px;padding:18px}.chair .ph{max-width:300px}}
.bm{position:relative;border-radius:18px;overflow:hidden;outline:none;box-shadow:0 20px 44px -30px rgba(14,27,61,.6);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.bm .ph{border-radius:0}
.bm .ph .sil,.bm .ph img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.bm-cap{position:absolute;inset:auto 0 0 0;padding:56px 18px 18px;color:#fff;background:linear-gradient(180deg,transparent,rgba(10,20,46,.92) 46%)}
.bm-cap h3{color:#fff;font-size:18px}.bm-cap .role{color:#7FE3F5;font-size:14px}
.bm-cap .bio{display:grid;grid-template-rows:0fr;opacity:0;font-size:14px;line-height:1.75;color:#C9D4E5;transition:grid-template-rows .45s,opacity .35s,margin .45s}
.bm:hover,.bm:focus-visible{transform:translateY(-6px);box-shadow:0 30px 60px -30px rgba(14,27,61,.75)}
.bm:hover .ph .sil,.bm:hover .ph img,.bm:focus-visible .ph img{transform:scale(1.06)}
.bm:hover .bio,.bm:focus-visible .bio{grid-template-rows:1fr;opacity:1;margin-top:8px}
.bm:focus-visible{outline:2px solid var(--cy);outline-offset:3px}
.bm{opacity:0;transform:translateY(16px);animation:tin .7s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(.15s + var(--i)*.1s)}
@media (hover:none){.bm-cap .bio{grid-template-rows:1fr;opacity:1;margin-top:8px}}
@media (max-width:760px){.ceo{grid-template-columns:1fr;gap:22px;padding:20px}.ceo .ph{max-width:320px}}
@media (max-width:520px){.bd{gap:14px}.bm-cap{padding:40px 12px 12px}.bm-cap h3{font-size:16px}}
@media (prefers-reduced-motion:reduce){.bm{animation:none;opacity:1;transform:none}.bm,.bm .ph img,.bm .ph .sil{transition:none}}

/* responsive pass (Aziz 2026-10-13) */
@media (max-width:980px){.lic{grid-template-columns:1fr;gap:24px}}
@media (max-width:640px){.lic .lic-row{grid-template-columns:1fr}.lic .lic-i+.lic-i{border-inline-start:0;border-top:1px solid var(--line)}.ft-in{grid-template-columns:1fr}.reg{justify-self:start;justify-items:start}}
@media (max-width:860px){.t-kids.pfs .pf{height:auto}.t-kids.pfs .pf-in{position:relative;min-height:0;grid-template-columns:.8fr 1.2fr;gap:20px}.t-kids.pfs .pf-info{opacity:1;padding-inline-start:20px}.t-kids.pfs .pf-l{-webkit-line-clamp:unset;display:block}}
@media (max-width:440px){.t-kids.pfs .pf-in{grid-template-columns:1fr}.t-kids.pfs .pf-info{padding-inline-start:0}.pfs .pf-in{grid-template-columns:1fr;gap:14px;padding:24px 20px}.pfs .pf-info{border-inline-start:0;border-top:1px solid rgba(255,255,255,.2);padding-inline-start:0!important;padding-top:14px}.pfs .pf-info>span{justify-items:center}.pfs .pf-l{text-align:center}}
/* home hero: Aziz's video, no 3D map (2026-10-13) */
.hero .hero-in{grid-template-columns:minmax(0,40em)}
.hero::before{background:linear-gradient(90deg,rgba(14,27,61,.88) 0%,rgba(14,27,61,.62) 45%,rgba(14,27,61,.15) 80%,rgba(14,27,61,.05) 100%),linear-gradient(180deg,rgba(14,27,61,.55) 0%,transparent 22%,transparent 72%,rgba(14,27,61,.85) 100%)}
[dir=rtl] .hero::before{background:linear-gradient(270deg,rgba(14,27,61,.88) 0%,rgba(14,27,61,.62) 45%,rgba(14,27,61,.15) 80%,rgba(14,27,61,.05) 100%),linear-gradient(180deg,rgba(14,27,61,.55) 0%,transparent 22%,transparent 72%,rgba(14,27,61,.85) 100%)}
.hero-bg video{opacity:1}
@media (max-width:860px){.hero::before,[dir=rtl] .hero::before{background:linear-gradient(180deg,rgba(14,27,61,.75),rgba(14,27,61,.6) 60%,rgba(14,27,61,.9))}.hero .hero-in{min-height:78vh;align-content:center}}
/* solutions tree */
.tree{position:relative;padding:8px 0 24px}
.tr-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:visible}
.tr-svg .tl{fill:none;stroke:rgba(43,179,208,.55);stroke-width:2;stroke-linecap:round}
.tr-svg .tf{fill:none;stroke:#1C93AE;stroke-width:2;stroke-linecap:round;stroke-dasharray:3 26;animation:tflow 1.6s linear infinite;opacity:0;transition:opacity .6s 1.6s}
.tree.on .tr-svg .tf{opacity:.85}
.tr-svg .td{fill:#2BB3D0;filter:drop-shadow(0 0 6px rgba(43,179,208,.9))}
@keyframes tflow{to{stroke-dashoffset:-29}}
.t-root{display:flex;justify-content:center;margin-bottom:64px;position:relative;z-index:2}
.t-node{display:inline-grid;place-items:center;background:linear-gradient(160deg,#1E3570,#0E1B3D);box-shadow:0 14px 30px -16px rgba(14,27,61,.6);border:1.5px solid rgba(43,179,208,.75);border-radius:16px;padding:12px 24px;position:relative;z-index:2}
.t-core{padding:16px 30px;box-shadow:0 0 0 6px rgba(43,179,208,.12),0 18px 40px -16px rgba(14,27,61,.55)}
.t-core::after{content:"";position:absolute;inset:-2px;border-radius:18px;border:1.5px solid rgba(43,179,208,.6);animation:tring 2.8s ease-out infinite;pointer-events:none}
@keyframes tring{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.5,1.9);opacity:0}}
.t-core img{height:54px;width:auto}.t-hub img{height:38px;width:auto}
.t-brs{display:grid;grid-template-columns:2fr 1fr;gap:20px;position:relative;z-index:2}
.t-b{display:flex;flex-direction:column;align-items:center}
.t-hub{margin-bottom:56px}
.t-kids{list-style:none;display:grid;gap:16px;width:100%;box-sizing:border-box}
.t-kids.pfs{gap:20px}.t-h .t-kids{grid-template-columns:repeat(2,minmax(0,1fr))}.t-t .t-kids{grid-template-columns:1fr}
.tree.js .t-node,.tree.js .t-kids>li{opacity:0;transform:translateY(12px) scale(.96)}
.tree.on .t-node,.tree.on .t-kids>li{animation:tin .6s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:var(--d,0s)}
@keyframes tin{to{opacity:1;transform:none}}
.tree.js .tl{stroke-dasharray:var(--len);stroke-dashoffset:var(--len)}
.tree.on .tl{animation:draw .9s cubic-bezier(.6,0,.2,1) forwards;animation-delay:var(--d,0s)}
@media (max-width:860px){.tree{padding:8px 0 24px}.t-brs{grid-template-columns:1fr;gap:40px}.t-kids,.t-t .t-kids,.t-h .t-kids{grid-template-columns:1fr;padding-inline-start:34px}.t-hub{margin-bottom:28px}.t-root{margin-bottom:40px}.t-kids .pf{height:auto}.t-kids .pf-in{position:relative}.t-kids .pf-info{grid-template-rows:1fr;opacity:1}}
@media (prefers-reduced-motion:reduce){.tree.js .t-node,.tree.js .t-kids>li{opacity:1;transform:none;animation:none}.tree.js .tl{stroke-dashoffset:0;animation:none}.tr-svg .tf,.t-core::after{animation:none}.tr-svg .td{display:none}}
@media (hover:none){.pf{height:auto}.pf-in{position:relative}.pf-info{grid-template-rows:1fr;opacity:1}}
@media (max-width:980px){.pfs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.pfs{grid-template-columns:1fr}.pf{height:auto}.pf-in{position:relative}.pf-info{grid-template-rows:1fr;opacity:1}}

