:root{--ink:#18332d;--green:#16382f;--green-2:#285d4b;--lime:#d8ef58;--orange:#f59b52;--cream:#f6f1e7;--paper:#fffdf7;--muted:#67756f;--line:rgba(24,51,45,.16);--shadow:0 30px 80px rgba(17,42,34,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;overflow-x:hidden}img{display:block;width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:fixed;left:18px;top:-80px;z-index:1200;background:var(--lime);color:var(--green);font-weight:700;padding:12px 16px;border-radius:0 0 10px 10px;transition:top .2s}.skip-link:focus{top:0}.scroll-progress{position:fixed;inset:0 0 auto;height:3px;z-index:1000;background:transparent}.scroll-progress span{display:block;width:0;height:100%;background:var(--lime)}
.site-header{height:82px;padding:0 clamp(22px,4vw,72px);display:flex;align-items:center;justify-content:space-between;position:fixed;inset:0 0 auto;z-index:900;color:#fff;border-bottom:1px solid rgba(255,255,255,.2);transition:background .3s,box-shadow .3s,height .3s,backdrop-filter .3s}.site-header.scrolled{height:72px;background:rgba(14,37,31,.92);box-shadow:0 10px 35px rgba(6,24,19,.18);backdrop-filter:blur(14px);border-color:rgba(255,255,255,.1)}.brand{display:flex;align-items:center;gap:14px;font-family:Manrope,sans-serif;font-size:18px;letter-spacing:-.02em}.brand img{width:44px;height:44px;object-fit:contain}.brand strong{color:var(--lime)}nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}nav a{opacity:.82;transition:.25s}nav a:hover,nav a:focus-visible,nav a[aria-current="true"]{opacity:1;color:var(--lime)}.nav-cta{border:1px solid rgba(255,255,255,.45);padding:11px 17px;border-radius:100px}.menu-toggle{display:none;border:0;background:none;color:#fff;padding:8px;cursor:pointer}.menu-toggle span{display:block;background:currentColor;width:24px;height:2px;margin:6px;transition:transform .25s,opacity .25s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--lime);outline-offset:4px}
.hero{min-height:100svh;position:relative;color:#fff;display:flex;align-items:flex-end;padding:150px clamp(22px,7vw,120px) 90px;overflow:hidden}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media img{height:100%;object-fit:cover;object-position:62% 42%;animation:heroZoom 14s ease-out both}.hero-shade{background:linear-gradient(90deg,rgba(8,31,25,.95) 0%,rgba(8,31,25,.69) 45%,rgba(8,31,25,.15) 75%),linear-gradient(0deg,rgba(8,25,21,.55),transparent 52%)}@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1)}}.hero-content{position:relative;max-width:800px;z-index:2}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:700}.eyebrow{display:flex;align-items:center;gap:12px;color:#eef5c0}.eyebrow span{width:30px;height:1px;background:var(--lime)}h1,h2,h3{font-family:Manrope,sans-serif;margin:0;letter-spacing:-.055em}h1{font-size:clamp(52px,7.2vw,108px);line-height:.91;max-width:900px}.hero-lead{font-size:clamp(17px,1.5vw,23px);line-height:1.55;max-width:650px;margin:28px 0 35px;color:rgba(255,255,255,.84)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:16px 23px;border-radius:100px;font-weight:700;font-size:14px;transition:.25s}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--lime);color:var(--green)}.button-ghost{border:1px solid rgba(255,255,255,.4);color:#fff}.hero-stat{position:absolute;right:clamp(22px,6vw,100px);bottom:100px;z-index:2;width:180px;height:180px;border-radius:50%;border:1px solid rgba(255,255,255,.35);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;backdrop-filter:blur(6px)}.hero-stat:before{content:"";position:absolute;inset:8px;border:1px dashed rgba(216,239,88,.6);border-radius:50%;animation:spin 24s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.hero-stat .stat-number{font:700 37px Manrope,sans-serif;color:var(--lime)}.hero-stat span:last-child{font-size:12px;width:100px}.scroll-cue{position:absolute;z-index:2;left:50%;bottom:28px;transform:translateX(-50%);font-size:11px;letter-spacing:.12em;text-transform:uppercase;display:flex;align-items:center;gap:9px;opacity:.7}.scroll-cue span{width:6px;height:6px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg)}
.section{padding:clamp(85px,10vw,150px) clamp(22px,7vw,120px)}.section-kicker{color:#75837d;margin-bottom:30px}.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:8vw;align-items:start}.intro h2,.response h2,.people h2,.stories h2{font-size:clamp(42px,5.4vw,78px);line-height:1.02}.intro-copy{font-size:18px;line-height:1.7;color:#52635d}.intro-copy p{margin:0 0 18px}.context-card{margin-top:80px;background:var(--green);color:#fff;display:grid;grid-template-columns:1fr 1.25fr;min-height:340px;border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.context-visual{position:relative;overflow:hidden;background:radial-gradient(circle at 56% 46%,rgba(216,239,88,.18),transparent 2%),radial-gradient(circle at 56% 46%,transparent 0 16%,rgba(255,255,255,.08) 16.2% 16.6%,transparent 16.8% 30%,rgba(255,255,255,.07) 30.2% 30.6%,transparent 30.8%),linear-gradient(140deg,#285f4e,#102d26)}.context-visual:after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.16) 1px,transparent 1px);background-size:18px 18px;mask-image:linear-gradient(110deg,#000,transparent)}.pulse{position:absolute;left:56%;top:46%;border:1px solid var(--lime);border-radius:50%;transform:translate(-50%,-50%);animation:pulse 3s infinite}.p1{width:30px;height:30px}.p2{width:75px;height:75px;animation-delay:1s}.p3{width:120px;height:120px;animation-delay:2s}@keyframes pulse{0%{opacity:.9;scale:.4}100%{opacity:0;scale:1.4}}.map-label{position:absolute;left:calc(56% + 25px);top:calc(46% + 18px);z-index:2}.map-label b{display:block;font:700 20px Manrope,sans-serif}.map-label small{opacity:.66}.context-facts{display:grid;grid-template-columns:repeat(3,1fr);align-items:center;padding:55px 40px}.context-facts article{padding:20px 25px;border-left:1px solid rgba(255,255,255,.14)}.context-facts strong{display:block;font:700 clamp(32px,3.2vw,53px) Manrope,sans-serif;color:var(--lime)}.context-facts span{font-size:13px;line-height:1.5;color:rgba(255,255,255,.7)}
.response{background:#fff}.response-heading{display:grid;grid-template-columns:.4fr 1.6fr;gap:30px;margin-bottom:75px}.response-heading h2{max-width:970px}.pathway{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.path-card{padding:35px 25px 42px;min-height:400px;border-right:1px solid var(--line);position:relative;transition:.35s;outline:none}.path-card:last-child{border-right:0}.path-card:hover,.path-card:focus,.path-card.active{background:var(--cream);transform:translateY(-10px);box-shadow:0 20px 50px rgba(20,45,37,.08)}.path-index{font-size:11px;color:#819089}.path-icon{font-size:38px;color:var(--orange);margin:45px 0 30px}.path-card h3{font-size:24px;letter-spacing:-.035em}.path-card p{color:var(--muted);line-height:1.65;font-size:14px}.path-tag{position:absolute;left:25px;bottom:28px;font-size:11px;text-transform:uppercase;letter-spacing:.11em;font-weight:700;color:var(--green-2)}
.impact{background:var(--orange);display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;min-height:760px}.impact-photo{min-height:720px;overflow:hidden}.impact-photo img{height:100%;object-fit:cover}.impact-content{padding:clamp(70px,8vw,125px) clamp(30px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.impact-content h2{font-size:clamp(45px,6vw,84px);line-height:.95}.impact-content>p{font-size:18px;line-height:1.65;max-width:580px}.metric-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:45px;border-top:1px solid rgba(24,51,45,.25)}.metric-grid article{padding:27px 15px 24px 0;border-bottom:1px solid rgba(24,51,45,.25)}.metric-grid article:nth-child(odd){border-right:1px solid rgba(24,51,45,.25)}.metric-grid article:nth-child(even){padding-left:28px}.metric-grid strong{display:block;font:800 clamp(30px,3.5vw,50px) Manrope,sans-serif}.metric-grid span{font-size:12px;text-transform:uppercase;letter-spacing:.09em}.impact-content .metrics-note{font-size:12px;line-height:1.5;margin:18px 0 0;max-width:520px;opacity:.72}
.people{background:var(--cream)}.people-heading{display:grid;grid-template-columns:.45fr 1.55fr;margin-bottom:75px}.people-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:7vw;align-items:center}.team-photo{border-radius:2px 90px 2px 2px;overflow:hidden;box-shadow:var(--shadow)}.team-photo img{aspect-ratio:4/3;object-fit:cover}.people-copy{font-size:18px;line-height:1.7;color:#53635d}.partner-note{margin-top:35px;padding-top:30px;border-top:1px solid var(--line);display:flex;align-items:center;gap:25px}.partner-note span{font:800 50px Manrope,sans-serif;color:var(--orange)}.partner-note p{margin:0;font-size:13px;line-height:1.5;max-width:220px}
.stories{background:#fff}.stories-head{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end;margin-bottom:60px}.stories-head>p{color:var(--muted);line-height:1.7;font-size:17px}.gallery{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:260px 260px;gap:16px}.gallery-card{position:relative;padding:0;border:0;overflow:hidden;cursor:zoom-in;background:var(--green)}.gallery-tall{grid-row:span 2}.gallery-card img{height:100%;object-fit:cover;transition:.6s}.gallery-card:hover img{transform:scale(1.05);opacity:.84}.gallery-card span{position:absolute;inset:auto auto 20px 22px;color:#fff;font-weight:700;font-size:13px;background:rgba(15,43,34,.72);backdrop-filter:blur(5px);padding:9px 13px;border-radius:100px}.watch-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.watch-grid a{padding:25px 18px;display:flex;align-items:center;gap:18px;border-right:1px solid var(--line);transition:.25s}.watch-grid a:last-child{border:0}.watch-grid a:hover{background:var(--cream)}.watch-grid>a>span{width:44px;height:44px;display:grid;place-items:center;background:var(--lime);border-radius:50%}.watch-grid small,.watch-grid b{display:block}.watch-grid small{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:9px}.watch-grid b{margin-top:4px;font-size:13px}
.closing{min-height:720px;background:var(--green);color:#fff;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden;padding:100px 22px}.closing-content{position:relative;z-index:2;max-width:900px}.closing .eyebrow{justify-content:center}.closing h2{font-size:clamp(52px,7vw,96px);line-height:.94}.closing p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:620px;margin:30px auto;color:rgba(255,255,255,.7)}.closing-orbit span{position:absolute;border:1px solid rgba(216,239,88,.13);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.closing-orbit span:nth-child(1){width:430px;height:430px}.closing-orbit span:nth-child(2){width:700px;height:700px}.closing-orbit span:nth-child(3){width:1000px;height:1000px}footer{background:#0e251f;color:rgba(255,255,255,.62);padding:38px clamp(22px,7vw,120px);display:flex;align-items:center;justify-content:space-between;font-size:12px;gap:20px}.footer-brand{display:flex;align-items:center;gap:12px;color:#fff;font-weight:700}.footer-brand img{width:40px;height:40px;object-fit:contain}
.lightbox{padding:0;border:0;background:transparent;max-width:min(92vw,1100px)}.lightbox::backdrop{background:rgba(5,22,17,.92);backdrop-filter:blur(8px)}.lightbox img{max-height:82vh;object-fit:contain}.lightbox button{position:fixed;right:26px;top:20px;border:0;background:transparent;color:white;font-size:42px;cursor:pointer}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.js .reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(14,37,31,.97);padding:28px;flex-direction:column;box-shadow:0 24px 45px rgba(6,24,19,.22)}.site-header nav.open{display:flex}.menu-toggle{display:block}.hero-stat{width:135px;height:135px;right:22px;bottom:85px}.intro-grid,.impact,.people-layout,.stories-head{grid-template-columns:1fr}.context-card{grid-template-columns:1fr}.context-visual{min-height:250px}.response-heading,.people-heading{grid-template-columns:1fr}.pathway{grid-template-columns:1fr 1fr}.path-card:nth-child(2){border-right:0}.path-card{border-bottom:1px solid var(--line)}.impact-photo{min-height:560px}.watch-grid{grid-template-columns:1fr}.watch-grid a{border-right:0;border-bottom:1px solid var(--line)}footer{flex-direction:column;text-align:center}}
@media(max-width:640px){.site-header{height:70px}.brand img{width:36px;height:36px}.brand span{font-size:15px}.hero{padding:120px 22px 100px;align-items:center}.hero-content{margin-top:120px}.hero-stat{display:none}.hero-actions{align-items:stretch;flex-direction:column}.section{padding:80px 22px}.intro h2,.response h2,.people h2,.stories h2{font-size:40px}.context-card{margin-top:45px}.context-facts{grid-template-columns:1fr;padding:20px 30px}.context-facts article{border-left:0;border-bottom:1px solid rgba(255,255,255,.14);padding:20px 0}.pathway{grid-template-columns:1fr}.path-card{border-right:0;min-height:350px}.impact{display:block}.impact-photo{min-height:430px}.impact-content{padding:75px 22px}.people-heading{margin-bottom:45px}.partner-note{align-items:flex-start}.gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.gallery-card{min-width:82vw;height:420px;scroll-snap-align:center}.watch-grid{margin-top:28px}.closing{min-height:650px}footer p:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}

/* Project directory, adapted to the Hambre Cero palette. */
footer.site-footer{display:block;padding:72px clamp(22px,7vw,120px) 30px;background:var(--green);color:var(--paper)}
.site-footer .footer-directory{max-width:1400px;margin:auto;display:grid;gap:18px}
.site-footer .footer-projects-row,.site-footer .footer-spaces-row{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;padding:28px;border:1px solid rgba(216,239,88,.2);border-radius:28px;background:rgba(255,255,255,.04)}
.site-footer h2{font-size:clamp(25px,2.5vw,36px);line-height:1.12;letter-spacing:-.045em;color:var(--lime);align-self:center}
.site-footer .footer-spaces-row h2{color:var(--orange)}
.site-footer .footer-project-cards,.site-footer .footer-space-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.site-footer .footer-project-cards a,.site-footer .footer-space-cards a{min-width:0;min-height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:20px 15px;border-radius:18px;background:var(--paper);color:var(--ink);text-align:center;transition:transform .2s,box-shadow .2s}
.site-footer .footer-project-cards a:hover,.site-footer .footer-space-cards a:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(0,0,0,.2)}
.site-footer strong{font-size:13px;line-height:1.45}
.site-footer .footer-project-cards img,.site-footer .footer-space-cards img{width:160px;max-width:100%;height:80px;object-fit:contain}
.site-footer .footer-project-mark{width:78px;height:52px;flex-shrink:0;display:block;background:white url('assets/footer-project-logos.png') no-repeat;background-size:1300px 648px;border-radius:10px}
.site-footer .logo-gambo{background-position:-457px -57px}.site-footer .logo-mcs{background-position:-744px -59px}.site-footer .logo-medbrain{background-position:-1031px -56px}.site-footer .logo-zmd{background-position:-482px -176px}.site-footer .logo-asf{background-position:-745px -178px}.site-footer .logo-sgl{background-position:-1032px -179px}
.site-footer .social-panel{max-width:1400px;margin:42px auto;padding:28px 0;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.site-footer .social-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.site-footer .social-links a{display:flex;align-items:center;gap:10px;min-height:48px;padding:12px 17px;border:1px solid rgba(216,239,88,.3);border-radius:100px;opacity:1;color:var(--paper);font-size:13px}
.site-footer .social-links a:hover{color:var(--green);background:var(--lime)}
.site-footer .social-links svg{width:21px;height:21px;fill:currentColor;flex-shrink:0}
.site-footer .footer-bottom{max-width:1400px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px;line-height:1.6;color:rgba(255,255,255,.7)}
.site-footer .footer-bottom p{display:block;margin:0}.site-footer .footer-brand{color:var(--paper)}
@media(max-width:1000px){.site-footer .footer-projects-row,.site-footer .footer-spaces-row{grid-template-columns:1fr;gap:22px}.site-footer h2{max-width:600px}.site-footer .footer-bottom{flex-wrap:wrap}}
@media(max-width:600px){footer.site-footer{padding-top:48px}.site-footer .footer-projects-row,.site-footer .footer-spaces-row{padding:20px 15px;border-radius:22px}.site-footer .footer-project-cards,.site-footer .footer-space-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.site-footer .footer-project-cards a,.site-footer .footer-space-cards a{padding:16px 10px}.site-footer .footer-project-cards img,.site-footer .footer-space-cards img{width:130px;height:72px}.site-footer .social-links{gap:10px}.site-footer .footer-bottom{align-items:flex-start;flex-direction:column;gap:14px}}

.site-footer .footer-blog-panel{max-width:1400px;margin:0 auto 36px;padding:28px;border:1px solid rgba(216,239,88,.2);border-radius:28px;background:rgba(255,255,255,.04)}.site-footer .footer-blog-panel>a{display:flex;align-items:center;gap:28px}.site-footer .footer-blog-panel img{width:200px;max-width:100%;height:100px;object-fit:contain;flex-shrink:0;background:var(--paper);border-radius:18px;padding:12px}.site-footer .footer-blog-panel h2{margin:0}.site-footer .footer-blog-panel p{margin:12px 0 0}.site-footer .footer-blog-panel a>span{margin-left:auto;font-size:2rem;color:var(--lime)}.site-footer .footer-blog-panel a:hover h2{text-decoration:underline;text-underline-offset:5px}@media(max-width:640px){.site-footer .footer-blog-panel>a{flex-direction:column;text-align:center;gap:16px}.site-footer .footer-blog-panel a>span{margin:auto}.site-footer .footer-blog-panel{padding:24px 18px}}
