.plan-page {
  min-height: calc(100vh - 190px);
  padding: 46px 20px 70px;
  background: #000;
  color: #c4d8a8;
}
.plan-page .lms-shell {
  width: min(1440px, 100%);
  margin-inline: auto;
}
.home .plan-page { padding-top: 0; }
.plan-heading {
  text-align: center;
  margin: 30px 0 65px;
}
.plan-heading .eyebrow {
  color: #d4861a;
  font: 400 14px/13.5px "Share Tech Mono", monospace;
  letter-spacing: 2.7px;
}
.plan-heading h1 {
  margin: 8px 0 0;
  color: #c4d8a8;
  font: 700 46px/51px Rajdhani, sans-serif;
  letter-spacing: .75px;
}
.plan-heading mark { background: none; color: #5c9e35; }
.plan-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.plan-card {
  --plan-edge: rgba(92, 158, 53, .6);
  position: relative;
  height: 368px;
  min-height: 368px;
  padding: 64px;
  display: flex;
  flex-direction: column;
  background: #0d1509;
  border: 0;
}
.plan-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(var(--plan-edge), var(--plan-edge)) left top / 58px 1px no-repeat,
    linear-gradient(var(--plan-edge), var(--plan-edge)) right top / 58px 1px no-repeat,
    linear-gradient(var(--plan-edge), var(--plan-edge)) left bottom / 58px 1px no-repeat,
    linear-gradient(var(--plan-edge), var(--plan-edge)) right bottom / 58px 1px no-repeat,
    linear-gradient(var(--plan-edge), var(--plan-edge)) left top / 1px 58px no-repeat,
    linear-gradient(var(--plan-edge), var(--plan-edge)) right top / 1px 58px no-repeat,
    linear-gradient(var(--plan-edge), var(--plan-edge)) left bottom / 1px 58px no-repeat,
    linear-gradient(var(--plan-edge), var(--plan-edge)) right bottom / 1px 58px no-repeat;
}
.plan-card__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
}
.plan-card .eyebrow {
  color: #8a9e82;
  font: 400 9px/13.5px "Share Tech Mono", monospace;
  letter-spacing: 2.7px;
}
.plan-card h2 {
  margin: 8px 0 0;
  color: #d8dcd2;
  font: 700 24px/32px Rajdhani, sans-serif;
  letter-spacing: .6px;
}
.plan-card__price {
  color: #5c9e35;
  font: 700 30px/36px Rajdhani, sans-serif;
  letter-spacing: 0;
  white-space: nowrap;
}
.plan-card__price .amount,
.plan-card__price bdi { color: inherit; }
.plan-card ul {
  margin: 38px 0 0;
  padding: 0;
  list-style: none;
  color: #8a9e82;
}
.plan-card li { font: 600 16px/20px "Barlow Condensed", sans-serif; }
.plan-card li + li { margin-top: 4px; }
.plan-card li::before {
  content: "\25AA";
  margin-right: 16px;
  color: #5c9e35;
}
.plan-card a {
  margin-top: auto;
  color: #c4d8a8;
  text-decoration: none;
  font: 400 16px/15px "Share Tech Mono", monospace;
  letter-spacing: 2.5px;
}
.plan-card__purchased {
  margin-top: auto;
  color: var(--primary);
  font: 400 16px/15px "Share Tech Mono", monospace;
  letter-spacing: 2.5px;
}
.plan-card--paid { --plan-edge: #d4861a; }
.plan-card--paid .eyebrow,
.plan-card--paid .plan-card__price,
.plan-card--paid a,
.plan-card--paid li::before { color: #d4861a; }
.plan-card__pricing {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: 0 12px;
}
.plan-card__badge {
  padding: 4px 12px;
  border-radius: 30px;
  background: #d4861a;
  color: #1e5200;
  font: 700 12px/12px Rajdhani, sans-serif;
  letter-spacing: 1.6px;
}
.plan-card__pricing small {
  grid-column: 2;
  color: #8a9e82;
  text-align: right;
  font: 400 8px/12px "Share Tech Mono", monospace;
  letter-spacing: .8px;
}
@media (max-width: 1000px) {
  .plan-grid { grid-template-columns: 1fr; }
}
@media (max-width: 650px) {
  .plan-page { padding-inline: 14px; }
  .plan-heading h1 { font-size: 32px; line-height: 34px; }
  .plan-card { min-height: 330px; height: auto; padding: 30px; }
  .plan-card__top { gap: 14px; }
  .plan-card__pricing { grid-template-columns: 1fr; justify-items: end; }
  .plan-card__pricing small { grid-column: 1; }
}
