:root{
  --bg:#0b1320;
  --bg2:#0f1b2e;
  --text:#0f172a;
  --muted:#475569;
  --card:#ffffff;
  --brand:#22c55e;
  --brand2:#16a34a;
  --ring: rgba(34,197,94,.35);
}

.site-header{
  background: radial-gradient(1200px 500px at 20% -10%, rgba(34,197,94,.25), transparent),
              linear-gradient(135deg, var(--bg), var(--bg2));
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.navbar-brand{ letter-spacing:.2px; }
.brand-accent{ color: var(--brand); }

.btn-brand{
  background: linear-gradient(180deg, var(--brand), var(--brand2));
  border: 0;
  color: #05110a !important;
  font-weight: 700;
  box-shadow: 0 10px 25px rgba(34,197,94,.18);
}
.btn-brand:focus{ box-shadow: 0 0 0 .25rem var(--ring); }

.fw-bold{ color :#05110a !important; }

.hero{
  background: radial-gradient(1000px 420px at 25% 0%, rgba(34,197,94,.18), transparent);
  padding: 64px 0 36px;
}
.hero h1{
  font-size: clamp(28px, 3.5vw, 46px);
  line-height: 1.1;
  color: rgba(0, 0, 0, 0.85);
}
.hero p{
  color: rgba(0, 0, 0, 0.85);
  font-size: clamp(14px, 1.2vw, 18px);
}
.hero-card{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  backdrop-filter: blur(10px);
  padding: 18px;
}

.section-title{
  font-size: 22px;
  font-weight: 800;
  color: var(--text);
}
.section-sub{
  color: var(--muted);
}

.card-soft{
  border: 1px solid rgba(15,23,42,.08);
  border-radius: 18px;
  box-shadow: 0 12px 26px rgba(2,8,23,.06);
}

.badge-pill{
  display:inline-flex;
  gap:8px;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:#ecfdf5;
  color:#065f46;
  border:1px solid rgba(34,197,94,.25);
  font-weight:600;
}

.kpi{
  border: 1px dashed rgba(15,23,42,.18);
  border-radius: 16px;
  padding: 14px;
  background: #f8fafc;
}

.text-black{
  color: var(--text);
}

.text-white{
  color: #fff;
}

.site-footer{
  background:#0b1320;
  color:#e2e8f0;
  border-top: 1px solid rgba(255,255,255,.08);
}

a{ text-decoration:none; }
