@charset "UTF-8";
:root{color-scheme:light;--bg:#f7f8fa;--surface:#fff;--text:#152434;--muted:#526271;--line:#d9e0e7;--accent:#2251e5;--tint:#e9effc;--nav:rgba(255,255,255,.92);--hero:#eef2fa;--shadow:0 18px 60px #1c335312}
:root[data-theme=dark]{color-scheme:dark;--bg:#0c1420;--surface:#121f2d;--text:#eff4fa;--muted:#afbdd0;--line:#2c3a4b;--accent:#9fb9ff;--tint:#192f52;--nav:rgba(16,26,40,.94);--hero:#0e1c31;--shadow:0 18px 60px #0003}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--bg);color:var(--text);font-family:"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,select,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button{cursor:pointer}p{line-height:1.8;color:var(--muted)}h1,h2,h3{font-weight:500;margin:0;letter-spacing:-.045em;line-height:1.12}h1{font-size:clamp(42px,4.9vw,74px)}h2{font-size:clamp(34px,3.5vw,52px)}h3{font-size:26px;letter-spacing:-.025em}html[dir=rtl] h1,html[dir=rtl] h2,html[dir=rtl] h3{letter-spacing:0;line-height:1.45}html[dir=rtl]{font-family:Tahoma,"Segoe UI",sans-serif}html[dir=rtl] h1{font-size:clamp(38px,4.5vw,66px)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip{position:fixed;top:-100px;inset-inline-start:20px;padding:15px;background:var(--surface);z-index:100}.skip:focus{top:10px}
.header{position:relative;z-index:5;margin:22px auto 0;max-width:1380px;width:calc(100% - 64px);min-height:94px;padding:9px 24px;display:flex;gap:30px;align-items:center;justify-content:space-between;background:var(--nav);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.brand{display:flex;flex:none}.brand img{width:134px;height:68px;object-fit:contain}.logo-dark{display:none}[data-theme=dark] .logo-light{display:none}[data-theme=dark] .logo-dark{display:block}nav{display:flex;gap:32px;font-size:14px}nav a{padding:15px 0;color:var(--muted)}nav a:hover,nav a[aria-current]{color:var(--text)}nav a[aria-current]{box-shadow:0 1px 0 var(--accent)}.controls{display:flex;gap:20px;align-items:center;font-size:13px}.language{font-weight:600}.theme-label select{background:transparent;color:var(--text);border:0;padding:10px 3px;max-width:83px}.theme-label option{background:var(--surface)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;border:1px solid transparent;background:var(--text);color:var(--bg);padding:18px 26px;border-radius:6px;font-weight:500;font-size:15px;transition:transform .2s,box-shadow .2s;line-height:1.3}.button:hover{transform:translateY(-2px);box-shadow:0 7px 20px #224a7b22}.button.small{font-size:13px;padding:13px 18px;gap:22px}.button.secondary{background:transparent;color:var(--text);border-color:var(--line)}.button span,.arrow{font-size:21px}.hero{position:relative;max-width:1512px;margin:auto;min-height:755px;padding:90px max(64px,6vw) 0;display:grid;grid-template-columns:1.15fr 1fr;gap:15px;overflow:hidden;background:radial-gradient(ellipse at 83% 40%,var(--tint),transparent 59%)}.hero-copy{position:relative;z-index:2;padding-bottom:75px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.15em;color:var(--muted);text-transform:uppercase;margin:0 0 28px;display:flex;align-items:center;gap:11px}.dot{width:6px;height:6px;display:inline-block;background:var(--accent);border-radius:50%;box-shadow:0 0 0 4px var(--tint)}.hero h1{max-width:730px}.lead{font-size:17px;line-height:1.85;max-width:630px;margin:26px 0 32px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.12em;color:var(--muted);position:relative;z-index:2}.hero-bottom a{letter-spacing:0;font-size:13px}
.architecture{height:550px;position:relative;isolation:isolate;align-self:center;direction:ltr;transform:translateY(-15px)}.orb{position:absolute;inset:10% -30% 0 -15%;background:radial-gradient(ellipse,#85b0ff55,transparent 65%);filter:blur(25px)}.floor{position:absolute;left:-50%;right:-60%;bottom:0;height:150px;transform:perspective(450px) rotateX(62deg);background:repeating-linear-gradient(90deg,transparent 0 69px,#5880b322 70px 71px),repeating-linear-gradient(0deg,transparent 0 49px,#5880b322 50px 51px);mask-image:radial-gradient(ellipse,#000,transparent 70%)}.portal{position:absolute;border-style:solid;border-radius:150px 150px 0 0;border-color:#bed2f3 #5b83c8 #285595 #e3efff;box-shadow:inset 6px 0 12px #fff7,14px 12px 22px #1d427737;transform:skewY(-8deg);background:linear-gradient(120deg,#fff2,transparent);bottom:70px}.p1{width:285px;height:430px;border-width:27px;left:15px;z-index:4}.p2{width:250px;height:386px;border-width:24px;left:94px;bottom:88px;z-index:3;filter:brightness(.9)}.p3{width:219px;height:343px;border-width:21px;left:166px;bottom:104px;z-index:2;filter:brightness(.8)}.p4{width:190px;height:300px;border-width:19px;left:231px;bottom:121px;z-index:1;filter:brightness(.7)}.plinth{position:absolute;left:4px;bottom:45px;width:355px;height:40px;background:linear-gradient(100deg,#b0c6e9,#456fb0);transform:skewY(-8deg);box-shadow:10px 20px 40px #1e407344;z-index:5}.axis{position:absolute;top:10px;right:0;height:460px;width:1px;background:linear-gradient(transparent,var(--line),transparent)}
.section{max-width:1380px;margin:0 auto;padding:95px 64px}.section-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:90px;align-items:end;margin-bottom:46px}.section-heading p:not(.eyebrow){max-width:430px;font-size:16px;margin:0 0 5px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.service-card{display:flex;flex-direction:column;padding:28px 28px 24px;border:1px solid var(--line);border-radius:8px;min-height:295px;background:var(--surface);transition:border-color .2s,transform .2s}.service-card:hover{border-color:var(--accent);transform:translateY(-4px)}.card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:40px}.arrow{font-size:23px;color:var(--accent)}.service-card p{font-size:14px;line-height:1.8;margin:16px 0 26px}.text-link{font-size:13px;font-weight:600;display:inline-flex;gap:24px;align-items:center;color:var(--text)}.service-card .text-link{margin-top:auto}.all-services{display:flex;justify-content:space-between;padding:26px 4px;border-bottom:1px solid var(--line);font-size:15px}.company{display:grid;grid-template-columns:1fr 1.12fr;gap:100px;align-items:center;background:var(--tint);max-width:none;padding-inline:max(64px,calc((100vw - 1252px)/2));}.company-mark{min-height:360px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(130deg,var(--surface),transparent);border-radius:200px 200px 8px 8px;max-width:360px}.company-mark span{font-family:Georgia,"Traditional Arabic",serif;font-size:64px;line-height:1.3;position:relative;z-index:1}.mark-line{position:absolute;inset:22px;border:1px solid var(--line);border-radius:180px 180px 5px 5px}.contact-band{position:relative;padding-block:95px 100px}.contact-band h2{max-width:800px;margin-bottom:35px}footer{padding:65px max(64px,calc((100vw - 1252px)/2)) 25px;background:#101c2c;color:#e9eff7}footer p{color:#a7b8cd}footer .eyebrow{color:#a7b8cd}footer h2{font-size:37px;letter-spacing:-.03em}.footer-top{display:flex;justify-content:space-between;gap:55px;padding-bottom:65px}.email{direction:ltr;display:inline-block;overflow-wrap:anywhere;font-size:17px}.footer-bottom{border-top:1px solid #324054;padding-top:23px;display:flex;justify-content:space-between;gap:35px;color:#a7b8cd;font-size:11px;line-height:1.8}
.page-intro{max-width:1380px;margin:auto;padding:80px 64px 65px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 100% 0,var(--tint),transparent 65%)}.page-intro h1{max-width:1000px;font-size:clamp(40px,5.5vw,72px)}.page-intro .lead{max-width:760px}.breadcrumb{display:block;font-size:12px;color:var(--muted);margin-bottom:45px}.directory{padding-top:50px}.detail-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:90px;padding-top:65px}.detail-layout h2{font-size:34px;margin:20px 0}.scope-list{list-style:none;padding:0;margin:30px 0 60px}.scope-list li{padding:18px 0;border-bottom:1px solid var(--line);display:flex;gap:20px;line-height:1.6}.scope-list span{color:var(--accent)}.enquiry-panel{background:var(--tint);padding:35px;border-radius:8px;align-self:start;position:sticky;top:30px}.enquiry-panel p{font-size:15px}.enquiry-panel .button{margin-top:20px;gap:15px}.enquiry-panel h3{line-height:1.35}details{border-block:1px solid var(--line);padding:22px 0;margin-top:36px}summary{cursor:pointer;font-size:16px;line-height:1.5}details p{font-size:15px}.related{border-top:1px solid var(--line)}.related h2{margin-bottom:35px}form{display:grid;gap:22px}form label{display:grid;gap:10px;font-size:14px}input,textarea,form select{width:100%;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:5px;padding:15px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note{font-size:12px;margin:0}form .button{justify-self:start}#form-status{font-size:13px;margin:0}html[dir=rtl] .eyebrow,html[dir=rtl] .hero-bottom,html[dir=rtl] .card-top{letter-spacing:0}html[dir=rtl] .lead{line-height:2}html[dir=rtl] .architecture{transform:scale(.95)}
@media(min-width:1600px){.hero{padding-inline:95px}}@media(max-width:1100px){.header{width:calc(100% - 40px);padding-inline:18px;gap:20px}.header nav{gap:20px}.controls{gap:12px}.header-contact{display:none}.hero{padding:65px 40px 0;grid-template-columns:1.2fr .8fr;min-height:690px}.hero h1{font-size:54px}.architecture{transform:scale(.8);transform-origin:left center}.section{padding:70px 40px}.company{gap:55px}.section-heading{gap:45px}.service-card{padding:23px}.service-card h3{font-size:23px}.page-intro{padding:65px 40px}.detail-layout{gap:40px}footer{padding-inline:40px}.enquiry-panel{padding:25px}}@media(max-width:760px){.header{width:calc(100% - 32px);margin-top:16px;flex-wrap:wrap;gap:0 15px;padding:8px 15px 0;border-radius:10px}.brand img{width:106px;height:57px}.header nav{order:3;width:100%;justify-content:center;border-top:1px solid var(--line);margin-top:8px;gap:38px;font-size:13px}.controls{margin-inline-start:auto;font-size:12px}.hero{display:flex;flex-direction:column;padding:50px 24px 0;gap:0}.hero h1{font-size:45px;max-width:560px}.hero .eyebrow{font-size:9px;letter-spacing:.09em}.hero-copy{padding-bottom:0}.lead{font-size:16px;margin-block:22px 28px}.architecture{width:410px;height:460px;align-self:center;transform:scale(.68);transform-origin:center top;margin-top:30px;margin-bottom:-140px}.portal{bottom:-10px}.p2{bottom:8px}.p3{bottom:24px}.p4{bottom:41px}.plinth{bottom:-35px}.floor{bottom:-60px}.axis{display:none}.hero-bottom{width:100%;margin-top:35px;font-size:9px;padding-block:20px;letter-spacing:.05em}.hero-bottom a{font-size:11px}.section{padding:60px 24px}.section-heading{display:block;margin-bottom:30px}.section-heading p:not(.eyebrow){margin-top:24px}.eyebrow{margin-bottom:22px;font-size:10px}.service-grid{grid-template-columns:1fr 1fr;gap:12px}.service-card{padding:22px;min-height:280px}.service-card h3{font-size:22px}.card-top{margin-bottom:30px;font-size:9px;letter-spacing:0}.service-card p{font-size:13px}.company{grid-template-columns:1fr;gap:40px}.company-mark{display:none}.footer-top{flex-direction:column;gap:30px;padding-bottom:40px}footer{padding:50px 24px 24px}.footer-bottom{flex-direction:column;gap:15px}.page-intro{padding:50px 24px 40px}.page-intro h1{font-size:43px}.detail-layout{grid-template-columns:1fr;gap:40px}.enquiry-panel{position:static}.directory{padding-top:30px}html[dir=rtl] .architecture{transform:scale(.68)}html[dir=rtl] .hero h1{font-size:40px}}
@media(max-width:460px){.service-grid{grid-template-columns:1fr}.service-card{min-height:240px}.service-card h3{font-size:26px}.card-top{margin-bottom:25px}.form-row{grid-template-columns:1fr}.hero h1{font-size:41px}.button{padding:16px 22px;font-size:14px}.hero-bottom{flex-direction:column;gap:12px}.architecture{margin-inline:-24px}.email{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Revision 2: Dubai linework, quieter branding and illuminated service panels. */
:root{--city:#436d9c;--glow:#91b6f955;--card-shadow:#304e7420}
:root[data-theme=dark]{--bg:#0a1019;--surface:#101a27;--nav:#101a27f2;--city:#9bbde5;--glow:#578cfb45;--card-shadow:#0008}
.header,.section,.page-intro{max-width:1380px}.hero{max-width:1380px;padding-inline:64px;grid-template-columns:1.1fr 1fr;gap:36px;min-height:710px;align-items:center}
.hero-copy{padding-bottom:40px}.hero h1{font-size:clamp(42px,4.6vw,68px)}.hero .lead{max-width:610px}.hero-bottom{align-self:end}
.skyline{color:var(--city);width:100%;align-self:center;margin-top:-20px;pointer-events:none;direction:ltr}.skyline svg{width:100%;height:auto;display:block;filter:drop-shadow(0 8px 24px var(--glow))}
/* A neutral field preserves the original portrait rather than inverting its lines. */
.brand{background:#faf9f6;border:1px solid #e6e3dd;border-radius:8px;padding:5px 12px;box-shadow:0 2px 8px #00000008}
.brand img{width:124px;height:64px}[data-theme=dark] .brand .logo-light{display:block}[data-theme=dark] .brand .logo-dark{display:none}
.authority-strip{max-width:1252px;margin:0 auto;padding:36px 0;border-bottom:1px solid var(--line);overflow:hidden}
.strip-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.strip-heading .eyebrow{margin:0}.motion-toggle{color:var(--muted);background:none;border:1px solid var(--line);border-radius:20px;font-size:11px;padding:7px 12px}
.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);margin-top:26px;direction:ltr}.marquee-track{display:flex;width:max-content;animation:authority-scroll 38s linear infinite}.marquee-group{display:flex;flex:none;align-items:center;gap:65px;padding-inline-end:65px}.authority-name{width:185px;display:grid;gap:9px;color:var(--muted)}.authority-name strong{font-size:27px;font-weight:600;letter-spacing:.06em;color:var(--text)}.authority-name span{font-size:11px;line-height:1.5}.authority-note{font-size:11px;margin:24px 0 0}.authority-strip:hover .marquee-track,.authority-strip:focus-within .marquee-track,.authority-strip.paused .marquee-track{animation-play-state:paused}
@keyframes authority-scroll{to{transform:translateX(-50%)}}
.service-grid{gap:22px;align-items:stretch;perspective:1400px}.service-card{position:relative;isolation:isolate;overflow:hidden;min-height:430px;padding:30px;border-radius:12px;background:linear-gradient(155deg,var(--surface),var(--bg));box-shadow:0 5px 18px #00000004;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));}
.service-card::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 110%,var(--glow),transparent 65%);opacity:.28;transition:opacity .35s}.service-card::after{content:"";position:absolute;bottom:0;left:15%;right:15%;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.3;transition:opacity .35s}
.service-card:hover,.service-card:focus-visible{border-color:var(--city);transform:perspective(900px) translateY(-5px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));box-shadow:0 22px 40px -15px var(--card-shadow),inset 0 -1px 0 var(--city)}.service-card:hover::before,.service-card:focus-visible::before,.service-card:hover::after,.service-card:focus-visible::after{opacity:1}
.card-top{margin-bottom:27px}.card-top>.arrow{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--tint);transition:transform .3s}.service-card:hover .card-top>.arrow{transform:translate(2px,-2px)}.service-card h3{font-size:26px;min-height:58px;line-height:1.18;letter-spacing:-.03em}.service-card p{font-size:14px;margin:17px 0;min-height:76px}.card-scope{list-style:none;margin:0 0 28px;padding:0;color:var(--muted);font-size:12px;line-height:1.6}.card-scope li{position:relative;padding-inline-start:16px;margin-block:9px}.card-scope li::before{content:"";position:absolute;inset-inline-start:0;top:.65em;width:4px;height:4px;border-radius:50%;background:var(--city)}.service-card .text-link{padding-top:20px;border-top:1px solid var(--line);justify-content:space-between;width:100%}
.company{max-width:none;grid-template-columns:1fr 1.35fr;gap:85px;background:linear-gradient(120deg,var(--tint),var(--bg));border-block:1px solid var(--line)}.experience{border-inline-end:1px solid var(--line);padding-inline-end:50px}.experience-number{font-size:clamp(100px,13vw,175px);font-weight:300;line-height:1;letter-spacing:-.08em;display:flex;align-items:start;gap:25px;color:var(--text)}.experience-number span{font-size:40px;color:var(--city);line-height:2}.experience h3{font-size:22px;margin-top:28px;letter-spacing:-.02em}.experience p{font-size:14px}.company .lead{font-size:16px}.footer-license{display:flex;flex-wrap:wrap;gap:12px 24px;color:#c4d1e1;font-size:12px;padding:0 0 25px}.footer-license strong{font-weight:500}
@media(max-width:1100px){.hero{padding-inline:40px;gap:20px}.hero h1{font-size:50px}.authority-strip{margin-inline:40px}.service-card{padding:24px}.service-card h3{font-size:23px}.company{gap:45px}}
@media(max-width:760px){.hero{padding:45px 24px 0;gap:0}.hero h1{font-size:43px}.hero-copy{padding-bottom:0}.skyline{max-width:540px;margin:12px auto -15px}.skyline svg{max-height:360px}.hero-bottom{margin-top:15px}.brand{padding:2px 8px}.brand img{width:102px;height:53px}.authority-strip{margin-inline:24px;padding:26px 0}.authority-name{width:155px}.authority-name strong{font-size:24px}.marquee-group{gap:35px;padding-inline-end:35px}.service-card{min-height:430px;padding:22px}.service-card p{min-height:0}.service-card h3{min-height:0}.company{grid-template-columns:1fr;gap:35px}.experience{border-inline-end:0;border-bottom:1px solid var(--line);padding:0 0 28px}.experience-number{font-size:100px}.experience h3{margin-top:16px}.service-grid{gap:16px}html[dir=rtl] .hero h1{font-size:39px}}
@media(max-width:460px){.hero h1{font-size:39px}.service-card{min-height:0}.skyline svg{max-height:290px}.card-scope{margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}.marquee{overflow-x:auto;mask-image:none}.marquee-group[aria-hidden]{display:none}.motion-toggle{display:none}.service-card:hover,.service-card:focus-visible{transform:none}}
/* Revision 3: original identity, active city and editorial depth. */
.brand{background:transparent;border:0;padding:0;box-shadow:none}.brand img{width:145px;height:74px}[data-theme=dark] .brand .logo-light{display:none}[data-theme=dark] .brand .logo-dark{display:block}
.authority-strip:hover .marquee-track,.authority-strip:focus-within .marquee-track{animation-play-state:running}.marquee-group{gap:42px;padding-inline-end:42px}.authority-logo{width:260px;height:105px;display:flex;align-items:center;justify-content:center;padding:16px 18px;background:#fafbfc;border-radius:4px}.authority-logo img{width:100%;height:100%;object-fit:contain}.marquee{margin-top:30px}.authority-strip{padding-block:32px}.marquee-track{animation-duration:42s}
.service-emblem{width:90px;height:90px;color:var(--city);margin-bottom:24px;filter:drop-shadow(0 6px 14px var(--glow));transition:transform .4s}.emblem-disc{fill:var(--tint);stroke:var(--line);stroke-width:.7}.service-card:hover .service-emblem{transform:translateY(-3px) rotate(-4deg)}.card-top{margin-bottom:16px}.service-card h3{min-height:0}.service-card{min-height:520px}
.city-beacons{animation:beacons 5s ease-in-out infinite}.city-signals circle{animation:signal 6s ease-in-out infinite}.city-signals circle:nth-child(2n){animation-delay:-2s}.city-signals circle:nth-child(3n){animation-delay:-4s}.city-flow{animation:flow 9s linear infinite}.city-scan{animation:scan 12s ease-in-out infinite;mix-blend-mode:screen}.skyline{overflow:hidden}.city-buildings{animation:city-breathe 10s ease-in-out infinite}
@keyframes beacons{50%{opacity:.25}}@keyframes signal{0%,15%,85%,100%{opacity:.1}45%,55%{opacity:.95}}@keyframes flow{to{stroke-dashoffset:-680}}@keyframes scan{0%,100%{transform:translateX(-100%);opacity:0}20%,80%{opacity:1}90%{transform:translateX(100%);opacity:0}}@keyframes city-breathe{50%{stroke-opacity:.65}}
.why-panel{border:1px solid var(--line);border-radius:18px;padding:60px;display:grid;grid-template-columns:1fr 1.1fr;gap:75px;background:radial-gradient(ellipse at 0 100%,var(--glow),transparent 60%),var(--surface);position:relative;overflow:hidden}.why-intro h2{font-size:clamp(32px,3.5vw,48px)}.why-intro>p:last-child{max-width:350px}.why-points article+article{border-top:1px solid var(--line);padding-top:25px;margin-top:25px}.why-points h3{font-size:23px}.why-points p{font-size:14px;margin-bottom:0}.why-section{padding-bottom:30px}.audience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.audience-grid article{border-top:1px solid var(--city);padding-top:28px}.audience-grid h3{font-size:23px;line-height:1.3}.audience-grid p{font-size:14px}.audience-grid .service-emblem{width:64px;height:64px}.experience{position:relative}.experience-number{color:var(--city)}.experience-number::after{content:'';width:50px;height:50px;border:1px solid var(--city);border-radius:50%;align-self:center;background:radial-gradient(circle,var(--glow),transparent 70%);box-shadow:0 0 0 12px var(--tint),0 0 0 13px var(--line)}.story{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.story p:first-child{margin-top:0}.story p{font-size:16px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px}.process-grid article{border-top:1px solid var(--line);padding-top:32px;position:relative}.process-node{position:absolute;width:10px;height:10px;background:var(--city);top:-5px;border-radius:50%;box-shadow:0 0 0 7px var(--tint)}.process-grid h3{font-size:25px}.process-grid p{font-size:15px}
@media(max-width:1000px){.why-panel{padding:35px;gap:35px}.audience-grid{grid-template-columns:repeat(2,1fr)}.story{gap:40px}}
@media(max-width:760px){.brand img{width:115px;height:60px}.why-panel,.story{grid-template-columns:1fr;gap:30px}.why-panel{padding:30px 24px}.process-grid{grid-template-columns:1fr;gap:28px}.authority-logo{width:220px;height:90px}.service-card{min-height:0}.experience-number::after{width:35px;height:35px}.audience-grid{gap:24px}.audience-grid h3{font-size:21px}}
@media(max-width:460px){.audience-grid{grid-template-columns:1fr}.audience-grid article{display:grid;grid-template-columns:64px 1fr;gap:0 20px}.audience-grid p{grid-column:2}.audience-grid .service-emblem{grid-row:1/3}.service-emblem{width:80px;height:80px}}
@media(prefers-reduced-motion:reduce){.city-beacons,.city-signals circle,.city-flow,.city-scan,.city-buildings{animation:none}.city-scan{display:none}.service-card:hover .service-emblem{transform:none}}

/* Keep the official marks intact on one continuous neutral ribbon. */
.marquee{background:#fafbfc;padding-block:14px}.authority-logo{background:transparent;border-radius:0;height:86px}.authority-strip{padding-inline:24px}.marquee-group{gap:38px;padding-inline-end:38px}
.experience-number::after{display:none}.experience-number{padding-bottom:22px;border-bottom:1px solid var(--city);width:max-content;min-width:160px}
/* Revision 4: integrated authority ribbon, editorial experience and direct contact. */
.authority-strip{position:relative;border:0;padding:42px 24px 28px;background:linear-gradient(180deg,transparent,var(--tint),transparent)}.marquee{background:transparent;padding:20px 0;margin-top:20px;mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}.marquee-track{position:relative}.authority-logo{padding:18px 22px;width:280px;height:102px}.authority-strip::before{content:'';position:absolute;inset:78px -50px 58px;background:linear-gradient(90deg,transparent,#d9e1ea 12%,#e7ebee 50%,#d9e1ea 88%,transparent);opacity:.95;mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent);pointer-events:none}.authority-note{position:relative;margin-top:14px}.strip-heading{position:relative}.authority-logo img{max-height:64px}.authority-logo:first-child img{max-width:180px}
.company{background:transparent;border:0;max-width:1380px;padding:65px 64px;grid-template-columns:1fr 1.1fr;gap:70px}.experience-panel{position:relative;overflow:hidden;padding:34px;border:1px solid var(--line);border-radius:18px;background:radial-gradient(ellipse at 100% 0,var(--glow),transparent 65%),linear-gradient(145deg,var(--surface),var(--tint));box-shadow:var(--shadow)}.experience-panel::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 49px,var(--line) 50px 51px);opacity:.12;mask-image:linear-gradient(180deg,#000,transparent 70%);pointer-events:none}.experience-caption{position:relative;font-size:10px;letter-spacing:.13em;color:var(--muted);line-height:1.7}.experience-stat{position:relative;display:flex;align-items:center;gap:26px;margin-top:22px}.experience-stat>span{font-size:104px;line-height:1;font-weight:300;letter-spacing:-.08em;color:var(--city)}.experience-stat h3{font-size:23px;line-height:1.4;letter-spacing:-.02em}.experience-panel>p{font-size:14px;max-width:390px;margin-block:24px}.experience-tags{display:flex;flex-wrap:wrap;gap:8px}.experience-tags span{font-size:11px;padding:8px 11px;border:1px solid var(--line);border-radius:5px;background:var(--surface)}.experience-baseline{display:flex;align-items:center;gap:9px;border-top:1px solid var(--line);margin-top:28px;padding-top:20px;font-size:12px;color:var(--muted)}.about-experience{padding-top:0;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.about-experience h2{font-size:38px}.about-experience p{font-size:16px}
.contact-band{padding-block:45px 80px}.contact-panel-v2{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;border:1px solid var(--line);border-radius:18px;padding:48px;background:radial-gradient(ellipse at 5% 100%,var(--glow),transparent 65%),var(--surface);position:relative;overflow:hidden}.contact-panel-v2 h2{font-size:clamp(32px,3.4vw,46px);margin-bottom:22px}.contact-invite>p:not(.eyebrow){max-width:420px;font-size:15px;margin-bottom:26px}.contact-icon{width:19px;height:19px;flex:none;vertical-align:middle}.contact-methods{display:grid;gap:18px}.contact-person{display:grid;gap:8px;border-bottom:1px solid var(--line);padding-bottom:18px}.contact-person-label{font-size:12px;color:var(--muted)}.contact-person strong{font-size:22px;font-weight:500;text-align:start;width:max-content}.contact-actions{display:flex;gap:22px;margin-top:6px}.contact-actions a,.contact-email,.contact-location{display:flex;align-items:center;gap:9px;font-size:13px}.contact-actions a{min-height:32px}.contact-actions a:hover,.contact-email:hover{color:var(--accent)}.contact-email{font-size:16px;overflow-wrap:anywhere}.contact-location{line-height:1.6;margin:0}.contact-location .contact-icon{align-self:start;margin-top:2px}.social-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.social-links a{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:6px;padding:10px 12px;font-size:12px;min-height:42px;transition:background .2s,transform .2s}.social-links a:hover{background:var(--tint);transform:translateY(-2px)}.social-links svg{width:16px;height:16px}footer .contact-person{border-color:#324054}footer .contact-person-label{color:#a7b8cd}footer .social-links a{border-color:#324054}footer .social-links a:hover{background:#243b54}footer .footer-top>div:last-child{min-width:300px}footer .contact-location{color:#a7b8cd}.enquiry-panel .contact-methods{margin-top:26px}.enquiry-panel .social-links{gap:8px}.enquiry-panel .social-links a{padding:9px}.service-editorial h2{margin-top:45px}.service-editorial p{font-size:16px;line-height:1.9}.service-editorial details{margin-bottom:38px}.story{padding-top:60px}.about-experience .experience-panel{box-shadow:none}
@media(max-width:1100px){.company{padding-inline:40px;gap:40px}.contact-panel-v2{padding:32px;gap:32px}.experience-panel{padding:27px}.experience-stat{gap:20px}.experience-stat>span{font-size:88px}.experience-stat h3{font-size:20px}.about-experience{gap:40px}}
@media(max-width:760px){.company{padding:45px 24px;grid-template-columns:1fr;gap:35px}.contact-panel-v2{grid-template-columns:1fr;padding:28px 24px;gap:35px}.contact-band{padding-block:30px 60px}.about-experience{grid-template-columns:1fr;gap:30px}.about-experience h2{font-size:32px}.authority-strip{padding-inline:12px}.authority-logo{width:240px;height:100px}.authority-strip::before{inset-inline:-10px}.experience-caption{letter-spacing:.06em}footer .footer-top>div:last-child{min-width:0}.contact-panel-v2 .contact-methods{border-top:1px solid var(--line);padding-top:26px}.contact-invite .eyebrow{font-size:9px}.contact-person strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){.social-links a:hover{transform:none}}
/* A muted slate field supports the unmodified official colours without a white banner. */
.authority-strip::before{background:linear-gradient(90deg,transparent,#aebfce 18%,#b9c8d4 50%,#aebfce 82%,transparent);inset:80px 0 62px;mask-image:linear-gradient(180deg,transparent,#000 35%,#000 65%,transparent);opacity:.88}
:root:not([data-theme=dark]) .authority-strip::before{background:linear-gradient(90deg,transparent,#e2e9ee 18%,#e9eef2 50%,#e2e9ee 82%,transparent)}

/* Revision 5: seamless monochrome authority marks and feathered city light. */
.hero{background:transparent}.skyline{overflow:visible}.skyline svg{filter:none;overflow:visible}.city-aura{transform-origin:340px 310px;animation:city-aura 10s ease-in-out infinite}
@keyframes city-aura{0%,100%{opacity:.3;transform:scale(.88)}50%{opacity:1;transform:scale(1.04)}}
.authority-strip{background:none;border:0;box-shadow:none}.authority-strip::before{display:none}.marquee{background:none;border:0;box-shadow:none}.authority-logo{background:none;border:0;box-shadow:none}.authority-logo img{filter:brightness(0) saturate(100%);opacity:.62}
[data-theme=dark] .authority-logo img{filter:brightness(0) invert(1);opacity:.72}
.footer-top>div:first-child{max-width:590px;flex:1}.footer-resources{margin-top:34px;max-width:530px}.footer-resources nav{display:grid;grid-template-columns:1fr 1fr;gap:15px 28px;font-size:13px;color:#c5d3e3}.footer-resources a:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}.footer-resources p{font-size:12px;line-height:1.85;color:#a7b8cd;margin:30px 0 0;max-width:480px}
@media(max-width:760px){.footer-resources{margin-top:25px}.footer-resources nav{gap:14px 20px}.footer-resources p{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.city-aura{animation:none}}
/* Revision 6: original emblem colours; contrast adjustments confined to lettering. */
.authority-art{position:relative;display:block;width:236px;max-width:100%;flex:none}.authority-art.dubai{width:159px}
.authority-logo .authority-art img{display:block;width:100%;height:100%;max-width:none;max-height:none;filter:none;opacity:1;object-fit:contain}
.authority-art .authority-lettering{position:absolute;inset:0;clip-path:var(--lettering-clip);visibility:hidden}
[data-theme=dark] .authority-logo .authority-original{filter:none;opacity:1}
[data-theme=dark] .authority-logo .authority-lettering{visibility:visible;filter:brightness(0) invert(.82);opacity:1}
[data-theme=dark] .authority-logo .gold-lettering .authority-lettering{filter:brightness(1.25)}
.preparation-note{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.preparation-note h4{font-size:16px;font-weight:500;margin:0 0 12px}.enquiry-panel .preparation-note p{font-size:14px;margin-bottom:0}
/* Revision 7: soft fields, stable branding and lightweight service exploration. */
html{scrollbar-gutter:stable}html[data-theme=light]{color-scheme:only light}html[data-theme=dark]{color-scheme:only dark}
.header .brand{display:grid;grid-template-columns:145px;grid-template-rows:74px;align-items:center;justify-items:center}
.header .brand img{grid-area:1/1;display:block;width:145px;height:74px;visibility:visible}
.header .brand .logo-dark{visibility:hidden}[data-theme=dark] .header .brand .logo-light{visibility:hidden}[data-theme=dark] .header .brand .logo-dark{visibility:visible}
.page-intro{position:relative;isolation:isolate;background:none;border-bottom:0;overflow:visible;padding-bottom:75px}
.page-intro::before{content:'';position:absolute;inset:-40px 0 -40px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 72% 42%,var(--glow),transparent 66%)}
.page-intro::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,var(--city) .8px,transparent 1px);background-size:18px 18px;opacity:.18;mask-image:radial-gradient(ellipse at 85% 45%,#000,transparent 63%)}
.page-intro h1{max-width:950px}.page-intro h1::after{content:'';display:block;width:65px;height:3px;margin-top:28px;background:linear-gradient(90deg,var(--city),transparent)}
.hero::before{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,var(--city) .7px,transparent 1px);background-size:19px 19px;opacity:.17;mask-image:radial-gradient(ellipse at 77% 47%,#000,transparent 48%)}
.authority-art.det-mark{width:101px}.marquee-track{animation-duration:56s}
.service-filter-bar{padding-top:24px;padding-bottom:0}.service-filters{display:flex;flex-wrap:wrap;gap:10px}.service-filters button{background:transparent;border:1px solid var(--line);border-radius:30px;color:var(--muted);padding:12px 18px;font-size:13px;transition:background .2s,color .2s,box-shadow .2s}.service-filters button[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:transparent;box-shadow:0 5px 25px var(--glow)}.filter-count{font-size:12px;margin:20px 0 0}.service-card[hidden],.service-filter-bar[hidden]{display:none}.directory{padding-top:28px}
.journey-section{position:relative;isolation:isolate}.journey-section::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 70%,var(--tint),transparent 68%);pointer-events:none}.journey-stages{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.journey-stage{position:relative;border:0;border-top:1px solid var(--line);margin:0;padding:28px 0}.journey-stage summary{display:flex;align-items:center;gap:12px;font-size:16px;list-style:none}.journey-stage summary::-webkit-details-marker{display:none}.journey-node{width:9px;height:9px;flex:none;border-radius:50%;background:var(--city);box-shadow:0 0 0 6px var(--tint)}.journey-plus{margin-inline-start:auto;color:var(--city);font-size:24px}.journey-stage[open] .journey-plus{transform:rotate(45deg)}.journey-stage[open]{border-color:var(--city)}.journey-stage h3{font-size:24px;margin:30px 0 18px;max-width:290px}.journey-stage p{font-size:15px}.journey-stage[open] .journey-node{animation:journey-pulse 3s ease-in-out infinite}
@keyframes journey-pulse{50%{box-shadow:0 0 0 10px transparent}}@keyframes enter-section{from{opacity:.5;transform:translateY(14px)}to{opacity:1;transform:none}}.entered{animation:enter-section .65s ease both}
footer .footer-resources nav a{color:#c5d3e3}footer .footer-resources nav a:hover{color:#fff}
@media(max-width:760px){.header .brand{grid-template-columns:115px;grid-template-rows:60px}.header .brand img{width:115px;height:60px}.journey-stages{grid-template-columns:1fr;gap:0}.journey-stage{padding-block:23px}.service-filters{gap:8px}.service-filters button{padding:10px 14px;font-size:12px}.page-intro::after{opacity:.1}}
@media(prefers-reduced-motion:reduce){.entered,.journey-stage[open] .journey-node{animation:none}}
.page-intro::before{background:radial-gradient(ellipse 48% 48% at 50% 50%,var(--glow),transparent 100%)}
.page-intro::after{mask-image:radial-gradient(ellipse 48% 48% at 50% 50%,#000,transparent 100%)}
.hero::before{mask-image:radial-gradient(ellipse 45% 45% at 50% 50%,#000,transparent 100%)}
.journey-section::before{background:radial-gradient(ellipse 48% 48% at 50% 50%,var(--tint),transparent 100%)}
/* Revision 8: restrained kinetic linework and more generous small-screen rhythm. */
.ambient-art{overflow:hidden;position:absolute;inset-inline-end:8px;top:50%;width:min(43%,520px);aspect-ratio:1;transform:translateY(-50%);color:var(--city);pointer-events:none;z-index:-1;opacity:.65;mask-image:radial-gradient(ellipse,#000 48%,transparent 73%)}
.ambient-art svg{width:100%;height:100%;overflow:visible;transform:translate3d(var(--art-x,0px),var(--art-y,0px),0);transition:transform 1s ease-out}.art-orbits{transform-origin:260px 260px;animation:orbit-drift 48s linear infinite;opacity:.5}.art-ribbons{transform-origin:260px 260px;animation:ribbon-drift 18s ease-in-out infinite}.art-satellites{transform-origin:260px 260px;animation:orbit-drift 32s linear infinite}.art-core{animation:core-float 9s ease-in-out infinite}
@keyframes orbit-drift{to{transform:rotate(360deg)}}@keyframes ribbon-drift{50%{transform:rotate(-12deg) scale(.92)}}@keyframes core-float{50%{transform:translateY(-8px)}}
@media(min-width:1000px){.has-art{min-height:430px;padding-inline-end:38%}.has-art h1{font-size:clamp(40px,4.2vw,62px)}.has-art .lead{max-width:650px}.has-art .ambient-art{opacity:.72}.has-art::after{opacity:.08}}
@media(min-width:700px){.journey-stage summary{cursor:default;pointer-events:none}.journey-plus{display:none}.journey-stage[open] h3,.journey-stage[open] p{animation:enter-section .6s ease both}.journey-stage:nth-child(2){--entry-delay:.12s}.journey-stage:nth-child(3){--entry-delay:.24s}.journey-stage.entered{animation-delay:var(--entry-delay,0s)}}
@media(min-width:700px) and (max-width:1050px){.journey-stages{grid-template-columns:1fr;gap:10px}.journey-stage[open]{display:grid;grid-template-columns:1fr 1.4fr;column-gap:35px}.journey-stage summary{grid-column:1}.journey-stage h3{grid-column:1;font-size:23px;margin-top:24px}.journey-stage p{grid-column:2;grid-row:1/3;margin-top:0}.ambient-art{opacity:.24;width:55%}.has-art .lead{max-width:80%}}
@media(max-width:699px){.section{padding-block:64px}.page-intro{padding-top:48px;padding-bottom:50px}.page-intro h1{font-size:36px;line-height:1.18}.page-intro .lead{font-size:16px;line-height:1.9}.ambient-art{width:80%;top:160px;inset-inline-end:0;opacity:.14}.has-art::after{opacity:.07}.journey-stages{gap:14px}.journey-stage{padding:24px 4px}.journey-stage summary{font-size:17px;min-height:44px;gap:16px}.journey-stage h3{font-size:25px;margin-top:24px;max-width:none;line-height:1.3}.journey-stage p{font-size:16px;line-height:1.9;margin-bottom:6px}.section-heading{margin-bottom:36px}.service-grid{grid-template-columns:1fr;gap:22px}.service-card{padding:30px 26px}.service-card p{font-size:15px;line-height:1.9}.card-scope{font-size:14px}.card-scope li{margin-block:12px}.detail-layout{gap:40px}.enquiry-panel{padding:28px 24px}.contact-panel-v2{padding:30px 24px}.contact-methods{gap:24px}.contact-person{padding-bottom:24px}.experience-panel{padding:30px 24px}.why-panel{padding:32px 26px}.process-grid{gap:36px}.header nav{gap:30px}.service-filter-bar{padding-top:22px;padding-bottom:0}.directory{padding-top:30px}.hero .lead{line-height:1.9}.hero h1{line-height:1.2}html[dir=rtl] .page-intro h1{font-size:34px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){.art-orbits,.art-ribbons,.art-satellites,.art-core{animation:none}.ambient-art svg{transition:none;transform:none}.journey-stage[open] h3,.journey-stage[open] p{animation:none}}

.form-trap{position:absolute;inset-inline-start:-10000px;width:1px;height:1px;overflow:hidden}.button:disabled{opacity:.55;cursor:not-allowed}#enquiry-verification{margin-block:16px}

/* Arabic is composed independently: connected phrases, natural wrapping and a local Arabic face. */
@font-face{font-family:RAH Arabic;src:url('/assets/fonts/noto-arabic-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:RAH Arabic;src:url('/assets/fonts/noto-arabic-semibold.woff2') format('woff2');font-weight:500 700;font-display:swap}
html[lang=ar] body{font-family:'RAH Arabic','Segoe UI',Tahoma,sans-serif}
html[lang=ar] h1,html[lang=ar] h2,html[lang=ar] h3{letter-spacing:normal;line-height:1.65;text-wrap:pretty;font-weight:600}
html[lang=ar] p,html[lang=ar] li{line-height:2.05;word-break:normal;overflow-wrap:break-word}
html[lang=ar] .hero h1{font-size:clamp(34px,3.6vw,56px)}
html[lang=ar] h2{font-size:clamp(27px,2.8vw,42px)}
html[lang=ar] .eyebrow,html[lang=ar] .card-top,html[lang=ar] button{letter-spacing:normal}
html[lang=ar] .header nav{font-size:13px}html[lang=ar] .service-card h3{font-size:23px}
/* Native option popups need their own opaque colours in Firefox and Chromium. */
select,select option,select optgroup{color:var(--text);background-color:var(--surface);text-shadow:none;opacity:1}
html[data-theme=light] select{color-scheme:light}html[data-theme=dark] select{color-scheme:dark}
select option:checked{background-color:var(--tint);color:var(--text)}
.service-explorer{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:center;padding-top:30px;padding-bottom:65px}
.explorer-intro h2{font-size:clamp(30px,3vw,43px);max-width:570px}.explorer-intro>p:not(.eyebrow){font-size:15px;max-width:510px}
.explorer-choices{display:grid;margin-top:30px;gap:8px}.explorer-choice{display:flex;align-items:center;gap:17px;text-align:start;padding:17px 20px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);transition:background .25s,color .25s,border-color .25s}
.explorer-choice[aria-pressed=true]{border-color:var(--line);background:var(--surface);color:var(--text)}.step-beacon{width:7px;height:7px;background:var(--line);border-radius:50%;flex:none}.explorer-choice[aria-pressed=true] .step-beacon{background:var(--accent);box-shadow:0 0 0 5px var(--tint)}
.explorer-display{position:relative;min-width:0;isolation:isolate}.explorer-display:before{content:'';position:absolute;inset:-5%;background:radial-gradient(ellipse,var(--tint),transparent 65%);z-index:-1;pointer-events:none}.explorer-display svg{width:100%;height:auto;display:block;stroke:var(--accent);stroke-width:1.5;overflow:visible;direction:ltr}.diagram-route{stroke-dasharray:7 6;animation:route-flow 12s linear infinite;opacity:.5}.diagram-grid{stroke:var(--line);stroke-width:1;opacity:.6}.diagram-node{opacity:.35;transition:opacity .4s}.diagram-node>circle:first-child{fill:var(--surface)}.node-halo{opacity:0;transform-box:fill-box;transform-origin:center;transition:opacity .4s}.service-explorer[data-active='0'] [data-node='0'],.service-explorer[data-active='1'] [data-node='1'],.service-explorer[data-active='2'] [data-node='2']{opacity:1}.service-explorer[data-active='0'] [data-node='0'] .node-halo,.service-explorer[data-active='1'] [data-node='1'] .node-halo,.service-explorer[data-active='2'] [data-node='2'] .node-halo{opacity:.3;animation:node-breathe 3s ease-in-out infinite}
.explorer-copy{min-height:180px;padding:0 20px}.explorer-detail h3{font-size:25px}.explorer-detail p{font-size:15px}.diagram-caption{font-size:10px;letter-spacing:.12em;text-align:center;margin:24px 0 0;color:var(--muted)}html[lang=ar] .diagram-caption{letter-spacing:0}.explorer-detail[hidden]{display:none}
@keyframes route-flow{to{stroke-dashoffset:-156}}@keyframes node-breathe{50%{transform:scale(1.15);opacity:.1}}
@media(max-width:900px){.service-explorer{gap:30px}.explorer-copy{padding:0;min-height:220px}}
@media(max-width:699px){.service-explorer{grid-template-columns:1fr;gap:12px;padding-top:0}.explorer-copy{min-height:0}.explorer-display svg{max-height:210px}.explorer-choice{padding:16px}.explorer-intro h2,html[lang=ar] .explorer-intro h2{font-size:28px}html[lang=ar] .hero h1,html[lang=ar] .page-intro h1{font-size:32px;line-height:1.65}html[lang=ar] .header nav{gap:26px}html[lang=ar] .controls{gap:9px}.explorer-intro>p:not(.eyebrow){font-size:15px}}
@media(prefers-reduced-motion:reduce){.diagram-route,.node-halo{animation:none!important}}

/* Layered illustrations retain depth without a WebGL runtime. */
.service-art-layer{opacity:.42;transition:opacity .5s,filter .5s;transform-box:fill-box;transform-origin:center;animation:service-drift 9s ease-in-out infinite}
.service-art-layer:nth-child(2){animation-delay:-3s}.service-art-layer:nth-child(3){animation-delay:-6s}
.service-explorer[data-active='0'] [data-node='0'],.service-explorer[data-active='1'] [data-node='1'],.service-explorer[data-active='2'] [data-node='2']{opacity:1;filter:drop-shadow(0 3px 7px var(--tint))}
@keyframes service-drift{50%{transform:translateY(-5px)}}
@media(prefers-reduced-motion:reduce){.service-art-layer{animation:none}}

/* Refined surfaces, lightweight whole-object motion and client-facing form states. */
.art-orbits,.art-ribbons,.art-satellites,.art-core,.service-art-layer,.diagram-route{animation:none!important}
.service-art-layer{opacity:.66;transition:opacity .3s;filter:none!important}
.ambient-art svg,.explorer-display>svg{animation:sculpture-float 14s ease-in-out infinite;transform:translate3d(0,0,0);transition:none;will-change:transform}
.ambient-art{mask-image:none;overflow:visible}.sculpture-art{opacity:.8}.skyline svg,.service-emblem{filter:none}
@keyframes sculpture-float{50%{transform:translate3d(0,-7px,0)}}
.explorer-copy{min-height:145px}.explorer-display svg{stroke-width:1.1}.service-explorer{padding-bottom:45px}
#enquiry-verification{margin:0}#form-status:empty{display:none}
#form-status{margin-top:22px;padding:20px;border-inline-start:3px solid var(--accent);background:var(--tint);font-size:16px;line-height:1.8}
#enquiry-form[data-state=success] #form-status{border:1px solid #508b7955;border-radius:14px;padding:30px;background:linear-gradient(120deg,#509a791c,var(--surface));text-align:center;animation:confirmation-in .45s ease-out}
#form-status strong{display:block;font-size:25px;color:var(--text)}#form-status p{margin:12px auto 0;max-width:470px;font-size:16px}
.success-mark{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 18px;border:1px solid #508b7980;border-radius:50%;background:#508b791a;color:var(--text);font-size:30px;animation:confirmation-in .5s ease-out}
#enquiry-form[data-state=sending] button[type=submit]::after{content:'';display:inline-block;width:15px;height:15px;margin-inline-start:15px;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:send-spin .8s linear infinite}
@keyframes send-spin{to{transform:rotate(360deg)}}@keyframes confirmation-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
footer{position:relative;background:var(--bg);color:var(--text);border-top:1px solid var(--line);padding-top:38px;overflow:hidden}footer:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 85% 0,var(--tint),transparent 65%)}
footer>div{position:relative}footer p,footer .eyebrow,footer .contact-person-label,footer .contact-location,footer .footer-bottom,footer .footer-license{color:var(--muted)}footer .footer-resources nav a,footer .contact-actions a,footer .contact-email,footer .social-links a{color:var(--text)}
.footer-signature{display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding:0 0 28px;margin-bottom:38px;direction:ltr}.footer-signature>span{font-size:clamp(24px,4vw,52px);letter-spacing:.14em;font-weight:500;color:var(--city)}.footer-signature svg{width:180px;height:65px;stroke:var(--city);stroke-width:1;flex:none}
footer h2{font-size:clamp(28px,3vw,40px);max-width:580px}footer .footer-top{gap:70px;padding-bottom:32px}footer .footer-resources{margin-top:28px}footer .footer-resources nav{gap:18px 35px}footer .contact-person{padding-bottom:16px}footer .contact-methods{gap:16px}
footer .footer-license{border-block:1px solid var(--line);padding:20px 0;align-items:center;gap:12px 28px}footer .footer-license strong{font-size:15px;color:var(--text)}footer .footer-license strong:before{content:'◇';color:var(--city);margin-inline-end:12px}footer .footer-bottom{border:0;padding-top:20px}footer .social-links a{border-color:var(--line)}footer .footer-resources nav a:hover{color:var(--city)}
@media(max-width:699px){.footer-signature svg{width:90px}.footer-signature>span{font-size:20px;letter-spacing:.09em}footer .footer-top{gap:30px}.explorer-copy{min-height:0}.ambient-art svg,.explorer-display>svg{animation:none;will-change:auto}#form-status strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){.ambient-art svg,.explorer-display>svg{animation:none!important;will-change:auto}}
@media(max-width:999px){.sculpture-art{opacity:.13}}
/* Gecko: keep the detailed SVG crisp and avoid continuous SVG rasterisation.
   Stage selection remains interactive through opacity transitions. */
@supports (-moz-appearance:none){.ambient-art svg,.explorer-display>svg{animation:none!important;will-change:auto;transform:none}.service-art-layer{transition:opacity .2s}.skyline svg{filter:none}}
/* Chromium/WebKit retain motion at every viewport size. Gecko keeps its fallback. */
@supports not (-moz-appearance:none){
 @media(prefers-reduced-motion:no-preference){
  .ambient-art svg,.explorer-display>svg{animation:sculpture-float 9s ease-in-out infinite;will-change:transform}
  .service-art-layer{animation:service-drift 7s ease-in-out infinite!important;animation-delay:0s!important}
  .service-art-layer[data-node="1"]{animation-delay:-2.3s!important}
  .service-art-layer[data-node="2"]{animation-delay:-4.6s!important}
 }
}

/* Orbital study: independent ring movement, with a stable readable centre. */
@supports not (-moz-appearance:none){
 @media(prefers-reduced-motion:no-preference){
  .ambient-art .art-orbits{animation:orbit-drift 48s linear infinite!important}
  .ambient-art .art-ribbons{animation:ribbon-drift 18s ease-in-out infinite!important}
  .ambient-art .art-satellites{animation:orbit-drift 32s linear infinite!important}
  .ambient-art .art-core{animation:core-float 9s ease-in-out infinite!important}
  .ambient-art{transform:translateY(-50%) perspective(900px) translate3d(var(--mouse-x,0px),var(--mouse-y,0px),0) rotateX(var(--mouse-rx,0deg)) rotateY(var(--mouse-ry,0deg));transition:transform .65s cubic-bezier(.2,.7,.2,1)}
 }
}

/* Navigation states: active marker is separate from keyboard focus. */
.header nav a{position:relative;box-shadow:none!important;border:0;border-radius:5px;white-space:nowrap}
.header nav a:focus:not(:focus-visible){outline:none}
.header nav a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.header nav a::after{content:'';position:absolute;inset-inline:10%;bottom:6px;height:2px;border-radius:2px;background:var(--city);transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
.header nav a[aria-current=page]::after,.header nav a:hover::after{transform:scaleX(1)}
.case-library{padding-top:25px;padding-bottom:85px}.case-empty{border-top:1px solid var(--line);padding:45px 0;display:grid;grid-template-columns:80px 1fr;gap:12px 30px;align-items:center;max-width:950px}.case-empty svg{width:72px;height:72px;stroke:var(--city);stroke-width:1;grid-row:span 2;background:radial-gradient(ellipse,var(--tint),transparent 70%)}.case-empty h2{font-size:clamp(24px,2.4vw,34px)}.case-empty p{margin:0;max-width:620px}.case-entry{padding:35px 0;border-top:1px solid var(--line)}
@media(max-width:1200px){.header{gap:18px}.header nav{gap:18px}}
@media(max-width:760px){.header nav,html[lang=ar] .header nav{display:flex;justify-content:space-between;gap:6px;width:100%;font-size:12px;text-align:center}.header nav a{padding:17px 0}.header nav a:focus-visible{outline-offset:-3px}.case-empty{grid-template-columns:1fr;gap:18px;padding-top:32px}.case-empty svg{grid-row:auto;width:62px;height:62px}.case-library{padding-bottom:55px}}

.attachment-field{margin-top:24px;padding:24px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.attachment-field label{display:block;margin-bottom:14px}.attachment-field input[type=file]{width:100%;max-width:100%;padding:0;border:0;background:transparent;color:var(--muted);font-size:14px}.attachment-field input::file-selector-button{border:1px solid var(--line);border-radius:5px;background:var(--tint);color:var(--text);padding:10px 15px;margin-inline-end:12px;cursor:pointer;font:inherit}.attachment-field .form-note{margin-bottom:0}#attachment-status{font-size:13px;overflow-wrap:anywhere}#attachment-status:empty{display:none}#clear-attachments{border:0;padding:8px 0;background:transparent;color:var(--text);font:inherit;font-size:13px;text-decoration:underline}#clear-attachments[hidden]{display:none}
.attachment-field .file-picker{display:inline-flex;border:1px solid var(--line);border-radius:6px;background:var(--tint);color:var(--text);padding:12px 18px;font:inherit;font-size:14px;cursor:pointer}.attachment-field input.sr-only{width:1px;height:1px;padding:0}.file-picker:hover{border-color:var(--city)}
/* Comfortable attachment rhythm and clearer primary navigation. */
.attachment-field{padding:26px}.attachment-field .file-picker{margin-top:4px}.attachment-field #attachment-help{margin:18px 0 0;line-height:1.8}.attachment-field #attachment-status:not(:empty){margin-top:16px}
.header nav{font-size:16px;gap:22px}.header nav a{padding:16px 8px;min-height:48px;display:inline-flex;align-items:center;justify-content:center}html[lang=ar] .header nav{font-size:15px}
@media(min-width:761px) and (max-width:1100px){.header nav,html[lang=ar] .header nav{font-size:14px;gap:10px}.header nav a{padding-inline:4px}}
@media(max-width:760px){.header nav,html[lang=ar] .header nav{font-size:13px;gap:4px}.header nav a{min-height:48px;padding:14px 2px}.attachment-field{padding:22px}}
@media(max-width:350px){.header nav,html[lang=ar] .header nav{font-size:12px}}

/* Client information: editorial reading layout and purposeful footer navigation. */
.legal-intro{padding-bottom:35px}.legal-intro .lead{max-width:720px}.legal-date{font-size:13px;margin:0;color:var(--muted)}
.legal-layout{display:grid;grid-template-columns:240px minmax(0,760px);gap:70px;align-items:start;padding-top:30px}
.legal-contents{position:sticky;top:30px;border-inline-start:1px solid var(--line);padding-inline-start:22px}.legal-contents .eyebrow{margin-bottom:14px}
.legal-contents nav{display:flex;flex-direction:column;gap:0;font-size:13px}.legal-contents a{padding:8px 0;line-height:1.6}.legal-contents a:hover{color:var(--accent)}
.legal-section{scroll-margin-top:30px;padding-bottom:32px;margin-bottom:34px;border-bottom:1px solid var(--line)}.legal-section h2,.legal-references h2{font-size:26px;letter-spacing:-.025em;line-height:1.35;margin-bottom:22px}.legal-section p{font-size:16px;line-height:1.95;margin:0 0 18px}.legal-section p:last-child{margin-bottom:0}
.legal-body a,.privacy-link a{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--city);overflow-wrap:anywhere}.legal-body a:hover,.privacy-link a:hover{color:var(--accent)}
.legal-references{padding:25px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.legal-references li{margin:12px 0;font-size:14px;line-height:1.7;color:var(--muted)}.legal-references ul{padding-inline-start:20px}.legal-next{display:flex;flex-wrap:wrap;gap:20px 35px;padding-top:32px;font-size:14px}
footer .footer-top>div:first-child{max-width:730px}footer .footer-resources{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}footer .footer-resources h3{font-size:13px;letter-spacing:.03em;color:var(--city);font-weight:600;margin-bottom:16px}footer .footer-resources nav{display:flex;flex-direction:column;gap:0;font-size:14px}footer .footer-resources nav a{padding-block:10px;min-height:42px;line-height:1.6}footer .footer-top{gap:65px}footer .footer-signature{margin-bottom:32px}
@media(max-width:1000px){.legal-layout{grid-template-columns:190px minmax(0,1fr);gap:35px}}
@media(max-width:760px){.legal-layout{display:block;padding-top:10px}.legal-contents{position:static;padding:20px;margin-bottom:40px;border:1px solid var(--line);border-radius:10px}.legal-contents nav{display:grid;grid-template-columns:1fr 1fr;gap:3px 20px}.legal-contents a{font-size:12px}.legal-section h2,.legal-references h2{font-size:23px}.legal-section p{font-size:15px;line-height:2}.legal-intro h1{font-size:36px}footer .footer-resources{gap:20px}footer .footer-resources nav{font-size:13px}footer .footer-top{gap:36px}.legal-section{padding-bottom:24px;margin-bottom:28px}}

html[lang=ar] .legal-section h2,html[lang=ar] .legal-references h2{font-size:27px;line-height:1.6}
@media(max-width:760px){html[lang=ar] .legal-section h2,html[lang=ar] .legal-references h2{font-size:23px}html[lang=ar] .header nav{font-size:13px;gap:4px}}
@media(max-width:350px){html[lang=ar] .header nav{font-size:12px}}

/* Legal pages: bespoke sculptures share the quiet motion and readable type system. */
@media(min-width:1000px){.legal-intro.has-art{min-height:430px;padding-bottom:65px}.legal-intro .legal-art{width:36%;max-width:480px;inset-inline-end:22px;opacity:.76}.legal-intro.has-art .lead{max-width:660px}.legal-intro.has-art h1{font-size:clamp(40px,4.2vw,62px)}}
@media(min-width:700px) and (max-width:999px){.legal-intro .legal-art{width:43%;opacity:.14}}
@media(max-width:699px){.legal-intro .legal-art{width:75%;top:145px;inset-inline-end:0;opacity:.12}}

/* Crawlable breadcrumbs and the production language-entry / missing-page layout. */
nav.breadcrumb{display:flex;flex-wrap:wrap;gap:7px 10px;align-items:center;font-size:12px;line-height:1.7;margin-bottom:26px;color:var(--muted)}nav.breadcrumb a{padding:4px 0;text-decoration:none;box-shadow:none}nav.breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}nav.breadcrumb [aria-current]{color:var(--text)}
.entry-page{min-height:100svh;display:grid;place-items:center;padding:35px 24px;background:radial-gradient(ellipse at 75% 20%,var(--glow),transparent 60%)}.entry-panel{width:min(100%,820px);padding:clamp(25px,6vw,72px);border:1px solid var(--line);border-radius:18px;background:var(--nav);box-shadow:var(--shadow)}.entry-logo{margin-bottom:30px}.entry-logo img{object-fit:contain}.entry-panel h1{font-size:clamp(32px,5vw,60px)}.entry-panel>p[lang=ar]{font-size:20px;line-height:1.9;margin:28px 0}.entry-panel .actions{margin-top:30px}#enquiry-form :disabled{cursor:wait}#enquiry-form[data-state=sending] :is(input,select,textarea){opacity:.7}

/* Optional service context uses the same form spacing and native controls. */
.enquiry-topic[hidden]{display:none}

/* Bilingual free-zone marks: original emblems and seamless official variants. */
.authority-logo{height:126px;padding:16px 18px}
.authority-art.afz-mark{width:236px}.authority-art.dafz-mark{width:228px}.authority-art.jafza-mark{width:144px}
.authority-logo .authority-art .authority-reverse{display:none}
[data-theme=dark] .authority-logo .authority-art .authority-positive{display:none}
[data-theme=dark] .authority-logo .authority-art .authority-reverse{display:block}
.marquee-track{animation-duration:77s}
