{"id":3889,"date":"2026-03-09T16:41:12","date_gmt":"2026-03-09T16:41:12","guid":{"rendered":"https:\/\/3vfltd.com\/?page_id=3889"},"modified":"2026-10-10T21:53:24","modified_gmt":"2026-10-10T21:53:24","slug":"our-team","status":"publish","type":"page","link":"https:\/\/3vfltd.com\/our-team\/","title":{"rendered":"Team"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3889\" class=\"elementor elementor-3889\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-08aaac9 e-con-full overflow-hidden e-flex wcf-starter-animations-none e-con e-parent\" data-id=\"08aaac9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div data-flexitype-wrapper-link=\"{&quot;url&quot;:&quot;https:\\\/\\\/www.youtube.com\\\/watch?v=gb-UT87IOhc&quot;,&quot;is_external&quot;:&quot;&quot;,&quot;nofollow&quot;:&quot;&quot;}\" style=\"cursor: pointer\" class=\"elementor-element elementor-element-6bb8d97 elementor-widget elementor-widget-txwpc-banner-two\" data-id=\"6bb8d97\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"txwpc-banner-two.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\r\n        <div class=\"tOri_banner_two swiper slide_three\">\r\n            <div class=\"swiper-wrapper\">\r\n                            <div class=\"tOri_banner_two-area swiper-slide\">\t\r\n                    <div class=\"tOri_banner_two-area-image lazyload\" style=\"background-image: url(https:\/\/3vfltd.com\/wp-includes\/images\/blank.gif)\" data-background-image=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/ChatGPT-Image-Mar-13-2026-10_12_24-AM.png\"><\/div>\r\n                    <div class=\"container\">\r\n                        <div class=\"row align-items-center\">\r\n                            <div class=\"col-xl-12\">\r\n                                <div class=\"tOri_banner_two-content\">\r\n                                                                                                                                                <div class=\"tOri_banner_two-content-bottom\">\r\n                                                                                    <div class=\"banner-content-button\">\r\n                                                <a class=\"flexitype-button right\" href=\"\/services\/\">\r\n                                                    READ MORE                                                                                                            <i class=\"flaticon flaticon-right-up\"><\/i>\r\n                                                                                                    <\/a>\r\n                                            <\/div>\r\n                                                                                                                            <div class=\"tOri_banner_two-video\">\r\n                                                <div class=\"play-video-icon video video-pulse\">\r\n                                                    <a class=\"video-popup\" href=\"https:\/\/www.youtube.com\/watch?v=SZEflIVnhH8\" target=\"_blank\" rel=\"noopener\">\r\n                                                        <i class=\"fa fa-play\"><\/i>\r\n                                                    <\/a>\r\n                                                <\/div>\r\n                                                                                            <\/div>\r\n                                                                            <\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n                            <\/div>\r\n        <\/div>\r\n            \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-832f4db e-con e-atomic-element e-flexbox-base e-default-div e-cce2649 \" data-id=\"832f4db\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"832f4db\" data-e-type=\"e-flexbox\" data-id=\"832f4db\">\n    \t\t<div class=\"elementor-element elementor-element-c3aaba9 elementor-widget elementor-widget-html\" data-id=\"c3aaba9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!doctype html>\n<meta charset=\"utf-8\">\n<title>3VF Team Page<\/title>\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@300;400;500;600;700;800&family=Allura&display=swap\" rel=\"stylesheet\">\n\n<style>\n  \/* =====================================================================\n     3VF LTD \u2014 Team page\n     Every rule is scoped under .vf-team so nothing leaks into the theme's\n     header, footer or other blocks. Paste into a full-width Custom HTML\n     block (Elementor: HTML widget inside a full-width section).\n     The page rides like an escalator: twin escalators carry the team in the\n     hero, and every department is a flight of steps that rises as you\n     scroll down and settles flat again as you scroll back up.\n     ===================================================================== *\/\n\n  \/* Only when this file is opened on its own: drop the browser's default 8px\n     page margin. Inside WordPress this never matches. *\/\n  body:has(> .vf-team:first-child){ margin:0; }\n\n  .vf-team{\n    --orange:#ff7a00;\n    --orange-hover:#ff8d24;\n    --orange-ink:#a84d00;     \/* orange for small text on light backgrounds (AA) *\/\n    --orange-lite:#ffab5e;    \/* orange for small text on teal (AA) *\/\n    --on-orange:#1b0d00;\n    --teal:#0b4f6c;\n    --teal-2:#094660;\n    --teal-deep:#073a50;\n    --teal-night:#052b3c;\n    --teal-soft:#7fb0c3;\n    --teal-pale:#a9cddb;\n    --teal-mist:#e3eef2;\n    --teal-quiet:#4f8297;     \/* soft teal that still reads on cream (large text) *\/\n    --cream:#f6f2ea;\n    --cream-2:#efe8dc;\n    --ink:#0e2733;\n    --ink-soft:#4d6571;\n    --line:rgba(11,79,108,.14);\n    --line-strong:rgba(11,79,108,.28);\n    --font:-apple-system, BlinkMacSystemFont, \"SF Pro Display\", \"SF Pro Text\", \"Inter\", \"Helvetica Neue\", Arial, sans-serif;\n    --font-script:\"Allura\", \"Brush Script MT\", cursive;\n    --font-mono:ui-monospace, \"SF Mono\", Menlo, Consolas, monospace;\n    --ease:cubic-bezier(.22,.61,.36,1);\n    --ease-expo:cubic-bezier(.16,1,.3,1);\n    --ease-io:cubic-bezier(.65,0,.35,1);\n    \/* Screen-size scale: 1px on screens up to 1440px wide; wider monitors grow\n       with the screen (capped at 1.5x), so 14\" and 24\" look the same. *\/\n    --u:clamp(1px, calc(100vw \/ 1440), 1.5px);\n    --e:var(--u);                         \/* hero escalator scale (smaller on phones) *\/\n    --max:calc(1200 * var(--u));\n    --slope:clamp(calc(40 * var(--u)), 6.5vw, calc(110 * var(--u)));\n    --stick:104px; \/* clearance for the theme's sticky header, which doesn't scale *\/\n    --sec:clamp(calc(56 * var(--u)), 7vw, calc(96 * var(--u)));      \/* space between sections *\/\n    --sec-sm:clamp(calc(36 * var(--u)), 4.5vw, calc(60 * var(--u))); \/* space between blocks inside a section *\/\n    --rise:calc(64 * var(--u));           \/* height of one escalator step between cards *\/\n\n    position:relative;\n    width:100%;\n    max-width:100%;\n    margin:0;\n    padding:0;\n    background:var(--cream);\n    box-shadow:0 0 0 100vmax var(--cream);\n    clip-path:inset(0 -100vmax);\n    color:var(--ink);\n    font-family:var(--font);\n    font-size:calc(17 * var(--u));\n    line-height:1.55;\n    letter-spacing:-.005em;\n    -webkit-font-smoothing:antialiased;\n    -moz-osx-font-smoothing:grayscale;\n    text-rendering:optimizeLegibility;\n  }\n  .vf-team *, .vf-team *::before, .vf-team *::after{ box-sizing:border-box; }\n  .vf-team img{ display:block; max-width:100%; }\n  .vf-team h1, .vf-team h2, .vf-team h3, .vf-team h4, .vf-team p,\n  .vf-team ol, .vf-team ul, .vf-team li, .vf-team figure{ margin:0; padding:0; }\n  .vf-team h1, .vf-team h2, .vf-team h3, .vf-team h4{\n    font-family:var(--font); color:inherit; text-transform:none; font-weight:700; text-wrap:balance;\n  }\n  .vf-team p{ text-wrap:pretty; }\n  .vf-team ol, .vf-team ul{ list-style:none; }\n  .vf-team a{ color:inherit; text-decoration:none; }\n  .vf-team button{\n    font:inherit; color:inherit; background:none; border:0; padding:0; margin:0;\n    cursor:pointer; box-shadow:none; text-transform:none; letter-spacing:inherit;\n    line-height:inherit; border-radius:0; min-height:0; width:auto; height:auto;\n  }\n  .vf-team :focus-visible{ outline:calc(3 * var(--u)) solid var(--orange); outline-offset:calc(3 * var(--u)); border-radius:calc(10 * var(--u)); }\n  .vf-team [hidden]{ display:none !important; }\n  .vf-team .vf-sr{\n    position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;\n    overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;\n  }\n\n  .vf-team .vf-sec{ position:relative; }\n  .vf-team .vf-wrap{ position:relative; z-index:2; width:100%; max-width:var(--max); margin:0 auto; padding:0 calc(24 * var(--u)); }\n  .vf-team .vf-dark{ color:#fff; }\n\n  \/* Full-bleed band behind dark sections: the box-shadow paints past the\n     container, clip-path cuts the diagonal edges across the viewport. *\/\n  .vf-team .vf-band{\n    position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden;\n    background:var(--teal);\n    box-shadow:0 0 0 100vmax var(--band-edge, var(--teal));\n  }\n\n  \/* ---------- Shared type ---------- *\/\n  .vf-team .vf-eyebrow{\n    display:inline-flex; align-items:center; gap:calc(12 * var(--u));\n    font-size:calc(13 * var(--u)); font-weight:600; letter-spacing:.14em; text-transform:uppercase;\n    color:var(--orange-ink);\n  }\n  .vf-team .vf-eyebrow::before{ content:''; width:calc(24 * var(--u)); height:2px; border-radius:2px; background:var(--orange); }\n  .vf-team .vf-dark .vf-eyebrow{ color:var(--orange-lite); }\n\n  .vf-team .vf-h2{\n    font-size:clamp(calc(38 * var(--u)), 5.4vw, calc(72 * var(--u))); line-height:1.02; letter-spacing:-.04em;\n    font-weight:700; color:var(--ink); margin-top:calc(18 * var(--u));\n  }\n  .vf-team .vf-dark .vf-h2{ color:#fff; }\n\n  .vf-team .vf-script{\n    position:relative; display:inline-block;\n    font-family:var(--font-script); font-weight:400; font-style:normal;\n    font-size:1.38em; line-height:.7; letter-spacing:0;\n    padding:0 .1em 0 .02em;\n    color:var(--teal);\n  }\n  .vf-team .vf-dark .vf-script{ color:var(--orange); }\n  .vf-team .vf-swash{ position:absolute; left:0; bottom:-.2em; width:104%; height:auto; overflow:visible; pointer-events:none; }\n  .vf-team .vf-swash path{ fill:none; stroke:var(--orange); stroke-width:5; stroke-linecap:round; stroke-dasharray:1; stroke-dashoffset:0; }\n  .vf-team.vf-js .vf-swash path{ stroke-dashoffset:1; transition:stroke-dashoffset 1.3s var(--ease-io) .9s; }\n  .vf-team.vf-js .is-in .vf-swash path{ stroke-dashoffset:0; }\n\n  \/* ---------- Buttons ---------- *\/\n  .vf-team .vf-actions{ display:flex; flex-wrap:wrap; gap:calc(14 * var(--u)); }\n  .vf-team .vf-btn{\n    position:relative; display:inline-flex; align-items:center; gap:calc(12 * var(--u));\n    height:calc(54 * var(--u)); padding:0 calc(10 * var(--u)) 0 calc(26 * var(--u)); border-radius:calc(999 * var(--u));\n    font-size:calc(15.5 * var(--u)); font-weight:600; letter-spacing:-.01em; white-space:nowrap;\n    transition:transform .6s var(--ease-expo), background-color .3s, color .3s, border-color .3s, box-shadow .3s;\n    will-change:transform;\n  }\n  .vf-team .vf-btn-label{ display:inline-block; transition:transform .6s var(--ease-expo); }\n  .vf-team .vf-btn-icon{\n    width:calc(36 * var(--u)); height:calc(36 * var(--u)); border-radius:50%; flex:none;\n    display:grid; place-items:center; transition:transform .5s var(--ease-expo);\n  }\n  .vf-team .vf-btn-icon svg{ width:calc(15 * var(--u)); height:calc(15 * var(--u)); }\n  .vf-team .vf-btn:hover .vf-btn-icon{ transform:rotate(-45deg); }\n  .vf-team .vf-btn:hover .vf-btn-icon--down{ transform:translateY(calc(3 * var(--u))); }\n  .vf-team .vf-btn--primary{ background:var(--orange); color:var(--on-orange); box-shadow:0 calc(14 * var(--u)) calc(34 * var(--u)) calc(-14 * var(--u)) rgba(255,122,0,.8); }\n  .vf-team .vf-btn--primary .vf-btn-icon{ background:var(--on-orange); color:var(--orange); }\n  .vf-team .vf-btn--primary:hover{ background:var(--orange-hover); }\n  .vf-team .vf-btn--ghost{\n    background:rgba(255,255,255,.08); color:#fff; border:1px solid rgba(255,255,255,.24);\n    -webkit-backdrop-filter:blur(calc(12 * var(--u))); backdrop-filter:blur(calc(12 * var(--u)));\n  }\n  .vf-team .vf-btn--ghost .vf-btn-icon{ background:rgba(255,255,255,.14); }\n  .vf-team .vf-btn--ghost:hover{ background:rgba(255,255,255,.16); border-color:rgba(255,255,255,.4); }\n  \/* Square-cornered dark button with a chevron tile (closing grid) *\/\n  .vf-team .vf-btn--dark{ border-radius:calc(14 * var(--u)); padding:0 calc(9 * var(--u)) 0 calc(24 * var(--u)); background:var(--ink); color:#fff; box-shadow:0 calc(18 * var(--u)) calc(34 * var(--u)) calc(-18 * var(--u)) rgba(14,39,51,.7); }\n  .vf-team .vf-btn--dark .vf-btn-icon{ border-radius:calc(9 * var(--u)); background:rgba(255,255,255,.12); }\n  .vf-team .vf-btn--dark:hover{ background:var(--teal); }\n  .vf-team .vf-btn--dark:hover .vf-btn-icon{ transform:translateX(calc(3 * var(--u))); background:var(--orange); color:var(--on-orange); }\n  .vf-team .vf-btn--line{ border-radius:calc(14 * var(--u)); padding:0 calc(9 * var(--u)) 0 calc(24 * var(--u)); color:var(--ink); border:1px solid var(--line-strong); background:rgba(255,255,255,.55); }\n  .vf-team .vf-btn--line .vf-btn-icon{ border-radius:calc(9 * var(--u)); background:var(--teal-mist); color:var(--teal); }\n  .vf-team .vf-btn--line:hover{ border-color:var(--teal); background:#fff; }\n\n  \/* =====================================================================\n     Level indicator \u2014 a sticky escalator display that tracks the section\n     you're on and opens a directory to jump between levels.\n     ===================================================================== *\/\n  .vf-team .vf-level-rail{ position:sticky; top:0; height:0; z-index:60; }\n  .vf-team .vf-level{\n    position:absolute; right:clamp(calc(14 * var(--u)), 2vw, calc(28 * var(--u))); top:calc(100vh - calc(88 * var(--u)));\n    transition:opacity .4s, transform .5s var(--ease-expo), visibility 0s;\n  }\n  .vf-team .vf-level.is-away{ opacity:0; visibility:hidden; transform:translateY(calc(14 * var(--u))); transition:opacity .4s, transform .5s var(--ease-expo), visibility 0s .4s; }\n  .vf-team .vf-level-display{\n    display:flex; align-items:center; gap:calc(10 * var(--u)); height:calc(54 * var(--u)); padding:0 calc(18 * var(--u)) 0 calc(14 * var(--u));\n    border-radius:calc(18 * var(--u)); color:#fff;\n    background:rgba(5,24,33,.88);\n    -webkit-backdrop-filter:blur(calc(14 * var(--u))) saturate(1.4); backdrop-filter:blur(calc(14 * var(--u))) saturate(1.4);\n    box-shadow:0 calc(18 * var(--u)) calc(40 * var(--u)) calc(-16 * var(--u)) rgba(0,0,0,.55), inset 0 0 0 1px rgba(255,255,255,.08);\n    transition:transform .5s var(--ease-expo);\n  }\n  .vf-team .vf-level-display:hover{ transform:translateY(calc(-3 * var(--u))); }\n  \/* Escalator glyph: a rider dot travels the incline in the scroll direction *\/\n  .vf-team .vf-level-glyph{ width:calc(22 * var(--u)); height:calc(22 * var(--u)); color:var(--orange); flex:none; overflow:visible; }\n  .vf-team .vf-level-glyph path{ fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; opacity:.55; }\n  .vf-team .vf-level-dot{ fill:currentColor; opacity:.4; transition:opacity .3s; }\n  .vf-team .vf-level-glyph.is-moving .vf-level-dot{ opacity:1; animation:vft-glyph .7s linear infinite; }\n  .vf-team .vf-level-glyph[data-dir=\"down\"].is-moving .vf-level-dot{ animation-direction:reverse; }\n  @keyframes vft-glyph{ from{ transform:translate(-4px, 4.4px); } to{ transform:translate(4px, -4.4px); } }\n  .vf-team .vf-level-num{\n    position:relative; width:calc(34 * var(--u)); height:calc(30 * var(--u)); overflow:hidden;\n    font-family:var(--font-mono); font-weight:700; font-size:calc(21 * var(--u)); color:var(--orange);\n    text-shadow:0 0 calc(14 * var(--u)) rgba(255,122,0,.6);\n  }\n  .vf-team .vf-level-num span{ position:absolute; inset:0; display:grid; place-items:center; }\n  .vf-team .vf-level-name{\n    min-width:calc(84 * var(--u)); text-align:left; font-size:calc(11.5 * var(--u)); font-weight:600;\n    letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.78); white-space:nowrap;\n  }\n  .vf-team .vf-level-panel{\n    position:absolute; right:0; bottom:calc(66 * var(--u));\n    width:calc(250 * var(--u)); max-height:calc(100vh - var(--stick) - calc(120 * var(--u))); overflow:auto;\n    display:grid; gap:calc(2 * var(--u)); padding:calc(10 * var(--u)); border-radius:calc(22 * var(--u));\n    background:linear-gradient(160deg, #f3f5f6, #d6dce0);\n    box-shadow:0 calc(30 * var(--u)) calc(60 * var(--u)) calc(-24 * var(--u)) rgba(0,0,0,.55), inset 0 1px 0 #fff;\n    transform-origin:bottom right;\n    animation:vft-pop .45s var(--ease-expo);\n  }\n  .vf-team .vf-level-panel-title{\n    padding:calc(6 * var(--u)) calc(10 * var(--u)) calc(8 * var(--u));\n    font-size:calc(10.5 * var(--u)); font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--ink-soft);\n  }\n  .vf-team .vf-level-btn{\n    display:flex; align-items:center; gap:calc(12 * var(--u)); width:100%; padding:calc(6 * var(--u)) calc(10 * var(--u)) calc(6 * var(--u)) calc(6 * var(--u));\n    border-radius:calc(12 * var(--u)); text-align:left; font-size:calc(13.5 * var(--u)); font-weight:600; color:var(--ink);\n    transition:background-color .25s;\n  }\n  .vf-team .vf-level-btn b{\n    flex:none; width:calc(36 * var(--u)); height:calc(28 * var(--u)); border-radius:calc(8 * var(--u)); display:grid; place-items:center;\n    background:#fff; box-shadow:inset 0 0 0 1px rgba(11,79,108,.16); font-family:var(--font-mono); font-size:calc(12 * var(--u)); color:var(--teal);\n    transition:background-color .3s, color .3s, box-shadow .3s;\n  }\n  .vf-team .vf-level-btn:hover{ background:rgba(255,255,255,.75); }\n  .vf-team .vf-level-btn.is-current b,\n  .vf-team .vf-level-btn.is-lit b{ background:var(--orange); color:var(--on-orange); box-shadow:0 0 calc(14 * var(--u)) rgba(255,122,0,.55); }\n  @keyframes vft-pop{ from{ opacity:0; transform:scale(.85) translateY(calc(10 * var(--u))); } to{ opacity:1; transform:none; } }\n  @keyframes vft-in-up{ from{ transform:translateY(100%); opacity:0; } to{ transform:none; opacity:1; } }\n  @keyframes vft-in-down{ from{ transform:translateY(-100%); opacity:0; } to{ transform:none; opacity:1; } }\n  @keyframes vft-out-up{ to{ transform:translateY(-100%); opacity:0; } }\n  @keyframes vft-out-down{ to{ transform:translateY(100%); opacity:0; } }\n  .vf-team .vf-in-up{ animation:vft-in-up .45s var(--ease-expo) both; }\n  .vf-team .vf-in-down{ animation:vft-in-down .45s var(--ease-expo) both; }\n  .vf-team .vf-out-up{ animation:vft-out-up .45s var(--ease-expo) both; }\n  .vf-team .vf-out-down{ animation:vft-out-down .45s var(--ease-expo) both; }\n  @keyframes vft-spin{ to{ transform:rotate(360deg); } }\n\n  \/* =====================================================================\n     G \u00b7 Lobby \u2014 hero with twin escalators carrying the team\n     ===================================================================== *\/\n  .vf-team .vf-hero > .vf-band{\n    --band-edge:#094660;\n    background:\n      radial-gradient(55% 60% at 82% 30%, rgba(127,176,195,.30), rgba(127,176,195,0) 70%),\n      radial-gradient(45% 55% at 0% 100%, rgba(255,122,0,.18), rgba(255,122,0,0) 70%),\n      linear-gradient(170deg, #0b4f6c 0%, #094660 60%, #073a50 100%);\n    clip-path:polygon(-100vmax 0, calc(100% + 100vmax) 0, calc(100% + 100vmax) calc(100% - var(--slope)),\n      calc(50% + 50vw) calc(100% - var(--slope)), calc(50% - 50vw) 100%, -100vmax 100%);\n  }\n  .vf-team .vf-hero > .vf-band::before{\n    content:''; position:absolute; inset:0;\n    background-image:linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),\n                     linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);\n    background-size:calc(72 * var(--u)) calc(72 * var(--u));\n    -webkit-mask-image:radial-gradient(70% 65% at 70% 40%, #000 15%, transparent 75%);\n            mask-image:radial-gradient(70% 65% at 70% 40%, #000 15%, transparent 75%);\n  }\n  .vf-team .vf-hero-inner{\n    position:relative; z-index:2;\n    --pt:clamp(calc(56 * var(--u)), 7vw, calc(100 * var(--u)));\n    padding:var(--pt) 0 calc(var(--slope) + clamp(calc(150 * var(--u)), 14vw, calc(190 * var(--u))));\n    overflow:hidden; overflow:clip;\n  }\n  .vf-team .vf-hero-stage{ min-height:calc(560 * var(--u)); }\n  .vf-team .vf-hero-copy{ position:relative; z-index:4; max-width:calc(600 * var(--u)); will-change:transform; }\n  .vf-team .vf-scramble{\n    margin-top:calc(22 * var(--u)); min-height:1.5em;\n    font-family:var(--font-mono); font-size:calc(12.5 * var(--u)); font-weight:500;\n    letter-spacing:.3em; color:var(--teal-pale); white-space:nowrap;\n  }\n  .vf-team .vf-h1{\n    font-size:clamp(calc(44 * var(--u)), 6vw, calc(78 * var(--u))); line-height:1; letter-spacing:-.045em;\n    font-weight:700; color:#fff; margin:calc(14 * var(--u)) 0 calc(26 * var(--u));\n  }\n  .vf-team .vf-hero-lead{\n    max-width:29em; font-size:clamp(calc(17 * var(--u)), 1.4vw, calc(19.5 * var(--u))); line-height:1.6;\n    color:rgba(255,255,255,.8);\n  }\n  .vf-team .vf-hero .vf-actions{ margin-top:calc(34 * var(--u)); }\n\n  \/* Mouse-depth layers (hero) *\/\n  .vf-team .vf-depth{\n    transform:translate3d(calc(var(--hx, 0) * var(--d, 0) * 1px), calc(var(--hy, 0) * var(--d, 0) * 1px), 0);\n    transition:transform .9s var(--ease-expo);\n  }\n\n  \/* Floating fact pills *\/\n  .vf-team .vf-hbadges{ position:absolute; inset:0; z-index:3; pointer-events:none; }\n  .vf-team .vf-hbadge{ position:absolute; pointer-events:auto; }\n  .vf-team .vf-hbadge-in{\n    display:inline-flex; align-items:center; gap:calc(10 * var(--u)); padding:calc(8 * var(--u)) calc(16 * var(--u)) calc(8 * var(--u)) calc(8 * var(--u));\n    border-radius:999px; white-space:nowrap; font-size:calc(13.5 * var(--u)); font-weight:600; letter-spacing:-.01em;\n    background:var(--bg, #fff); color:var(--fg, var(--ink));\n    box-shadow:0 calc(20 * var(--u)) calc(40 * var(--u)) calc(-18 * var(--u)) rgba(0,0,0,.6);\n    animation:vft-bob 6s var(--ease-io) infinite; animation-delay:var(--bd, 0s);\n  }\n  .vf-team .vf-hbadge-in b{ font-weight:800; }\n  .vf-team .vf-hbadge-ico{ width:calc(30 * var(--u)); height:calc(30 * var(--u)); border-radius:50%; display:grid; place-items:center; background:var(--ic, var(--orange)); color:#fff; flex:none; }\n  .vf-team .vf-hbadge-ico svg{ width:calc(15 * var(--u)); height:calc(15 * var(--u)); fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }\n  @keyframes vft-bob{ 50%{ transform:translateY(calc(-9 * var(--u))); } }\n\n  \/* ---------- The escalators ----------\n     Drawn sideways like a mall atrium: an up flight in front, a down flight\n     behind it. Riders move at exactly the speed of the steps (one step\n     every 1.25s), so everyone stays on their step. *\/\n  .vf-team .vf-esc{\n    position:absolute; z-index:2; pointer-events:none;\n    left:0; top:calc(-1 * var(--pt)); right:calc(50% - 50vw); bottom:calc(-1 * (var(--slope) + calc(60 * var(--u))));\n    -webkit-mask-image:linear-gradient(0deg, transparent 0, #000 26%), linear-gradient(270deg, transparent 0, #000 9%);\n    -webkit-mask-composite:source-in;\n            mask-image:linear-gradient(0deg, transparent 0, #000 26%), linear-gradient(270deg, transparent 0, #000 9%);\n            mask-composite:intersect;\n  }\n  .vf-team .vf-esc-flight{\n    position:absolute; left:var(--fx, 49%); bottom:var(--fy, calc(40 * var(--u)));\n    width:calc(1288 * var(--e)); height:calc(290 * var(--e));\n    transform-origin:0 100%; transform:rotate(-30deg);\n  }\n  .vf-team .vf-lane{ position:absolute; left:0; width:100%; height:calc(170 * var(--e)); }\n  .vf-team .vf-lane--up{ bottom:0; z-index:2; }\n  .vf-team .vf-lane--down{ bottom:calc(116 * var(--e)); z-index:1; transform-origin:0 100%; transform:scale(.86); filter:brightness(.88) saturate(.9); }\n  .vf-team .vf-lane-rail{\n    position:absolute; left:0; right:0; top:calc(74 * var(--e)); height:calc(10 * var(--e)); z-index:3;\n    border-radius:999px; overflow:hidden;\n    background:linear-gradient(180deg, #1d4558, #061820);\n    box-shadow:inset 0 1px 0 rgba(255,255,255,.28), 0 calc(3 * var(--e)) calc(8 * var(--e)) rgba(0,0,0,.3);\n  }\n  \/* glints on the moving handrail *\/\n  .vf-team .vf-lane-rail i{\n    position:absolute; top:0; bottom:0; left:calc(-184 * var(--e)); right:0;\n    background:repeating-linear-gradient(90deg, transparent 0 calc(120 * var(--e)), rgba(255,171,94,.85) calc(152 * var(--e)), transparent calc(184 * var(--e)));\n    animation:vft-belt 5s linear infinite;\n  }\n  @keyframes vft-belt{ to{ transform:translateX(calc(184 * var(--e))); } }\n  .vf-team .vf-lane-glass{\n    position:absolute; left:0; right:0; top:calc(82 * var(--e)); height:calc(48 * var(--e)); z-index:2;\n    background:linear-gradient(180deg, rgba(169,205,219,.26), rgba(169,205,219,.08));\n    -webkit-backdrop-filter:blur(calc(5 * var(--e))); backdrop-filter:blur(calc(5 * var(--e)));\n    border-bottom:1px solid rgba(169,205,219,.3);\n  }\n  .vf-team .vf-lane-steps{ position:absolute; left:0; right:0; top:calc(130 * var(--e)); height:calc(26 * var(--e)); overflow:hidden; }\n  \/* one tread + riser per 46 units: drawn tilted so they read level once the flight is rotated *\/\n  .vf-team .vf-lane-steps i{\n    position:absolute; top:0; bottom:0; left:calc(-46 * var(--e)); right:0;\n    background:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 46 26' preserveAspectRatio='none'%3E%3Cpath d='M0 24.5 11.5 4.5 46 24.5V26H0z' fill='%23a9cddb' fill-opacity='.18'\/%3E%3Cpath d='M0 24.5 11.5 4.5 46 24.5' fill='none' stroke='%23a9cddb' stroke-opacity='.8' stroke-width='1.4' stroke-linejoin='round'\/%3E%3C\/svg%3E\") repeat-x 0 0 \/ calc(46 * var(--e)) 100%;\n    animation:vft-steps 1.25s linear infinite;\n  }\n  @keyframes vft-steps{ to{ transform:translateX(calc(46 * var(--e))); } }\n  .vf-team .vf-lane-truss{\n    position:absolute; left:0; right:0; top:calc(155 * var(--e)); height:calc(13 * var(--e));\n    border-radius:0 0 999px 999px;\n    background:\n      repeating-linear-gradient(90deg, rgba(255,255,255,.12) 0 1px, transparent 1px calc(9 * var(--e))),\n      linear-gradient(180deg, rgba(169,205,219,.34), rgba(169,205,219,.1));\n  }\n  .vf-team .vf-lane--down .vf-lane-rail i,\n  .vf-team .vf-lane--down .vf-lane-steps i{ animation-direction:reverse; }\n\n  .vf-team .vf-rider{\n    position:absolute; left:calc(-110 * var(--e)); top:calc(14 * var(--e)); z-index:1;\n    width:calc(88 * var(--e)); height:calc(88 * var(--e));\n    pointer-events:auto; border-radius:50%;\n    transform:translateX(calc((var(--i) * 184 + 230) * var(--e)));   \/* resting spots when motion is off *\/\n    animation:vft-ride 35s linear infinite; animation-delay:calc(var(--i) * -5s);\n  }\n  .vf-team .vf-lane--down .vf-rider{ animation-name:vft-ride-down; }\n  @keyframes vft-ride{ from{ transform:translateX(0); } to{ transform:translateX(calc(1288 * var(--e))); } }\n  @keyframes vft-ride-down{ from{ transform:translateX(calc(1288 * var(--e))); } to{ transform:translateX(0); } }\n  .vf-team .vf-rider:hover, .vf-team .vf-rider:focus-visible{ z-index:5; }\n  .vf-team .vf-rider-in{ position:absolute; inset:0; transform:rotate(30deg); }   \/* stand upright again *\/\n  .vf-team .vf-rider img{\n    width:100%; height:100%; border-radius:50%; object-fit:cover; background:#0d3d52;\n    box-shadow:0 0 0 calc(3 * var(--e)) #fff, 0 calc(16 * var(--e)) calc(26 * var(--e)) calc(-8 * var(--e)) rgba(0,0,0,.6);\n    transition:transform .6s var(--ease-expo), box-shadow .3s;\n  }\n  .vf-team .vf-rider:hover img{ transform:scale(1.12); box-shadow:0 0 0 calc(3 * var(--e)) var(--orange), 0 calc(18 * var(--e)) calc(30 * var(--e)) calc(-8 * var(--e)) rgba(0,0,0,.65); }\n  .vf-team .vf-rider-tag{\n    position:absolute; left:50%; bottom:calc(100% + calc(14 * var(--e)));\n    display:flex; flex-direction:column; align-items:center; gap:1px; padding:calc(8 * var(--u)) calc(14 * var(--u));\n    border-radius:calc(12 * var(--u)); background:#fff; color:var(--ink); white-space:nowrap; text-align:center;\n    font-size:calc(13 * var(--u)); font-weight:700; letter-spacing:-.01em; line-height:1.25;\n    box-shadow:0 calc(16 * var(--u)) calc(30 * var(--u)) calc(-12 * var(--u)) rgba(0,0,0,.55);\n    opacity:0; transform:translate(-50%, calc(8 * var(--u))) scale(.94); transition:opacity .25s, transform .45s var(--ease-expo);\n    pointer-events:none;\n  }\n  .vf-team .vf-rider-tag small{ font-size:calc(11 * var(--u)); font-weight:600; color:var(--orange-ink); letter-spacing:.02em; }\n  .vf-team .vf-rider-tag::after{ content:''; position:absolute; left:50%; top:100%; margin-left:calc(-6 * var(--u)); border:calc(6 * var(--u)) solid transparent; border-top-color:#fff; }\n  .vf-team .vf-rider:hover .vf-rider-tag{ opacity:1; transform:translate(-50%, 0); }\n  \/* hover a rider: the escalators stop so the name can be read *\/\n  .vf-team .vf-esc:hover .vf-rider, .vf-team .vf-esc:hover .vf-lane i,\n  .vf-team .vf-esc.is-idle .vf-rider, .vf-team .vf-esc.is-idle .vf-lane i{ animation-play-state:paused; }\n\n  \/* =====================================================================\n     01 \u00b7 Our people \u2014 overlapping stats card + editorial intro\n     ===================================================================== *\/\n  .vf-team .vf-intro{ z-index:3; }\n  .vf-team .vf-stats{\n    position:relative; overflow:hidden;\n    margin-top:calc(-1 * clamp(calc(120 * var(--u)), 12vw, calc(160 * var(--u))));\n    display:grid; grid-template-columns:repeat(4, minmax(0, 1fr));\n    padding:calc(34 * var(--u)) calc(10 * var(--u)); border-radius:calc(26 * var(--u)); background:#fff;\n    box-shadow:0 calc(40 * var(--u)) calc(80 * var(--u)) calc(-40 * var(--u)) rgba(6,47,65,.45), 0 0 0 1px rgba(11,79,108,.05);\n  }\n  .vf-team .vf-stat{ position:relative; z-index:1; padding:calc(6 * var(--u)) calc(26 * var(--u)); border-left:1px solid var(--line); transition:transform .4s var(--ease-expo); }\n  .vf-team .vf-stat:first-child{ border-left:0; }\n  .vf-team .vf-stat-icon{\n    width:calc(46 * var(--u)); height:calc(46 * var(--u)); border-radius:calc(14 * var(--u)); display:grid; place-items:center;\n    background:var(--teal-mist); color:var(--teal); margin-bottom:calc(18 * var(--u));\n    transition:transform .5s var(--ease-expo), background .3s;\n  }\n  .vf-team .vf-stat:hover .vf-stat-icon{ transform:rotate(-8deg) scale(1.06); background:#fff1e3; }\n  .vf-team .vf-stat-icon svg{ width:calc(24 * var(--u)); height:calc(24 * var(--u)); fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }\n  .vf-team .vf-stat b{\n    display:block; font-size:clamp(calc(32 * var(--u)), 3.2vw, calc(44 * var(--u))); line-height:1; font-weight:700;\n    letter-spacing:-.04em; color:var(--teal); font-variant-numeric:tabular-nums; transition:color .3s;\n  }\n  .vf-team .vf-stat:hover b{ color:var(--orange-ink); }\n  .vf-team .vf-stat > span:last-child{ display:block; margin-top:calc(8 * var(--u)); font-size:calc(14 * var(--u)); line-height:1.4; color:var(--ink-soft); max-width:15em; }\n\n  \/* Cursor spotlight *\/\n  .vf-team [data-vf-spot]::before{\n    content:''; position:absolute; inset:0; z-index:0; border-radius:inherit; pointer-events:none;\n    background:radial-gradient(calc(420 * var(--u)) circle at var(--sx, 50%) var(--sy, 50%), rgba(255,122,0,.13), transparent 65%);\n    opacity:0; transition:opacity .4s;\n  }\n  .vf-team [data-vf-spot]:hover::before{ opacity:1; }\n\n  .vf-team .vf-intro-head{\n    display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);\n    gap:clamp(calc(32 * var(--u)), 6vw, calc(96 * var(--u))); align-items:end;\n    margin-top:var(--sec); padding-bottom:calc(32 * var(--u)); border-bottom:1px solid var(--line);\n  }\n  .vf-team .vf-lead{ font-size:clamp(calc(20 * var(--u)), 1.9vw, calc(25 * var(--u))); line-height:1.4; letter-spacing:-.02em; font-weight:600; color:var(--ink); }\n  .vf-team .vf-intro-copy p + p{ margin-top:calc(16 * var(--u)); color:var(--ink-soft); font-size:calc(17 * var(--u)); }\n  .vf-team .vf-highlight{\n    margin-top:var(--sec-sm); max-width:22em;\n    font-size:clamp(calc(28 * var(--u)), 3.6vw, calc(50 * var(--u))); line-height:1.16; letter-spacing:-.035em; font-weight:600;\n    color:var(--ink);\n  }\n  .vf-team .vf-highlight mark{ background:none; color:var(--teal); }\n  .vf-team .vf-highlight .vf-w{ display:inline; }\n  .vf-team.vf-js .vf-highlight .vf-wi{\n    opacity:clamp(.14, calc(var(--prog, 0) * (var(--n) + 6) - var(--i)), 1);\n    transition:opacity .25s linear;\n  }\n\n  \/* =====================================================================\n     02 \u00b7 Leadership \u2014 the top landing\n     ===================================================================== *\/\n  \/* clipped: the spinning ring's square box sweeps past the screen edge on phones *\/\n  .vf-team .vf-leadsec{ padding:var(--sec) 0 0; overflow:hidden; overflow:clip; }\n  .vf-team .vf-lead-decor{ position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; }\n  .vf-team .vf-xs{\n    position:absolute; width:calc(72 * var(--u)); height:calc(168 * var(--u)); opacity:.75;\n    background:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.5 7.5l9 9M16.5 7.5l-9 9' stroke='%23ff7a00' stroke-width='2.2' stroke-linecap='round'\/%3E%3C\/svg%3E\") 0 0 \/ calc(24 * var(--u)) calc(24 * var(--u));\n  }\n  .vf-team .vf-xs--l{ left:calc(2 * var(--u)); top:46%; }\n  .vf-team .vf-xs--b{ right:16%; bottom:calc(10 * var(--u)); width:calc(168 * var(--u)); height:calc(48 * var(--u)); opacity:.5; }\n  .vf-team .vf-dots-v{ position:absolute; top:calc(130 * var(--u)); width:0; height:calc(220 * var(--u)); border-left:2px dotted rgba(11,79,108,.3); }\n  .vf-team .vf-dots-v--a{ right:9%; } .vf-team .vf-dots-v--b{ right:calc(9% + calc(18 * var(--u))); top:calc(170 * var(--u)); height:calc(160 * var(--u)); }\n  .vf-team .vf-arc{ position:absolute; width:calc(300 * var(--u)); aspect-ratio:1; border-radius:50%; border:calc(14 * var(--u)) solid var(--teal); opacity:.9; }\n  .vf-team .vf-arc--tl{ left:calc(-170 * var(--u)); top:calc(-150 * var(--u)); border-left-color:transparent; border-top-color:transparent; transform:rotate(-20deg); }\n  .vf-team .vf-arc--r{ right:calc(-200 * var(--u)); top:38%; width:calc(260 * var(--u)); border-color:transparent; border-left-color:var(--teal); border-bottom-color:var(--teal); opacity:.18; }\n\n  .vf-team .vf-lead-head{ position:relative; z-index:1; text-align:center; }\n  .vf-team .vf-lead-head p{ max-width:31em; margin:calc(18 * var(--u)) auto 0; font-size:clamp(calc(17 * var(--u)), 1.4vw, calc(19 * var(--u))); color:var(--ink-soft); }\n\n  .vf-team .vf-leaders{\n    position:relative; z-index:1; --form:1;\n    display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:clamp(calc(28 * var(--u)), 7vw, calc(110 * var(--u)));\n    max-width:calc(860 * var(--u)); margin:var(--sec-sm) auto 0; padding-bottom:var(--rise);\n  }\n  \/* MD on the upper step, GM one step down: the escalator starts its descent *\/\n  .vf-team .vf-leader{ display:flex; flex-direction:column; align-items:center; text-align:center; }\n  .vf-team .vf-leader:nth-child(2){ transform:translate3d(0, calc(var(--rise) * var(--form)), 0); }\n  .vf-team .vf-leader-photo{ position:relative; width:clamp(calc(180 * var(--u)), 21vw, calc(270 * var(--u))); aspect-ratio:1; }\n  .vf-team .vf-leader-photo img{\n    position:absolute; left:9%; top:9%; width:82%; height:82%; border-radius:50%; object-fit:cover; background:var(--cream-2);\n    box-shadow:0 calc(40 * var(--u)) calc(60 * var(--u)) calc(-30 * var(--u)) rgba(6,47,65,.55);\n    transition:transform .9s var(--ease-expo);\n  }\n  .vf-team .vf-leader:hover .vf-leader-photo img{ transform:scale(1.045); }\n  .vf-team .vf-ring{ position:absolute; inset:0; width:100%; height:100%; overflow:visible; animation:vft-spin 26s linear infinite; }\n  .vf-team .vf-ring circle{ fill:none; }\n  .vf-team .vf-ring-a{ stroke:var(--teal); stroke-width:2.5; stroke-dasharray:64 36; }\n  .vf-team .vf-ring-b{ stroke:var(--orange); stroke-width:6; stroke-linecap:round; stroke-dasharray:20 80; stroke-dashoffset:-68; }\n  .vf-team .vf-leader:nth-child(2) .vf-ring{ animation-direction:reverse; }\n  .vf-team .vf-leader-badge{\n    position:absolute; right:4%; bottom:9%; z-index:2;\n    width:clamp(calc(46 * var(--u)), 4.6vw, calc(60 * var(--u))); aspect-ratio:1; border-radius:50%; display:grid; place-items:center;\n    background:var(--orange); color:var(--on-orange); font-weight:800; font-size:calc(15 * var(--u)); letter-spacing:.04em;\n    border:calc(4 * var(--u)) solid var(--cream);\n    box-shadow:0 calc(14 * var(--u)) calc(26 * var(--u)) calc(-10 * var(--u)) rgba(255,122,0,.8);\n    transition:transform .6s var(--ease-expo);\n  }\n  .vf-team .vf-leader:hover .vf-leader-badge{ transform:rotate(-12deg) scale(1.08); }\n  .vf-team .vf-leader-label{\n    display:flex; flex-direction:column; align-items:flex-start; gap:calc(4 * var(--u)); margin-top:calc(26 * var(--u));\n    padding:calc(2 * var(--u)) 0 calc(2 * var(--u)) calc(14 * var(--u)); border-left:calc(3 * var(--u)) solid var(--orange); text-align:left;\n  }\n  .vf-team .vf-leader-role{ font-size:calc(12.5 * var(--u)); font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:var(--ink); }\n  .vf-team .vf-leader-name{ font-size:clamp(calc(24 * var(--u)), 2.5vw, calc(34 * var(--u))); line-height:1.1; font-weight:400; letter-spacing:-.03em; color:var(--ink); }\n  .vf-team .vf-leader-name b{ font-weight:750; }\n  .vf-team .vf-leader.is-ping .vf-leader-photo img{ animation:vft-ping-ring 1.4s var(--ease) 2; }\n  @keyframes vft-ping-ring{ 40%{ box-shadow:0 0 0 calc(10 * var(--u)) rgba(255,122,0,.45), 0 calc(40 * var(--u)) calc(60 * var(--u)) calc(-30 * var(--u)) rgba(6,47,65,.55); } }\n\n  \/* the org line runs down from the leaders into the departments *\/\n  .vf-team .vf-org{ position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; margin-top:calc(26 * var(--u)); --p:0; }\n  .vf-team .vf-org-line{ position:relative; width:2px; height:calc(110 * var(--u)); background:repeating-linear-gradient(180deg, var(--line-strong) 0 calc(6 * var(--u)), transparent calc(6 * var(--u)) calc(12 * var(--u))); }\n  .vf-team .vf-org-car{\n    position:absolute; left:50%; top:calc(var(--p) * 100%); width:calc(14 * var(--u)); height:calc(20 * var(--u)); margin:calc(-10 * var(--u)) 0 0 calc(-7 * var(--u));\n    border-radius:calc(4 * var(--u)); background:var(--orange); box-shadow:0 0 0 calc(5 * var(--u)) rgba(255,122,0,.18);\n  }\n  .vf-team .vf-org-chip{\n    margin-top:calc(10 * var(--u)); padding:calc(8 * var(--u)) calc(16 * var(--u)); border-radius:999px; background:#fff;\n    font-size:calc(12.5 * var(--u)); font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--teal);\n    box-shadow:0 0 0 1px var(--line), 0 calc(14 * var(--u)) calc(26 * var(--u)) calc(-16 * var(--u)) rgba(6,47,65,.45);\n  }\n\n  \/* =====================================================================\n     03\u201307 \u00b7 The team \u2014 every department is a flight of steps\n     ===================================================================== *\/\n  .vf-team .vf-crew{ margin-top:calc(10 * var(--u)); color:#fff; isolation:isolate; }\n  .vf-team .vf-crew > .vf-band{\n    --band-edge:#052f42;\n    background:\n      radial-gradient(60% 30% at 50% 0%, rgba(127,176,195,.22), rgba(127,176,195,0) 70%),\n      radial-gradient(40% 25% at 100% 60%, rgba(255,122,0,.10), rgba(255,122,0,0) 70%),\n      linear-gradient(180deg, #073a50 0%, #052b3c 40%, #052b3c 70%, #073a50 100%);\n    clip-path:polygon(-100vmax var(--slope), calc(50% - 50vw) var(--slope), calc(50% + 50vw) 0,\n      calc(100% + 100vmax) 0, calc(100% + 100vmax) calc(100% - var(--slope)),\n      calc(50% + 50vw) calc(100% - var(--slope)), calc(50% - 50vw) 100%, -100vmax 100%);\n  }\n  .vf-team .vf-crew > .vf-band::before{\n    content:''; position:absolute; inset:0;\n    background-image:linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);\n    background-size:calc(72 * var(--u)) calc(72 * var(--u));\n  }\n  .vf-team .vf-outline{\n    position:absolute; white-space:nowrap; user-select:none;\n    font-weight:800; line-height:.8; letter-spacing:-.05em;\n    color:transparent; -webkit-text-stroke:1.5px rgba(255,255,255,.12);\n    will-change:transform;\n  }\n  .vf-team .vf-crew .vf-outline{ top:calc(var(--slope) + calc(10 * var(--u))); left:-2%; font-size:clamp(calc(120 * var(--u)), 19vw, calc(300 * var(--u))); }\n  .vf-team .vf-crew-inner{ position:relative; z-index:2; padding:calc(var(--slope) + var(--sec)) 0 calc(var(--slope) + var(--sec)); }\n  .vf-team .vf-crew-head{ text-align:center; }\n  .vf-team .vf-crew-head p{ max-width:33em; margin:calc(20 * var(--u)) auto 0; font-size:clamp(calc(17 * var(--u)), 1.4vw, calc(19 * var(--u))); color:rgba(255,255,255,.8); }\n\n  .vf-team .vf-dept{\n    --s:var(--rise); --form:1;\n    position:relative; display:grid; grid-template-columns:repeat(5, minmax(0, 1fr));\n    column-gap:calc(18 * var(--u)); row-gap:calc(20 * var(--u)); align-items:end;\n    margin-top:clamp(calc(64 * var(--u)), 8vw, calc(110 * var(--u)));\n    padding-top:calc((var(--n) - 1) * var(--s));\n  }\n  .vf-team .vf-dept-head{ position:relative; grid-column:span var(--hs); align-self:end; padding-bottom:calc(4 * var(--u)); }\n  .vf-team .vf-dept--down .vf-dept-head{ order:2; text-align:right; }\n  .vf-team .vf-dept--down .vf-dept-head > *{ margin-left:auto; }\n  .vf-team .vf-dept-dir{\n    display:inline-flex; align-items:center; gap:calc(8 * var(--u)); padding:calc(6 * var(--u)) calc(13 * var(--u)) calc(6 * var(--u)) calc(9 * var(--u));\n    border-radius:999px; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.05);\n    font-size:calc(11.5 * var(--u)); font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--teal-pale);\n  }\n  .vf-team .vf-dept-dir svg{ width:calc(18 * var(--u)); height:calc(18 * var(--u)); fill:none; stroke:var(--orange); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }\n  .vf-team .vf-dept-num{\n    display:block; margin-top:calc(16 * var(--u));\n    font-size:clamp(calc(64 * var(--u)), 7.5vw, calc(108 * var(--u))); line-height:.8; font-weight:700; letter-spacing:-.06em;\n    color:transparent; -webkit-text-stroke:1.5px rgba(255,255,255,.26);\n  }\n  .vf-team .vf-dept-name{ margin-top:calc(10 * var(--u)); font-size:clamp(calc(28 * var(--u)), 3vw, calc(42 * var(--u))); line-height:1.04; letter-spacing:-.035em; color:#fff; }\n  .vf-team .vf-dept-sum{ max-width:24em; margin-top:calc(12 * var(--u)); font-size:calc(15.5 * var(--u)); line-height:1.6; color:rgba(255,255,255,.72); }\n\n  \/* The flight: cards stand on a line, then rise one step each *\/\n  .vf-team .vf-stairs{\n    position:relative; grid-column:span var(--n);\n    display:grid; grid-template-columns:repeat(var(--n), minmax(0, 1fr)); column-gap:calc(18 * var(--u)); align-items:end;\n  }\n  .vf-team .vf-person{ position:relative; --k:var(--i); transform:translate3d(0, calc(-1 * var(--k) * var(--s) * var(--form)), 0); }\n  .vf-team .vf-dept--down .vf-person{ --k:calc(var(--n) - 1 - var(--i)); }\n  \/* Operations: five steps, so the title sits in the empty space above the low end *\/\n  .vf-team .vf-dept--full{ padding-top:0; row-gap:calc(var(--s) * 2 + calc(16 * var(--u))); }\n  .vf-team .vf-dept--full .vf-dept-head{ order:0; grid-column:3 \/ -1; grid-row:1; align-self:start; }\n  .vf-team .vf-dept--full .vf-stairs{ grid-column:1 \/ -1; grid-row:2; }\n\n  .vf-team .vf-person-card{\n    position:relative; overflow:hidden; display:flex; flex-direction:column;\n    padding:calc(18 * var(--u)) calc(18 * var(--u)) calc(30 * var(--u)); border-radius:calc(24 * var(--u));\n    background:linear-gradient(165deg, rgba(255,255,255,.11), rgba(255,255,255,.035) 60%);\n    border:1px solid rgba(255,255,255,.12);\n    box-shadow:0 calc(30 * var(--u)) calc(60 * var(--u)) calc(-34 * var(--u)) rgba(0,0,0,.7);\n    transition:opacity .9s var(--ease), transform .9s var(--ease-expo), border-color .4s, background-color .4s;\n  }\n  .vf-team .vf-person-card.is-tilting{ transition:transform .1s linear, border-color .4s; }\n  .vf-team .vf-person-card > :not(.vf-person-step){ position:relative; z-index:1; }\n  .vf-team .vf-person-card:hover{ border-color:rgba(255,122,0,.5); }\n  .vf-team .vf-person-photo{ position:relative; width:78%; max-width:calc(150 * var(--u)); aspect-ratio:1; margin:calc(4 * var(--u)) auto calc(18 * var(--u)); }\n  .vf-team .vf-person-photo img{\n    position:absolute; left:8%; top:8%; width:84%; height:84%; border-radius:50%; object-fit:cover; background:#0d3d52;\n    box-shadow:0 calc(18 * var(--u)) calc(30 * var(--u)) calc(-12 * var(--u)) rgba(0,0,0,.7);\n    transition:transform .8s var(--ease-expo);\n  }\n  .vf-team .vf-person-card:hover .vf-person-photo img{ transform:scale(1.06); }\n  .vf-team .vf-person-ring{ position:absolute; inset:0; border-radius:50%; border:1.5px dashed rgba(169,205,219,.38); animation:vft-spin 36s linear infinite; }\n  .vf-team .vf-person-ring::before{\n    content:''; position:absolute; inset:-1.5px; border-radius:50%;\n    border:calc(3 * var(--u)) solid transparent; border-top-color:var(--orange); border-right-color:var(--orange);\n    transform:rotate(-25deg); transition:transform .9s var(--ease-expo);\n  }\n  .vf-team .vf-person-card:hover .vf-person-ring::before{ transform:rotate(155deg); }\n  .vf-team .vf-person-role{\n    display:block; padding-left:calc(10 * var(--u)); border-left:2px solid var(--orange);\n    font-size:calc(11 * var(--u)); font-weight:700; letter-spacing:.11em; line-height:1.35; text-transform:uppercase; color:var(--orange-lite);\n  }\n  .vf-team .vf-person-name{ margin-top:calc(10 * var(--u)); font-size:clamp(calc(17 * var(--u)), 1.45vw, calc(20 * var(--u))); line-height:1.2; font-weight:400; letter-spacing:-.02em; color:#fff; }\n  .vf-team .vf-person-name b{ font-weight:750; }\n  \/* each card is a step: grooved cleats with an orange safety edge *\/\n  .vf-team .vf-person-step{\n    position:absolute; left:0; right:0; bottom:0; height:calc(12 * var(--u)); z-index:1;\n    background:\n      linear-gradient(var(--orange), var(--orange)) 0 0 \/ 100% 2px no-repeat,\n      repeating-linear-gradient(90deg, rgba(255,255,255,.16) 0 1px, transparent 1px calc(5 * var(--u)));\n    opacity:.85; transition:opacity .3s;\n  }\n  .vf-team .vf-person-card:hover .vf-person-step{ opacity:1; }\n  .vf-team .vf-person.is-ping .vf-person-card{ animation:vft-ping 1.4s var(--ease) 2; }\n  @keyframes vft-ping{ 40%{ border-color:var(--orange); box-shadow:0 0 0 calc(5 * var(--u)) rgba(255,122,0,.4), 0 calc(30 * var(--u)) calc(60 * var(--u)) calc(-34 * var(--u)) rgba(0,0,0,.7); } }\n\n  \/* The stair line under the flight: a tread below each card and a riser\n     to the next one. Its dashes run in the direction of travel. *\/\n  .vf-team .vf-tread, .vf-team .vf-riser{ position:absolute; pointer-events:none; }\n  .vf-team .vf-tread{\n    left:0; bottom:calc(-14 * var(--u)); width:calc(100% + calc(18 * var(--u))); height:2px;\n    background:repeating-linear-gradient(90deg, rgba(169,205,219,.55) 0 calc(9 * var(--u)), transparent calc(9 * var(--u)) calc(16 * var(--u)));\n    background-size:calc(16 * var(--u)) 2px;\n    animation:vft-dash-x 1s linear infinite;\n  }\n  .vf-team .vf-riser{\n    left:calc(100% + calc(18 * var(--u)) - 2px); bottom:calc(-14 * var(--u)); width:2px; height:calc(var(--s) * var(--form));\n    background:repeating-linear-gradient(0deg, rgba(169,205,219,.55) 0 calc(9 * var(--u)), transparent calc(9 * var(--u)) calc(16 * var(--u)));\n    background-size:2px calc(16 * var(--u));\n    animation:vft-dash-y 1s linear infinite;\n  }\n  .vf-team .vf-dept--down .vf-riser{ bottom:auto; top:calc(100% + calc(12 * var(--u))); animation-direction:reverse; }\n  .vf-team .vf-dept--down .vf-tread{ animation-direction:reverse; }\n  .vf-team .vf-person:last-child .vf-tread{ width:100%; }\n  .vf-team .vf-person:last-child .vf-riser{ display:none; }\n  \/* the landing under each department title continues the line *\/\n  .vf-team .vf-dept:not(.vf-dept--full) .vf-dept-head::after{\n    content:''; position:absolute; left:0; right:calc(-18 * var(--u)); bottom:calc(-14 * var(--u)); height:2px;\n    background:linear-gradient(90deg, rgba(255,122,0,.9), rgba(169,205,219,.5));\n  }\n  .vf-team .vf-dept--down .vf-dept-head::after{ left:calc(-18 * var(--u)); right:0; background:linear-gradient(270deg, rgba(255,122,0,.9), rgba(169,205,219,.5)); }\n  @keyframes vft-dash-x{ to{ background-position:calc(16 * var(--u)) 0; } }\n  @keyframes vft-dash-y{ to{ background-position:0 calc(-16 * var(--u)); } }\n\n  \/* =====================================================================\n     08 \u00b7 Together \u2014 the team photo opens up as you scroll\n     ===================================================================== *\/\n  .vf-team .vf-together{ margin-top:var(--sec-sm); --grow:1; }\n  .vf-team .vf-together-frame{\n    position:relative; height:clamp(calc(420 * var(--u)), 54vw, calc(720 * var(--u))); overflow:hidden; background:var(--teal-deep);\n    clip-path:inset(0 calc((1 - var(--grow)) * 8%) round calc((1 - var(--grow)) * calc(44 * var(--u))));\n  }\n  .vf-team .vf-together-img{\n    position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 45%;\n    transform:scale(calc(1.16 - var(--grow) * .16));\n  }\n  .vf-team .vf-together-shade{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(5,43,60,0) 40%, rgba(5,43,60,.55) 70%, rgba(5,43,60,.92)); }\n  .vf-team .vf-together-copy{ position:absolute; left:0; right:0; bottom:clamp(calc(28 * var(--u)), 5vw, calc(64 * var(--u))); color:#fff; }\n  .vf-team .vf-together-title{ margin-top:calc(14 * var(--u)); font-size:clamp(calc(40 * var(--u)), 7vw, calc(108 * var(--u))); line-height:1; letter-spacing:-.05em; color:#fff; }\n  .vf-team .vf-together .vf-eyebrow{ color:var(--orange-lite); }\n  .vf-team .vf-together .vf-script{ color:var(--orange); }\n\n  \/* =====================================================================\n     PH \u00b7 Get in touch \u2014 reach map: globe > Africa > Ghana > all 16 regions\n     ===================================================================== *\/\n  .vf-team .vf-join{ padding:var(--sec) 0 var(--sec); }\n  .vf-team .vf-join-grid{\n    display:grid; grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr); grid-template-areas:\"head map\" \"body map\";\n    column-gap:clamp(calc(32 * var(--u)), 5vw, calc(72 * var(--u))); row-gap:calc(26 * var(--u)); align-content:center;\n  }\n  .vf-team .vf-join-head{ grid-area:head; align-self:end; }\n  .vf-team .vf-join-body{ grid-area:body; align-self:start; }\n  .vf-team .vf-map{ grid-area:map; align-self:center; }\n  .vf-team .vf-join-tag{\n    display:inline-block; padding:calc(6 * var(--u)) calc(12 * var(--u)); border-radius:999px; border:1px solid var(--line-strong); background:#fff;\n    font-family:var(--font-mono); font-size:calc(11 * var(--u)); letter-spacing:.12em; text-transform:uppercase; color:var(--ink-soft);\n  }\n  .vf-team .vf-join-title{ margin-top:calc(20 * var(--u)); font-size:clamp(calc(32 * var(--u)), 3.9vw, calc(54 * var(--u))); line-height:1.02; letter-spacing:-.045em; font-weight:500; color:var(--ink); }\n  .vf-team .vf-join-title .vf-join-soft{ color:var(--teal-quiet); }\n  .vf-team .vf-join-lead{ max-width:30em; margin-top:calc(14 * var(--u)); font-size:calc(16.5 * var(--u)); line-height:1.6; color:var(--ink-soft); }\n  .vf-team .vf-reach{ display:flex; align-items:center; gap:calc(14 * var(--u)); padding-top:calc(18 * var(--u)); border-top:1px solid var(--line); }\n  .vf-team .vf-reach-num{ font-size:clamp(calc(46 * var(--u)), 4.6vw, calc(64 * var(--u))); line-height:.9; font-weight:700; letter-spacing:-.05em; color:var(--teal); }\n  .vf-team .vf-reach-label{ font-size:calc(14.5 * var(--u)); line-height:1.35; font-weight:600; color:var(--ink); }\n  .vf-team .vf-reach-label small{ display:block; font-size:calc(12.5 * var(--u)); font-weight:500; color:var(--ink-soft); }\n  \/* the 16 regions, in the order they light up on the map *\/\n  .vf-team .vf-regions{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); column-gap:calc(16 * var(--u)); margin-top:calc(14 * var(--u)); }\n  .vf-team .vf-regions li{\n    display:flex; align-items:center; gap:calc(9 * var(--u)); min-width:0; padding:calc(6 * var(--u)) 0; border-bottom:1px solid var(--line);\n    font-size:calc(13.5 * var(--u)); font-weight:500; color:var(--ink); white-space:nowrap;\n  }\n  .vf-team .vf-regions li::before{\n    content:''; flex:none; width:calc(8 * var(--u)); height:calc(8 * var(--u)); border-radius:50%; background:var(--teal-pale);\n    transition:background-color .4s, box-shadow .4s, transform .5s var(--ease-expo);\n  }\n  .vf-team .vf-regions li.is-lit::before, .vf-team:not(.vf-js) .vf-regions li::before{ background:var(--orange); box-shadow:0 0 0 calc(4 * var(--u)) rgba(255,122,0,.2); }\n  .vf-team .vf-join-body .vf-actions{ margin-top:calc(26 * var(--u)); }\n\n  \/* The stage: a bright blue sky. The WebGL canvas draws the real Earth (NASA\n     imagery); the 2D canvas draws a dot globe instead where WebGL or the images\n     aren't available; the SVG holds the maps. All share one projection, so they\n     line up while they cross-fade. *\/\n  .vf-team .vf-map-stage{\n    position:relative; aspect-ratio:1; border-radius:calc(32 * var(--u)); overflow:hidden; isolation:isolate; container-type:inline-size;\n    background:radial-gradient(62% 58% at 41% 50%, #3cb0ea 0%, #1a86c9 34%, #0f66a0 62%, #0b4f6c 100%);\n    box-shadow:0 calc(50 * var(--u)) calc(90 * var(--u)) calc(-50 * var(--u)) rgba(6,47,65,.8), inset 0 0 0 1px rgba(255,255,255,.08);\n  }\n  .vf-team .vf-map-stage::before{\n    content:''; position:absolute; inset:0; z-index:0; pointer-events:none;\n    background-image:linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);\n    background-size:calc(56 * var(--u)) calc(56 * var(--u)); background-position:center;\n    -webkit-mask-image:radial-gradient(closest-side, transparent 40%, #000); mask-image:radial-gradient(closest-side, transparent 40%, #000);\n  }\n  \/* floating light specks *\/\n  .vf-team .vf-map-specks{ position:absolute; inset:0; z-index:0; pointer-events:none; }\n  .vf-team .vf-map-specks i{\n    position:absolute; left:var(--x); top:var(--y); width:calc(var(--s) * var(--u)); height:calc(var(--s) * var(--u)); border-radius:50%;\n    background:#fff; box-shadow:0 0 calc(8 * var(--u)) calc(2 * var(--u)) rgba(190,235,255,.7); opacity:.25;\n    animation:vft-speck var(--t, 7s) var(--ease-io) infinite; animation-delay:var(--d, 0s);\n  }\n  @keyframes vft-speck{ 0%, 100%{ opacity:.18; transform:translateY(0); } 50%{ opacity:.95; transform:translateY(calc(-14 * var(--u))); } }\n  .vf-team .vf-globe, .vf-team .vf-earth, .vf-team .vf-map-svg{ position:absolute; inset:0; width:100%; height:100%; display:block; }\n  .vf-team .vf-globe, .vf-team .vf-earth{ z-index:1; }\n  .vf-team .vf-earth{ opacity:0; }\n  .vf-team .vf-map.is-earth .vf-earth{ opacity:1; }\n  \/* over the real Earth the maps are lines only: the imagery shows the land *\/\n  .vf-team .vf-map.is-earth .vf-map-land, .vf-team .vf-map.is-earth .vf-map-nland{ fill:none; }\n  .vf-team .vf-map.is-earth .vf-map-africa{ fill:rgba(255,122,0,.07); stroke:#ffb36b; stroke-width:1.6; }\n  .vf-team .vf-map.is-earth .vf-map-borders{ stroke:rgba(255,255,255,.42); }\n  .vf-team .vf-map.is-earth .vf-map-nborders{ stroke:rgba(255,255,255,.45); }\n  .vf-team .vf-map-svg{ z-index:2; overflow:hidden; }\n  .vf-team .vf-map-svg path{ vector-effect:non-scaling-stroke; }\n  .vf-team .vf-map-land{ fill:rgba(169,205,219,.13); }\n  .vf-team .vf-map-africa{ fill:rgba(169,205,219,.24); stroke:rgba(255,171,94,.75); stroke-width:1.2; stroke-linejoin:round; }\n  .vf-team .vf-map-borders{ fill:none; stroke:rgba(255,255,255,.2); stroke-width:.8; }\n  .vf-team .vf-map-nland{ fill:rgba(169,205,219,.12); }\n  .vf-team .vf-map-nborders{ fill:none; stroke:rgba(255,255,255,.28); stroke-width:1; stroke-dasharray:4 4; }\n  .vf-team .vf-map-ring{ fill:none; stroke:var(--orange); stroke-width:2; vector-effect:non-scaling-stroke; transform-box:fill-box; transform-origin:center; animation:vft-ring 1.8s var(--ease) infinite; }\n  @keyframes vft-ring{ 0%{ transform:scale(.55); } 100%{ transform:scale(1.1); stroke-opacity:0; } }\n  .vf-team .vf-rg{ fill:rgba(169,205,219,.16); stroke:rgba(255,255,255,.5); stroke-width:1; stroke-linejoin:round; transition:fill .6s var(--ease), stroke .6s; }\n  .vf-team .vf-map-gh.is-solid .vf-rg{ fill:var(--orange); stroke:var(--orange); }\n  .vf-team .vf-rg.is-lit, .vf-team:not(.vf-js) .vf-rg{ fill:rgba(255,138,31,.85); stroke:#ffe2c6; }\n  .vf-team .vf-gh-outline{ fill:none; stroke:#fff; stroke-width:1.8; stroke-linejoin:round; }\n  .vf-team .vf-pin-in{ transform:scale(0); transform-box:fill-box; transform-origin:center; transition:transform .6s var(--ease-expo); }\n  .vf-team .vf-pin.is-lit .vf-pin-in, .vf-team:not(.vf-js) .vf-pin-in{ transform:scale(var(--pin, 1)); }\n  .vf-team .vf-pin-dot{ fill:#fff; stroke:var(--orange); stroke-width:.22; }\n  .vf-team .vf-pin-pulse{ fill:none; stroke:#fff; stroke-width:.12; opacity:0; transform-box:fill-box; transform-origin:center; }\n  .vf-team .vf-pin.is-lit .vf-pin-pulse{ animation:vft-pulse 1.8s var(--ease) infinite; }\n  @keyframes vft-pulse{ 0%{ transform:scale(1); opacity:.9; } 100%{ transform:scale(3.4); opacity:0; } }\n  .vf-team .vf-ml{\n    font-family:var(--font); font-size:1.25px; font-weight:600; letter-spacing:.14em; fill:rgba(255,255,255,.72); text-anchor:middle;\n    paint-order:stroke; stroke:rgba(4,34,48,.55); stroke-width:.32px; stroke-linejoin:round;\n  }\n  .vf-team .vf-ml--sea{ font-style:italic; letter-spacing:.06em; fill:rgba(190,230,245,.8); }\n  .vf-team .vf-map-tick text{\n    font-family:var(--font); font-size:1.9px; font-weight:700; letter-spacing:-.01em; fill:#fff;\n    paint-order:stroke; stroke:#052b3c; stroke-width:.6px; stroke-linejoin:round;\n  }\n  .vf-team .vf-map-tick{ opacity:0; }\n  .vf-team .vf-map-tick.is-on{ animation:vft-tick 1.1s var(--ease) both; }\n  @keyframes vft-tick{ 0%{ opacity:0; } 15%, 75%{ opacity:1; } 100%{ opacity:0; } }\n\n  .vf-team .vf-map-badge{\n    position:absolute; left:50%; bottom:calc(30 * var(--u)); z-index:3;\n    display:inline-flex; align-items:center; gap:calc(9 * var(--u)); padding:calc(9 * var(--u)) calc(16 * var(--u)) calc(9 * var(--u)) calc(9 * var(--u));\n    border-radius:999px; background:var(--orange); color:var(--on-orange); font-size:calc(13.5 * var(--u)); font-weight:700; white-space:nowrap;\n    box-shadow:0 calc(18 * var(--u)) calc(34 * var(--u)) calc(-14 * var(--u)) rgba(0,0,0,.6);\n    opacity:0; transform:translate(-50%, calc(12 * var(--u))) scale(.94); transition:opacity .5s, transform .7s var(--ease-expo);\n  }\n  .vf-team .vf-map-badge.is-on, .vf-team:not(.vf-js) .vf-map-badge{ opacity:1; transform:translate(-50%, 0); }\n  .vf-team .vf-map-badge i{ width:calc(24 * var(--u)); height:calc(24 * var(--u)); border-radius:50%; display:grid; place-items:center; background:var(--on-orange); color:var(--orange); }\n  .vf-team .vf-map-badge svg{ width:calc(13 * var(--u)); height:calc(13 * var(--u)); }\n  .vf-team .vf-map-badge-short{ display:none; }\n  .vf-team .vf-map-credit{ margin-top:calc(12 * var(--u)); text-align:right; font-size:calc(11 * var(--u)); color:var(--ink-soft); }\n  .vf-team:not(.vf-js) .vf-map-af{ opacity:.15; }\n\n  \/* =====================================================================\n     Scroll + text reveal system (only when JS runs and motion is allowed)\n     ===================================================================== *\/\n  .vf-team [data-vf-split] .vf-w{ display:inline-block; vertical-align:top; overflow:hidden; padding:.08em 0 .14em; margin:-.08em 0 -.14em; }\n  .vf-team [data-vf-split] .vf-w--free{ overflow:visible; }\n  .vf-team [data-vf-split] .vf-wi{ display:inline-block; }\n  .vf-team .vf-word{ display:inline-block; white-space:nowrap; }\n  .vf-team.vf-js [data-vf-split] .vf-wi{\n    transform:translate3d(0, 108%, 0) rotate(3deg); opacity:0;\n    transition:transform 1.1s var(--ease-expo), opacity .8s var(--ease);\n    transition-delay:calc(var(--i) * var(--step, 55ms) + var(--sd, 0) * 1ms);\n  }\n  .vf-team.vf-js [data-vf-split].is-in .vf-wi{ transform:none; opacity:1; }\n  .vf-team.vf-js [data-vf-split] .vf-w--free .vf-wi{\n    transform:none; opacity:1;\n    clip-path:inset(-50% 100% -50% -12%);\n    transition:clip-path 1.25s var(--ease-io);\n    transition-delay:calc(var(--i) * var(--step, 55ms) + var(--sd, 0) * 1ms + 150ms);\n  }\n  .vf-team.vf-js [data-vf-split].is-in .vf-w--free .vf-wi{ clip-path:inset(-50% -12% -50% -12%); }\n\n  .vf-team.vf-js [data-vf-reveal]{\n    opacity:0; transform:translate3d(0, calc(30 * var(--u)), 0);\n    transition:opacity .9s var(--ease), transform 1.2s var(--ease-expo);\n    transition-delay:calc(var(--d, 0) * 1ms);\n  }\n  .vf-team.vf-js [data-vf-reveal].is-in{ opacity:1; transform:none; }\n  .vf-team.vf-js [data-vf-stagger] > *{\n    opacity:0; transform:translate3d(0, calc(40 * var(--u)), 0) scale(.97);\n    transition:opacity .9s var(--ease), transform 1.2s var(--ease-expo);\n    transition-delay:calc(var(--i, 0) * 90ms + var(--d, 0) * 1ms);\n  }\n  .vf-team.vf-js [data-vf-stagger].is-in > *{ opacity:1; transform:none; }\n  .vf-team.vf-js .vf-stats[data-vf-stagger] > *{ transform:translate3d(0, calc(24 * var(--u)), 0); }\n  .vf-team.vf-js .vf-stats[data-vf-stagger].is-in > *{ transform:none; }\n  .vf-team.vf-js .vf-stats[data-vf-stagger].is-in > .vf-stat:hover{ transform:translateY(calc(-4 * var(--u))); transition-delay:0s; }\n  \/* Cards ride in along the incline: up flights from lower left, down flights from upper left *\/\n  .vf-team.vf-js .vf-stairs .vf-person-card{ transition-delay:calc(var(--i) * 110ms); }\n  .vf-team.vf-js .vf-stairs:not(.is-in) .vf-person-card{ opacity:0; transform:translate3d(calc(-36 * var(--u)), calc(52 * var(--u)), 0); }\n  .vf-team.vf-js .vf-dept--down .vf-stairs:not(.is-in) .vf-person-card{ transform:translate3d(calc(-36 * var(--u)), calc(-52 * var(--u)), 0); }\n  .vf-team.vf-js .vf-stairs.is-done .vf-person-card{ transition-delay:0s; }\n  .vf-team.vf-js .vf-leaders:not(.is-in) .vf-leader{ opacity:0; }\n  .vf-team.vf-js .vf-leaders .vf-leader{ transition:opacity 1s var(--ease); }\n  .vf-team.vf-js .vf-leaders .vf-leader:nth-child(2){ transition-delay:.2s; }\n\n  \/* ===== Responsive ===== *\/\n  @media (max-width:1180px){\n    .vf-team .vf-hero-copy{ max-width:calc(540 * var(--u)); }\n    .vf-team .vf-esc-flight{ --fx:56%; }\n    .vf-team{ --e:calc(var(--u) * .88); }\n  }\n  @media (max-width:1080px){\n    \/* three cards per row; each row is its own short flight *\/\n    .vf-team .vf-dept, .vf-team .vf-dept--full{ display:block; padding-top:0; }\n    .vf-team .vf-dept-head, .vf-team .vf-dept--down .vf-dept-head{ text-align:left; }\n    .vf-team .vf-dept--down .vf-dept-head > *{ margin-left:0; }\n    .vf-team .vf-dept-head::after{ display:none; }\n    .vf-team .vf-stairs{\n      grid-template-columns:repeat(3, minmax(0, 1fr)); row-gap:calc(var(--s) * 2 + calc(24 * var(--u)));\n      margin-top:calc(26 * var(--u)); padding-top:calc(var(--s) * 2);\n    }\n    .vf-team .vf-dept[style*=\"--n:1\"] .vf-stairs{ padding-top:0; }\n    .vf-team .vf-dept[style*=\"--n:2\"] .vf-stairs{ padding-top:var(--s); }\n    \/* --c = column in the row; up flights rise left to right, down flights fall *\/\n    .vf-team .vf-person{ --c:0; }\n    .vf-team .vf-person:nth-child(3n+2){ --c:1; }\n    .vf-team .vf-person:nth-child(3n){ --c:2; }\n    .vf-team .vf-dept .vf-person{ --k:var(--c); }\n    .vf-team .vf-dept--down .vf-person{ --k:calc(2 - var(--c)); }\n    .vf-team .vf-tread, .vf-team .vf-riser{ display:none; }\n  }\n  @media (max-width:900px){\n    .vf-team{ --e:calc(var(--u) * .74); }\n    .vf-team .vf-hero-copy{ max-width:none; }\n    .vf-team .vf-hero-stage{ min-height:0; }\n    .vf-team .vf-esc{\n      position:relative; left:auto; top:auto; right:auto; bottom:auto;\n      height:calc(430 * var(--e)); margin:calc(10 * var(--u)) calc(-24 * var(--u)) calc(-40 * var(--u));\n    }\n    .vf-team .vf-esc-flight{ --fx:6%; --fy:calc(-40 * var(--e)); }\n    .vf-team .vf-hbadges{ position:static; display:flex; flex-wrap:wrap; gap:calc(10 * var(--u)); margin-top:calc(30 * var(--u)); }\n    .vf-team .vf-hbadge{ position:static; transform:none; }\n    .vf-team .vf-hbadge-in{ animation:none; box-shadow:0 calc(14 * var(--u)) calc(26 * var(--u)) calc(-16 * var(--u)) rgba(0,0,0,.6); }\n    .vf-team .vf-stats{ grid-template-columns:repeat(2, minmax(0, 1fr)); row-gap:calc(30 * var(--u)); }\n    .vf-team .vf-stat:nth-child(3){ border-left:0; }\n    .vf-team .vf-intro-head{ grid-template-columns:minmax(0, 1fr); }\n    \/* reach map: title, then the map, then the region list *\/\n    .vf-team .vf-join-grid{ grid-template-columns:minmax(0, 1fr); grid-template-areas:\"head\" \"map\" \"body\"; }\n    .vf-team .vf-map{ width:min(100%, calc(560 * var(--u))); justify-self:center; }\n  }\n  @media (max-width:560px){\n    .vf-team .vf-regions{ grid-template-columns:repeat(2, minmax(0, 1fr)); }\n    .vf-team .vf-map-stage{ border-radius:calc(24 * var(--u)); }\n    \/* shorter badge, parked over the sea at bottom right so it never covers the coast *\/\n    .vf-team .vf-map-badge{ left:auto; right:calc(14 * var(--u)); bottom:calc(18 * var(--u)); font-size:calc(11.5 * var(--u)); padding:calc(6 * var(--u)) calc(12 * var(--u)) calc(6 * var(--u)) calc(6 * var(--u)); transform:translateY(calc(10 * var(--u))) scale(.94); }\n    .vf-team .vf-map-badge.is-on, .vf-team:not(.vf-js) .vf-map-badge{ transform:none; }\n    .vf-team .vf-map-badge i{ width:calc(20 * var(--u)); height:calc(20 * var(--u)); }\n    .vf-team .vf-map-badge-long, .vf-team .vf-ml--sea{ display:none; }\n    .vf-team .vf-map-badge-short{ display:inline; }\n    \/* map labels and pins a little larger on small stages *\/\n    .vf-team .vf-ml{ font-size:1.7px; }\n    .vf-team .vf-map-tick text{ font-size:2.6px; stroke-width:.8px; }\n    .vf-team .vf-pin{ --pin:1.45; }\n  }\n  @media (max-width:760px){\n    .vf-team .vf-level-rail{ display:none; }\n    .vf-team .vf-dept{ --form:1 !important; --s:calc(46 * var(--u)); }\n    .vf-team .vf-stairs{ grid-template-columns:repeat(2, minmax(0, 1fr)); row-gap:calc(18 * var(--u)); padding-top:0 !important; padding-bottom:var(--s); }\n    \/* phones: a simple staggered grid, every second card one step lower *\/\n    .vf-team .vf-person{ --m:0; }\n    .vf-team .vf-person:nth-child(2n){ --m:-1; }\n    .vf-team .vf-dept .vf-person, .vf-team .vf-dept--down .vf-person{ --k:var(--m); }\n    .vf-team .vf-leaders{ gap:calc(18 * var(--u)); }\n    .vf-team .vf-leader-label{ padding-left:calc(10 * var(--u)); }\n    .vf-team .vf-xs--l, .vf-team .vf-dots-v{ display:none; }\n  }\n  @media (max-width:560px){\n    .vf-team .vf-wrap{ padding:0 calc(16 * var(--u)); }\n    .vf-team .vf-esc{ margin-left:calc(-16 * var(--u)); margin-right:calc(-16 * var(--u)); }\n    .vf-team .vf-scramble{ font-size:calc(10.5 * var(--u)); letter-spacing:.2em; }\n    .vf-team .vf-stats{ padding:calc(26 * var(--u)) calc(4 * var(--u)); }\n    .vf-team .vf-stat{ padding:calc(4 * var(--u)) calc(16 * var(--u)); }\n    .vf-team .vf-btn{ height:calc(50 * var(--u)); padding-left:calc(22 * var(--u)); font-size:calc(15 * var(--u)); }\n    .vf-team .vf-hbadge-in{ font-size:calc(12.5 * var(--u)); }\n    .vf-team .vf-hbadge:nth-child(3){ display:none; }\n    .vf-team .vf-person-card{ padding:calc(14 * var(--u)) calc(14 * var(--u)) calc(26 * var(--u)); border-radius:calc(20 * var(--u)); }\n    .vf-team .vf-person-role{ font-size:calc(10 * var(--u)); letter-spacing:.08em; }\n    .vf-team .vf-person-name{ font-size:calc(16 * var(--u)); }\n    .vf-team .vf-leader-role{ font-size:calc(10.5 * var(--u)); letter-spacing:.1em; }\n    .vf-team .vf-leader-name{ font-size:calc(20 * var(--u)); }\n  }\n\n  @media (prefers-reduced-motion: reduce){\n    .vf-team, .vf-team *, .vf-team *::before, .vf-team *::after{ transition:none !important; animation:none !important; }\n  }\n<\/style>\n\n<div class=\"vf-team\" id=\"vfTeam\">\n\n  <!-- Sticky escalator display: shows the level (section) you're on; click for the directory -->\n  <div class=\"vf-level-rail\">\n    <div class=\"vf-level is-away\">\n      <div class=\"vf-level-panel\" id=\"vfLevelPanel\" hidden>\n        <span class=\"vf-level-panel-title\">Directory<\/span>\n      <\/div>\n      <button type=\"button\" class=\"vf-level-display\" aria-expanded=\"false\" aria-controls=\"vfLevelPanel\" aria-label=\"Jump to a section of this page\">\n        <svg class=\"vf-level-glyph\" viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M2 19h5L17 8h5\"\/><circle class=\"vf-level-dot\" cx=\"12\" cy=\"13.5\" r=\"2.2\"\/><\/svg>\n        <span class=\"vf-level-num\" aria-hidden=\"true\"><span>G<\/span><\/span>\n        <span class=\"vf-level-name\">Lobby<\/span>\n      <\/button>\n    <\/div>\n  <\/div>\n\n  <!-- ============================== G \u00b7 LOBBY ============================== -->\n  <section class=\"vf-sec vf-hero vf-dark\" data-level=\"G\" data-level-name=\"Lobby\" aria-label=\"The 3VF LTD team\">\n    <div class=\"vf-band\" aria-hidden=\"true\"><\/div>\n    <div class=\"vf-hero-inner\">\n      <div class=\"vf-wrap vf-hero-stage\">\n\n        <div class=\"vf-hero-copy\" data-vf-speed=\"0.08\">\n          <span class=\"vf-eyebrow\" data-vf-reveal>Our team<\/span>\n          <p class=\"vf-scramble\" data-vf-scramble=\"ENGINEERS \u00b7 TECHNICIANS \u00b7 PROFESSIONALS\">\n            <span aria-hidden=\"true\">ENGINEERS \u00b7 TECHNICIANS \u00b7 PROFESSIONALS<\/span><span class=\"vf-sr\">Engineers, technicians and professionals<\/span>\n          <\/p>\n          <h1 class=\"vf-h1\" data-vf-split style=\"--sd:150\">The people who keep Ghana <em class=\"vf-script\">moving.<svg class=\"vf-swash\" viewBox=\"0 0 300 26\" aria-hidden=\"true\"><path pathLength=\"1\" d=\"M5 19C80 7 180 4 295 13\"\/><\/svg><\/em><\/h1>\n          <p class=\"vf-hero-lead\" data-vf-reveal style=\"--d:550\">\n            Meet the people behind every installation, maintenance visit and modernization &mdash;\n            the team keeping Ghana's lifts and escalators running safely and smoothly.\n          <\/p>\n          <div class=\"vf-actions\" data-vf-reveal style=\"--d:700\">\n            <a class=\"vf-btn vf-btn--primary\" href=\"#vf-leadership\" data-vf-magnetic>\n              <span class=\"vf-btn-label\">Meet the team<\/span>\n              <span class=\"vf-btn-icon vf-btn-icon--down\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 5v14M6 13l6 6 6-6\"\/><\/svg><\/span>\n            <\/a>\n            <a class=\"vf-btn vf-btn--ghost\" href=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/08\/3VF_LTD_Company_Profile.pdf\" target=\"_blank\" rel=\"noopener\" data-vf-magnetic>\n              <span class=\"vf-btn-label\">Company profile<\/span>\n              <span class=\"vf-btn-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M5 12h14M13 6l6 6-6 6\"\/><\/svg><\/span>\n            <\/a>\n          <\/div>\n        <\/div>\n\n        <!-- Twin escalators: the up flight in front, the down flight behind.\n             To change who rides, edit the img src, the name and the role. -->\n        <div class=\"vf-esc\" aria-hidden=\"true\">\n          <div class=\"vf-esc-flight\">\n            <div class=\"vf-lane vf-lane--down\">\n              <span class=\"vf-lane-rail\"><i><\/i><\/span><span class=\"vf-lane-glass\"><\/span><span class=\"vf-lane-steps\"><i><\/i><\/span><span class=\"vf-lane-truss\"><\/span>\n              <a class=\"vf-rider\" style=\"--i:0\" href=\"#vf-p-waye\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/05\/cropped_circle_image-16.png\"><span class=\"vf-rider-tag\">Waye DARKO<small>General Manager<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:1\" href=\"#vf-p-sampson\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-5.png\"><span class=\"vf-rider-tag\">Sampson ANIM<small>Route Manager (Northern Sector)<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:2\" href=\"#vf-p-bill\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-10.png\"><span class=\"vf-rider-tag\">Bill KELVIN OFOSU<small>Transport\/Operations Coordinator<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:3\" href=\"#vf-p-caleb\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/09\/cropped_circle_image-5.png\"><span class=\"vf-rider-tag\">Caleb QUARSHIE<small>Sales Engineer<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:4\" href=\"#vf-p-samuel\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-7.png\"><span class=\"vf-rider-tag\">Samuel ANIM<small>Accounts Officer Receivable<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:5\" href=\"#vf-p-isaac\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-8.png\"><span class=\"vf-rider-tag\">Isaac M. YAABONDIN<small>Accounts Officer Payable<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:6\" href=\"#vf-p-linda\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/05\/cropped_circle_image-6.png\"><span class=\"vf-rider-tag\">Linda DARKO<small>Administrative Officer<\/small><\/span><\/span><\/a>\n            <\/div>\n            <div class=\"vf-lane vf-lane--up\">\n              <span class=\"vf-lane-rail\"><i><\/i><\/span><span class=\"vf-lane-glass\"><\/span><span class=\"vf-lane-steps\"><i><\/i><\/span><span class=\"vf-lane-truss\"><\/span>\n              <a class=\"vf-rider\" style=\"--i:0\" href=\"#vf-p-francis\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-15.png\"><span class=\"vf-rider-tag\">Francis DOMERTEY<small>Managing Director<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:1\" href=\"#vf-p-phyllis\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-3.png\"><span class=\"vf-rider-tag\">Phyllis DOMERTEY<small>Human Resource Manager<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:2\" href=\"#vf-p-ebenezer\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-4.png\"><span class=\"vf-rider-tag\">Ebenezer A. YEBOAH<small>Maintenance Manager<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:3\" href=\"#vf-p-edem\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-14.png\"><span class=\"vf-rider-tag\">Edem SANDOR<small>Construction Supervisor<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:4\" href=\"#vf-p-desmond\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-12.png\"><span class=\"vf-rider-tag\">Desmond MENSAH<small>Maintenance Supervisor<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:5\" href=\"#vf-p-emmanuel-a\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-9.png\"><span class=\"vf-rider-tag\">Emmanuel A. DARKO<small>Sales Engineer<\/small><\/span><\/span><\/a>\n              <a class=\"vf-rider\" style=\"--i:6\" href=\"#vf-p-emmanuel-k\" tabindex=\"-1\"><span class=\"vf-rider-in\"><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"\" draggable=\"false\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/09\/cropped_circle_image-4.png\"><span class=\"vf-rider-tag\">Emmanuel K. ANDERSON<small>Finance Team Head<\/small><\/span><\/span><\/a>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"vf-hbadges\">\n          <span class=\"vf-hbadge vf-depth\" style=\"--d:22; right:1%; top:104%\">\n            <span class=\"vf-hbadge-in\" style=\"--bg:#ffe1c2; --fg:#5c2c00; --ic:#ff7a00\">\n              <span class=\"vf-hbadge-ico\"><svg viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"9\" r=\"5.5\"\/><path d=\"M8.6 13.4 7.2 21l4.8-2.6 4.8 2.6-1.4-7.6\"\/><\/svg><\/span>\n              <span><b>30+ years<\/b> of OTIS\/CFAO legacy<\/span>\n            <\/span>\n          <\/span>\n          <span class=\"vf-hbadge vf-depth\" style=\"--d:-26; right:-1%; top:-4%\">\n            <span class=\"vf-hbadge-in\" style=\"--bg:#e3eef2; --fg:#073a50; --ic:#0b4f6c; --bd:-2s\">\n              <span class=\"vf-hbadge-ico\"><svg viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"8.5\"\/><path d=\"M12 7.5V12l3 2\"\/><\/svg><\/span>\n              <span><b>24\/7<\/b> technician availability<\/span>\n            <\/span>\n          <\/span>\n          <span class=\"vf-hbadge vf-depth\" style=\"--d:18; left:60%; top:4%\">\n            <span class=\"vf-hbadge-in\" style=\"--bd:-4s\">\n              <span class=\"vf-hbadge-ico\"><svg viewBox=\"0 0 24 24\"><path d=\"M12 3.2 19 6v5.4c0 4.3-2.9 8-7 9.4-4.1-1.4-7-5.1-7-9.4V6z\"\/><path d=\"m8.8 12.1 2.2 2.2 4.3-4.5\"\/><\/svg><\/span>\n              <span><b>Ghana Code<\/b> \u00b7 EN81 \u00b7 ASME<\/span>\n            <\/span>\n          <\/span>\n        <\/div>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- ============================== 01 \u00b7 OUR PEOPLE ============================== -->\n  <section class=\"vf-sec vf-intro\" data-level=\"01\" data-level-name=\"Our people\">\n    <div class=\"vf-wrap\">\n\n      <div class=\"vf-stats\" data-vf-stagger data-vf-spot>\n        <div class=\"vf-stat\">\n          <span class=\"vf-stat-icon\"><svg viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"9\" r=\"5.5\"\/><path d=\"M8.6 13.4 7.2 21l4.8-2.6 4.8 2.6-1.4-7.6\"\/><circle cx=\"12\" cy=\"9\" r=\"2\" fill=\"#ff7a00\" stroke=\"none\"\/><\/svg><\/span>\n          <b data-vf-count=\"30\" data-suffix=\"+\">30+<\/b>\n          <span>Years of combined industry legacy<\/span>\n        <\/div>\n        <div class=\"vf-stat\">\n          <span class=\"vf-stat-icon\"><svg viewBox=\"0 0 24 24\"><path d=\"M3.5 20.5h17M5.5 20.5V9.5l6.5-4 6.5 4v11M10 20.5v-4h4v4\"\/><path d=\"M9 12h.01M12 12h.01M15 12h.01\" stroke-width=\"2.4\"\/><path d=\"M12 2.5v3\" stroke=\"#ff7a00\"\/><\/svg><\/span>\n          <b data-vf-count=\"45\" data-suffix=\"+\">45+<\/b>\n          <span>Landmark projects delivered<\/span>\n        <\/div>\n        <div class=\"vf-stat\">\n          <span class=\"vf-stat-icon\"><svg viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"8.5\"\/><path d=\"M12 7.5V12l3 2\"\/><circle cx=\"12\" cy=\"12\" r=\"1.3\" fill=\"#ff7a00\" stroke=\"none\"\/><\/svg><\/span>\n          <b data-vf-count=\"24\" data-suffix=\"\/7\">24\/7<\/b>\n          <span>Technician availability<\/span>\n        <\/div>\n        <div class=\"vf-stat\">\n          <span class=\"vf-stat-icon\"><svg viewBox=\"0 0 24 24\"><circle cx=\"8\" cy=\"8\" r=\"3\"\/><circle cx=\"16.5\" cy=\"9.5\" r=\"2.5\"\/><path d=\"M2.5 19.5c.6-3.3 2.8-5.2 5.5-5.2s4.9 1.9 5.5 5.2M13.6 14.6c.9-.7 1.9-1 2.9-1 2.3 0 4.2 1.6 4.8 4.6\" \/><path d=\"M12 2.5v2\" stroke=\"#ff7a00\"\/><\/svg><\/span>\n          <b data-vf-count=\"5\" data-suffix=\"\">5<\/b>\n          <span>Departments, one team<\/span>\n        <\/div>\n      <\/div>\n\n      <div class=\"vf-intro-head\">\n        <div>\n          <span class=\"vf-eyebrow\" data-vf-reveal>Our people<\/span>\n          <h2 class=\"vf-h2\" data-vf-split>Our strength is our <em class=\"vf-script\">people.<\/em><\/h2>\n        <\/div>\n        <div class=\"vf-intro-copy\" data-vf-reveal style=\"--d:200\">\n          <p class=\"vf-lead\">At 3VF LTD, our strength lies in our people &mdash; a team of experienced engineers, skilled technicians and dedicated professionals.<\/p>\n          <p>Together we deliver high-quality elevator installation, lift maintenance and modernization services across Ghana, with a shared commitment to excellence and customer satisfaction.<\/p>\n        <\/div>\n      <\/div>\n\n      <p class=\"vf-highlight\">\n        Supported by a solid, well-structured management team, we ensure <mark>strong leadership, accountability<\/mark>\n        and efficient execution on projects nationwide.\n      <\/p>\n\n    <\/div>\n  <\/section>\n\n  <!-- ============================== 02 \u00b7 LEADERSHIP ============================== -->\n  <section class=\"vf-sec vf-leadsec\" data-level=\"02\" data-level-name=\"Leadership\" id=\"vf-leadership\">\n    <div class=\"vf-lead-decor\" aria-hidden=\"true\">\n      <span class=\"vf-arc vf-arc--r\"><\/span>\n      <span class=\"vf-xs vf-xs--l\"><\/span>\n      <span class=\"vf-dots-v vf-dots-v--a\"><\/span><span class=\"vf-dots-v vf-dots-v--b\"><\/span>\n    <\/div>\n    <div class=\"vf-wrap\">\n      <div class=\"vf-lead-head\">\n        <span class=\"vf-eyebrow\" data-vf-reveal>Leadership<\/span>\n        <h2 class=\"vf-h2\" data-vf-split>Leading the <em class=\"vf-script\">ride.<\/em><\/h2>\n        <p data-vf-reveal style=\"--d:250\">Strong leadership, accountability and efficient execution &mdash; from the top floor down to every site.<\/p>\n      <\/div>\n\n      <div class=\"vf-leaders\">\n        <article class=\"vf-leader\" id=\"vf-p-francis\">\n          <div class=\"vf-leader-photo\">\n            <svg class=\"vf-ring\" viewBox=\"0 0 200 200\" aria-hidden=\"true\"><circle class=\"vf-ring-a\" cx=\"100\" cy=\"100\" r=\"98\" pathLength=\"100\"\/><circle class=\"vf-ring-b\" cx=\"100\" cy=\"100\" r=\"98\" pathLength=\"100\"\/><\/svg>\n            <img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Francis DOMERTEY\" decoding=\"async\" width=\"649\" height=\"649\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-15.png\">\n            <span class=\"vf-leader-badge\" aria-hidden=\"true\">MD<\/span>\n          <\/div>\n          <div class=\"vf-leader-label\">\n            <span class=\"vf-leader-role\">Managing Director<\/span>\n            <h3 class=\"vf-leader-name\">Francis <b>DOMERTEY<\/b><\/h3>\n          <\/div>\n        <\/article>\n        <article class=\"vf-leader\" id=\"vf-p-waye\">\n          <div class=\"vf-leader-photo\">\n            <svg class=\"vf-ring\" viewBox=\"0 0 200 200\" aria-hidden=\"true\"><circle class=\"vf-ring-a\" cx=\"100\" cy=\"100\" r=\"98\" pathLength=\"100\"\/><circle class=\"vf-ring-b\" cx=\"100\" cy=\"100\" r=\"98\" pathLength=\"100\"\/><\/svg>\n            <img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Waye DARKO\" decoding=\"async\" width=\"615\" height=\"614\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/05\/cropped_circle_image-16.png\">\n            <span class=\"vf-leader-badge\" aria-hidden=\"true\">GM<\/span>\n          <\/div>\n          <div class=\"vf-leader-label\">\n            <span class=\"vf-leader-role\">General Manager<\/span>\n            <h3 class=\"vf-leader-name\">Waye <b>DARKO<\/b><\/h3>\n          <\/div>\n        <\/article>\n      <\/div>\n\n      <div class=\"vf-org\" aria-hidden=\"true\">\n        <span class=\"vf-org-line\"><i class=\"vf-org-car\"><\/i><\/span>\n        <span class=\"vf-org-chip\">5 departments<\/span>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- ============================== 03\u201307 \u00b7 THE TEAM ==============================\n       Each department is one flight. --n = people in it, --hs = columns\n       left for the title (5 - n). vf-dept--up rises to the right,\n       vf-dept--down descends; keep them alternating. -->\n  <section class=\"vf-sec vf-crew vf-dark\" aria-label=\"Departments\">\n    <div class=\"vf-band\" aria-hidden=\"true\">\n      <span class=\"vf-outline\" data-vf-drift=\"-380\">the team<\/span>\n    <\/div>\n    <div class=\"vf-crew-inner\">\n      <div class=\"vf-wrap\">\n        <div class=\"vf-crew-head\">\n          <span class=\"vf-eyebrow\" data-vf-reveal>The team<\/span>\n          <h2 class=\"vf-h2\" data-vf-split>Five departments. <em class=\"vf-script\">One smooth ride.<\/em><\/h2>\n          <p data-vf-reveal style=\"--d:250\">Ride through 3VF one floor at a time &mdash; the people who keep your lifts and escalators moving.<\/p>\n        <\/div>\n\n        <!-- 03 \u00b7 Human Resources -->\n        <div class=\"vf-dept vf-dept--up\" data-level=\"03\" data-level-name=\"Human Resources\" style=\"--n:1; --hs:4\">\n          <header class=\"vf-dept-head\">\n            <span class=\"vf-dept-dir\"><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M2 19h5L17 8h5\"\/><\/svg>Ascending<\/span>\n            <span class=\"vf-dept-num\" aria-hidden=\"true\">03<\/span>\n            <h3 class=\"vf-dept-name\">Human Resources<\/h3>\n            <p class=\"vf-dept-sum\">Finding, developing and looking after the people behind every ride.<\/p>\n          <\/header>\n          <ol class=\"vf-stairs\">\n            <li class=\"vf-person\" id=\"vf-p-phyllis\" style=\"--i:0\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Phyllis DOMERTEY\" decoding=\"async\" width=\"775\" height=\"776\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-3.png\"><\/div>\n                <span class=\"vf-person-role\">Human Resource Manager<\/span>\n                <h4 class=\"vf-person-name\">Phyllis <b>DOMERTEY<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n          <\/ol>\n        <\/div>\n\n        <!-- 04 \u00b7 Operations & Technical -->\n        <div class=\"vf-dept vf-dept--down vf-dept--full\" data-level=\"04\" data-level-name=\"Operations\" style=\"--n:5; --hs:3\">\n          <header class=\"vf-dept-head\">\n            <span class=\"vf-dept-dir\"><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M2 8h5l10 11h5\"\/><\/svg>Descending<\/span>\n            <span class=\"vf-dept-num\" aria-hidden=\"true\">04<\/span>\n            <h3 class=\"vf-dept-name\">Operations &amp; Technical<\/h3>\n            <p class=\"vf-dept-sum\">Maintenance, construction and transport on projects nationwide &mdash; with a dedicated route manager for the Northern Sector.<\/p>\n          <\/header>\n          <ol class=\"vf-stairs\">\n            <li class=\"vf-person\" id=\"vf-p-ebenezer\" style=\"--i:0\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Ebenezer A. YEBOAH\" decoding=\"async\" width=\"682\" height=\"682\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-4.png\"><\/div>\n                <span class=\"vf-person-role\">Maintenance Manager<\/span>\n                <h4 class=\"vf-person-name\">Ebenezer A. <b>YEBOAH<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n            <li class=\"vf-person\" id=\"vf-p-edem\" style=\"--i:1\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Edem SANDOR\" decoding=\"async\" width=\"593\" height=\"593\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-14.png\"><\/div>\n                <span class=\"vf-person-role\">Construction Supervisor<\/span>\n                <h4 class=\"vf-person-name\">Edem <b>SANDOR<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n            <li class=\"vf-person\" id=\"vf-p-desmond\" style=\"--i:2\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Desmond MENSAH\" decoding=\"async\" width=\"1365\" height=\"1365\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-12.png\"><\/div>\n                <span class=\"vf-person-role\">Maintenance Supervisor<\/span>\n                <h4 class=\"vf-person-name\">Desmond <b>MENSAH<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n            <li class=\"vf-person\" id=\"vf-p-sampson\" style=\"--i:3\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Sampson ANIM\" decoding=\"async\" width=\"853\" height=\"853\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-5.png\"><\/div>\n                <span class=\"vf-person-role\">Route Manager (Northern Sector)<\/span>\n                <h4 class=\"vf-person-name\">Sampson <b>ANIM<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n            <li class=\"vf-person\" id=\"vf-p-bill\" style=\"--i:4\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Bill KELVIN OFOSU\" decoding=\"async\" width=\"1365\" height=\"1365\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-10.png\"><\/div>\n                <span class=\"vf-person-role\">Transport\/Operations Coordinator<\/span>\n                <h4 class=\"vf-person-name\">Bill <b>KELVIN OFOSU<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n          <\/ol>\n        <\/div>\n\n        <!-- 05 \u00b7 Sales -->\n        <div class=\"vf-dept vf-dept--up\" data-level=\"05\" data-level-name=\"Sales\" style=\"--n:2; --hs:3\">\n          <header class=\"vf-dept-head\">\n            <span class=\"vf-dept-dir\"><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M2 19h5L17 8h5\"\/><\/svg>Ascending<\/span>\n            <span class=\"vf-dept-num\" aria-hidden=\"true\">05<\/span>\n            <h3 class=\"vf-dept-name\">Sales<\/h3>\n            <p class=\"vf-dept-sum\">Sales engineers who match every building with the right OTIS elevator or escalator.<\/p>\n          <\/header>\n          <ol class=\"vf-stairs\">\n            <li class=\"vf-person\" id=\"vf-p-emmanuel-a\" style=\"--i:0\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Emmanuel A. DARKO\" decoding=\"async\" width=\"853\" height=\"853\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-9.png\"><\/div>\n                <span class=\"vf-person-role\">Sales Engineer<\/span>\n                <h4 class=\"vf-person-name\">Emmanuel A. <b>DARKO<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n            <li class=\"vf-person\" id=\"vf-p-caleb\" style=\"--i:1\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Caleb QUARSHIE\" decoding=\"async\" width=\"654\" height=\"654\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/09\/cropped_circle_image-5.png\"><\/div>\n                <span class=\"vf-person-role\">Sales Engineer<\/span>\n                <h4 class=\"vf-person-name\">Caleb <b>QUARSHIE<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n          <\/ol>\n        <\/div>\n\n        <!-- 06 \u00b7 Finance -->\n        <div class=\"vf-dept vf-dept--down\" data-level=\"06\" data-level-name=\"Finance\" style=\"--n:3; --hs:2\">\n          <header class=\"vf-dept-head\">\n            <span class=\"vf-dept-dir\"><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M2 8h5l10 11h5\"\/><\/svg>Descending<\/span>\n            <span class=\"vf-dept-num\" aria-hidden=\"true\">06<\/span>\n            <h3 class=\"vf-dept-name\">Finance<\/h3>\n            <p class=\"vf-dept-sum\">Accounts receivable and payable, led by the finance team head.<\/p>\n          <\/header>\n          <ol class=\"vf-stairs\">\n            <li class=\"vf-person\" id=\"vf-p-emmanuel-k\" style=\"--i:0\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Emmanuel K. ANDERSON\" decoding=\"async\" width=\"344\" height=\"344\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/09\/cropped_circle_image-4.png\"><\/div>\n                <span class=\"vf-person-role\">Finance Team Head<\/span>\n                <h4 class=\"vf-person-name\">Emmanuel K. <b>ANDERSON<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n            <li class=\"vf-person\" id=\"vf-p-samuel\" style=\"--i:1\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Samuel ANIM\" decoding=\"async\" width=\"1092\" height=\"1092\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-7.png\"><\/div>\n                <span class=\"vf-person-role\">Accounts Officer Receivable<\/span>\n                <h4 class=\"vf-person-name\">Samuel <b>ANIM<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n            <li class=\"vf-person\" id=\"vf-p-isaac\" style=\"--i:2\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Isaac M. YAABONDIN\" decoding=\"async\" width=\"1250\" height=\"1250\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/cropped_circle_image-8.png\"><\/div>\n                <span class=\"vf-person-role\">Accounts Officer Payable<\/span>\n                <h4 class=\"vf-person-name\">Isaac M. <b>YAABONDIN<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n          <\/ol>\n        <\/div>\n\n        <!-- 07 \u00b7 Administration -->\n        <div class=\"vf-dept vf-dept--up\" data-level=\"07\" data-level-name=\"Administration\" style=\"--n:1; --hs:4\">\n          <header class=\"vf-dept-head\">\n            <span class=\"vf-dept-dir\"><svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M2 19h5L17 8h5\"\/><\/svg>Ascending<\/span>\n            <span class=\"vf-dept-num\" aria-hidden=\"true\">07<\/span>\n            <h3 class=\"vf-dept-name\">Administration<\/h3>\n            <p class=\"vf-dept-sum\">Keeping the office, the paperwork and the schedules moving.<\/p>\n          <\/header>\n          <ol class=\"vf-stairs\">\n            <li class=\"vf-person\" id=\"vf-p-linda\" style=\"--i:0\">\n              <div class=\"vf-person-card\" data-vf-tilt data-vf-spot>\n                <div class=\"vf-person-photo\"><span class=\"vf-person-ring\" aria-hidden=\"true\"><\/span><img loading=\"lazy\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"Linda DARKO\" decoding=\"async\" width=\"1092\" height=\"1092\" class=\"lazyload\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/05\/cropped_circle_image-6.png\"><\/div>\n                <span class=\"vf-person-role\">Administrative Officer<\/span>\n                <h4 class=\"vf-person-name\">Linda <b>DARKO<\/b><\/h4>\n                <span class=\"vf-person-step\" aria-hidden=\"true\"><\/span>\n              <\/div>\n              <span class=\"vf-tread\" aria-hidden=\"true\"><\/span><span class=\"vf-riser\" aria-hidden=\"true\"><\/span>\n            <\/li>\n          <\/ol>\n        <\/div>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- ============================== 08 \u00b7 TOGETHER ============================== -->\n  <section class=\"vf-sec vf-together\" data-level=\"08\" data-level-name=\"Together\">\n    <div class=\"vf-together-frame\">\n      <img loading=\"lazy\" class=\"vf-together-img lazyload\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"The 3VF LTD team together\" decoding=\"async\" width=\"2048\" height=\"1365\" data-src=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/03\/IMG_9813.jpg\">\n      <div class=\"vf-together-shade\" aria-hidden=\"true\"><\/div>\n      <div class=\"vf-together-copy\">\n        <div class=\"vf-wrap\">\n          <span class=\"vf-eyebrow\" data-vf-reveal>Together<\/span>\n          <h2 class=\"vf-together-title\" data-vf-split>One team. <em class=\"vf-script\">Every floor.<\/em><\/h2>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- ============================== PH \u00b7 GET IN TOUCH ============================== -->\n  <section class=\"vf-sec vf-join\" data-level=\"PH\" data-level-name=\"Get in touch\">\n    <div class=\"vf-wrap vf-join-grid\">\n      <div class=\"vf-join-head\">\n        <span class=\"vf-join-tag\" data-vf-reveal>Get in touch<\/span>\n        <h2 class=\"vf-join-title\" data-vf-split>Safe and smooth <span class=\"vf-join-soft\">ride.<\/span><\/h2>\n        <p class=\"vf-join-lead\" data-vf-reveal style=\"--d:300\">New installations, maintenance or modernization &mdash; wherever your building is, our team is available in all 16 regions of Ghana.<\/p>\n      <\/div>\n\n      <!-- Reach map: a dot globe turns to Africa, zooms into Ghana, then the 16\n           regions light up one by one, starting from Accra. The paths are\n           pre-projected (orthographic, centred 8\u00b0E 5\u00b0N, 1000-unit square). -->\n      <!-- data-earth: folder with earth-blue-marble.jpg (NASA Blue Marble, public domain) and\n           earth-water.png (water mask). To host them yourself, upload both to the media library\n           and put that folder's URL here. -->\n      <figure class=\"vf-map\" data-vf-reveal style=\"--d:150\" data-earth=\"https:\/\/cdn.jsdelivr.net\/npm\/three-globe@2.45.3\/example\/img\/\" data-dots=\"0z011|0z011|1003115011|110312h011|13031|150213q011|160413u021|180413p0113z011|19051|1a0614a011|1b0813y051|1d07140061|1e0912k0423t04142081|1f0a12m0523w061430a1|1g0a12n0623y0i1|1h0b12o082400j1|1i0b12p092420k1|1j0c12q0b235022440k1|1k0f12s0b237022470j1|1l0f12s0c2380324a0h14z011|1m0g12t0c23a0224e0e1|1m0h12u0e23b0324g0914q031|1k0k12v0f23d0324j0714s021|1k0k12w0f23f0124n0314t011|1k0m12x0f24q0114v011|1k0n12y0e24k0114m0114z021|1j0p12y0f24g0314m0114w0214z021|1j0p12y0f24e0114w05155011|1j0o12y0f24d0114n0114v05153011|1k0m12y0g24c0314h0414m0214r0114t061|1j0j12x0i24c0214h0414m0214t021|1k0g12x0j24b0214h0414n021|1k0g12x0l24a0214d0114i031|1l0e12w0m2490114b0214j021|1l0b12m0422q0232u0p24b0114k0114o011|1i0111k0b12k0622q0132r0r23z011490114m031|1g0111l0211o0512j0622p0232r0r23w021480114c0114j0114l011|1f0111m0112h0w23h0123v0214a0314k011|1d0312g0w23d0113u031470614k011|1b0512f0v23b0513s031450614h011|160712f0t23a0613q051420614f011|140411a0211l0212e0s2380813p06140061|130411b0111h0212d0s2360a13n0813y071|120411d0312c0r2350a13k0b13w0b14a011|0z011110512c0q2330a13i0p1|0z0611d0112b0o2300813b0v1|0w0110y0711c0112a0n22y061360y1|0v0110x081170111b0112a0m22w061330z1|0u0110w0f1290c22n0422s0122u15143011|0t0i1280922s14140021|0r0k1270822q1213y041|0q0k125021290422k0312o1213s0213x021|0p0l1220412d0112g0112i0a12u0s13p0213v011|0o0l121041280112b0112d0212g0a12r0w13s011|0n0m11y051270112a0312j0312o0w1|0m0m11z04124011260512g0312k0y13l011|0m0p11y0c12b0112d0412j0w1|0m0l11b0111u1i1|0j0l116011180211s1h1|0i0o11p0211s1c1|0h0g10y0811l0111n0211q1b135011|0g0f10w0711j0111l0111r13130021|060110f0d10w0411h0111l0111n0111p1012v021|070110d0c10u0411f0111i0111k0111n0z12r011|040510a0e10s0311f0411k0111m0z12n011|040j10r0110y0211c0411h141|050h10n0210r0110w021130111b0211e131|00021030j10o0310t03110021180611f0w1|00011030i10n0210r041160511d0s1|03051090310d0110g0210k0210p051130411b0111d0m1|040110b0310f0510n0611101116011190g1|090310d0110f0110l05112011170811g011|0d0110i06113041|080110a0210e07110021|090110b0710m011|080810j011|07061|09011\">\n        <div class=\"vf-map-stage\" role=\"img\" aria-label=\"Animated map: the globe turns to Africa, zooms into Ghana, and all 16 regions of Ghana light up.\">\n          <span class=\"vf-map-specks\" aria-hidden=\"true\">\n            <i style=\"--x:8%; --y:14%; --s:3; --d:-1s\"><\/i><i style=\"--x:22%; --y:78%; --s:4; --d:-3s; --t:9s\"><\/i>\n            <i style=\"--x:34%; --y:9%; --s:2; --d:-5s\"><\/i><i style=\"--x:57%; --y:16%; --s:5; --d:-2s; --t:8s\"><\/i>\n            <i style=\"--x:71%; --y:7%; --s:3; --d:-6s\"><\/i><i style=\"--x:88%; --y:24%; --s:4; --d:-4s; --t:10s\"><\/i>\n            <i style=\"--x:93%; --y:68%; --s:3; --d:-1.5s\"><\/i><i style=\"--x:79%; --y:84%; --s:5; --d:-7s; --t:9s\"><\/i>\n            <i style=\"--x:48%; --y:90%; --s:3; --d:-2.5s\"><\/i><i style=\"--x:6%; --y:56%; --s:4; --d:-4.5s; --t:8s\"><\/i>\n            <i style=\"--x:15%; --y:33%; --s:2; --d:-3.5s\"><\/i><i style=\"--x:66%; --y:72%; --s:2; --d:-5.5s\"><\/i>\n          <\/span>\n          <canvas class=\"vf-globe\" aria-hidden=\"true\"><\/canvas>\n          <canvas class=\"vf-earth\" aria-hidden=\"true\"><\/canvas>\n          <svg class=\"vf-map-svg\" viewBox=\"380.333 434.333 83.333 83.333\" preserveAspectRatio=\"xMidYMid meet\" aria-hidden=\"true\" focusable=\"false\">\n            <path class=\"vf-map-land\" d=\"M319,34L325,31L332,29L332,29L340,26L344,25L349,23L347,24L343,26L333,29L329,30L327,31L319,34L324,32L319,35L313,37L307,39L313,37L319,35L328,31L326,33L322,35L318,36L314,38L309,40L306,41L300,43L299,43L302,42L288,48L283,50L283,50L280,51L275,53L275,53L275,53L291,46L307,39ZM230,79L229,80L222,85L216,89L214,91L208,95L201,101L193,107L187,113L189,111L197,106L207,98L211,95L215,93L220,90L226,87L230,84L236,79L242,75L250,71L256,67L268,60L270,60L269,62L271,61L265,66L263,68L264,69L257,72L248,78L248,79L245,82L251,80L260,76L264,74L245,91L240,94L236,100L238,102L237,104L232,109L232,112L225,119L217,122L211,123L203,128L199,128L196,125L192,125L186,128L181,130L164,142L166,142L176,135L185,131L188,131L186,134L180,138L170,149L170,153L174,153L183,147L179,151L178,154L171,157L163,160L153,166L152,165L157,160L165,155L159,155L157,157L153,159L146,162L140,167L135,174L135,176L129,177L128,179L124,180L119,186L114,191L117,187L111,195L104,202L108,198L112,192L103,204L102,205L96,214L91,219L89,221L86,225L82,229L79,233L73,241L70,246L62,261L54,276L48,289L48,288L50,283L58,266L61,262L67,250L68,249L66,251L66,251L75,236L85,221L95,207L105,193L116,179L128,166L140,153L152,141L165,129L178,118L191,107L205,96L219,86ZM17,369L17,370L16,375L16,375ZM8,413L7,417L6,422L6,424L7,419L8,423L7,428L8,429L10,423L12,413L14,408L15,409L20,400L19,406L17,409L16,417L15,422L14,429L15,429L16,423L18,413L20,411L22,404L21,410L23,411L23,419L27,420L30,425L32,421L39,422L36,424L36,428L38,430L40,434L39,441L42,444L44,447L49,466L53,469L57,467L61,470L65,474L69,482L70,486L71,486L74,506L76,508L76,514L73,521L74,524L82,526L83,535L86,530L101,540L104,545L103,550L109,548L120,554L129,554L138,562L146,572L157,576L159,579L164,595L162,609L153,626L150,635L145,648L149,663L150,681L149,684L151,695L149,705L150,713L147,716L147,720L142,720L135,722L133,725L129,726L126,732L125,739L129,749L133,760L132,764L134,776L133,784L135,791L135,794L136,798L135,802L131,800L126,797L124,797L120,792L122,796L129,803L132,807L136,811L138,814L142,822L140,825L136,825L133,824L143,836L142,838L139,835L139,837L145,843L148,845L147,844L151,847L151,849L153,852L161,861L160,861L161,863L165,868L171,872L174,874L179,879L181,882L188,888L191,892L203,900L201,900L204,902L210,907L207,905L196,897L192,894L188,891L183,887L172,877L166,872L162,868L159,866L154,861L144,851L147,854L136,841L133,839L140,847L139,845L121,825L117,820L106,806L106,806L92,784L85,774L78,763L75,757L69,747L65,739L58,724L51,707L44,690L35,665L32,660L31,656L26,647L19,630L16,621L13,609L9,592L6,575L4,564L3,554L3,550L2,542L1,536L1,531L1,525L0,520L0,510L0,509L0,498L0,495L1,490L1,480L2,480L3,470L4,455L5,445L5,440L6,433L6,431L7,424L5,431L5,436L4,438L5,433L5,429L5,429ZM269,58L272,56L272,57L267,59ZM352,25L357,23L360,22L360,23L355,25L353,25ZM266,60L268,59L267,61L263,63ZM373,17L370,17L371,17L374,16L378,15L379,15ZM394,12L396,11L398,11L397,11ZM406,9L402,10L400,11L398,11L401,10L408,9ZM366,19L371,17L380,15L384,14L386,13L389,13L393,12L391,12L388,13L387,13L384,14L381,15L377,16L375,17L377,17L377,17L374,19L370,19L366,20L367,20ZM220,123L208,131L212,130L212,131L209,133L210,135L212,134L213,136L208,141L211,140L206,147L200,152L197,151L203,145L194,150L193,149L198,147L197,145L189,144L194,140L195,138L200,135L212,126L221,121ZM290,48L284,51L281,53L281,52L279,54L276,55L278,53L282,52L274,55L278,52L278,52L282,51L295,45L294,45L291,47ZM349,26L352,25L348,27L345,29L341,30L344,30L339,32L338,34L335,35L328,38L323,39L320,42L320,44L314,47L316,48L310,50L299,54L301,52L307,48L305,48L300,50L293,56L286,60L280,63L281,62L285,58L276,65L274,66L274,63L276,60L279,58L282,57L288,52L286,53L283,53L286,51L292,49L294,49L297,48L301,46L309,43L315,40L319,38L321,37L323,36L328,34L331,32L328,33L327,33L329,31L334,29L337,28L340,27L341,26L349,24L356,22L359,21L361,21L356,22L350,24L357,22L360,22L351,25L346,26ZM367,18L365,19L363,20L356,22L355,22L349,23L350,23L358,21L365,19ZM415,7L413,8L408,9L400,10L402,10L406,9L407,9L409,8L412,8ZM366,18L365,18L365,19L363,19L359,20L355,22L348,24L347,24L347,24L364,19ZM387,13L389,12L388,13L390,12L390,12L390,12L386,13L376,16L376,16L378,15L383,14L383,14L383,14ZM421,7L423,7L425,6L425,6L420,7L416,8L411,9L408,10L405,10L399,11L399,11L401,11L405,10L410,9L410,9L413,8L417,7ZM430,6L432,6L433,6L436,6L436,6L433,6L438,6L440,6L441,6L440,6L442,6L442,7L441,7L440,8L438,8L433,9L431,9L428,9L429,9L423,10L420,10L413,11L411,11L409,11L408,11L407,12L405,12L401,13L395,14L392,14L389,15L387,15L388,15L386,16L381,17L383,16L382,15L384,14L388,13L390,13L396,12L396,12L392,13L398,12L400,11L403,11L405,11L408,10L411,9L416,8L414,9L417,9L418,8L418,8L421,7L428,6ZM310,42L307,43L306,43L310,41L315,39L316,39L314,40ZM193,128L195,129L194,132L192,133L191,131ZM176,145L174,148L176,149L172,152L172,149ZM761,191L757,184L750,183L740,173L744,173L742,169L749,168L745,162L742,158L733,157L727,162L727,166L723,167L722,174L731,180L733,185L742,193L752,201L757,203L753,204L757,217L761,222L767,223L772,227L780,227L787,225L786,223L783,218L779,210L774,208L773,203L769,203L767,197L772,199L775,196L766,188L763,191L765,196ZM995,429L995,427L995,428L992,414L991,407L990,401L989,396L987,387L986,382L980,362L978,356L981,367L979,365L977,355L974,347L970,338L966,328L960,316L958,312L957,312L960,320L958,319L959,322L957,325L959,331L960,337L959,343L960,354L960,366L961,369L958,376L959,383L964,401L965,409L967,424L966,425L966,431L967,434L965,437L964,446L960,439L954,419L948,407L943,391L937,380L927,354L921,336L917,342L914,341L906,332L907,329L897,320L894,318L890,312L885,307L864,312L842,309L836,300L833,298L826,305L818,303L811,297L804,295L790,278L783,277L782,280L778,280L785,291L789,298L800,305L802,311L809,320L806,315L808,309L810,312L812,321L814,324L828,324L834,307L836,310L839,316L847,324L855,326L864,336L861,352L859,352L859,358L861,364L856,369L855,375L852,375L851,381L839,387L836,389L836,396L821,405L816,412L811,412L808,416L797,419L793,424L783,426L774,400L774,394L769,385L764,382L756,368L747,362L741,354L738,343L732,334L724,330L721,323L701,300L698,300L698,290L697,289L689,275L691,261L693,248L691,240L686,234L680,233L677,237L668,239L661,235L654,235L649,239L642,235L635,236L629,228L623,224L625,219L620,215L626,208L635,208L636,202L648,203L654,198L660,196L670,195L682,200L691,202L702,201L707,197L703,189L692,184L683,179L675,177L669,173L672,172L674,166L670,164L676,161L671,161L665,164L660,164L657,167L658,170L662,172L667,172L667,174L662,176L656,180L652,179L652,175L646,174L649,169L639,167L638,165L633,166L630,174L626,177L627,185L624,193L627,197L634,204L627,204L620,210L617,206L610,205L603,207L608,211L601,212L597,209L599,215L603,218L600,219L608,225L609,229L603,227L606,231L601,232L605,238L601,238L595,235L589,225L581,215L575,211L573,199L567,195L551,188L545,183L542,178L538,177L537,180L535,175L536,175L531,174L527,176L526,181L529,185L535,188L539,194L546,199L551,199L551,202L569,210L569,214L565,211L559,210L556,214L562,217L556,227L553,228L555,220L549,213L537,205L532,204L516,193L514,186L506,183L496,187L491,191L478,189L469,192L468,196L468,200L461,204L453,206L444,218L446,222L440,230L435,231L429,237L414,237L406,242L403,241L400,234L394,233L384,235L386,224L383,221L391,206L391,198L392,194L391,191L401,186L422,189L438,189L441,185L445,171L436,161L428,159L428,154L436,153L445,155L444,147L449,150L463,145L465,140L470,139L474,138L477,137L483,128L490,125L494,126L504,123L503,117L501,114L500,108L503,105L507,105L512,102L511,108L514,109L508,114L510,117L510,119L515,121L515,123L523,120L532,124L535,122L548,117L554,120L559,120L559,117L566,115L563,111L562,107L563,103L567,101L572,105L576,105L575,101L569,97L568,94L578,91L587,92L590,89L584,87L577,87L564,90L561,88L556,86L556,82L552,77L555,72L563,66L562,64L556,62L550,63L548,66L550,69L539,77L538,84L547,90L544,95L540,97L540,106L538,111L532,110L530,115L524,115L522,110L518,104L514,96L510,93L502,99L496,100L489,98L488,92L488,81L492,78L502,74L510,69L522,55L533,47L539,46L544,46L546,43L551,43L556,42L566,44L564,45L569,47L570,46L577,48L585,48L600,52L605,54L608,57L607,59L603,60L586,58L584,58L592,61L598,68L607,70L605,68L602,66L602,64L613,66L614,65L609,62L612,58L619,59L617,56L612,54L611,52L606,49L615,50L619,52L616,53L619,55L623,56L626,55L623,52L629,46L631,46L632,49L636,49L635,48L639,47L640,45L646,47L644,45L638,43L637,42L644,42L648,43L662,46L660,44L653,42L650,41L647,40L639,36L635,33L629,30L629,30L634,30L638,31L643,34L646,35L652,37L662,42L668,43L672,46L679,52L682,52L680,50L680,49L677,47L674,45L669,44L665,41L663,41L659,39L652,36L644,34L641,31L636,29L636,29L641,31L648,33L650,34L644,32L643,30L644,30L650,31L643,29L634,26L634,25L636,24L636,24L631,23L626,21L626,20L623,19L622,18L620,17L620,17L622,17L617,16L617,15L613,14L610,13L606,12L608,13L611,13L611,13L615,14L613,13L612,13L615,13L617,14L622,15L631,18L634,18L635,19L633,18L638,19L636,19L634,18L634,18L650,23L667,29L683,35L699,41L715,49L731,56L746,65L761,74L776,83L790,93L804,103L818,114L831,125L844,137L857,149L869,162L880,175L891,189L902,203L912,217L922,231L931,246L939,261L947,277L955,293L962,309L968,325L974,341L979,358L984,375L988,392L992,409L994,426ZM1000,481L1000,479L999,472L998,459L997,454L998,455L999,463L999,463L999,463L1000,480ZM205,902L214,909L220,912L224,914L226,916L225,916L222,914L226,917L219,913L209,907L200,900L208,906L212,908L205,903L203,901ZM32,353L30,350L29,352L30,346L32,349L33,348L35,337L37,339L39,339L40,344L40,351L38,354L36,351L34,352L32,357ZM578,9L576,8L580,8L589,10L596,11L597,11L595,11L591,11L585,10L583,10ZM593,10L597,10L601,11L605,13L593,10ZM549,14L552,14L554,14L553,13L556,14L555,14L555,15L553,15L552,14ZM600,30L598,27L595,26L595,25L595,22L598,21L597,20L598,20L602,21L603,21L602,25L604,28L612,34L617,37L626,39L625,40L618,40L615,38L610,38L606,36L607,35L604,33L602,31ZM54,278L55,278L54,280L53,280ZM56,276L55,280L52,286ZM49,290L46,298L43,303L46,295ZM211,901L210,899L213,900L212,899L217,901L218,903L217,904L214,902L215,904ZM511,18L511,17L514,17L522,19L519,20L519,22L518,23L518,25L516,25L511,23L512,22L509,22L505,20L504,18L508,17L509,18ZM529,16L528,18L524,18L519,18L518,17L516,17L514,16L518,16L520,16L521,15L525,16ZM530,22L527,23L524,22L524,22L523,21L526,20L527,21ZM448,9L454,9L456,9L459,8L462,8L468,9L469,11L466,11L456,11L456,11L460,11L461,12L465,12L464,12L460,14L465,13L472,12L474,13L474,14L466,15L465,16L460,16L463,16L455,19L450,22L450,23L447,23L443,24L444,26L441,28L439,28L438,31L433,31L434,32L432,33L425,34L425,36L423,37L420,36L418,37L420,38L420,40L418,43L413,43L412,39L410,42L405,43L414,44L393,50L384,50L381,50L376,52L367,55L358,58L346,59L340,61L336,64L331,67L322,70L318,74L305,82L301,82L302,77L298,77L299,74L304,69L308,64L312,61L318,57L322,53L327,50L329,49L339,45L344,44L353,40L345,41L345,40L350,38L354,36L357,38L360,34L358,34L359,33L367,31L369,30L380,24L382,23L385,22L388,20L387,20L383,19L390,16L393,16L395,16L395,15L398,14L401,13L412,13L415,12L417,11L420,11L427,10L429,10L432,9L436,9L438,9L440,9L438,10L444,9L443,10L443,10L442,11L444,10ZM789,888L791,889L786,893L782,894ZM505,195L509,192L510,198L508,203L505,202ZM44,353L43,358L40,357L42,352ZM27,345L27,351L25,352L26,347ZM39,307L40,304L40,304L40,305L38,312L39,312L36,324L36,326L35,333L35,335L33,335L31,334L33,330L33,326L36,319L36,319L37,314L37,312L39,308L39,307L36,313L36,313ZM628,246L628,248L618,249L609,247L610,243L614,246ZM428,123L427,127L422,132L412,135L405,134L411,128L410,122L423,115L427,115L432,119ZM976,447L977,456L974,461L972,455L970,442L969,428L972,432ZM546,226L551,226L550,238L531,230L531,227ZM505,207L508,205L512,210L511,219L505,221L503,219L501,206ZM521,111L523,113L521,118L515,115L514,113ZM443,126L444,122L442,119L436,118L437,112L433,115L435,109L433,106L437,101L441,97L450,97L444,103L454,102L452,106L446,111L451,112L454,119L457,120L461,129L467,130L466,134L463,135L464,138L459,142L452,141L442,143L440,142L436,144L431,144L426,146L424,145L433,138L438,137L430,136L429,134L435,132L433,129L435,125ZM424,59L421,62L423,65L416,68L400,72L388,69L393,67L388,65L394,64L395,63L390,62L394,59L400,59L402,62L408,60L411,61L418,59ZM671,246L682,241L679,246L674,250ZM39,422L42,422L41,428L38,428Z\"\/>\n            <g class=\"vf-map-af\"><path class=\"vf-map-africa\" d=\"M758,578L754,589L754,593L759,596L759,598L757,604L757,606L756,610L758,616L761,624L763,625L764,629L763,638L763,645L761,658L762,662L759,668L755,674L750,679L743,682L734,687L724,696L721,697L715,703L712,705L710,711L713,717L713,721L713,724L714,723L713,731L711,734L712,736L710,739L707,742L700,745L691,749L687,752L687,755L689,755L688,759L685,765L682,771L680,774L674,778L672,779L669,783L666,787L661,792L651,800L645,804L639,807L632,810L628,811L627,813L623,812L619,813L612,812L607,813L604,813L597,815L591,817L586,819L583,819L580,817L578,817L575,814L575,815L574,813L574,809L573,805L575,803L576,798L571,791L568,785L568,785L564,776L558,771L556,765L555,758L553,753L551,741L551,732L550,728L548,724L544,718L540,709L538,704L531,696L531,690L530,685L532,677L535,670L535,666L538,659L540,656L545,650L548,646L549,640L549,635L546,632L544,627L542,622L542,620L545,617L543,609L541,603L537,598L537,596L536,593L534,587L527,578L518,569L512,562L507,553L507,550L509,548L511,541L513,535L511,533L514,524L516,517L512,511L508,510L506,506L504,504L504,502L495,505L492,505L489,507L482,506L477,501L474,495L468,489L462,489L454,489L447,490L440,492L426,497L422,499L414,502L406,499L402,499L396,497L391,497L381,499L375,501L367,504L365,504L363,504L354,500L347,493L340,488L335,482L333,481L327,478L323,473L322,470L321,463L318,458L315,454L313,453L311,451L310,447L309,445L307,444L303,440L300,439L298,437L299,436L296,434L296,432L295,425L297,421L294,415L291,411L294,410L299,404L301,400L301,395L304,391L306,383L306,375L306,370L307,366L306,362L302,358L303,355L304,351L307,349L310,345L310,342L314,336L319,331L322,330L324,325L325,321L329,316L334,313L340,305L340,305L345,302L351,301L358,296L362,294L369,287L369,278L373,271L375,267L380,262L388,259L393,256L399,248L402,243L407,243L411,247L418,246L425,248L428,248L435,244L443,243L447,240L454,238L466,237L478,236L481,237L488,234L495,234L498,236L503,235L510,232L515,233L515,237L521,234L522,236L518,239L518,243L521,245L520,251L515,255L517,259L521,259L523,263L525,264L534,267L537,266L543,267L553,271L557,278L564,279L575,282L583,286L586,284L590,280L587,274L589,270L594,267L598,265L608,267L611,270L614,270L616,271L624,272L626,275L635,274L642,276L650,278L653,279L658,277L660,274L666,274L671,274L674,278L675,276L681,277L686,277L689,275L696,287L697,289L696,292L696,298L695,302L694,304L691,301L687,298L679,286L679,287L683,295L690,303L698,316L701,320L704,324L712,333L711,335L713,340L722,347L724,349L728,357L726,358L729,367L733,377L736,379L741,382L746,391L750,399L754,403L765,411L770,415L774,420L777,423L780,425L782,428L783,431L779,434L782,436L785,437L786,441L790,444L793,444L799,441L807,440L812,437L815,436L818,434L821,434L823,433L826,432L829,431L832,428L834,427L835,430L835,435L835,439L834,443L834,452L832,462L829,473L824,487L819,497L811,509L805,517L794,526L788,533L780,544L778,549L776,551L771,555L769,558L767,559L765,565L763,569L761,575ZM824,639L825,643L826,648L825,658L826,662L824,666L823,668L822,664L820,666L820,672L819,676L817,678L815,685L810,694L804,705L797,721L791,732L786,741L780,743L774,746L771,745L767,742L766,738L767,732L767,726L767,720L770,714L773,713L774,710L779,704L780,699L779,695L779,690L780,683L783,678L785,673L789,672L793,670L795,669L798,668L803,663L809,658L812,654L811,650L814,651L819,645L819,640L822,636Z\"\/><path class=\"vf-map-borders\" d=\"M763,625L757,631L748,634L744,634L741,637L736,638L734,639L725,637L719,638L718,626L716,623L714,620L707,619L702,617L697,615L694,614L691,612L687,601L683,597L682,592L683,587L681,580L685,579L688,576L691,571L693,569L693,566L691,565L691,561L693,560L694,555L691,550L693,549L702,549L718,547L720,548L747,565L748,570L758,578M303,355L303,355L320,355L321,352L325,348L329,337L341,328L346,318L348,318L352,311L358,311L361,312L364,312L367,310L371,310L372,306L373,306L373,306L373,308L371,320L346,319L344,340L336,340L334,345L334,357L304,356L302,358M691,612L688,611L677,613L675,614L672,620L674,623L672,633L670,642L672,643L678,646L680,645L680,654L674,654L671,649L668,646L662,645L661,641L656,643L649,642L647,639L642,638L638,638L637,636L635,636L631,635L626,637L622,636L620,637L621,627L618,624L618,619L619,614L618,611L618,605L607,605L608,602L604,603L603,604L598,604L596,609L595,612L590,610L587,612L581,612L578,608L576,605L574,600L572,594L547,594L544,595L541,595L537,596M536,593L538,593L539,589L540,587L543,585L546,586L549,582L553,582L554,585L557,586L562,581L567,577L570,574L569,567L573,558L577,554L583,549L584,547L584,543L585,540L585,536L586,528L588,522L590,518L591,512L591,506L594,502L599,499L606,502L612,505L618,506L624,507L626,502L628,501L631,502L641,497L644,499L647,499L648,497L651,496L657,496L663,497L665,496L670,503L674,503L676,502L680,502L684,500L686,504L694,510L693,520L697,521L694,524L691,526L688,531L686,535L686,542L684,546L684,552L681,555L681,560L680,561L679,565L681,569L681,580M776,551L772,544L772,512L778,502L780,499L784,499L790,492L800,491L817,464L821,456L823,451L823,446L822,437L821,434L821,434M718,547L718,538L721,535L724,529L727,522L724,512L723,508L719,502L723,497L728,491L732,492L733,497L735,500L741,499L750,506L753,506L755,506L756,507L761,507L763,504L770,500L773,502L778,502M741,382L738,387L733,389L731,391L731,397L729,410L731,413L730,420L728,429L724,434L721,440L721,444L717,447L716,456L716,464L716,457L715,457L715,452L713,449L709,446L708,440L708,433L705,433L704,435L700,436L702,438L703,443L699,448L695,455L691,456L684,451L681,453L681,455L677,457L677,459L668,459L667,457L661,457L659,459L656,458L652,453L650,451L644,452L642,456L641,464L638,466L635,467L641,470L635,466L632,464L631,461L632,458L632,454L627,449L626,445L626,443L623,440L622,435L620,432L618,433L618,430L620,426L619,422L622,420L620,418L622,412L625,406L632,406L629,373L628,369L637,369L636,352L666,351L695,350L724,349M626,445L621,447L617,450L611,460L603,464L595,464L593,465L594,468L589,471L586,474L575,478L573,476L571,476L570,478L563,479L564,476L561,470L560,467L556,465L551,460L553,456L557,457L559,456L564,456L559,448L559,443L559,437L555,431L556,427L550,427L550,422L547,418L550,407L560,399L560,388L563,371L564,367L561,364L561,361L558,359L555,346L563,342L596,357L629,373M564,776L568,772L570,774L571,778L575,778L579,779L583,779L591,775L594,747L596,748L599,756L598,760L600,763L605,762L609,758L613,756L615,752L619,751L622,751L626,753L632,754L637,752L638,749L640,746L644,745L647,742L650,737L658,731L669,725L672,725L676,726L678,725L682,726L684,736L685,742L682,750L682,753L679,752L676,752L675,755L673,757L672,760L676,764L680,763L682,760L688,759M657,777L654,775L650,776L646,779L641,784L645,789L648,788L650,786L654,785L656,782L659,779L657,777M669,725L665,722L659,721L658,716L658,713L655,712L647,704L645,699L644,698L641,691L650,692L653,693L655,693L660,687L668,680L671,680L672,677L677,673L683,672L683,675L689,675L693,676L694,678L698,679L701,681L700,691L698,697L696,703L697,705L696,710L694,711L692,717L682,726M594,747L596,725L603,725L606,696L612,696L625,693L628,696L633,693L635,693L640,691L641,691M531,690L535,688L540,687L546,687L550,690L552,690L585,689L590,693L610,694L625,690L632,688L637,688L640,690L640,691M301,400L304,397L308,398L312,396L316,396L319,399L324,401L328,408L333,414L333,419L334,424L337,427L337,430L337,433L336,433L331,432L331,433L329,433L323,431L320,431L305,430L303,431L300,431L296,432M295,425L302,426L304,425L306,424L309,423L312,425L316,425L319,423L318,420L315,422L313,422L310,419L307,420L305,421L297,421M333,414L336,412L338,407L340,407L346,410L350,408L353,409L355,407L387,408L389,402L388,401L387,364L387,328L399,328L424,347L450,365L451,369L456,372L460,373L460,378L469,378L469,397L464,403L463,408L456,409L444,410L441,413L436,413L431,413L429,412L424,413L416,416L414,419L408,423L406,425L403,427L399,425L396,427L395,433L388,440L388,443L386,447L386,452L382,453L380,454L379,451L377,451L376,451L374,454L367,454L365,452L364,453L362,450L362,448L361,447L360,448L360,445L362,443L359,439L358,436L356,435L355,434L352,435L350,436L347,438L344,437L342,435L341,435L338,436L337,436L337,433M373,308L399,328M447,490L445,484L446,464L444,462L444,458L441,455L438,452L439,447L442,446L444,443L448,442L450,439L453,437L456,437L463,442L462,445L464,450L462,453L463,456L459,461L456,464L455,469L455,475L454,489M555,431L553,432L553,435L551,435L545,425L543,425L537,430L530,427L525,427L523,428L518,428L513,432L509,432L498,427L494,430L490,429L487,426L478,423L469,424L467,426L466,431L463,434L463,442M450,439L450,433L441,431L441,427L436,422L435,418L436,413M469,378L481,374L505,357L532,341L545,345L549,349L555,346M553,435L556,438L555,440L555,443L548,449L546,455L544,459L543,461L541,467L536,471L535,475L533,479L532,483L526,486L522,482L518,482L513,487L511,487L507,496L504,502M563,479L559,487L557,489L556,496L557,499L556,502L560,507L561,510L564,514L568,517L569,521L570,523L569,528L562,526L555,524L544,524L543,523L538,524L533,523L529,524L514,524M440,492L438,488L436,483L435,479L437,471L435,468L434,461L435,454L431,450L432,447L439,447M406,499L407,496L403,488L406,478L409,471L407,459L406,452L407,447L421,447L425,448L428,446L432,447M386,452L390,454L391,457L395,459L398,457L402,456L407,459M365,504L366,497L367,496L366,492L363,488L360,488L358,485L360,482L359,477L360,475L361,475L362,471L361,469L362,468L365,467L363,460L362,457L362,454L364,453M360,475L357,475L356,478L353,478L352,476L352,472L349,467L347,468L345,468L343,469L343,465L342,463L342,461L341,457L339,454L332,453L330,455L328,455L327,457L325,459L321,463M307,444L311,440L313,440L316,439L317,439L319,438L318,435L319,434L320,431M335,482L337,479L337,477L341,472L345,468M591,512L585,512L579,511L574,515L570,523M641,470L646,473L646,476L652,481L655,484L658,490L664,493L665,496M543,585L540,582L538,583L534,587M527,578L534,573L530,567L533,565L539,564L540,560L544,564L552,565L555,561L556,555L555,548L551,543L555,533L552,531L546,532L544,527L544,524M513,535L516,534L529,534L529,524M707,619L710,623L712,630L710,632L708,639L709,646L706,649L703,657L707,659L683,666L683,672M625,690L620,685L615,679L617,652L634,652L634,649L635,646L634,642L635,638L635,636M719,638L716,644L717,655L720,655L722,657L725,663L724,674L721,675L718,681L713,676L714,671L716,667L716,663L713,661L711,662L707,659M682,760L682,756L682,753M679,565L684,566L687,561L691,561M525,264L525,270L522,272L520,275L515,278L515,281L515,284L511,286L508,272L503,269L503,267L497,263L497,257L501,253L503,246L502,239L503,235M373,306L374,296L387,291L395,290L401,288L404,284L413,281L414,275L418,274L422,272L432,270L433,267L431,266L430,258L430,253L428,248M511,286L514,293L514,297L513,303L514,307L513,312L513,317L510,320L515,326L515,329L518,334L522,333L528,336L532,341M780,425L779,428L775,427L773,424L769,419L766,417L763,414L757,411L752,411L750,409L746,412L741,408L739,414L731,413M636,352L632,322L628,293L624,287L625,282L624,279L626,275M728,491L723,481L720,480L718,476L714,472L709,472L711,467L715,466L716,464M775,427L773,431L771,435L772,437L773,440L777,440L778,439L780,441L779,444L782,448L785,453L788,455L811,464L817,464M782,436L780,441M691,550L686,553L684,552M694,510L697,507L702,509L708,507L714,506L719,502\"\/><\/g>\n            <g class=\"vf-map-near\"><path class=\"vf-map-nland\" d=\"M478,500.87L477.83,500.42L477.27,498.83L477.43,498.71L477.86,498.85L478,498.71L478,500.87ZM478,498.6L477.3,498.44L477.15,498.25L477.12,497.69L477.15,497.01L477.75,496.77L478,496.72L478,498.6ZM478,496.14L477.31,496.45L475.97,495.74L475.69,495.29L475.82,494.96L476.47,494.92L477.38,494.94L477.91,494.62L477.6,494.5L477.01,494.51L476.79,494.3L476.79,493.78L476.6,493.89L476.35,494.36L475.44,494.69L474.95,494.35L474.89,493.59L474.76,493.25L474.33,492.99L472.78,490.98L470.82,489.3L469.06,488.14L466.44,487.58L460.9,487.58L460.59,487.41L460.93,487.15L461.43,486.98L463.22,486.06L462.91,485.94L461.07,486.5L460.41,486.56L459.59,487.67L454.74,487.82L454.15,487.86L450.54,488.19L446.49,488.75L444.78,489.11L444.78,489.11L442.11,489.7L441.01,490.19L441.02,489.71L440.62,489.61L440.15,489.44L439.85,489.18L439.45,488.6L439.3,488.16L438.68,488.08L437.92,487.57L437.18,486.97L436.94,486.39L437.01,486.14L436.92,485.86L436.64,485.75L436.01,484.44L435.62,483.91L435.41,483.48L435.51,483.15L435.42,482.71L435.55,482.36L435.89,482.16L436.02,481.9L436.06,481.34L436.29,480.22L436.44,479.1L436.07,478.8L435.61,478.7L435.37,478.38L435.28,477.86L435.29,477.41L436.24,475.85L436.12,472.2L436.26,471.64L436.66,471.27L437.04,470.83L437.02,470.39L436.46,469.3L435.33,468.45L434.76,467.77L434.46,467.16L434.41,466.84L435.1,466.37L435.41,466.05L435.48,465.67L435.19,464.98L435.27,463.75L435.57,462.83L435.84,461.64L435.85,461.28L435.19,460.56L434.82,460.47L434.54,460.51L433.83,460.97L433.58,461.03L433.43,460.88L433.34,460.69L433.59,460.42L433.51,460.06L433.73,459.76L434.16,459.63L434.32,459.48L433.71,459.32L433.65,459.13L433.69,458.91L433.87,458.89L434.06,458.9L434.15,458.75L434.27,457.74L434.37,457.4L434.44,456.69L434.6,453.99L434.76,453.7L434.76,453.51L434.37,453.37L433.41,452.63L432.84,452.07L432.33,451.49L431.91,451.11L431.1,450.52L430.9,450.14L430.85,449.78L431.14,449.05L431.56,448.27L431.77,447.14L431.66,446.84L431.12,446.3L429.18,445.84L429.08,446.25L428.77,446.51L428.37,446.54L428.07,446.46L427.88,446.79L427.53,447.21L427.06,447.4L426.6,447.66L426.35,447.88L426.17,447.88L425.75,447.33L425.15,447.28L424.05,447.36L423.53,447.2L422.87,447.11L421.25,447.21L418.7,446.95L418.27,447.06L418.15,447.15L415.62,447.14L412.83,447.13L410.49,447.11L408.43,447.11L408.43,447.02L407.77,446.99L407.7,447.17L407.05,449.33L406.94,450.5L407.22,451.23L407.54,451.7L407.93,451.91L407.95,452.16L407.63,452.51L407.65,452.85L408,453.22L408.08,453.6L407.89,453.99L407.89,454.94L408.11,456.45L408.11,457.43L407.82,457.87L407.92,458.64L408.4,459.72L408.48,460.19L408.53,460.61L408.35,461.32L408.37,461.74L408.61,461.91L408.47,462.47L407.96,463.41L407.91,463.97L408.39,464.16L408.74,464.76L408.89,465.77L409.1,466.12L409.12,466.34L409.39,468.81L409.75,471.29L409.47,471.61L409.1,471.69L408.85,471.81L408.79,472.03L408.93,472.38L408.83,472.68L408.33,472.89L407.31,473.66L407.21,473.97L406.91,474.64L406.69,475.04L406.33,475.81L405.76,477.79L405.51,479.46L405.47,479.97L405.24,480.33L405.02,480.84L403.85,482.24L403.27,483.4L403.32,483.92L403.34,484.42L403.15,484.78L403.16,485.78L403.29,486.6L403.46,487.42L404.24,489.72L404.64,491.12L404.86,492.24L405.09,492.99L405.3,493.31L405.39,493.6L406.58,493.83L406.8,494L407.11,495.46L407.03,496.13L406.81,496.37L406.8,496.93L406.73,497.62L406.54,497.89L405.87,497.91L405.43,498.18L404.82,498.06L404.76,497.88L404.42,497.81L403.54,497.4L403.72,496.15L403.32,496.08L402.98,496.24L402.34,497.76L402.03,498.01L397.57,497.14L396.63,496.49L395.47,496.33L393.45,496.37L391.8,496.52L391.3,496.89L395.49,496.74L395.95,496.8L396.16,497.04L390.86,497.44L388.81,497.69L388.23,497.6L387.79,497.11L385.59,497L385.13,497.16L384.88,497.5L385.74,497.45L387.08,497.46L387.44,497.74L383.2,498.01L380.23,498.63L378.98,499.11L374.85,500.68L372.32,501.41L371.65,501.7L370.51,502.47L369.05,502.96L368,503.55L368,418L478,418ZM404.24,498.07L404.01,498.41L402.88,498.16L403.13,497.88Z\"\/><path class=\"vf-map-nborders\" d=\"M431.12,446.3L433.07,446.73L435.8,447.44L435.86,447.57L435.85,447.76L436.34,447.77L437.14,447.53L439.35,447.47L439.08,448.4L438.63,449.54L438.31,449.91L438.06,452.72L438.18,452.96L438.3,453.02L439.69,454L441.51,455.26L442.81,456.16L442.93,456.45L442.89,458.31L442.89,459.89L443.15,460.8L443.16,461.69L443.49,462.36L444.7,463.66L444.96,464.41L444.95,466.85L444.95,468.69L445.06,471.2L445.03,473.31L444.99,475.95L444.94,479.06L444.9,482.31L444.09,482.33L444.51,483.35L444.56,484.26L444.68,484.57L444.46,485L444.64,485.69L444.98,485.93L445.86,487.3L446.12,488.44L444.69,488.82L444.78,489.11M454.15,487.86L454.18,487.36L454.42,485.89L454.58,485.32L454.77,484.88L454.59,484.37L454.41,483.65L454.33,482.53L454.58,482.2L454.65,481.78L454.62,481.13L454.65,478.93L454.78,478.69L454.93,478.51L454.94,478.21L454.66,477.64L454.39,476.99L454.4,476.07L454.32,475.16L454.14,474.75L454.29,473.21L454.4,471.27L454.32,470.41L454.52,469.81L454.63,468.3L454.65,466.83L455.02,464.52L456.11,464.42L457.34,464.23L457.94,463.33L458.27,462.17L458.19,461.04L458.44,460.66L458.95,460.05L459.85,459.18L459.84,458.21L460.09,457.91L460.52,457.69L461.14,457.57L461.86,457.09L462.24,456.25L462.63,454.91L462.05,453.96L462.06,453.76L462.31,453.25L462.66,452.74L462.97,452.59L463.64,452.71L463.74,452.67L463.86,452.52L464.31,451.03L464.26,450.62L463.66,449.62L463.57,448.91L463.5,447.86L463.35,446.92L463.18,446.58L462.84,446.27L462.69,446.08L461.43,444.17L461.47,443.27L462.05,442.13L462.39,441.57L462.89,441.26L462.98,441L462.87,440.67L462.62,440.43L462.57,439.92L462.64,439.57L462.83,439.2L462.78,438.4L462.8,437.2L462.92,435.43L462.94,434.36L464.02,433.57L465.54,432.24L466.32,430.88L466.77,429.84L467.34,426.36L467.71,426.15L468.14,425.99L469.68,424.74L470.85,424.28L471.73,424.02L473.08,423.79L473.93,423.88L475.42,423.95L476.64,423.83L477.66,423.15L478,423M462.39,441.57L461.88,440.77L461.19,440.21L460.42,439.96L459.91,439.55L459.64,439L458.65,437.89L456.4,435.71L456.16,435.66L455.79,435.57L455.11,435.82L454.71,436.18L454.43,436.31L454,436.32L452.9,436.6L452.03,436.94L452,437.22L452.39,438.86L452.16,439.75L451.77,439.32L450.55,437.66L449.69,436.43L449.55,436.16L449.43,435.74L449.53,435.56L449.87,435.43L450.7,435.27L450.85,435.15L450.89,434.81L450.78,434.19L450.34,433.33L449.9,432.77L449.66,432.66L449.17,432.63L448.65,432.7L447.66,433.38L447.23,433.51L446.22,433.44L445.31,433.3L444.77,432.93L443.19,431.55L441.44,430.09L440.69,429.89L440.54,429.74L440.45,428.63L440.52,427.29L440.62,426.95L441.37,427.17L442.16,427.27L442.4,427.03L441.78,426.54L440.88,426.05L440.57,425.33L440.31,425.07L439.92,424.81L439.44,424.67L438.99,424.46L438.66,424.25L438.15,424.15L437.58,423.99L436.83,422.8L436.08,421.66L435.63,420.75L435.49,420.21L435.77,419.29L435.54,418.93L434.7,418M415.86,418L415.35,419.46L414.86,419.68L412.05,418.72L411.48,418.85L410.96,419.11L409.31,420.4L408.45,421.44L407.97,422.86L408.01,423.29L407.99,423.77L407.7,424.04L407.31,424.14L406.95,424.11L405.65,423.79L405.22,423.92L405.01,424.61L404.97,426.13L404.62,427.16L403.83,427.48L403.21,427.87L402.72,427.98L402.31,427.87L400.08,426.29L399.31,426.02L398.44,426.18L397.57,426.83L397.19,427.24L396.65,427.74L396.02,428.4L396.14,428.99L396.53,429.66L396.79,430.49L396.73,431.24L394.58,432.25L394.74,432.61L395.02,433.04L394.99,433.8L394.86,435.14L394.42,435.63L393.86,436.08L393.47,436.7L393.13,437L392.51,437.36L391.68,437.72L390.23,438.04L389.08,438.24L388.65,438.44L388.03,438.88L387.53,439.41L387.38,440L387.44,440.66L387.59,441.22L387.79,441.6L387.88,442.07L387.65,443.35L387.16,444.8L386.74,445.45L386.09,445.8L385.51,446.19L385.64,447.16L385.7,448.55L385.47,449.65L385.44,450.32L385.17,451.04L385,451.54L384.74,451.41L383.59,451.43L382.32,451.8L381.88,452.09L381.78,452.49L381.46,452.77L381.06,453.07L380.65,453.45L379.97,453.38L379.32,453.09L379,452.83L378.98,452.68L379.2,452.3L379.4,451.9L379.44,451.63L379.23,450.98L379.08,450.26L379.19,449.92L379.06,448.86L378.97,448.81L378.09,449.06L377.79,449.12L377.6,449.23L377.54,449.43L377.71,450.1L377.56,450.21L377.08,450.19L376.4,449.95L375.69,449.33L375.5,449.52L375.38,450L375.33,450.57L375.46,451.62L375.23,451.99L374.76,451.9L374.07,451.89L373.5,451.98L373.11,452L372.85,452.35L372.71,452.77L372.93,453.25L372.89,453.43L372.71,453.6L372.46,453.7L372.28,453.7L371.77,453.17L371.12,452.96L369.64,452.64L369.5,451.93L369.26,451.91L368.92,451.54L368.62,451.05L368.32,451.05L368.07,451.18L368,451.18M385,451.54L385.49,452.12L386.13,452.53L387.16,452.5L387.87,452.74L388.48,453.21L388.87,454.2L389.29,454.92L389.46,455.93L390.17,456.47L390.73,456.74L391.49,457.48L392.29,457.87L393.11,457.8L393.49,458.2L394.11,458.48L394.72,458.51L395.29,457.68L396.03,457.36L397.9,456.71L398.61,456.42L399.37,456.24L401.13,456.21L402.76,456.44L403.58,456.62L404.13,456.51L404.66,456.92L405.18,457.78L405.6,458.06L406.04,458.35L406.39,459.02L406.76,459.69L406.96,459.98L407.43,460.66L407.86,460.66L408.29,460.4L408.48,460.19M452.16,439.75L451.94,440.24L451.27,441.53L450.77,442.07L448.62,443.87L447.55,443.65L445.37,443.99L445.04,443.57L444.55,443.52L443.91,443.57L443.66,443.73L443.59,443.91L443.37,444.17L442.93,444.89L442.62,445.06L442.22,445.18L441.76,445.16L441.48,445.25L441.47,445.61L441.37,445.92L441.03,446.07L440.9,446.42L440.93,446.76L440.74,446.91L440.31,446.83L440.07,446.72L439.85,447.17L439.53,447.47L439.35,447.47\"\/><\/g>\n            <circle class=\"vf-map-ring\" cx=\"422\" cy=\"474\" r=\"44\" style=\"opacity:0\"\/>\n            <g class=\"vf-map-gh\">\n              <path class=\"vf-rg\" data-name=\"Greater Accra\" d=\"M426.47,493.2L427.07,492.62L427.4,493.03L428.08,492.7L428.43,492.84L429.99,492.26L431.23,491.35L431.24,491.03L432.77,490.57L433.26,490.86L433.52,491.43L435.26,490.96L436.18,492.11L436.18,492.74L436.55,492.89L434.56,492.73L433.55,492.78L432.37,493.1L431.34,493.53L430.79,494.12L428.94,494.91L427.4,495.33L427.04,494.31L426.54,493.72Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Eastern\" d=\"M429.24,480.5L431,480.44L431.39,480.63L432.52,480.58L432.26,481.78L432.7,484.52L431.88,485.36L431.51,486.23L431.92,487.17L431.35,488.39L431.73,488.97L431.48,489.39L432.38,490.06L433.24,490.09L433.26,490.86L432.77,490.57L431.24,491.03L431.23,491.35L429.99,492.26L428.43,492.84L428.08,492.7L427.4,493.03L427.07,492.62L426.47,493.2L426,492.98L425.19,493.03L421.36,492.72L420.11,491.46L420.09,490.79L420.59,489.92L420.63,488.9L420.95,488.66L421.13,487.86L421.65,486.96L422.14,486.64L423.18,485.4L422.64,484.64L422.92,484.09L424.11,483.78L425.62,481.6L426.97,481.55L428.02,481.08L428.5,480.51Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Volta\" d=\"M432.52,480.58L432.97,480.7L432.87,481.29L433.76,481.31L434.71,479.69L435.57,479.53L435.56,480.26L435.9,479.68L436.49,479.9L436.06,481.14L436.04,482.16L435.41,482.68L435.78,482.88L435.48,483.68L436.48,484.48L436.34,485.32L437.13,485.74L436.99,486.31L437.3,487.05L438.25,487.62L438.52,488.03L439.47,488.02L439.49,488.36L440.13,489.48L441.14,489.49L441.13,489.99L440.11,490.55L439.34,491.61L439.21,492.36L438.65,492.82L436.55,492.89L436.18,492.74L436.18,492.11L435.26,490.96L433.52,491.43L433.26,490.86L433.24,490.09L432.38,490.06L431.48,489.39L431.73,488.97L431.35,488.39L431.92,487.17L431.51,486.23L431.88,485.36L432.7,484.52L432.26,481.78Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Central\" d=\"M412.31,489.47L412.18,488.71L413.04,488.13L413.64,488.24L413.34,488.88L413.55,489.64L413.76,489.53L414.39,490.53L415.35,490.41L415.33,490.7L416.46,491.4L417.66,491.21L417.75,491.74L418.12,491.95L418.34,491.51L418.97,491.26L419.55,491.67L420.11,491.46L421.36,492.72L425.19,493.03L426,492.98L426.47,493.2L426.54,493.72L427.04,494.31L427.4,495.33L426.44,496.22L424.48,496.88L423.91,497.51L423.5,497.65L421.35,497.75L420.03,498.54L416.99,499.12L417.06,498.29L417.43,497.71L418.34,497.24L418.27,496.95L417.54,496.52L416.96,495.63L416.95,494.58L416.49,494.09L414.97,493.98L415.29,492.62L414.98,492.42L415.02,491.72L414.33,491.29L413.78,490.5L413.09,489.87Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Ashanti\" d=\"M413.04,488.13L412.38,487.51L411.84,487.63L411.78,486.59L410.8,486.24L410.6,487.27L410.09,487.17L409.95,486.56L410.53,485.78L410.16,484.99L411.23,484.42L411.4,483.23L410.51,483.24L410.97,482.77L411.58,481.59L412.07,481.37L412.47,481.77L413.41,481.65L414.48,480.77L414.98,480.66L415.08,479.93L414.41,479.75L413.98,479.19L413.35,479.19L412.64,478.89L413.07,477.84L415.31,477.84L415.4,478.53L415.98,478.99L416.98,479.02L417.52,478.51L417.93,478.56L417.93,477.75L418.6,477.34L419.12,476.58L419.76,476.83L419.87,477.77L420.52,478L421.76,477.84L422.11,477.41L423.09,477.63L423.59,477.49L424.2,477.69L425.12,477.33L425.46,477.76L425.4,478.3L425.84,479.01L427.15,479.18L428.73,479.78L429.24,480.5L428.5,480.51L428.02,481.08L426.97,481.55L425.62,481.6L424.11,483.78L422.92,484.09L422.64,484.64L423.18,485.4L422.14,486.64L421.65,486.96L421.13,487.86L420.95,488.66L420.63,488.9L420.59,489.92L420.09,490.79L420.11,491.46L419.55,491.67L418.97,491.26L418.34,491.51L418.12,491.95L417.75,491.74L417.66,491.21L416.46,491.4L415.33,490.7L415.35,490.41L414.39,490.53L413.76,489.53L413.55,489.64L413.34,488.88L413.64,488.24Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Western\" d=\"M407.35,496.26L408.08,496.13L408.81,494.64L408.94,493.26L408.83,492.35L409.39,492.61L409.47,491.16L409.05,490.96L409.45,489.89L409.73,489.66L410.37,489.84L411.44,489.83L411.71,489.41L412.31,489.47L413.09,489.87L413.78,490.5L414.33,491.29L415.02,491.72L414.98,492.42L415.29,492.62L414.97,493.98L416.49,494.09L416.95,494.58L416.96,495.63L417.54,496.52L418.27,496.95L418.34,497.24L417.43,497.71L417.06,498.29L416.99,499.12L416.55,499.64L416.03,499.78L415.68,500.41L415.16,500.46L414.19,500.98L413.7,501.44L412.52,501.46L410.64,499.94L409.61,499.63L404.09,498.4L404.39,498.02L405.23,498.31L405.42,498.1L407.05,498.35L407.3,498.1L406.83,496.74L406.92,496.2Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Oti\" d=\"M432.52,480.58L432.82,479.45L432.69,478.94L431.78,478.4L431.67,477.93L430.91,476.67L431.08,475.66L430.19,475.58L429.97,475.24L429.88,473.76L429.6,473.76L429.79,473.12L429.26,473.12L428.59,472.36L427.83,472.04L428.14,471.62L427.82,471.42L428.73,471.24L429.43,471.48L429.92,471.03L430.21,470.47L430.65,470.33L431.23,470.82L431.76,470.95L432.08,471.41L432.78,471.17L432.76,470.49L433.28,470.27L433.23,469.94L431.91,470.01L432.21,469.32L431.93,468.75L432.08,468.34L432.68,468.11L432.4,467.6L433.07,466.85L434.28,467.19L434.49,467.01L435.23,468.24L436.57,469.05L436.74,469.8L437.12,469.96L437.4,470.99L436.6,471.21L436.11,472.66L436.44,474.63L436.05,476.76L435.52,477.05L435.59,478.47L435.87,478.77L436.52,478.7L436.49,479.9L435.9,479.68L435.56,480.26L435.57,479.53L434.71,479.69L433.76,481.31L432.87,481.29L432.97,480.7Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Western North\" d=\"M407.35,496.26L407.02,494.39L407.09,494L406.25,493.54L405.6,493.79L405.34,493.61L405.46,492.96L404.84,493.01L404.92,491.72L404.49,490.6L404.27,489.13L403.72,487.98L403.03,485.06L403.46,483.86L403.3,483.27L404.38,481.6L404.9,482.39L405.5,482.25L406.1,482.61L406.4,483.21L406.6,485L407.53,485.45L408.01,485.45L408.37,486.03L409.02,486.42L409.2,487.1L410.09,487.17L410.6,487.27L410.8,486.24L411.78,486.59L411.84,487.63L412.38,487.51L413.04,488.13L412.18,488.71L412.31,489.47L411.71,489.41L411.44,489.83L410.37,489.84L409.73,489.66L409.45,489.89L409.05,490.96L409.47,491.16L409.39,492.61L408.83,492.35L408.94,493.26L408.81,494.64L408.08,496.13Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Bono East\" d=\"M432.52,480.58L431.39,480.63L431,480.44L429.24,480.5L428.73,479.78L427.15,479.18L425.84,479.01L425.4,478.3L425.46,477.76L425.12,477.33L424.2,477.69L423.59,477.49L423.09,477.63L422.11,477.41L421.76,477.84L420.52,478L419.87,477.77L419.76,476.83L419.12,476.58L418.6,477.34L417.93,477.75L417.93,478.56L417.52,478.51L416.98,479.02L415.98,478.99L415.4,478.53L415.31,477.84L413.07,477.84L412.89,477.32L413.37,476.3L413.67,476.12L413.39,475.46L414.27,474.98L414.87,474.94L414.81,474.39L414.31,473.65L413.71,473.6L413.88,473.18L413.02,471.84L414.39,471.71L414.96,470.92L415.76,471.23L416.23,470.92L416.05,470.39L415.09,470.17L414.89,469.38L415.28,467.62L415.55,467.43L416.43,467.75L417.09,467.16L417.96,467.36L418.34,467.21L418.66,466.58L419.68,466.65L420.87,467.45L421.55,467.35L421.41,468.48L420.44,469.31L420.32,471.03L421.23,472.51L421.22,473.3L422.4,473.06L421.98,472.17L422.25,471.18L423.77,470.94L423.82,470.45L424.82,470.41L426.49,471.72L427.83,472.04L428.59,472.36L429.26,473.12L429.79,473.12L429.6,473.76L429.88,473.76L429.97,475.24L430.19,475.58L431.08,475.66L430.91,476.67L431.67,477.93L431.78,478.4L432.69,478.94L432.82,479.45Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Ahafo\" d=\"M410.09,487.17L409.2,487.1L409.02,486.42L408.37,486.03L408.01,485.45L407.53,485.45L406.6,485L406.4,483.21L406.67,482.23L407.34,481.59L407.99,480.67L408.38,480.67L408.98,480L409.7,479.85L409.65,480.71L411.19,481.06L411.46,480.87L410.98,479.9L411.59,479.81L411.74,479.45L412.64,478.89L413.35,479.19L413.98,479.19L414.41,479.75L415.08,479.93L414.98,480.66L414.48,480.77L413.41,481.65L412.47,481.77L412.07,481.37L411.58,481.59L410.97,482.77L410.51,483.24L411.4,483.23L411.23,484.42L410.16,484.99L410.53,485.78L409.95,486.56Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Bono\" d=\"M406.4,483.21L406.1,482.61L405.5,482.25L404.9,482.39L404.38,481.6L405.05,481.12L405.13,480.52L405.76,479.69L405.57,479.41L406,477.45L406.1,476.43L406.92,474.63L407.26,474.27L407.37,473.49L407.66,473.75L408.25,472.91L408.89,472.83L408.7,472.08L409.37,471.83L409.87,471.31L409.88,470.48L409.24,466.25L409.95,466.86L410.62,467.69L410.67,468.18L411.09,468.6L411.01,468.98L411.42,469.68L411.67,470.57L412.04,470.69L413.02,471.84L413.88,473.18L413.71,473.6L414.31,473.65L414.81,474.39L414.87,474.94L414.27,474.98L413.39,475.46L413.67,476.12L413.37,476.3L412.89,477.32L413.07,477.84L412.64,478.89L411.74,479.45L411.59,479.81L410.98,479.9L411.46,480.87L411.19,481.06L409.65,480.71L409.7,479.85L408.98,480L408.38,480.67L407.99,480.67L407.34,481.59L406.67,482.23Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Savannah\" d=\"M427.83,472.04L426.49,471.72L424.82,470.41L423.82,470.45L423.77,470.94L422.25,471.18L421.98,472.17L422.4,473.06L421.22,473.3L421.23,472.51L420.32,471.03L420.44,469.31L421.41,468.48L421.55,467.35L420.87,467.45L419.68,466.65L418.66,466.58L418.34,467.21L417.96,467.36L417.09,467.16L416.43,467.75L415.55,467.43L415.28,467.62L414.89,469.38L415.09,470.17L416.05,470.39L416.23,470.92L415.76,471.23L414.96,470.92L414.39,471.71L413.02,471.84L412.04,470.69L411.67,470.57L411.42,469.68L411.01,468.98L411.09,468.6L410.67,468.18L410.62,467.69L409.95,466.86L409.24,466.25L408.98,465.07L408.62,464.21L407.65,463.81L407.73,463.12L408.74,462.14L408.22,461.47L408.6,461.18L408.56,460.13L407.93,459.52L408.06,458.73L409.37,458.55L410.1,457.73L412.11,457.4L412.67,457.45L413.76,458.45L414.51,458.08L415.13,458.95L416.71,458.51L417.22,457.66L417.05,456.94L417.32,455.74L417.77,455.73L417.68,455.31L418.6,455.17L420.12,455.32L421.01,455.71L422.1,456.61L421.46,456.51L421.51,457.74L420.87,457.48L420.04,457.84L420.19,459.09L419.75,459.37L420.51,460.26L420.86,461.12L420.63,461.75L420.93,462.18L421.44,461.84L422.07,461.97L422.64,461.7L423.26,462.05L424.47,461.84L425.37,462.17L425.25,461.79L426.48,462.1L427.74,462.72L428.55,462.85L428.99,463.55L429.52,463.78L429.54,465.14L428.3,465.92L428.68,466.24L428.54,466.84L427.96,467.17L427.2,466.97L427.07,467.41L427.59,467.7L427.72,468.16L428.52,468.78L429.29,468.42L429.35,469.31L428.79,470.6L429.55,470.28L429.92,471.03L429.43,471.48L428.73,471.24L427.82,471.42L428.14,471.62Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Northern\" d=\"M429.92,471.03L429.55,470.28L428.79,470.6L429.35,469.31L429.29,468.42L428.52,468.78L427.72,468.16L427.59,467.7L427.07,467.41L427.2,466.97L427.96,467.17L428.54,466.84L428.68,466.24L428.3,465.92L429.54,465.14L429.52,463.78L428.99,463.55L428.55,462.85L427.74,462.72L426.48,462.1L425.25,461.79L425.37,462.17L424.47,461.84L423.26,462.05L422.64,461.7L422.07,461.97L421.44,461.84L420.93,462.18L420.63,461.75L420.86,461.12L420.51,460.26L419.75,459.37L420.19,459.09L420.04,457.84L420.87,457.48L421.51,457.74L421.46,456.51L422.1,456.61L421.01,455.71L421.21,455.33L422.25,454.83L422.83,455.02L423.07,456.03L423.64,455.9L424.13,455.42L424.11,455.08L424.66,454.57L425.96,454.26L426.47,454.75L427.29,453.4L429.85,453.8L430.55,453.63L431.37,453.75L431.35,453.44L431.99,453.21L432.29,453.73L432.11,454.61L432.51,455.11L432.57,455.99L432.16,456.4L432.85,456.34L433.52,456.55L434,456.4L434.58,456.64L434.19,458.02L434.39,458.87L433.65,458.96L433.97,459.54L434.43,459.3L434.5,459.73L433.42,459.75L433.32,460.5L433.69,461.01L434.43,460.4L435.27,460.42L436.19,461.23L435.64,462.52L435.87,462.93L435.18,464.44L435.75,465.82L435.43,466.49L434.59,466.51L434.49,467.01L434.28,467.19L433.07,466.85L432.4,467.6L432.68,468.11L432.08,468.34L431.93,468.75L432.21,469.32L431.91,470.01L433.23,469.94L433.28,470.27L432.76,470.49L432.78,471.17L432.08,471.41L431.76,470.95L431.23,470.82L430.65,470.33L430.21,470.47Z\"\/>\n              <path class=\"vf-rg\" data-name=\"North East\" d=\"M421.01,455.71L420.12,455.32L418.6,455.17L417.61,454.28L418.02,453.33L418.64,452.43L419.37,451.76L419.67,451.63L419.83,452.46L420.89,453.45L421.28,453.02L421.15,452.47L423.02,451.22L423.87,451.35L424.41,451.03L424.85,450.31L425.45,450.26L425.77,451L425.5,451.3L427.28,451.02L427.41,450.53L427.84,450.75L429.41,450.48L430.87,449.8L431.1,450.5L431.95,450.78L432.11,451.14L432.8,451.45L433.18,452.4L433.98,452.36L434.23,453.1L434.85,453.3L434.6,453.8L434.52,455.25L435.04,455.55L434.59,455.74L434.58,456.64L434,456.4L433.52,456.55L432.85,456.34L432.16,456.4L432.57,455.99L432.51,455.11L432.11,454.61L432.29,453.73L431.99,453.21L431.35,453.44L431.37,453.75L430.55,453.63L429.85,453.8L427.29,453.4L426.47,454.75L425.96,454.26L424.66,454.57L424.11,455.08L424.13,455.42L423.64,455.9L423.07,456.03L422.83,455.02L422.25,454.83L421.21,455.33Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Upper West\" d=\"M418.6,455.17L417.68,455.31L417.77,455.73L417.32,455.74L417.05,456.94L417.22,457.66L416.71,458.51L415.13,458.95L414.51,458.08L413.76,458.45L412.67,457.45L412.11,457.4L410.1,457.73L409.37,458.55L408.06,458.73L407.75,457.87L408.28,457.08L408.02,456.68L408.18,456.13L407.83,454.97L407.82,453.94L408.12,453.38L407.54,453.09L407.48,452.48L408.05,451.97L407.31,451.7L406.73,450.11L407.01,449.57L407.51,447.91L407.86,447.52L407.75,446.92L410.55,447.11L412.88,447.11L413.66,447.19L418.01,447.26L418.02,446.95L419.62,446.98L419.3,448.46L418.43,449.35L418.32,450.62L419.23,451.21L419.37,451.76L418.64,452.43L418.02,453.33L417.61,454.28Z\"\/>\n              <path class=\"vf-rg\" data-name=\"Upper East\" d=\"M430.87,449.8L429.41,450.48L427.84,450.75L427.41,450.53L427.28,451.02L425.5,451.3L425.77,451L425.45,450.26L424.85,450.31L424.41,451.03L423.87,451.35L423.02,451.22L421.15,452.47L421.28,453.02L420.89,453.45L419.83,452.46L419.67,451.63L419.37,451.76L419.23,451.21L418.32,450.62L418.43,449.35L419.3,448.46L419.62,446.98L419.98,447.19L422.24,447.32L422.25,447.16L425.89,447.27L426.42,448L426.87,447.32L427.36,447.37L427.99,447.01L428.09,446.28L429.41,446.21L429.4,445.77L430.57,446.09L430.5,446.39L431.25,446.57L431.55,446.32L431.91,446.78L431.97,447.51L431.63,447.64L431.46,448.89Z\"\/>\n              <path class=\"vf-gh-outline\" d=\"M427.4,495.33L426.44,496.22L424.48,496.88L423.91,497.51L423.5,497.65L421.35,497.75L420.03,498.54L416.99,499.12L416.55,499.64L416.03,499.78L415.68,500.41L415.16,500.46L414.19,500.98L413.7,501.44L412.52,501.46L410.64,499.94L409.61,499.63L404.09,498.4L404.39,498.02L405.23,498.31L405.42,498.1L407.05,498.35L407.3,498.1L406.83,496.74L406.92,496.2L407.35,496.26L407.02,494.39L407.09,494L406.25,493.54L405.6,493.79L405.34,493.61L405.46,492.96L404.84,493.01L404.92,491.72L404.49,490.6L404.27,489.13L403.72,487.98L403.03,485.06L403.46,483.86L403.3,483.27L404.38,481.6L405.05,481.12L405.13,480.52L405.76,479.69L405.57,479.41L406,477.45L406.1,476.43L406.92,474.63L407.26,474.27L407.37,473.49L407.66,473.75L408.25,472.91L408.89,472.83L408.7,472.08L409.37,471.83L409.87,471.31L409.88,470.48L409.24,466.25L408.98,465.07L408.62,464.21L407.65,463.81L407.73,463.12L408.74,462.14L408.22,461.47L408.6,461.18L408.56,460.13L407.93,459.52L408.06,458.73L407.75,457.87L408.28,457.08L408.02,456.68L408.18,456.13L407.83,454.97L407.82,453.94L408.12,453.38L407.54,453.09L407.48,452.48L408.05,451.97L407.31,451.7L406.73,450.11L407.01,449.57L407.51,447.91L407.86,447.52L407.75,446.92L410.55,447.11L412.88,447.11L413.66,447.19L418.01,447.26L418.02,446.95L419.62,446.98L419.98,447.19L422.24,447.32L422.25,447.16L425.89,447.27L426.42,448L426.87,447.32L427.36,447.37L427.99,447.01L428.09,446.28L429.41,446.21L429.4,445.77L430.57,446.09L430.5,446.39L431.25,446.57L431.55,446.32L431.91,446.78L431.97,447.51L431.63,447.64L431.46,448.89L430.87,449.8L431.1,450.5L431.95,450.78L432.11,451.14L432.8,451.45L433.18,452.4L433.98,452.36L434.23,453.1L434.85,453.3L434.6,453.8L434.52,455.25L435.04,455.55L434.59,455.74L434.58,456.64L434.19,458.02L434.39,458.87L433.65,458.96L433.97,459.54L434.43,459.3L434.5,459.73L433.42,459.75L433.32,460.5L433.69,461.01L434.43,460.4L435.27,460.42L436.19,461.23L435.64,462.52L435.87,462.93L435.18,464.44L435.75,465.82L435.43,466.49L434.59,466.51L434.49,467.01L435.23,468.24L436.57,469.05L436.74,469.8L437.12,469.96L437.4,470.99L436.6,471.21L436.11,472.66L436.44,474.63L436.05,476.76L435.52,477.05L435.59,478.47L435.87,478.77L436.52,478.7L436.49,479.9L436.06,481.14L436.04,482.16L435.41,482.68L435.78,482.88L435.48,483.68L436.48,484.48L436.34,485.32L437.13,485.74L436.99,486.31L437.3,487.05L438.25,487.62L438.52,488.03L439.47,488.02L439.49,488.36L440.13,489.48L441.14,489.49L441.13,489.99L440.11,490.55L439.34,491.61L439.21,492.36L438.65,492.82L436.55,492.89L434.56,492.73L433.55,492.78L432.37,493.1L431.34,493.53L430.79,494.12L428.94,494.91L427.4,495.33\"\/>\n            <\/g>\n            <g class=\"vf-map-labels\">\n              <text class=\"vf-ml\" x=\"389.5\" y=\"478\">C&Ocirc;TE D'IVOIRE<\/text>\n              <text class=\"vf-ml\" x=\"416\" y=\"443.4\">BURKINA FASO<\/text>\n              <text class=\"vf-ml\" x=\"441.6\" y=\"462\">TOGO<\/text>\n              <text class=\"vf-ml vf-ml--sea\" x=\"449\" y=\"503.5\">Gulf of Guinea<\/text>\n            <\/g>\n            <g class=\"vf-map-pins\">\n              <g class=\"vf-pin\" transform=\"translate(432.18 492)\" data-x=\"432.18\" data-y=\"492\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(426.68 488.09)\" data-x=\"426.68\" data-y=\"488.09\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(434.61 487.54)\" data-x=\"434.61\" data-y=\"487.54\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(420.29 495.09)\" data-x=\"420.29\" data-y=\"495.09\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(417.03 484.78)\" data-x=\"417.03\" data-y=\"484.78\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(412.17 496.64)\" data-x=\"412.17\" data-y=\"496.64\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(433.57 474.08)\" data-x=\"433.57\" data-y=\"474.08\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(407.03 488.93)\" data-x=\"407.03\" data-y=\"488.93\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(418.2 473.61)\" data-x=\"418.2\" data-y=\"473.61\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(408.42 483.31)\" data-x=\"408.42\" data-y=\"483.31\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(409.62 476.42)\" data-x=\"409.62\" data-y=\"476.42\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(413.59 463.03)\" data-x=\"413.59\" data-y=\"463.03\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(428.52 458.67)\" data-x=\"428.52\" data-y=\"458.67\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(423.42 453.22)\" data-x=\"423.42\" data-y=\"453.22\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(413.18 452.13)\" data-x=\"413.18\" data-y=\"452.13\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n              <g class=\"vf-pin\" transform=\"translate(421.05 449.87)\" data-x=\"421.05\" data-y=\"449.87\"><g class=\"vf-pin-in\"><circle class=\"vf-pin-pulse\" r=\".6\"\/><circle class=\"vf-pin-dot\" r=\".6\"\/><\/g><\/g>\n            <\/g>\n            <g class=\"vf-map-tick\"><text x=\"0\" y=\"0\"><\/text><\/g>\n          <\/svg>\n          <span class=\"vf-map-badge\" aria-hidden=\"true\"><i><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"m5 12.5 4.5 4.5L19 7.5\"\/><\/svg><\/i><span><span class=\"vf-map-badge-long\">Available in all<\/span><span class=\"vf-map-badge-short\">All<\/span> 16 regions<\/span><\/span>\n        <\/div>\n        <figcaption class=\"vf-map-credit\">Earth imagery: NASA Blue Marble &middot; Map data: Natural Earth &middot; &copy; OpenStreetMap contributors via geoBoundaries<\/figcaption>\n      <\/figure>\n\n      <div class=\"vf-join-body\">\n        <div class=\"vf-reach\" data-vf-reveal>\n          <b class=\"vf-reach-num\">16<\/b>\n          <span class=\"vf-reach-label\">Regions of Ghana<small>One team, nationwide<\/small><\/span>\n        <\/div>\n        <ol class=\"vf-regions\" aria-label=\"The 16 regions of Ghana we serve\">\n          <li>Greater Accra<\/li>\n          <li>Eastern<\/li>\n          <li>Volta<\/li>\n          <li>Central<\/li>\n          <li>Ashanti<\/li>\n          <li>Western<\/li>\n          <li>Oti<\/li>\n          <li>Western North<\/li>\n          <li>Bono East<\/li>\n          <li>Ahafo<\/li>\n          <li>Bono<\/li>\n          <li>Savannah<\/li>\n          <li>Northern<\/li>\n          <li>North East<\/li>\n          <li>Upper West<\/li>\n          <li>Upper East<\/li>\n        <\/ol>\n        <div class=\"vf-actions\" data-vf-reveal style=\"--d:200\">\n          <a class=\"vf-btn vf-btn--dark\" href=\"mailto:info@3vfltd.com\" data-vf-magnetic>\n            <span class=\"vf-btn-label\">Email the team<\/span>\n            <span class=\"vf-btn-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M9 6l6 6-6 6\"\/><\/svg><\/span>\n          <\/a>\n          <a class=\"vf-btn vf-btn--line\" href=\"https:\/\/3vfltd.com\/wp-content\/uploads\/2026\/08\/3VF_LTD_Company_Profile.pdf\" target=\"_blank\" rel=\"noopener\" data-vf-magnetic>\n            <span class=\"vf-btn-label\">Company profile<\/span>\n            <span class=\"vf-btn-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M5 12h14M13 6l6 6-6 6\"\/><\/svg><\/span>\n          <\/a>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n<\/div>\n\n<script>\n(function () {\n  var root = document.getElementById('vfTeam');\n  if (!root || root.getAttribute('data-vf-ready')) return;\n  root.setAttribute('data-vf-ready', '1');\n\n  function mq(q) { return !!(window.matchMedia && window.matchMedia(q).matches); }\n  var reduce = mq('(prefers-reduced-motion: reduce)');\n  var fine = mq('(hover: hover) and (pointer: fine)');\n  if (!reduce) root.classList.add('vf-js');\n\n  function $(s, c) { return (c || root).querySelector(s); }\n  function $$(s, c) { return Array.prototype.slice.call((c || root).querySelectorAll(s)); }\n  function clamp(v, a, b) { return v < a ? a : (v > b ? b : v); }\n  function ease3(t) { return 1 - Math.pow(1 - t, 3); }\n  function smoothTo(y) { window.scrollTo({ top: Math.max(0, y), behavior: reduce ? 'auto' : 'smooth' }); }\n  \/* frac: leave this share of the screen above the target (default: room for a sticky header) *\/\n  function scrollToEl(el, frac) {\n    var off = frac == null ? 90 : window.innerHeight * frac;\n    smoothTo(el.getBoundingClientRect().top + window.pageYOffset - off);\n  }\n\n  \/* ---------- Text splitting (words, or chars) ---------- *\/\n  function unit(content, i, free) {\n    var w = document.createElement('span');\n    w.className = 'vf-w' + (free ? ' vf-w--free' : '');\n    var inner = document.createElement('span');\n    inner.className = 'vf-wi';\n    inner.style.setProperty('--i', i);\n    if (typeof content === 'string') inner.textContent = content; else inner.appendChild(content);\n    w.appendChild(inner);\n    return w;\n  }\n  function split(el) {\n    var chars = el.getAttribute('data-vf-split') === 'chars', i = 0;\n    if (chars) el.setAttribute('aria-label', el.textContent.replace(\/\\s+\/g, ' ').trim());\n    (function walk(node) {\n      Array.prototype.slice.call(node.childNodes).forEach(function (child) {\n        if (child.nodeType === 3) {\n          var frag = document.createDocumentFragment();\n          child.textContent.split(\/(\\s+)\/).forEach(function (part) {\n            if (!part) return;\n            if (!part.trim()) { frag.appendChild(document.createTextNode(' ')); return; }\n            if (chars) {\n              var word = document.createElement('span');\n              word.className = 'vf-word';\n              word.setAttribute('aria-hidden', 'true');\n              part.split('').forEach(function (ch) { word.appendChild(unit(ch, i++)); });\n              frag.appendChild(word);\n            } else {\n              frag.appendChild(unit(part, i++));\n            }\n          });\n          node.replaceChild(frag, child);\n        } else if (child.nodeType === 1 && child.tagName !== 'BR' && child.tagName.toLowerCase() !== 'svg') {\n          if (child.classList.contains('vf-script')) {\n            var holder = document.createElement('span');\n            node.replaceChild(holder, child);\n            var u = unit(child, i++, true);\n            if (chars) u.setAttribute('aria-hidden', 'true');\n            node.replaceChild(u, holder);\n          } else {\n            walk(child);\n          }\n        }\n      });\n    })(el);\n    el.style.setProperty('--n', i);\n  }\n  $$('[data-vf-split], .vf-highlight').forEach(split);\n\n  $$('[data-vf-stagger]').forEach(function (g) {\n    Array.prototype.forEach.call(g.children, function (c, i) { c.style.setProperty('--i', i); });\n  });\n\n  \/* ---------- Scramble + count-up ---------- *\/\n  function scramble(el) {\n    var tgt = el.querySelector('[aria-hidden]') || el;\n    var finalText = el.getAttribute('data-vf-scramble');\n    var pool = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';\n    var t0 = null, dur = 1500;\n    function f(t) {\n      if (t0 === null) t0 = t;\n      var p = Math.min(1, (t - t0) \/ dur), shown = Math.floor(p * finalText.length), out = '';\n      for (var k = 0; k < finalText.length; k++) {\n        var ch = finalText.charAt(k);\n        out += (k < shown || ch === ' ' || ch === '\u00b7') ? ch : pool.charAt((Math.random() * pool.length) | 0);\n      }\n      tgt.textContent = out;\n      if (p < 1) requestAnimationFrame(f);\n    }\n    requestAnimationFrame(f);\n  }\n  function countUp(el) {\n    var to = parseFloat(el.getAttribute('data-vf-count')) || 0, suf = el.getAttribute('data-suffix') || '';\n    var t0 = null, dur = 1700;\n    function f(t) {\n      if (t0 === null) t0 = t;\n      var p = Math.min(1, (t - t0) \/ dur), e = p === 1 ? 1 : 1 - Math.pow(2, -10 * p);\n      el.textContent = Math.round(to * e) + suf;\n      if (p < 1) requestAnimationFrame(f);\n    }\n    requestAnimationFrame(f);\n  }\n  if (!reduce) $$('[data-vf-count]').forEach(function (el) { el.textContent = '0' + (el.getAttribute('data-suffix') || ''); });\n\n  \/* ---------- Reveal on scroll ---------- *\/\n  var revealTargets = $$('[data-vf-reveal], [data-vf-split], [data-vf-stagger], [data-vf-scramble], [data-vf-count], .vf-stairs, .vf-leaders');\n  function reveal(el) {\n    el.classList.add('is-in');\n    if (el.hasAttribute('data-vf-scramble')) scramble(el);\n    if (el.hasAttribute('data-vf-count')) countUp(el);\n    \/* once the cards have ridden in, drop the stagger so hover feels instant *\/\n    if (el.classList.contains('vf-stairs')) setTimeout(function () { el.classList.add('is-done'); }, 1700);\n  }\n  if (reduce || !('IntersectionObserver' in window)) {\n    revealTargets.forEach(function (el) { el.classList.add('is-in', 'is-done'); });\n  } else {\n    var io = new IntersectionObserver(function (entries) {\n      entries.forEach(function (e) {\n        if (e.isIntersecting) { reveal(e.target); io.unobserve(e.target); }\n      });\n    }, { threshold: 0.12, rootMargin: '0px 0px -6% 0px' });\n    revealTargets.forEach(function (el) { io.observe(el); });\n  }\n\n  \/* ---------- Level indicator + directory ---------- *\/\n  var levelEls = $$('[data-level]');\n  var levelWrap = $('.vf-level'), levelBtn = $('.vf-level-display'), levelPanel = $('.vf-level-panel');\n  var levelNum = $('.vf-level-num'), levelName = $('.vf-level-name'), glyph = $('.vf-level-glyph');\n  var levelBtns = [], curLevel = 0, idleTimer = null;\n\n  function jumpToLevel(i) {\n    var el = levelEls[i];\n    if (i === 0) { smoothTo(root.getBoundingClientRect().top + window.pageYOffset - 80); return; }\n    scrollToEl(el.querySelector('.vf-lead-head, .vf-intro-head') || el);\n  }\n  function setLevel(i) {\n    if (i === curLevel || !levelNum) return;\n    var up = i > curLevel;\n    while (levelNum.children.length > 1) levelNum.removeChild(levelNum.firstElementChild);\n    var old = levelNum.lastElementChild, s = document.createElement('span');\n    s.textContent = levelEls[i].getAttribute('data-level');\n    if (old && !reduce) {\n      s.className = up ? 'vf-in-up' : 'vf-in-down';\n      old.className = up ? 'vf-out-up' : 'vf-out-down';\n      setTimeout(function () { if (old.parentNode) old.parentNode.removeChild(old); }, 480);\n    } else if (old) {\n      old.parentNode.removeChild(old);\n    }\n    levelNum.appendChild(s);\n    levelName.textContent = levelEls[i].getAttribute('data-level-name');\n    levelBtns.forEach(function (b) { b.classList.toggle('is-current', +b.getAttribute('data-i') === i); });\n    if (levelWrap) levelWrap.classList.toggle('is-away', i === 0);\n    if (i === 0) closePanel();\n    curLevel = i;\n  }\n  function closePanel() { if (levelPanel && !levelPanel.hidden) { levelPanel.hidden = true; levelBtn.setAttribute('aria-expanded', 'false'); } }\n  if (levelBtn && levelPanel) {\n    levelEls.forEach(function (el, i) {\n      var b = document.createElement('button');\n      b.type = 'button';\n      b.className = 'vf-level-btn' + (i === 0 ? ' is-current' : '');\n      b.setAttribute('data-i', i);\n      var num = document.createElement('b');\n      num.textContent = el.getAttribute('data-level');\n      b.appendChild(num);\n      b.appendChild(document.createTextNode(el.getAttribute('data-level-name')));\n      b.addEventListener('click', function () {\n        b.classList.add('is-lit');\n        setTimeout(function () { b.classList.remove('is-lit'); }, 1200);\n        setTimeout(closePanel, reduce ? 0 : 260);\n        jumpToLevel(i);\n      });\n      levelPanel.appendChild(b);\n      levelBtns.push(b);\n    });\n    levelBtn.addEventListener('click', function () {\n      var open = levelPanel.hidden;\n      levelPanel.hidden = !open;\n      levelBtn.setAttribute('aria-expanded', open ? 'true' : 'false');\n    });\n    document.addEventListener('click', function (e) { if (!e.target.closest || !e.target.closest('.vf-level')) closePanel(); });\n    document.addEventListener('keydown', function (e) { if (e.key === 'Escape') closePanel(); });\n  }\n\n  \/* ---------- In-page links: sections, and riders -> their card ---------- *\/\n  function ping(el) {\n    el.classList.remove('is-ping'); void el.offsetWidth; el.classList.add('is-ping');\n    setTimeout(function () { el.classList.remove('is-ping'); }, 3000);\n  }\n  $$('a[href^=\"#vf-\"]').forEach(function (a) {\n    a.addEventListener('click', function (e) {\n      var t = document.getElementById(a.getAttribute('href').slice(1));\n      if (!t) return;\n      e.preventDefault();\n      var person = t.classList.contains('vf-person') || t.classList.contains('vf-leader');\n      if (person) {\n        scrollToEl(t, 0.22);\n        setTimeout(function () { ping(t); }, reduce ? 0 : 700);\n      } else {\n        scrollToEl(t.querySelector('.vf-lead-head') || t);\n      }\n    });\n  });\n\n  \/* ---------- Hero escalators: rest when off screen, speed up with the scroll ---------- *\/\n  var esc = $('.vf-esc'), escAnims = null, escOn = true, boost = 0, boostRaf = null;\n  function escList() {\n    if ((!escAnims || !escAnims.length) && esc && esc.getAnimations) {\n      try { escAnims = esc.getAnimations({ subtree: true }); } catch (e) { escAnims = []; }\n    }\n    return escAnims || [];\n  }\n  function runBoost() {\n    boostRaf = null;\n    boost *= 0.94;\n    if (boost < 0.02) boost = 0;\n    escList().forEach(function (a) { try { a.playbackRate = 1 + boost; } catch (e) {} });\n    if (boost) boostRaf = requestAnimationFrame(runBoost);\n  }\n  function kick(dy) {\n    if (reduce || !esc || !escOn) return;\n    var b = Math.min(3.5, Math.abs(dy) * 0.05);\n    if (b > boost) boost = b;\n    if (!boostRaf) boostRaf = requestAnimationFrame(runBoost);\n  }\n  if (esc && !reduce && 'IntersectionObserver' in window) {\n    new IntersectionObserver(function (entries) {\n      escOn = entries[0].isIntersecting;\n      esc.classList.toggle('is-idle', !escOn);\n    }).observe(esc);\n  }\n\n  \/* ---------- Reach map: globe > Africa > Ghana > all 16 regions ----------\n     Everything shares one orthographic projection (centred 8\u00b0E 5\u00b0N, radius 500,\n     in a 1000-unit square). The SVG paths were projected with it in advance; the\n     dot globe is projected live on the canvas with the same maths, so the two\n     line up exactly while one fades into the other. One loop lasts T seconds and\n     only runs while the map is on screen. *\/\n  var map = $('.vf-map');\n  if (map) (function () {\n    var stage = $('.vf-map-stage', map), cvs = $('.vf-globe', map), svg = $('.vf-map-svg', map);\n    var ctx = cvs && cvs.getContext ? cvs.getContext('2d') : null;\n    var afL = $('.vf-map-af', map), nearL = $('.vf-map-near', map), labL = $('.vf-map-labels', map);\n    var ghL = $('.vf-map-gh', map), ringL = $('.vf-map-ring', map);\n    var regs = $$('.vf-rg', map), pins = $$('.vf-pin', map), items = $$('.vf-regions li');\n    var tick = $('.vf-map-tick', map), tickT = $('.vf-map-tick text', map);\n    var badge = $('.vf-map-badge', map), specks = $('.vf-map-specks', map), ecv = $('.vf-earth', map);\n    var RAD = Math.PI \/ 180, L0 = 8, P0 = 5, T = 18, N = regs.length;\n    \/* camera: centre x, y, zoom (the globe shot shows the whole Earth at 60% of the stage) *\/\n    var GLOBE = [500, 500, 0.6], AFRICA = [563, 526, 1.45], GHANA = [422, 476, 12];\n\n    \/* Land dots: one row every 1.8\u00b0 of latitude; each run is start, length (base 36)\n       and class (1 land, 2 Africa, 3 Ghana). Stored as lon, sin(lat), cos(lat), class. *\/\n    var dots = [];\n    (map.getAttribute('data-dots') || '').split('|').forEach(function (row, i) {\n      var lat = -55.1 + i * 1.8, n = Math.max(1, Math.round(360 * Math.cos(lat * RAD) \/ 1.8)), step = 360 \/ n;\n      var sl = Math.sin(lat * RAD), cl = Math.cos(lat * RAD);\n      for (var k = 0; k + 5 <= row.length; k += 5) {\n        var s0 = parseInt(row.substr(k, 2), 36), len = parseInt(row.substr(k + 2, 2), 36), cls = +row.charAt(k + 4);\n        for (var j = 0; j < len; j++) dots.push((-180 + (s0 + j + 0.5) * step) * RAD, sl, cl, cls);\n      }\n    });\n\n    function ease(x) { return x < 0.5 ? 4 * x * x * x : 1 - Math.pow(-2 * x + 2, 3) \/ 2; }\n    function seg(t, a, b) { return clamp((t - a) \/ (b - a), 0, 1); }\n    \/* zoom in log space; the centre moves in step with the view size, so the\n       destination never slips off screen during a deep zoom *\/\n    function fly(a, b, k) {\n      var z = Math.exp(Math.log(a[2]) + (Math.log(b[2]) - Math.log(a[2])) * k);\n      var f = a[2] === b[2] ? k : (1 \/ a[2] - 1 \/ z) \/ (1 \/ a[2] - 1 \/ b[2]);\n      return [a[0] + (b[0] - a[0]) * f, a[1] + (b[1] - a[1]) * f, z];\n    }\n\n    \/* The storyboard: what everything looks like at time t (seconds) *\/\n    function state(t) {\n      \/* svg \/ dots: the dot-globe version; svgE \/ veil \/ clouds: the real Earth *\/\n      var s = { lon: L0, lat: P0, cam: GLOBE, dots: 1, svg: 0, af: 1, near: 0, lab: 0, ring: 0, hi: 0,\n                solid: true, lit: 0, tick: false, badge: false,\n                svgE: 0, veil: 0, clouds: 1 };\n      if (t < 3.6) {                       \/* 1 \u00b7 the globe turns once and stops on Africa *\/\n        var k = ease(t \/ 3.6);\n        s.lon = L0 + 360 * (1 - k);\n        s.lat = P0 - 14 * Math.sin(Math.PI * k);\n        s.hi = seg(t, 2.6, 3.6);\n        s.svgE = seg(t, 3.25, 3.6);        \/* Africa's outline settles onto the globe as it stops *\/\n      } else if (t < 6.6) {                \/* 2 \u00b7 zoom to Africa, Ghana glows *\/\n        s.cam = fly(GLOBE, AFRICA, ease(seg(t, 3.6, 5.4)));\n        s.hi = 1; s.dots = 1 - seg(t, 4.3, 5.2); s.svg = 1 - s.dots; s.svgE = 1;\n        s.ring = seg(t, 5.0, 5.4);\n        s.clouds = 1 - seg(t, 3.8, 5.0);\n      } else if (t < 8.8) {                \/* 3 \u00b7 zoom to Ghana *\/\n        s.cam = fly(AFRICA, GHANA, ease(seg(t, 6.6, 8.6)));\n        s.dots = 0; s.svg = 1; s.svgE = 1; s.clouds = 0;\n        s.af = 1 - 0.85 * seg(t, 7.4, 8.4); s.near = seg(t, 7.2, 8.2); s.lab = seg(t, 8.0, 8.8);\n        s.ring = 1 - seg(t, 6.6, 7.2);\n        s.veil = 0.62 * seg(t, 7.0, 8.4);  \/* the imagery dims so the regions stand out *\/\n        s.solid = t < 8.2;\n      } else if (t < 16.4) {               \/* 4 \u00b7 the regions light up from Accra outwards, then hold *\/\n        s.cam = GHANA; s.dots = 0; s.svg = 1; s.svgE = 1; s.af = 0.15; s.near = 1; s.lab = 1; s.solid = false;\n        s.veil = 0.62; s.clouds = 0;\n        s.lit = Math.min(N, Math.floor((t - 8.8) \/ 0.2) + 1);\n        s.tick = t < 12.2;\n        s.badge = t >= 12.2;\n      } else {                             \/* back out to the globe for the next turn *\/\n        s.cam = fly(GHANA, GLOBE, ease(seg(t, 16.4, T)));\n        s.sphere = seg(t, 16.8, 17.5); s.dots = seg(t, 17.3, T); s.svg = 1 - seg(t, 17.4, T);\n        s.svgE = 1 - seg(t, 17.2, T); s.veil = 0.62 * (1 - seg(t, 16.4, 17.1)); s.clouds = seg(t, 17.0, T);\n        s.af = 0.15 + 0.85 * seg(t, 16.4, 17.0); s.near = 1 - seg(t, 16.4, 16.9); s.lab = 1 - seg(t, 16.4, 16.7);\n        s.solid = t > 16.7; s.hi = 1 - seg(t, 17.3, T);\n      }\n      return s;\n    }\n\n    var W = 0, H = 0, dpr = 1, drawn = false;\n    var last = { lit: -1, solid: null, badge: null };\n    function size() {\n      var r = stage.getBoundingClientRect();\n      dpr = Math.min(window.devicePixelRatio || 1, 2);\n      W = Math.max(1, Math.round(r.width * dpr)); H = Math.max(1, Math.round(r.height * dpr));\n      if (cvs.width !== W || cvs.height !== H) { cvs.width = W; cvs.height = H; drawn = true; }\n      if (ecv && (ecv.width !== W || ecv.height !== H)) { ecv.width = W; ecv.height = H; }\n    }\n\n    \/* Dot globe on the canvas (used where the real Earth can't be drawn). Dots are\n       bucketed by colour and brightness so each bucket is filled in one go.\n       fade: 1 normally, less while the real Earth fades in over it. *\/\n    var buckets = [];\n    function globe(s, fade) {\n      if (!ctx) return;\n      var sphere = (s.sphere == null ? s.dots : s.sphere) * fade, dotsA = s.dots * fade;\n      if (sphere <= 0.005 && dotsA <= 0.005) { if (drawn) { ctx.clearRect(0, 0, W, H); drawn = false; } return; }\n      drawn = true;\n      var k = Math.min(W, H) * s.cam[2] \/ 1000, ox = W \/ 2 - s.cam[0] * k, oy = H \/ 2 - s.cam[1] * k;\n      var R = 500 * k, cx = 500 * k + ox, cy = 500 * k + oy, TAU = Math.PI * 2;\n      \/* dots grow with the zoom, but never past 1.6x their size on the full globe *\/\n      var rMax = 3.3 * 1.6 * Math.min(W, H) * GLOBE[2] \/ 1000;\n      ctx.clearRect(0, 0, W, H);\n      ctx.globalAlpha = sphere;\n      var g = ctx.createRadialGradient(cx, cy, R * 0.94, cx, cy, R * 1.16);\n      g.addColorStop(0, 'rgba(127,176,195,.3)'); g.addColorStop(1, 'rgba(127,176,195,0)');\n      ctx.fillStyle = g; ctx.beginPath(); ctx.arc(cx, cy, R * 1.16, 0, TAU); ctx.fill();\n      g = ctx.createRadialGradient(cx - R * 0.35, cy - R * 0.42, R * 0.05, cx, cy, R);\n      g.addColorStop(0, '#1b7097'); g.addColorStop(0.6, '#0b4f6c'); g.addColorStop(1, '#063349');\n      ctx.fillStyle = g; ctx.beginPath(); ctx.arc(cx, cy, R, 0, TAU); ctx.fill();\n      ctx.lineWidth = dpr; ctx.strokeStyle = 'rgba(169,205,219,.38)'; ctx.stroke();\n\n      var l0 = s.lon * RAD, sp0 = Math.sin(s.lat * RAD), cp0 = Math.cos(s.lat * RAD);\n      \/* graticule every 20\u00b0 *\/\n      ctx.strokeStyle = 'rgba(169,205,219,.11)';\n      ctx.beginPath();\n      function line(v, merid) {\n        var pen = false;\n        for (var q = merid ? -90 : -180; q <= (merid ? 90 : 180); q += 4) {\n          var lam = (merid ? v : q) * RAD, phi = (merid ? q : v) * RAD;\n          var sp = Math.sin(phi), cp = Math.cos(phi), dl = lam - l0, cd = Math.cos(dl);\n          if (sp0 * sp + cp0 * cp * cd < 0) { pen = false; continue; }\n          var x = ox + (500 + 500 * cp * Math.sin(dl)) * k, y = oy + (500 - 500 * (cp0 * sp - sp0 * cp * cd)) * k;\n          if (pen) ctx.lineTo(x, y); else ctx.moveTo(x, y);\n          pen = true;\n        }\n      }\n      for (var m = -180; m < 180; m += 20) line(m, true);\n      for (var p = -60; p <= 60; p += 20) line(p, false);\n      ctx.stroke();\n\n      var i, b;\n      for (b = 0; b < 12; b++) { if (buckets[b]) buckets[b].length = 0; else buckets[b] = []; }\n      for (i = 0; i < dots.length; i += 4) {\n        var dl2 = dots[i] - l0, cd2 = Math.cos(dl2), sl = dots[i + 1], cl = dots[i + 2];\n        var cosc = sp0 * sl + cp0 * cl * cd2;\n        if (cosc <= 0.03) continue;\n        var x2 = ox + (500 + 500 * cl * Math.sin(dl2)) * k, y2 = oy + (500 - 500 * (cp0 * sl - sp0 * cl * cd2)) * k;\n        if (x2 < -20 || y2 < -20 || x2 > W + 20 || y2 > H + 20) continue;\n        b = (dots[i + 3] - 1) * 4 + Math.min(3, Math.floor(cosc * 4));\n        buckets[b].push(x2, y2, Math.min(rMax, 3.3 * k) * (0.55 + 0.45 * cosc));\n      }\n      var hi = s.hi;\n      var cols = ['rgb(169,205,219)',\n                  'rgb(' + Math.round(169 + 86 * hi) + ',' + Math.round(205 - 34 * hi) + ',' + Math.round(219 - 125 * hi) + ')',\n                  '#ff7a00'];\n      var alphas = [0.32, 0.55, 0.8, 1];\n      for (b = 0; b < 12; b++) {\n        var arr = buckets[b];\n        if (!arr.length) continue;\n        ctx.fillStyle = cols[Math.floor(b \/ 4)];\n        ctx.globalAlpha = dotsA * alphas[b % 4];\n        ctx.beginPath();\n        for (i = 0; i < arr.length; i += 3) { ctx.moveTo(arr[i] + arr[i + 2], arr[i + 1]); ctx.arc(arr[i], arr[i + 1], arr[i + 2], 0, TAU); }\n        ctx.fill();\n      }\n      ctx.globalAlpha = 1;\n    }\n\n    \/* ---- The real Earth: WebGL, one full-stage quad. For every pixel the shader\n       undoes the same orthographic projection to find the latitude\/longitude it\n       shows, then samples NASA's Blue Marble imagery and a water mask (vivid\n       oceans, glowing coastlines, sun glint), adds drifting clouds and the blue\n       atmosphere, and dims everything (\"veil\") once the regions take over. ---- *\/\n    var gl = null, U = {}, earthReady = false, earthOn = false, earthT0 = 0, earthLoading = false;\n    var VS = 'attribute vec2 aP; void main(){ gl_Position = vec4(aP, 0.0, 1.0); }';\n    var FS = [\n      '#ifdef GL_FRAGMENT_PRECISION_HIGH', 'precision highp float;', '#else', 'precision mediump float;', '#endif',\n      'uniform sampler2D uDay; uniform sampler2D uWater;',\n      'uniform vec2 uRes; uniform vec3 uCam; uniform vec2 uRot; uniform vec2 uTexel;',\n      'uniform float uTime; uniform float uClouds; uniform float uCoast; uniform float uVeil; uniform float uAlpha;',\n      'float hash(vec3 p){ p = fract(p * 0.3183099 + 0.1); p *= 17.0; return fract(p.x * p.y * p.z * (p.x + p.y + p.z)); }',\n      'float noise(vec3 x){ vec3 i = floor(x); vec3 f = fract(x); f = f * f * (3.0 - 2.0 * f);',\n      '  return mix(mix(mix(hash(i), hash(i + vec3(1.0, 0.0, 0.0)), f.x), mix(hash(i + vec3(0.0, 1.0, 0.0)), hash(i + vec3(1.0, 1.0, 0.0)), f.x), f.y),',\n      '             mix(mix(hash(i + vec3(0.0, 0.0, 1.0)), hash(i + vec3(1.0, 0.0, 1.0)), f.x), mix(hash(i + vec3(0.0, 1.0, 1.0)), hash(i + vec3(1.0, 1.0, 1.0)), f.x), f.y), f.z); }',\n      'float fbm(vec3 p){ float s = 0.0; float a = 0.5; for (int i = 0; i < 4; i++){ s += a * noise(p); p = p * 2.07 + vec3(3.1, 1.7, 5.3); a *= 0.5; } return s; }',\n      'void main(){',\n      '  float S = min(uRes.x, uRes.y); float k = S * uCam.z \/ 1000.0;',\n      '  vec2 px = vec2(gl_FragCoord.x, uRes.y - gl_FragCoord.y);',\n      '  vec2 wp = uCam.xy + (px - 0.5 * uRes) \/ k;',\n      '  vec2 q = vec2(wp.x - 500.0, 500.0 - wp.y) \/ 500.0;',\n      '  float r = length(q); float pxs = 1.0 \/ (k * 500.0);',\n      '  vec3 atmo = vec3(0.56, 0.86, 1.0);',\n      '  float d = max(r - 1.0, 0.0);',\n      '  float halo = 0.95 * exp(-d * 24.0) + 0.38 * exp(-d * 5.5);',\n      '  vec4 outside = vec4(atmo * halo, halo);',\n      '  vec4 inside = vec4(0.0);',\n      '  if (r < 1.0 + pxs) {',\n      '    float rr = min(r, 0.9999); float z = sqrt(1.0 - rr * rr);',\n      '    vec3 n = vec3(q \/ max(r, 0.00001) * rr, z);',\n      '    float sp0 = sin(uRot.y); float cp0 = cos(uRot.y);',\n      '    float lat = asin(clamp(z * sp0 + n.y * cp0, -1.0, 1.0));',\n      '    float lon = uRot.x + atan(n.x, z * cp0 - n.y * sp0);',\n      '    vec2 uv = vec2(lon \/ 6.2831853 + 0.5, 0.5 - lat \/ 3.1415927);',\n      '    vec3 day = texture2D(uDay, uv).rgb;',\n      '    float w = texture2D(uWater, uv).r;',\n      '    float c = abs(texture2D(uWater, uv + vec2(uTexel.x, 0.0)).r - texture2D(uWater, uv - vec2(uTexel.x, 0.0)).r)',\n      '            + abs(texture2D(uWater, uv + vec2(0.0, uTexel.y)).r - texture2D(uWater, uv - vec2(0.0, uTexel.y)).r);',\n      '    float lum = dot(day, vec3(0.299, 0.587, 0.114));',\n      '    vec3 land = mix(vec3(lum), day, 1.45) * 1.3;',\n      '    vec3 ocean = mix(vec3(0.02, 0.19, 0.46), vec3(0.09, 0.55, 0.9), clamp(lum * 5.0, 0.0, 1.0));',\n      '    vec3 col = mix(land, ocean, w);',\n      '    vec3 L = normalize(vec3(-0.45, 0.5, 0.75));',\n      '    float diff = max(dot(n, L), 0.0);',\n      '    col *= 0.52 + 0.7 * diff;',\n      '    col += pow(max(dot(n, normalize(L + vec3(0.0, 0.0, 1.0))), 0.0), 48.0) * w * vec3(0.55, 0.78, 0.95);',\n      '    col += vec3(0.72, 0.96, 1.0) * clamp(c * 1.15, 0.0, 1.0) * uCoast;',\n      '    if (uClouds > 0.001) {',\n      '      vec3 P = vec3(cos(lat) * cos(lon), sin(lat), cos(lat) * sin(lon));',\n      '      float cl = smoothstep(0.52, 0.82, fbm(P * 3.4 + vec3(uTime * 0.012, 0.0, uTime * 0.006)));',\n      '      col = mix(col, vec3(1.0), cl * 0.72 * uClouds * (0.55 + 0.45 * diff));',\n      '    }',\n      '    float rim = 1.0 - z;',\n      '    col = mix(col, atmo, pow(rim, 2.2) * 0.8);',\n      '    col += atmo * pow(rim, 8.0) * 0.55;',\n      '    col = mix(col, vec3(0.03, 0.2, 0.28) + col * vec3(0.2, 0.28, 0.32), uVeil);',\n      '    inside = vec4(col, 1.0);',\n      '  }',\n      '  gl_FragColor = mix(inside, outside, smoothstep(1.0 - pxs, 1.0 + pxs, r)) * uAlpha;',\n      '}'\n    ].join('\\n');\n\n    function shader(type, src) {\n      var sh = gl.createShader(type);\n      gl.shaderSource(sh, src); gl.compileShader(sh);\n      return gl.getShaderParameter(sh, gl.COMPILE_STATUS) ? sh : null;\n    }\n    function earthOff() {\n      gl = null; earthReady = false; earthOn = false;\n      map.classList.remove('is-earth');\n    }\n    function startEarth() {\n      var base = map.getAttribute('data-earth');\n      if (earthLoading || !base || !ecv || !ctx) return;\n      earthLoading = true;\n      try { gl = ecv.getContext('webgl', { alpha: true, premultipliedAlpha: true, antialias: false }) || ecv.getContext('experimental-webgl'); } catch (e) { gl = null; }\n      if (!gl) return;\n      var vs = shader(gl.VERTEX_SHADER, VS), fs = shader(gl.FRAGMENT_SHADER, FS);\n      if (!vs || !fs) { earthOff(); return; }\n      var prog = gl.createProgram();\n      gl.attachShader(prog, vs); gl.attachShader(prog, fs); gl.linkProgram(prog);\n      if (!gl.getProgramParameter(prog, gl.LINK_STATUS)) { earthOff(); return; }\n      gl.useProgram(prog);\n      var buf = gl.createBuffer();\n      gl.bindBuffer(gl.ARRAY_BUFFER, buf);\n      gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([-1, -1, 1, -1, -1, 1, 1, 1]), gl.STATIC_DRAW);\n      var aP = gl.getAttribLocation(prog, 'aP');\n      gl.enableVertexAttribArray(aP);\n      gl.vertexAttribPointer(aP, 2, gl.FLOAT, false, 0, 0);\n      ['uDay', 'uWater', 'uRes', 'uCam', 'uRot', 'uTexel', 'uTime', 'uClouds', 'uCoast', 'uVeil', 'uAlpha'].forEach(function (n) { U[n] = gl.getUniformLocation(prog, n); });\n      gl.uniform1i(U.uDay, 0); gl.uniform1i(U.uWater, 1);\n      ecv.addEventListener('webglcontextlost', function (e) { e.preventDefault(); earthOff(); }, false);\n\n      \/* both images are resampled to power-of-two sizes so they can be mipmapped\n         (crisp, shimmer-free continents at every zoom) *\/\n      var max = gl.getParameter(gl.MAX_TEXTURE_SIZE) || 2048;\n      var big = Math.min(W, H) >= 900 && max >= 4096 ? 4096 : 2048, left = 2;\n      var aniso = gl.getExtension('EXT_texture_filter_anisotropic') || gl.getExtension('WEBKIT_EXT_texture_filter_anisotropic');\n      function load(file, unit, width) {\n        var img = new Image();\n        img.crossOrigin = 'anonymous';\n        img.onload = function () {\n          if (!gl) return;\n          var src = img;\n          if (img.naturalWidth !== width || img.naturalHeight !== width \/ 2) {\n            src = document.createElement('canvas'); src.width = width; src.height = width \/ 2;\n            src.getContext('2d').drawImage(img, 0, 0, width, width \/ 2);\n          }\n          var tx = gl.createTexture();\n          gl.activeTexture(gl.TEXTURE0 + unit);\n          gl.bindTexture(gl.TEXTURE_2D, tx);\n          try { gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, src); } catch (e) { earthOff(); return; }\n          gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT);\n          gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);\n          gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR);\n          gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);\n          if (aniso) gl.texParameterf(gl.TEXTURE_2D, aniso.TEXTURE_MAX_ANISOTROPY_EXT, Math.min(8, gl.getParameter(aniso.MAX_TEXTURE_MAX_ANISOTROPY_EXT)));\n          gl.generateMipmap(gl.TEXTURE_2D);\n          if (unit === 1) gl.uniform2f(U.uTexel, 1.3 \/ width, 1.3 \/ (width \/ 2));\n          if (--left === 0) earthReady = true;\n        };\n        img.onerror = earthOff;\n        img.src = base + file;\n      }\n      load('earth-blue-marble.jpg', 0, big);\n      load('earth-water.png', 1, 2048);\n    }\n    function earth(s, a) {\n      if (!gl) return;\n      gl.viewport(0, 0, W, H);\n      gl.clearColor(0, 0, 0, 0); gl.clear(gl.COLOR_BUFFER_BIT);\n      gl.uniform2f(U.uRes, W, H);\n      gl.uniform3f(U.uCam, s.cam[0], s.cam[1], s.cam[2]);\n      gl.uniform2f(U.uRot, s.lon * RAD, s.lat * RAD);\n      gl.uniform1f(U.uTime, clock);\n      gl.uniform1f(U.uClouds, s.clouds);\n      gl.uniform1f(U.uCoast, 1 \/ (1 + (s.cam[2] - 0.45) * 0.45));\n      gl.uniform1f(U.uVeil, s.veil);\n      gl.uniform1f(U.uAlpha, a);\n      gl.drawArrays(gl.TRIANGLE_STRIP, 0, 4);\n    }\n\n    function draw(t) {\n      var s = state(t), c = s.cam, v = 1000 \/ c[2];\n      \/* E: how far the real Earth has faded in (it fades in once its images are in) *\/\n      var E = earthOn ? clamp((clock - earthT0) \/ 0.8, 0, 1) : 0;\n      svg.setAttribute('viewBox', (c[0] - v \/ 2).toFixed(3) + ' ' + (c[1] - v \/ 2).toFixed(3) + ' ' + v.toFixed(3) + ' ' + v.toFixed(3));\n      svg.style.opacity = (E * s.svgE + (1 - E) * s.svg).toFixed(3);\n      specks.style.opacity = clamp((1.3 - c[2]) \/ 0.85, 0, 1).toFixed(3);\n      afL.style.opacity = s.af.toFixed(3);\n      nearL.style.opacity = s.near.toFixed(3);\n      labL.style.opacity = s.lab.toFixed(3);\n      ringL.style.opacity = s.ring.toFixed(3);\n      if (s.solid !== last.solid) { ghL.classList.toggle('is-solid', s.solid); last.solid = s.solid; }\n      if (s.lit !== last.lit) {\n        regs.forEach(function (r, i) { r.classList.toggle('is-lit', i < s.lit); });\n        pins.forEach(function (r, i) { r.classList.toggle('is-lit', i < s.lit); });\n        items.forEach(function (r, i) { r.classList.toggle('is-lit', i < s.lit); });\n        if (s.tick && s.lit > 0) {\n          var pin = pins[s.lit - 1];\n          tickT.setAttribute('x', (+pin.getAttribute('data-x') + 1.3).toFixed(2));\n          tickT.setAttribute('y', (+pin.getAttribute('data-y') + 0.65).toFixed(2));\n          tickT.textContent = regs[s.lit - 1].getAttribute('data-name');\n          tick.classList.remove('is-on'); void tick.getBoundingClientRect(); tick.classList.add('is-on');\n        }\n        last.lit = s.lit;\n      }\n      if (!s.tick) tick.classList.remove('is-on');\n      if (s.badge !== last.badge) { badge.classList.toggle('is-on', s.badge); last.badge = s.badge; }\n      globe(s, 1 - E);\n      if (earthOn) earth(s, E);\n    }\n\n    \/* The real Earth takes over as soon as its images are in: instantly if the map\n       hasn't started yet, otherwise with a 0.8s cross-fade (both globes share one\n       camera, so the swap is seamless at any point of the loop). *\/\n    var clock = 0, prev = null, raf = null, on = false;\n    function frame(now) {\n      raf = null;\n      if (!on) return;\n      if (prev !== null) clock += Math.min(0.1, (now - prev) \/ 1000);\n      prev = now;\n      if (earthReady && !earthOn) {\n        earthOn = true; earthT0 = clock === 0 ? -1 : clock;\n        map.classList.add('is-earth');\n      }\n      draw(clock % T);\n      raf = requestAnimationFrame(frame);\n    }\n    function play() { if (on) return; on = true; prev = null; raf = requestAnimationFrame(frame); }\n    function pause() { on = false; if (raf) cancelAnimationFrame(raf); raf = null; }\n\n    size();\n    window.addEventListener('resize', function () { size(); if (!on) draw(reduce ? 13 : clock % T); });\n    \/* Reduced motion (or no IntersectionObserver): the finished map, standing still *\/\n    if (reduce || !('IntersectionObserver' in window)) { draw(13); return; }\n    draw(0);\n    \/* fetch the Earth imagery when the map is about a screen away *\/\n    var near = new IntersectionObserver(function (entries) {\n      if (entries[0].isIntersecting) { near.disconnect(); size(); startEarth(); }\n    }, { rootMargin: '100% 0px' });\n    near.observe(stage);\n    new IntersectionObserver(function (entries) {\n      if (entries[0].isIntersecting) { size(); play(); } else pause();\n    }, { threshold: 0.15 }).observe(stage);\n  })();\n\n  \/* ---------- Scroll engine: parallax, drift, highlight, flights, photo, level ---------- *\/\n  var vh = window.innerHeight, lastY = window.pageYOffset, ticking = false;\n  var par = $$('[data-vf-speed]').map(function (el) { return { el: el, s: parseFloat(el.getAttribute('data-vf-speed')) || 0 }; });\n  var drift = $$('[data-vf-drift]').map(function (el) { return { el: el, a: parseFloat(el.getAttribute('data-vf-drift')) || 0 }; });\n  var hls = $$('.vf-highlight'), flights = $$('.vf-dept, .vf-leaders');\n  var org = $('.vf-org'), tog = $('.vf-together');\n\n  function update() {\n    ticking = false;\n    var y = window.pageYOffset, d = y - lastY;\n    if (d) {\n      kick(d);\n      if (glyph) {\n        glyph.setAttribute('data-dir', d > 0 ? 'down' : 'up');\n        glyph.classList.add('is-moving');\n        clearTimeout(idleTimer);\n        idleTimer = setTimeout(function () { glyph.classList.remove('is-moving'); }, 650);\n      }\n    }\n    lastY = y;\n\n    if (!reduce) {\n      par.forEach(function (p) {\n        var r = p.el.parentNode.getBoundingClientRect();\n        if (r.bottom < -200 || r.top > vh + 200) return;\n        var c = r.top + r.height \/ 2 - vh \/ 2;\n        p.el.style.transform = 'translate3d(0,' + (-c * p.s).toFixed(1) + 'px,0)';\n      });\n      drift.forEach(function (p) {\n        var r = p.el.parentNode.getBoundingClientRect();\n        if (r.bottom < 0 || r.top > vh) return;\n        var v = ((vh - r.top) \/ (vh + r.height) - 0.5) * p.a;\n        p.el.style.transform = 'translate3d(' + v.toFixed(1) + 'px,0,0)';\n      });\n      hls.forEach(function (el) {\n        var r = el.getBoundingClientRect();\n        el.style.setProperty('--prog', clamp((vh * 0.82 - r.top) \/ (r.height + vh * 0.32), 0, 1).toFixed(3));\n      });\n      \/* Escalator steps come out of the floor flat and rise into stairs as a\n         flight scrolls up the screen; scrolling back lowers them again. *\/\n      flights.forEach(function (el) {\n        var r = el.getBoundingClientRect();\n        el.style.setProperty('--form', ease3(clamp((vh * 0.95 - r.top) \/ (vh * 0.5), 0, 1)).toFixed(3));\n      });\n      if (org) {\n        var or = org.getBoundingClientRect();\n        org.style.setProperty('--p', clamp((vh * 0.8 - or.top) \/ (or.height + vh * 0.25), 0, 1).toFixed(3));\n      }\n      if (tog) {\n        var tr = tog.getBoundingClientRect();\n        var g = clamp((vh - tr.top) \/ (vh * 0.75), 0, 1);\n        tog.style.setProperty('--grow', (1 - (1 - g) * (1 - g)).toFixed(3));\n      }\n    }\n\n    var li = 0;\n    levelEls.forEach(function (el, i) { if (el.getBoundingClientRect().top <= vh * 0.5) li = i; });\n    setLevel(li);\n  }\n  function onScroll() { if (!ticking) { ticking = true; requestAnimationFrame(update); } }\n  window.addEventListener('scroll', onScroll, { passive: true });\n  window.addEventListener('resize', function () { vh = window.innerHeight; escAnims = null; onScroll(); });\n  window.addEventListener('load', onScroll);\n  update();\n\n  if (reduce) return;\n\n  \/* ---------- Hero: layers drift with the cursor ---------- *\/\n  var hero = $('.vf-hero');\n  if (hero && fine) {\n    hero.addEventListener('pointermove', function (e) {\n      var r = hero.getBoundingClientRect();\n      hero.style.setProperty('--hx', ((e.clientX - r.left) \/ r.width - 0.5).toFixed(3));\n      hero.style.setProperty('--hy', ((e.clientY - r.top) \/ r.height - 0.5).toFixed(3));\n    });\n    hero.addEventListener('pointerleave', function () { hero.style.setProperty('--hx', 0); hero.style.setProperty('--hy', 0); });\n  }\n\n  if (!fine) return;\n\n  \/* ---------- Hover: 3D tilt, magnetic buttons, spotlight ---------- *\/\n  $$('[data-vf-tilt]').forEach(function (el) {\n    var raf = null;\n    el.addEventListener('pointerenter', function () { el.classList.add('is-tilting'); });\n    el.addEventListener('pointermove', function (e) {\n      var r = el.getBoundingClientRect();\n      var px = (e.clientX - r.left) \/ r.width - 0.5, py = (e.clientY - r.top) \/ r.height - 0.5;\n      if (raf) cancelAnimationFrame(raf);\n      raf = requestAnimationFrame(function () {\n        el.style.transform = 'perspective(800px) rotateY(' + (px * 10).toFixed(2) + 'deg) rotateX(' + (-py * 10).toFixed(2) + 'deg) scale3d(1.03,1.03,1.03)';\n      });\n    });\n    el.addEventListener('pointerleave', function () {\n      el.classList.remove('is-tilting');\n      if (raf) cancelAnimationFrame(raf);\n      el.style.transform = '';\n    });\n  });\n\n  $$('[data-vf-magnetic]').forEach(function (el) {\n    var label = $('.vf-btn-label', el);\n    el.addEventListener('pointermove', function (e) {\n      var r = el.getBoundingClientRect();\n      var x = e.clientX - r.left - r.width \/ 2, y = e.clientY - r.top - r.height \/ 2;\n      el.style.transform = 'translate3d(' + (x * 0.18).toFixed(1) + 'px,' + (y * 0.3).toFixed(1) + 'px,0)';\n      if (label) label.style.transform = 'translate3d(' + (x * 0.08).toFixed(1) + 'px,' + (y * 0.1).toFixed(1) + 'px,0)';\n    });\n    el.addEventListener('pointerleave', function () {\n      el.style.transform = '';\n      if (label) label.style.transform = '';\n    });\n  });\n\n  $$('[data-vf-spot]').forEach(function (el) {\n    el.addEventListener('pointermove', function (e) {\n      var r = el.getBoundingClientRect();\n      el.style.setProperty('--sx', (e.clientX - r.left) + 'px');\n      el.style.setProperty('--sy', (e.clientY - r.top) + 'px');\n    });\n  });\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>READ MORE 3VF Team Page Directory G Lobby Our team ENGINEERS \u00b7 TECHNICIANS \u00b7 PROFESSIONALSEngineers, technicians and professionals The people who keep Ghana moving. Meet the people behind every installation, maintenance visit and modernization &mdash; the team keeping Ghana&#8217;s lifts and escalators running safely and smoothly. Meet the team Company profile Waye DARKOGeneral Manager Sampson [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_animmysite_disable_animation":false,"footnotes":""},"class_list":["post-3889","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/3vfltd.com\/index.php\/wp-json\/wp\/v2\/pages\/3889","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/3vfltd.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/3vfltd.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/3vfltd.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/3vfltd.com\/index.php\/wp-json\/wp\/v2\/comments?post=3889"}],"version-history":[{"count":0,"href":"https:\/\/3vfltd.com\/index.php\/wp-json\/wp\/v2\/pages\/3889\/revisions"}],"wp:attachment":[{"href":"https:\/\/3vfltd.com\/index.php\/wp-json\/wp\/v2\/media?parent=3889"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}