html,
body {
  min-height: 100%;
}

body {
  font-family: var(--vda-font-body);
  font-size: 0.98rem;
  color: var(--vda-text);
  background:
    radial-gradient(circle at 8% 10%, rgba(50, 210, 125, 0.09), transparent 32%),
    radial-gradient(circle at 92% 0%, rgba(25, 135, 84, 0.07), transparent 30%),
    var(--vda-bg);
}

h1,
h2,
h3,
h4,
h5,
h6,
.navbar-brand,
.page-header .h2 {
  font-family: var(--vda-font-heading);
  color: #0e2418;
  letter-spacing: -0.02em;
}

body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5,
body.dark-mode h6,
body.dark-mode .navbar-brand,
body.dark-mode .page-header .h2 {
  color: var(--vda-text);
}

h1,
.page-header .h2 {
  font-size: 2rem;
  font-weight: 800;
}

h2 {
  font-size: 1.6rem;
  font-weight: 750;
}

h3,
.h5 {
  font-size: 1.25rem;
  font-weight: 700;
}

p,
small,
label,
.table,
.form-control {
  font-family: var(--vda-font-body);
}

main.col-md-9.ml-sm-auto.col-lg-10 {
  margin-left: 240px;
  padding: calc(56px + var(--space-3)) var(--space-3) var(--space-4);
  min-height: 100vh;
}

main .container,
main .container-fluid {
  background: transparent;
  box-shadow: none;
  border-radius: 0;
  padding: 0;
}

.page-header {
  margin: 0 0 var(--space-3);
  padding: var(--space-2) 0;
  border-bottom: 1px solid var(--vda-border);
}

.footer {
  margin-top: var(--space-4);
  background: var(--vda-surface);
  border: 1px solid var(--vda-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-1);
}

.footer p {
  margin: 0;
  color: var(--vda-text-muted);
}

body.dark-mode .footer {
  background: var(--vda-surface-0);
  border-color: var(--vda-border);
}

body.dark-mode .page-header {
  border-bottom-color: var(--vda-border);
}

body.dark-mode .page-header,
body.dark-mode .footer a {
  color: var(--vda-text-muted);
}

a {
  color: #1b7a4e;
}

a:hover {
  color: #12573a;
}
