.fs-18 {
  font-size: 18px;
}

legend {
  font-size: 15px !important; 
  font-weight: bold;
}

.bescheinigung .fieldset-wrapper,
.bescheinigung .js-webform-radios,
.programmheft .fieldset-wrapper,
.programmheft .js-webform-radios,
.jahresbeitrag .fieldset-wrapper,
.jahresbeitrag .js-webform-radios {
  display: flex;
  align-items: center;
}

.jahresbeitrag .fieldset-wrapper {
  height: 50px;
  flex-wrap: wrap;
}

.jahresbeitrag .description {
  flex-basis: 100%;
}

.jahresbeitrag .webform-radios-other-input {
  display: block !important;
  width: 150px !important;
  margin: 0 !important;
}

.form-number,
.form-email,
.form-text {
  background-color: #fff;
  border: 1px solid #000;
  border-radius: 0;
}

.einmalig {
  margin-bottom: 24px;
  align-items: center;
}

.jahresbeitrag {
  margin-bottom: 80px;
}

.jahresbeitrag .webform-radios-other-input {
  height: 42px !important;
}

.sepa label,
.einmalig label,
.jahresbeitrag label {
  font-weight: bold;
  margin-left: 10px;
}

.mitgliedschaft label {
  margin-left: 10px; 
}

.bescheinigung label,
.programmheft label {
  margin-left: 14px;
  margin-right: 10px;
}

.jahresbeitrag .form-item {
  margin: 1rem;
}

.jahresbeitrag .form-item:first-child {
  margin-left: 0;
}

.bescheinigung .form-item,
.programmheft .form-item {
  margin: 0 1rem;
}

.bescheinigung .form-item:first-child,
.programmheft .form-item:first-child {
  margin-left: 0;
}

.einmalig .form-item {
  margin: 0 5rem 0 0;
}

.ihre-daten {
  flex-wrap: wrap;
}

.ihre-daten .webform-flex {
  flex-basis: 50%;
  margin-bottom: 1rem;
}

.ihre-daten .form-item {
  align-items: center;
  display: flex;
}

.ihre-daten label {
  font-weight: bold;
  margin-bottom: 0;
  width: 240px;
  text-align: right;
  padding-right: 16px;
}

.sepa .description,
.sepa .webform-element-description {
  /*display: inline;*/
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.error ~ label {
  color: red; 
}

.sepa label::after,
.form-required::after {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 0.3em;
  content: "";
  vertical-align: super;
  background-image: url(/core/misc/icons/ee0000/required.svg);
  background-repeat: no-repeat;
  background-size: 6px 6px;
}

.webform-required {
  display: none;
}

input[type='radio'] {
    accent-color: #d02c24;
}

@media screen and (max-width: 450px) {
   .programmheft .js-webform-radios,
   .einmalig .js-webform-radios,
   .jahresbeitrag .js-webform-radios {
     display: block;  
  }
  
  .bescheinigung .form-item,
  .programmheft .form-item,
  .jahresbeitrag .form-item {
   margin-left: 0; 
  }
  
  .jahresbeitrag .fieldset-wrapper {
    height: auto;
  }
  
  .einmalig .form-item {
    
  }
}