/* Generated from CBA assets/sass/cba-elements.scss. Edit Sass; run npm run build. */
.cba-site-wrapper blockquote {
  margin: 1.75rem 0;
  padding: 1.25rem clamp(1.25rem, 3vw, 2rem);
  border: 0;
  border-left: 5px solid #07508a;
  background: #f5f8fb;
  color: #163b58;
  font-size: 1.05em;
  line-height: 1.75;
  font-style: italic;
  overflow-wrap: anywhere;
}

.cba-site-wrapper blockquote > :last-child {
  margin-bottom: 0;
}

.cba-site-wrapper blockquote cite {
  display: block;
  margin-top: 0.75rem;
  font-size: 0.9em;
  font-style: normal;
  font-weight: 600;
}

.cba-main table:not(:where(.cba-events__month-grid table)) {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  margin-bottom: 1rem;
  font-size: 0.95rem;
  line-height: 1.6;
}

.cba-main table:not(:where(.cba-events__month-grid table)) caption {
  padding: 0.75rem 0;
  color: #163b58;
  font-weight: 700;
  text-align: left;
}

.cba-main table:not(:where(.cba-events__month-grid table)) th,
.cba-main table:not(:where(.cba-events__month-grid table)) td {
  border: 1px solid #486578;
  padding: 0.9rem;
  vertical-align: top;
  overflow-wrap: break-word;
}

.cba-main table:not(:where(.cba-events__month-grid table)) thead th {
  background: #407899;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 700;
  text-align: left;
}

.cba-main table:not(:where(.cba-events__month-grid table)) thead th a {
  color: inherit;
}

.cba-main table:not(:where(.cba-events__month-grid table)) tbody tr,
.cba-main table:not(:where(.cba-events__month-grid table)) tbody td {
  background: #ffffff;
  color: #3a3a3a;
}

.cba-main table:not(:where(.cba-events__month-grid table)) tbody th {
  background: #edf4f8;
  color: #163b58;
  font-weight: 600;
  text-align: left;
}

.cba-main table:not(:where(.cba-events__month-grid table)) tfoot th,
.cba-main table:not(:where(.cba-events__month-grid table)) tfoot td {
  background: #edf4f8;
  color: #163b58;
  font-weight: 700;
}

.cba-main table:not(:where(.cba-events__month-grid table)).cba-table--wide {
  min-width: 40rem;
}

.cba-main .table-responsive {
  max-width: 100%;
  margin-bottom: 1.25rem;
}

.cba-main .table-responsive:focus-visible {
  outline: 3px solid #07508a;
  outline-offset: 2px;
}

.cba-site-wrapper .messages:not(:has(.messages__content)),
.cba-site-wrapper .alert:not(:where([data-drupal-messages] .alert)) {
  border: 1px solid var(--cba-message-border, #07508a);
  border-left-width: 5px;
  border-radius: 4px;
  padding: 1rem 1.25rem;
  margin: 0 0 1rem;
  background: var(--cba-message-bg, #edf4fb);
  color: var(--cba-message-text, #12335f);
  box-shadow: none;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.cba-site-wrapper .messages:not(:has(.messages__content)) p:last-child,
.cba-site-wrapper .alert:not(:where([data-drupal-messages] .alert)) p:last-child {
  margin-bottom: 0;
}

.cba-site-wrapper .messages:not(:has(.messages__content)) a,
.cba-site-wrapper .alert:not(:where([data-drupal-messages] .alert)) a {
  color: inherit;
}

.cba-site-wrapper [data-drupal-messages].alert-wrapper {
  position: static;
  inset: auto;
  width: 100%;
  max-height: none;
  margin: 1rem 0;
  z-index: auto;
}

.cba-site-wrapper [data-drupal-messages] :is(.messages__wrapper, .messages__content, .alert) {
  width: 100%;
  max-width: 100%;
  margin-inline: 0;
  box-shadow: none;
}

.cba-site-wrapper [data-drupal-messages] .messages__wrapper {
  padding-inline: 0;
}

.cba-site-wrapper [data-drupal-messages] a {
  color: inherit;
}

.cba-site-wrapper :is(.messages--status, .alert-success) {
  --cba-message-bg: #eef8f1;
  --cba-message-border: #2f8f46;
  --cba-message-text: #1f5f2f;
}

.cba-site-wrapper :is(.messages--warning, .alert-warning) {
  --cba-message-bg: #fff7e6;
  --cba-message-border: #c48c0e;
  --cba-message-text: #6f4a00;
}

.cba-site-wrapper :is(.messages--error, .alert-danger) {
  --cba-message-bg: #fdeeee;
  --cba-message-border: #c43b3b;
  --cba-message-text: #7a1f1f;
}

.cba-main :is(nav.breadcrumb,
nav[aria-label=breadcrumb i],
nav[aria-labelledby=system-breadcrumb]) {
  padding: 0;
  background: none;
  border: 0;
  color: #536477;
  font-size: 0.95rem;
}

.cba-main :is(nav.breadcrumb,
nav[aria-label=breadcrumb i],
nav[aria-labelledby=system-breadcrumb]) ol,
.cba-main :is(nav.breadcrumb,
nav[aria-label=breadcrumb i],
nav[aria-labelledby=system-breadcrumb]) ul {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.25rem 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.cba-main :is(nav.breadcrumb,
nav[aria-label=breadcrumb i],
nav[aria-labelledby=system-breadcrumb]) li {
  display: inline-flex;
  align-items: baseline;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

.cba-main :is(nav.breadcrumb,
nav[aria-label=breadcrumb i],
nav[aria-labelledby=system-breadcrumb]) li + li::before {
  content: "/";
  padding: 0 0.5rem;
  color: #71818e;
}

.cba-site-wrapper :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=range]):not([type=color]),
select,
textarea) {
  box-sizing: border-box;
  display: block;
  width: 100%;
  max-width: 42rem;
  min-width: 0;
  min-height: 48px;
  padding: 0.7rem 0.9rem;
  border: 1px solid #8498aa;
  border-radius: 4px;
  background: #ffffff;
  color: #163b58;
  font: inherit;
  line-height: 1.5;
  box-shadow: none;
}

.cba-site-wrapper :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=range]):not([type=color]),
select,
textarea):focus {
  border-color: #07508a;
  box-shadow: none;
}

.cba-site-wrapper :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=range]):not([type=color]),
select,
textarea):focus-visible {
  outline: 3px solid #07508a;
  outline-offset: 2px;
}

.cba-site-wrapper :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=range]):not([type=color]),
select,
textarea):disabled {
  background: #e9eef2;
  color: #536477;
  cursor: not-allowed;
}

.cba-site-wrapper :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=range]):not([type=color]),
select,
textarea)[readonly] {
  background: #f5f8fb;
}

.cba-site-wrapper :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=range]):not([type=color]),
select,
textarea).error,
.cba-site-wrapper :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]):not([type=range]):not([type=color]),
select,
textarea)[aria-invalid=true] {
  border-color: #a3202a;
}

.cba-site-wrapper textarea {
  min-height: 10rem;
  resize: vertical;
}

.cba-site-wrapper select[multiple] {
  min-height: 9rem;
  height: auto;
}

.cba-site-wrapper input:is([type=date],
[type=time],
[type=datetime-local],
[type=month],
[type=week]) {
  max-width: 18rem;
}

.cba-site-wrapper input[type=file] {
  padding: 0.4rem;
}

.cba-site-wrapper input[type=file]::file-selector-button {
  border: 0;
  border-radius: 3px;
  padding: 0.5rem 0.75rem;
  margin-right: 0.6rem;
  background: #07508a;
  color: #ffffff;
  font: inherit;
  cursor: pointer;
}

.cba-site-wrapper input:is([type=checkbox], [type=radio]) {
  position: static;
  float: none;
  width: 20px;
  height: 20px;
  min-width: 20px;
  padding: 0;
  margin: 0.15rem 0 0;
  accent-color: #07508a;
}

.cba-site-wrapper input:is([type=checkbox],
[type=radio],
[type=range],
[type=color]):focus-visible {
  outline: 3px solid #07508a;
  outline-offset: 3px;
}

.cba-site-wrapper input[type=range] {
  width: 100%;
  max-width: 42rem;
  accent-color: #07508a;
}

.cba-site-wrapper input[type=color] {
  width: 4rem;
  min-height: 48px;
  padding: 0.25rem;
}

.cba-main form:not(:where(.cba-search-form)) .js-form-item,
.cba-main form:not(:where(.cba-search-form)) .form-group {
  min-width: 0;
  margin-bottom: 1.35rem;
}

.cba-main form:not(:where(.cba-search-form)) .js-form-item > label,
.cba-main form:not(:where(.cba-search-form)) .form-group > label {
  display: block;
  margin: 0 0 0.5rem;
  color: #163b58;
  font-weight: 600;
  line-height: 1.5;
}

.cba-main form:not(:where(.cba-search-form)) .description,
.cba-main form:not(:where(.cba-search-form)) .help-block {
  display: block;
  margin-top: 0.5rem;
  color: #536477;
  font-size: 0.875rem;
  line-height: 1.5;
}

.cba-main form:not(:where(.cba-search-form)) fieldset {
  min-width: 0;
  max-width: 100%;
  margin: 0 0 1.5rem;
  padding: 1.25rem;
  border: 1px solid #c9d7e2;
  border-radius: 4px;
  background: #f5f8fb;
}

.cba-main form:not(:where(.cba-search-form)) legend {
  float: none;
  width: auto;
  margin: 0;
  padding: 0 0.4rem;
  color: #163b58;
  font-size: 1.1rem;
  font-weight: 700;
}

.cba-main form:not(:where(.cba-search-form)) .js-form-type-checkbox,
.cba-main form:not(:where(.cba-search-form)) .js-form-type-radio,
.cba-main form:not(:where(.cba-search-form)) .form-check {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: start;
  gap: 0 0.65rem;
  padding-left: 0;
  margin-bottom: 0.75rem;
}

.cba-main form:not(:where(.cba-search-form)) .js-form-type-checkbox > input,
.cba-main form:not(:where(.cba-search-form)) .js-form-type-radio > input,
.cba-main form:not(:where(.cba-search-form)) .form-check > input {
  grid-column: 1;
}

.cba-main form:not(:where(.cba-search-form)) .js-form-type-checkbox > label,
.cba-main form:not(:where(.cba-search-form)) .js-form-type-radio > label,
.cba-main form:not(:where(.cba-search-form)) .form-check > label {
  grid-column: 2;
  margin: 0;
  font-weight: 400;
}

.cba-main form:not(:where(.cba-search-form)) .js-form-type-checkbox > .description,
.cba-main form:not(:where(.cba-search-form)) .js-form-type-radio > .description,
.cba-main form:not(:where(.cba-search-form)) .form-check > .description {
  grid-column: 2;
}

.cba-main form:not(:where(.cba-search-form)) .form-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin-top: 1.5rem;
}

.cba-main form:not(:where(.cba-search-form)) .form-actions > .button {
  margin: 0;
}

.cba-main form:not(:where(.cba-search-form)) .password-parent,
.cba-main form:not(:where(.cba-search-form)) .confirm-parent,
.cba-main form:not(:where(.cba-search-form)) .password-strength,
.cba-main form:not(:where(.cba-search-form)) .password-confirm {
  width: 100%;
  max-width: 42rem;
  float: none;
}

.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]) {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  max-width: 100%;
  margin-bottom: 0.35rem;
  padding: 0.75rem 1.25rem;
  border: 1px solid #07508a;
  border-radius: 4px;
  background: #07508a;
  color: #ffffff !important;
  font: inherit;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  white-space: normal;
  cursor: pointer;
  transition: background-color 0.18s ease, border-color 0.18s ease;
}

.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]):hover,
.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]):active,
.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]).active {
  background: #12335f;
  border-color: #12335f;
  color: #ffffff !important;
  transform: none;
}

.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]):focus-visible {
  outline: 3px solid #ad8000;
  outline-offset: 3px;
}

.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]):disabled,
.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit])[aria-disabled=true] {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]).btn-outline,
.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]).button-outline,
.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]).cba-button-secondary {
  background: transparent;
  color: #07508a !important;
}

.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]).btn-outline:hover,
.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]).button-outline:hover,
.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]).cba-button-secondary:hover {
  background: #07508a;
  color: #ffffff !important;
}

.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]).btn-danger,
.cba-site-wrapper :is(.button,
.btn,
input[type=submit],
input[type=button],
input[type=reset],
button[type=submit]).button--danger {
  background: #a3202a;
  border-color: #a3202a;
}

.cba-site-wrapper .cba-header__search-form button {
  margin: 0;
  min-height: 50px;
  border-radius: 0 4px 4px 0;
}

.cba-main :is(.pager__items, .pagination) {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.35rem;
  padding: 0;
  list-style: none;
}

.cba-main :is(.pager__items, .pagination) > li {
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
  margin: 0;
  list-style: none;
}

.cba-main :is(.pager__items, .pagination) > li > a,
.cba-main :is(.pager__items, .pagination) > li > span:not(.visually-hidden) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 0.5rem 0.75rem;
  border: 1px solid #c9d7e2;
  border-radius: 4px;
  background: #ffffff;
  color: #07508a;
  line-height: 1.3;
}

.cba-main :is(.pager__items, .pagination) > li > a:hover {
  background: #edf4f8;
  border-color: #07508a;
}

.cba-main :is(.pager__items, .pagination) > li > a:focus-visible {
  outline: 3px solid #ad8000;
  outline-offset: 2px;
}

.cba-main :is(.pager__items, .pagination) > li:is(.is-active, .active) > :is(a, span),
.cba-main :is(.pager__items, .pagination) a[aria-current=page] {
  color: #ffffff;
  background: #07508a;
  border-color: #07508a;
}

.cba-main :is(.pager__items, .pagination) a > span {
  display: inline;
  min-width: 0;
  min-height: 0;
  padding: 0;
  margin: 0;
  border: 0;
  background: none;
  box-shadow: none;
  color: inherit;
  line-height: inherit;
}

.cba-main :is(.pager__items, .pagination) > li.pager__item--ellipsis {
  padding: 0.5rem;
  color: #536477;
}

.cba-main .simple-styleguide--site-styles {
  max-width: none;
}

.cba-main .simple-styleguide--site-styles .simple-styleguide--sectionhead {
  color: #07508a;
  border-top-color: #c9d7e2;
  border-bottom: 3px solid #07508a;
  margin-top: 3rem;
}

.cba-main .simple-styleguide--site-styles .simple-styleguide code {
  color: #536477;
  background: #f5f8fb;
  overflow-wrap: anywhere;
}

.cba-main .simple-styleguide--site-styles pre {
  max-width: 100%;
  overflow-x: auto;
}

@media (prefers-reduced-motion: reduce) {
  .cba-site-wrapper :is(.button,
  .btn,
  input[type=submit],
  input[type=button],
  input[type=reset],
  button[type=submit]) {
    transition: none;
  }
}
