/* ============================================================
   layout.css — site-wide: variables, base, nav, footer
   ============================================================ */

:root {
  --bf-bg: #ffffff;
  --bf-nav: #1F3A8A;
  --bf-footer: #1F3A8A;
  --bf-card: #EAF3F1;
  --bf-text: #111827;
  --bf-muted: #4B5563;
  --bf-border: rgba(17,24,39,.12);
  --bf-primary: #1F3A8A;
  --bf-primary-hover: #1E40AF;
}

body { background: var(--bf-bg); color: var(--bf-text); min-height: 100vh; display: flex; flex-direction: column; }
main, .maincontent { flex: 1; }
a { text-decoration: none; }

/* NAV */
.navbar { background: var(--bf-nav); border-bottom: 1px solid rgba(255,255,255,.16);  }
.navbar-brand { color: #ffffff !important; letter-spacing: .2px; }
.nav-link {
  color: rgba(255,255,255,.88) !important;
  padding-bottom: .35rem;
  border-bottom: 2px solid transparent;
  transition: color .12s ease, border-color .12s ease;
}
.nav-link:hover { color: rgba(255,255,255,1) !important; border-bottom-color: rgba(255,255,255,.70); }
.nav-link.active,
.nav-link[aria-current="page"] {
  color: rgba(255,255,255,1) !important;
  border-bottom-color: rgba(255,255,255,1);
  font-weight: 600;
}

/* FOOTER */
.footer { border-top: 1px solid rgba(255,255,255,.16); padding: 28px 0; background: var(--bf-footer); }
.footer .small,
.footer .muted { color: rgba(255,255,255,.80) !important; }
.link-muted { color: rgba(255,255,255,.78); text-decoration: none; }
.link-muted:hover { color: rgba(255,255,255,1); text-decoration: underline; }
