

form.bs-lead-form {
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.4);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
  padding: 2rem;
  max-width: 100%;
}
form.bs-lead-form:hover {
  background: rgba(255, 255, 255, 0.25);
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.25);
}
form.bs-lead-form * { box-sizing: border-box; }


.bs-lead-form .bs-lf-group { margin-bottom: 18px; }
.bs-lead-form label.bs-lf-label {
  display: block; margin-bottom: 6px;
  color: #FCFCFC;
  font-family: "Space Grotesk", Sans-serif;
  font-size: 16px; font-weight: 500; line-height: 1.4;
}
.bs-lead-form .bs-lf-req::after { content: " *"; color: #BA203F; }


.bs-lead-form input.bs-lf-control,
.bs-lead-form select.bs-lf-control,
.bs-lead-form textarea.bs-lf-control {
  display: block; width: 100%;
  background: rgba(255, 255, 255, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 12px;
  padding: 0.75rem 1rem;
  color: #BA203F;
  font-family: "Poppins", Sans-serif;
  font-size: 16px; line-height: 1.5;
  outline: none;
  transition: all 0.3s ease;
}
.bs-lead-form .bs-lf-control::placeholder { color: #DFE4EB; opacity: 1; }
.bs-lead-form .bs-lf-control:focus {
  background: rgba(255, 255, 255, 0.4);
  border-color: rgba(255, 255, 255, 0.8);
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.4);
  color: #BA203F;
}
.bs-lead-form textarea.bs-lf-control { resize: vertical; min-height: 96px; }


.bs-lead-form select.bs-lf-control option { color: #2A2E33; background: #fff; }

.bs-lead-form .bs-lf-group--error .bs-lf-control {
  border-color: #BA203F;
  box-shadow: 0 0 0 2px rgba(186, 32, 63, .35);
}
.bs-lead-form .bs-lf-error { display: none; color: #FFB9A2; font-size: 13px; margin-top: 4px; }
.bs-lead-form .bs-lf-group--error .bs-lf-error { display: block; }


.bs-lead-form .bs-lf-check {
  display: flex; align-items: center; gap: 0.6rem;
  margin: 0 0 0.5rem 0;
  color: #FCFCFC; font-weight: 400; cursor: pointer; user-select: none;
}
.bs-lead-form .bs-lf-check > span {
  color: #FCFCFC; font-family: "Poppins", Sans-serif; font-size: 0.95rem; line-height: 1;
}
.bs-lead-form .bs-lf-check input[type="checkbox"] {
  appearance: none; -webkit-appearance: none; -moz-appearance: none;
  width: 20px; height: 20px; margin: 0;
  background: rgba(255, 255, 255, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 6px;
  cursor: pointer; position: relative; flex-shrink: 0;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.bs-lead-form .bs-lf-check input[type="checkbox"]:hover {
  background: rgba(255, 255, 255, 0.4); border-color: rgba(255, 255, 255, 0.8);
}
.bs-lead-form .bs-lf-check input[type="checkbox"]:focus-visible {
  outline: none; box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.5);
}
.bs-lead-form .bs-lf-check input[type="checkbox"]:checked {
  background: #C3286C; border-color: #C3286C;
}
.bs-lead-form .bs-lf-check input[type="checkbox"]:checked::after {
  content: ''; position: absolute; left: 6px; top: 2px;
  width: 5px; height: 10px;
  border: solid #fff; border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}


.bs-lead-form .bs-lf-hp {
  position: absolute !important; left: -9999px !important;
  height: 1px; width: 1px; overflow: hidden;
}


.bs-lead-form .bs-lf-captcha {
  display: block; width: max-content; max-width: 100%;
  margin: 0 0 24px 0; min-height: 78px;
  border-radius: 12px; overflow: hidden;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
}


.bs-lead-form button.bs-lf-submit {
  display: block; margin: 0 auto; cursor: pointer;
  background-color: #BA203F;
  color: #ffffff;
  border: 1px solid #FFFFFF26;
  border-radius: 30px;
  padding: 16px 26px 14px 26px;
  font-family: "Space Grotesk", Sans-serif;
  font-size: 14px;
  transition: background-color .2s ease, border-color .2s ease;
}
.bs-lead-form button.bs-lf-submit:hover {
  background-color: #FFFFFF0F;
  border-color: #FFFFFF1F;
  color: #ffffff;
}
.bs-lead-form button.bs-lf-submit:disabled { opacity: .6; cursor: wait; }


.bs-lead-form .bs-lf-status {
  display: none; margin-top: 16px; padding: 12px 16px;
  border-radius: 12px; font-family: "Poppins", Sans-serif; font-size: 14px;
  line-height: 1.5; outline: none; color: #FCFCFC;
  background: rgba(255, 255, 255, 0.25);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.4);
}
.bs-lead-form .bs-lf-status a { color: #FCFCFC; text-decoration: underline; }
.bs-lead-form .bs-lf-status--success { border-left: 4px solid #C6F56F; }
.bs-lead-form .bs-lf-status--error   { border-left: 4px solid #FFB9A2; }
.bs-lead-form .bs-lf-status--info    { border-left: 4px solid rgba(255, 255, 255, .8); }


@media (max-width: 767px) {
  .bs-lead-form input.bs-lf-control,
  .bs-lead-form select.bs-lf-control,
  .bs-lead-form textarea.bs-lf-control { font-size: 14px; }
  .bs-lead-form button.bs-lf-submit { font-size: 12px; }
}
