/* Shared logo palette for the website and the original Demo pages. */
:root {
  --color-bg: #f6f8fb;
  --color-surface: #fff;
  --color-surface-soft: #f0f5fa;
  --color-surface-strong: #e5edf5;
  --color-text: #202830;
  --color-text-muted: #5c6875;
  --color-line: #d8e2ed;
  --color-primary: #004f9a;
  --color-primary-dark: #003d78;
  --color-primary-soft: #e5f1fc;
  --color-accent: #0077b9;
  --color-accent-soft: #e8f3fc;
  --color-ink: #102e4c;
  --brand-gradient: linear-gradient(120deg, #004f9a 0%, #0077b9 100%);
  --brand-gradient-hover: linear-gradient(120deg, #003d78 0%, #0063a5 100%);
  --brand-gradient-dark: linear-gradient(115deg, #102e4c 0%, #003d78 62%, #004f9a 100%);
}

.completion-page {
  --cp-ink: var(--color-text);
  --cp-muted: var(--color-text-muted);
  --cp-green: var(--color-primary);
  --cp-line: var(--color-line);
  --cp-soft: var(--color-surface-soft);
}

.btn.btn-primary,
.site-header .btn-primary,
.completion-page .cp-button {
  background: var(--brand-gradient);
  border-color: var(--color-primary);
  color: #fff;
}

.btn.btn-primary:hover,
.btn.btn-primary:focus-visible,
.site-header .btn-primary:hover,
.site-header .btn-primary:focus-visible,
.completion-page .cp-button:hover,
.completion-page .cp-button:focus-visible {
  background: var(--brand-gradient-hover);
  border-color: var(--color-primary-dark);
  color: #fff;
}

.site-footer,
.site-footer.site-footer-redesign,
.inquiry-band,
.cta-column {
  background: var(--brand-gradient-dark);
}

:is(a, button, input, select, textarea, summary):focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 3px;
}

.btn.btn-primary:focus-visible,
.site-header .btn-primary:focus-visible,
.completion-page .cp-button:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 3px;
}

input[type="checkbox"], input[type="radio"] { accent-color: var(--color-primary); }
::selection { background: #cde4fa; color: #003d78; }
