table.comparison-table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  table-layout: fixed;
}
table.comparison-table tr {
  padding: 0.35em;
}
@media screen and (min-width: 860px) {
  table.comparison-table tr:last-of-type td {
    border: none;
  }
}
table.comparison-table tr:last-of-type td.column-highlight {
  border: var(--border-width) solid var(--accent-color);
  border-top: none;
  border-radius: 0 0 var(--border-radius-sm) var(--border-radius-sm);
}
table.comparison-table th,
table.comparison-table td {
  padding: 1rem;
  border-bottom: var(--border-width) dotted var(--border-color);
  vertical-align: baseline;
}
table.comparison-table th.column-highlight,
table.comparison-table td.column-highlight {
  border-right: var(--border-width) solid var(--accent-color);
  border-left: var(--border-width) solid var(--accent-color);
}
table.comparison-table th {
  text-align: left;
}
table.comparison-table th.column-highlight {
  border-top: var(--border-width) solid;
  border-left: var(--border-width) solid;
  border-right: var(--border-width) solid;
  border-radius: var(--border-radius-sm) var(--border-radius-sm) 0 0;
}
@media screen and (max-width: 860px) {
  table.comparison-table thead {
    border: none;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  table.comparison-table tr {
    display: block;
    margin-bottom: 0.625em;
  }
  table.comparison-table td {
    border-bottom: var(--border-width) solid #ddd;
    display: block;
    text-align: right;
  }
  table.comparison-table td::before {
    content: attr(data-label);
    float: left;
    font-weight: 700;
  }
  table.comparison-table td.column-highlight {
    border: var(--border-width) solid var(--accent-color) !important;
    border-radius: 0 !important;
  }
}
table.comparison-table img {
  margin: auto;
}

