:root{
  --ink:#0b1220;
  --muted:#5b6475;
  --bg:#f6f8fb;
  --primary:#0d6efd;
  --card:#ffffff;
  --border:#e6eaf2;
}

*{box-sizing:border-box;}
body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--ink);
  background: var(--bg);
}
.link-muted{ color: var(--muted); text-decoration:none; }
.link-muted:hover{ color: var(--ink); text-decoration:underline; }

.section{ padding: 72px 0; }
.hero{
  background: radial-gradient(1200px 600px at 20% 20%, rgba(13,110,253,.25), transparent 60%),
              radial-gradient(1000px 500px at 80% 30%, rgba(30,60,114,.25), transparent 55%),
              linear-gradient(180deg, #ffffff, #f6f8fb);
  border-bottom: 1px solid var(--border);
}
.badge-soft{
  display:inline-flex; gap:8px; align-items:center;
  padding:6px 10px; border-radius:999px;
  background:#eef4ff; color:#1147b8; font-weight:600; font-size:13px;
  border:1px solid #d9e6ff;
}
.cardx{
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(13,18,32,0.06);
}
.cardx .cardx-body{ padding: 22px; }

.kpi{
  border:1px solid var(--border);
  border-radius: 16px;
  padding: 18px;
  background:#fff;
}
.kpi .num{ font-size:28px; font-weight:800; }
.kpi .lbl{ color: var(--muted); font-weight:600; }

.hr-soft{ border:0; height:1px; background: var(--border); }

.smallcaps{
  letter-spacing: .08em; text-transform: uppercase;
  font-size: 12px; color: var(--muted); font-weight:700;
}

.form-control, .form-select{
  border-radius: 12px;
  border-color: var(--border);
  padding: 12px 14px;
}
.btn{
  border-radius: 12px;
  padding: 10px 14px;
}
.btn-primary{
  box-shadow: 0 8px 18px rgba(13,110,253,.18);
}
.proofbar{
  display:flex; flex-wrap:wrap; gap:10px;
  color: var(--muted);
  font-weight:600;
  font-size: 13px;
}
.checklist li{ margin-bottom: 10px; }