:root{
  --bpc-navy:#0b1f3a;
  --bpc-navy-light:#14315a;
  --bpc-gold:#c9a227;
  --bpc-gold-light:#e3c15c;
  --bpc-gray:#5a6675;
  --bpc-light:#f5f7fa;

  --bs-body-color:#1c2530;
  --bs-body-font-family:'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --bs-primary:#0b1f3a;
  --bs-link-color:#0b1f3a;
  --bs-link-hover-color:#c9a227;
}

h1,h2,h3,h4,h5,.display-5,.display-6{
  font-family:Georgia,'Times New Roman',serif;
  color:var(--bpc-navy);
}

/* ---------- Header ---------- */
.navbar-bpc{background:rgba(11,31,58,.98);border-bottom:3px solid var(--bpc-gold);}
.navbar-bpc .navbar-brand{color:#fff;display:flex;align-items:center;gap:11px;}
.navbar-bpc .navbar-brand img{height:56px;width:auto;max-width:150px;object-fit:contain;}
.brand-text strong{display:block;font-family:Georgia,serif;font-size:19px;color:#fff;line-height:1.1;}
.brand-text span{display:block;font-size:10px;letter-spacing:2.2px;text-transform:uppercase;color:var(--bpc-gold-light);}
.navbar-bpc .nav-link{color:#e8edf4!important;font-size:14.5px;font-weight:500;}
.navbar-bpc .nav-link:hover,
.navbar-bpc .nav-link.active{color:var(--bpc-gold-light)!important;}
.btn-nav-cta{background:var(--bpc-gold);color:var(--bpc-navy)!important;font-weight:700;border-radius:4px;padding:.55rem 1.2rem;}
.btn-nav-cta:hover{background:var(--bpc-gold-light);}

/* ---------- Buttons ---------- */
.btn-gold{background:var(--bpc-gold);color:var(--bpc-navy);font-weight:700;border:2px solid var(--bpc-gold);border-radius:4px;padding:.8rem 2rem;letter-spacing:.4px;}
.btn-gold:hover{background:var(--bpc-gold-light);border-color:var(--bpc-gold-light);color:var(--bpc-navy);transform:translateY(-2px);}
.btn-ghost{border:2px solid rgba(255,255,255,.6);color:#fff;border-radius:4px;padding:.8rem 2rem;font-weight:700;}
.btn-ghost:hover{border-color:var(--bpc-gold);color:var(--bpc-gold-light);}

/* ---------- Hero ---------- */
.hero{
  background:
    linear-gradient(rgba(7,18,34,.84),rgba(7,18,34,.88)),
    url('https://images.unsplash.com/photo-1610375461246-83df859d849d?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
  color:#fff;padding:7rem 0 6rem;text-align:center;
}
.hero h1{color:#fff;font-size:clamp(2rem,5vw,3.4rem);max-width:900px;margin:0 auto 1.3rem;}
.hero h1 em{color:var(--bpc-gold-light);font-style:normal;}
.hero p{font-size:clamp(1rem,2vw,1.2rem);max-width:760px;margin:0 auto 2.2rem;color:#d4dce7;}

/* ---------- Stats ---------- */
.stats-bar{background:var(--bpc-navy-light);color:#fff;padding:2.2rem 0;}
.stats-bar h3{color:var(--bpc-gold-light);font-size:2.2rem;margin:0;}
.stats-bar p{font-size:.8rem;letter-spacing:1.6px;text-transform:uppercase;color:#bfcbdb;margin:0;}

/* ---------- Section helpers ---------- */
.section{padding:5.5rem 0;}
.section-alt{background:var(--bpc-light);}
.eyebrow{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:2.6px;text-transform:uppercase;color:var(--bpc-gold);margin-bottom:.9rem;}

/* ---------- Cards ---------- */
.card-bpc{background:#fff;border:0;border-top:4px solid var(--bpc-gold);border-radius:8px;box-shadow:0 4px 22px rgba(11,31,58,.08);transition:.25s;}
.card-bpc:hover{transform:translateY(-6px);box-shadow:0 14px 34px rgba(11,31,58,.14);}
.card-icon{width:56px;height:56px;border-radius:8px;background:rgba(201,162,39,.12);display:grid;place-items:center;font-size:1.5rem;margin-bottom:1.2rem;}

/* ---------- Commodity tiles ---------- */
.commodity{border:1px solid #e3e9f1;border-radius:8px;padding:2rem 1.5rem;text-align:center;transition:.25s;background:#fff;}
.commodity:hover{border-color:var(--bpc-gold);box-shadow:0 10px 26px rgba(11,31,58,.1);}
.commodity .sym{width:64px;height:64px;margin:0 auto 1rem;border-radius:50%;background:linear-gradient(135deg,var(--bpc-gold),#a8861a);color:#fff;display:grid;place-items:center;font-family:Georgia,serif;font-size:1.5rem;font-weight:bold;}

/* ---------- PPP banner ---------- */
.ppp-banner{background:linear-gradient(120deg,var(--bpc-navy),var(--bpc-navy-light));color:#fff;border-radius:12px;padding:3.5rem;}
.ppp-banner h2{color:#fff;}
.ppp-banner p{color:#c8d3e2;}
.ppp-banner li{padding:.7rem 0 .7rem 1.9rem;position:relative;border-bottom:1px solid rgba(255,255,255,.13);color:#dbe3ee;}
.ppp-banner li:last-child{border-bottom:0;}
.ppp-banner li::before{content:"✓";position:absolute;left:0;color:var(--bpc-gold-light);font-weight:bold;}

/* ---------- Forms ---------- */
.form-control:focus,.form-select:focus{border-color:var(--bpc-gold);box-shadow:0 0 0 .2rem rgba(201,162,39,.18);}
.form-label{font-size:.78rem;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--bpc-navy);}

/* ---------- Footer ---------- */
.footer-bpc{background:var(--bpc-navy);color:#aebacb;padding:4rem 0 1.6rem;font-size:.9rem;}
.footer-bpc h5{color:#fff;font-size:.85rem;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:1.1rem;}
.footer-bpc a{color:#aebacb;text-decoration:none;}
.footer-bpc a:hover{color:var(--bpc-gold-light);}
.footer-bpc ul{list-style:none;padding:0;}
.footer-bpc ul li{margin-bottom:.6rem;}
.social-links a{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);margin-right:.5rem;font-size:1.05rem;}
.social-links a:hover{background:var(--bpc-gold);color:var(--bpc-navy);}

/* ---------- Portal ---------- */
.portal-shell{background:var(--bpc-light);min-height:70vh;padding:3rem 0;}
.portal-card{background:#fff;border-radius:10px;box-shadow:0 6px 26px rgba(11,31,58,.07);padding:2.2rem;}
.doc-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;border-bottom:1px solid #e8edf4;}
.doc-row:last-child{border-bottom:0;}
.badge-kyc{font-size:.7rem;letter-spacing:.5px;text-transform:uppercase;}

/* ---------- Admin nav ---------- */
.admin-nav-tabs .nav-link{color:#5a6675;border:0;border-bottom:2px solid transparent;}
.admin-nav-tabs .nav-link.active{color:#0b1f3a;border-bottom-color:#c9a227;font-weight:600;background:none;}

/* ---------- Insight cover images ---------- */
.insight-cover {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center;
  background: #eef2f7;
}

/* Card view — full 16:9, no height cap */
.insight-cover--card {
  border-top-left-radius: .375rem;
  border-top-right-radius: .375rem;
}

/* Article view — max width capped, centered */
.insight-cover-wrap {
  max-width: 640px;
  margin: 0 auto;
}

.insight-cover--article {
  max-width: 640px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  border-radius: .375rem;
}

@media (max-width: 576px) {
  .insight-cover-wrap {
    max-width: 100%;
  }
}