body{margin:0;background:#faf7f2;color:#37515f;font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:#09814a26;color:#37515f}a{color:#0078a1;text-decoration:none}a:hover{color:#09814a}input,textarea{font-family:Inter,sans-serif}.container{max-width:1180px;margin:0 auto;padding:0 max(24px,4vw)}@keyframes heroRise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes dotIn{to{opacity:1;transform:scale(1)}}@keyframes dotPulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes lateIn{60%{opacity:0}to{opacity:1}}@keyframes wipRadar{0%{transform:scale(1);opacity:.9}70%{transform:scale(2);opacity:0}to{transform:scale(2);opacity:0}}@keyframes wipFill{0%,to{opacity:.4}50%{opacity:1}}@keyframes wipBreathe{0%,to{opacity:1}50%{opacity:.65}}@keyframes wipGhost{0%,to{opacity:.35}50%{opacity:.9}}@keyframes drawOn{to{stroke-dashoffset:0}}.africa-anim circle{opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.2);animation:dotIn .55s cubic-bezier(.22,1,.36,1) forwards}.africa-anim circle.a{animation:dotIn .55s cubic-bezier(.22,1,.36,1) forwards,dotPulse 2.6s ease-in-out 2.4s infinite}.africa-anim g.x{opacity:0;animation:lateIn 2.2s ease-out forwards}.africa-wip circle{transform-box:fill-box;transform-origin:center}.africa-wip .ring{animation:wipRadar 2.8s ease-out infinite}.africa-wip .fill{animation:wipFill 4.5s ease-in-out infinite}.africa-wip .built{animation:wipBreathe 6s ease-in-out infinite}.africa-wip .ghost{animation:wipGhost 5s ease-in-out infinite}.js .art-draw [pathLength]{stroke-dasharray:1;stroke-dashoffset:1}.hero-rise-1{opacity:0;animation:heroRise .7s cubic-bezier(.22,1,.36,1) .15s forwards}.hero-rise-2{opacity:0;animation:heroRise .7s cubic-bezier(.22,1,.36,1) .35s forwards}.hero-rise-3{opacity:0;animation:heroRise .7s cubic-bezier(.22,1,.36,1) .5s forwards}.hero-rise-4{opacity:0;animation:heroRise .7s cubic-bezier(.22,1,.36,1) .65s forwards}.btn-yellow{display:inline-block;font:600 14px Inter,sans-serif;letter-spacing:.03em;text-transform:uppercase;color:#37515f;background:#ffca3a;border:2px solid #FFCA3A;border-radius:6px;padding:14px 32px;cursor:pointer}.btn-yellow:hover{background:#ffd45f;border-color:#ffd45f;color:#37515f}.btn-outline{display:inline-block;font:600 14px Inter,sans-serif;letter-spacing:.03em;text-transform:uppercase;color:#37515f;background:transparent;border:2px solid #37515F;border-radius:6px;padding:14px 32px;cursor:pointer}.btn-outline:hover{border-color:#09814a;color:#09814a}.btn-white{flex:0 0 auto;display:inline-block;font:600 14px Inter,sans-serif;letter-spacing:.03em;text-transform:uppercase;color:#37515f;background:#fff;border:2px solid #fff;border-radius:6px;padding:14px 32px;cursor:pointer}.btn-white:hover{background:#ffca3a;border-color:#ffca3a;color:#37515f}.btn-green{display:inline-flex;align-items:center;gap:10px;font:700 15px Archivo,sans-serif;color:#fff;background:#09814a;border:2px solid #09814A;border-radius:8px;padding:14px 24px;cursor:pointer}.btn-green:hover{background:#066a3c;border-color:#066a3c;color:#fff}.case-card{flex:0 0 300px;scroll-snap-align:start;border-radius:12px;padding:26px 24px;display:flex;flex-direction:column;gap:10px;cursor:pointer;color:#fff;min-height:190px;box-sizing:border-box;transition:background .15s ease,transform .15s ease}.case-card:hover{color:#fff;transform:translateY(-3px)}.case-card-green{background:#09814a}.case-card-green:hover{background:#066a3c}.case-card-slate{background:#37515f}.case-card-slate:hover{background:#2d4350}.site-nav{position:sticky;top:0;z-index:50;background:#faf7f2f7;backdrop-filter:blur(16px);border-bottom:1px solid rgba(55,81,95,.1)}.nav-inner{max-width:1180px;margin:0 auto;padding:0 max(24px,4vw);height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px}.nav-links{display:flex;align-items:center;gap:26px;flex-wrap:wrap;justify-content:flex-end}.nav-link{font:600 12px Inter,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#37515f;cursor:pointer}.nav-link:hover,.nav-link[aria-current=page]{color:#09814a}.nav-cta{font:600 12px Inter,sans-serif;letter-spacing:.04em;text-transform:uppercase;color:#37515f;background:#ffca3a;border:2px solid #FFCA3A;border-radius:6px;padding:10px 20px;cursor:pointer}.nav-cta:hover{background:#ffd45f;border-color:#ffd45f;color:#37515f}.nav-burger{display:none;font:600 22px/1 Inter,sans-serif;color:#37515f;cursor:pointer;padding:10px;min-width:44px;min-height:44px;align-items:center;justify-content:center;background:none;border:0}.nav-mobile{display:none;border-top:1px solid rgba(55,81,95,.1);background:#faf7f2;flex-direction:column;padding:8px max(24px,4vw) 20px}.nav-mobile.open{display:flex}.nav-mobile-link{font:600 15px Archivo,sans-serif;color:#37515f;cursor:pointer;padding:14px 0;border-bottom:1px solid rgba(55,81,95,.08)}.nav-mobile-link:hover,.nav-mobile-link[aria-current=page]{color:#09814a}.nav-mobile-cta{margin-top:16px;font:600 14px Inter,sans-serif;letter-spacing:.04em;text-transform:uppercase;color:#37515f;background:#ffca3a;border:2px solid #FFCA3A;border-radius:6px;padding:14px 20px;text-align:center;cursor:pointer}.nav-mobile-cta:hover{background:#ffd45f;border-color:#ffd45f;color:#37515f}@media(max-width:799.98px){.nav-links{display:none}.nav-burger{display:flex}}.foot-link{font:500 12px Inter,sans-serif;color:#ffffffa6;cursor:pointer}.foot-link:hover{color:#fff}@media(prefers-reduced-motion:reduce){.hero-rise-1,.hero-rise-2,.hero-rise-3,.hero-rise-4{opacity:1;animation:none}.africa-anim circle{opacity:1;transform:none;animation:none}.africa-anim g.x{opacity:1;animation:none}.africa-wip .ring,.africa-wip .fill,.africa-wip .built,.africa-wip .ghost{animation:none}.js .art-draw [pathLength]{stroke-dasharray:none;stroke-dashoffset:0;animation:none!important}.case-card,.case-card:hover{transition:none;transform:none}}.v-wrap{max-width:1120px;margin:0 auto;padding:0 max(24px,4vw)}.v-section{padding:clamp(48px,6vw,80px) 0;border-top:1px solid rgba(55,81,95,.14)}.v-section:last-of-type{padding-bottom:clamp(56px,7vw,96px)}.v-eyebrow{font:600 12px/1.45 Inter,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#09814a;margin-bottom:20px}.v-head{padding:clamp(56px,7vw,88px) 0 clamp(40px,5vw,56px);border-bottom:1px solid rgba(55,81,95,.14)}.v-head h1{font:700 clamp(32px,4.2vw,48px)/1.12 "Archivo",sans-serif;letter-spacing:-.02em;color:#37515f;max-width:20ch;margin:0;text-wrap:balance}.v-head p{font:400 18.5px/1.65 Inter,sans-serif;color:#37515f;max-width:60ch;margin:24px 0 0}.v-practice{display:grid;grid-template-columns:minmax(200px,.7fr) 1.7fr;gap:48px;padding:clamp(40px,5vw,60px) 0;border-bottom:1px solid rgba(55,81,95,.14)}.v-practice h2{font:700 clamp(22px,2.4vw,27px)/1.2 "Archivo",sans-serif;letter-spacing:-.02em;color:#37515f;margin:0;position:sticky;top:96px;text-wrap:balance}.v-practice .k{font:600 12px/1.45 Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#8a959c;margin-bottom:14px}.v-practice p{font:400 17px/1.72 Inter,sans-serif;color:#5b6b75;margin:0 0 18px;max-width:64ch}.v-practice p.lead{color:#37515f}.v-practice p b{color:#37515f;font-weight:600}.v-practice a.more{display:inline-block;font:600 14px Inter,sans-serif;color:#0078a1;margin-top:4px}.v-ev{margin:6px 0 20px;padding:14px 18px;border-left:3px solid #09814A;background:#f3efe8;font:400 15px/1.6 Inter,sans-serif;color:#5b6b75;max-width:64ch}.v-ev span{display:block;font:600 11.5px/1.45 Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#09814a;margin-bottom:8px}.v-ev a{margin-left:4px;font-weight:600}.v-bridge{padding:clamp(44px,5vw,64px) 0;border-bottom:1px solid rgba(55,81,95,.14)}.v-bridge p{font:400 17px/1.72 Inter,sans-serif;color:#5b6b75;max-width:66ch;margin:0}.v-bridge a{display:inline-block;font:600 14px Inter,sans-serif;color:#0078a1;margin:14px 22px 0 0}.v-convo{background:#37515f;color:#e7e1d7;padding:clamp(48px,6vw,72px) 0}.v-convo h2{color:#fff;font:700 clamp(26px,3vw,34px)/1.2 "Archivo",sans-serif;letter-spacing:-.02em;margin:0}.v-convo p{font:400 16.5px/1.7 Inter,sans-serif;max-width:58ch;margin:16px 0 0}.v-convo .btn-yellow{margin-top:30px;text-transform:none;letter-spacing:0;font-size:15px}@media(max-width:860px){.v-practice{grid-template-columns:1fr;gap:18px}.v-practice h2{position:static}}.v-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:center;padding:clamp(40px,5vw,64px) 0 clamp(40px,5vw,56px)}.v-hero h1{font:700 clamp(34px,4vw,50px)/1.1 "Archivo",sans-serif;letter-spacing:-.02em;color:#37515f;max-width:22ch;margin:0;text-wrap:balance}.v-hero .st{font:400 18.5px/1.6 Inter,sans-serif;color:#37515f;max-width:58ch;margin:20px 0 0}.v-hero .btn-yellow{margin-top:26px;text-transform:none;letter-spacing:0;font-size:15px}.v-media{position:relative;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:#37515f;display:flex;align-items:center;justify-content:center;padding:10%}@media(max-width:860px){.v-hero{grid-template-columns:1fr}.v-media{aspect-ratio:auto;padding:10% 14%}}.v-doors{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}.v-doors h3{font:600 clamp(19px,1.8vw,22px)/1.25 "Archivo",sans-serif;color:#37515f;letter-spacing:-.01em;margin:0 0 12px}.v-doors p{font:400 16.5px/1.72 Inter,sans-serif;color:#5b6b75;margin:0}.v-doors a{display:inline-block;font:600 14px Inter,sans-serif;color:#0078a1;margin-top:14px}@media(max-width:860px){.v-doors{grid-template-columns:1fr;gap:30px}}.v-progs p{font:400 16.5px/1.72 Inter,sans-serif;color:#5b6b75;max-width:66ch;margin:0 0 14px}.v-progs p b{color:#37515f;font-weight:600}.v-progs a{display:inline-block;font:600 14px Inter,sans-serif;color:#0078a1}.v-cases{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.v-case .m{font:700 34px/1 Archivo,sans-serif;color:#37515f;letter-spacing:-.02em}.v-case .ml{font:400 13px Inter,sans-serif;color:#8a959c;margin:6px 0 12px}.v-case p{font:400 15.5px/1.6 Inter,sans-serif;color:#37515f;margin:0}.v-case a{display:inline-block;font:600 14px Inter,sans-serif;color:#0078a1;margin-top:12px}.v-all{display:inline-block;margin-top:30px;font:600 14px Inter,sans-serif;color:#0078a1}@media(max-width:860px){.v-cases{grid-template-columns:1fr}}.v-feat,.v-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px 32px;padding:clamp(44px,5vw,64px) 0}.v-grid{padding-bottom:clamp(64px,8vw,104px)}.v-feat{border-bottom:1px solid rgba(55,81,95,.14)}.v-c{border-top:2px solid rgba(55,81,95,.14);padding-top:18px;display:flex;flex-direction:column;color:inherit}.v-feat .v-c{border-top:3px solid #09814A}.v-c .k{font:600 11px/1.45 Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#8a959c;margin-bottom:12px}.v-c h3{font:700 19px/1.25 Archivo,sans-serif;letter-spacing:-.02em;color:#37515f;margin:0 0 8px;text-wrap:balance}.v-c .sg{font:400 13px Inter,sans-serif;color:#8a959c;margin:0 0 14px}.v-c p{font:400 15px/1.6 Inter,sans-serif;color:#37515f;margin:0;flex:1}.v-c .ind{margin-top:20px;padding-top:12px;border-top:1px solid rgba(55,81,95,.14);font:600 13.5px Inter,sans-serif;color:#37515f}.v-c .ind span{display:block;font:600 12.5px/1.4 Inter,sans-serif;color:#09814a;margin-bottom:5px}.v-c .rd{display:inline-block;font:600 13.5px Inter,sans-serif;color:#0078a1;margin-top:16px}@media(max-width:860px){.v-feat,.v-grid{grid-template-columns:1fr;gap:40px}}.v-team{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:8px}.v-tc{border-top:2px solid rgba(55,81,95,.14);padding-top:16px;display:flex;gap:16px}.v-tc .av{flex:0 0 48px;height:48px;border-radius:50%;background:#37515f;color:#fff;font:700 15px/48px Archivo,sans-serif;text-align:center}.v-tc.lead .av{background:#09814a}.v-tc h3{font:700 17px Archivo,sans-serif;color:#37515f;margin:0 0 10px}.v-tc .r{font:600 12px/1.45 Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#09814a;margin:-4px 0 10px}.v-tc p{font:400 14.5px/1.6 Inter,sans-serif;color:#5b6b75;margin:0}.v-tc .o{font:400 12.5px Inter,sans-serif;color:#8a959c;margin-top:8px}.v-team .wide{grid-column:1 / -1}@media(max-width:760px){.v-team{grid-template-columns:1fr}}.v-cpage{min-height:58vh;display:flex;align-items:center;padding:clamp(72px,10vw,140px) 0}.v-cpage h1{font:700 clamp(36px,5vw,58px)/1.08 "Archivo",sans-serif;letter-spacing:-.02em;color:#37515f;max-width:16ch;margin:0}.v-cpage p{font:400 19px/1.6 Inter,sans-serif;color:#37515f;max-width:48ch;margin:26px 0 0}.v-cpage .mail{display:inline-block;margin-top:40px;font:700 clamp(22px,3vw,32px)/1.2 "Archivo",sans-serif;color:#09814a;border-bottom:3px solid #09814A;padding-bottom:4px}.v-cpage .mail:hover{color:#37515f;border-color:#37515f}
