:root{
  --brand:#0b4aaa;
  --accent:#00b3c7;
}
body{ font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, sans-serif; }
.navbar{ box-shadow: 0 6px 16px rgba(0,0,0,.08); }
.hero{
  background: linear-gradient(120deg, rgba(11,74,170,.85), rgba(0,179,199,.85)),
              url('/assets/hero_fallback.jpg') center/cover no-repeat;
  color:#fff; padding: 80px 0;
}
.btn-brand{ background: var(--brand); color:#fff; }
.btn-brand:hover{ filter:brightness(.95); color:#fff; }
.badge-type{ background:#eef4ff; color:#0b4aaa; }
footer{ background:#0b1f33; color:#c9d6ea; padding:30px 0; }
.card{ border:none; box-shadow: 0 10px 24px rgba(0,0,0,.05); border-radius: 16px; }
.table th, .table td{ vertical-align: middle; }
.form-control, .form-select{ border-radius: 10px; }
/* Home polish */
.section-title { font-weight: 800; letter-spacing:.2px; }
.lead-tight { line-height:1.5; }
.icon-bullet { width:36px; height:36px; border-radius:10px; display:inline-flex; align-items:center; justify-content:center; background:#eef4ff; color:#0b4aaa; margin-right:.6rem; font-weight:700; }
.checklist { padding-left:1.0rem; }
.checklist li { margin:.35rem 0; }
.ribbon { background: linear-gradient(90deg, #f6f9ff, #eef6ff); border:1px solid #e6eefc; }
.accordion-button:not(.collapsed){ background:#f1f7ff; color:#0b4aaa; }
.card.soft { border:none; box-shadow: 0 10px 24px rgba(0,0,0,.05); border-radius: 16px; }
.badge-pill { border-radius: 999px; padding:.35rem .7rem; background:#eef4ff; color:#0b4aaa; font-weight:600; }
