.pricing-notice {
  margin: 0 0 18px;
  padding: 12px 16px;
  color: #254f40;
  background: #eaf4ee;
  border: 1px solid #cfe3d6;
  border-radius: 10px;
  font-size: .9375rem;
  line-height: 1.6;
}

.pricing-notice strong { margin-right: 6px; }

.pricing-grid { margin-right: -8px; margin-left: -8px; }
.pricing-grid > .pricing-column { padding: 0 8px 16px; }

.pricing-card {
  width: 100%;
  min-width: 0;
  padding: 20px;
  border: 1px solid #dbe2dc;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(22, 38, 33, .045);
  word-wrap: break-word;
}

.pricing-featured {
  padding-top: 18px;
  border-color: #5a927b;
  border-top: 3px solid #0d6b53;
  background: #f5faf7;
}

.pricing-card-meta {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 0 12px;
  font-size: .8125rem;
  font-weight: 700;
  line-height: 1.45;
}

.pricing-tier, .pricing-badge {
  display: inline-block;
  margin: 0 5px 3px 0;
  padding: 3px 9px;
  border-radius: 6px;
}

.pricing-tier { color: #245144; background: #edf4ef; }
.pricing-badge { margin-right: 0; color: #fff; background: #0d6b53; }
.pricing-card h3 { margin: 0 0 4px; font-size: 1.25rem; font-weight: 700; line-height: 1.25; }
.pricing-quota { margin: 0 0 14px; color: #245144; font-size: .9375rem; font-weight: 600; }

.pricing-price {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: baseline;
  align-items: baseline;
  margin: 0 0 10px;
  color: #162621;
  line-height: 1.14;
}

.pricing-price strong {
  margin-right: 7px;
  font-size: 2.45rem;
  font-weight: 700;
  letter-spacing: -.045em;
  white-space: nowrap;
}

.pricing-price span { color: #4d5d56; font-size: .875rem; }
.pricing-description { margin: 0 0 15px; color: #4d5d56; line-height: 1.55; }

.pricing-features {
  margin: auto 0 16px;
  padding: 11px 0 0;
  border-top: 1px solid #dbe2dc;
  color: #354941;
  font-size: .9375rem;
  line-height: 1.5;
  list-style: none;
}

.pricing-features li { position: relative; margin: 5px 0; padding-left: 20px; }
.pricing-features li::before {
  content: "";
  position: absolute;
  left: 3px;
  top: .28em;
  width: 6px;
  height: 10px;
  border: solid #0d6b53;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.pricing-card .pricing-action {
  display: block;
  min-height: 48px;
  padding: 11px 12px;
  font-size: 1rem;
  line-height: 1.5;
}

@media (max-width: 575.98px) {
  .pricing-notice, .pricing-features { font-size: 1rem; }
  .pricing-notice strong { display: block; margin: 0 0 3px; }
  .pricing-card h3 { font-size: 1.375rem; }
  .pricing-price strong { font-size: 2.625rem; }
}

@media (min-width: 1280px) {
  .pricing-grid > .pricing-column { -ms-flex: 0 0 20%; flex: 0 0 20%; max-width: 20%; }
  .pricing-card { padding-right: 17px; padding-left: 17px; }
}
