/* ============================================================
Shuraa Business Setup — Components (Part 2)
CostEstimator, Founder, GlobalOffices, ConsultationForm, Footer, Fab
============================================================ */
// ============================================================
// Cost Estimator — multi-step with live indicative range
// ============================================================
const EST_STEPS = ["Jurisdiction", "Activity", "Visas & office", "You"];
const JUR_OPTIONS = [
{ key: "mainland", label: "Mainland (DED)", sub: "Trade with the local UAE market" , base: [12000, 40000] },
{ key: "freezone", label: "Free zone", sub: "100% ownership, sector-specific zones", base: [17900, 35000] },
{ key: "offshore", label: "Offshore", sub: "Holding / international trading only", base: [14000, 22000] },
{ key: "unsure", label: "Not sure yet", sub: "We'll recommend at consultation", base: [12000, 40000] },
];
const ACT_OPTIONS = [
{ key: "consult", label: "Consultancy / professional services", mult: 1.0 },
{ key: "trade", label: "General trading / e-commerce", mult: 1.15 },
{ key: "tech", label: "Tech / software / digital", mult: 1.05 },
{ key: "media", label: "Media / advertising / production", mult: 1.1 },
{ key: "health", label: "Healthcare (DHA / DoH)", mult: 1.45 },
{ key: "industrial", label: "Industrial / manufacturing", mult: 1.5 },
];
const OFFICE_OPTIONS = [
{ key: "flexi", label: "Flexi-desk / shared", add: 0 },
{ key: "service", label: "Serviced office", add: 18000 },
{ key: "fitted", label: "Fitted commercial", add: 45000 },
];
function CostEstimator() {
const [step, setStep] = useState(0);
const [jur, setJur] = useState("freezone");
const [act, setAct] = useState("consult");
const [visas, setVisas] = useState(2);
const [office, setOffice] = useState("flexi");
const [name, setName] = useState("");
const [email, setEmail] = useState("");
const calc = useMemo(() => {
const j = JUR_OPTIONS.find(o => o.key === jur) || JUR_OPTIONS[0];
const a = ACT_OPTIONS.find(o => o.key === act) || ACT_OPTIONS[0];
const o = OFFICE_OPTIONS.find(x => x.key === office) || OFFICE_OPTIONS[0];
const visaCost = visas * 4500;
const lo = Math.round((j.base[0] * a.mult + visaCost + o.add) / 100) * 100;
const hi = Math.round((j.base[1] * a.mult + visaCost + o.add) / 100) * 100;
return { lo, hi };
}, [jur, act, visas, office]);
const fmt = n => n.toLocaleString("en-AE");
return (
Indicative cost estimator
Get a realistic range in under a minute — no email gate.
Government and free-zone fees change frequently. This is a starting indicative range , not a quote. A consultant confirms the final figure at handoff.
{/* LEFT: form */}
{EST_STEPS.map((s, i) => (
{i < step ? "✓" : i + 1}
{s}
))}
{step === 0 && (
<>
Where would you like to set up?
Pick a jurisdiction — or "Not sure yet" and we'll recommend at consultation.
{JUR_OPTIONS.map(o => (
setJur(o.key)}>
{o.label}
{o.sub}
))}
>
)}
{step === 1 && (
<>
What's your business activity?
Activity drives the licence type, approvals and fee bands.
{ACT_OPTIONS.map(o => (
setAct(o.key)}>
{o.label}
))}
>
)}
{step === 2 && (
<>
Visas & office
Both adjust the indicative total. You can change either later.
Number of visas
Investor, employee & family combined
setVisas(Math.max(0, visas - 1))} aria-label="Decrease">−
{visas}
setVisas(Math.min(15, visas + 1))} aria-label="Increase">+
{OFFICE_OPTIONS.map(o => (
setOffice(o.key)}>
{o.label}
))}
>
)}
{step === 3 && (
<>
Who should we send this to?
An advisor will confirm the range and walk you through next steps. We never share your details.
Your name
setName(e.target.value)}
placeholder="Maria Petrova"
style={{ background: "rgba(255,255,255,0.06)", borderColor: "rgba(255,255,255,0.15)", color: "#fff" }}
/>
Email
setEmail(e.target.value)}
placeholder="maria@example.com"
style={{ background: "rgba(255,255,255,0.06)", borderColor: "rgba(255,255,255,0.15)", color: "#fff" }}
/>
>
)}
setStep(Math.max(0, step - 1))} disabled={step === 0} style={{ opacity: step === 0 ? 0.3 : 1 }}>
← Back
{step < EST_STEPS.length - 1 ? (
setStep(step + 1)}>
Continue
) : (
alert("This is an indicative range. In production this would route to a consultant + pre-fill WhatsApp.")}>
Send to a consultant
)}
{/* RIGHT: live panel */}
Indicative range, updating live
Your estimated UAE setup
AED
{fmt(calc.lo)}
—
{fmt(calc.hi)}
Indicative · not a quote. Government & free-zone fees change. Bank deposits, NOC fees and activity-specific approvals can shift the final number. Confirmed by a Shuraa advisor.
Jurisdiction
{(JUR_OPTIONS.find(o => o.key === jur) || {}).label}
Activity
{(ACT_OPTIONS.find(o => o.key === act) || {}).label}
Visas
{visas} {visas === 1 ? "visa" : "visas"}
Office
{(OFFICE_OPTIONS.find(o => o.key === office) || {}).label}
);
}
// ============================================================
// Founder block
// ============================================================
function FounderBlock() {
return (
Founder & Chairman
Saeed Khalifa Mohammed Al Fuqaei
Emirati entrepreneur · Founded Shuraa, 23 September 2001
A 25-year UAE story
"We started with a typing centre in Dubai in 1997 and built Shuraa, brick by brick, into the firm we needed when we first arrived ourselves."
Under Managing Partner Shahid Rather (appointed 2020), Shuraa opened regional hubs in London and Amsterdam, and grew the team to ~300 across 10+ offices. Today it serves founders, SMEs and multinationals across the GCC, India, Europe, the UK, and Russia / China-facing markets.
1997
Dubai typing centre
The seed of the company.
2001 · 23 Sep
Shuraa founded
Shuraa Management & Consultancy incorporated in Dubai.
2020
Shahid Rather, MP
London + Amsterdam hubs follow.
2023 · 26 Dec
4,000th Dubai company
Milestone reported by Gulf News.
Marketing claims of "100,000+ clients served" are Shuraa's own figures, not independently audited. Conservative anchors used here are externally citable.
);
}
// ============================================================
// Global Offices
// ============================================================
const OFFICES = [
{
flag: "🇦🇪", city: "Dubai", country: "United Arab Emirates",
img: "media/location-dubai.webp",
addr: "5th Floor, Aspin Commercial Tower, near Financial Centre Metro, Sheikh Zayed Road, Dubai",
phone: "+971 50 777 5554", tollFree: "800 748722", email: "info@shuraa.com",
hq: true, badge: "UAE HQ",
},
{
flag: "🇬🇧", city: "London", country: "United Kingdom",
img: "media/location-london.webp",
addr: "Chiswick · shuraa.co.uk",
phone: "+44 7538 205604", email: "uk@shuraa.com",
division: "Shuraa UK division — verify before publishing.",
},
{
flag: "🇳🇱", city: "Amsterdam", country: "Netherlands",
img: "media/location-mumbai.webp",
addr: "Regional hub · address TBC",
division: "Confirm office address at build time.",
},
{
flag: "🇮🇳", city: "New Delhi", country: "India",
img: "media/location-delhi.webp",
addr: "shuraa.in · separate division",
division: "Shuraa India division — distinct contact.",
},
];
function GlobalOffices() {
return (
Where to find us
UAE-HQ & three global regional hubs.
The UAE entity (shuraa.com) is the primary point of contact. UK, NL and India divisions are distinct legal entities — we don't merge their contacts.
{OFFICES.map((o, i) => (
{o.badge &&
{o.badge}
}
{o.flag} {o.country}
{o.city}
{o.addr}
{o.tollFree &&
Toll-free {o.tollFree}
}
{o.phone &&
{o.tollFree ? "WhatsApp" : "Phone"} {o.phone}
}
{o.email &&
Email {o.email}
}
{o.division && !o.email &&
{o.division}
}
))}
);
}
// ============================================================
// Consultation form
// ============================================================
function ConsultationForm() {
const [submitted, setSubmitted] = useState(false);
return (
Talk to a Shuraa advisor
Free consultation. One call, the whole journey mapped.
In 20–30 minutes, an advisor will recommend the right jurisdiction, an indicative cost range, and the exact sequence of steps from formation to bank account.
);
}
// ============================================================
// Footer
// ============================================================
function Footer() {
return (
Shuraa Business Setup — the UAE arm of the Shuraa Group (Shuraa Management & Consultancy). Helping founders set up in Dubai & the UAE since 23 September 2001.
UAE entity primary · UK / NL / India divisions distinct
© 2026 Shuraa Management & Consultancy · Mock design, not an official communication
);
}
// ============================================================
// Fab — sticky WhatsApp
// ============================================================
function Fab() {
return (
);
}
Object.assign(window, {
CostEstimator, FounderBlock, GlobalOffices, ConsultationForm, Footer, Fab,
EST_STEPS, JUR_OPTIONS, ACT_OPTIONS, OFFICE_OPTIONS, OFFICES,
});