/* @license GNU-GPL-2.0-or-later https://www.drupal.org/licensing/faq */
#einleitung{
padding: 210px 0 100px 0;
background: #000;
color: #ffffff;
position: relative;
min-height: 100vh;
display: flex;
flex-direction: column;
overflow: hidden;
z-index: 109;
}

#einleitung>.section{
position: static;
flex: auto;
}

#einleitung a{
color: #ffffff;
}

#einleitung a:hover{
color: #a100ff;
}

#einleitung .subtitle{
margin: -20px 0 15px 0;
color: #babcbd;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}

#einleitung .overview{
position: relative;
overflow: hidden;
margin: -20px 0 30px 0;
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
padding-bottom: 15px;
}

#einleitung .overview a{
display: inline-block;
color: #babcbd;
padding-right: 20px;
background: #000;
position: relative;
z-index: 9;
}

#einleitung .overview a i{
color: #a100ff;
margin-right: 10px;
position: relative;
top: 2px;
}

#einleitung .overview a:hover{
color: #a100ff;
}

#einleitung .breadcrumb{
margin: -20px 0 15px 0;
color: #babcbd;
display: flex;
}

#einleitung .breadcrumb a{
color: #babcbd;
}

#einleitung .breadcrumb a:hover{
color: #a100ff;
}

#einleitung .breadcrumb .item{
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
display: inline-block;
max-width: calc(50% - 45px);
}

#einleitung .breadcrumb .icon-angle-right{
font-size: 8px;
margin: 0 10px;
line-height: var(--line-height-default);
display: inline-block;
}

#einleitung .breadcrumb .more{
display: inline-block;
margin-left: 10px;
}

#einleitung .breadcrumb .more a.dropdown{
background: #a100ff;
color: #ffffff;
border-radius: 5px;
font-weight: 700;
font-size: var(--font-size-smaller);
padding: 0 7px;
vertical-align: top;
cursor: pointer;
}

#einleitung .breadcrumb .more a.dropdown .icon-angle-down{
font-size: 8px;
margin-left: 3px;
position: relative;
top: -1px;
}

#einleitung .breadcrumb .more a.dropdown:hover{
background: #ff9900;
}

#einleitung .breadcrumb .more .dropdown-content{
margin-top: 15px;
}

#einleitung .breadcrumb .more .dropdown-content a{
color: #000000;
}

#einleitung .breadcrumb .more .dropdown-content a:hover{
color: #a100ff;
}

#einleitung .actions{
margin-top: 40px;
}

#einleitung .actions a.button span.count{
background: #000;
color: #ffffff;
border-radius: 5px;
font-weight: 700;
font-size: var(--font-size-smaller);
line-height: var(--line-height-small);
display: inline-block;
margin-left: 10px;
padding: 0 7px;
vertical-align: middle;
position: relative;
top: -2px;
}

#einleitung .filter{
margin-top: 60px;
}

#einleitung .filter .label{
color: #babcbd;
}

#einleitung .filter .items{
border: 1px solid #ffffff;
border-radius: 20px;
margin-top: 10px;
padding: 4px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 4px;
}

#einleitung .filter .items a{
display: block;
border-radius: 15px;
padding: 15px;
font-weight: 700;
text-align: center;
font-size: var(--font-size-small);
line-height: var(--line-height-small);
cursor: pointer;
color: #ffffff;
}

#einleitung .filter .items a:hover{
background: #233037;
}

#einleitung .filter .items a.is-active{
background: #ffffff;
color: #000;
}

#einleitung a.scroll-down{
position: absolute;
left: 50%;
bottom: 30px;
transform: translateX(-50%);
display: block;
color: #a100ff;
animation: scrollDownPulse 3s 0s ease-out infinite;
z-index: 99;
}

@keyframes scrollDownPulse{
0%{
margin-bottom: 0px;
}

60%{
margin-bottom: 0px;
}

70%{
margin-bottom: -10px;
}

80%{
margin-bottom: 0px;
}

90%{
margin-bottom: -10px;
}

100%{
margin-bottom: 0px;
}
}

#einleitung a.scroll-down:hover{
color: #ff9900;
}

#einleitung.with-image{
padding-bottom: 0 !important;
}

#einleitung.with-image .image-container{
width: 100%;
height: 56.25vw;
position: relative;
margin-top: 60px;
z-index: 99;
}

#einleitung.with-image .image-container img,
#einleitung.with-image .image-container video{
position: absolute;
width: 100%;
height: 100%;
object-fit: cover;
}

#einleitung.with-image .image-container video{
z-index: 9;
}

@media screen and (max-width:499px){
#einleitung{
padding: 180px 0 100px 0;
}

#einleitung .filter{
margin-top: 40px;
}

#einleitung .filter .items a{
font-size: var(--font-size-smaller);
line-height: var(--line-height-smaller);
}

#einleitung.with-image .image-container{
margin-top: 40px;
}
}

@media screen and (min-width:768px){
#einleitung{
padding-top: 230px;
}

#einleitung.with-image .image-container{
margin-top: 100px;
}
}

@media screen and (min-width:1024px){

#einleitung .h1,
#einleitung .body{
padding-right: 20%;
}

#einleitung .filter .items{
display: inline-block;
}

#einleitung .filter .items a{
display: inline-block;
padding: 15px 30px;
}
}

@media screen and (min-width:1440px){
#einleitung{
padding-top: 180px;
padding-bottom: 0 !important;
}

#einleitung>.section{
padding: 5vw 0;
display: flex;
flex-direction: column;
}

#einleitung .overview{
margin: -20px 0 50px 0;
padding-bottom: 30px;
}

#einleitung .body{
padding-right: 50%;
flex: auto;
}

#einleitung .details{
padding-right: 50%;
flex: auto;
}

#einleitung .actions{
margin-top: 50px;
}

#einleitung.with-image>.section{
padding: 5vw 0;
}

#einleitung.with-image .h1{
padding-right: 40%;
}

#einleitung.with-image .body{
padding-right: 50%;
}

#einleitung.with-image .image-container{
margin: 0;
position: absolute;
right: 0;
bottom: 0;
width: 40%;
height: calc(56.25vw * 0.4);
}
}

@media screen and (min-width:1921px){
#einleitung .filter .items a{
padding: 0.75vw 1.5vw;
}
}

.chosen-container{
position: relative;
display: inline-block !important;
vertical-align: middle;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
width: 100% !important;
box-sizing: border-box;
}

.chosen-container-single .chosen-single{
position: relative;
display: block;
overflow: hidden;
padding: 0 50px 0 30px;
height: 60px;
border-radius: 3px;
text-decoration: none;
white-space: nowrap;
font-family: inherit;
font-size: inherit;
font-style: normal;
line-height: 60px;
border: 1px solid #dddddd;
cursor: pointer;
transition: border-color 0.5s;
opacity: 1 !important;
color: #9d9f9f;
}

.chosen-container-single .chosen-single:hover,
.chosen-container-active.chosen-with-drop .chosen-single{
border-color: #1a1a1a;
color: #1a1a1a;
}

.chosen-container-single .chosen-single span{
display: block;
overflow: hidden;
margin-right: 0;
text-overflow: ellipsis;
white-space: nowrap;
line-height: 100px;
position: relative;
z-index: 99;
}

.chosen-container-single .chosen-single div{
position: absolute;
top: 50%;
right: 30px;
margin-top: -8px;
display: block;
}

.chosen-container-active.chosen-with-drop .chosen-single div{
transform: rotate(180deg);
margin-top: 0;
}

.chosen-container-single .chosen-single div b{
border: solid #aaaaaa;
border-width: 0 1px 1px 0;
display: block;
padding: 5px;
transform: rotate(45deg);
-webkit-transform: rotate(45deg);
}

.chosen-container-single .chosen-single:hover div b{
border-color: #000000;
}

.chosen-container-single .chosen-single img{
display: none;
}

.chosen-container .chosen-drop{
position: absolute;
top: 100%;
z-index: 1010;
min-width: 100%;
max-width: 200%;
border: 0;
background: #ffffff;
display: none;
box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2) !important;
margin-top: 1px;
border-radius: 3px;
padding: 0;
overflow: hidden;
}

.chosen-container.chosen-with-drop .chosen-drop{
display: block;
}

.chosen-container .chosen-results{
position: relative;
overflow-x: hidden;
overflow-y: auto;
margin: 0;
padding: 20px 30px 0 30px;
max-height: 240px;
-webkit-overflow-scrolling: touch;
}

.chosen-container .chosen-results li{
display: none;
margin: 0;
padding: 5px 0 !important;
list-style: none;
-webkit-touch-callout: none;
cursor: pointer;
transition: all 0.5s;
}

.chosen-container .chosen-results li:last-child{
margin-bottom: 20px;
}

.chosen-container .chosen-results li:before{
display: none !important;
}

.chosen-container .chosen-results li.active-result{
display: block;
}

.chosen-container .chosen-results li.disabled-result{
display: block;
color: #dddddd !important;
cursor: default;
}

.chosen-container .chosen-results li.highlighted{
color: #aaaaaa;
}

.chosen-container .chosen-results li.result-selected{
font-weight: 700;
}

.chosen-container .chosen-results li em{
font-style: normal;
text-decoration: underline;
}

.chosen-container .chosen-results li img{
display: none;
}

.chosen-container-single .chosen-single input[type="text"]{
cursor: pointer;
opacity: 0;
position: absolute;
display: none;
top: -30px;
}

.chosen-container-single.chosen-container-active .chosen-single input[type="text"]{
display: block;
}

.chosen-container-single .chosen-search{
position: relative;
}

.chosen-container-single .chosen-search:after{}

.chosen-container-single .chosen-search .chosen-search-input{
font-family: inherit;
font-size: 12px;
font-style: normal;
line-height: 20px;
padding: 15px 50px 15px 30px;
color: inherit;
outline: none !important;
box-shadow: none !important;
border-radius: 0 !important;
margin: 0 !important;
width: 100%;
box-sizing: border-box;
background: #ffffff;
border: 0;
border-bottom: 1px solid #dddddd;
}

.chosen-container-single.chosen-container-single-nosearch .chosen-search{
display: none;
}

.chosen-disabled{
cursor: default;
}

.chosen-disabled .chosen-single{
cursor: default;
border-color: #e5e5e5 !important;
}

.chosen-disabled .chosen-single span,
.chosen-disabled .chosen-single div{
color: #cccccc;
}

.chosen-disabled .chosen-choices .search-choice .search-choice-close{
cursor: default;
}

.form-item{
position: relative;
margin: 0 0 20px 0;
}

.form-item input.form-text,
.form-item input.form-email,
.form-item input.form-tel,
.form-item input.form-number,
.form-item input.form-date{
font-family: "Faktum", sans-serif;
font-weight: 400;
font-style: normal;
font-size: var(--font-size-default);
line-height: 20px;
background: #ffffff !important;
border-radius: 0;
border: 1px solid #dddddd;
padding: 25px 20px 10px 20px;
width: 100%;
color: #000000;
outline: none !important;
height: 55px;
-webkit-appearance: none;
box-shadow: none !important;
}

.form-item input.form-text:hover,
.form-item input.form-email:hover,
.form-item input.form-tel:hover,
.form-item input.form-number:hover,
.form-item input.form-date:hover,
.form-item input.form-text:focus,
.form-item input.form-email:focus,
.form-item input.form-tel:focus,
.form-item input.form-number:focus,
.form-item input.form-date:focus{
border-color: #000;
}

.form-item textarea{
font-family: "Faktum", sans-serif;
font-weight: 400;
font-style: normal;
font-size: var(--font-size-default);
line-height: 20px;
background: #ffffff !important;
border-radius: 0;
border: 1px solid #dddddd;
padding: 25px 20px 20px 20px;
width: 100%;
color: #000000;
box-shadow: none !important;
outline: none !important;
resize: none;
-webkit-appearance: none;
}

.form-item textarea:hover,
.form-item textarea:focus{
border-color: #000;
}

.form-item label{
display: block;
position: absolute;
top: 17px;
left: 0;
font-weight: 400;
cursor: text;
transition: top 0.3s, color 0.3s, font-size 0.5s, line-height 0.5s, opacity 0.5s, transform 0.5s;
font-size: var(--font-size-default);
line-height: 20px;
color: #000000;
z-index: 99;
padding: 0 20px;
}

.form-item label .required-star{
color: #a100ff;
}

.form-item label.focus,
.form-item label.has-text{
top: 10px;
font-size: 10px;
line-height: 10px;
opacity: 0.5;
}

.js-form-type-checkboxes>label,
.js-form-type-radios>label{
position: relative;
top: auto;
left: auto;
font-weight: 700;
margin: 0 0 10px 0;
display: block;
color: #000000;
transform: none !important;
padding: 0;
}

.form-checkboxes .form-item,
.form-radios .form-item{
width: auto !important;
margin: 0 0 5px 0 !important;
}

.form-checkboxes .form-item span.form-item--error,
.form-radios .form-item span.form-item--error{
display: none !important;
}

.js-form-type-checkboxes .form-item input,
.js-form-type-checkbox input,
.js-form-type-radios .form-item input,
.js-form-type-radio input{
display: none;
}

.js-form-type-checkboxes .form-item label,
.js-form-type-checkbox label,
.js-form-type-radios .form-item label,
.js-form-type-radio label{
position: relative;
top: auto;
left: auto;
padding: 0 0 0 40px;
cursor: pointer;
font-weight: 400;
margin: 0;
font-size: var(--font-size-default);
color: #000000;
line-height: 20px;
transform: none !important;
transition: color 0.5s;
}

.js-form-type-checkboxes .form-item label a,
.js-form-type-checkbox label a,
.js-form-type-radios .form-item label a,
.js-form-type-radio label a{
text-decoration: underline;
color: #a100ff;
}

.js-form-type-checkboxes .form-item label a:hover,
.js-form-type-checkbox label a:hover,
.js-form-type-radios .form-item label a:hover,
.js-form-type-radio label a:hover{
color: #ff9900;
}

.js-form-type-checkboxes .form-item label:before,
.js-form-type-checkbox label:before,
.js-form-type-radios .form-item label:before,
.js-form-type-radio label:before{
content: "";
position: absolute;
top: -2px;
left: 0;
display: block;
width: 24px;
height: 24px;
border: 0;
background: #ffffff;
border-radius: 0;
border: 1px solid #dddddd;
}

.js-form-type-radios .form-item label:before,
.js-form-type-radio label:before{
border-radius: 50%;
}

.js-form-type-checkboxes .form-item label:after,
.js-form-type-checkbox label:after,
.js-form-type-radios .form-item label:after,
.js-form-type-radio label:after{
position: absolute;
top: 2px;
left: 4px;
display: block;
width: 16px;
height: 16px;
transition: opacity 0.5s, background-color 0.5s;
background: #a100ff;
content: "";
opacity: 0;
}

.no-touchevents .js-form-type-checkboxes .form-item label:hover:after,
.no-touchevents .js-form-type-checkbox label:hover:after,
.no-touchevents .js-form-type-radios .form-item label:hover:after,
.no-touchevents .js-form-type-radio label:hover:after{
background: #babcbd;
opacity: 1;
}

.js-form-type-checkboxes .form-item input:checked~label:after,
.js-form-type-checkbox input:checked~label:after,
.js-form-type-radios .form-item input:checked~label:after,
.js-form-type-radio input:checked~label:after{
opacity: 1;
background: #a100ff;
}

.form-item .description{
font-size: var(--font-size-small);
line-height: var(--line-height-small);
}

.form-item .description a{
text-decoration: underline;
}

.js-form-type-checkbox .description,
.js-form-type-radio .description{
padding-left: 45px;
}

.js-form-type-checkbox.disabled,
.js-form-type-radio.disabled{
opacity: 0.3;
}

form #messages{
display: none;
}

fieldset{
border: 0;
border-radius: 0;
margin: 0 0 20px 0 !important;
padding: 0 !important;
background: none;
min-inline-size: unset;
}

fieldset.form-item{
margin-bottom: 0;
}

fieldset legend{
font-weight: 700;
font-size: var(--font-size-small);
line-height: var(--line-height-small);
margin: 0 0 15px 0;
float: left;
width: 100%;
}

fieldset .fieldset-wrapper{
float: left;
width: 100%;
}

.form-item--error input.form-text,
.form-item--error input.form-email,
.form-item--error input.form-tel,
.form-item--error input.form-number,
.form-item--error textarea,
.form-item--error .chosen-single{
border-color: #d43f3f !important;
}

.form-item--error>label,
.form-item--error.form-no-label .form-item>label,
.form-item--error .chosen-single span,
.form-wrapper.form-item--error legend,
.form-wrapper.form-item--error .form-item>label{
color: #d43f3f !important;
}

.form-item--error-message,
span.form-item--error,
label.error{
position: absolute;
top: 100%;
left: 0;
margin-top: 2px;
font-size: 10px;
line-height: 12px;
color: #d43f3f;
display: none;
font-weight: 700;
}

.form-item--error-message strong,
span.form-item--error strong,
label.error strong{
color: #d43f3f;
}

.form-item--error .form-item--error-message,
.form-item--error span.form-item--error,
.form-item--error label.error{
display: block;
}

.js-form-type-checkboxes .form-item .form-item--error-message,
.js-form-type-checkbox .form-item--error-message,
.js-form-type-radios .form-item .form-item--error-message,
.js-form-type-radio .form-item--error-message,
.js-form-type-checkboxes .form-item span.form-item--error,
.js-form-type-checkbox span.form-item--error,
.js-form-type-radios .form-item span.form-item--error,
.js-form-type-radio span.form-item--error,
.js-form-type-checkboxes .form-item label.error,
.js-form-type-checkbox label.error,
.js-form-type-radios .form-item label.error,
.js-form-type-radio label.error{
padding-left: 40px;
}

.form-item--error-message a,
label.error a{
color: #d43f3f;
text-decoration: underline;
}

.form-item--error-message a:hover,
label.error a:hover{
text-decoration: none;
}

.form-type-managed-file.form-item--error .description{
border: 1px solid #d43f3f;
}

.chosen-container-single{
color: #000000;
}

.chosen-container-single .chosen-single{
font-family: "Faktum", sans-serif;
font-weight: 400;
font-style: normal;
font-size: var(--font-size-default);
line-height: 20px;
background: #ffffff !important;
border-radius: 0;
border: 1px solid #dddddd !important;
padding: 0;
width: 100%;
color: #000000 !important;
box-shadow: none !important;
outline: none !important;
height: 55px !important;
text-align: left;
transition: border 0.5s;
}

.chosen-container-single .chosen-single div{
right: 20px;
margin-top: -5px;
}

.chosen-container-single .chosen-single div b{
border-color: #000000;
padding: 3px;
}

.chosen-container-single .chosen-single span{
line-height: 20px;
padding: 25px 40px 10px 20px;
}

.chosen-container-single .chosen-single.chosen-default{
color: #000000;
text-align: right;
}

.chosen-container-single .chosen-single.chosen-default span{
opacity: 0.5;
padding-top: 17px;
}

.chosen-container-single .chosen-single.chosen-default div b{
opacity: 0.5;
border-color: #000000;
}

.chosen-container-single .chosen-drop{
border-radius: 0;
}

.chosen-container-single .chosen-drop .chosen-results{
padding: 15px 20px 0 20px;
}

.chosen-container-single .chosen-drop .chosen-results li{
font-size: var(--font-size-default);
line-height: var(--line-height-default);
}

.chosen-container-single .chosen-drop .chosen-results li.highlighted,
.chosen-container-single .chosen-drop .chosen-results li.result-selected{
color: #a100ff;
}

.chosen-container-single .chosen-single:hover,
.chosen-container-active.chosen-with-drop .chosen-single{
border-color: #000 !important;
}

[placeholder]{
text-overflow: ellipsis;
}

::-webkit-input-placeholder{
text-overflow: ellipsis;
}

::-moz-placeholder{
text-overflow: ellipsis;
}

:-ms-input-placeholder{
text-overflow: ellipsis;
}

:-moz-placeholder{
text-overflow: ellipsis;
}

.form-type-managed-file{
position: relative;
}

.form-type-managed-file>label{
display: none !important;
}

.form-type-managed-file .form-managed-file{
position: relative;
}

.form-type-managed-file .form-managed-file .messages{
position: absolute;
z-index: 19;
color: #d43f3f;
font-size: 10px;
line-height: 10px;
margin: 0;
top: 300px;
text-align: center;
width: 100%;
padding: 0 35px 35px 35px;
transform: translateY(-100%);
font-weight: 700;
}

.form-type-managed-file .form-managed-file input.form-file{
height: 300px;
border: none;
border-radius: 0;
display: block;
width: 100%;
text-indent: -9999999px;
transition: none !important;
cursor: pointer;
position: relative;
z-index: 19;
font-size: 0px;
color: #ffffff;
margin: 0;
background: none;
}

.form-type-managed-file .form-managed-file input.form-file::-ms-value{
background: none;
border: 0;
}

.form-type-managed-file .form-managed-file input.form-file::-ms-browse{
display: none;
}

.form-type-managed-file .form-managed-file input.form-file .file--image{
background: none !important;
}

.form-type-managed-file .form-managed-file .form-submit{
display: none !important;
}

.form-type-managed-file .form-managed-file>.form-type-checkbox{
margin-top: 20px;
margin-bottom: 20px;
}

.form-type-managed-file .form-managed-file>.form-type-checkbox+.form-submit{
display: block !important;
background-color: transparent;
padding: 0;
font-size: 12px;
line-height: 20px;
color: #000000 !important;
text-decoration: underline;
border: none;
font-weight: 700;
border-radius: 0;
}

.form-type-managed-file .form-managed-file>.form-type-checkbox+.form-submit:hover{
color: #d43f3f !important;
}

.form-type-managed-file .description{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 300px !important;
color: #ffffff;
z-index: 9;
background: #ffffff;
border-radius: 0;
border: 1px solid #dddddd;
height: 100%;
}

.form-type-managed-file .description:before{
content: "";
position: absolute;
top: 15px;
right: 15px;
width: calc(100% - 30px);
height: calc(100% - 30px);
border: 2px dashed #dddddd;
transition: border-color 0.5s;
border-radius: 0;
}

.form-type-managed-file .description>div{
position: absolute;
top: 50%;
left: 0;
width: 100%;
padding: 0 45px;
transform: translateY(-50%);
text-align: center;
font-size: var(--font-size-small);
line-height: var(--line-height-small);
color: #000000 !important;
}

.form-type-managed-file .description>div::before{
font-family: 'icomoon' !important;
speak: never;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: '\e902';
font-size: 40px;
line-height: 40px;
color: #a100ff;
margin-bottom: 20px;
}

.form-type-managed-file .description>div p{
margin: 0 0 10px 0;
}

.form-type-managed-file:hover .description:before{
border-color: #000;
}

.form-type-managed-file .form-item--error-message{
display: none !important;
}

.form-actions{
margin-top: 40px;
}

.grecaptcha-badge{
visibility: hidden;
}

@media screen and (min-width:1024px){
.form-type-managed-file .form-managed-file input.form-file{
height: 250px;
}

.form-type-managed-file .description{
height: 250px !important;
}
}

#node-kontakt #einleitung{
padding-bottom: 0 !important;
}

#node-kontakt #einleitung .locations .titles{
display: flex;
gap: 30px;
margin-bottom: 40px;
}

#node-kontakt #einleitung .locations .titles a{
opacity: 0.3;
cursor: pointer;
display: block;
margin: 0;
}

#node-kontakt #einleitung .locations .titles a.is-active{
opacity: 1;
}

#node-kontakt #einleitung .locations .titles a:hover{
opacity: 1;
}

#node-kontakt #einleitung .locations .items .item{
display: none;
}

#node-kontakt #einleitung .locations .items .item a.spamspan{
color: #a100ff;
text-decoration: underline;
font-weight: 700;
}

#node-kontakt #einleitung .locations .items .item a.spamspan:hover{
color: #ff9900;
}

#node-kontakt #einleitung .locations .items .item.is-active{
display: block;
}

#node-kontakt #einleitung .actions{
display: flex;
gap: 15px;
}

#node-kontakt #einleitung .image-container .item{
display: none;
height: 100%;
}

#node-kontakt #einleitung .image-container .item.is-active{
display: block;
}

#node-kontakt #form{
padding: 60px 0;
}

#node-kontakt #form .form-item-ich-akzeptiere-die-a-target__blank-href-node-2-datenschutzbestim{
margin-top: 40px;
}

#node-kontakt #billing{
padding: 60px 0;
position: relative;
}

#node-kontakt #billing:before{
content: "";
position: absolute;
left: 30px;
top: 0;
width: calc(100% - 60px);
height: 1px;
background: #dddddd;
}