/* =============================
   FUND TYPES
============================= */

.fund-card {
  position: relative;

  height: 230px;
  max-width: 360px;
  margin: 0 auto;

  background: url("../images/bg/largest-card-bg.png") no-repeat center;
  background-size: 100% 100%;
}

/* ICON */
.fund-icon {
  position: absolute;
  top: 18px;
  right: 40px;

  width: 42px;
  height: 42px;

  display: flex;
  align-items: center;
  justify-content: center;

  background: #fff;
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-sm);
}

.fund-icon img {
  width: 50px;
}

/* TITLE */
.fund-title {
  position: absolute;
  top: 43px;
  left: 25px;

  transform: translateY(-50%);
  margin: 0;
  font-weight: 600;
}

/* DESCRIPTION */
.fund-desc {
  position: absolute;
  top: 80px;
  left: 30px;
  right: 20px;

  font-size: 0.9rem;
  color: var(--text);
  margin: 0;
}

/* BEST FOR */
.fund-best {
  position: absolute;
  bottom: 25px;
  left: 30px;
  right: 30px;
}

.fund-best span {
  font-size: 0.8rem;
  color: var(--text);
}

/* TAG */
.fund-tag {
  margin-top: 6px;
  padding: 6px 10px;
  background: #f3f3f7;
  border-radius: 6px;
  font-size: 0.85rem;
  border: 1px solid var(--border);
}

/* =============================
   CTA SECTION
============================= */

.cta-box {
  background: var(--primary-dark);
  color: #fff;

  padding: 50px 20px;
  border-radius: var(--radius-lg);
}



.cta-box h2 {
  opacity: 0.9;
  color: white;
}

.cta-box p {
  opacity: 0.9;
}


/* =============================
   INSURANCE TYPES
============================= */

.insurance-card {
  position: relative;

  height: 220px;
  max-width: 360px;
  margin: 0 auto;

  background: url("../images/bg/micro-card-bg.png") no-repeat center;
  background-size: 100% 100%;
}

/* ICON */
.insurance-icon {
  position: absolute;
  top: 25px;
  right: 36px;

  width: 42px;
  height: 42px;

  display: flex;
  align-items: center;
  justify-content: center;

  background: #fff;
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-sm);
}

.insurance-icon img {
  width: 50px;
}

/* TITLE */
.insurance-title {
  position: absolute;
  top: 50px;
  left: 25px;

  transform: translateY(-50%);
  margin: 0;
  font-weight: 600;
}

/* DESC */
.insurance-desc {
  position: absolute;
  top: 95px;
  left: 25px;
  right: 25px;

  font-size: 0.9rem;
  color: var(--text);
  margin: 0;
}

/* TAGS */
.insurance-tags {
  position: absolute;
  bottom: 25px;
  left: 25px;
  right: 25px;

  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

/* TAG */
.insurance-tag {
  padding: 4px 10px;
  font-size: 0.8rem;

  background: #f3f3f7;
  border: 1px solid var(--border);
  border-radius: 6px;
}

/* =============================
   WHO SECTION
============================= */

/* Item */
.who-item {
  display: flex;
  align-items: center;
  gap: 12px;

  padding: 12px 14px;

  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: var(--radius-md);

  color: #fff;
  background-color: #5656564f;
}

/* Icon */
.who-icon {
  width: 34px;
  height: 34px;

  display: flex;
  align-items: center;
  justify-content: center;

  background: rgba(255, 255, 255, 0.1);
  border-radius: 6px;
}

.who-icon img {
  width: 45px;
}


/* =============================
   PROBLEM SECTION
============================= */

.problem-card {
  max-width: 280px;
  margin: auto;
}

/* ICON */
.problem-icon {
  width: 90px;
  height: 90px;
  object-fit: contain;
  margin: 0 auto;
  display: block;
}

/* TEXT */
.problem-text {
  font-size: 0.95rem;
  color: var(--text);
  line-height: 1.5;
  max-width: 240px;
  margin: 0 auto;
}

/* =============================
   SIP CALCULATOR
============================= */

.form-range::-webkit-slider-thumb {
  background: var(--primary);
}

.form-range::-moz-range-thumb {
  background: var(--primary);
}

.form-range::-ms-thumb {
  background: var(--primary);
}

.calculator-card {
  border: 1px solid var(--border);
}

.results-card {
  border: 1px solid var(--border);
}

.bg-light-custom {
  background-color: var(--light-bg);
}

.input-group-text {
  font-size: 0.85rem;
  color: var(--muted);
}

#sip_amount_input,
#sip_roi_input,
#sip_years_input {
  font-weight: 600;
  color: var(--primary);
}

.final-result h2 {
  font-size: 2.5rem;
}

.result-item h4 {
  font-size: 1.5rem;
}

@media (max-width: 991px) {
  .final-result h2 {
    font-size: 2rem;
  }
}