@charset "UTF-8";
.bs-bg-light-blue {
  background-color: #F5F9FC;
}

.bs-bg-surface-subtle {
  background-color: #f9fafb;
}

h1 {
  color: #231f20;
}

h2 {
  line-height: 2rem;
  color: #215493;
}

h3 {
  font-weight: 600;
  line-height: 1.75rem;
  color: #231f20;
}

h4 {
  line-height: 1.5rem;
  color: #231f20;
}

@media (max-width: 47.99875rem) {
  h1 {
    font-size: 1.5rem;
    line-height: 2rem;
  }
  h2 {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}
h2.field__label,
h3.field__label,
h4.field__label {
  margin-block-end: 0.75rem;
}

.text-formatted,
.ck-content {
  color: #101828;
}
.text-formatted p,
.ck-content p {
  margin-block: 0 1rem;
  font-size: 1rem;
  line-height: 1.625rem;
}
.text-formatted h3,
.ck-content h3 {
  margin-block-start: 2.5rem;
}
.text-formatted ul,
.text-formatted ol,
.ck-content ul,
.ck-content ol {
  margin-block: 0 1rem;
  margin-inline-start: 0;
  padding-inline-start: 1.25rem;
}
.text-formatted ul,
.ck-content ul {
  list-style: none;
}
.text-formatted ul > li,
.ck-content ul > li {
  position: relative;
}
.text-formatted ul > li::before,
.ck-content ul > li::before {
  content: "•";
  position: absolute;
  inset-inline-start: -13px;
}
.text-formatted li,
.ck-content li {
  font-size: 1rem;
  line-height: 1.5rem;
}
@media (max-width: 47.99875rem) {
  .text-formatted li,
  .ck-content li {
    line-height: 1.625rem;
  }
}
.text-formatted li + li,
.ck-content li + li {
  margin-block-start: 0.5rem;
}
.text-formatted table,
.ck-content table {
  width: 100%;
  margin-block: 0 1rem;
  border-collapse: collapse;
  font-size: 1rem;
  line-height: 1.5rem;
}
@media (max-width: 35.99875rem) {
  .text-formatted table,
  .ck-content table {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
}
.text-formatted caption,
.ck-content caption {
  caption-side: top;
  padding-block-end: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  text-align: start;
  color: #4a5565;
}
.text-formatted th,
.text-formatted td,
.ck-content th,
.ck-content td {
  padding: 1rem 1.5rem;
  text-align: start;
  vertical-align: top;
}
.text-formatted th > :last-child,
.text-formatted td > :last-child,
.ck-content th > :last-child,
.ck-content td > :last-child {
  margin-block-end: 0;
}
.text-formatted tr > :first-child,
.ck-content tr > :first-child {
  padding-inline-start: 0;
}
.text-formatted tr > :last-child,
.ck-content tr > :last-child {
  padding-inline-end: 0;
}
.text-formatted th,
.ck-content th {
  font-weight: 600;
}
.text-formatted thead th,
.ck-content thead th {
  vertical-align: middle;
}
.text-formatted thead tr,
.ck-content thead tr {
  border-block-end: 1px solid #d1d5db;
}
.text-formatted tbody tr,
.ck-content tbody tr {
  border-block-end: 1px solid #e5e7eb;
}
.text-formatted tbody tr:last-child,
.ck-content tbody tr:last-child {
  border-block-end: 0;
}
.text-formatted > :first-child,
.ck-content > :first-child {
  margin-block-start: 0;
}
.text-formatted > :last-child,
.ck-content > :last-child {
  margin-block-end: 0;
}

.alert > :last-child {
  margin-block-end: 0;
}
.alert ul,
.alert ol {
  margin-block-end: 0;
}
.alert .alert-heading {
  font-size: 1rem;
  line-height: 1.5rem;
}

.alert-info p,
.alert-info li,
.alert-warning p,
.alert-warning li,
.alert-danger p,
.alert-danger li {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.alert-info li + li,
.alert-warning li + li,
.alert-danger li + li {
  margin-block-start: 0.25rem;
}

blockquote.alert {
  margin-inline: 0;
  font-style: normal;
}
blockquote.alert::before {
  content: none;
}

.btn-accent {
  --bs-btn-color: #fff;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #2563eb;
  --bs-btn-hover-border-color: #2563eb;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #2563eb;
  --bs-btn-active-border-color: #2563eb;
  --bs-btn-disabled-color: #fff;
}

.btn-sm {
  --bs-btn-line-height: 1.42857;
}

.alert > p:last-child > .btn:only-child {
  margin-block-start: 0.25rem;
}

figure.caption-drupal-media {
  display: block;
  width: 100%;
  max-width: 500px;
  margin-block: 1.5rem;
  padding: 1.25rem;
  border-radius: 0.625rem;
  background-color: #f9fafb;
}
figure.caption-drupal-media figcaption {
  display: block;
  padding-block-start: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  text-align: center;
  color: #4a5565;
}

.media-oembed-content,
figure.caption-drupal-media video,
figure.caption-drupal-media iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  border: 1px solid #d1d5dc;
  border-radius: 0.25rem;
}

.ck-content figure.table {
  display: block;
  margin: 0;
}
.ck-content figure.table table {
  border: 0 !important;
}
.ck-content figure.table table td,
.ck-content figure.table table th {
  min-width: 0;
  height: auto !important;
  padding: 1rem 1.5rem !important;
  border: 0 !important;
  font-size: inherit !important;
}
.ck-content figure.table table th {
  background: none !important;
  font-weight: 600 !important;
  text-align: start !important;
}
.ck-content figure.table table tr > :first-child {
  padding-inline-start: 0 !important;
}
.ck-content figure.table table tr > :last-child {
  padding-inline-end: 0 !important;
}

.ccd-rich-text h2,
.ck-content h2 {
  margin-block-start: 3rem;
}
.ccd-rich-text h3,
.ck-content h3 {
  margin-block-start: 2.5rem;
}
.ccd-rich-text h4,
.ck-content h4 {
  margin-block-start: 1.5rem;
}
.ccd-rich-text > :first-child,
.ck-content > :first-child {
  margin-block-start: 0;
}
