:root{--bg:#09152b;--bg-2:#10233d;--surface:#142640;--surface-2:#172c49;--ink:#f6f7ff;--muted:#bac4d5;--line:rgba(165,175,245,.19);--purple:#b4a6f0;--blue:#80b6f4;--shadow:rgba(0,0,0,.25);font-size:16px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:6rem}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"IBM Plex Sans Arabic",system-ui,sans-serif;line-height:1.75;overflow-x:hidden}
html[lang="en"] body{font-family:Inter,system-ui,sans-serif}
button,a{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
img{max-width:100%}
.container{width:min(100% - 3rem,1180px);margin-inline:auto}
.skip-link{position:absolute;z-index:1000;inset-block-start:-5rem;inset-inline-start:1rem;background:var(--purple);color:var(--bg);padding:.6rem 1rem;border-radius:0 0 .7rem .7rem}
.skip-link:focus{inset-block-start:0}
.site-shell{position:relative;overflow:hidden}
.site-header{position:relative;z-index:20;padding:1.5rem 0}
.header-inner{min-height:4.5rem;padding:.5rem .75rem .5rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--line);border-radius:100px;background:rgba(16,31,55,.94);box-shadow:0 14px 42px var(--shadow);backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:.7rem;min-width:0;flex-shrink:0}
.brand-mark{width:2.7rem;height:2.7rem;display:grid;place-items:center;flex:none;border-radius:50%;background:var(--purple);color:#141d36;font-family:Inter,Arial,sans-serif;font-size:.85rem;font-weight:800;letter-spacing:-.11em;direction:ltr}
.brand-name{display:grid;line-height:1.3}
.brand-name strong{font-size:.9rem;white-space:nowrap}
.brand-name small{font-size:.72rem;color:var(--muted);white-space:nowrap}
.desktop-nav{display:flex;align-items:center;gap:2rem}
.desktop-nav a{font-size:.9rem;font-weight:500;color:var(--muted);transition:color .2s}
.desktop-nav a:hover{color:var(--purple)}
.header-actions{display:flex;align-items:center;gap:.5rem}
.button,.lang-button,.icon-button{display:inline-flex;justify-content:center;align-items:center;gap:.65rem;border-radius:100px;min-height:2.75rem;font-size:.88rem;font-weight:700;line-height:1.2;white-space:nowrap}
.button{padding:.75rem 1.4rem;transition:transform .25s,box-shadow .25s,background .25s}
.button:hover{transform:translateY(-3px)}
.button-primary{background:var(--purple);color:#131c34;border:1px solid var(--purple)}
.button-primary:hover{box-shadow:0 12px 28px rgba(180,166,240,.19)}
.button-outline{background:rgba(255,255,255,.025);border:1px solid var(--line);color:var(--ink)}
.button-outline:hover{background:rgba(180,166,240,.09)}
.icon-button,.lang-button{background:transparent;border:1px solid var(--line);color:var(--ink)}
.icon-button{width:2.75rem;padding:0}
.motion-toggle span{font-size:1.25rem;font-weight:400}
.lang-button{padding:0 .8rem}
.menu-toggle{display:none;flex-direction:column;gap:4px}
.menu-toggle span{width:16px;height:2px;border-radius:2px;background:currentColor}
.mobile-nav{margin-top:.45rem;padding:.7rem;border:1px solid var(--line);border-radius:1rem;background:var(--surface);box-shadow:0 15px 30px var(--shadow)}
.mobile-nav[hidden]{display:none}
.mobile-nav a{display:block;padding:.65rem .8rem;border-radius:.5rem;font-size:1rem}
.mobile-nav a:hover{background:rgba(180,166,240,.1)}
.hero{position:relative;padding:5.25rem 0 7rem;isolation:isolate}
.hero-grid{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 29% 46%,rgba(92,46,163,.27),transparent 42%),radial-gradient(ellipse at 58% 38%,rgba(80,101,192,.13),transparent 48%),linear-gradient(180deg,#0a1026 0%,#0a142b 72%,#09152b 100%)}
.hero-grid::before,.hero-grid::after{content:"";position:absolute;pointer-events:none}
.hero-grid::before{width:76%;height:145%;inset-block-start:-25%;inset-inline-end:-8%;border-radius:50%;background:repeating-conic-gradient(from 8deg at 50% 50%,transparent 0deg 12deg,rgba(117,82,220,.07) 16deg,rgba(178,137,255,.66) 22deg,rgba(113,176,252,.35) 26deg,transparent 34deg 42deg);-webkit-mask-image:radial-gradient(ellipse at center,transparent 0 18%,#000 32%,#000 47%,transparent 69%);mask-image:radial-gradient(ellipse at center,transparent 0 18%,#000 32%,#000 47%,transparent 69%);filter:blur(23px);opacity:.9;animation:aurora-orbit 24s linear infinite}
.hero-grid::after{width:78%;height:155%;inset-block-start:-30%;inset-inline-end:-11%;border-radius:50%;background:conic-gradient(from 38deg at 50% 50%,transparent 0deg,rgba(152,100,246,.46) 52deg,transparent 105deg,rgba(102,172,255,.4) 153deg,transparent 205deg,rgba(166,109,241,.56) 273deg,transparent 340deg);-webkit-mask-image:radial-gradient(ellipse at center,transparent 0 14%,#000 29%,transparent 62%);mask-image:radial-gradient(ellipse at center,transparent 0 14%,#000 29%,transparent 62%);filter:blur(52px);opacity:.65;animation:aurora-breathe 13s ease-in-out infinite alternate}
.hero-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);align-items:center;gap:3rem;min-height:33rem}
.hero-copy{position:relative;z-index:2}
.eyebrow{display:inline-flex;align-items:center;gap:.7rem;margin:0;color:var(--purple);font-size:.84rem;font-weight:700;letter-spacing:.01em}
.eyebrow-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--purple);box-shadow:0 0 0 6px rgba(180,166,240,.11)}
.hero h1{font-size:clamp(2.7rem,4.35vw,4.4rem);font-weight:900;line-height:1.23;letter-spacing:-.035em;margin:1.45rem 0 1.5rem;max-width:13.5ch}
.hero h1 span{display:block}
.hero h1 .accent-line{color:var(--purple)}
html[lang="en"] .hero h1{font-family:Inter,system-ui,sans-serif;line-height:1.16;max-width:14ch}
.hero-description{font-size:1.08rem;line-height:2;max-width:36rem;margin:0;color:var(--muted)}
.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}
.hero-footnote{display:flex;align-items:center;gap:.8rem;color:var(--muted);font-size:.8rem;margin:2.25rem 0 0}
.footnote-line{width:2.5rem;height:1px;background:var(--purple);flex:none}
.hero-visual{position:relative;min-height:27rem;display:grid;place-items:center}
.visual-glow{position:absolute;width:min(95%,24rem);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(180,166,240,.24),transparent 67%);filter:blur(22px);animation:pulse 6s ease-in-out infinite}
.orbit{position:absolute;border:1px solid rgba(180,166,240,.22);border-radius:50%;aspect-ratio:1}
.orbit-outer{width:min(83%,22rem);animation:spin 24s linear infinite}
.orbit-inner{width:min(63%,16.5rem);border-style:dashed;animation:spin 19s linear infinite reverse}
.orbit-outer::before,.orbit-inner::after{content:"";position:absolute;inset-block-start:50%;inset-inline-start:-5px;width:9px;height:9px;border-radius:50%;background:var(--purple);box-shadow:0 0 18px var(--purple)}
.orbit-inner::after{inset-inline-start:auto;inset-inline-end:-5px;background:var(--blue);box-shadow:0 0 18px var(--blue)}
.visual-core{width:10rem;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(180,166,240,.36);border-radius:2.2rem;background:linear-gradient(145deg,rgba(128,182,244,.24),rgba(13,28,48,.93));box-shadow:0 28px 70px rgba(0,0,0,.28),inset 0 0 45px rgba(180,166,240,.08);transform:rotate(-13deg)}
.visual-core span{font-family:Inter,Arial,sans-serif;font-size:3.2rem;letter-spacing:-.13em;font-weight:600;transform:rotate(13deg);direction:ltr}
.visual-label{position:absolute;z-index:2;display:flex;align-items:center;gap:.55rem;padding:.55rem .75rem;background:rgba(20,36,63,.95);border:1px solid var(--line);border-radius:.7rem;color:var(--muted);font-size:.75rem;box-shadow:0 10px 28px var(--shadow);animation:float 5.2s ease-in-out infinite;white-space:nowrap}
.visual-label b{font:700 .75rem Inter,Arial,sans-serif;color:var(--purple)}
.label-one{inset-block-start:16%;inset-inline-start:0}
.label-two{inset-block-start:23%;inset-inline-end:2% ;animation-delay:-2s}
.label-three{inset-block-end:14%;inset-inline-end:0;animation-delay:-3.3s}
.section{padding:6.5rem 0;border-top:1px solid rgba(180,166,240,.08)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}
.section-number{color:var(--purple);font-family:Inter,"IBM Plex Sans Arabic",sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.04em}
.section-heading h2,.about-copy h2,.contact-panel h2{font-size:clamp(2rem,3.15vw,3.25rem);font-weight:700;line-height:1.35;letter-spacing:-.025em;margin:.7rem 0 0}
.section-heading>p{max-width:22rem;margin:0;color:var(--muted);font-size:1rem;line-height:1.8}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}
.project-card{min-width:0;overflow:hidden;border-radius:1.25rem;background:var(--surface);border:1px solid var(--line);transition:transform .3s,border-color .3s,box-shadow .3s}
.project-card:hover{transform:translateY(-5px);border-color:rgba(180,166,240,.45);box-shadow:0 20px 40px rgba(0,0,0,.16)}
.project-art{position:relative;min-height:16rem;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 65% 43%,rgba(180,166,240,.24),transparent 32%),linear-gradient(145deg,#263562,#12243e)}
.project-art::before{content:"";position:absolute;width:12rem;aspect-ratio:1;border:1px solid rgba(180,166,240,.22);border-radius:38%;transform:rotate(32deg)}
.project-art::after{content:"";position:absolute;width:6.6rem;aspect-ratio:1;border:1px solid rgba(128,182,244,.3);border-radius:1.5rem;transform:rotate(-19deg)}
.project-art.has-photo{height:16rem;min-height:0;display:block;background:#111c31}
.project-art.has-photo::before,.project-art.has-photo::after{content:none}
.project-photo{display:block;width:100%;height:100%;object-fit:cover}
.photo-wejha{object-position:center 38%}
.photo-tasaheel{object-position:center 53%}
.photo-health{object-position:center 48%}
.art-tasaheel{background:radial-gradient(circle at 40% 47%,rgba(128,182,244,.25),transparent 35%),linear-gradient(145deg,#1d3a61,#13233d)}
.art-tasreeh{background:radial-gradient(circle at 65% 52%,rgba(180,166,240,.23),transparent 35%),linear-gradient(145deg,#30375f,#13243c)}
.art-health{background:radial-gradient(circle at 38% 42%,rgba(128,182,244,.25),transparent 35%),linear-gradient(145deg,#213b61,#14243b)}
.project-glyph{position:relative;z-index:1;display:grid;place-items:center;width:6.5rem;aspect-ratio:1;border:1px solid var(--line);border-radius:1.4rem;background:rgba(13,32,54,.78);box-shadow:0 22px 48px rgba(0,0,0,.22);color:var(--purple);font-size:2.75rem;font-weight:700;line-height:1}
.health-glyph{font-family:Inter,Arial,sans-serif}
.art-index{position:absolute;inset-block-end:1rem;inset-inline-end:1.2rem;color:rgba(246,247,255,.58);font:600 .9rem Inter,Arial,sans-serif}
.project-body{padding:1.45rem}
.project-category{color:var(--purple)!important;font-size:.82rem!important;font-weight:700;letter-spacing:.01em;margin:0!important}
.project-body h3{font-size:1.55rem;line-height:1.4;margin:.65rem 0 .55rem}
.project-body>p:not(.project-category){font-size:1rem;line-height:1.9;color:var(--muted);margin:0;min-height:5.6rem}
.project-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem;font-size:.82rem;color:var(--muted)}
.project-footer a,.project-status{color:var(--blue);font-weight:700}
.project-footer a{display:inline-flex;gap:.4rem;align-items:center}
.project-footer a:hover{text-decoration:underline}
.section-services{background:linear-gradient(180deg,rgba(16,35,61,.35),rgba(9,21,43,0))}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.service-card{min-height:11.5rem;padding:1.35rem;border-radius:1rem;border:1px solid var(--line);background:rgba(20,38,64,.82);transition:background .25s,transform .25s}
.service-card:hover{transform:translateY(-3px);background:var(--surface-2)}
.service-index{display:inline-grid;place-items:center;min-width:2rem;height:2rem;border-radius:.55rem;background:rgba(180,166,240,.12);font:700 .8rem Inter,Arial,sans-serif;color:var(--purple)}
.service-card h3{font-size:1.05rem;line-height:1.5;margin:1.15rem 0 .35rem}
.service-card p{margin:0;color:var(--muted);font-size:.93rem;line-height:1.8}
.awards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.award-card{display:flex;gap:1rem;align-items:flex-start;min-height:7.4rem;padding:1.35rem;border:1px solid var(--line);border-radius:1rem;background:var(--surface)}
.award-symbol{flex:none;display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:.7rem;background:var(--blue);color:#12223c;font:700 .95rem Inter,Arial,sans-serif}
.award-card h3{font-size:1rem;line-height:1.6;margin:0}
.award-card p{font-size:.9rem;line-height:1.75;color:var(--muted);margin:.25rem 0 0}
.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4rem}
.about-copy h2{margin:1rem 0 1.25rem}
.about-copy>p{color:var(--muted);font-size:1.02rem;line-height:2.05;margin:0}
.about-copy ul{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:.65rem}
.about-copy li{display:flex;align-items:center;gap:.65rem;font-size:.95rem}
.about-copy li::before{content:"↗";width:1.4rem;height:1.4rem;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--purple);font-size:.78rem;flex:none}
.about-visual{min-height:20rem;display:grid;place-items:center;border:1px solid var(--line);border-radius:1.4rem;background:radial-gradient(circle at center,rgba(180,166,240,.16),transparent 62%),repeating-linear-gradient(90deg,transparent 0 39px,rgba(180,166,240,.045) 40px),repeating-linear-gradient(0deg,transparent 0 39px,rgba(180,166,240,.045) 40px),var(--bg-2)}
.about-ring{width:11rem;aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;box-shadow:0 0 0 1.75rem rgba(180,166,240,.035),0 0 0 3.4rem rgba(180,166,240,.025)}
.about-ring span{color:var(--purple);font:600 4rem Inter,Arial,sans-serif;letter-spacing:-.13em;direction:ltr}
.contact-section{padding:1rem 0 2rem}
.contact-panel{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:3rem;border:1px solid rgba(180,166,240,.28);border-radius:1.5rem;background:radial-gradient(circle at 13% 75%,rgba(180,166,240,.19),transparent 38%),linear-gradient(120deg,#22355b,#172d50)}
.contact-panel h2{margin:1rem 0 .5rem}
.contact-panel p{color:var(--muted);font-size:1rem;margin:0}
.contact-actions{display:grid;gap:.65rem;min-width:12rem}
.contact-actions .button{text-align:center}
.site-footer{padding:1rem 0 2.5rem}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--muted);font-size:.85rem}
.footer-inner strong{color:var(--ink);font-weight:500}
.footer-inner a:hover{color:var(--purple)}
.reveal{opacity:0;transform:translateY(1.4rem);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
.paused *, .paused *::before,.paused *::after{animation-play-state:paused!important}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes float{50%{transform:translateY(-.8rem)}}
@keyframes pulse{50%{transform:scale(1.14);opacity:1}0%,100%{transform:scale(.9);opacity:.6}}
@keyframes aurora-orbit{to{transform:rotate(360deg)}}
@keyframes aurora-breathe{0%{transform:rotate(-18deg) scale(.95);opacity:.45}100%{transform:rotate(20deg) scale(1.13);opacity:.8}}
@media(max-width:1050px){.desktop-nav{gap:1.15rem}.header-contact{display:none}.hero-inner{grid-template-columns:minmax(0,1fr) minmax(290px,.8fr);gap:1.5rem}.hero-visual{min-height:24rem}.visual-label{font-size:.7rem}}
@media(max-width:850px){.desktop-nav{display:none}.menu-toggle{display:flex}.hero{padding:3.5rem 0 5rem}.hero-grid::before,.hero-grid::after{width:125%;height:95%;inset-block-start:7%;inset-inline-end:-48%}.hero-inner{grid-template-columns:1fr;gap:1rem}.hero h1{max-width:none}.hero-visual{min-height:23rem;max-width:28rem;width:100%;margin-inline:auto}.section{padding:5rem 0}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid{gap:2rem}}
@media(max-width:650px){.container{width:min(100% - 2rem,1180px)}.site-header{padding:1rem 0}.header-inner{padding:.45rem}.brand-name small{display:none}.brand-name strong{font-size:.82rem}.brand-mark{width:2.35rem;height:2.35rem;font-size:.78rem}.header-actions{gap:.3rem}.icon-button,.lang-button{min-height:2.3rem}.icon-button{width:2.3rem}.lang-button{padding:0 .65rem;font-size:.75rem}.hero{padding:3rem 0 4rem}.hero-inner{min-height:0}.hero h1{font-size:clamp(2.35rem,8.5vw,3.45rem);line-height:1.3}.hero-description{font-size:1rem}.hero-visual{min-height:20rem}.visual-core{width:8.3rem}.visual-core span{font-size:2.7rem}.orbit-outer{width:16.5rem}.orbit-inner{width:12.5rem}.visual-label{font-size:.68rem;padding:.42rem .55rem}.section{padding:4rem 0}.section-heading{display:block}.section-heading>p{margin-top:.8rem}.section-heading h2,.about-copy h2,.contact-panel h2{font-size:clamp(1.9rem,7vw,2.65rem)}.project-grid,.awards-grid,.about-grid{grid-template-columns:1fr}.project-body>p:not(.project-category){min-height:0}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.about-visual{min-height:15rem}.contact-panel{display:block;padding:2rem}.contact-actions{margin-top:1.5rem}.footer-inner{display:block}.footer-inner a{display:block;margin-top:.4rem}}
@media(max-width:370px){.brand-name strong{font-size:.73rem}.hero-actions .button{width:100%}.hero-visual{min-height:17rem}.orbit-outer{width:14rem}.orbit-inner{width:10.5rem}.visual-label{font-size:.63rem}.label-two{inset-inline-end:0}.label-three{inset-block-end:8%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
