.deck {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(auto-fill, minmax(295px, 1fr));
}

.unit {
  display: flex;
  flex-direction: column;
  padding: 22px;
  background: var(--white);
  border: 1px solid var(--edge);
  border-radius: var(--r);
}

.unit p { font-size: 14.8px; }
.unit p:not(.unit-cost) { flex: 1 1 auto; }

.unit-cost {
  margin: 8px 0 0;
  padding-top: 14px;
  border-top: 1px solid var(--edge);
  color: var(--slate);
  font-size: 17px;
  font-weight: 700;
}
.unit-cost span { display: block; font-size: 13px; font-weight: 400; color: var(--grey); }

.flow {
  display: grid;
  gap: 22px;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: none;
}
.flow li { padding-top: 14px; border-top: 3px solid var(--teal); }
.flow-no {
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--teal);
  letter-spacing: 0.1em;
}
.flow p { font-size: 14.8px; margin: 0; }

.faults { margin: 0; }
.faults dt {
  margin-top: 20px;
  font-weight: 650;
  color: var(--slate);
  font-size: 15.5px;
}
.faults dt:first-of-type { margin-top: 0; }
.faults dd { margin: 5px 0 0; font-size: 15px; }
