:root {
  --bs-primary: #1f4e79;
  --bs-primary-rgb: 31,78,121;
  --accent: #2f80ed;
  --dark: #12263a;
  --muted: #5c6b7a;
  --light-bg: #f5f8fb;
}

body {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #17212b;
}

.navbar-brand {
  font-weight: 800;
  letter-spacing: -0.03em;
}

.hero {
  background: radial-gradient(circle at top left, rgba(47,128,237,.18), transparent 30%), linear-gradient(135deg, #0f2438 0%, #1f4e79 58%, #2f80ed 100%);
  color: white;
  padding: 6rem 0;
}

.hero .badge {
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);
}

.hero-card {
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 1.25rem;
  backdrop-filter: blur(8px);
}

.section-pad { padding: 4.5rem 0; }
.bg-soft { background: var(--light-bg); }
.text-muted-custom { color: var(--muted); }

.card-clean {
  border: 1px solid #e4ebf3;
  border-radius: 1rem;
  box-shadow: 0 10px 30px rgba(18,38,58,.06);
  height: 100%;
}

.icon-box {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(var(--bs-primary-rgb), .1);
  color: var(--bs-primary);
  font-weight: 800;
}

.cta-band {
  background: var(--dark);
  color: white;
  border-radius: 1.25rem;
}

.page-header {
  background: linear-gradient(135deg, #12263a 0%, #1f4e79 100%);
  color: white;
  padding: 4.5rem 0;
}

.price-pill {
  display: inline-block;
  background: #eef6ff;
  color: var(--bs-primary);
  border: 1px solid #d4e8ff;
  border-radius: 999px;
  padding: .4rem .85rem;
  font-weight: 700;
}

.report-preview {
  border: 1px solid #dbe4ef;
  border-radius: 1rem;
  background: white;
  overflow: hidden;
  box-shadow: 0 12px 36px rgba(18,38,58,.08);
}
.report-bar { background:#edf3f9; height: 42px; border-bottom:1px solid #dbe4ef; }
.report-line { height: 12px; border-radius: 999px; background:#d9e4ef; margin-bottom: 12px; }
.report-risk { height: 18px; border-radius: 999px; background: linear-gradient(90deg,#b7d9ff,#ffe2a8,#ffc2c2); }

footer a { color: rgba(255,255,255,.8); text-decoration: none; }
footer a:hover { color: white; }

.form-control, .form-select { border-radius: .75rem; padding: .8rem 1rem; }
.btn { border-radius: .75rem; padding: .75rem 1rem; font-weight: 700; }
