.sjs-registration-membership {
  grid-column: 1 / -1;
  min-width: 0;
  padding: 14px;
  color: #234432;
  background: #f4f8ef;
  border: 1px solid #d3e3ca;
  border-radius: 11px;
}

.sjs-registration-membership fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.sjs-registration-membership legend {
  max-width: 100%;
  padding: 0;
  font-size: .95rem;
  font-weight: 700;
  line-height: 1.4;
}

.sjs-registration-options {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 18px;
  margin-top: 6px;
}

.sjs-registration-membership .sjs-registration-options label {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  min-height: 32px;
  gap: 8px;
  margin: 0;
  cursor: pointer;
}

.sjs-registration-membership input[type="radio"],
.sjs-registration-membership input[type="checkbox"] {
  width: 17px !important;
  min-width: 17px !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  accent-color: #34743f;
}

.sjs-registration-membership p {
  margin: 6px 0;
  font-size: .9rem;
  line-height: 1.5;
}

.sjs-registration-membership [data-sjs-current-rate],
.sjs-registration-membership [data-sjs-member-rate] {
  font-weight: 700;
}

.sjs-registration-membership fieldset.sjs-registration-join {
  margin-top: 12px;
  padding-top: 6px;
}

.sjs-registration-membership .sjs-registration-application {
  margin-top: 8px;
}

.sjs-registration-membership .sjs-registration-documents a {
  color: #245d32;
  text-decoration: underline;
}

.sjs-registration-membership .sjs-registration-consent {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 8px;
  margin-top: 10px;
  font-size: .9rem;
  line-height: 1.5;
}

.sjs-registration-membership .sjs-registration-consent input {
  flex: 0 0 17px;
  margin-top: 3px !important;
}

.sjs-registration-membership [hidden],
form[data-sjs-registration] [data-sjs-add-person][hidden] {
  display: none !important;
}
