:root{--color-error:#e90000;--color-off-white:#f0f1fa;--color-white:#fff;--color-dark-white:#e4e6ef;--color-off-white-semi:rgba(240,241,250,0.7);--color-black:#000000;--paper:#f2f4f8;--paper-rgb:242,244,248;--panel:#0c0c0b;--panel-ink:#dcdbd4;--accent:#3858e9;--color-green:#c1ff00;--color-blue:#1a2ffb;--color-red:#ff4c41;--color-grey-blue:#2b2e3a;--color-dark-blue:#071bdf;--color-purple:#8832f7;--grid-space:calc((100% - 11 * var(--grid-gap)) / 12);--grid-gap:2vw;--global-border-radius:0px;--base-padding-x:max(5vw,40px);--cu:clamp(6px,calc(5.75px + 0.2214vw),10px);--base-padding-y:clamp(30px,4vw,50px);--header-color:#0016ec;--header-text-color:#000000;--project-details-btn-text-hover:#fff;--f-sans:Geist,NorvyArabic,"Helvetica Neue",Helvetica,Arial,sans-serif;--f-arabic:NorvyArabic,Geist,sans-serif;--f-mono:GeistMono,IBMPlexMono,ui-monospace,monospace;--t-display:clamp(40px,11vw,230px);--t-hero:clamp(38px,6vw,120px);--t-h2:clamp(32px,4vw,80px);--t-h3:clamp(22px,2.1vw,40px);--t-h4:clamp(15px,1.2vw,20px);--t-lead:clamp(17px,1.3vw,22px);--t-body:clamp(14px,1.02vw,17px);--t-label:clamp(11px,0.86vw,14px);--t-btn:clamp(12.5px,1vw,15.5px);--track-display:-0.025em;--track-head:-0.02em;--track-label:0.04em;--brand-weight:500;--brand-track:0.04em;--type-hero:var(--t-hero);--type-display:var(--t-display);--type-lead:var(--t-lead);--type-eyebrow:var(--t-label);--type-display-weight:400;--type-display-track:var(--track-head);--ink:#111110;--ink-soft:#55554e;--ink-faint:#9a9a92;--rule:rgba(17,17,16,0.12);--header-size:clamp(1rem,1vw,2rem);--cross-size:clamp(0.875rem,1vw,2rem);--vh:1vh;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-6:48px;--space-8:64px;--space-10:80px;--space-12:96px;--section-pad-y:var(--space-12)}@media (min-width:813px){:root{--base-padding-x:max(6vw,60px)}}@media (max-width:812px){:root{--section-pad-y:var(--space-8);--grid-gap:4vw;--global-border-radius:0px;--base-padding-x:25px;--base-padding-y:25px}}@media (max-width:400px){:root{--base-padding-x:15px;--base-padding-y:15px}}@media (max-width:380px){:root{--header-size:clamp(0.75rem,1vw,2rem)}}@font-face{font-family:Geist;src:url(/assets/fonts/geist-latin-wght-normal.woff2) format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:GeistMono;src:url(/assets/fonts/geist-mono-latin-wght-normal.woff2) format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}*,:after,:before{box-sizing:border-box}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body,button,h1,h2,h3,h4,html,input{font-family:Geist,NorvyArabic,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:400;font-style:normal;font-feature-settings:"ss01","cv01","calt","kern","kern";font-kerning:normal}body,html{width:100%;height:100%;margin:0;background-color:var(--paper);color:var(--color-off-white);overflow:hidden;overscroll-behavior:none;touch-action:none}@media (min-aspect-ratio:7/3){body,html{font-size:.6em}}html.is-white-bg body{background-color:var(--paper)}html.is-dark-top body{background-color:var(--panel)}a{text-decoration:none}a,button{color:inherit}button{border:0;background:none;padding:0;font:inherit;cursor:pointer}.eyebrow{display:block;margin:0 0 var(--space-3);font-family:var(--f-sans);font-size:var(--t-label);font-weight:400;line-height:1.4;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink-faint)}.eyebrow:before{content:"";display:inline-block;width:.42em;height:.42em;margin-right:1em;vertical-align:.06em;background:var(--accent)}.eyebrow--plain:before{display:none}.eyebrow-i{display:inline-block}.dot-cursor{position:fixed;left:0;top:0;z-index:31;border-radius:50%;pointer-events:none;background:#fff;mix-blend-mode:difference;will-change:transform;transform:translate3d(-999px,-999px,0) scale(0)}@media (hover:none){.dot-cursor{display:none}}.card-cursor{position:fixed;left:0;top:0;z-index:30;border-radius:50%;pointer-events:none;display:grid;place-items:center;background:#fff;color:#000;opacity:.88;mix-blend-mode:difference;will-change:transform,clip-path;visibility:hidden;transform:translate3d(-999px,-999px,0) scale(0)}#loader{position:fixed;inset:0;z-index:1000;background:var(--panel);pointer-events:auto}html.no-loader #loader{display:none}#loader canvas{position:absolute;inset:0;width:100%;height:100%;display:block}#loader.is-drawn{background:transparent}#loader.is-open{pointer-events:none}#loader.is-fade{opacity:0;transition:opacity .6s}#page-shift{position:fixed;inset:0;z-index:999;background:var(--paper);pointer-events:none;opacity:0;transition:opacity .3s cubic-bezier(.2,0,0,1)}#page-shift.is-on{opacity:1;pointer-events:auto;transition:opacity .22s cubic-bezier(.4,0,.6,1)}html.is-arriving [data-reveal],html.is-arriving [data-reveal]>*{transition:none!important}@media (prefers-reduced-motion:reduce){#page-shift,#page-shift.is-on{transition-duration:.01s}}[data-reveal=mask]{overflow:hidden}:root{--hd-dur:1s;--hd-ease:cubic-bezier(0.35,0,0,1);--hd-step:0.08s;--hd-track:0em;--hd-weight:400}[data-reveal=mask]>*{display:block;transform:translate3d(0,110%,0);transition:transform var(--hd-dur) var(--hd-ease) var(--rd,0s)}[data-reveal=mask].is-revealed>*{transform:none}[data-reveal=rise]{opacity:0;transform:translate3d(0,18px,0);transition:opacity .9s cubic-bezier(.2,0,0,1) var(--rd,0s),transform 1s cubic-bezier(.2,0,0,1) var(--rd,0s)}[data-reveal=rise].is-revealed{opacity:1;transform:none}[data-reveal=stagger]>*{opacity:0;transform:translate3d(0,20px,0);transition:opacity .9s cubic-bezier(.2,0,0,1),transform 1s cubic-bezier(.2,0,0,1);transition-delay:calc(var(--rd, 0s) + var(--i, 0) * .08s)}[data-reveal=stagger].is-revealed>*{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){[data-reveal],[data-reveal]>*{opacity:1!important;transform:none!important;transition:none!important}}.btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;gap:1em;height:4.3em;padding:0 2.2em;border-radius:99em;text-decoration:none;cursor:pointer;pointer-events:auto;border:0;font-family:var(--f-sans);font-size:var(--t-btn);font-weight:500;letter-spacing:var(--track-label);text-transform:uppercase;line-height:1;transition:color .45s cubic-bezier(.4,0,0,1),box-shadow .5s,scale .4s cubic-bezier(.4,0,0,1)}.btn--ink{background:var(--ink)}.btn--light{background:#fff;color:var(--ink)}.btn--ghost{background:transparent;color:inherit;box-shadow:inset 0 0 0 1px color-mix(in srgb,currentColor 28%,transparent)}.btn:before{content:"";position:absolute;z-index:-1;inset:0;border-radius:50% 50% 0 0;background:var(--accent);transform:translate3d(0,101%,0);transition:transform .5s cubic-bezier(.4,0,0,1),border-radius .5s cubic-bezier(.4,0,0,1)}.btn-label{display:block;height:1.2em;overflow:hidden}.btn-label>span{display:block;line-height:1.2em;transition:transform .8s cubic-bezier(.16,1,.3,1)}.btn-label>span:after{content:attr(data-t);display:block}.btn-icon{display:inline-block;transition:transform .6s cubic-bezier(.16,1,.3,1)}.btn[data-reveal=rise]{transition:opacity .9s cubic-bezier(.2,0,0,1) var(--rd,0s),transform 1s cubic-bezier(.2,0,0,1) var(--rd,0s),color .45s cubic-bezier(.4,0,0,1),box-shadow .5s,scale .4s cubic-bezier(.4,0,0,1)}@media (hover:hover){.btn:hover,.btn[data-reveal=rise].is-revealed:hover{color:#fff;scale:1.02 1;transition:opacity .9s,transform 1s,color .45s cubic-bezier(.4,0,0,1),box-shadow .5s,scale .6s cubic-bezier(.34,5.56,.64,1)}.btn--ghost:hover{box-shadow:inset 0 0 0 1px transparent}.btn:hover:before{transform:none;border-radius:0;transition-duration:.5s,.9s}.btn:hover .btn-label>span{transform:translate3d(0,-50%,0)}.btn:hover .btn-icon{transform:translate3d(.3em,0,0)}}:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (prefers-reduced-motion:reduce){.btn,.btn-icon,.btn-label>span,.btn:before{transition:none}.btn:hover{scale:none}}@font-face{font-family:Archivo;src:url(/assets/fonts/archivo-latin-wdth-normal.woff2) format("woff2-variations");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap}:root{--f-display:Archivo,NorvyArabic,"Helvetica Neue",Arial,sans-serif;--display-wdth:78;--btn-dark:#2b2e3a;--btn-light:#e4e6ef}html :is(.ht-title,.vr-title,.wk-sel,.sl-title,.sl-name,.pr-title,.rv-title,.fq-title,.ps-title,.pc-title,.ps-more-title,.ab-title,.ab-big,.ab-wb-title,.ctp-title,.ct-head,#projects-main-title,.ln-name,.nf-title){font-family:var(--f-sans);font-weight:var(--hd-weight);font-stretch:normal;font-variation-settings:normal;letter-spacing:var(--hd-track);text-transform:uppercase}.wf-w{white-space:nowrap}.wf-c,.wf-w{display:inline-block}.wf-c{font-variation-settings:"wght" var(--w,400);text-align:center}html:lang(ar) :is(.ht-title,.vr-title,.wk-sel,.sl-title,.sl-name,.pr-title,.rv-title,.fq-title,.ps-title,.pc-title,.ps-more-title,.ab-title,.ab-big,.ab-wb-title,.ctp-title,.ct-head,#projects-main-title,.ln-name,.nf-title){font-family:var(--f-arabic);font-weight:600;font-stretch:normal;font-variation-settings:normal;letter-spacing:0}.btn{gap:0;height:3.9em;padding:0 1.9em;font-weight:600;letter-spacing:.01em;transition:background-color .45s cubic-bezier(.4,0,0,1),color .45s cubic-bezier(.4,0,0,1),scale .4s cubic-bezier(.4,0,0,1)}.btn-icon,.btn:before{display:none}.btn--ink{background:var(--btn-dark);color:#fff}.btn--ghost,.btn--light{background:var(--btn-light);color:var(--ink);box-shadow:none}@media (hover:hover){.btn:hover,.btn[data-reveal=rise].is-revealed:hover{scale:1}.btn--ink:hover,.btn--ink[data-reveal=rise].is-revealed:hover{background:var(--color-blue);color:#fff}.btn--ghost:hover,.btn--ghost[data-reveal=rise].is-revealed:hover,.btn--light:hover,.btn--light[data-reveal=rise].is-revealed:hover{background:#d6d9e6;color:var(--ink)}}@font-face{font-family:NorvyArabic;src:url(/assets/fonts/ibm-plex-sans-arabic-400.woff2) format("woff2");font-weight:100 449;font-style:normal;font-display:swap;unicode-range:u+06??,u+0750-077f,u+0870-088e,u+0890-0891,u+0898-08e1,u+08e3-08ff,u+200c-200e,u+2010-2011,u+204f,u+2e41,u+fb50-fdff,u+fe70-fe74,u+fe76-fefc}@font-face{font-family:NorvyArabic;src:url(/assets/fonts/ibm-plex-sans-arabic-500.woff2) format("woff2");font-weight:450 549;font-style:normal;font-display:swap;unicode-range:u+06??,u+0750-077f,u+0870-088e,u+0890-0891,u+0898-08e1,u+08e3-08ff,u+200c-200e,u+2010-2011,u+204f,u+2e41,u+fb50-fdff,u+fe70-fe74,u+fe76-fefc}@font-face{font-family:NorvyArabic;src:url(/assets/fonts/ibm-plex-sans-arabic-600.woff2) format("woff2");font-weight:550 900;font-style:normal;font-display:swap;unicode-range:u+06??,u+0750-077f,u+0870-088e,u+0890-0891,u+0898-08e1,u+08e3-08ff,u+200c-200e,u+2010-2011,u+204f,u+2e41,u+fb50-fdff,u+fe70-fe74,u+fe76-fefc}html[lang=ar] body *{letter-spacing:0!important}html[lang=ar] :is(.pr-title,.fq-title,.rv-title,.pr-name,.hf-title,.ab-title,.ab-big,.ab-wb-title,.ctp-title,.wk-sel,.sl-title,.ct-head,.site-menu-label,.pc-title,.cs-title,.nf-title,.ap-words){line-height:1.25}html[lang=ar] :is(.pr-title-line,.pr-name,.fq-title,.rv-title,.hf-line,.ab-title-line,.ctp-title-line,.site-menu-mask,[data-reveal=mask]){padding-top:.08em;padding-bottom:.3em;margin-bottom:-.2em}[dir=rtl] .ctp-line input{padding-right:0;padding-left:calc(var(--u) * 12)}[dir=rtl] .ctp-req{right:auto;left:0}[dir=rtl] .ctp-line>i{transform-origin:100% 50%}[dir=rtl] .ctp-line input[dir=ltr]{text-align:right}@media (max-width:812px){[dir=rtl] .ctp-line input{padding-left:18px}}[dir=rtl] .pc .cs-beside,[dir=rtl] .pc .cs-stage,[dir=rtl] .pc .cs-wide{left:auto;right:50%;margin-left:0;margin-right:calc(var(--cs-wide) / -2)}[dir=rtl] .pc-hero{left:auto;right:50%;margin-left:0;margin-right:calc(min(84vw, 1680px) / -2)}@media (max-width:1024px){[dir=rtl] .pc .cs-beside,[dir=rtl] .pc .cs-stage,[dir=rtl] .pc .cs-wide,[dir=rtl] .pc-hero{right:0;margin-right:0}}[dir=rtl] #projects-main-title-project-arrow path{transform:scaleX(-1);transform-box:fill-box;transform-origin:center}[dir=rtl] #projects-main-title-wrapper{column-gap:.22em}html[lang=ar] #projects-main-title{line-height:1.3em;padding-bottom:.1em}html[lang=ar] .hs-title{line-height:1.25}html[lang=ar] .hs-line{padding-top:.08em;padding-bottom:.3em;margin-bottom:-.2em}