@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap";:root{color:#17201f;font-synthesis:none;--ink:#17201f;--muted:#68716e;--paper:#f4f1eb;--cream:#e8e3da;--coral:#e65f45;--deep:#203b38;--line:#17201f29;background:#f4f1eb;font-family:Manrope,sans-serif}*{box-sizing:border-box}body{background:var(--paper);margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.site-header{z-index:5;width:100%;height:82px;color:var(--paper);justify-content:space-between;align-items:center;padding:0 5vw;display:flex;position:absolute}.brand{letter-spacing:.12em;align-items:center;gap:10px;font-size:14px;font-weight:800;display:flex}.brand-mark{letter-spacing:0;border:1px solid;place-items:center;width:27px;height:27px;font-family:Playfair Display,serif;font-size:19px;display:grid}.brand-suffix{opacity:.6;font-weight:500}.nav{align-items:center;gap:35px;display:flex}.nav-links{gap:25px;font-size:12px;font-weight:600;display:flex}.nav-links a{opacity:.7;transition:opacity .2s}.nav-links a:hover,.nav-links a.active{opacity:1}.mobile-toggle{color:inherit;letter-spacing:.1em;background:0 0;border:0;font-size:10px;display:none}.icon{font-family:DM Mono,monospace;font-size:11px}.button{background:var(--coral);color:#fff;border:1px solid var(--coral);letter-spacing:.03em;justify-content:center;align-items:center;gap:17px;padding:15px 20px;font-size:11px;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{background:#d64f37;transform:translateY(-2px)}.button-small{padding:12px 16px}.button-secondary{border-color:var(--ink);color:var(--ink);background:0 0}.button-secondary:hover{background:var(--ink);color:var(--paper)}.hero{background:var(--deep);min-height:740px;color:var(--paper);grid-template-columns:1fr 1fr;align-items:center;padding:170px 10vw 80px;display:grid;position:relative;overflow:hidden}.hero:before{content:"";border:1px solid #f4f1eb1f;border-radius:50%;width:55vw;height:55vw;position:absolute;top:-12vw;right:-17vw}.hero-copy{z-index:1;max-width:650px;position:relative}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font:500 10px DM Mono,monospace;display:block}.eyebrow-light{color:#b1c0bb}.hero h1,.page-hero h1{letter-spacing:-.06em;margin:23px 0 26px;font-size:clamp(43px,6vw,88px);font-weight:700;line-height:1.02}.hero h1 em,.page-hero h1 em,.statement-section h2 em,.cta-band h2 em,.dark-panel h2 em{letter-spacing:-.04em;font-family:Playfair Display,serif;font-weight:500}.hero-copy>p{color:#cad3d0;max-width:470px;font-size:16px;line-height:1.7}.hero-actions{align-items:center;gap:28px;margin-top:38px;display:flex}.text-link{border-bottom:1px solid;align-items:center;gap:15px;padding-bottom:7px;font-size:11px;font-weight:700;display:inline-flex}.text-link.light{color:var(--paper)}.hero-visual{place-items:center;height:480px;display:grid;position:relative}.visual-ring{border:1px solid #e65f45bf;border-radius:50%;position:absolute}.ring-one{width:340px;height:340px;transform:rotate(23deg)skew(-8deg)}.ring-two{border-color:#f4f1eb80;width:390px;height:250px;transform:rotate(-34deg)skew(7deg)}.visual-core{background:var(--coral);z-index:1;color:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:155px;height:155px;display:flex}.visual-core span{letter-spacing:.14em;font:10px DM Mono,monospace}.visual-core strong{letter-spacing:-.08em;font-size:58px;font-weight:500;line-height:1}.visual-label{letter-spacing:.08em;text-transform:uppercase;font:10px/1.6 DM Mono,monospace;position:absolute}.label-top{color:#d1ded9;top:16%;right:6%}.label-bottom{color:var(--coral);bottom:12%;left:2%}.coordinate{color:#839793;font:9px/1.5 DM Mono,monospace;position:absolute;bottom:19%;right:0}.scroll-cue{color:#9eafaa;text-transform:uppercase;letter-spacing:.1em;font:10px DM Mono,monospace;position:absolute;bottom:28px;left:10vw}.scroll-cue .icon{margin-left:12px}.section{padding:120px 10vw}.intro{grid-template-columns:22% 1fr;align-items:center;gap:7%;min-height:510px;display:grid}.intro-aside{flex-direction:column;justify-content:space-between;height:100%;display:flex}.vertical-label{writing-mode:vertical-rl;letter-spacing:.12em;color:#9aa39f;font:10px DM Mono,monospace}.section-title{max-width:650px}.section-title h2{letter-spacing:-.06em;margin:17px 0 20px;font-size:clamp(30px,4vw,55px);line-height:1.08}.section-title p{color:var(--muted);max-width:590px;font-size:15px;line-height:1.75}.intro-content .button{margin-top:24px}.solutions-preview{background:var(--cream)}.section-heading-row{justify-content:space-between;align-items:end;margin-bottom:60px;display:flex}.solution-columns{background:var(--line);grid-template-columns:1fr 1fr;gap:2px;display:grid}.solution-column{background:var(--paper);padding:40px}.business-column{background:#e2ddd3}.column-heading{align-items:center;gap:20px;display:flex}.column-icon{border:1px solid;border-radius:50%;place-items:center;width:40px;height:40px;font:21px Playfair Display,serif;display:grid}.column-heading h3{letter-spacing:-.04em;margin:5px 0;font-size:23px}.solution-column>p{color:var(--muted);max-width:390px;margin:28px 0;font-size:13px;line-height:1.6}.service-grid{background:var(--line);grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.solution-column .service-grid{grid-template-columns:1fr;gap:1px}.service-card{background:var(--paper);min-height:180px;padding:25px 22px;transition:transform .25s,background .25s;position:relative}.service-card:hover{background:#fff;transform:translateY(-5px)}.service-number{color:var(--coral);font:10px DM Mono,monospace}.service-card h3{letter-spacing:-.03em;margin:30px 0 10px;font-size:16px;line-height:1.2}.service-card p{color:var(--muted);max-width:270px;margin:0;font-size:12px;line-height:1.6}.card-arrow{color:var(--coral);position:absolute;top:25px;right:20px}.statement-section{background:var(--coral);color:#fff;grid-template-columns:15% 1fr 1fr;align-items:end;gap:7%;padding:105px 10vw;display:grid}.statement-section .eyebrow{color:#ffd0c7}.statement-section h2{letter-spacing:-.06em;margin:18px 0 0;font-size:clamp(35px,5vw,68px);line-height:1.02}.statement-section>p{margin:0 0 2px;font-size:15px;line-height:1.7}.statement-section .button{color:var(--ink);background:#fff;border-color:#fff;grid-column:2;justify-self:start;margin-top:30px}.ecosystem{grid-template-columns:1fr 1fr;align-items:center;gap:11%;display:grid}.ecosystem-flow{border-left:1px solid var(--line)}.ecosystem-flow>div{grid-template-columns:35px 1fr;gap:8px;padding:22px 30px;display:grid}.ecosystem-flow span{color:var(--coral);font:10px DM Mono,monospace}.ecosystem-flow strong{letter-spacing:-.03em;font-size:20px}.ecosystem-flow small{color:var(--muted);grid-column:2;font-size:11px;line-height:1.5}.ecosystem-flow i{color:var(--coral);padding-left:29px;font-style:normal}.ecosystem-flow .flow-active{background:var(--deep);color:var(--paper);margin-left:-1px}.flow-active small{color:#afc0bb}.process{background:var(--cream)}.process-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(5,1fr);margin-top:60px;display:grid}.process-step{border-right:1px solid var(--line);grid-template-columns:35px 1fr 20px;align-items:center;gap:7px;padding:20px 15px 22px 0;display:grid}.process-step:not(:first-child){padding-left:18px}.process-step:last-child{border:0}.process-step span{color:var(--coral);font:10px DM Mono,monospace}.process-step strong{font-size:14px}.process-step .icon{color:var(--coral)}.cta-band{background:var(--deep);color:var(--paper);justify-content:space-between;align-items:end;padding:100px 10vw;display:flex}.cta-band .eyebrow{color:#aabbb5}.cta-band h2{letter-spacing:-.06em;margin:18px 0 0;font-size:clamp(40px,5vw,70px);line-height:1}.cta-band .button{margin-bottom:5px}.footer{color:var(--paper);background:#152a28;grid-template-columns:1fr 1fr;gap:80px;padding:75px 10vw 25px;display:grid}.footer p{color:#91a29d;margin-top:25px;font-size:12px;line-height:1.7}.footer-links{grid-template-columns:1fr 1fr;gap:30px;display:grid}.footer-links>div{flex-direction:column;gap:15px;display:flex}.footer-links .eyebrow{color:#8ea09a;margin-bottom:7px}.footer-links a{color:#d4dedb;font-size:12px}.footer-bottom{color:#738781;border-top:1px solid #ffffff24;grid-column:1/-1;justify-content:space-between;padding-top:20px;font:10px DM Mono,monospace;display:flex}.page-hero{background:var(--deep);color:var(--paper);min-height:500px;padding:165px 10vw 110px}.page-hero .eyebrow{color:#aebfba}.page-hero h1{max-width:850px;margin-bottom:28px}.page-hero>p{color:#c7d3cf;max-width:570px;font-size:16px;line-height:1.75}.two-col{grid-template-columns:1fr 1fr;align-items:start;gap:10%;display:grid}.rich-copy{padding-top:46px}.rich-copy p{color:var(--muted);margin:0 0 25px;font-size:16px;line-height:1.8}.rich-copy .button{margin-top:20px}.dark-panel{background:var(--deep);color:var(--paper);grid-template-columns:1fr 1fr;align-items:end;gap:15%;margin:0 10vw 120px;padding:75px 7%;display:grid}.dark-panel h2{letter-spacing:-.06em;margin:18px 0 0;font-size:clamp(35px,5vw,65px);line-height:1}.dark-panel p{color:#b8c7c2;margin:0;line-height:1.75}.warm-section{background:var(--cream)}.feature-list{border-top:1px solid var(--line)}.feature-row{border-bottom:1px solid var(--line);grid-template-columns:8% 1.1fr 1fr 30px;align-items:center;gap:20px;padding:28px 0;display:grid}.feature-row>span{color:var(--coral);font:10px DM Mono,monospace}.feature-row h2{letter-spacing:-.04em;margin:0;font-size:24px}.feature-row p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.feature-row .icon{color:var(--coral)}.africa-feature{grid-template-columns:1fr 1fr;align-items:center;gap:12%;display:grid}.map-visual{background:var(--cream);place-items:center;height:430px;display:grid;position:relative;overflow:hidden}.map-outline{color:#0000;-webkit-text-stroke:1px var(--coral);opacity:.8;font:500 100px Playfair Display,serif;transform:scaleY(1.3)}.map-dot{background:var(--coral);border-radius:50%;width:15px;height:15px;position:absolute;top:51%;left:43%;box-shadow:0 0 0 10px #e65f4529}.map-dot span{color:var(--ink);font:10px DM Mono,monospace;position:absolute;top:-5px;left:25px}.map-caption{color:var(--muted);font:10px/1.5 DM Mono,monospace;position:absolute;bottom:25px;right:25px}.partnership-grid{grid-template-columns:1fr 1fr;align-items:start;gap:12%;display:grid}.principles{border-top:1px solid var(--line)}.principles>div{border-bottom:1px solid var(--line);grid-template-columns:45px 1fr 20px;align-items:center;padding:24px 0;display:grid}.principles span{color:var(--coral);font:10px DM Mono,monospace}.principles strong{font-size:18px}.principles .icon{color:var(--coral)}.form-section{padding-top:80px}.project-form{max-width:900px}.form-grid{grid-template-columns:1fr 1fr;gap:25px 20px;display:grid}.project-form label{text-transform:uppercase;letter-spacing:.08em;flex-direction:column;gap:10px;font:500 10px DM Mono,monospace;display:flex}.project-form input,.project-form textarea,.project-form select{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);resize:vertical;background:0 0;outline:0;padding:13px 0}.project-form input:focus,.project-form textarea:focus,.project-form select:focus{border-color:var(--coral)}.project-form input::placeholder,.project-form textarea::placeholder{color:#9ea7a2}.project-form .wide{grid-column:1/-1}.project-form .button{margin-top:42px}.optional{color:#a0a8a4;font-size:9px}.form-note{color:var(--muted);margin-top:20px;font-size:11px}.success-state{text-align:left;max-width:600px}.success-icon{background:var(--coral);color:#fff;border-radius:50%;place-items:center;width:45px;height:45px;margin-bottom:28px;display:grid}.success-state h2{letter-spacing:-.05em;margin:18px 0;font-size:42px;line-height:1.05}.success-state p{color:var(--muted);line-height:1.7}.request-id{margin:30px 0;font:11px DM Mono,monospace;color:var(--ink)!important}.admin-preview{min-height:400px}.metric-row{background:var(--line);grid-template-columns:repeat(3,1fr);gap:2px;margin-bottom:60px;display:grid}.metric-row>div{background:var(--cream);padding:25px}.metric-row span{color:var(--muted);font:10px DM Mono,monospace;display:block}.metric-row strong{letter-spacing:-.06em;margin-top:15px;font-size:45px;display:block}.empty-state{border-top:1px solid var(--line);padding-top:25px}.empty-state p{color:var(--muted);font-size:14px;line-height:1.7}@media (width<=850px){.site-header{padding:0 6vw}.mobile-toggle{z-index:2;display:block;position:relative}.nav{background:var(--deep);flex-direction:column;align-items:flex-start;gap:35px;width:100%;height:100vh;padding:105px 8vw 40px;display:none;position:absolute;top:0;left:0}.nav.open{display:flex}.nav-links{flex-direction:column;gap:24px;font-size:25px}.nav-links a{opacity:1}.hero{grid-template-columns:1fr;min-height:850px;padding:150px 8vw 70px}.hero h1{font-size:clamp(43px,12vw,72px)}.hero-visual{height:350px;margin-top:30px}.ring-one{width:250px;height:250px}.ring-two{width:280px;height:180px}.visual-core{width:115px;height:115px}.visual-core strong{font-size:42px}.label-top{right:0}.scroll-cue{left:8vw}.section{padding:80px 8vw}.intro{grid-template-columns:1fr;gap:35px;min-height:0}.intro-aside{flex-direction:row;height:80px}.vertical-label{writing-mode:initial}.section-heading-row{display:block}.section-heading-row .text-link{margin-top:25px}.solution-columns,.ecosystem,.two-col,.dark-panel,.africa-feature,.partnership-grid{grid-template-columns:1fr;gap:40px}.solution-column{padding:28px 20px}.service-grid{grid-template-columns:1fr 1fr}.statement-section{grid-template-columns:1fr;gap:20px;padding:80px 8vw}.statement-number{order:-1}.statement-section .button{grid-column:auto}.process-list{grid-template-columns:1fr}.process-step,.process-step:not(:first-child){border-right:0;border-bottom:1px solid var(--line);padding:18px 0}.cta-band{padding:75px 8vw;display:block}.cta-band .button{margin-top:35px}.footer{grid-template-columns:1fr;gap:50px;padding:60px 8vw 25px}.footer-bottom{grid-column:auto;line-height:2;display:block}.footer-bottom span{display:block}.page-hero{min-height:0;padding:145px 8vw 80px}.page-hero h1{font-size:clamp(43px,12vw,70px)}.rich-copy{padding-top:0}.dark-panel{margin:0 8vw 80px;padding:50px 30px}.feature-row{grid-template-columns:35px 1fr 20px;gap:12px}.feature-row h2{font-size:18px}.feature-row p{grid-column:2/-1}.form-grid{grid-template-columns:1fr}.project-form .wide{grid-column:auto}.form-section{padding-top:45px}.map-visual{height:310px}.metric-row{grid-template-columns:1fr}.metric-row>div{padding:18px}.metric-row strong{font-size:35px}}@media (width<=450px){.service-grid{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:flex-start;gap:22px}.hero{min-height:880px}.section-title h2{font-size:36px}.ecosystem-flow>div{padding:18px 16px}.ecosystem-flow i{padding-left:15px}}.admin-layout{min-height:100vh;color:var(--ink);background:#eef0ed;display:flex}.admin-sidebar{background:var(--deep);width:250px;color:var(--paper);z-index:10;flex-direction:column;padding:32px 25px;display:flex;position:fixed;inset:0 auto 0 0}.admin-brand{letter-spacing:.1em;align-items:center;gap:9px;font-size:13px;font-weight:800;display:flex}.admin-brand small{color:#9db0aa;margin-left:auto;font:9px DM Mono,monospace}.admin-sidebar nav{flex-direction:column;gap:9px;margin-top:75px;display:flex}.admin-sidebar nav a{color:#aabcb6;padding:13px 12px;font-size:12px}.admin-sidebar nav a:hover,.admin-sidebar nav a.active{color:#fff;background:#ffffff14}.admin-logout{color:#aabcb6;text-align:left;background:0 0;border:0;border-top:1px solid #ffffff29;justify-content:space-between;margin-top:auto;padding:20px 12px;font-size:12px;display:flex}.admin-main{width:calc(100% - 250px);max-width:1500px;margin-left:250px;padding:58px clamp(30px,6vw,90px)}.admin-header{justify-content:space-between;align-items:end;margin-bottom:48px;display:flex}.admin-header h1{letter-spacing:-.06em;margin:15px 0 0;font-size:clamp(34px,4vw,58px);line-height:1}.admin-metrics{background:#cdd2ce;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:60px;display:grid}.admin-metrics>div{background:#fff;min-height:125px;padding:20px 16px}.admin-metrics span{text-transform:uppercase;color:var(--muted);font:9px/1.3 DM Mono,monospace;display:block}.admin-metrics strong{letter-spacing:-.06em;margin-top:25px;font-size:37px;display:block}.admin-section-heading{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.admin-section-heading h2{letter-spacing:-.04em;font-size:22px}.request-table-wrap{background:#fff;border:1px solid #d9ddda;overflow-x:auto}.request-table{border-collapse:collapse;text-align:left;width:100%;min-width:850px;font-size:12px}.request-table th{text-transform:uppercase;color:var(--muted);letter-spacing:.06em;background:#f7f8f6;font:9px DM Mono,monospace}.request-table th,.request-table td{vertical-align:top;border-bottom:1px solid #e3e6e3;padding:17px 16px}.request-table td strong{display:block}.request-table td small{color:var(--muted);margin-top:5px;display:block}.request-table tbody tr:hover{background:#fafbf9}.status-badge{white-space:nowrap;background:#e5e9e6;padding:6px 8px;font:9px DM Mono,monospace;display:inline-block}.status-new{color:#b54431;background:#fbe3de}.status-in-progress{color:#426e5b;background:#e1eee7}.status-completed{color:#426e5b;background:#d6e9de}.status-archived{color:#6c7470}.priority{font:10px DM Mono,monospace}.priority-urgent,.priority-high{color:#c44d39}.priority-low{color:#718079}.filters{grid-template-columns:2fr 1fr 1fr 1.3fr;gap:10px;margin-bottom:22px;display:grid}.filters input,.filters select,.controls select,.controls textarea,.login-box input{color:var(--ink);background:#fff;border:1px solid #d2d8d3;outline:0;padding:12px}.filters input:focus,.filters select:focus,.controls select:focus,.controls textarea:focus,.login-box input:focus{border-color:var(--coral)}.admin-empty,.admin-message{color:var(--muted);padding:45px 0}.admin-error,.form-error{color:#9d382b;background:#fbe3de;margin:0 0 20px;padding:13px 16px;font-size:12px}.detail-grid{grid-template-columns:1.2fr .8fr;gap:20px;display:grid}.detail-panel,.settings-panel{background:#fff;border:1px solid #d9ddda;padding:30px}.detail-panel h2,.settings-panel h2{letter-spacing:-.05em;margin:20px 0 30px;font-size:30px}.detail-panel dl{margin:0}.detail-panel dl div{border-top:1px solid #e1e5e1;grid-template-columns:130px 1fr;gap:20px;padding:13px 0;display:grid}.detail-panel dt{text-transform:uppercase;color:var(--muted);font:9px DM Mono,monospace}.detail-panel dd{margin:0;font-size:13px}.detail-description{border-top:1px solid #e1e5e1;margin-top:20px;padding-top:22px}.detail-description p{color:var(--muted);font-size:13px;line-height:1.75}.controls{flex-direction:column;gap:20px;display:flex}.controls label,.login-box label{text-transform:uppercase;color:var(--muted);flex-direction:column;gap:8px;font:9px DM Mono,monospace;display:flex}.controls textarea{resize:vertical}.save-status{color:var(--coral);font:10px DM Mono,monospace}.settings-panel{max-width:600px}.settings-panel p{font-size:16px}.settings-panel .muted{color:var(--muted);font-size:12px;line-height:1.7}.login-page{background:var(--deep);place-items:center;min-height:100vh;padding:30px;display:grid}.login-box{background:var(--paper);width:min(100%,430px);padding:45px}.login-box>.eyebrow{margin-top:70px}.login-box h1{letter-spacing:-.06em;margin:15px 0 10px;font-size:48px}.login-box>p{color:var(--muted);margin-bottom:35px;font-size:13px}.login-box form{flex-direction:column;gap:20px;display:flex}.login-box input{margin-top:0}.login-box .button{margin-top:8px}.admin-mobile-toggle{display:none}@media (width<=900px){.admin-sidebar{transition:transform .2s;transform:translate(-100%)}.admin-sidebar.open{transform:translate(0)}.admin-main{width:100%;margin-left:0;padding:75px 6vw 40px}.admin-mobile-toggle{z-index:11;background:var(--deep);color:#fff;border:0;padding:10px;font:9px DM Mono,monospace;display:block;position:fixed;top:20px;right:20px}.admin-metrics{grid-template-columns:repeat(3,1fr)}.detail-grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr}.admin-header{flex-direction:column;align-items:start;gap:20px}.admin-header .button{align-self:start}}@media (width<=500px){.admin-metrics{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr}.detail-panel{padding:20px}.login-box{padding:30px}.login-box>.eyebrow{margin-top:50px}}
