.planiso-stepDots {
  display: inline-flex;
  gap: 8px;
  align-items: center;
}

.planiso-stepDot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(0,0,0,0.15);
}

html[data-bs-theme="dark"] .planiso-stepDot {
  background: rgba(255,255,255,0.18);
}

.planiso-stepDot.is-active {
  background: rgba(var(--planiso-primary-rgb), 0.95);
  transform: scale(1.15);
}

.planiso-stepDot.is-done {
  background: rgba(var(--planiso-primary-rgb), 0.45);
}

.planiso-checkCard {
  border: 1px solid rgba(0,0,0,0.10);
  border-radius: 16px;
  padding: 14px 14px;
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

html[data-bs-theme="dark"] .planiso-checkCard {
  border-color: rgba(255,255,255,0.14);
}

.planiso-checkCard .form-check-input {
  margin-top: 4px;
}

.subscribeSection {
  position: relative;
  inset: -1px;
  /* kill seams */
  z-index: 0;

  background-color: var(--bs-body-bg);

  background-image:
    linear-gradient(180deg,
      rgba(var(--planiso-primary-rgb), 0.18) 0%,
      rgba(var(--planiso-primary-rgb), 0.10) 40%,
      rgba(var(--planiso-primary-rgb), 0.06) 100%),
    url('../../../assets/images/public/contact-us.png');

  /* ✅ 1er layer (gradient) = cover plein écran, 2e layer (image) = contain */
  background-size: cover, clamp(520px, 52vw, 860px) auto;

  /* ✅ gradient centré, image poussée à droite */
  background-position: center, right -40px bottom;

  background-repeat: no-repeat, no-repeat;

  transform: translateZ(0);
}

html[data-bs-theme="dark"] .subscribeSection {
  background-color: #ffffff;

  background-image:
    linear-gradient(180deg,
      rgba(7, 10, 18, 0.88) 25%,
      rgba(7, 10, 18, 0.92) 75%,
      rgba(7, 10, 18, 0.94) 100%),
    url('../../../assets/images/public/contact-us.png');

  background-size: cover, clamp(520px, 52vw, 860px) auto;
  background-position: center, right -40px bottom;
  background-repeat: no-repeat, no-repeat;
}

@media (max-width: 768px) {
  .subscribeSection {
    background-size: cover, 520px auto;
    background-position: center, right -120px bottom;
  }
}