

@font-face{
  font-family:"TheSans";
  src:url("/templates/fonts/TheSans_LT_500_.eot");
  src:url("/templates/fonts/TheSans_LT_500_.eot?#iefix") format("embedded-opentype"),url("/templates/fonts/TheSans_LT_500_.woff") format("woff");
  font-weight:400;font-style:normal
}
@font-face{
  font-family:"TheSans";
  src:url("/templates/fonts/TheSans_LT_700_.eot");
  src:url("/templates/fonts/TheSans_LT_700_.eot?#iefix") format("embedded-opentype"),url("/templates/fonts/TheSans_LT_700_.woff") format("woff");
  font-weight:700;font-style:normal
}



/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -webkit-appearance: textfield;	
  -moz-appearance: textfield;
}




body, html { background:  #D1E2F6; font-family: "TheSans", sans-serif; font-size: 99.9999%; line-height: 1.4; margin:0; padding:0; color: #333;  scroll-behavior: smooth; }


body .max-width { max-width: 74em; padding-left: 0.93333em; padding-right: 0.93333em; margin-left: auto; margin-right: auto; }
body .flex { display: flex; }
body .flex-wrap { flex-wrap: wrap; }
body .space-between { justify-content: space-between; }
body .align-center { justify-content: center; }
body .valign-top { align-items: flex-start; }
body .valign-center { align-items: center; }

button, input, textarea { font-family: Verdana,"Lucida Sans",Arial,sans-serif;  }

#content a { color: #022d73; }

h1 { font-size: 1.25em; margin: 0 0 20px 0; padding: 0px 0 5px 0; line-height: 30px; border-bottom: 1px solid #dfdfdf; }
h3 { font-size: 2.15555rem; font-weight: 700; margin: 0; padding: 5px 0 15px 0; }

#title { margin:0; padding: 0.6333em 0; font-size: 1.25rem; line-height: 1.5; flex: 0 1 auto; color: #448DDE; }
#logo { margin: 0; padding:0.6333em 0; flex: 1 1 40%; max-width: 18rem; min-width: 14rem;  }
#logo img { width: 100%;  }

#header-container { position: relative; top: 0px; width: 100%; background: #fff; margin: 0 auto; }
#header { top:0px; width: 100%; background: #fff;  margin: 0 auto; padding: 0.93333em; }

#content-container { position: relative; width: 100%; z-index: 1; min-height: 500px; background: #f9f9f9; border-top: 1px solid #eee;  }
#content { position: relative; margin: 0 auto; top:0px; width: 100%; min-height: 400px; }


#progress-bar-1
{
margin: 80px 0 60px; 
width: 100%;
height: 6px;
border-radius: 50px;
background: #448DDE;
/* box-shadow: inset 0px 0px 2px 1px #ccc; */
display: flex;
justify-content: space-between;
}

.bullet { display: block; margin: -12px 3px auto; width:30px; height: 30px; border-radius: 50px; background: #fff; display: block; text-align: center; font-size: .825rem; font-weight: 700; line-height: 28px; color: rgb(25,44,112); border: 1px solid rgb(25,44,112); }
.done { 
  background: #448DDE ;
  text-decoration: none; color: #fff !important;
  border-color: #448DDE;
}
.current { 
background: rgb(25,44,112);
  color: #fff !important; 
}
.bullet:first-child { margin-left: 0; }
.bullet:last-child { margin-right: 0; }




#next-top { margin:67px 0 0 0; padding:7px 20px; border-radius: 4px; background: #d0e3f7; float: right; box-shadow:  1px 1px 1px 0px #aaa; display: block; text-align: center; font-size: 14px; cursor: pointer; }
#next-top:hover { background: #022d73; color: #fff; }
#next-bottom { margin:67px 0 0 0; padding:7px 20px; border-radius: 4px; background: rgb(10,50,112); float: right; box-shadow:  1px 1px 1px 0px #aaa; display: block; text-align: center; font-size: 14px; cursor: pointer; }
#next-bottom:hover { background: rgb(120,150,187); color: #fff; }


#topic-1 { margin:67px 0 0 0; width: 1000px; float: left; }
span.topic-title { line-height: 50px; font-weight: bold; }

span.question { padding-top: 20px; line-height: 30px; }
span.answer { text-align: center; } input { margin: 0; }
input.text-field { background: #fff; border: none; box-shadow: inset 0px 1px 3px 0px #ccc; padding: 4px 6px; font-size: 14px; width: 80px; margin: 0px 5px; }

#topic-2 { margin:20px 0 0 0; width: 1000px; float: left; }



#slider { clear: both; position: relative; width: 100%; max-width: 74em; height: auto; margin: 0 auto; padding: 0; background: none; }
#slider .questions { display: block; width: 100000px; height: 500px; overflow: hidden; list-style: none; margin: 0; padding: 0; }

#slider .question { margin: 0; background: none; width: 100%; height: auto; min-height: auto; overflow: hidden; 
					border-top: 1px solid #ddd; padding: 1.4333rem 0.9333rem 1.43333rem 0;
}
#slider .question p { line-height: 1.25; margin: 0 0 0.9333rem;; }
#slider .question p.error { color: #dc1200; }

#slider .question label.error { color: #dc1200; }
#slider .question ul { margin: 0; padding: 0; list-style: none; position: relative; display:flex; flex-wrap: wrap; }
#slider .question li { width: 100%; margin: 0; padding: 0; line-height: 1; text-align: left; background: none; }
#slider .question ul li.error { display: none; position: absolute; top: -2px; right: 0px; width: 24px; height: 24px; border: 2px solid #fff; border-radius: 12px; -moz-border-radius: 12px; -ms-border-radius: 12px; text-align: center; background: #dc1200; box-shadow: 0 0 2px #444; color: #fff; font-weight: bold; line-height: 18px; }
#slider .question ul.error li.error { display: block; }
#slider .question li.w1 { width: 100%;  text-align: left; background: none; }
#slider .question li.w2 { width: 50%;  text-align: center; }
#slider .question li.w3 { width: 33%;  text-align: center; }
#slider .question li.w4 { width: 25%;  text-align: center; min-width: 5rem; }
#slider .question li.w5 { width: 20%;  text-align: center; min-width: 5rem; }
#slider .question li.w6 { width: 16%;  text-align: center; min-width: 5rem; }
#slider .question li.w7 { width: 16%;  text-align: center; min-width: 5rem; }
#slider .question li.w8 { width: 16%;  text-align: center; min-width: 5rem; }
#slider .question li.w9 { width: 50%;  text-align: center; min-width: 5rem; }


#slider .question li.labelrows { width: 100% !important; text-align: left; }

#slider .question li label { font-size: 1rem; }


#slider .question input[type="text"],
#slider .question input[type="email"],
#slider .question input[type="number"]
 {
  height: 2.4375rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  margin: 0 0 1rem;
  font-family: inherit;
  font-size: 1rem;
  color: #0a0a0a;
  background-color: #fefefe;
  box-shadow: inset 0 1px 2px rgb(10 10 10 / 10%);
  border-radius: 3px;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
}

#slider .question input[type="text"] { border: 1px solid #bbb; padding: 3px 4px; text-align: left; width: 18rem; margin-left: 20px;  }
#slider .question input[type="email"] { border: 1px solid #bbb; padding: 3px 4px; text-align: left; width: auto; margin-left: 0px;  }

#slider .question input[type="number"] { border: 1px solid #bbb; padding: 3px 4px; text-align: right; }
#slider .question input:focus { box-shadow: 0 0 5px rgba(149, 221, 15, 0.83) !important; border-radius: 5px;  }
/* #slider .question input[checked="checked"] { background: rgb(120,150,187); border: 3px solid rgb(120,150,187); } */

#slider .question label { display: block; padding: 0 0 8px 0; position: relative; }
#slider .noLabel label { display: none!important; }

#slider .question input[type=radio] { display: inline-block; transform: scale(1.2); display: none; }

#slider .question li.w100inline { width: 100%; display: flex; justify-content: flex-start; align-items: center; padding: 0.7333rem 0; border-top: 1px solid #ccc; }
#slider .question li.w100inline.qr1 { padding-top: 0; border-top: 0; }

#slider .question li.w100inline input[type="checkbox"] { margin: 0 0.93333rem 0 0; transform: scale(1.2); } 
#slider .question li.w100inline label { background: none; margin: 0 0 1px 0; padding: 0;  }


#slider .question input[type=radio] + label { padding-top: 2.333rem; cursor: pointer; }
#slider .question input[type=radio] + label:before { content:""; position: absolute; top: 0rem; left:50%; margin: 0 0 0 -0.9333rem; height: 1.866rem; width: 1.866rem; background: none; border: 1px solid #022d73; border-radius: 1.8666rem; }
#slider .question input[type=radio]:checked + label:after { content:""; position: absolute; top: 0.4333rem; left:50%; margin: 0 0 0 -0.5rem; height: 1rem; width: 1rem; background: #448DDE; border-radius: 1rem; }


@media only screen and (min-width: 46.875em) {
  #slider .question { display: flex; align-items: center; }
  #slider .question p { flex: 1 1 40%; max-width: 40%; margin: 0;}
  #slider .question ul { flex: 1 1 60%; min-width: 200px; }

  #slider .question.introtext p { flex: 1 1 100%; max-width: 100%; }

}


#slider .question .introtext { padding: 2rem 0!important; }

#slider .inlineQuestion input[type=text] { margin: 8px 0 0 0; }
#slider .inlineQuestion input[type=number] { margin: 8px 0 0 0; }
#slider .inlineQuestion label { display: inline!important; }
#slider .inlineQuestion .inlineInputContainer { position: relative; top: 0; left: 0; }
#slider .inlineQuestion .inlineInputContainer span.error { display: none; position: absolute; top: -2px; right: -28px; width: 24px; height: 24px; border: 2px solid #fff; border-radius: 12px; -moz-border-radius: 12px; -ms-border-radius: 12px; text-align: center; background: #dc1200; box-shadow: 0 0 2px #444; color: #fff; font-weight: bold; line-height: 18px; }
#slider .inlineQuestion p.error label { color: #dc1200; }

#slider .question li.labelrows input[type="radio"] { display: inline-block; margin: 3px 0 0 0; }
#slider .question li.labelrows label { margin-left: 22px; }

#slider .inlineQuestion p.error { color: #333; }
#slider .inlineQuestion p.error .inlineInputContainer span.error { display: block;  }

.questionsgroup { clear: both; overflow: hidden; display: padding: 0 0 35px 0; width: 940px; }
.questionsgroup h3 { margin: 0 0 0 0; font-size: 1.2555em; }
.questionsgroup p { margin: 0 0 15px 0; }
#slider ul.questiongroup-answers { float: right; width: 410px; margin: 0; padding: 0 10px 0 0; list-style: none; background: none; overflow: hidden; }
#slider ul.questiongroup-answers li { float: left; text-align: center; width: 100%; margin: 0; padding: 0 0 10px 0; line-height: 20px; }
#slider ul.questiongroup-answers li.w2 { width: 50%; }
#slider ul.questiongroup-answers li.w3 { width: 33%; }
#slider ul.questiongroup-answers li.w4 { width: 25%; }
#slider ul.questiongroup-answers li.w5 { width: 20%; }
#slider ul.questiongroup-answers li.w6 { width: 16%; }
#slider ul.questiongroup-answers li.w7 { width: 16%;  }
#slider ul.questiongroup-answers li.w8 { width: 16%; }
#slider ul.questiongroup-answers li.w9 { width: 50%; }
#slider ul.questiongroup-answers li  { font-size: 12px;  }

.postfix { margin: 0 0 0 10px; }

.buttonBox { clear: both; background: none; padding: 20px 20px 20px; height: 70px; }
.nextButton { float: right; 
    background: #448DDE;
    color: #fff; font-size: 100%; font-weight: normal; text-decoration: none; padding: 0.555rem 1.8666rem; border-radius: 3px; color:#fff !important; 
    transition: background 0.3s ease-out;
}
.submitButton { float: right; 
  background: #448DDE;
  color: #fff; font-size: 100%; font-weight: normal; text-decoration: none; padding: 0.555rem 1.8666rem; border-radius: 3px; cursor: pointer; color: #fff !important;
  transition: background 0.3s ease-out;
}
.nextButton:hover { background: #2576D1;  }
.submitButton:hover { background: #2576D1; }

.nextButton:active { box-shadow: 0 -2px 5px rgba(0,0,0,0.5); }
.submitButton:active { box-shadow: 0 -2px 5px rgba(0,0,0,0.5); }


hr { border-left:0px; border-right: 0px; border-top: 0px; border-bottom: 1px dashed #ddd; }

#footer-container { position: relative; width: 100%; min-height:80px; background: transparent; border-top: 1px solid #fff; padding-bottom: 1.2333rem; }
#footer { margin: 0 auto; padding: 30px 0.9333em 0; width: 100%; }
#footer * {  font-size: 1rem; color: #448DDE; }
#footer a { display: inline-block; margin: 0 auto; padding: 0 0.4333rem; text-decoration: none; transition: color 0.3s ease-out; }
#footer a:first-child { padding-left: 0; }
#footer a:hover { color: #073070; }
#imprint { margin: 0; margin-bottom: 0.93333rem; }
#copy { margin: 0; margin-bottom: 0.93333rem;}


.admin h1 { padding: 50px 0 0 0; }

@media only screen and (min-width: 46.875em) {
  #footer { display: flex; justify-content: space-between; }
}


.introBlueBox { display: block; background: #D1E2F6; padding: 1.8666rem; border-radius: 5px; }