@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;1,9..40,300;1,9..40,400&family=Fraunces:opsz,wght@9..144,500;700&display=swap";:root{color-scheme:light;--ink: #2b2830;--muted: #4f5b55;--surface: rgb(255, 250, 244);--surface-strong: rgb(255, 250, 244);--accent: #1f7a6b;--accent-soft: #d8efe9;--accent-2: #d09a55;--border: #d7d2c8;--shadow: rgba(26, 34, 30, .12)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:DM Sans,Segoe UI,sans-serif;color:var(--ink);background:#fffaf4;line-height:1.6}p{font-weight:300}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.app{min-height:100vh;position:relative;overflow-x:clip}.app:before,.app:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;filter:blur(0px);z-index:0;opacity:.35}.app:before{top:-160px;right:-120px;background:radial-gradient(circle,var(--accent-soft),transparent 70%)}.app:after{bottom:0;left:-120px;background:radial-gradient(circle,rgba(208,154,85,.3),transparent 70%)}main,footer,header{position:relative;z-index:1}.navbar{position:sticky;top:0;background:#494949;border-bottom:1px solid #656565;z-index:10;transition:background-color .35s ease,border-color .35s ease,box-shadow .35s ease}.navbar--home{background:#494949cc;border-bottom-color:transparent}.navbar:not(.navbar--scrolled){background:#413528}.navbar--home.navbar--scrolled{background:#494949f5;border-bottom-color:#656565;box-shadow:0 .5rem 1.5rem #1c252029;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.nav-content{display:flex;align-items:center;justify-content:space-between;padding:.5rem 5vw;gap:1.5rem}.logo{display:inline-flex;align-items:center;gap:.55rem;font-family:Fraunces,serif;font-size:1.4rem;font-weight:700;color:#fffaf4}.logo-mark,.footer-logo{width:3rem;height:3rem;padding:0;flex-shrink:0;object-fit:contain}.logo-mark{width:2.5rem;height:2.5rem}nav ul{display:flex;list-style:none;gap:1.25rem;font-size:.95rem}.primary-nav{margin-left:auto}.navbar .logo,.navbar .primary-nav a{padding:.35rem .65rem;color:#fffaf4}.navbar .primary-nav a{display:inline-block}nav a{color:#fffaf4d1;transition:color .2s ease}nav a:hover,nav a:focus{color:#fffaf4}.nav-cta{padding:.55rem 1.1rem;border-radius:999px;border:1px solid var(--accent);color:var(--accent);font-weight:600;transition:all .2s ease}.nav-cta:hover,.nav-cta:focus{background:var(--accent);color:#fff}.section{padding:5rem 5vw;display:grid;gap:2.5rem;scroll-margin-top:5rem}.section-header,.references{max-width:720px}.referenceList{max-width:720px;color:#000;margin-left:.35rem;padding-left:1.25rem}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;color:var(--accent);font-weight:600;margin-bottom:.75rem}h1,h2,h3,h4{font-family:Fraunces,serif;font-weight:700;color:var(--ink)}h1{font-size:clamp(2.4rem,4vw,3.6rem);line-height:1.1}h2{font-size:clamp(1.9rem,3vw,2.6rem);margin-bottom:1rem}h3{font-size:1.3rem;margin-bottom:.75rem}h4{font-size:1.05rem;margin-bottom:.5rem}.lead{font-size:1.05rem;color:var(--muted)}.button{border-radius:999px;padding:.75rem 1.6rem;font-weight:600;border:1px solid transparent;transition:transform .2s ease,box-shadow .2s ease;display:inline-flex;align-items:center;justify-content:center}.button.primary{background:var(--accent);color:#fff;box-shadow:0 12px 24px #1f7a6b33}.button:hover,.button:focus{transform:translateY(-2px)}.image-hero{position:relative;min-height:calc(min(680px,80vh) - 1.25rem);overflow:clip;display:flex;align-items:flex-end;padding:8rem 5vw 3.75rem;background:var(--ink)}.image-hero-rotator,.image-hero-slide{position:absolute;inset:0}.image-hero-slide{opacity:0;animation:rotateHeroImage 12s infinite;animation-delay:calc(var(--slide-index) * 4s)}.image-hero-static{transform:translate(25%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 50%);mask-image:linear-gradient(to right,transparent 0%,black 50%);background:var(--hero-image);background-position:center;background-size:cover;opacity:1;animation:none}.image-hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:1.35rem;max-width:720px;color:#fff}.image-hero-content p,.image-hero-content h1{color:#fff}.image-hero-content h1{font-size:clamp(3.4rem,6vw,6.2rem)}.image-hero-content p:not(.eyebrow){max-width:660px;color:#fff;font-size:1.05rem}.image-hero-content .button.primary{background:#fff;color:var(--ink);box-shadow:0 18px 32px #00000029}.experience{background:#fffaf4;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:center}.home-experience-content{display:grid;gap:2.5rem}.home-experience-content .eyebrow{font-size:clamp(.825rem,1.125vw,1.05rem)}.home-experience-content h2{font-size:clamp(1.95rem,3.375vw,3rem);line-height:1.15}.home-experience-content .experience-grid p{font-size:clamp(1.0125rem,1.5vw,1.35rem);line-height:1.6}.home-side-image-frame{width:100%;aspect-ratio:1;overflow:hidden;box-shadow:0 18px 40px var(--shadow)}.home-side-image{width:100%;height:100%;object-fit:cover}.experience-grid{display:grid;gap:1.5rem;grid-template-columns:minmax(0,1fr)}.panel-card{padding:1.5rem;border-radius:18px;background:#fff;box-shadow:0 18px 40px var(--shadow);border:1px solid var(--border)}.panel-card.accent{background:var(--accent-soft)}.card-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.info-card{padding:1.5rem;border-radius:16px;background:#fff;border:1px solid var(--border);box-shadow:0 10px 24px var(--shadow)}.timeline{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.timeline-step{padding:1.4rem;border-radius:16px;background:#fff;border:1px solid var(--border)}.team-page{padding-bottom:6rem}.team-page>.section-header{width:100%;max-width:none;text-align:center}.team-group{display:grid;gap:1.25rem}.team-group-title{text-align:center}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,230px));justify-content:center;gap:1rem}.team-card{display:flex;min-height:250px;flex-direction:column;align-items:center;padding:1.75rem;border:1px solid var(--border);border-radius:18px;background:#fff;text-align:center}.team-card-photo{min-height:0;padding:0;border:0;border-radius:0;background:transparent}.team-photo{width:min(100%,230px);aspect-ratio:1;margin-bottom:.7rem;object-fit:cover}.team-avatar{display:grid;width:92px;height:92px;place-items:center;margin-bottom:1.25rem;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-family:Fraunces,serif;font-size:1.65rem;font-weight:700}.team-card h3{font-size:1.2rem}.team-role{margin-top:.35rem;color:var(--accent);font-weight:600}.team-detail{margin-top:auto;padding-top:.85rem;color:var(--muted)}.team-card-photo .team-detail{margin-top:.1rem;padding-top:0}.pillar-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.pillar{padding:1.2rem;border-radius:14px;background:#fff;border:1px solid var(--border)}.cta-banner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.8rem;border-radius:20px;background:linear-gradient(120deg,#1f7a6b1f,#d09a5526);border:1px solid var(--border)}.contact{--accent: #01899f;--muted: #4f5965;--border: #d0dee3;--shadow: rgba(1, 80, 100, .12);position:relative;isolation:isolate;overflow:hidden;padding-bottom:6rem;background-color:#edf7fa;background-image:linear-gradient(180deg,transparent 35%,var(--surface) 95%),radial-gradient(circle,rgba(1,137,159,.14) 1px,transparent 1px);background-size:100% 100%,24px 24px}.contact:before{content:"";position:absolute;z-index:-1;pointer-events:none;width:clamp(300px,48vw,680px);aspect-ratio:1;top:-220px;right:-180px;border:1px solid rgba(1,137,159,.16);border-radius:50%;box-shadow:0 0 0 48px #01899f0a,0 0 0 96px #01899f08}.contact .eyebrow{color:#00788c;display:inline-flex;align-items:center;gap:.75rem}.contact .eyebrow:before{content:"";width:2rem;height:2px;background:var(--accent)}.contact>.section-header,.contact-grid{width:100%;max-width:840px;margin-inline:auto}.contact-email{margin-top:1rem;color:var(--muted)}.contact-email a{color:#00788c;text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}.contact-grid{display:grid;gap:2rem;grid-template-columns:minmax(0,1fr)}.contact-form{display:grid;gap:1rem;padding:clamp(1.25rem,4vw,2.5rem);border-radius:18px;background:#fff;border:1px solid var(--border);border-top:4px solid var(--accent);box-shadow:0 18px 40px var(--shadow)}.contact-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.contact-form label{display:grid;gap:.4rem;font-weight:600;color:var(--muted)}.contact-form input,.contact-form textarea{min-width:0;background:#f8fbfc;border-radius:12px;border:1px solid var(--border);padding:.7rem .9rem;font-family:inherit}.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px;background:#fff}.contact-form textarea{min-height:140px;resize:vertical}.contact-form button{justify-self:start;background:#00788c}.form-note{font-size:.85rem;color:var(--muted)}.footer{background:#494949;border-top:1px solid #656565;padding:2.5rem 5vw;color:#fffaf4d1}.footer-content{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.footer-brand{display:flex;align-items:center;gap:.55rem;margin-bottom:.5rem}.footer h3{color:#fffaf4}.footer-legal{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid rgba(255,250,244,.18);font-size:.85rem}.logo-marquee{background:#fffaf4;border-bottom:1px solid var(--border);overflow:hidden;padding:2.5rem 0;position:relative;z-index:2}.logo-marquee-track{display:flex;align-items:center;gap:4rem;width:max-content;animation:scrollLogos 50s linear infinite}.logo-marquee-track img{height:48px;width:auto;object-fit:contain;opacity:.85;flex-shrink:0}.logo-marquee-track img.logo-makerere{height:72px}@keyframes scrollLogos{0%{transform:translate(0)}to{transform:translate(-50%)}}.news-stats{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.news-stat{padding:1.5rem;border-radius:16px;background:#fff;border:1px solid var(--border);text-align:center}.news-stat-value{font-family:Fraunces,serif;font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:700;color:var(--ink);line-height:1.15}.news-stat-label{margin-top:.4rem;color:var(--muted);font-size:.95rem}.news-columns{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.news-list{list-style:none;display:grid;gap:.4rem;margin-top:1rem;font-weight:300}.news-link{color:var(--accent);font-weight:600;text-decoration:underline;text-underline-offset:3px}@media(max-width:900px){.image-hero{min-height:calc(76vh - 1rem);padding:7rem 6vw 3rem}nav ul{display:none}.nav-content{justify-content:space-between}.experience{grid-template-columns:1fr}.cta-banner{flex-direction:column;align-items:flex-start}}@media(max-width:640px){.contact-form-row{grid-template-columns:minmax(0,1fr)}.nav-cta{display:none}.section{padding:4rem 6vw}}
