:root {
  --crp-table-border: 1px solid var(--crp-color-medium-gray);
  --crp-table-border-navy: 1px solid var(--crp-color-navy);
}

table {
  font-size: var(--crp-fs-body-base);
  line-height: var(--crp-lh-body-base);
  inline-size: 100%;
  max-width: 100%;
  border-spacing: 0;
  text-align: left;
  border-collapse: collapse;
}

thead th {
  vertical-align: bottom;
  border-top: var(--crp-table-border);
  border-bottom: var(--crp-table-border);
  background: var(--crp-color-navy);
}
thead th, thead td {
  border-bottom: var(--crp-table-border);
}

th {
  background: var(--crp-color-navy);
  border-top: var(--crp-table-border);
  border-bottom: var(--crp-table-border);
  color: var(--crp-color-white);
  font-weight: var(--crp-fw-bold);
  vertical-align: bottom;
  padding: 12px 8px;
  text-align: left;
}
@media (min-width: 768px) {
  th {
    padding: 20px 16px;
  }
}

td {
  border-bottom: var(--crp-table-border);
  padding: 12px 8px;
  text-align: left;
  vertical-align: top;
}
@media (min-width: 768px) {
  td {
    padding: 20px 16px;
  }
}

caption + thead tr:first-child th,
caption + thead tr:first-child td,
colgroup + thead tr:first-child th,
colgroup + thead tr:first-child td,
thead:first-child tr:first-child th,
thead:first-child tr:first-child td {
  border-top: 0;
}

tbody + tbody {
  border-top: var(--crp-table-border-navy);
}

tr.even,
tr:nth-child(even) {
  background-color: var(--crp-color-off-white);
}

tr.odd,
tr:nth-child(odd) {
  background-color: transparent;
}

.js-table-wrapper {
  max-inline-size: 100%;
  overflow-x: auto;
}