.hero {
  color: #fff;
  padding: 110px 0 90px;
}

.hero h1 {
  line-height: 1.15;
}

.text-light {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-light-rgb), 0.80) !important;
}

.btn-info {
  --bs-btn-color: #FFF;
  --bs-btn-bg: #5E52E3;
  --bs-btn-border-color: #5E52E3;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #5A52A6;
  --bs-btn-hover-border-color: #5A52A6;
  --bs-btn-focus-shadow-rgb: 11, 172, 204;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #5A52A6;
  --bs-btn-active-border-color: #5A52A6;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #5E52E3;
  --bs-btn-disabled-border-color: #5E52E3;
}

.section {
  padding: 6rem 0;
}

.section-title {
  margin-bottom: 18px;
}

.lead-muted {
  color: #556070;
  max-width: 760px;
}

.service-card, .risk-card, .price-card {
  height: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  transition: .25s;
  background: #fff;
}

.service-card:hover, .risk-card:hover, .price-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(15, 23, 42, .12);
}

.icon-box {
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: rgba(22, 163, 74, .12);
  color: var(--brand-accent);
  font-size: 26px;
  margin-bottom: 18px;
}

.risk-card .icon-box {
  background: rgba(94, 82, 227, .10);
  color: var(--brand-warning);
}

.cookie-demo {
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 25px 60px rgba(15, 23, 42, .25);
  padding: 28px;
}

.cookie-demo .cookie-actions .btn {
  min-width: 140px;
}

.step-number {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgb(129 120 229);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  margin-bottom: 16px;
}

.result .bi-check-circle-fill {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  margin-top: 4px;
}

.price-badge {
  background: var(--brand-accent);
  color: #fff;
  font-size: .8rem;
  padding: 5px 12px;
  border-radius: 30px;
}

.final-cta {
  background: #302D5A;
  color: #fff;
}

.form-control, .form-select {
  border-radius: 12px;
  padding: 13px 16px;
}

@media (max-width: 767px) {
  .hero {
    padding: 80px 0 60px;
  }
}

@media (max-width: 767px) {
  .section {
    padding: 65px 0;
  }
}

.separator-color-bluedark-blue {
  background-color: #5A52A6;
  font: 0/0 a;
  position: relative;
  z-index: -1;
}

.separator-white-color-bluedark {
  background-color: #302D5A;
  font: 0/0 a;
  position: relative;
  z-index: -1;
}

#modal-152 .text-dark, #modal-152 .link-primary {
	color:#FFF !important;
}
