h1, .h1{
	display: block;
    margin: 0;
    padding: 0 0 25px 0;
    font-size: 32px;
    line-height: 36px;
    font-weight: 500;
    color: #000;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}
h2, .h2{
	display: block;
    margin: 0;
    padding: 20px 0 15px;
	font-size: 25px;
    line-height: 34px;
    font-weight: 500;
    color: #000;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}
.headline:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 15px;
    width: 100px;
    height: 5px;
    background: #cf2030;
}
h3, .h3{}

.textred{color: #cf2030;}
sub {
    bottom: 0em;
}

sub, .sub, sup, .sup {
    font-size: .55em;
}
.logo{
	padding: 10px 0 10px 0;
	height: 80px;
}

.card {
    padding: 25px;
    margin-top: 25px;
	margin-bottom: 15px;
}

.hide{ display: none;}

fieldset {
    margin: 15px 0;
}
legend{
	background: #C8102E; color: #fff;
	padding: 5px 10px;
	margin: 15px 0;
}
strong{ font-weight: 700 !important;}

.btn-primary {
    color: #fff;
    background-color: #C8102E !important;
	border: 1px solid #C8102E;
	margin: 10px 0 15px 0;
	font-size: 18px;
}
.btn-primary:hover {
    color: #C8102E;
    background-color: #fff !important;
	border: 1px solid #C8102E;
	margin: 10px 0 15px 0;
	font-size: 18px;
}

.btn-secondary {
    color: #C8102E;
    background-color: #fff !important;
	border: 1px solid #C8102E;
	margin: 10px 0 15px 0;
	font-size: 18px;
}
.btn-primary:hover {
    color: #fff;
    background-color: #C8102E !important;
	border: 1px solid #C8102E;
	margin: 10px 0 15px 0;
	font-size: 18px;
}

.zusatzinfo{ border: 2px solid #cf2030;padding: 0.5rem 0.5rem 0 0.5rem; border-radius: 0.5rem;}

ul.stepper .step.active:before {
    background-color: #C8102E;
}
.form-check-input[type="radio"]:checked+label:after, .form-check-input[type="radio"].with-gap:checked+label:after, label.btn input[type="radio"]:checked+label:after, label.btn input[type="radio"].with-gap:checked+label:after {
    background-color: #C8102E;
}
.form-check-input[type="radio"]:checked+label:after, .form-check-input[type="radio"].with-gap:checked+label:before, .form-check-input[type="radio"].with-gap:checked+label:after, label.btn input[type="radio"]:checked+label:after, label.btn input[type="radio"].with-gap:checked+label:before, label.btn input[type="radio"].with-gap:checked+label:after {
    border: 2px solid #C8102E;
}

ul.stepper li a {
    padding: 0;
}

.ds-check-input{
    position: relative !important;
    pointer-events: none;
    opacity: 1!important;
}

/** Besucheranmeldung ****/
.required {
    border-left: 6px solid #cf2030!important;
}
.off {
    display: none;/**/
}
/** Besucheranmeldung ****/

.labelselect{
	display: inline-block;
    margin-bottom: .5rem;
}
.select-wrapper input.select-dropdown {
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    height: 40px;
    padding: 0;
    margin: -5px 0 0 0;
    font-size: 1rem;
    line-height: 2.9rem;
    text-overflow: ellipsis;
    cursor: pointer;
    background-color: transparent;
    border: none;
    border-bottom: none;
    outline: none;
}
.dropdown-content li>a, .dropdown-content li>span {
    display: block;
    padding: .5rem;
    font-size: .9rem;
    color: #495057;
}
.select-wrapper span.caret {
    right: 10px;
}

.text09{
	font-size: .9rem;
    font-weight: 300;
}


footer{ background: #ddd; color: #333; font-size: 12px;}
footer a{ display: inline-block; padding: 15px; color: #333;}

@media (max-width: 768px){
	h2, .h2 {
    font-size: 1.2em;
	}
	h3, .h3 {
    font-size: 1.2em;
	}
	ul.stepper .step-new-content {
		position: relative;
		display: none;
		width: inherit;
		height: calc(100% - 132px);
		margin-right: 0px;
		margin-left: 31px;
		overflow: visible;
	}	
	.form-check {
		position: relative;
		display: block;
		padding-left: 0rem;
	}
	.step-actions{}
	legend{ font-size: 1rem;}
}



