/* BravoFin pricing proposal: scoped to the new section only. */
.bf-pricing {
  padding: 80px 0 72px;
  background: #101e2c;
  color: #f5f0e5;
  border-top: 1px solid #d8bf803d;
  border-bottom: 1px solid #d8bf803d;
}
.bf-pricing .bf-pricing__head {
  display: grid; grid-template-columns: 1.3fr 1fr;
  align-items: end; gap: 64px; margin-bottom: 38px;
}
.bf-pricing .bf-pricing__eyebrow {
  margin: 0 0 17px; color: #d8bf80;
  font: 700 11px/1.5 Arial,sans-serif; letter-spacing: 2.2px;
}
.bf-pricing h2.bf-pricing__title {
  margin: 0; color: #f5f0e5;
  font: 400 clamp(36px,3.2vw,48px)/1.12 Georgia,'Times New Roman',serif;
  letter-spacing: -.8px; text-wrap: balance;
}
.bf-pricing .bf-pricing__title span { color: #d8bf80; }
.bf-pricing p.bf-pricing__intro {
  margin: 0; max-width: 430px; color: #c7cfd6;
  font: 400 16px/1.65 Arial,sans-serif;
}
.bf-pricing .bf-pricing__grid {
  display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px;
}
.bf-pricing article.bf-pricing__card {
  min-width: 0; padding: 28px 27px 27px;
  display: flex; flex-direction: column; align-items: stretch;
  background: linear-gradient(155deg,#24374a,#172737);
  border: 1px solid #d6cda62e; border-radius: 4px;
  box-shadow: 0 14px 30px #0000001a;
}
.bf-pricing .bf-pricing__number {
  margin-bottom: 20px; color: #d8bf80; font: 400 13px/1 Arial,sans-serif;
  letter-spacing: 1.5px;
}
.bf-pricing h3.bf-pricing__name {
  min-height: 62px; margin: 0 0 25px;
  color: #f6f1e8; font: 400 26px/1.18 Georgia,'Times New Roman',serif;
  letter-spacing: -.25px; text-wrap: balance;
}
.bf-pricing p.bf-pricing__price {
  margin: 0; color: #e1c98c; white-space: nowrap;
  font: 400 clamp(31px,2.65vw,39px)/1.15 Georgia,'Times New Roman',serif;
  letter-spacing: -.8px; font-variant-numeric: lining-nums tabular-nums;
}
.bf-pricing .bf-pricing__price small {
  display: inline; font: 400 17px/1.2 Arial,sans-serif; letter-spacing: 0;
}
.bf-pricing p.bf-pricing__payment {
  min-height: 43px; margin: 10px 0 23px; color: #c7cfd6;
  font: 400 14px/1.5 Arial,sans-serif;
}
.bf-pricing .bf-pricing__list {
  margin: 0; padding: 22px 0 0; list-style: none;
  border-top: 1px solid #d8bf8033; flex: 1;
}
.bf-pricing .bf-pricing__list li {
  position: relative; margin: 0 0 13px; padding: 0 0 0 17px;
  color: #e1e5e8; font: 400 15px/1.55 Arial,sans-serif;
}
.bf-pricing .bf-pricing__list li:last-child { margin-bottom: 0; }
.bf-pricing .bf-pricing__list li::before {
  content: ''; position: absolute; left: 0; top: .68em;
  width: 5px; height: 5px; background: #d8bf80; border-radius: 50%;
}
.bf-pricing .bf-pricing__bottom {
  display: grid; grid-template-columns: 1fr auto; align-items: center;
  gap: 32px; margin-top: 35px; padding-top: 28px;
  border-top: 1px solid #d8bf8038;
}
.bf-pricing p.bf-pricing__terms {
  margin: 0; max-width: 670px; color: #d8dee4; font: 400 15px/1.65 Arial,sans-serif;
}
.bf-pricing .bf-pricing__action { text-align: center; }
.bf-pricing .bf-pricing__action .button {
  min-height: 50px; padding: 14px 22px; font-size: 14px;
}
.bf-pricing .bf-pricing__action small {
  margin-top: 11px; color: #c7cfd6; font: 400 12px/1.5 Arial,sans-serif;
}
.bf-pricing p.bf-pricing__note {
  margin: 21px 0 0; max-width: 920px; color: #aebbc7;
  font: 400 13px/1.6 Arial,sans-serif;
}
@media (min-width:641px) and (max-width:1000px) {
  .bf-pricing { padding: 62px 0; }
  .bf-pricing .bf-pricing__head { gap: 25px; }
  .bf-pricing .bf-pricing__grid { gap: 12px; }
  .bf-pricing article.bf-pricing__card { padding: 23px 17px; }
  .bf-pricing h3.bf-pricing__name { font-size: 22px; min-height: 78px; }
  .bf-pricing p.bf-pricing__price { font-size: 29px; }
  .bf-pricing .bf-pricing__price small { font-size: 14px; }
  .bf-pricing .bf-pricing__list li { font-size: 14px; }
  .bf-pricing .bf-pricing__bottom { grid-template-columns: 1fr; gap: 26px; }
  .bf-pricing .bf-pricing__action { justify-self: start; }
}
@media (max-width:640px) {
  .bf-pricing { padding: 48px 0; }
  .bf-pricing .bf-pricing__head { grid-template-columns: 1fr; gap: 20px; margin-bottom: 26px; }
  .bf-pricing h2.bf-pricing__title { font-size: clamp(30px,8vw,36px); letter-spacing: -.5px; }
  .bf-pricing p.bf-pricing__intro { font-size: 16px; }
  .bf-pricing .bf-pricing__grid { grid-template-columns: 1fr; gap: 16px; }
  .bf-pricing article.bf-pricing__card { padding: 25px 23px 27px; }
  .bf-pricing .bf-pricing__number { margin-bottom: 17px; }
  .bf-pricing h3.bf-pricing__name { min-height: 0; margin-bottom: 20px; font-size: 27px; }
  .bf-pricing p.bf-pricing__price { font-size: 38px; }
  .bf-pricing p.bf-pricing__payment { min-height: 0; margin-bottom: 21px; }
  .bf-pricing .bf-pricing__list li { font-size: 15px; }
  .bf-pricing .bf-pricing__bottom { grid-template-columns: 1fr; gap: 26px; margin-top: 28px; padding-top: 24px; }
  .bf-pricing .bf-pricing__action { width: 100%; }
  .bf-pricing .bf-pricing__action .button { width: 100%; font-size: 14px; padding: 14px 12px; }
  .bf-pricing p.bf-pricing__note { font-size: 13px; }
}
@media (max-width:359px) {
  .bf-pricing article.bf-pricing__card { padding-left: 19px; padding-right: 19px; }
  .bf-pricing p.bf-pricing__price { font-size: 32px; }
  .bf-pricing .bf-pricing__action .button { font-size: 12px; }
}

.bf-pricing .bf-pricing__alternatives {
  margin-top: 38px; padding-top: 34px; border-top: 1px solid #d8bf8038;
}
.bf-pricing .bf-pricing__alternatives-head {
  display: grid; grid-template-columns: 1fr 1.1fr; gap: 50px; align-items: start;
  margin-bottom: 25px;
}
.bf-pricing h3.bf-pricing__alternatives-title {
  margin: 0; color: #f5f0e5; font: 400 32px/1.2 Georgia,'Times New Roman',serif;
  letter-spacing: -.4px;
}
.bf-pricing .bf-pricing__alternatives-title span { color: #d8bf80; }
.bf-pricing p.bf-pricing__alternatives-intro {
  margin: 0; color: #c7cfd6; font: 400 15px/1.65 Arial,sans-serif;
}
.bf-pricing .bf-pricing__fees {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
  column-gap: 34px; margin: 0;
}
.bf-pricing .bf-pricing__fee {
  min-width: 0; display: grid; grid-template-columns: minmax(0,1fr) auto;
  gap: 22px; align-items: center; padding: 20px 0;
  border-bottom: 1px solid #d8bf8029;
}
.bf-pricing .bf-pricing__fee dt { color: #e1e5e8; font: 400 15px/1.5 Arial,sans-serif; }
.bf-pricing .bf-pricing__fee dd {
  margin: 0; color: #e1c98c; font: 400 20px/1.4 Georgia,'Times New Roman',serif;
  white-space: nowrap;
}
.bf-pricing p.bf-pricing__scope-note {
  margin: 20px 0 0; color: #aebbc7; font: 400 13px/1.6 Arial,sans-serif;
}
@media (max-width:800px) {
  .bf-pricing .bf-pricing__alternatives-head { grid-template-columns: 1fr; gap: 17px; }
  .bf-pricing .bf-pricing__fees { grid-template-columns: 1fr; }
}
@media (max-width:640px) {
  .bf-pricing .bf-pricing__alternatives { margin-top: 30px; padding-top: 29px; }
  .bf-pricing h3.bf-pricing__alternatives-title { font-size: 29px; }
  .bf-pricing .bf-pricing__fee { gap: 15px; padding: 18px 0; }
  .bf-pricing .bf-pricing__fee dd { font-size: 19px; }
  .bf-pricing .bf-pricing__fee dt { font-size: 14px; }
}

/* T1823: desktop intro follows the slogan across the section width. */
.bf-pricing .bf-pricing__desktop-copy { display: none; }
@media (min-width:1024px) {
  .bf-pricing .bf-pricing__full-copy { display: none; }
  .bf-pricing .bf-pricing__desktop-copy { display: inline; }
  .bf-pricing .bf-pricing__head, .bf-pricing .bf-pricing__alternatives-head { grid-template-columns: minmax(0,1fr); gap: 22px; }
  .bf-pricing p.bf-pricing__intro { max-width: none; width: 100%; font-size: 17.6px; }
  .bf-pricing p.bf-pricing__alternatives-intro { max-width: none; width: 100%; font-size: 16.5px; }
  .bf-pricing .bf-pricing__fees { border-top: 1px solid #d8bf8080; padding-top: 6px; }
}

/* Desktop consultation text belongs beside the contract terms, not below the action. */
.bf-pricing .bf-pricing__desktop-consult { display: none; }
@media (min-width:1024px) {
  .bf-pricing .bf-pricing__desktop-consult { display: inline; font: inherit; }
  .bf-pricing .bf-pricing__action > small { display: none; }
}
