@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&family=Inter:wght@400;500;600&display=swap');

:root{
  --navy:#0e1030;
  --navy-2:#151a3d;
  --navy-3:#181c42;
  --purple:#6a4cff;
  --purple-dark:#5638e0;
  --teal:#17c3a2;
  --amber:#f5a524;
  --ink:#1b1c33;
  --muted:#6b7086;
  --soft-bg:#f6f7fb;
}
body{font-family:'Inter',sans-serif;color:var(--ink);}
h1,h2,h3,h4,.display-font{font-family:'Poppins',sans-serif;}
.btn-purple{background:var(--purple);border-color:var(--purple);color:#fff;font-weight:600;}
.btn-purple:hover{background:var(--purple-dark);border-color:var(--purple-dark);color:#fff;}
.btn-outline-dark-soft{border:1px solid #d8dae6;color:var(--ink);font-weight:600;background:#fff;}
.btn-outline-dark-soft:hover{background:#f0f0f5;color:var(--ink);}
.navbar-dark-custom{background:var(--navy);}
.navbar-dark-custom .nav-link{color:#c7c9dc;font-weight:500;font-size:.92rem;}
.navbar-dark-custom .nav-link:hover{color:#fff;}
.brand-badge{width:30px;height:30px;background:var(--purple);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;}
.breadcrumb-hero{background:var(--navy-2);color:#aeb1cc;}
.hero-section{background:linear-gradient(180deg,#f3f2ff 0%, #f7f8fc 100%);}
.section-heading{font-weight:800;font-size:2.1rem;line-height:1.2;}
.muted-text{color:var(--muted);}
.section-py{padding-top:4rem;padding-bottom:4rem;}
.eyebrow{letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:700;color:var(--purple);}

/* search bar (light, floating) */
.search-float{background:#fff;border-radius:16px;box-shadow:0 15px 40px rgba(20,20,60,.08);padding:1.2rem;margin-top:-2.6rem;position:relative;z-index:5;}
.filter-pill{border:1px solid #e4e5f0;border-radius:10px;font-size:.85rem;padding:.5rem .8rem;color:var(--ink);background:#fff;}

.value-card{border:1px solid #ececf3;border-radius:14px;padding:1.2rem;height:100%;}
.value-card .icon-box{width:36px;height:36px;border-radius:9px;background:#efeaff;display:flex;align-items:center;justify-content:center;color:var(--purple);margin-bottom:.7rem;}
.value-card.featured{background:linear-gradient(135deg,var(--purple),#4b3bb0);color:#fff;border:none;}
.value-card.featured .icon-box{background:rgba(255,255,255,.2);color:#fff;}
.value-card.imgcard{background:linear-gradient(135deg,#dfe3f5,#f1eaff);}

.news-card{border:1px solid #ececf3;border-radius:16px;overflow:hidden;background:#fff;height:100%;}
.news-card .thumb{height:150px;background:linear-gradient(135deg,#dfe3f5,#f1eaff);display:flex;align-items:center;justify-content:center;font-size:2rem;color:#b7a9f5;position:relative;}
.news-card .badge-cat{position:absolute;top:10px;left:10px;font-size:.65rem;font-weight:700;}
.news-card .date-tag{position:absolute;top:10px;right:10px;font-size:.65rem;background:rgba(255,255,255,.85);color:#333;padding:.2rem .5rem;border-radius:20px;}
.news-card .body-p{padding:1rem 1.1rem;}

.insight-card{border:1px solid #ececf3;border-radius:16px;padding:1.3rem;height:100%;}
.insight-card.featured{background:linear-gradient(135deg,var(--purple),#4b3bb0);color:#fff;border:none;}
.insight-card .icon-box{width:36px;height:36px;border-radius:9px;background:#efeaff;display:flex;align-items:center;justify-content:center;color:var(--purple);margin-bottom:.7rem;}
.insight-card.featured .icon-box{background:rgba(255,255,255,.2);color:#fff;}
.insight-chart{height:120px;border-radius:10px;background:linear-gradient(135deg,#eef0fb,#f4eeff);display:flex;align-items:center;justify-content:center;color:#b7a9f5;font-size:1.8rem;}

.future-card{border:1px solid #ececf3;border-radius:14px;padding:1.2rem;height:100%;}
.future-card .icon-box{width:36px;height:36px;border-radius:50%;background:#efeaff;display:flex;align-items:center;justify-content:center;color:var(--purple);margin-bottom:.7rem;}

.story-card{border-radius:16px;overflow:hidden;background:#fff;border:1px solid #ececf3;height:100%;}
.story-card .thumb{height:150px;background:linear-gradient(135deg,#dfe3f5,#f1eaff);display:flex;align-items:center;justify-content:center;font-size:2rem;color:#b7a9f5;}
.story-card .body-p{padding:1rem 1.1rem;}

.opp-card{border:1px solid #ececf3;border-radius:16px;padding:1.3rem;height:100%;}
.opp-card .thumb{height:140px;border-radius:10px;background:linear-gradient(135deg,#dfe3f5,#f1eaff);display:flex;align-items:center;justify-content:center;color:#b7a9f5;font-size:2rem;margin-bottom:.9rem;}
.opp-mini{border:1px solid #ececf3;border-radius:14px;padding:1rem;height:100%;}
.opp-mini .icon-box{width:32px;height:32px;border-radius:8px;background:#efeaff;display:flex;align-items:center;justify-content:center;color:var(--purple);margin-bottom:.6rem;}

.report-card{border:1px solid #ececf3;border-radius:16px;overflow:hidden;background:#fff;height:100%;}
.report-card .thumb{height:190px;background:linear-gradient(135deg,#dfe3f5,#f1eaff);display:flex;align-items:center;justify-content:center;color:#b7a9f5;font-size:2.2rem;}
.report-card .body-p{padding:1.1rem 1.2rem;}

.source-card{border:1px solid #ececf3;border-radius:14px;padding:1.1rem;height:100%;}
.source-card .icon-box{width:34px;height:34px;border-radius:8px;background:#efeaff;display:flex;align-items:center;justify-content:center;color:var(--purple);margin-bottom:.6rem;}

.newsletter-box{background:#efeaff;border-radius:20px;overflow:hidden;}
.newsletter-img{background:linear-gradient(135deg,#c9e9ff,#d9ceff);min-height:220px;display:flex;align-items:center;justify-content:center;color:#7a6bcf;font-size:2.4rem;}

.impact-stat{border:1px solid #ececf3;border-radius:14px;padding:1.2rem;height:100%;}
.impact-num{font-weight:800;font-size:2rem;color:var(--ink);}
.impact-chart{height:80px;border-radius:10px;background:linear-gradient(135deg,#eef0fb,#f4eeff);}

.cta-gradient{background:linear-gradient(120deg,#6a4cff 0%, #3a52e8 100%);}
.mock-card{background:#fff;border-radius:16px;padding:1.2rem;box-shadow:0 20px 50px rgba(0,0,0,.25);}

footer{background:var(--navy);color:#9a9dbf;}
footer h6{color:#fff;font-weight:700;}
footer a{color:#9a9dbf;text-decoration:none;font-size:.88rem;}
footer a:hover{color:#fff;}

@media (max-width:767.98px){
  .section-heading{font-size:1.6rem;}
  .search-float{margin-top:1rem;}
}
