:root {
  --primary: #1f6fc4;
  --primary-dark: #16518f;
  --accent: #f5a623;
  --accent-soft: #fce9c8;
  --ink: #22303f;
  --muted: #5d6b78;
  --surface: #ffffff;
  --bg: #f5f8fc;
  --border: #dde6f0;
}

/* ── Base ───────────────────────────────────────────── */
html { font-size: 17px; }
body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 17px;
  line-height: 1.65;
  color: #22303f;
  background-color: #f5f8fc;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
main { flex: 1 0 auto; }

h1, h2, h3, h4, h5, h6 {
  font-family: 'Poppins', 'Inter', sans-serif;
  color: #1f6fc4;
  font-weight: 600;
  line-height: 1.25;
}
h1, .page-title { font-size: 40px; font-weight: 700; margin: .6em 0 .5em; }
h2, .block-heading { font-size: 30px; font-weight: 600; }
h3 { font-size: 22px; font-weight: 600; }

/* ── Navbar ─────────────────────────────────────────── */
nav.site-nav {
  background-color: #1f6fc4;
  box-shadow: 0 2px 8px rgba(34, 48, 63, 0.12);
}
nav.site-nav .brand-logo {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  color: #ffffff;
}
nav.site-nav ul a { color: #ffffff; font-weight: 500; }
nav.site-nav ul a:hover { background-color: #16518f; }
.dropdown-content li > a { color: #1f6fc4; }
.dropdown-content li > a:hover { background-color: #f5f8fc; }
.sidenav .sidenav-child { padding-left: 40px; color: #5d6b78; }
.sidenav li > a { color: #22303f; }

/* ── Hero ───────────────────────────────────────────── */
.hero {
  background: linear-gradient(135deg, #1f6fc4 0%, #16518f 100%);
  color: #ffffff;
  padding: 72px 0 80px;
  text-align: center;
}
.hero-title { color: #ffffff; font-size: 40px; font-weight: 700; margin-bottom: .35em; }
.hero-lead { color: #eaf2fb; max-width: 720px; margin: 0 auto 1.6em; }
.hero-actions { margin-top: 1.2em; }
.hero-btn-primary {
  background-color: #f5a623; color: #22303f;
  border-radius: 28px; margin: .4em; font-weight: 600;
}
.hero-btn-primary:hover { background-color: #e8950f; }
.hero-btn-secondary {
  background-color: transparent; border: 2px solid #ffffff; color: #ffffff;
  border-radius: 28px; margin: .4em; box-shadow: none;
}
.hero-btn-secondary:hover { background-color: rgba(255,255,255,0.14); }

/* ── Content ────────────────────────────────────────── */
.site-prose { color: #22303f; }
.site-prose p, .block-paragraph { margin: 0 0 1.1em; }
.block-image, .article-main-image { border-radius: 10px; margin: 1.2em 0; }
.article-main-image { float: none; max-width: 100%; }
@media (min-width: 993px) {
  .article-main-image { float: right; max-width: 33%; margin: 0 0 1em 1.5em; }
}
.article-summary {
  border-left: 4px solid #f5a623;
  background: #fce9c8;
  padding: .9em 1.2em; border-radius: 0 8px 8px 0;
  color: #22303f; font-size: 1.05rem;
}
.article-dates { font-size: .9rem; margin-bottom: 1em; }
.block-quote { border-left: 4px solid #1f6fc4; padding-left: 1.2em; color: #5d6b78; font-style: italic; }
.block-list { margin: 0 0 1.1em 1.2em; }
.block-list li { list-style: disc; margin-bottom: .4em; }
.block-list-item {
  padding: .8em 0; border-bottom: 1px solid #dde6f0;
}
.list-item-title-wrap a { font-weight: 600; }
.block-table { margin: 1.4em 0; }
.divider { background-color: #dde6f0; }

/* Content body links — scoped, visible */
.site-prose a, .block-paragraph a, .block-list a, .list-item-title-wrap a {
  color: #1f6fc4;
  text-decoration: underline;
  text-decoration-color: rgba(31, 111, 196, 0.4);
}
.site-prose a:hover, .block-paragraph a:hover, .list-item-title-wrap a:hover {
  color: #16518f;
  text-decoration-color: #16518f;
}

/* ── Breadcrumbs ────────────────────────────────────── */
.breadcrumb-bar { background-color: #ffffff; border-bottom: 1px solid #dde6f0; }
.breadcrumb-bar .breadcrumb { color: #5d6b78; }
.breadcrumb-bar .breadcrumb:last-child { color: #22303f; }
.breadcrumb-bar .breadcrumb::before { color: #dde6f0; }

/* ── Cards ──────────────────────────────────────────── */
.card-grid .card, .card-grid .card-minimal { border-radius: 12px; }
.card .card-title a, .card-minimal h5 a, .card-stacked h5 a { color: #1f6fc4; }
.card-minimal { border-left: 3px solid #f5a623; padding: .9em 1.2em; background: #ffffff; border-radius: 8px; }
.card-action a { color: #f5a623 !important; font-weight: 600; }

/* ── ToC ────────────────────────────────────────────── */
.toc-box { background: #ffffff; border: 1px solid #dde6f0; border-radius: 10px; padding: 1em 1.2em; margin-bottom: 1.4em; }
.toc-box h6 { color: #1f6fc4; font-weight: 600; margin-top: 0; }
.toc-box a { color: #22303f; }
.sticky-toc { position: sticky; top: 20px; align-self: flex-start; }
.toc-level-3 { padding-left: 1em; }

/* ── Footer ─────────────────────────────────────────── */
footer.page-footer { background-color: #16518f; padding-top: 28px; }
footer.page-footer .footer-title { color: #ffffff; font-size: 18px; }
footer.page-footer a { color: #cfe0f3; }
footer.page-footer a:hover { color: #ffffff; text-decoration: underline; }
footer.page-footer .footer-copyright { background-color: rgba(0,0,0,0.18); color: #cfe0f3; }
