/* ===== 0% finance: three-option comparison (shared) ===== */
.fin {
  padding: 56px 20px 64px;
  background: #fff7f0;
  border-top: 4px solid #ff6b00;
  scroll-margin-top: 90px;
}
.fin__inner { max-width: 1120px; margin: 0 auto; }
.fin__head { text-align: center; max-width: 760px; margin: 0 auto 28px; }
.fin__badge {
  display: inline-block; background: #ff6b00; color: #fff;
  font: 900 0.75rem/1 'Lato', sans-serif; text-transform: uppercase; letter-spacing: 1px;
  padding: 7px 16px; border-radius: 999px; margin-bottom: 14px;
}
.fin__title {
  font-family: 'Lato', sans-serif; font-weight: 900; color: #001b5e;
  font-size: clamp(1.45rem, 3vw, 2.1rem); line-height: 1.2; margin: 0 0 12px;
}
.fin__lead { color: #2d3a55; font-size: 1.05rem; line-height: 1.6; margin: 0; }

.fin__facts {
  list-style: none; padding: 0; margin: 0 auto 32px;
  display: flex; flex-wrap: wrap; justify-content: center; gap: 10px;
}
.fin__facts li {
  background: #fff; border: 1px solid #ffd2b0; color: #001b5e; border-radius: 999px;
  padding: 8px 14px; font-weight: 700; font-size: 0.92rem;
}
.fin__facts li::before { content: "\2713"; color: #1a8a3a; font-weight: 900; margin-right: 6px; }

.fin__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; align-items: stretch; }
.fin-card {
  position: relative; display: flex; flex-direction: column;
  background: #fff; border: 2px solid #e3e7f0; border-radius: 16px;
  padding: 30px 24px 24px; box-shadow: 0 6px 20px rgba(0, 27, 94, 0.06);
}
.fin-card--top { border-color: #ff6b00; box-shadow: 0 10px 28px rgba(255, 107, 0, 0.18); }
.fin-card__tag {
  position: absolute; top: -14px; left: 50%; transform: translateX(-50%);
  background: #001b5e; color: #fff; white-space: nowrap;
  font: 900 0.72rem/1 'Lato', sans-serif; text-transform: uppercase; letter-spacing: 0.8px;
  padding: 7px 14px; border-radius: 999px;
}
.fin-card--top .fin-card__tag { background: #ff6b00; }
.fin-card__opt { margin: 0 0 4px; font-weight: 700; font-size: 0.82rem; text-transform: uppercase; letter-spacing: 0.8px; color: #8a94a8; text-align: center; }
.fin-card__name { margin: 0 0 18px; font: 900 1.2rem/1.25 'Lato', sans-serif; color: #001b5e; text-align: center; }

.fin-card__monthly { text-align: center; margin: 0 0 4px; }
.fin-card__monthly strong { display: block; font: 900 2.6rem/1 'Lato', sans-serif; color: #ff6b00; }
.fin-card__monthly span { display: block; margin-top: 6px; color: #2d3a55; font-weight: 700; font-size: 0.95rem; }

.fin-card__table { width: 100%; border-collapse: collapse; margin: 18px 0 16px; font-size: 0.93rem; }
.fin-card__table th, .fin-card__table td { padding: 8px 0; border-bottom: 1px solid #eef1f6; text-align: left; color: #2d3a55; }
.fin-card__table td { text-align: right; font-weight: 700; color: #001b5e; }
.fin-card__table tr.is-zero td { color: #1a8a3a; }

.fin-card__list { list-style: none; padding: 0; margin: 0 0 20px; flex: 1; }
.fin-card__list li { position: relative; padding-left: 24px; margin-bottom: 8px; font-size: 0.93rem; line-height: 1.45; color: #2d3a55; }
.fin-card__list li::before { content: "\2713"; position: absolute; left: 0; color: #1a8a3a; font-weight: 900; }

.fin-card__btn {
  display: block; text-align: center; text-decoration: none;
  background: #ff6b00; color: #fff; border-radius: 10px; padding: 15px 14px;
  font: 900 1rem/1.2 'Lato', sans-serif; transition: background 0.15s;
}
.fin-card__btn:hover, .fin-card__btn:focus-visible { background: #e05f00; color: #fff; }
.fin-card__btn small { display: block; font-weight: 700; font-size: 0.8rem; opacity: 0.92; margin-top: 3px; }
.fin-card__alt { display: block; text-align: center; margin-top: 10px; font-size: 0.88rem; font-weight: 700; color: #001b5e; }
.fin-card__alt:hover { color: #ff6b00; }

.fin__steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 36px 0 0; padding: 0; list-style: none; counter-reset: finstep; }
.fin__steps li { background: #fff; border-radius: 12px; padding: 18px 18px 18px 62px; position: relative; color: #2d3a55; font-size: 0.93rem; line-height: 1.5; border: 1px solid #f0e0d2; }
.fin__steps li::before {
  counter-increment: finstep; content: counter(finstep);
  position: absolute; left: 16px; top: 16px; width: 32px; height: 32px; border-radius: 50%;
  background: #001b5e; color: #fff; font: 900 1rem/32px 'Lato', sans-serif; text-align: center;
}
.fin__steps strong { display: block; color: #001b5e; font-family: 'Lato', sans-serif; margin-bottom: 2px; }

.fin__plans { margin: 22px auto 0; text-align: center; color: #2d3a55; font-size: 0.95rem; line-height: 1.6; max-width: 820px; }
.fin__small { margin: 14px auto 0; text-align: center; color: #6b7590; font-size: 0.82rem; line-height: 1.55; max-width: 820px; }
.fin__help { text-align: center; margin-top: 18px; font-size: 0.95rem; }
.fin__help a { color: #001b5e; font-weight: 700; }

@media (max-width: 900px) {
  .fin__grid { grid-template-columns: 1fr; max-width: 460px; margin: 0 auto; gap: 30px; }
  .fin__steps { grid-template-columns: 1fr; max-width: 460px; margin-left: auto; margin-right: auto; }
}
@media (max-width: 480px) {
  .fin { padding: 44px 14px 52px; }
  .fin-card { padding: 28px 18px 20px; }
  .fin-card__monthly strong { font-size: 2.3rem; }
}

/* Pay in full by card — QR + button on each option */
.fin-pay { margin-top: 18px; padding: 16px 14px 16px; background: #001b5e; border-radius: 12px; text-align: center; }
.fin-pay__or { margin: 0 0 12px; font: 900 0.95rem/1.2 'Lato', sans-serif; color: #fff; text-transform: uppercase; letter-spacing: .06em; }
.fin-pay__qrlink { display: inline-block; }
.fin-pay__qr { display: block; width: 180px; height: 180px; max-width: 100%; background: #fff; border-radius: 10px; padding: 6px; box-sizing: border-box; margin: 0 auto; }
.fin-pay__scan { margin: 8px 0 12px; font-size: 0.85rem; color: #dfe6ff; }
.fin-pay__btn {
  display: block; text-decoration: none; background: #fff; color: #001b5e; border-radius: 10px;
  padding: 14px 12px; font: 900 1.05rem/1.2 'Lato', sans-serif; border: 3px solid #ff6b00;
}
.fin-pay__btn:hover, .fin-pay__btn:focus-visible { background: #ff6b00; color: #fff; }
.fin-pay__btn small { display: block; font-weight: 700; font-size: 0.78rem; margin-top: 3px; opacity: .85; }
