@font-face{font-family:Cinzel;src:url(/fonts/Cinzel-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Cinzel;src:url(/fonts/Cinzel-Bold.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Marcellus;src:url(/fonts/Marcellus-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Sans Arabic;src:url(/fonts/PlexSansArabic-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Sans Arabic;src:url(/fonts/PlexSansArabic-SemiBold.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/Inter-Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/InterDisplay-SemiBold.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2)format("woff2");font-weight:400;font-display:swap}:root{--bg-hero:#29233a;--bg:#352e4a;--bg-elevated:#40385a;--bg-hover:#4b426a;--bg-terminal:#1d1930;--purple-deep:#2e1d52;--purple-mid:#7B5EA7;--purple-mid-text:#bda9d6;--purple-light:#c4b0dc;--accent:#c9b892;--accent-bright:#e3d8c2;--purple-pale:#f0ecf7;--shadow-ink:#14131a;--text:#fbf9fe;--text-secondary:#e7def4;--text-muted:#c3b6da;--border:rgba(123, 94, 167, .24);--border-strong:rgba(123, 94, 167, .52);--danger:#ff8a80;--success:#7ee2a8;--focus:#d8c5ec;--nav-scrolled-bg:color-mix(in srgb, var(--bg) 96%, transparent);--shadow-card:4px 4px 0 var(--shadow-ink);--shadow-card-hover:6px 6px 0 var(--purple-mid);--shadow-terminal:4px 4px 0 var(--shadow-ink);--ease:cubic-bezier(.2, 0, 0, 1);--dur-hover:.25s;--dur-transition:.4s;--dur-enter:.6s;--font-display:"Cinzel", "Georgia", serif;--font-heading:"Marcellus", "Georgia", serif;--font-body:"Inter", "system-ui", sans-serif;--font-mono:"JetBrains Mono", "Courier New", monospace;--sp-1:8px;--sp-2:16px;--sp-3:24px;--sp-4:32px;--sp-5:40px;--sp-6:48px;--sp-8:64px;--sp-10:80px;--sp-12:96px;--max-w:1100px;--radius:6px}html[lang=ar]{--font-heading:"IBM Plex Sans Arabic", "Noto Sans Arabic", sans-serif;--font-body:"IBM Plex Sans Arabic", "Noto Sans Arabic", sans-serif;--font-mono:"JetBrains Mono", "IBM Plex Sans Arabic", monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;background:var(--bg)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.75;min-height:100vh;overflow-x:clip}::view-transition-old(root),::view-transition-new(root){animation:none}body:before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 var(--sp-3)}main{position:relative;z-index:3}.section{padding:var(--sp-12)0;position:relative}.section-head{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:var(--sp-3);margin-bottom:var(--sp-6);border-bottom:1px solid var(--border);padding-bottom:var(--sp-3)}.section-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--purple-light);margin-bottom:var(--sp-1)}.section-heading{font-family:var(--font-heading);font-size:clamp(30px,4.6vw,46px);font-weight:400;letter-spacing:-.005em;line-height:1.15;color:var(--text)}.section-index{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;color:var(--text-muted);white-space:nowrap}@media (max-width:580px){.section-index{display:none}}h1,h2,h3,h4{line-height:1.2}p{margin-bottom:1.25rem}p:last-child{margin-bottom:0}strong{color:var(--text);font-weight:600}a{color:var(--purple-light);text-decoration:none;transition:color var(--dur-hover) var(--ease)}a:hover{color:var(--text)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:3px}.skip-link{position:absolute;top:-100%;left:var(--sp-1);z-index:999;background:var(--bg-elevated);color:var(--text);border:1px solid var(--purple-mid);font-family:var(--font-mono);font-size:.75rem;padding:var(--sp-1) var(--sp-2);border-radius:var(--radius);transition:top var(--dur-hover) var(--ease)}.skip-link:focus{top:var(--sp-1)}.lang-swap *,.lang-swap :before,.lang-swap :after{transition:none!important;animation:none!important}@media (prefers-reduced-motion:no-preference){.js .reveal{opacity:0;transform:translateY(24px)}.js .reveal.is-in{opacity:1;transform:none;transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1)}.js .section-head.reveal{border-bottom-color:transparent;position:relative}.js .section-head.reveal:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--border);transform:scaleX(0);transform-origin:0 50%;transition:transform 1.1s var(--ease) .25s}.js .section-head.reveal.is-in:after{transform:scaleX(1)}.js .projects-grid .reveal.is-in{transition-delay:calc(var(--i, 0)*.12s)}.js .team-block.reveal .team-roles li,.js .about-sectors.reveal .term-chip{opacity:0;transform:translateY(8px);transition:opacity .5s var(--ease),transform .5s var(--ease)}.js .team-block.reveal.is-in .team-roles li,.js .about-sectors.reveal.is-in .term-chip{opacity:1;transform:none;transition-delay:calc(.15s + var(--i, 0)*55ms)}}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:var(--sp-2)0;transition:background var(--dur-transition) var(--ease),border-color var(--dur-transition) var(--ease)}.nav.scrolled{background:var(--nav-scrolled-bg);border-bottom:1px solid var(--border)}.nav .container{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.nav-brand{display:flex;align-items:center;gap:10px;min-height:44px;font-family:var(--font-display);font-size:15px;letter-spacing:.12em;color:var(--text);font-weight:400}.nav-brand:hover{color:var(--purple-light)}.nav-brand svg{display:block;flex-shrink:0}.nav-links{display:flex;align-items:center;gap:var(--sp-2);list-style:none}.nav-links a{font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-secondary);position:relative;padding:4px 0}.nav-links a:hover,.nav-links a.active{color:var(--text)}.nav-links a.active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--purple-mid)}.nav-links a.nav-cta{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;margin-inline-start:var(--sp-1);border:1px solid var(--accent);color:var(--accent-bright);transition:color var(--dur-hover) var(--ease),background-color var(--dur-hover) var(--ease),border-color var(--dur-hover) var(--ease)}.nav-links a.nav-cta:hover{color:var(--shadow-ink);background:var(--accent-bright);border-color:var(--accent-bright)}.nav-links a.nav-cta.active:after{display:none}.nav-links a.nav-cta.active{border-color:var(--accent-bright)}@media (prefers-reduced-motion:no-preference){.js .nav:has(~main #hero) .nav-brand{transition:opacity var(--dur-transition) var(--ease),transform var(--dur-transition) var(--ease)}.js .nav:has(~main #hero):not(.scrolled) .nav-brand{opacity:0;transform:translateY(6px);pointer-events:none}}.lang-toggle{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:var(--text-muted);display:flex;align-items:center;gap:6px}.lang-toggle a{color:var(--text-muted)}.lang-toggle a:hover{color:var(--purple-light)}.lang-toggle .current{color:var(--text)}.lang-sep{color:var(--border-strong)}.hamburger{display:none;background:0 0;border:0;color:var(--text);cursor:pointer;padding:6px;font-size:20px;line-height:1}.mobile-overlay{display:none;position:fixed;inset:0;z-index:200;background:var(--bg-hero);flex-direction:column;align-items:center;justify-content:flex-start;gap:var(--sp-4);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:calc(var(--sp-8) + env(safe-area-inset-top)) var(--sp-3) calc(var(--sp-6) + env(safe-area-inset-bottom))}.mobile-overlay.open{display:flex}.mobile-overlay a{font-family:var(--font-heading);font-size:22px;letter-spacing:.08em;text-transform:uppercase;color:var(--text);display:flex;align-items:center;min-height:44px;padding:6px var(--sp-2)}.mobile-overlay a:hover{color:var(--purple-light)}.mobile-close{position:fixed;z-index:1;top:calc(env(safe-area-inset-top) + var(--sp-2));right:var(--sp-3);background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;color:var(--text);font-size:24px;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.mobile-close:hover{color:var(--purple-light)}.mobile-lang{font-family:var(--font-mono);font-size:13px;color:var(--text-muted);display:flex;align-items:center;gap:var(--sp-2);min-height:44px}.mobile-lang a{padding:8px}@media (max-width:900px){.nav-links,.lang-toggle{display:none}.hamburger{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}}.hero{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-hero) 78%,transparent) 0%,color-mix(in srgb,var(--bg-hero) 34%,transparent) 38%,transparent 72%);padding:var(--sp-12) var(--sp-3) var(--sp-8);position:relative;overflow:hidden}@media (max-height:640px){.hero{min-height:auto;padding-top:var(--sp-8);padding-bottom:var(--sp-6)}.hero-scroll{display:none}}.hero:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,rgba(157,139,196,.2) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:radial-gradient(ellipse 80% 80%at 50% 50%,#000 20%,transparent 100%);mask-image:radial-gradient(ellipse 80% 80%at 50% 50%,#000 20%,transparent 100%)}.hero-mark{position:relative;width:clamp(88px,14vw,124px);aspect-ratio:1;margin-bottom:var(--sp-3)}.hero-logo{width:100%;height:auto;object-fit:contain;display:block}.hero-mark-line{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--purple-light);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:0;pointer-events:none}@media (prefers-reduced-motion:no-preference){.intro .hero-mark-line{opacity:1}.intro .hero-mark-line :is(path,line,circle){stroke-dasharray:1;stroke-dashoffset:1;animation:hm-draw .6s ease-in-out forwards}.intro .hm-arm .hm-outline{animation-delay:calc(.12s + var(--i)*.06s)}.intro .hm-arm .hm-inner{animation-delay:calc(.45s + var(--i)*.05s)}.intro .hm-arm .hm-vein{animation-delay:calc(.7s + var(--i)*.04s)}.intro .hm-arm .hm-node{animation-delay:calc(.85s + var(--i)*.04s)}.intro .hm-core{animation-delay:1s}.intro .hm-spokes line{animation-delay:1.1s}.intro .hero-mark .hero-logo{opacity:0;animation:hm-wash .5s ease-out 2s forwards}.intro .hero-mark-line{animation:hm-line-settle .5s ease-out 2.05s forwards}.intro .hero-mark{animation:hm-stage 2s cubic-bezier(.16,1,.3,1) both}.intro .hero-wordmark{animation:hero-rise .7s ease-out 2s both}.intro .hero-tagline{animation:hero-rise .6s ease-out 2.2s both}.intro .hero-rule{animation:hero-rise .6s ease-out 2.25s both}.intro .hero-line{animation:hero-rise .6s ease-out 2.3s both}.intro .hero-positioning{animation:hero-rise .6s ease-out 2.35s both}.intro .hero-cta{animation:hero-rise .6s ease-out 2.4s both}.intro .hero-scroll{animation:hero-rise .6s ease-out 2.5s both}.intro .hero-wordmark .letter{animation-delay:calc(2.05s + var(--d, 0s))}}@keyframes hm-draw{to{stroke-dashoffset:0}}@keyframes hm-wash{0%{opacity:0}to{opacity:1}}@keyframes hm-line-settle{0%{opacity:1}to{opacity:.18}}@keyframes hm-stage{0%{transform:translateY(16vh) scale(2.6)}85%{transform:translateY(16vh) scale(2.6)}to{transform:translateY(0) scale(1)}}@keyframes hero-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.hero-wordmark{direction:ltr;font-family:var(--font-display);font-size:clamp(40px,9vw,88px);font-weight:400;letter-spacing:.16em;text-indent:.16em;color:var(--text);text-transform:uppercase;line-height:1;margin-bottom:var(--sp-2)}@media (max-width:480px){.hero-wordmark{letter-spacing:.1em;text-indent:.1em}}@media (max-width:360px){.hero-wordmark{font-size:34px;letter-spacing:.06em;text-indent:.06em}}.hero-wordmark .letter{display:inline-block}@media (prefers-reduced-motion:no-preference){.hero-wordmark .letter{opacity:0;animation:letter-cut .5s linear both;animation-delay:calc(.3s + var(--d, 0s))}}@keyframes letter-cut{0%{opacity:0}to{opacity:1}}.hero-tagline{font-family:var(--font-heading);font-size:clamp(11px,1.7vw,13px);letter-spacing:.3em;text-transform:uppercase;color:var(--purple-light);margin-bottom:var(--sp-3)}.hero-rule{width:60px;height:1px;background:var(--purple-mid);opacity:.6;margin:0 auto var(--sp-3);border:0}.hero-line{font-family:var(--font-body);font-size:clamp(16px,2.5vw,22px);color:var(--text-secondary);line-height:1.6;max-width:560px;margin-bottom:var(--sp-3);text-wrap:balance}.hero-line span{display:block}.hero-positioning{font-family:var(--font-body);font-size:clamp(13px,1.9vw,15px);color:var(--text-muted);max-width:560px;margin-bottom:var(--sp-4);text-wrap:balance}.hero-cta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--sp-2) var(--sp-3);margin-bottom:var(--sp-8)}.hero-cta-primary,.hero-cta-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 var(--sp-4);font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;transition:color var(--dur-hover) var(--ease),border-color var(--dur-hover) var(--ease),background-color var(--dur-hover) var(--ease)}.hero-cta-primary{color:var(--accent-bright);border:1px solid var(--accent)}.hero-cta-primary:hover{color:var(--shadow-ink);background:var(--accent-bright);border-color:var(--accent-bright)}.hero-cta-secondary{color:var(--text-muted);border:1px solid transparent}.hero-cta-secondary:hover{color:var(--purple-light)}.cta-arrow{display:inline-flex;align-items:center;overflow:hidden;width:0;opacity:0;transition:width var(--dur-hover) var(--ease),opacity var(--dur-hover) var(--ease),margin var(--dur-hover) var(--ease)}.hero-cta-primary:hover .cta-arrow,.hero-cta-primary:focus-visible .cta-arrow,.nav-links a.nav-cta:hover .cta-arrow,.nav-links a.nav-cta:focus-visible .cta-arrow{width:16px;opacity:1;margin-inline-start:8px}@media (prefers-reduced-motion:reduce){.cta-arrow{transition:none}}.hero-scroll{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);text-transform:uppercase}.hero-scroll:hover{color:var(--purple-light)}.hero-scroll:after{content:"";display:block;width:1px;height:40px;background:linear-gradient(180deg,var(--purple-mid),transparent)}.svc-group+.svc-group{margin-top:var(--sp-5)}.svc-group-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--purple-mid-text);margin-bottom:var(--sp-2)}.svc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-2)}@media (max-width:1000px){.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.svc-grid{grid-template-columns:1fr}}.svc-card{display:flex;background:var(--bg-elevated);border:1px solid var(--border);border-inline-start:2px solid var(--purple-mid);transition:transform var(--dur-hover) var(--ease),box-shadow var(--dur-hover) var(--ease),border-color var(--dur-hover) var(--ease)}.svc-card summary{list-style:none;cursor:pointer;flex:1;display:flex;flex-direction:column;height:15.5rem;padding:var(--sp-3)}.svc-card summary::-webkit-details-marker{display:none}@media (hover:hover){.svc-card:hover{border-color:var(--purple-mid);transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--shadow-ink)}}.svc-card .service-title{min-height:2.6em}.svc-card .service-teaser{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;margin-bottom:var(--sp-2)}.svc-more{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--purple-light);display:inline-flex;align-items:center;gap:7px;margin-top:auto;transition:color var(--dur-hover) var(--ease)}.svc-more:before{content:"+";font-size:14px;line-height:1;color:var(--purple-mid-text)}.svc-card summary:hover .svc-more{color:var(--text)}.svc-body{padding:0 var(--sp-3) var(--sp-3)}.svc-body>p{font-size:14.5px;color:var(--text-secondary);line-height:1.7;max-width:75ch;margin:0 0 var(--sp-2)}.svc-card .svc-body{display:none}.svc-card[open]{grid-column:1/-1;flex-direction:column}.svc-card[open] summary{height:auto}.svc-card[open] .service-teaser{-webkit-line-clamp:unset;line-clamp:unset}.svc-card[open] .svc-body{display:block}.svc-card[open] .svc-more:before{content:"−"}.svc-dialog{width:min(720px,calc(100% - 32px));max-height:min(86vh,780px);margin:auto;padding:0;overflow:auto;overscroll-behavior:contain;color:var(--text);background:var(--bg-elevated);border:1px solid var(--border-strong);border-inline-start:2px solid var(--purple-mid);box-shadow:6px 6px 0 var(--shadow-ink)}.svc-dialog::backdrop{background:#161222bd}html:has(.svc-dialog[open]){overflow:hidden}.svc-dialog-content{padding:var(--sp-4) var(--sp-4)0}.svc-dialog-content .svc-body{padding:0}.svc-dialog-title{font-size:26px;padding-inline-end:52px;margin-bottom:var(--sp-2)}.svc-dialog-content .service-teaser{font-size:16px;color:var(--text);margin-bottom:var(--sp-3)}.svc-dialog-close{position:sticky;top:0;float:inline-end;display:grid;place-items:center;width:44px;height:44px;margin:10px 10px -54px 0;margin-inline:0 10px;color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;z-index:1;transition:color var(--dur-hover) var(--ease),border-color var(--dur-hover) var(--ease)}.svc-dialog-close:hover{color:var(--text);border-color:var(--purple-mid)}.svc-dialog-cta{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:var(--sp-1) var(--sp-4) var(--sp-4);padding:0 var(--sp-3);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--text);border:1px solid var(--purple-light);text-decoration:none}.svc-dialog-cta:hover{background:#9d8bc424}@media (max-width:560px){.svc-dialog-content{padding:var(--sp-3) var(--sp-3)0}.svc-dialog-title{font-size:22px}.svc-dialog-cta{margin:var(--sp-1) var(--sp-3) var(--sp-3)}}@media (prefers-reduced-motion:no-preference){.svc-dialog[open]{animation:svc-pop .22s var(--ease)}.svc-dialog[open]::backdrop{animation:svc-fade .22s var(--ease)}}@keyframes svc-pop{0%{opacity:0;transform:translateY(10px) scale(.98)}}@keyframes svc-fade{0%{opacity:0}}.service-num{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--purple-mid-text);margin-bottom:4px}.service-title{font-family:var(--font-heading);font-size:21px;font-weight:400;color:var(--text);margin-bottom:var(--sp-1)}.service-teaser{font-size:14.5px;color:var(--text-secondary);line-height:1.65;margin-bottom:var(--sp-3)}.service-caps{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px var(--sp-2);margin-bottom:var(--sp-3)}@media (max-width:520px){.service-caps{grid-template-columns:1fr}}.service-caps li{font-family:var(--font-mono);font-size:12px;color:var(--text-secondary);letter-spacing:.02em;line-height:1.5;padding-inline-start:15px;position:relative}.service-caps li:before{content:"▸";position:absolute;inset-inline-start:0;top:0;color:var(--purple-mid-text);font-size:9px;line-height:1.9}.service-terms{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:0;padding-top:var(--sp-2);border-top:1px solid var(--border)}.term-chip{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em;color:var(--text-secondary);background:#9d8bc421;border:1px solid var(--border);padding:3px 9px;border-radius:3px}.approach-statement{font-size:18px;color:var(--text);font-weight:500;line-height:1.55;max-width:70ch;margin-bottom:var(--sp-4)}.approach-confidential{font-family:var(--font-mono);font-size:13px;color:var(--purple-light);letter-spacing:.04em;margin-top:var(--sp-4)}.engagement-list{list-style:none;counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-3)}@media (max-width:860px){.engagement-list{grid-template-columns:1fr 1fr}}@media (max-width:560px){.engagement-list{grid-template-columns:1fr}}.engagement-step{counter-increment:step;border-top:1px solid var(--border-strong);padding-top:var(--sp-2);position:relative}.engagement-step:before{content:counter(step,decimal-leading-zero);display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--purple-mid-text);margin-bottom:var(--sp-1)}.engagement-step h3{font-family:var(--font-heading);font-size:17px;font-weight:400;color:var(--text);margin-bottom:6px}.engagement-step p{font-size:13.5px;color:var(--text-secondary);line-height:1.6;margin:0}.metrics-band{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4);margin-bottom:var(--sp-8)}@media (max-width:700px){.metrics-band{grid-template-columns:1fr 1fr}}@media (max-width:400px){.metrics-band{grid-template-columns:1fr}}.metric{border-top:1px solid var(--border);padding-top:var(--sp-2);position:relative}.metric:before{content:"";position:absolute;top:-1px;inset-inline-start:0;width:34px;height:2px;background:var(--accent)}.metric-value{font-family:var(--font-heading);font-size:clamp(30px,4vw,40px);font-weight:400;color:var(--text);line-height:1.1}.metric-label{font-size:13.5px;color:var(--text-secondary);line-height:1.5;margin:6px 0 0;max-width:24ch}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-3);margin-bottom:var(--sp-8)}@media (max-width:640px){.projects-grid{grid-template-columns:1fr}}.project-card{position:relative;background:var(--bg-elevated);border:1px solid var(--border);border-radius:0;padding:var(--sp-3);border-inline-start:2px solid var(--purple-mid);transition:border-color var(--dur-hover) var(--ease),background var(--dur-hover) var(--ease);display:flex;flex-direction:column}.project-card:hover{border-inline-start-color:var(--purple-light);background:var(--bg-hover)}.project-card:before,.project-card:after{content:"";position:absolute;width:9px;height:9px;opacity:.5;transition:opacity var(--dur-hover) var(--ease);pointer-events:none}.project-card:before{top:5px;left:5px;border-top:1px solid var(--purple-mid);border-inline-start:1px solid var(--purple-mid)}.project-card:after{bottom:5px;right:5px;border-bottom:1px solid var(--purple-mid);border-right:1px solid var(--purple-mid)}.project-card:hover:before,.project-card:hover:after{opacity:1}.project-name{font-family:var(--font-heading);font-size:19px;font-weight:400;color:var(--text);margin-bottom:6px}.project-desc{font-size:13px;color:var(--text-secondary);line-height:1.6;margin-bottom:var(--sp-2);flex:1}.project-tags{display:flex;flex-wrap:wrap;gap:6px}.project-tag{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--text-secondary);background:#9d8bc421;border:1px solid var(--border);padding:2px 8px;border-radius:3px}.clients-statement{font-size:18px;color:var(--text);font-weight:500;line-height:1.55;max-width:60ch;margin-bottom:var(--sp-6)}.logo-marquee{overflow:hidden;margin-bottom:var(--sp-5);-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.logo-track{display:flex;align-items:flex-start;width:max-content;list-style:none;animation:logo-marquee 42s linear infinite}.logo-marquee:hover .logo-track{animation-play-state:paused}@keyframes logo-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.logo-item{flex-shrink:0;margin-right:var(--sp-10);width:200px;display:flex;flex-direction:column;align-items:center;gap:var(--sp-2)}.logo-item img{height:78px;width:auto;max-width:100%;object-fit:contain;border-radius:12px}.logo-name{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;color:var(--text-muted);line-height:1.4;text-align:center;white-space:normal;text-wrap:balance}@media (prefers-reduced-motion:reduce){.logo-track{animation:none;width:100%;justify-content:center;flex-wrap:wrap;gap:var(--sp-6)}.logo-item{margin-right:0}.logo-item.is-dup{display:none}}.clients-permission{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--text-muted);font-style:italic;line-height:1.7;max-width:68ch;border-inline-start:2px solid var(--border-strong);padding-inline-start:var(--sp-2)}.about-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:var(--sp-6);align-items:start}@media (max-width:820px){.about-layout{grid-template-columns:1fr}}.about-body p{font-size:16px;color:var(--text-secondary);line-height:1.7;max-width:58ch}.about-body p:first-child{font-size:17px;color:var(--text)}.about-body strong{color:var(--text);font-weight:600}.team-block{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:var(--sp-4);box-shadow:var(--shadow-card)}.team-block p{color:var(--text-secondary);font-size:15px}.faq-list{max-width:760px}.faq-item{border-bottom:1px solid var(--border);margin:0}.faq-item summary{font-family:var(--font-heading);font-size:18px;color:var(--text);cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:var(--sp-2)0;min-height:44px;transition:color var(--dur-hover) var(--ease)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-family:var(--font-mono);font-size:16px;line-height:1;color:var(--purple-mid-text);flex-shrink:0}.faq-item[open] summary:after{content:"−"}.faq-item summary:hover{color:var(--purple-light)}.faq-item p{font-size:14.5px;color:var(--text-secondary);line-height:1.7;margin:0 0 var(--sp-3);max-width:64ch}.about-sectors{margin-top:var(--sp-6)}.sectors-intro{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--sp-2)}.sectors-list{list-style:none;display:flex;flex-wrap:wrap;gap:var(--sp-1)}.team-roles{list-style:none;display:flex;flex-direction:column;gap:10px;margin-top:var(--sp-3)}.team-roles li{font-family:var(--font-mono);font-size:12.5px;color:var(--text-secondary);letter-spacing:.02em;padding-inline-start:14px;position:relative}.team-roles li:before{content:"·";position:absolute;inset-inline-start:0;color:var(--purple-mid-text)}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--sp-8);align-items:start}@media (max-width:820px){.contact-layout{grid-template-columns:1fr}}.contact-intro{color:var(--text-secondary);font-size:16px;margin-bottom:var(--sp-4)}.contact-details{list-style:none;display:flex;flex-direction:column;gap:var(--sp-3);margin-bottom:var(--sp-4)}.contact-details dt{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.contact-details dd{font-family:var(--font-mono);font-size:14px;color:var(--text);letter-spacing:.02em}.contact-details dd a{color:var(--purple-light);display:inline-block}.contact-details dd a:hover{color:var(--text)}@media (pointer:coarse){.contact-details dd a{padding:13px 0;margin:-13px 0}}.contact-note{font-size:13.5px;color:var(--text-secondary);line-height:1.65;border-inline-start:2px solid var(--border-strong);padding-inline-start:var(--sp-2)}.contact-assurance{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.03em;line-height:1.6;color:var(--text-muted);margin-bottom:var(--sp-3);padding-bottom:var(--sp-2);border-bottom:1px solid var(--border)}.form{display:flex;flex-direction:column;gap:var(--sp-3)}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-family:var(--font-heading);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.form-input,.form-textarea{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-family:var(--font-body);font-size:15px;padding:12px var(--sp-2);transition:border-color var(--dur-hover) var(--ease);width:100%}@media (max-width:768px){.form-input,.form-textarea{font-size:16px}}.form-input:focus,.form-textarea:focus{border-color:var(--purple-mid)}.form-input[aria-invalid=true],.form-textarea[aria-invalid=true]{border-color:var(--danger)}.form-textarea{resize:vertical;min-height:120px}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.field-error{font-family:var(--font-mono);font-size:11.5px;color:var(--danger);letter-spacing:.02em}.form-trap{position:absolute;left:-9999px;top:-9999px;width:0;height:0;overflow:hidden;opacity:0}.btn-submit{background:var(--purple-mid);color:#fff;border:0;border-radius:var(--radius);font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:14px var(--sp-4);cursor:pointer;box-shadow:var(--shadow-card);transition:transform var(--dur-hover) var(--ease),box-shadow var(--dur-hover) var(--ease),background var(--dur-hover) var(--ease);width:100%}.btn-submit:hover:not(:disabled){background:#8d6fbd;border-inline-start-color:var(--purple-light);background:var(--bg-hover)}.btn-submit:active{transform:translate(0);box-shadow:none}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-success{font-family:var(--font-mono);font-size:14px;color:var(--success);padding:var(--sp-3);text-align:center;border:1px solid rgba(126,226,168,.35);border-radius:var(--radius);line-height:1.7}.form-error-msg{font-family:var(--font-mono);font-size:12.5px;color:var(--danger);border:1px solid rgba(255,138,128,.35);border-radius:var(--radius);padding:var(--sp-2);line-height:1.7}.form-error-msg a{color:var(--danger);text-decoration:underline}.footer{position:relative;z-index:3;border-top:1px solid var(--border);padding:var(--sp-4)0}.footer .container{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-1) var(--sp-3)}.footer-note,.footer-links{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);letter-spacing:.04em;line-height:1.5}.footer-note{margin:0}.footer-legal{display:block;margin-top:2px;font-size:11px;letter-spacing:.04em;color:var(--text-muted)}.footer-links{display:flex;align-items:baseline;gap:var(--sp-2);flex-wrap:wrap}.footer-links a{color:var(--text-muted)}.footer-links a:hover{color:var(--purple-light)}.page{min-height:70svh;padding:calc(var(--sp-12) + 40px)0 var(--sp-12)}.page h1{font-family:var(--font-heading);font-size:clamp(30px,5.2vw,44px);font-weight:400;color:var(--text);margin-bottom:var(--sp-3)}.page h2{font-family:var(--font-heading);font-size:18px;font-weight:400;letter-spacing:.04em;color:var(--text);margin:var(--sp-5)0 var(--sp-1)}.page p,.page li{color:var(--text-secondary);font-size:15px;max-width:70ch}.page p a,.page li a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;text-decoration-color:var(--border-strong);transition:text-decoration-color var(--dur-hover) var(--ease),color var(--dur-hover) var(--ease)}.page p a:hover,.page li a:hover{text-decoration-color:currentColor}.page ul{padding-inline-start:var(--sp-3)}.page-nav{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-2)}.page-nav a{display:inline-flex;align-items:center;min-height:44px}.page .lead{font-size:17px;margin-bottom:var(--sp-4)}.page-code{font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;color:var(--purple-light);text-transform:uppercase;margin-bottom:var(--sp-2)}[id]{scroll-margin-top:88px}.contact-layout>*,.about-layout>*,.svc-grid>*,.projects-grid>*{min-width:0}@media (max-width:580px){.section{padding:var(--sp-8)0}.section-head{margin-bottom:var(--sp-4)}.footer .container{flex-direction:column;align-items:flex-start;gap:var(--sp-2)}.footer-links{gap:var(--sp-1) var(--sp-3)}.footer-links a{display:inline-flex;align-items:center;min-height:44px}}@media (max-width:400px){.container{padding:0 var(--sp-2)}}#calotropis-canvas{position:fixed;inset:0;z-index:2;pointer-events:none;will-change:transform;transform:translateZ(0)}.icon{display:inline-block;flex:none;vertical-align:-.125em}.service-title,.project-name,.engagement-step h3{display:flex;align-items:baseline;gap:9px}.service-title .icon,.project-name .icon,.engagement-step h3 .icon{color:var(--purple-mid-text);align-self:flex-start;margin-top:1px}.contact-details dt{display:flex;align-items:center;gap:7px}.contact-details dt .icon{color:var(--purple-mid-text)}.team-roles li{display:flex;align-items:baseline;gap:8px;padding-inline-start:0}.team-roles li:before{content:none}.team-roles li .icon{color:var(--purple-mid-text);align-self:flex-start;margin-top:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.section--deep{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-hero) 62%,transparent),color-mix(in srgb,var(--bg-hero) 62%,transparent));box-shadow:inset 0 1px 0 var(--border-strong),inset 0-1px 0 var(--border-strong)}.metric-value,.metrics-band,.section-index,.service-num,.engagement-step:before{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"1}.nav-links a.active:after{background:var(--accent)}.hero-rule{border-color:var(--accent);opacity:.7}[dir=rtl] .js .section-head.reveal:after{transform-origin:100% 50%}[dir=rtl] .cta-arrow .icon,[dir=rtl] .ft-link .icon{transform:scaleX(-1)}@media (max-width:720px){[dir=rtl] .ft-link .icon{transform:rotate(90deg)}}[dir=rtl] :is(.section-label,.section-index,.section-heading,.svc-group-label,.service-num,.service-title,.svc-more,.term-chip,.sectors-intro,.metric-label,.faq-item summary,.nav-links a,.mobile-overlay a,.contact-details dt,.form-label,.submit-btn,.footer-note,.footer-links,.hero-positioning,.hero-cta-primary,.hero-cta-secondary,.page-code,.engagement-step h3,.clients-permission){letter-spacing:0}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}