:root {
  --dp-bg: #f8fafc;
  --dp-light: #eef3f7;
  --dp-gray: #657786;
  --dp-dark: #2f3b46;
  --dp-accent: #3c6e91;
  --dp-accent-light: #5b8da8;
  --dp-border: #d8dee4;
  --dp-radius: 10px;
  --dp-shadow: 0 2px 8px rgba(44, 62, 80, 0.08);
}

body {
  background-color: var(--dp-bg);
  color: var(--dp-dark);
  line-height: 1.6;
}

h1, h2, h3, h4 {
  color: var(--dp-accent);
  letter-spacing: 0.01em;
}

p.lead {
  color: var(--dp-gray);
  font-size: 1.15rem;
  max-width: 860px;
}

.container {
  background-color: transparent;
}

.card {
  background: #fff;
  border: 1px solid var(--dp-border);
  border-radius: var(--dp-radius);
  box-shadow: var(--dp-shadow);
  padding: 1.5rem;
}

.btn {
  display: inline-block;
  background-color: var(--dp-accent);
  color: #fff;
  padding: 10px 18px;
  border-radius: var(--dp-radius);
  font-weight: 600;
  text-decoration: none;
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

.btn:hover,
.btn:focus {
  background-color: var(--dp-accent-light);
  box-shadow: 0 3px 10px rgba(60, 110, 145, 0.3);
}

.btn.secondary {
  background: #fff;
  color: var(--dp-accent);
  border: 1px solid var(--dp-accent-light);
}

.btn.secondary:hover {
  background: var(--dp-accent-light);
  color: #fff;
}

.site-header {
  background: #fff;
  border-bottom: 1px solid var(--dp-border);
  box-shadow: var(--dp-shadow);
}

.nav a {
  color: var(--dp-dark);
  padding: 8px 12px;
  text-decoration: none;
  border-radius: 6px;
  transition: background 0.2s ease, color 0.2s ease;
}

.nav a:hover,
.nav a.active {
  background: var(--dp-accent-light);
  color: #fff;
}

.site-footer {
  background: var(--dp-light);
  border-top: 1px solid var(--dp-border);
  padding: 2rem 0;
  color: var(--dp-gray);
}

.site-footer a {
  color: var(--dp-accent);
}

.site-footer a:hover {
  text-decoration: underline;
}

.top-banner {
  background: var(--dp-accent);
  color: #fff;
  padding: 0.6rem;
  text-align: center;
  font-size: 0.95rem;
  box-shadow: var(--dp-shadow);
}

hr.style-four {
  border: 0;
  height: 3px;
  background: linear-gradient(
    90deg,
    transparent,
    var(--dp-border),
    transparent
  );
  margin: 0.1px 0;
}
