.form-wrapper {
  background: #fff;
  padding: 35px;
  border-radius: 24px;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.06);
}
.form-group {
  margin-bottom: 30px;
  position: relative;
}
.form-group label {
  font-weight: 600;
  font-size: 16px;
  color: #0B2D5C;
  margin-bottom: 8px;
  display: block;
}
.form-control {
  width: 100%;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid #D5DCEC;
  background: #F9FBFF;
  font-size: 16px;
  transition: 0.2s;
}
.form-control:focus {
  background: #fff;
  border-color: #0B2D5C;
  box-shadow: 0 0 0 4px rgba(11, 45, 92, 0.15);
  outline: none;
}

select.form-control,
select.form-control:focus {
  background: #F9FBFF url('data:image/svg+xml;utf8,<svg fill="%230B2D5C" height="18" viewBox="0 0 20 20" width="18" xmlns="http://www.w3.org/2000/svg"><path d="M5.516 7.548l4.484 4.486 4.484-4.486A1.25 1.25 0 0 1 16.25 9.3l-5 5a1.25 1.25 0 0 1-1.768 0l-5-5A1.25 1.25 0 0 1 5.516 7.548z"/></svg>')
  no-repeat right 16px center;
  appearance: none;
  cursor: pointer;
  padding-right: 46px !important;
}
textarea.form-control {
  min-height: 150px;
  resize: vertical;
}
.form .error {
  position: absolute;
  left: 0;
  bottom: -18px;
  color: #d62828;
  font-size: 13px;
  font-weight: 500;
  pointer-events: none;
  opacity: 0;
  transform: translateY(-4px);
  transition: .25s ease;
}
.fade-in {
  opacity: 1 !important;
  transform: translateY(0) !important;
}
.success-toast {
  position: fixed;
  top: 20%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.85);
  background: linear-gradient(135deg, #0A2D5C 0%, #0B4A9A 100%);
  color: #fff;
  padding: 16px 24px;
  border-radius: 18px;
  font-size: 16px;
  font-weight: 600;
  box-shadow: 0 12px 32px rgba(0,0,0,0.18);
  opacity: 0;
  pointer-events: none;
  transition: .35s ease;
  z-index: 999999;
  max-width: 90vw;
  width: auto;
}

.success-toast.show {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
.bh-modal {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 999999;
}
.bh-modal.active {
  display: flex;
}
.bh-modal-overlay {
  position: absolute;
  inset: 0;
  background: rgba(11, 45, 92, 0.45);
  backdrop-filter: blur(3px);
  opacity: 0;
  animation: fadeIn .25s forwards;
}
.bh-modal-content {
  position: relative;
  z-index: 2;
  animation: modalPop .35s ease forwards;
  max-width: 520px;
  width: 92%;
}
.bh-modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  background: transparent;
  border: none;
  font-size: 34px;
  color: #0B2D5C;
  cursor: pointer;
  line-height: 1;
}
.bh-modal-title {
  font-size: 28px;
  font-weight: 700;
  color: #0B2D5C;
  margin-bottom: 25px;
  text-align: left;
}
.bh-modal .form-button-wrapper {
  text-align: center;
}
@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}
@keyframes modalPop {
  from { opacity: 0; transform: translateY(15px) scale(.98); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}
@media (max-width: 1024px) {
  .success-toast {
    min-width: 400px;
  }
}
@media (max-width: 400px) {
  .success-toast {
    min-width: 300px;
  }
  .form .error {
    font-size: 12px;
  }
}
