:root{
  --brand:#0b1f3a;
  --brand2:#122f55;
  --accent:#c8a34a;
  --bg:#f4f6f9;
  --text:#0f172a;
  --muted:#64748b;
  --card:#ffffff;
  --border:rgba(15, 23, 42, .08);
}

html,body{height:100%}
body{
  background: var(--bg);
  color: var(--text);
  font-family: system-ui, -apple-system, "Segoe UI", Tahoma, Arial, sans-serif;
}

a{ text-decoration:none; }
.container-narrow{ max-width: 980px; }

.navbar-brand b{ color: var(--accent); }
.navbar-dark{
  background: linear-gradient(90deg, var(--brand), var(--brand2));
}
.nav-link{ opacity:.92; }
.nav-link:hover{ opacity:1; }

.hero{
  background: linear-gradient(180deg, rgba(11,31,58,.08), rgba(11,31,58,0));
  border: 1px solid var(--border);
  border-radius: 16px;
}

.card-soft{
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 16px;
  box-shadow: 0 10px 22px rgba(2,8,23,.06);
}

.badge-soft{
  background: rgba(200,163,74,.12);
  color: #6a4c00;
  border: 1px solid rgba(200,163,74,.25);
}

.section-title{
  border-right: 4px solid var(--accent);
  padding-right: 10px;
}

.small-muted{ color: var(--muted); }

.list-check li{
  margin-bottom: .5rem;
  position: relative;
  padding-right: 1.6rem;
}
.list-check li::before{
  content:"✓";
  position:absolute;
  right:0;
  color: var(--accent);
  font-weight: 700;
}

.footer{
  border-top: 1px solid var(--border);
  color: var(--muted);
  background:#fff;
}

.btn-accent{
  background: var(--accent);
  border-color: var(--accent);
  color:#1b1b1b;
  font-weight: 700;
}
.btn-accent:hover{ filter: brightness(.95); }

.kbd-chip{
  background:#fff;
  border:1px solid var(--border);
  border-bottom-width:2px;
  padding:.15rem .5rem;
  border-radius:.6rem;
  font-weight:600;
  color: var(--brand);
}

hr.hr-soft{ border-color: var(--border); opacity:1; }
