.disabled, [disabled] {
    --bs-btn-disabled-opacity: 0.3552;
}

#loader {
    background-size: 60% auto;
    background-repeat: no-repeat;
    background-position: center 50%;
    background-color: #fff;
    border-radius: 50rem;
    box-shadow: 0px 1px 20px 0px rgba(112, 112, 112, 0.75);
    position: fixed;
    z-index: 99993;
    width: 80px;
    height: 80px;
    line-height: 80px;
    left: 50% !important;
    top: 50% !important;
    margin: -40px 0 0 -40px;
    vertical-align: top;
}

#loader .spinner-border {
    vertical-align: top;
    width: 100%;
    height: 100%;
    margin-top: 0;
    color: var(--color-primary, #999);
    border-width: 2px;
    animation-duration: 1s !important;
}

.form-control:read-only,
.form-control:disabled {
    background-color: #e9ecef;
    opacity: 1;
}

.btn:disabled {
    background: #cdcdcd;
    border-color: #cdcdcd;
}

*,
::before,
::after {
    background-repeat: no-repeat;
}

figure figcaption {
    font-size: 0.75rem;
    margin-top: 0.375rem;
}

.lh-normal {
    line-height: normal;
}
.lh-12{
    line-height:1.2;
}
a,
[onclick],
.btn,
button,
input {
    cursor:pointer;
    text-decoration: none;
    outline: none;
    box-shadow: none !important;
}

a {
    color: inherit;
}
dl, ol, ul {
}
p{
    margin-bottom:0;
}
.text-editor p {
    margin-bottom: 1rem;
}
b,
strong {
    font-weight:700;
    /*color: rgb(87, 87, 86);*/
}
input {
    box-shadow: none !important;
}
.text_ellipsis {
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

table, .table {
    margin-bottom: 0;
}

::placeholder {
    opacity: 1 !important; /* Firefox */
    color: #bbb !important;
    text-transform: uppercase;
    font-size: .8rem;
    text-transform: none;
}

::-ms-input-placeholder { /* Edge 12 -18 */
    opacity: 1 !important;
    text-transform: uppercase;
}

.datenschutz {
    margin-bottom: 2rem !important;
  }
/* checkbox-rect */
.checkbox-rect input[type="checkbox"] {
    display: none;
  }
  .checkbox-rect input[type="checkbox"] + label {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 20px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    line-height: 1.1;
  }
  .checkbox-rect input[type="checkbox"]:hover + label:hover {
    /* color: rgb(23, 86, 228); */
  }
  .checkbox-rect input[type="checkbox"]:hover + label:before {
    background: #999;
    /* box-shadow: inset 0px 0px 0px 1px #999; */
  }
  .checkbox-rect input[type="checkbox"] + label:last-child {
    margin-bottom: 0;
  }
  .checkbox-rect input[type="checkbox"] + label:before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    /* border: none; */
    border-radius: 0;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-transition: all 0.2s, background 0.2s ease-in-out;
    transition: all 0.2s, background 0.2s ease-in-out;
    background: #efefef;
  }
  .checkbox-rect input[type="checkbox"]:checked + label:before {
      width: 20px;
      height: 20px;
      -webkit-transform: rotate(90deg);
      transform: rotate(90deg);
      background: var(--blue);;
      /* box-shadow: 0 0 0 1px #000; */
    }
    .bg-darkblue .checkbox-rect input[type="checkbox"]:checked + label:before {
        background: var(--bg-gelb);;
      }
    .section-bg-dark .checkbox-rect input[type="checkbox"]:checked + label:before {
        background: #000;
    }
  /* checkbox-rect end */
  
  /* checkbox-rect */
  .checkbox-rect input[type="radio"] {
    display: none;
  }
  .checkbox-rect input[type="radio"] + label {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 20px;
    line-height: 23px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    font-size: var(--1rem);
  }
  .checkbox-rect input[type="radio"]:hover + label:hover {
    color: var(--black);
  }
  .checkbox-rect input[type="radio"]:hover + label:before {
    background: var(--color-tak-light-gray);
    box-shadow: inset 0px 0px 0px 2px #f7f2f2;
  }
  .checkbox-rect input[type="radio"] + label:last-child {
    margin-bottom: 0;
  }
  .checkbox-rect input[type="radio"] + label:before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border: none;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-transition: all 0.2s, background 0.2s ease-in-out;
    transition: all 0.2s, background 0.2s ease-in-out;
    background: var(--color-tak-red);
  }
  .checkbox-rect input[type="radio"]:checked + label:before {
    width: 20px;
    height: 20px;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    background: var(--color-tak-dark-gray);
    /* box-shadow: 0 0 0 1px #000; */
  }
  /* checkbox-rect end */
  
  .checkbox-rect.radio { display: inline-block; margin-right: 2em; }
  .checkbox-rect label { font-size: var(--1rem); }
  
  .checkbox-rect.w25 {
      width: 30%; display: inline-block;
  }
  .checkbox-rect.w50 {
      width: 49%; display: inline-block;
  }

.lang-flag{
      font-size: 22px;   /* probiere 20â€“28px */
      line-height: 1;
  }
.form-group {
  margin-bottom: .5rem;
}
.lds-ellipsis {
	display: none;
	position: relative;
	width: 80px;
	height: 33px;
}
.lds-ellipsis.show {
	display: inline-block;
}
.lds-ellipsis div {
	position: absolute;
	top: 33px;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: #fff;
	animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
	left: 8px;
	animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
	left: 8px;
	animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
	left: 32px;
	animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
	left: 56px;
	animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
	0% {
	transform: scale(0);
	}
	100% {
	transform: scale(1);
	}
}
@keyframes lds-ellipsis3 {
	0% {
	transform: scale(1);
	}
	100% {
	transform: scale(0);
	}
}
@keyframes lds-ellipsis2 {
	0% {
	transform: translate(0, 0);
	}
	100% {
	transform: translate(24px, 0);
	}
}