/* Finethic Microfinance — site stylesheet
 * Extracted verbatim from the Claude Design mockups (class names + :root tokens preserved).
 * Inline base64 hero images replaced with /assets/img/hero-market.{webp,jpg}.
 */

:root{
  --green:#9fce89;
  --green-2:#71ad5e;
  --green-3:#dcefd2;
  --dark:#0c1113;
  --blue-dark:#101d22;
  --charcoal:#515255;
  --text:#202326;
  --muted:#676f72;
  --cream:#f7f7f1;
  --white:#fff;
  --line:rgba(32,35,38,.14);
  --shadow:0 24px 70px rgba(20,32,36,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--cream);
  color:var(--text);
  font-family:Inter, Arial, Helvetica, sans-serif;
}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}

.nav{
  position:fixed;
  top:0; left:0; right:0;
  z-index:100;
  height:86px;
  display:flex;
  align-items:center;
  padding:0 44px;
  gap:34px;
  color:white;
  background:rgba(7,11,12,.78);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(255,255,255,.06);
  transition:.25s ease;
}
.nav.scrolled{
  background:rgba(7,11,12,.94);
  box-shadow:0 10px 30px rgba(0,0,0,.16);
}
.logo img{width:206px}
.links{
  flex:1;
  display:flex;
  justify-content:center;
  gap:34px;
  font-size:13px;
  font-weight:700;
}
.links a{opacity:.92}
.links a:hover{color:var(--green)}
.resource-btn{
  background:linear-gradient(135deg,var(--green),var(--green-2));
  color:#173018;
  padding:15px 20px;
  border-radius:6px;
  font-weight:800;
  font-size:13px;
  box-shadow:0 8px 24px rgba(113,173,94,.22);
}
.menu-button{display:none}

.hero-v2{
  min-height:760px;
  position:relative;
  overflow:hidden;
  padding-top:86px;
  color:white;
  background:
    radial-gradient(circle at 73% 42%,rgba(159,206,137,.16),transparent 30%),
    radial-gradient(circle at 26% 72%,rgba(159,206,137,.10),transparent 26%),
    linear-gradient(135deg,#080c0d 0%,#10191c 54%,#0a1012 100%);
}
.hero-v2:before{
  content:"";
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.8),transparent 86%);
}
.hero-glow{position:absolute;border-radius:50%;filter:blur(22px);opacity:.5}
.glow-1{width:360px;height:360px;background:rgba(159,206,137,.16);right:12%;top:18%}
.glow-2{width:260px;height:260px;background:rgba(113,173,94,.12);left:42%;bottom:10%}

.hero-content-v2{
  position:relative;
  z-index:2;
  min-height:674px;
  max-width:1380px;
  margin:auto;
  padding:70px 64px 60px;
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:76px;
  align-items:center;
}
h1,h2,h3,p{margin-top:0}
h1,h2{
  font-family:Georgia, "Times New Roman", serif;
  font-weight:600;
  letter-spacing:-.035em;
}
.eyebrow{
  color:var(--green);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:12px;
  font-weight:900;
  margin-bottom:24px;
}
h1{
  font-size:clamp(48px,5vw,82px);
  line-height:1.05;
  max-width:690px;
  margin-bottom:26px;
}
h1 span{color:var(--green)}
.hero-copy p:not(.eyebrow){
  font-size:22px;
  line-height:1.45;
  font-weight:700;
  max-width:520px;
  margin-bottom:34px;
  color:rgba(255,255,255,.9);
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  min-height:52px;
  padding:0 24px;
  border:1px solid transparent;
  border-radius:6px;
  font-size:14px;
  font-weight:800;
  transition:.2s ease;
}
.btn:hover{transform:translateY(-2px)}
.primary{background:linear-gradient(135deg,var(--green),var(--green-2));color:#183217}
.outline-light{border-color:var(--green-2);color:var(--green-2);background:transparent}
.outline-dark{border-color:rgba(255,255,255,.65);color:white;background:rgba(255,255,255,.04)}

.hero-illustration{
  position:relative;
  height:560px;
  min-width:580px;
}
.hero-node{
  position:absolute;
  display:grid;
  place-items:center;
  text-align:center;
  border-radius:50%;
  background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.12),rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.30);
  box-shadow:inset 0 0 42px rgba(255,255,255,.05),0 20px 70px rgba(0,0,0,.25);
}
.hero-node small{
  text-transform:uppercase;
  letter-spacing:.11em;
  color:var(--green);
  font-size:12px;
  font-weight:900;
  margin-top:12px;
}
.hero-node strong{
  color:white;
  font-size:14px;
  max-width:160px;
  line-height:1.25;
}
.investment{width:168px;height:168px;left:0;top:150px}
.mfi-cluster{
  width:190px;height:190px;
  left:270px;top:128px;
  border-style:dashed;
  border-color:rgba(159,206,137,.55);
}
.bank-icon{
  width:76px;height:58px;position:relative;border:4px solid white;border-top:0;margin-bottom:2px;
}
.bank-icon:before{
  content:"";position:absolute;left:-10px;right:-10px;top:-28px;height:28px;
  border:4px solid white;border-bottom:0;clip-path:polygon(50% 0,100% 100%,0 100%);
}
.bank-icon:after{
  content:"";position:absolute;left:12px;right:12px;top:10px;height:38px;
  background:repeating-linear-gradient(90deg,white 0 5px,transparent 5px 17px);
}
.cluster-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:12px;
}
.cluster-grid span{
  width:24px;height:22px;border:2px solid var(--green);position:relative;
}
.cluster-grid span:before{
  content:"";position:absolute;left:4px;right:4px;top:-8px;height:8px;
  border:2px solid var(--green);border-bottom:0;clip-path:polygon(50% 0,100% 100%,0 100%);
}
.connection{
  position:absolute;height:2px;background:linear-gradient(90deg,var(--green),rgba(159,206,137,.15));
  transform-origin:left center;
}
.connection-1{left:168px;top:234px;width:104px}
.fan{left:460px;top:222px;width:210px;border-top:2px dotted rgba(159,206,137,.75);background:none}
.fan-1{transform:rotate(-38deg)}
.fan-2{transform:rotate(-20deg)}
.fan-3{transform:rotate(0deg)}
.fan-4{transform:rotate(20deg)}
.fan-5{transform:rotate(38deg)}
.sector-stack{
  position:absolute;left:620px;top:62px;display:grid;gap:18px;
}
.sector-stack div{
  width:60px;height:60px;border-radius:50%;
  border:1px solid rgba(159,206,137,.72);
  color:var(--green);
  display:grid;place-items:center;
  font-size:10px;font-weight:800;
  background:rgba(12,17,19,.5);
}
.impact-orbit{
  position:absolute;right:0;top:76px;width:250px;height:360px;
  border:1px dashed rgba(159,206,137,.55);
  border-radius:50%;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:38px;
}
.impact-orbit strong{
  display:block;text-align:center;
  color:var(--green);
  font-family:Georgia,serif;
  font-size:42px;line-height:1;
}
.impact-orbit span{
  display:block;text-align:center;
  max-width:160px;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:13px;font-weight:800;
}
.hero-caption{
  position:absolute;bottom:34px;left:280px;
  color:rgba(255,255,255,.8);
  font-size:15px;
}

.opportunity-panel{
  position:relative;
  z-index:5;
  max-width:1280px;
  margin:-42px auto 0;
  padding:34px 70px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(32,35,38,.10);
  border-radius:10px;
  box-shadow:0 22px 80px rgba(20,32,36,.14);
}
.panel-title{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:24px;
  margin-bottom:26px;
}
.panel-title span{height:1px;background:var(--line)}
.panel-title p{
  margin:0;
  color:var(--green-2);
  text-transform:uppercase;
  letter-spacing:.17em;
  font-size:13px;
  font-weight:900;
}
.panel-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:44px;
}
.panel-item{
  display:grid;
  grid-template-columns:74px 1fr;
  gap:24px;
  padding-right:34px;
  border-right:1px solid var(--line);
}
.panel-item:last-child{border-right:0}
.panel-icon{
  width:64px;height:64px;border-radius:50%;
  background:var(--green-3);
  position:relative;
}
.panel-icon:before{content:"";position:absolute;inset:16px;border:3px solid var(--green-2);border-radius:50%}
.panel-icon.growth:before{border-radius:2px;border-left:0;border-top:0;transform:rotate(-45deg)}
.panel-icon.people:before{border-radius:12px}
.panel-item h2{
  font-size:23px;
  letter-spacing:-.025em;
  margin-bottom:10px;
}
.panel-item p{font-size:14px;line-height:1.55;margin:0}

.section{padding:96px 64px}
.light{background:linear-gradient(90deg,#fff 0%,#fff 72%,#f2f6ee 100%)}
.section-label{
  max-width:1280px;margin:0 auto 22px;
  display:flex;align-items:center;gap:18px;
  color:var(--green-2);
  font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;
}
.section-label span{font-size:20px}
.section-label p{margin:0}
.microfinance-layout{
  max-width:1280px;
  margin:auto;
  display:grid;
  grid-template-columns:360px 1fr;
  gap:70px;
}
.section-grid{
  max-width:1280px;
  margin:auto;
  display:grid;
  grid-template-columns:285px 1fr;
  gap:64px;
}
.section-copy{min-width:0}
.section-copy h2{
  font-size:clamp(28px,2.6vw,42px);
  line-height:1.08;
  margin-bottom:24px;
  overflow-wrap:anywhere;
  hyphens:auto;
}
.section-copy p{
  color:var(--charcoal);
  line-height:1.65;
  margin-bottom:34px;
}
.large-copy h2{font-size:46px}
.reason-grid.horizontal{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:26px;
}
.reason-card{
  min-height:390px;
  padding:28px 24px;
  background:#f7f8f4;
  border:1px solid var(--line);
  position:relative;
}
.reason-card.compact{
  min-height:380px;
  background:rgba(255,255,255,.72);
  box-shadow:0 16px 44px rgba(20,32,36,.05);
}
.reason-card h3,.image-card h3,.now-grid h3{font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.15}
.reason-card p{font-size:14px;line-height:1.55;color:var(--charcoal)}
.reason-card small,.now-grid small{
  display:block;
  font-size:11px;
  line-height:1.35;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#7f878a;
}
.small-icon{
  width:62px;height:62px;border-radius:50%;
  margin:-64px auto 26px;
  background:radial-gradient(circle at 35% 25%,#1d3a26,#07200f);
  color:var(--green);display:grid;place-items:center;
  font-size:24px;
  border:1px solid rgba(159,206,137,.35);
}
.small-icon:before{font-weight:900}
.pie-icon:before{content:"◔"}
.coin-icon:before{content:"▤"}
.network-icon:before{content:"♙"}
.shield-icon:before{content:"◇"}

.chart{height:116px;margin:24px 0 18px;position:relative;border-bottom:1px solid #c6ccc6;border-left:1px solid #c6ccc6}
.scatter:before{
  content:"";position:absolute;inset:10px;
  background:
    radial-gradient(circle at 18% 70%,var(--charcoal) 0 3px,transparent 4px),
    radial-gradient(circle at 32% 55%,var(--charcoal) 0 3px,transparent 4px),
    radial-gradient(circle at 48% 62%,var(--charcoal) 0 3px,transparent 4px),
    radial-gradient(circle at 64% 38%,var(--charcoal) 0 3px,transparent 4px),
    radial-gradient(circle at 82% 28%,var(--charcoal) 0 3px,transparent 4px);
}
.scatter:after,.line:after{
  content:"";position:absolute;left:14px;right:10px;top:62px;height:3px;background:var(--green-2);transform:rotate(-13deg);
}
.bars:before{
  content:"";position:absolute;left:18px;right:18px;bottom:0;height:95px;
  background:linear-gradient(90deg,var(--green-2) 0 10%,transparent 10% 18%,#cadbbf 18% 28%,transparent 28% 36%,var(--green-2) 36% 46%,transparent 46% 55%,#cadbbf 55% 65%,transparent 65% 73%,var(--green-2) 73% 84%,transparent 84%);
  clip-path:polygon(0 100%,0 45%,10% 45%,10% 100%,18% 100%,18% 65%,28% 65%,28% 100%,36% 100%,36% 22%,46% 22%,46% 100%,55% 100%,55% 52%,65% 52%,65% 100%,73% 100%,73% 15%,84% 15%,84% 100%,100% 100%);
}
.line:before{
  content:"";position:absolute;inset:20px;
  background:linear-gradient(145deg,transparent 48%,#b5c9a9 49%,#b5c9a9 51%,transparent 52%);
}
.capital-flow{
  height:116px;margin:24px 0 18px;
  display:flex;align-items:center;justify-content:space-between;
}
.capital-flow span{
  width:38px;height:38px;border:1px solid #bcc5bd;border-radius:50%;
  display:grid;place-items:center;font-size:12px;font-weight:800;
}
.capital-flow i{width:18px;height:1px;background:#bcc5bd}

.finethic-section{background:linear-gradient(90deg,#f2f7ef 0,#fff 42%,#fff)}
.image-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.image-card{
  background:white;
  border:1px solid var(--line);
  box-shadow:0 14px 38px rgba(20,32,36,.06);
}
.graphic-card{overflow:hidden}
.card-graphic{
  height:162px;
  background:
    radial-gradient(circle at 80% 20%,rgba(159,206,137,.42),transparent 30%),
    linear-gradient(135deg,#102026,#eef5eb);
  position:relative;
}
.card-graphic:before,.card-graphic:after{content:"";position:absolute}
.tiers:before{
  left:24px;bottom:28px;width:34px;height:34px;border-radius:50%;background:var(--green);
  box-shadow:50px -22px 0 18px rgba(159,206,137,.55),126px -58px 0 34px rgba(81,82,85,.45);
}
.rate:before{
  left:28px;right:28px;bottom:42px;height:3px;background:var(--green);transform:rotate(-16deg);
  box-shadow:44px -22px 0 var(--green),92px -50px 0 var(--green);
}
.expertise:before{
  inset:36px;border:1px dashed rgba(159,206,137,.75);border-radius:50%;
}
.expertise:after{
  width:18px;height:18px;border-radius:50%;background:var(--green);left:48%;top:46%;
  box-shadow:44px -22px 0 rgba(159,206,137,.7),-48px 28px 0 rgba(159,206,137,.7),20px 54px 0 rgba(159,206,137,.7);
}
.impact:before{
  left:34px;top:34px;width:76px;height:76px;border-radius:50%;border:2px solid var(--green);
}
.impact:after{
  right:34px;bottom:34px;width:90px;height:46px;
  background:linear-gradient(90deg,var(--green) 0 18%,transparent 18% 28%,var(--green) 28% 48%,transparent 48% 58%,var(--green) 58% 78%,transparent 78%);
  clip-path:polygon(0 100%,0 58%,18% 58%,18% 100%,28% 100%,28% 30%,48% 30%,48% 100%,58% 100%,58% 0,78% 0,78% 100%,100% 100%);
}
.image-card h3,.image-card p{padding:0 18px}
.image-card h3{margin-top:20px}
.image-card p{font-size:13px;line-height:1.55;color:var(--charcoal);padding-bottom:24px}
.image-card:after{
  content:"";display:block;width:36px;height:2px;background:var(--green-2);margin:0 0 18px 18px;
}

.dark-section{
  background:linear-gradient(115deg,#14242b,#1e3037 65%,#0f1d23);
  color:white;
}
.dark-section .section-copy p{color:rgba(255,255,255,.78)}
.now-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:46px}
.now-grid article{border-left:1px solid rgba(255,255,255,.15);padding-left:34px}
.big-icon{
  width:64px;height:64px;border-radius:50%;background:var(--green-2);
  display:grid;place-items:center;color:white;font-size:30px;font-weight:900;margin-bottom:20px
}
.now-grid p{color:rgba(255,255,255,.78);font-size:14px;line-height:1.55}
.dark-chart{
  height:150px;margin:24px 0 14px;border-left:1px solid rgba(255,255,255,.35);border-bottom:1px solid rgba(255,255,255,.35);position:relative;
}
.green-line:before{
  content:"";position:absolute;left:10px;right:10px;top:76px;height:4px;background:var(--green);transform:rotate(-12deg);
  box-shadow:45px 10px 0 -1px var(--green),90px -24px 0 -1px var(--green),142px -52px 0 -1px var(--green);
}
.stacked:before{
  content:"";position:absolute;left:10px;right:10px;bottom:0;height:95px;
  background:linear-gradient(0deg,var(--green) 0 48%,rgba(255,255,255,.35) 48% 100%);
  clip-path:polygon(0 100%,0 78%,18% 70%,36% 62%,54% 48%,72% 28%,100% 15%,100% 100%);
}
.donut{
  width:126px;height:126px;border-radius:50%;
  margin:28px auto 22px;
  background:conic-gradient(var(--green) 0 62%,rgba(255,255,255,.25) 62% 82%,rgba(255,255,255,.45) 82% 100%);
  position:relative;
}
.donut:after{content:"";position:absolute;inset:34px;background:#1e3037;border-radius:50%}

.impact-section{
  background:white;
  padding:82px 64px;
  display:grid;
  grid-template-columns:250px 1fr;
  gap:70px;
  max-width:1280px;
  margin:auto;
}
.impact-copy span{color:var(--green-2);font-weight:900}
.impact-copy .impact-label{display:flex;align-items:center;gap:14px;margin:0 0 14px}
.impact-copy .impact-label span{font-size:20px;color:var(--green-2)}
.impact-copy .impact-label .eyebrow{margin:0;color:var(--green-2)}
.impact-copy{min-width:0}
.impact-copy h2{font-size:clamp(26px,2.4vw,38px);line-height:1.08;overflow-wrap:anywhere;hyphens:auto}
.impact-copy p{color:var(--charcoal);line-height:1.55}
.impact-copy a{color:var(--green-2);font-weight:800}
.impact-flow{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:center}
.impact-flow b{
  display:grid;place-items:center;width:82px;height:82px;border:1px solid #8c989c;border-radius:50%;margin:auto auto 18px;
  font-size:25px;color:var(--dark)
}
.impact-flow strong{display:block;font-family:Georgia,serif;font-size:46px;color:var(--green-2);line-height:1}
.impact-flow p{font-size:14px;line-height:1.4;color:var(--charcoal)}
.impact-flow i{font-style:normal;font-size:32px;color:#7e898d;margin-bottom:64px}

.insights{
  padding:90px 64px;
  background:#f7f8f4;
  max-width:1280px;
  margin:auto;
  display:grid;
  grid-template-columns:360px 1fr;
  gap:54px;
}
.insights h2{font-size:clamp(30px,2.7vw,44px);line-height:1.06;overflow-wrap:anywhere;hyphens:auto;min-width:0}
.kicker{color:var(--green-2);font-weight:900;text-transform:uppercase;letter-spacing:.1em;font-size:12px}
.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.insight-card{
  min-height:220px;background:white;border:1px solid var(--line);padding:26px;box-shadow:0 14px 38px rgba(20,32,36,.05);
}
.insight-card span{color:var(--green-2);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:900}
.insight-card h3{font-family:Georgia,serif;font-size:22px;line-height:1.18;margin-top:34px}

.cta{
  position:relative;
  min-height:250px;
  color:white;
  overflow:hidden;
  background:linear-gradient(115deg,#14242b,#1e3037 65%,#0f1d23);
}
.cta-pattern{
  position:absolute;inset:0;opacity:.34;
  background:
    radial-gradient(circle at 82% 24%,rgba(159,206,137,.45),transparent 18%),
    repeating-linear-gradient(135deg,transparent 0 18px,rgba(255,255,255,.04) 18px 19px);
}
.cta-content{
  position:relative;z-index:2;max-width:1280px;margin:auto;padding:66px 64px;
  display:flex;align-items:center;justify-content:space-between;gap:40px;
}
.cta h2{font-size:40px;line-height:1.1;max-width:650px;margin:0}
.cta-content>div{display:flex;gap:16px;flex-wrap:wrap}

footer{
  background:#252b2d;color:rgba(255,255,255,.72);
  padding:48px 64px;
  display:grid;grid-template-columns:1.4fr .7fr .7fr 1fr;gap:54px;
}
footer img{width:190px;margin-bottom:18px}
footer>div:first-child{font-size:13px;line-height:1.65}
footer p{font-size:13px;line-height:1.65}
footer h4{margin:0 0 18px;color:white}
footer a{display:block;font-size:13px;margin:10px 0}
form{display:flex;border:1px solid rgba(255,255,255,.25)}
input{flex:1;background:transparent;border:0;color:white;padding:14px;min-width:0}
button{background:var(--green);border:0;padding:0 16px;font-weight:900}

.reveal{animation:fadeUp .75s ease both}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

@media(max-width:1180px){
  .links{display:none}
  .menu-button{display:block;margin-left:auto;background:transparent;color:white;border:0;font-size:26px}
  .hero-content-v2,.section-grid,.microfinance-layout,.impact-section,.insights{grid-template-columns:1fr}
  .hero-illustration{min-width:0;width:100%;transform:scale(.86);transform-origin:left center;margin-top:-30px}
  .reason-grid.horizontal,.image-card-grid,.now-grid{grid-template-columns:repeat(2,1fr)}
  .panel-grid{grid-template-columns:1fr}
  .panel-item{border-right:0;border-bottom:1px solid var(--line);padding-bottom:24px}
  .panel-item:last-child{border-bottom:0}
}
@media(max-width:760px){
  .nav{height:74px;padding:0 18px}
  .logo img{width:165px}
  .resource-btn{display:none}
  .hero-content-v2{padding:58px 24px 0;gap:20px}
  h1{font-size:42px}
  .hero-illustration{height:520px;transform:scale(.58);width:780px;transform-origin:left top}
  .opportunity-panel{margin:-110px 18px 0;padding:28px 22px}
  .panel-title{grid-template-columns:1fr}
  .panel-title span{display:none}
  .section,.impact-section,.insights,.cta-content,footer{padding-left:24px;padding-right:24px}
  .reason-grid.horizontal,.image-card-grid,.now-grid,.insight-grid{grid-template-columns:1fr}
  .impact-flow{display:grid;grid-template-columns:1fr}
  .impact-flow i{margin:0}
  .cta-content{display:block}
  .cta-content .btn{margin:12px 0}
  footer{grid-template-columns:1fr}
}



/* --- V3 hero: real aerial image + capital-flow selling pitch --- */
.hero-v3{
  min-height:730px;
  position:relative;
  overflow:hidden;
  padding-top:86px;
  color:white;
  background:#0a0e10;
}
.hero-photo{
  position:absolute;
  inset:86px 0 0;
  background-image: image-set(
    url('/assets/img/hero-market.webp') type('image/webp'),
    url('/assets/img/hero-market.jpg') type('image/jpeg'));
  background-image: url('/assets/img/hero-market.jpg');
  background-size:cover;
  background-position:center;
  transform:scale(1.01);
}
.hero-shade{
  position:absolute;
  inset:86px 0 0;
  background:
    linear-gradient(90deg,rgba(5,8,9,.88) 0%,rgba(5,8,9,.66) 32%,rgba(5,8,9,.18) 63%,rgba(5,8,9,.42) 100%),
    linear-gradient(0deg,rgba(5,8,9,.24),rgba(5,8,9,.04) 45%,rgba(5,8,9,.24));
}
.hero-content-v3{
  position:relative;
  z-index:2;
  min-height:644px;
  max-width:1380px;
  margin:auto;
  padding:76px 64px 60px;
  display:grid;
  grid-template-columns:.88fr .52fr;
  gap:78px;
  align-items:center;
}
.hero-v3 h1{
  max-width:620px;
  font-size:clamp(54px,5.2vw,84px);
  line-height:1.04;
  text-shadow:0 8px 28px rgba(0,0,0,.42);
}
.hero-v3 h1 span{color:var(--green-2)}
.hero-v3 .hero-copy p:not(.eyebrow){
  max-width:560px;
  font-size:22px;
  line-height:1.45;
  font-weight:650;
  color:rgba(255,255,255,.94);
  text-shadow:0 6px 24px rgba(0,0,0,.45);
}
.hero-v3 .hero-copy:after{
  content:"";
  display:block;
  width:82px;
  height:3px;
  background:var(--green-2);
  margin:28px 0 0;
}
.capital-card{
  align-self:center;
  justify-self:end;
  width:min(390px,100%);
  padding:30px 30px 24px;
  border-radius:10px;
  background:rgba(4,7,8,.74);
  backdrop-filter:blur(10px);
  border:1px solid rgba(159,206,137,.22);
  box-shadow:0 28px 90px rgba(0,0,0,.42);
}
.capital-step{
  position:relative;
  display:grid;
  grid-template-columns:70px 1fr;
  gap:22px;
  padding:0 0 26px;
}
.capital-step:not(:last-child):after{
  content:"";
  position:absolute;
  left:34px;
  top:66px;
  width:1px;
  height:28px;
  border-left:2px dotted rgba(159,206,137,.72);
}
.capital-icon{
  width:66px;
  height:66px;
  border-radius:50%;
  border:1px solid rgba(159,206,137,.75);
  display:grid;
  place-items:center;
  position:relative;
  background:rgba(159,206,137,.06);
}
.capital-icon:before,.capital-icon:after{content:"";position:absolute}
.bank-mini:before{
  width:33px;height:26px;border:3px solid var(--green-2);border-top:0;bottom:17px;
}
.bank-mini:after{
  width:44px;height:22px;border:3px solid var(--green-2);border-bottom:0;
  top:15px;clip-path:polygon(50% 0,100% 100%,0 100%);
}
.people-mini:before{
  width:12px;height:12px;border:3px solid var(--green-2);border-radius:50%;top:17px;left:25px;
}
.people-mini:after{
  width:38px;height:20px;border:3px solid var(--green-2);border-top:0;border-radius:0 0 20px 20px;bottom:16px;left:13px;
}
.growth-mini:before{
  width:44px;height:36px;bottom:16px;left:12px;
  background:linear-gradient(90deg,var(--green-2) 0 16%,transparent 16% 28%,var(--green-2) 28% 46%,transparent 46% 58%,var(--green-2) 58% 76%,transparent 76%);
  clip-path:polygon(0 100%,0 62%,16% 62%,16% 100%,28% 100%,28% 36%,46% 36%,46% 100%,58% 100%,58% 0,76% 0,76% 100%,100% 100%);
}
.growth-mini:after{
  width:18px;height:18px;border-right:3px solid var(--green-2);border-top:3px solid var(--green-2);right:15px;top:15px;
}
.impact-mini:before{
  width:38px;height:38px;border:3px solid var(--green-2);border-radius:50%;inset:12px;
}
.impact-mini:after{
  width:20px;height:20px;border-left:3px solid var(--green-2);border-bottom:3px solid var(--green-2);left:23px;top:21px;transform:rotate(-25deg);
}
.capital-step h3{
  margin:3px 0 8px;
  font-family:Inter, Arial, sans-serif;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:17px;
  color:var(--green-2);
}
.capital-step p{
  margin:0;
  color:rgba(255,255,255,.92);
  font-size:15px;
  line-height:1.48;
}
.opportunity-panel{margin-top:-36px}
@media(max-width:1180px){
  .hero-content-v3{grid-template-columns:1fr;gap:36px}
  .capital-card{justify-self:start}
}
@media(max-width:760px){
  .hero-v3{min-height:820px}
  .hero-photo,.hero-shade{inset:74px 0 0}
  .hero-content-v3{padding:56px 24px 44px}
  .hero-v3 h1{font-size:43px}
  .hero-v3 .hero-copy p:not(.eyebrow){font-size:18px}
  .capital-card{padding:24px 22px}
  .capital-step{grid-template-columns:56px 1fr;gap:16px}
  .capital-icon{width:54px;height:54px}
  .capital-step:not(:last-child):after{left:27px;top:56px}
  .opportunity-panel{margin:-38px 18px 0}
}


/* --- V4 final hero composition --- */
.nav {
  height: 84px;
  background: rgba(6, 9, 10, .88);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.logo img { width: 205px; }
.links {
  gap: 42px;
  font-size: 14px;
}
.resource-btn {
  border-radius: 6px;
}

.hero-v4 {
  min-height: 820px;
  position: relative;
  overflow: hidden;
  padding-top: 84px;
  color: white;
  background: #070a0b;
}
.hero-photo-final {
  position: absolute;
  inset: 84px 0 0;
  background-image: image-set(
    url('/assets/img/hero-market.webp') type('image/webp'),
    url('/assets/img/hero-market.jpg') type('image/jpeg'));
  background-image: url('/assets/img/hero-market.jpg');
  background-size: cover;
  background-position: center 44%;
  filter: saturate(.95) contrast(1.02);
  transform: scale(1.015);
}
.hero-gradient-final {
  position: absolute;
  inset: 84px 0 0;
  background:
    linear-gradient(90deg, rgba(4,7,8,.94) 0%, rgba(4,7,8,.82) 26%, rgba(4,7,8,.44) 48%, rgba(4,7,8,.12) 72%, rgba(4,7,8,.20) 100%),
    linear-gradient(0deg, rgba(4,7,8,.38) 0%, rgba(4,7,8,.02) 45%, rgba(4,7,8,.26) 100%);
}
.hero-content-final {
  position: relative;
  z-index: 2;
  min-height: 736px;
  max-width: 1380px;
  margin: auto;
  padding: 112px 64px 72px;
  display: flex;
  align-items: center;
}
.final-copy {
  max-width: 650px;
}
.hero-v4 h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(58px, 6.1vw, 100px);
  line-height: .98;
  letter-spacing: -.052em;
  max-width: 650px;
  margin-bottom: 30px;
  text-shadow: 0 12px 34px rgba(0,0,0,.46);
}
.hero-v4 .hero-copy p:not(.eyebrow) {
  max-width: 620px;
  font-size: 21px;
  line-height: 1.48;
  font-weight: 560;
  color: rgba(255,255,255,.92);
  text-shadow: 0 8px 28px rgba(0,0,0,.55);
  margin-bottom: 34px;
}
.hero-v4 .eyebrow {
  color: var(--green);
  margin-bottom: 24px;
}
.hero-v4 .btn.primary {
  min-height: 54px;
  padding: 0 26px;
  border-radius: 6px;
  box-shadow: 0 18px 40px rgba(113,173,94,.24);
}
.credibility-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin-top: 30px;
  color: rgba(255,255,255,.78);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .01em;
}
.credibility-strip span {
  padding: 0 17px;
  border-right: 1px solid rgba(255,255,255,.28);
}
.credibility-strip span:first-child {
  padding-left: 0;
}
.credibility-strip span:last-child {
  border-right: 0;
}
.scroll-cue {
  position: absolute;
  z-index: 2;
  left: 64px;
  bottom: 38px;
  color: rgba(255,255,255,.52);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.scroll-cue:after {
  content: "";
  display: block;
  width: 1px;
  height: 42px;
  background: rgba(159,206,137,.7);
  margin: 12px auto 0;
}
.opportunity-panel {
  margin-top: -54px;
}
@media(max-width:1180px) {
  .links { display: none; }
  .hero-content-final { padding: 90px 42px 72px; }
  .final-copy { max-width: 720px; }
  .hero-gradient-final {
    background:
      linear-gradient(90deg, rgba(4,7,8,.94) 0%, rgba(4,7,8,.78) 42%, rgba(4,7,8,.26) 100%),
      linear-gradient(0deg, rgba(4,7,8,.44) 0%, rgba(4,7,8,.04) 55%, rgba(4,7,8,.30) 100%);
  }
}
@media(max-width:760px) {
  .nav { height: 74px; padding: 0 18px; }
  .logo img { width: 165px; }
  .hero-v4 { min-height: 780px; padding-top: 74px; }
  .hero-photo-final, .hero-gradient-final { inset: 74px 0 0; }
  .hero-photo-final { background-position: 58% center; }
  .hero-content-final { min-height: 706px; padding: 70px 24px 70px; }
  .hero-v4 h1 { font-size: 48px; }
  .hero-v4 .hero-copy p:not(.eyebrow) { font-size: 18px; }
  .credibility-strip { display: grid; gap: 10px; }
  .credibility-strip span { padding: 0; border-right: 0; }
  .scroll-cue { display: none; }
  .opportunity-panel { margin: -42px 18px 0; }
}


/* --- Opportunity section v2 --- */
.opportunity-v2{
  max-width:1280px;
  margin:-76px auto 0;
  position:relative;
  z-index:8;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.opportunity-header{
  display:grid;
  grid-template-columns:.65fr 1.35fr;
  gap:36px;
  align-items:end;
  padding:34px 42px 30px;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(32,35,38,.10);
  border-bottom:0;
  border-radius:12px 12px 0 0;
  box-shadow:0 24px 80px rgba(20,32,36,.13);
}
.opportunity-header .eyebrow{
  color:var(--green-2);
  margin:0;
}
.opportunity-header h2{
  margin:0;
  max-width:760px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(32px,3.4vw,52px);
  line-height:1.02;
  letter-spacing:-.04em;
}
.opportunity-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  background:white;
  border:1px solid rgba(32,35,38,.10);
  border-top:0;
  border-radius:0 0 12px 12px;
  box-shadow:0 24px 80px rgba(20,32,36,.13);
  overflow:hidden;
}
.opportunity-card{
  min-height:325px;
  padding:34px 34px 32px;
  border-right:1px solid rgba(32,35,38,.10);
  background:
    radial-gradient(circle at 86% 16%,rgba(159,206,137,.16),transparent 24%),
    #fff;
  transition:.22s ease;
}
.opportunity-card:last-child{border-right:0}
.opportunity-card:hover{
  transform:translateY(-3px);
  background:
    radial-gradient(circle at 86% 16%,rgba(159,206,137,.24),transparent 24%),
    #fbfdf8;
}
.opportunity-card.featured{
  background:
    radial-gradient(circle at 88% 10%,rgba(159,206,137,.28),transparent 28%),
    linear-gradient(135deg,#f8fbf5,#eef7e9);
}
.opportunity-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:34px;
}
.opportunity-number{
  color:var(--green-2);
  font-weight:900;
  font-size:13px;
  letter-spacing:.12em;
}
.opportunity-metric{
  padding:8px 11px;
  border-radius:999px;
  background:rgba(159,206,137,.20);
  color:#2b572b;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.opportunity-icon{
  width:78px;
  height:78px;
  border-radius:50%;
  background:#102026;
  margin-bottom:26px;
  position:relative;
  border:1px solid rgba(159,206,137,.38);
  box-shadow:inset 0 0 32px rgba(159,206,137,.08);
}
.opportunity-icon:before,.opportunity-icon:after{
  content:"";
  position:absolute;
}
.microfinance-icon:before{
  inset:20px;
  border:3px solid var(--green);
  border-radius:50%;
}
.microfinance-icon:after{
  left:14px;right:14px;top:38px;height:2px;
  background:var(--green);
  transform:rotate(-18deg);
  box-shadow:0 15px 0 rgba(159,206,137,.45);
}
.strategy-icon:before{
  width:38px;height:30px;
  left:20px;bottom:20px;
  border:3px solid var(--green);
  border-top:0;
}
.strategy-icon:after{
  width:48px;height:24px;
  left:14px;top:18px;
  border:3px solid var(--green);
  border-bottom:0;
  clip-path:polygon(50% 0,100% 100%,0 100%);
}
.timing-icon:before{
  width:44px;height:44px;
  left:17px;top:17px;
  border-right:3px solid var(--green);
  border-top:3px solid var(--green);
  transform:rotate(45deg);
}
.timing-icon:after{
  left:18px;right:22px;bottom:21px;height:3px;
  background:var(--green);
  box-shadow:12px -12px 0 var(--green),24px -24px 0 var(--green);
}
.opportunity-card h3{
  margin:0 0 14px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:28px;
  line-height:1.05;
  letter-spacing:-.035em;
}
.opportunity-card p{
  margin:0 0 24px;
  color:var(--charcoal);
  font-size:15px;
  line-height:1.58;
  max-width:330px;
}
.opportunity-card strong{
  color:var(--green-2);
  font-size:13px;
  font-weight:900;
}
@media(max-width:980px){
  .opportunity-v2{margin:-52px 22px 0}
  .opportunity-header{grid-template-columns:1fr;padding:28px}
  .opportunity-grid{grid-template-columns:1fr}
  .opportunity-card{border-right:0;border-bottom:1px solid rgba(32,35,38,.10)}
  .opportunity-card:last-child{border-bottom:0}
}


/* --- Opportunity section v3: editorial executive summary --- */
.opportunity-v3{
  max-width:1280px;
  margin:-76px auto 0;
  position:relative;
  z-index:8;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.opportunity-v3 .opportunity-header{
  display:grid;
  grid-template-columns:.65fr 1.35fr;
  gap:36px;
  align-items:end;
  padding:34px 42px 30px;
  background:rgba(255,255,255,.985);
  border:1px solid rgba(32,35,38,.10);
  border-bottom:0;
  border-radius:12px 12px 0 0;
  box-shadow:0 24px 80px rgba(20,32,36,.13);
}
.opportunity-v3 .opportunity-header .eyebrow{
  color:var(--green-2);
  margin:0;
}
.opportunity-v3 .opportunity-header h2{
  margin:0;
  max-width:760px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(32px,3.4vw,52px);
  line-height:1.02;
  letter-spacing:-.04em;
}
.editorial-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  background:white;
  border:1px solid rgba(32,35,38,.10);
  border-top:0;
  border-radius:0 0 12px 12px;
  box-shadow:0 24px 80px rgba(20,32,36,.13);
  overflow:hidden;
}
.editorial-card{
  min-height:410px;
  padding:34px 34px 32px;
  border-right:1px solid rgba(32,35,38,.10);
  background:#fff;
  transition:.22s ease;
  display:flex;
  flex-direction:column;
}
.editorial-card:last-child{border-right:0}
.editorial-card:hover{
  transform:translateY(-3px);
  background:#fbfdf8;
}
.editorial-card.highlighted{
  background:linear-gradient(135deg,#f9fcf6,#edf7e8);
}
.editorial-topline{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:34px;
}
.editorial-topline span{
  color:var(--green-2);
  font-weight:900;
  font-size:14px;
  letter-spacing:.14em;
}
.editorial-topline small{
  color:#2b572b;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(159,206,137,.19);
}
.editorial-card h3{
  margin:0 0 18px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(26px,2.2vw,34px);
  line-height:1.04;
  letter-spacing:-.04em;
}
.editorial-card p{
  margin:0;
  color:var(--charcoal);
  font-size:15px;
  line-height:1.58;
  max-width:345px;
}
.editorial-card strong{
  color:var(--green-2);
  font-size:13px;
  font-weight:900;
  margin-top:auto;
}
.mini-chart{
  height:118px;
  margin:30px 0 26px;
  position:relative;
  border-left:1px solid rgba(32,35,38,.18);
  border-bottom:1px solid rgba(32,35,38,.18);
  overflow:hidden;
}
.correlation-chart:before{
  content:"";
  position:absolute;
  inset:14px 10px 14px 16px;
  background:
    radial-gradient(circle at 12% 68%,var(--green-2) 0 4px,transparent 5px),
    radial-gradient(circle at 24% 55%,#9ba4a6 0 4px,transparent 5px),
    radial-gradient(circle at 38% 72%,#9ba4a6 0 4px,transparent 5px),
    radial-gradient(circle at 52% 46%,var(--green-2) 0 4px,transparent 5px),
    radial-gradient(circle at 66% 62%,#9ba4a6 0 4px,transparent 5px),
    radial-gradient(circle at 80% 34%,var(--green-2) 0 4px,transparent 5px);
}
.correlation-chart:after{
  content:"Low correlation";
  position:absolute;
  left:18px;
  bottom:10px;
  font-size:11px;
  font-weight:900;
  color:rgba(32,35,38,.48);
  text-transform:uppercase;
  letter-spacing:.08em;
}
.tier-chart{
  border-left:0;
  border-bottom:0;
  display:flex;
  align-items:end;
  gap:18px;
  padding:10px 0 0;
}
.tier-chart:before{
  content:"Tier 1";
  height:58px;
  width:28%;
  background:rgba(81,82,85,.25);
  color:rgba(32,35,38,.55);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding-bottom:8px;
  font-size:11px;
  font-weight:900;
}
.tier-chart:after{
  content:"Tier 2 & 3";
  height:96px;
  width:42%;
  background:var(--green-2);
  color:white;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding-bottom:8px;
  font-size:11px;
  font-weight:900;
}
.rate-chart:before{
  content:"";
  position:absolute;
  left:16px;
  right:14px;
  bottom:32px;
  height:3px;
  background:var(--green-2);
  transform:rotate(-14deg);
  box-shadow:48px -22px 0 var(--green-2),94px -46px 0 var(--green-2),140px -68px 0 var(--green-2);
}
.rate-chart:after{
  content:"Floating-rate exposure";
  position:absolute;
  left:18px;
  bottom:10px;
  font-size:11px;
  font-weight:900;
  color:rgba(32,35,38,.48);
  text-transform:uppercase;
  letter-spacing:.08em;
}
@media(max-width:980px){
  .opportunity-v3{margin:-52px 22px 0}
  .opportunity-v3 .opportunity-header{grid-template-columns:1fr;padding:28px}
  .editorial-grid{grid-template-columns:1fr}
  .editorial-card{border-right:0;border-bottom:1px solid rgba(32,35,38,.10)}
  .editorial-card:last-child{border-bottom:0}
}


/* --- Why Microfinance v2 --- */
.microfinance-section{
  padding:112px 64px 118px;
  background:
    radial-gradient(circle at 88% 18%,rgba(159,206,137,.16),transparent 24%),
    linear-gradient(90deg,#ffffff 0%,#ffffff 58%,#f4f8f0 100%);
}
.microfinance-inner{
  max-width:1280px;
  margin:auto;
}
.microfinance-layout-v2{
  display:grid;
  grid-template-columns:390px 1fr;
  gap:74px;
  align-items:start;
}
.microfinance-statement{
  position:sticky;
  top:118px;
  min-width:0;
}
.microfinance-statement .eyebrow{
  color:var(--green-2);
}
.microfinance-statement h2{
  margin:0 0 26px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(30px,2.3vw,40px);
  line-height:1.05;
  letter-spacing:-.04em;
  overflow-wrap:anywhere;
  hyphens:auto;
}
.microfinance-statement p:not(.eyebrow){
  color:var(--charcoal);
  font-size:18px;
  line-height:1.62;
  margin-bottom:34px;
}
.evidence-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
}
.evidence-card{
  min-height:340px;
  padding:30px;
  background:white;
  border:1px solid rgba(32,35,38,.11);
  box-shadow:0 18px 50px rgba(20,32,36,.06);
  border-radius:8px;
  display:flex;
  flex-direction:column;
}
.evidence-card.wide{
  grid-column:span 2;
  min-height:280px;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:38px;
  align-items:center;
}
.evidence-card.bottom{
  background:linear-gradient(135deg,#f8fbf5,#eef7e9);
}
.evidence-kicker{
  display:block;
  margin-bottom:18px;
  color:var(--green-2);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:11px;
  font-weight:900;
}
.evidence-card h3{
  margin:0 0 14px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(28px,2.8vw,42px);
  line-height:1.02;
  letter-spacing:-.045em;
}
.evidence-card p{
  margin:0;
  color:var(--charcoal);
  font-size:15px;
  line-height:1.58;
}
.evidence-visual{
  margin-top:auto;
  min-height:128px;
  position:relative;
}
.correlation-matrix{
  display:grid;
  grid-template-columns:1.2fr repeat(3,1fr);
  grid-template-rows:34px repeat(3,48px);
  gap:8px;
  min-height:190px;
  margin-top:0;
  align-items:center;
}
.correlation-matrix span{
  color:rgba(32,35,38,.55);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em;
  text-align:center;
}
.correlation-matrix span:first-child{grid-column:2}
.correlation-matrix span:nth-child(2){grid-column:3}
.correlation-matrix span:nth-child(3){grid-column:4}
.correlation-matrix i{
  border-radius:6px;
  height:48px;
  background:rgba(81,82,85,.22);
}
.correlation-matrix i.low{
  background:rgba(159,206,137,.65);
}
.stable-line{
  border-left:1px solid rgba(32,35,38,.18);
  border-bottom:1px solid rgba(32,35,38,.18);
  margin-top:32px;
}
.stable-line:before{
  content:"";
  position:absolute;
  left:14px;
  right:12px;
  top:58px;
  height:4px;
  background:var(--green-2);
  border-radius:999px;
  box-shadow:
    34px -8px 0 -1px var(--green-2),
    74px 2px 0 -1px var(--green-2),
    116px -6px 0 -1px var(--green-2),
    160px 3px 0 -1px var(--green-2);
}
.stable-line:after{
  content:"Indicative stable return pattern";
  position:absolute;
  left:14px;
  bottom:8px;
  color:rgba(32,35,38,.45);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.flow-diagram{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:36px;
}
.flow-diagram b{
  width:62px;
  height:62px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#102026;
  color:var(--green);
  font-size:12px;
  font-weight:900;
}
.flow-diagram em{
  flex:1;
  height:2px;
  background:linear-gradient(90deg,var(--green-2),rgba(113,173,94,.18));
  position:relative;
}
.flow-diagram em:after{
  content:"";
  position:absolute;
  right:0;
  top:-4px;
  width:10px;
  height:10px;
  border-right:2px solid var(--green-2);
  border-top:2px solid var(--green-2);
  transform:rotate(45deg);
}
.dot-field{
  display:grid;
  grid-template-columns:repeat(8,1fr);
  gap:12px;
  min-height:160px;
  align-content:center;
  margin-top:0;
}
.dot-field span{
  width:18px;
  height:18px;
  border-radius:50%;
  background:rgba(81,82,85,.22);
}
.dot-field span:nth-child(3n),
.dot-field span:nth-child(7n){
  background:var(--green-2);
}
@media(max-width:1100px){
  .microfinance-layout-v2{
    grid-template-columns:1fr;
  }
  .microfinance-statement{
    position:static;
  }
}
@media(max-width:760px){
  .microfinance-section{
    padding:80px 24px;
  }
  .evidence-grid{
    grid-template-columns:1fr;
  }
  .evidence-card.wide{
    grid-column:span 1;
    grid-template-columns:1fr;
  }
  .correlation-matrix{
    grid-template-columns:repeat(3,1fr);
  }
  .correlation-matrix span{
    font-size:10px;
  }
}


/* --- Microfinance section v3: three evidence boxes --- */
.mf-v3{
  padding:112px 64px 118px;
  background:
    radial-gradient(circle at 84% 10%,rgba(159,206,137,.14),transparent 22%),
    linear-gradient(90deg,#ffffff 0%,#ffffff 62%,#f4f8f0 100%);
}
.microfinance-layout-v3{
  display:grid;
  grid-template-columns:355px 1fr;
  gap:72px;
  align-items:start;
}
.mf-v3 .microfinance-statement{
  position:sticky;
  top:118px;
}
.mf-v3 .microfinance-statement h2{
  margin:0 0 26px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(40px,4vw,62px);
  line-height:.98;
  letter-spacing:-.052em;
}
.mf-v3 .microfinance-statement p:not(.eyebrow){
  color:var(--charcoal);
  font-size:18px;
  line-height:1.62;
  margin-bottom:20px;
}
.data-note{
  padding-top:18px;
  border-top:1px solid rgba(32,35,38,.12);
  font-size:12px!important;
  line-height:1.45!important;
  color:rgba(32,35,38,.48)!important;
}
.mf-card-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.mf-data-card{
  min-height:560px;
  padding:30px;
  background:white;
  border:1px solid rgba(32,35,38,.11);
  box-shadow:0 18px 50px rgba(20,32,36,.06);
  border-radius:8px;
  display:flex;
  flex-direction:column;
}
.mf-data-card:nth-child(2){
  background:linear-gradient(135deg,#f9fcf6,#edf7e8);
}
.mf-card-heading{
  margin-bottom:20px;
}
.mf-card-heading span{
  display:block;
  color:var(--green-2);
  font-weight:900;
  font-size:13px;
  letter-spacing:.14em;
  margin-bottom:18px;
}
.mf-card-heading h3{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(28px,2.4vw,38px);
  line-height:1.02;
  letter-spacing:-.045em;
}
.mf-data-card p{
  margin:0 0 24px;
  color:var(--charcoal);
  font-size:15px;
  line-height:1.58;
}
.kpi-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:6px 0 28px;
}
.kpi-row div{
  padding:14px 10px;
  background:#f6f8f2;
  border:1px solid rgba(32,35,38,.08);
}
.kpi-row strong{
  display:block;
  color:var(--green-2);
  font-family:Georgia,"Times New Roman",serif;
  font-size:28px;
  line-height:1;
}
.kpi-row small{
  display:block;
  margin-top:6px;
  color:rgba(32,35,38,.58);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.performance-svg{
  width:100%;
  height:160px;
  margin-top:auto;
}
.performance-svg line{
  stroke:rgba(32,35,38,.18);
  stroke-width:1;
}
.performance-svg polyline{
  fill:none;
  stroke:var(--green-2);
  stroke-width:4;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.performance-svg text{
  font-size:10px;
  fill:rgba(32,35,38,.46);
  font-weight:800;
  text-transform:uppercase;
}
.chart-caption{
  display:block;
  color:rgba(32,35,38,.45);
  font-size:11px;
  line-height:1.35;
}
.correlation-table{
  display:grid;
  grid-template-columns:1fr repeat(4,.85fr);
  gap:6px;
  margin:auto 0 22px;
}
.correlation-table b,
.correlation-table em{
  min-height:34px;
  display:grid;
  place-items:center;
  font-style:normal;
  font-size:12px;
  font-weight:900;
}
.correlation-table b{
  color:rgba(32,35,38,.62);
  text-transform:uppercase;
  letter-spacing:.07em;
}
.correlation-table em{
  background:rgba(81,82,85,.11);
  color:rgba(32,35,38,.44);
  border-radius:4px;
}
.correlation-table em:nth-child(7),
.correlation-table em:nth-child(13),
.correlation-table em:nth-child(19),
.correlation-table em:nth-child(25){
  background:var(--green-2);
  color:white;
}
.benchmark-note{
  padding:18px;
  background:#102026;
  color:white;
  border-radius:7px;
}
.benchmark-note strong{
  display:block;
  color:var(--green);
  margin-bottom:8px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
}
.benchmark-note span{
  display:block;
  color:rgba(255,255,255,.78);
  font-size:13px;
  line-height:1.45;
}
.impact-chain{
  margin:auto 0 24px;
  display:grid;
  gap:12px;
}
.impact-chain div{
  padding:16px 18px;
  border-left:4px solid var(--green-2);
  background:#f6f8f2;
}
.impact-chain strong{
  display:block;
  font-family:Georgia,"Times New Roman",serif;
  font-size:24px;
  line-height:1;
  margin-bottom:5px;
}
.impact-chain span{
  color:rgba(32,35,38,.58);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.impact-chain i{
  width:2px;
  height:18px;
  background:var(--green-2);
  margin-left:22px;
}
.impact-visual-note{
  padding:18px;
  border:1px dashed rgba(113,173,94,.55);
  background:rgba(159,206,137,.10);
}
.impact-visual-note span{
  display:block;
  font-size:12px;
  color:rgba(32,35,38,.56);
  margin-bottom:8px;
}
.impact-visual-note b{
  color:#244f26;
  font-size:13px;
  line-height:1.4;
}
@media(max-width:1160px){
  .microfinance-layout-v3{grid-template-columns:1fr}
  .mf-v3 .microfinance-statement{position:static}
  .mf-card-grid{grid-template-columns:1fr}
  .mf-data-card{min-height:auto}
}
@media(max-width:760px){
  .mf-v3{padding:80px 24px}
  .kpi-row{grid-template-columns:1fr}
}


/* --- Requested patch: executive summary figures + investment case placeholders --- */
.scroll-cue{display:none!important;}

.opportunity-v4 .editorial-card{
  min-height:390px;
}
.opportunity-v4 .summary-figure{
  margin:34px 0 22px;
  margin-top:auto;            /* bottom-align so every figure lands on the same line */
  height:150px;
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  padding-top:22px;
  border-top:1px solid rgba(32,35,38,.12);
  border-bottom:1px solid rgba(32,35,38,.12);
}
.opportunity-v4 .summary-figure strong{
  margin:0;
  color:var(--green-2);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(54px,5vw,78px);
  line-height:.9;
  letter-spacing:-.055em;
}
.opportunity-v4 .summary-figure span{
  display:block;
  margin-top:14px;
  color:rgba(32,35,38,.58);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  line-height:1.35;
}
.opportunity-v4 .word-figure strong{
  font-size:clamp(32px,2.8vw,44px);
  letter-spacing:-.045em;
}
.opportunity-v4 .summary-link{
  margin-top:22px;
  color:var(--green-2);
  font-size:13px;
  font-weight:900;
}

/* Investment case v4 */
.mf-v4{
  padding:112px 64px 118px;
  background:
    radial-gradient(circle at 84% 10%,rgba(159,206,137,.14),transparent 22%),
    linear-gradient(90deg,#ffffff 0%,#ffffff 62%,#f4f8f0 100%);
}
.microfinance-layout-v4{
  display:grid;
  grid-template-columns:355px 1fr;
  gap:72px;
  align-items:start;
}
.mf-v4 .microfinance-statement{
  position:sticky;
  top:118px;
  min-width:0;
}
.mf-v4 .microfinance-statement h2{
  margin:0 0 26px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(30px,2.3vw,40px);
  line-height:1.05;
  letter-spacing:-.04em;
  overflow-wrap:anywhere;
  hyphens:auto;
}
.mf-v4 .microfinance-statement p:not(.eyebrow){
  color:var(--charcoal);
  font-size:18px;
  line-height:1.62;
}
.investment-case-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:22px;
}
.investment-case-box{
  min-height:430px;
  padding:30px;
  background:white;
  border:1px solid rgba(32,35,38,.11);
  box-shadow:0 18px 50px rgba(20,32,36,.06);
  border-radius:8px;
  display:flex;
  flex-direction:column;
}
.investment-case-box:nth-child(2),
.investment-case-box:nth-child(3){
  background:linear-gradient(135deg,#f9fcf6,#edf7e8);
}
.case-heading span{
  display:block;
  color:var(--green-2);
  font-weight:900;
  font-size:13px;
  letter-spacing:.14em;
  margin-bottom:18px;
}
.case-heading h3{
  margin:0 0 18px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(28px,2.4vw,38px);
  line-height:1.02;
  letter-spacing:-.045em;
}
.investment-case-box p{
  margin:0 0 28px;
  color:var(--charcoal);
  font-size:15px;
  line-height:1.58;
}
.graph-placeholder{
  margin-top:auto;
  min-height:150px;
  border:1.5px dashed rgba(113,173,94,.52);
  background:
    linear-gradient(135deg,rgba(159,206,137,.10),rgba(255,255,255,.65)),
    repeating-linear-gradient(135deg,rgba(32,35,38,.035) 0 8px,transparent 8px 16px);
  border-radius:7px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:24px;
}
.graph-placeholder strong{
  color:var(--green-2);
  text-transform:uppercase;
  letter-spacing:.10em;
  font-size:12px;
  margin-bottom:10px;
}
.graph-placeholder span{
  color:rgba(32,35,38,.54);
  font-size:13px;
  line-height:1.4;
  max-width:260px;
}
@media(max-width:1100px){
  .microfinance-layout-v4{
    grid-template-columns:1fr;
  }
  .mf-v4 .microfinance-statement{
    position:static;
  }
}
@media(max-width:760px){
  .mf-v4{
    padding:80px 24px;
  }
  .investment-case-grid{
    grid-template-columns:1fr;
  }
}


/* --- Investment case v5: 3 boxes, 2 top + full-width impact --- */
.mf-v5 .investment-case-grid-v5{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:22px!important;
}

/* --- Section 01 live charts (rendered by finethic-charts.js) --- */
.fin-chart{
  margin:16px 0 0;
  position:relative;
  background:#f7f7f1;
  border:1px solid rgba(32,35,38,.10);
  border-radius:8px;
  padding:20px 22px 14px;
  cursor:zoom-in;
}
.fin-chart-svg{width:100%}
.fin-chart-svg svg,.fin-lightbox-body svg{width:100%;height:auto;display:block}
.fin-chart-expand{
  position:absolute;top:14px;right:14px;
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(32,35,38,.16);
  border-radius:999px;
  padding:7px 14px;
  font:800 11px/1 Inter,Arial,sans-serif;
  letter-spacing:.06em;text-transform:uppercase;
  color:var(--green-2);cursor:zoom-in;transition:.2s ease;
}
.fin-chart-expand:hover{background:#fff;box-shadow:0 6px 18px rgba(20,32,36,.12);transform:translateY(-1px)}
.fin-chart-expand span{font-size:14px}
.fin-lightbox{
  position:fixed;inset:0;z-index:1000;
  display:none;align-items:center;justify-content:center;
  background:rgba(12,17,19,.82);padding:32px;
}
.fin-lightbox.open{display:flex}
.fin-lightbox-inner{
  position:relative;background:#f7f7f1;border-radius:12px;
  width:min(1200px,96vw);max-height:92vh;overflow:auto;
  padding:34px 34px 26px;box-shadow:0 40px 120px rgba(0,0,0,.5);
}
.fin-lightbox-close{
  position:absolute;top:14px;right:16px;width:40px;height:40px;border-radius:50%;
  border:1px solid rgba(32,35,38,.16);background:#fff;font-size:17px;color:var(--text);
  cursor:pointer;line-height:1;display:grid;place-items:center;transition:.2s ease;z-index:2;
}
.fin-lightbox-close:hover{background:#ececec}
@media(max-width:760px){
  .fin-chart{padding:12px 12px 8px}
  .fin-lightbox{padding:10px}
  .fin-lightbox-inner{padding:16px}
}
.mf-v5 .investment-case-box{
  min-height:430px;
}
.mf-v5 .impact-wide{
  grid-column:1 / -1!important;
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:stretch;
}
.mf-v5 .impact-wide .case-heading{margin-bottom:2px}
.mf-v5 .impact-wide>p{margin:0 0 8px}
.impact-wide .graph-placeholder{
    width:100%;
    min-height:320px;
    margin-top:30px;
}
.mf-v5 .impact-placeholder span{
  max-width:900px;
}

/* --- Impact infographic (6 indicators, from impact.png) --- */
.impact-infographic{width:100%}
.impact-infographic .ii-eyebrow{
  color:var(--green-2);text-transform:uppercase;letter-spacing:.14em;
  font-size:12px;font-weight:900;margin:0 0 18px;
}
.impact-infographic .ii-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
  align-items:stretch;align-content:start;
}
.ii-item{
  background:#fff;border:1px solid var(--line);border-radius:12px;
  padding:26px 26px 24px;display:block;
  transition:.2s ease;
}
.ii-item:hover{box-shadow:0 16px 44px rgba(20,32,36,.08);transform:translateY(-2px)}
.ii-icon{
  width:56px;height:56px;border-radius:50%;border:1.5px solid var(--green-2);
  display:grid;place-items:center;color:var(--green-2);margin-bottom:20px;flex:none;
}
.ii-icon svg{width:27px;height:27px}
.ii-num{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(32px,2.5vw,44px);line-height:1;color:var(--green-2);
  letter-spacing:-.02em;margin-bottom:12px;
}
.ii-label{
  font-size:12px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;
  color:var(--text);margin-bottom:14px;line-height:1.3;
}
.impact-infographic .ii-desc{
  font-size:13px;line-height:1.5;color:var(--charcoal);margin:0;
  padding-top:14px;border-top:1px solid var(--line);
}
.impact-infographic .ii-source{
  margin:22px 0 0;font-size:10.5px;line-height:1.45;color:rgba(103,111,114,.72);
  font-style:italic;
}
@media(max-width:900px){
  .impact-infographic .ii-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .impact-infographic .ii-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
  .mf-v5 .investment-case-grid-v5{
    grid-template-columns:1fr!important;
  }
  .mf-v5 .impact-wide{
    grid-column:auto!important;
    grid-template-columns:1fr;
  }
  .mf-v5 .impact-wide .graph-placeholder{
    min-height:900px;
  }
}
.eq-link{
    display:inline;

    color:#71AD5E;

    font:inherit;
    line-height:inherit;
    letter-spacing:inherit;

    text-decoration:underline;
    text-decoration-thickness:2px;
    text-underline-offset:2px;

    transition:color .2s;
}

.eq-link:hover{
    color:#5A9848;
}



/* --- Bilingual site toggle --- */
.lang-site[hidden]{display:none!important;}
.language-toggle{
  margin-left:8px;
  background:rgba(255,255,255,.06);
  color:white;
  border:1px solid rgba(255,255,255,.36);
  border-radius:999px;
  padding:10px 13px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  cursor:pointer;
  transition:.2s ease;
}
.language-toggle:hover{color:var(--green);border-color:var(--green);}
@media(max-width:760px){.language-toggle{padding:8px 10px;font-size:11px;}}

.opportunity-card h3{margin-top:0!important}
.opportunity-topline{margin-bottom:22px!important}
.opportunity-metric{
display:inline-flex;
flex-direction:column;
align-items:flex-end;
line-height:1.2;
}

.hero-content-final{
    padding-top:72px !important;
    align-items:flex-start !important;
}
.final-copy{
    padding-top:0 !important;
}
.hero-v4{
    min-height:740px !important;
}
.hero-content-final{
    min-height:640px !important;
}
.credibility-strip{
    margin-top:22px !important;
}
@media(max-width:760px){
  .hero-content-final{
      padding-top:50px !important;
  }
}

/* Pull the Executive Summary higher into the Hero, so the next section is visible immediately */
.opportunity-v3,
.opportunity-v4,
.opportunity-panel{
  margin-top:-112px !important;
}
.hero-v4{
  min-height:720px !important;
}
.hero-content-final{
  min-height:615px !important;
}
@media(max-width:980px){
  .opportunity-v3,
  .opportunity-v4,
  .opportunity-panel{
    margin-top:-78px !important;
  }
}
@media(max-width:760px){
  .opportunity-v3,
  .opportunity-v4,
  .opportunity-panel{
    margin-top:-58px !important;
  }
}


/* --- Production additions (not in the static mockup) --- */

/* Accessible label hidden visually but available to screen readers. */
.visually-hidden{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

/* Honeypot spam trap — kept out of view and out of the tab order. */
.hp-field{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}

/* Newsletter inline feedback. */
.newsletter-note{margin:12px 0 0;font-size:13px;line-height:1.5}
.newsletter-note.ok{color:var(--green)}
.newsletter-note.err{color:#e6a5a0}

/* Working mobile menu (the mockup showed the button but had no open state). */
@media(max-width:1180px){
  .nav .links.open{
    display:flex;flex-direction:column;gap:18px;
    position:absolute;top:86px;left:0;right:0;
    padding:22px 44px 28px;
    background:rgba(7,11,12,.97);backdrop-filter:blur(16px);
    border-bottom:1px solid rgba(255,255,255,.08);
  }
}
@media(max-width:760px){
  .nav .links.open{top:74px;padding:20px 18px 24px}
}
