/* global React */ /* ---------- inline icons (rounded, friendly) ---------- */ const Ico = { Globe: () => , Heart: () => , Sun: () => , Spark: () => , Shield: () => , Users: () => , Smile: () => , Coin: () => }; /* ============================================================ HomeHero โ€” joyful, with floating shapes + avatar cluster ============================================================ */ function HomeHero() { return (
{/* background blobs */}
๐ŸŒด Boutique EOR ยท LatAm & the Caribbean

Hire happy
humans ,
not headcount.

Midorick is a boutique Employer of Record helping growing companies build dedicated, happy teams across LatAm & the Caribbean โ€” without the compliance headaches.

{/* visual cluster โ€” playful globe with role chips */}
); } /* ============================================================ HomeRoles โ€” softer card grid with colored icon swatches ============================================================ */ function HomeRoles() { const roles = [ { ico: "Users", tone: "mint", t: "Software developers", n: "Full-stack ยท mobile ยท QA" }, { ico: "Smile", tone: "peach", t: "Customer service agents", n: "Bilingual ยท 24/5 coverage" }, { ico: "Spark", tone: "butter", t: "Data analysts", n: "SQL ยท BI ยท ops reporting" }, { ico: "Heart", tone: "sky", t: "Graphic designers", n: "Brand ยท web ยท production" }, { ico: "Coin", tone: "lilac", t: "Accountants", n: "US GAAP ยท bookkeeping" }, { ico: "Sun", tone: "mint", t: "Marketing specialists", n: "Paid ยท content ยท lifecycle" }, { ico: "Globe", tone: "peach", t: "Recruiters", n: "Sourcing ยท screening" }, { ico: "Shield", tone: "sky", t: "Ops & back-office", n: "Admin ยท finance ops ยท VAs" }]; return (
โœจ Eight roles, one trusted pipeline

Real people. Carefully matched.

English-fluent professionals, screened on technical skill, communication, and culture-fit โ€” ready to plug into your team in two to four weeks.

{roles.map((r, i) => { const Icon = Ico[r.ico]; return (
{r.t}

{r.n}

); })}
); } /* ============================================================ HomeWhyNearshore โ€” soft mint section with playful cards ============================================================ */ function HomeWhyNearshore() { const cards = [ { ico: "Users", tone: "mint", t: "Talented & prepared", d: "Cheerful, hospitable, and trained โ€” ready to innovate alongside your team from day one." }, { ico: "Sun", tone: "butter", t: "Same-day collaboration", d: "AST year-round. 9am Eastern actually means 9am Eastern โ€” for everyone on the call." }, { ico: "Coin", tone: "peach", t: "Tariff-free flow", d: "No import/export tariff between the DR and foreign countries on goods or services." }, { ico: "Spark", tone: "sky", t: "Stable, fast-growing", d: "The fastest-growing economy in the region, with a stable government and a young workforce." }, { ico: "Globe", tone: "lilac", t: "English fluency", d: "English is taught as a second language across the country. Customers won't notice the handoff." }, { ico: "Heart", tone: "mint", t: "Boutique by design", d: "We stop growing at the size where every client still gets a name, not a ticket." }]; return (
๐ŸŒŽ Why nearshore

The Republic of Talent.

Six reasons companies choose LatAm & the Caribbean โ€” and one reason they choose Midorick.

{cards.map((c, i) => { const Icon = Ico[c.ico]; return (

{c.t}

{c.d}

); })}
); } /* ============================================================ HomeHowWeWork โ€” friendly stepped cards with connectors ============================================================ */ function HomeHowWeWork() { const steps = [ { n: "01", emoji: "๐Ÿ‘‚", t: "We Listen", d: "Two calls, no pitch deck. We learn the role, the team, the timezone, the deal-breakers." }, { n: "02", emoji: "๐Ÿ”Ž", t: "We Source", d: "Active candidate search across our LatAm & Caribbean networks โ€” not a database scrape." }, { n: "03", emoji: "๐Ÿงช", t: "We Screen", d: "Technical, cultural, and language assessment before a single CV reaches your inbox." }, { n: "04", emoji: "๐Ÿค", t: "You Select", d: "Three to five vetted candidates. You interview. You decide. We move at your pace." }, { n: "05", emoji: "๐ŸŽ‰", t: "We Hire & Onboard", d: "Full Employer-of-Record setup: contract, benefits, payroll, equipment, day-one ready." }, { n: "06", emoji: "๐Ÿ’š", t: "We Support", d: "Ongoing HR, engagement, and compliance. Quarterly reviews. Annual raises. Real retention." }]; return (
๐ŸŒŸ How we work

From brief to first paycheck
in twenty-one days.

{steps.map((s) =>
{s.emoji}
STEP / {s.n}
{s.t}

{s.d}

)}
); } /* ============================================================ HomeChallengesSolved โ€” soft peach panel ============================================================ */ function HomeChallengesSolved() { const items = [ "Limited access to a vast talent pool.", "Shortage of qualified candidates.", "High employee costs.", "Time zone difference.", "Language and culture barrier.", "Inefficient recruiting and admin process.", "Risk of hiring permanent contractors.", "Juggling payroll, onboarding, and culture-fit."]; return (
๐Ÿ’ช Your challenges, solved

The eight things keeping you
from hiring abroad.

Each one is a Tuesday afternoon for us. We've solved them, written them down, and now run the playbook for every client we take.

    {items.map((x, i) =>
  • โœ“ {x}
  • )}
); } /* ============================================================ HomeClients โ€” animated marquee ============================================================ */ function HomeClients() { const list = ["ELLSWORTH", "NGAGE TALENT", "EWI RECRUITMENT", "+ 40 MORE"]; const doubled = [...list, ...list, ...list, ...list]; return (
๐Ÿค Trusted since 2020

Scale-ups & mid-market companies who pick us โ€” and stay.

{doubled.map((c, i) =>
{c}
)}
); } /* ============================================================ HomeTestimonials โ€” client feedback carousel ============================================================ */ function HomeTestimonials() { const testimonials = [ { quote: "The Midorick team is a joy to work with. They show a sense of urgency, and do a great job finding the best candidates to interview. We were able to stand up 6 DR resources in a month in a half with the help of the Midorick team.", client: "Verified Client", sector: "Technology Sector", source: "Annual Customer Satisfaction Survey, April 2026" }, { quote: "The Midorick team is very professional and kind and has been very helpful with our requests. Their Dave and Busters event was also a big hit with my team!", client: "Verified Client", sector: "Technology Sector", source: "Annual Customer Satisfaction Survey, April 2026" }, { quote: "Jean has been great to work with and he found 2 great candidates very early in the process. I was very impressed!", client: "Verified Client", sector: "Technology Sector", source: "Annual Customer Satisfaction Survey, April 2026" } ]; const [current, setCurrent] = React.useState(0); const [paused, setPaused] = React.useState(false); const count = testimonials.length; React.useEffect(() => { if (paused) return; const timer = setInterval(() => { setCurrent(c => (c + 1) % count); }, 6000); return () => clearInterval(timer); }, [paused, count]); const go = (dir) => { setCurrent(c => (c + dir + count) % count); }; return (
setPaused(true)} onMouseLeave={() => setPaused(false)}>
๐Ÿ’ฌ What our clients say

Don't take our word for it.

{/* slides */}
{testimonials.map((t, i) => (
"

{t.quote}

โ˜…
{t.client}
{t.sector}
Source: {t.source}
))}
{/* controls */}
{/* dots */}
{testimonials.map((_, i) => (
{/* arrows */}
); } /* ============================================================ HomeQuote โ€” soft butter card ============================================================ */ function HomeQuote() { return (
๐Ÿ’ฌ From a five-year client

"We hired four engineers and a designer through Midorick over two years. Same five people are still here. That has never been our experience with a staffing partner before โ€” and it's the only reason we'd recommend one."

VP
VP of Engineering
Mid-market SaaS ยท client since 2021
); } /* ============================================================ HomeCTA โ€” friendly mint band with floating shapes ============================================================ */ function HomeCTA() { return (
๐ŸŽฏ Ready when you are

Save 38% on hiring costs.
Keep the team you love.

A 30-minute consult, no pitch deck. Bring a role, a headcount plan, or just a question โ€” and we'll give you our honest read.

); } /* ============================================================ HeroGlobe โ€” playful spinning globe with role chips orbiting ============================================================ */ function HeroGlobe() { // Role chips placed around the globe at fixed angles + radii. // Each has a small dot color and a hint of where the talent role lives. const roles = [ { t: "Automation Engineer", n: "RPA ยท workflow", a: -90, r: 0.85, tone: "amber", trending: true }, { t: "Jr. AI Associate", n: "Prompt ยท ops", a: -45, r: 0.95, tone: "deep", trending: true }, { t: "Accountants", n: "US GAAP ยท books", a: 90, r: 0.85, tone: "amber" }, { t: "Finance", n: "FP&A ยท controls", a: 45, r: 0.95, tone: "deep" }, { t: "HR", n: "People ops", a: 0, r: 0.85, tone: "amber" }, { t: "Customer Service", n: "Bilingual ยท 24/5", a: 135, r: 0.95, tone: "deep" }, { t: "Admin", n: "EA ยท back-office", a: 180, r: 0.85, tone: "amber" }, { t: "Marketing", n: "Content ยท lifecycle", a: 225, r: 0.95, tone: "deep" }]; return (
{/* role chips, absolutely placed around the globe */} {roles.map((r, i) => { const rad = r.a * Math.PI / 180; const x = 50 + Math.cos(rad) * 50 * r.r; const y = 50 + Math.sin(rad) * 50 * r.r; return (
{r.trending && Trending }
{r.t}
{r.n}
); })} {/* the globe itself */}
{/* meridians + parallels */} {/* equator + parallels */} {/* meridians */} {/* outer ring */} {/* Continents โ€” dotted-map style for a globe */} {/* dotted texture */} {/* Americas-centered land masses, filled with the dot pattern */} {/* North America */} {/* Central America narrow strip โ†’ Panama */} {/* South America */} {/* Greenland */} {/* Africa (peeking in on the right) */} {/* Western Europe (small, peeking) */}
{/* orbit rings around the globe */}
{/* sparkles */}
); } Object.assign(window, { HomeHero, HomeRoles, HomeWhyNearshore, HomeHowWeWork, HomeChallengesSolved, HomeClients, HomeTestimonials, HomeQuote, HomeCTA, HeroGlobe });