.mb-24 {
  margin-bottom: 24px;
}

dd {
  margin-bottom: 0;
}

.crmEntityFormView {
  border: none !important;
}

.field-label {
  margin-bottom: 6px;
}

#sca_paymentby {
  display: flex;
}

#sca_paymentby input[type=radio] {
  margin: 1px 4px 0 0px;
}

#sca_paymentby input[type=radio]#sca_paymentby_1 {
  margin-left: 12px;
}

.wrapper-body {
  min-height: calc(100vh - 184px);
}

.membership-summary-price div:first-child {
  position: sticky;
  top: 8px;
}

.card-header {
  background-color: #003499 !important;
  color: #FFF !important;
  font-weight: 600;
}

.entity-form h3 {
  color: #003499;
}

.list-group-item {
  padding-right: 0;
  padding-left: 0;
}

input.form-control,
select.form-select,
button {
  border-color: #ced4da !important;
}

.input-group .btn {
  align-self: stretch;
}

select:disabled {
  cursor: not-allowed;
  background-color: #e9ecef !important;
}

.has-spinner {
  position: relative;
}

.portal-input-spinner {
  display: none;
  position: absolute;
  top: 8px;
  right: 6px;
}

.portal-input-spinner .spinner-border {
  height: 24px;
  width: 24px;
}

.payment-container {
  display: flex;
  justify-content: center;
}

.portal-spinner .spinner-border {
  height: 48px;
  width: 48px;
}

.checkmark-success,
.portal-spinner {
  height: 56px;
}

.exclamation-error,
.checkmark-success {
  display: none;
}

.exclamation-error,
.checkmark-success.wrapper {
  justify-content: center;
  align-items: center;
}

.exclamation-error.show,
.checkmark-success.wrapper.show {
  display: flex;
}

.checkmark__circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke-width: 2;
  stroke-miterlimit: 10;
  stroke: #7ac142;
  fill: none;
  animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}

.checkmark {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: block;
  stroke-width: 2;
  stroke: #fff;
  stroke-miterlimit: 10;
  box-shadow: inset 0px 0px 0px #7ac142;
  animation: fill .4s ease-in-out .4s forwards, scale .3s ease-in-out .9s both;
}

.checkmark__check {
  transform-origin: 50% 50%;
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
}

.exclamation path {
  transform-origin: 50% 50%;
  animation: scale .3s ease-in-out .2s both;
}

.payment-description {
  display: none;
}

@keyframes stroke {
  100% {
    stroke-dashoffset: 0
  }
}

@keyframes scale {
  0%,
  100% {
    transform: none
  }

  50% {
    transform: scale3d(1.1, 1.1, 1)
  }
}

@keyframes fill {
  100% {
    box-shadow: inset 0px 0px 0px 30px #7ac142
  }
}

@media (max-width: 991px) {
  #membershipOrderSummary {
    flex-direction: column-reverse;
  }

  .membership-summary-price div:first-child {
    position: initial;
  }
}