
/* ============================================================
   OVIA Marketplace Phase 7.14
   Community / Opportunity / Metrics / Footer fidelity upgrade
   ============================================================ */

/* Larger typography across affected lower-page sections */
.hf-home,
.hf-bottom-row,
.hf-metrics,
.mp-footer-v714{
  font-size:15px!important;
}

/* --- Success stories + opportunity: match source-of-truth proportions --- */
.hf-community-photo-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.08fr)!important;
  gap:14px!important;
  align-items:stretch!important;
}
.hf-community-photo-row>article{
  min-height:300px!important;
  border:1px solid #dce5ef!important;
  border-radius:13px!important;
  overflow:hidden!important;
  box-shadow:0 8px 26px rgba(14,54,96,.06)!important;
}

.hf-stories-photo{
  padding:22px!important;
  background:#fff!important;
}
.hf-stories-photo>header{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin-bottom:15px!important;
}
.hf-stories-photo h2{
  margin:0!important;
  color:#0a3476!important;
  font-size:24px!important;
  line-height:1.05!important;
  letter-spacing:-.02em!important;
}
.hf-stories-photo header p{
  margin:6px 0 0!important;
  color:#193c62!important;
  font-size:12px!important;
  font-weight:700!important;
}
.hf-stories-photo header>a{
  color:#075be1!important;
  font-size:11px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.hf-stories-photo header>a span{font-size:17px!important}

.hf-story-photo-cards{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
.hf-story-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  padding:0!important;
  border:1px solid #dce5ef!important;
  border-radius:10px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(10,46,86,.045)!important;
}
.story-photo-wrap{
  position:relative!important;
  height:155px!important;
  overflow:hidden!important;
  background:#eef4fa!important;
}
.story-photo-wrap img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 26%!important;
}
.hf-story-card:nth-child(2) .story-photo-wrap img{object-position:center 30%!important}
.hf-story-card:nth-child(3) .story-photo-wrap img{object-position:center 35%!important}
.story-star{
  position:absolute!important;
  left:12px!important;
  bottom:-17px!important;
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  border:4px solid #fff!important;
  background:#075be1!important;
  color:#fff!important;
  font-size:14px!important;
  z-index:3!important;
}
.story-copy{
  padding:22px 12px 12px!important;
}
.story-copy>b{
  display:block!important;
  color:#12355a!important;
  font-size:13px!important;
  line-height:1.2!important;
}
.story-copy>span{
  display:block!important;
  margin-top:4px!important;
  color:#435d77!important;
  font-size:9px!important;
  line-height:1.35!important;
}
.story-copy>strong{
  display:block!important;
  margin-top:5px!important;
  color:#075be1!important;
  font-size:10px!important;
}
.story-copy>small{
  display:block!important;
  margin-top:10px!important;
  color:#72859a!important;
  font-size:8px!important;
}

/* Opportunity with real African team photo */
.hf-opportunity-photo{
  position:relative!important;
  display:grid!important;
  grid-template-columns:43% 57%!important;
  padding:0!important;
  background:linear-gradient(115deg,#edf6ff,#e2f0ff)!important;
}
.hf-opportunity-photo .copy{
  position:relative!important;
  z-index:4!important;
  width:auto!important;
  padding:31px 10px 24px 30px!important;
  align-self:center!important;
}
.hf-opportunity-photo .copy>small{
  color:#075be1!important;
  font-size:9px!important;
  font-weight:900!important;
}
.hf-opportunity-photo h2{
  margin:8px 0 14px!important;
  color:#102f55!important;
  font-size:27px!important;
  line-height:1.06!important;
  letter-spacing:-.025em!important;
}
.hf-opportunity-photo ul{
  margin:0 0 17px!important;
  padding:0!important;
  list-style:none!important;
}
.hf-opportunity-photo li{
  position:relative!important;
  padding-left:24px!important;
  margin:8px 0!important;
  color:#284c70!important;
  font-size:11px!important;
  line-height:1.25!important;
}
.hf-opportunity-photo li:before{
  content:"✓"!important;
  position:absolute!important;
  left:0!important;
  top:-1px!important;
  width:16px!important;
  height:16px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#075be1!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:900!important;
}
.hf-opportunity-photo .copy>a{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:42px!important;
  padding:0 16px!important;
  border-radius:7px!important;
  background:linear-gradient(100deg,#075be1,#0a70ef)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
  box-shadow:0 8px 18px rgba(7,91,225,.18)!important;
}
.hf-opportunity-photo .copy>a span{font-size:16px!important}
.opportunity-photo{
  position:relative!important;
  height:100%!important;
  min-height:300px!important;
  overflow:hidden!important;
}
.opportunity-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 28%!important;
}
.opportunity-photo-wash{
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(90deg,#eaf4ff 0%,rgba(234,244,255,.68) 13%,rgba(234,244,255,0) 36%)!important;
}

/* --- Metrics: match source reference --- */
.hf-metrics-rich{
  margin-top:0!important;
  display:grid!important;
  grid-template-columns:repeat(5,1fr)!important;
  min-height:94px!important;
  border-radius:10px!important;
  overflow:hidden!important;
  background:linear-gradient(90deg,#075be1 0%,#0967dc 55%,#06459d 100%)!important;
  box-shadow:0 10px 24px rgba(5,65,160,.16)!important;
}
.hf-metrics-rich>div{
  min-height:94px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:13px!important;
  padding:15px 18px!important;
  border-right:1px solid rgba(255,255,255,.18)!important;
}
.hf-metrics-rich>div:last-child{border-right:0!important}
.hf-metrics-rich i{
  width:48px!important;
  height:48px!important;
  flex:0 0 48px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  border:1px solid rgba(255,255,255,.28)!important;
  color:#fff!important;
  font-size:23px!important;
  font-style:normal!important;
}
.hf-metrics-rich p{margin:0!important}
.hf-metrics-rich strong{
  display:block!important;
  color:#fff!important;
  font-size:21px!important;
  line-height:1!important;
}
.hf-metrics-rich small{
  display:block!important;
  margin-top:5px!important;
  color:#fff!important;
  font-size:10px!important;
  line-height:1.15!important;
}

/* --- Footer: source-of-truth style and larger typography --- */
footer.mp-footer-v714{
  margin-top:20px!important;
  background:
    radial-gradient(circle at 72% 10%,rgba(13,91,214,.28),transparent 30%),
    linear-gradient(120deg,#062451 0%,#073b87 48%,#052c68 100%)!important;
}
footer.mp-footer-v714 .mp-footer-main{
  grid-template-columns:minmax(270px,1.45fr) repeat(5,minmax(125px,1fr))!important;
  gap:31px!important;
  padding:40px 42px 30px!important;
}
footer.mp-footer-v714 .foot-brandmark{
  font-size:31px!important;
  gap:8px!important;
}
footer.mp-footer-v714 .foot-brandmark span{font-size:38px!important}
footer.mp-footer-v714 .foot-brandmark strong{font-size:30px!important}
footer.mp-footer-v714 .foot-brand>p{
  max-width:290px!important;
  margin:14px 0 18px!important;
  font-size:11px!important;
  line-height:1.6!important;
}
footer.mp-footer-v714 .foot-contact span{font-size:9px!important}
footer.mp-footer-v714 .foot-contact a{font-size:12px!important}
footer.mp-footer-v714 .foot-social a{
  width:35px!important;
  height:35px!important;
  font-size:13px!important;
}
footer.mp-footer-v714 .foot-column>b{
  margin-bottom:12px!important;
  font-size:11px!important;
}
footer.mp-footer-v714 .foot-column a{
  padding:5px 0!important;
  font-size:10.5px!important;
  line-height:1.5!important;
}

/* footer trust/payment/app strip */
footer.mp-footer-v714 .mp-footer-confidence-v714{
  grid-template-columns:repeat(4,minmax(155px,1fr)) minmax(315px,1.35fr) minmax(245px,1fr)!important;
  padding:0 42px!important;
  border-top:1px solid rgba(255,255,255,.14)!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
}
footer.mp-footer-v714 .mp-footer-confidence-v714>div{
  min-height:88px!important;
  padding:15px 16px!important;
}
footer.mp-footer-v714 .confidence-item>span{
  width:39px!important;
  height:39px!important;
  flex:0 0 39px!important;
  font-size:14px!important;
}
footer.mp-footer-v714 .confidence-item b{font-size:9.5px!important}
footer.mp-footer-v714 .confidence-item small{font-size:8px!important}

.foot-pay-v714,
.foot-apps{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:8px!important;
}
.foot-pay-v714>small,
.foot-apps>small{
  color:#c8d8ee!important;
  font-size:8px!important;
  letter-spacing:.04em!important;
}
.pay-badges{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px!important;
}
.pay-card,
.momo-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:28px!important;
  padding:0 8px!important;
  border-radius:6px!important;
  font-size:8px!important;
  font-weight:900!important;
  line-height:1!important;
}
.pay-card{
  background:#fff!important;
  color:#173b70!important;
}
.pay-card.mastercard{color:#ef5627!important}
.momo-badge i{font-style:normal!important;margin-right:4px!important}
.momo-badge.mtn{background:#ffd42a!important;color:#1b1b1b!important}
.momo-badge.telecel{background:#e32636!important;color:#fff!important}
.momo-badge.at{background:#1c65c8!important;color:#fff!important}

.foot-apps>div{
  display:flex!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}
.app-badge{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  min-height:31px!important;
  padding:0 9px!important;
  border-radius:6px!important;
  border:1px solid rgba(255,255,255,.25)!important;
  background:#031b3d!important;
  color:#fff!important;
  font-size:8px!important;
}
.app-badge b{font-size:8px!important}

.mp-footer-bottom{
  max-width:1510px!important;
  margin:0 auto!important;
  min-height:56px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  padding:0 42px!important;
  color:#b8cae0!important;
  font-size:9px!important;
}
.mp-footer-bottom>div{
  display:flex!important;
  gap:8px!important;
}
.footer-select{
  min-width:135px!important;
  min-height:32px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:0 10px!important;
  border:1px solid rgba(255,255,255,.17)!important;
  border-radius:5px!important;
  background:rgba(0,20,60,.22)!important;
  color:#fff!important;
  font-size:9px!important;
}

/* remove standalone copyright if any older CSS tries to resurrect it */
.mp-copyright-rich{display:none!important}

/* general readability increase for nearby lower page sections */
.hf-trust-strip b{font-size:9px!important}
.hf-trust-strip small{font-size:7.5px!important}
.hf-brands h2,.hf-earn-pv h2{font-size:17px!important}
.hf-brands a,.hf-earn-pv p{font-size:9px!important}

/* tablet */
@media(max-width:1200px){
  .hf-community-photo-row{grid-template-columns:1fr!important}
  .hf-community-photo-row>article{min-height:290px!important}
  .hf-opportunity-photo{grid-template-columns:44% 56%!important}
  footer.mp-footer-v714 .mp-footer-main{
    grid-template-columns:1.4fr repeat(3,1fr)!important;
    gap:24px 20px!important;
    padding:34px 25px 28px!important;
  }
  footer.mp-footer-v714 .mp-footer-confidence-v714{
    grid-template-columns:repeat(2,1fr)!important;
    padding:0 25px!important;
  }
  .mp-footer-bottom{padding:0 25px!important}
}

/* mobile */
@media(max-width:680px){
  .hf-stories-photo{padding:16px!important}
  .hf-stories-photo h2{font-size:20px!important}
  .hf-story-photo-cards{
    display:flex!important;
    overflow-x:auto!important;
    gap:10px!important;
    scroll-snap-type:x mandatory!important;
  }
  .hf-story-card{
    flex:0 0 78%!important;
    scroll-snap-align:start!important;
  }
  .story-photo-wrap{height:175px!important}
  .hf-opportunity-photo{
    display:flex!important;
    flex-direction:column!important;
  }
  .hf-opportunity-photo .copy{
    padding:23px 20px 18px!important;
  }
  .hf-opportunity-photo h2{font-size:23px!important}
  .opportunity-photo{min-height:230px!important}
  .opportunity-photo-wash{
    background:linear-gradient(0deg,#eaf4ff 0%,rgba(234,244,255,0) 38%)!important;
  }

  .hf-metrics-rich{
    display:flex!important;
    overflow-x:auto!important;
  }
  .hf-metrics-rich>div{
    flex:0 0 210px!important;
  }

  footer.mp-footer-v714 .mp-footer-main{
    grid-template-columns:1fr 1fr!important;
    padding:28px 17px 24px!important;
    gap:24px 18px!important;
  }
  footer.mp-footer-v714 .foot-brand{
    grid-column:1/-1!important;
  }
  footer.mp-footer-v714 .mp-footer-confidence-v714{
    grid-template-columns:1fr!important;
    padding:0 17px!important;
  }
  .mp-footer-bottom{
    min-height:94px!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding:12px 17px!important;
    text-align:center!important;
  }
  .mp-footer-bottom>div{
    width:100%!important;
  }
  .footer-select{
    flex:1!important;
    min-width:0!important;
  }
}
