/* Keep the original ribbon height while placing both permanent-plan labels on one line. */
.membership-reference .pricing-page .offer-permanent .offer-ribbon {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1px;
  min-height: 50px;
  padding-right: 9px !important;
  padding-bottom: 9px !important;
}
.membership-reference .pricing-page .offer-ribbon-kicker {
  display: block;
  order: 2;
  flex: 0 1 auto;
  white-space: nowrap;
  font-size: clamp(11px, .85vw, 15px);
  font-weight: 800;
  letter-spacing: -1.1px;
  line-height: 1.2;
}
@supports (-webkit-background-clip: text) {
  .membership-reference .pricing-page .offer-3 .offer-ribbon-kicker {
    background: linear-gradient(180deg, #fff 0%, #a8caff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
  }
  .membership-reference.dark .pricing-page .offer-3 .offer-ribbon-kicker {
    background-image: linear-gradient(180deg, #fff 0%, #c1afff 100%);
  }
  .membership-reference .pricing-page .offer-4 .offer-ribbon-kicker {
    background: linear-gradient(180deg, #fff 0%, #ffc480 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
  }
}
.membership-reference .pricing-page .offer-ribbon-label {
  display: inline-flex;
  order: 1;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.2;
}
.membership-reference .pricing-page .offer-grade-crown {
  display: block;
  flex: 0 0 13px;
  width: 13px;
  height: 13px;
}
@media (max-width: 1200px) {
  .membership-reference .pricing-page .offer-permanent .offer-ribbon {
    min-height: 50px;
    align-items: flex-end;
    padding-top: 10px !important;
  }
}
@media (max-width: 760px) {
  .membership-reference .pricing-page .offer-permanent .offer-ribbon {
    min-height: 54px;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: 5px;
  }
  .membership-reference .pricing-page .offer-permanent .offer-ribbon-kicker {
    align-self: flex-end;
    order: 2;
    font-size: min(22px, 5.6vw);
  }
  .membership-reference .pricing-page .offer-permanent .offer-ribbon-label { order: 1; }
}

/* Forty-percent tint of the annual cards' cyan action button over white. */
body.membership-reference:not(.dark) .pricing-page .offer-card.offer-0:not(.offer-permanent) .offer-ribbon,
body.membership-reference:not(.dark) .pricing-page .offer-card.offer-1:not(.offer-permanent) .offer-ribbon {
  background: #a9e9f5 !important;
}

/* Savings follow each plan's accent color in both themes. */
body.membership-reference:not(.dark) .pricing-page .offer-0 .offer-saving,
body.membership-reference:not(.dark) .pricing-page .offer-1 .offer-saving { color: #158ba6; }
body.membership-reference:not(.dark) .pricing-page .offer-3 .offer-saving { color: #276dea; }
body.membership-reference:not(.dark) .pricing-page .offer-2 .offer-saving { color: #a8613b; }
body.membership-reference:not(.dark) .pricing-page .offer-4 .offer-saving { color: #d95e16; }

body.membership-reference.dark .pricing-page .offer-0 .offer-saving,
body.membership-reference.dark .pricing-page .offer-1 .offer-saving { color: #7cd9ea; }
body.membership-reference.dark .pricing-page .offer-3 .offer-saving { color: #6095f6; }
body.membership-reference.dark .pricing-page .offer-2 .offer-saving { color: #edaf86; }
body.membership-reference.dark .pricing-page .offer-4 .offer-saving { color: #ffad74; }
