@import url('fonts/fonts.css');

html, body{
    min-width: 320px;
}
a,
a:hover,
a:focus,
a:active { text-decoration: none; }
@media (min-width: 1200px) {
    .container {
        width: 960px;
    }
}

.cleafix:before,
.clearfix:after {
    content: "";
    display: table;
}
.parent:after {
    clear: both;
}

.float-left{
    float: left;
}
body{
    background-color: #f9faff;
    font-family: PTSans;
    font-size: 14px;
}
/*Form*/
#kontakt-dialog .modal-content,
#message-dialog .modal-content{
    border-radius: 0;
    border: 2px solid #ea6846;
}
#kontakt-dialog label{
    font-family: "PTSans";
    font-size: 16px;
    font-weight: normal;
    color: #6a78ba;
}
#kontakt-dialog textarea{
    resize: vertical;
}
#kontakt-dialog input,
#kontakt-dialog textarea{
    border-radius: 0;
    border: 1px solid #6a78ba;
}
#kontakt-dialog input[type=submit]{
    padding: 10px 15px;
    background: #ffece7;
    border: 1px solid #ea6846;
    color: #ae4328;
}
#message-dialog .message{
    font-family: "PTSans";
    font-size: 16px;
    font-weight: normal;
    color: #6a78ba;
    margin-bottom: 0;
}
footer a,
footer a:hover,
footer a:focus,
footer a:active{
    color: #ae4328;
    font-family: "PTSans";
    font-size: 14px;
    font-weight: normal;
    text-decoration: underline;
}
.impressum,
.kontakt{
    padding-top: 30px;
    padding-bottom: 50px;
    font-family: PTSans;
    font-size: 16px;
}
.kontakt .item{
    padding-bottom: 30px;
}
.kontakt #map{
    margin-bottom: 40px;
}
/**/
.nav > li > a:hover, .nav > li > a:focus{
    background-color: transparent;
}
.logo{
    padding-top: 12px;
    padding-bottom: 15px;
    text-align: center;
}
.logo img{
    max-width: 102px;
    width: 100%;
}
.nav > li > a{
    padding-left: 7px;
    padding-right: 7px;
    margin-top: 10px;
    font-family: "PTSans";
    text-transform: uppercase;
    color: #000000;
    font-size: 15px;
    font-weight: bold;
}
.nav > li.active > a{
    color: #ea6846;
}
header,
footer,
.sections,
.section{
    max-width: 2000px;
    position: relative;
    margin: 0 auto;
}
header .kontakts > div{
    margin-right: 20px;
    font-family: "PTSans";
    font-size: 12px;
}
@media (min-width: 768px){
    header .kontakts > div {
        font-size: 15px;
    }
}
.navbar-collapse{
    padding-left: 0;
    padding-right: 0;
}

header .navbar{
    margin-bottom: 0;
}

header .title h1{
    color: #ffffff;
    font-size: 22px;
    text-align: left;
    margin: 0;
    font-family: "PTSansNarrow";
}
@media (min-width: 354px){
    header .title h1{
        font-size: 28px;
    }
}
header .title h1 span{
    background-color: #ea6846;
    padding: 10px 15px 5px 10px;
    display: inline-block;
}
.content .overview{
    margin-top: 20px;
    margin-bottom: 20px;
}
.content .overview .image{

}
.team .overview .image{
    text-align: center;
    margin-bottom: 10px;
}
.content .overview .description h2{
    font-size: 24px;
    font-family: "PTSans";
    font-weight: bold;
    text-align: center;
}
.content .overview .description p{
    font-family: "PTSans";
    font-size: 16px;
    color: #303030;
}
.sections{
    margin-bottom: 15px;
}
.sections .icons{
    border-top: 1px solid #e1e4f2;
}
.sections .icons .icon{
    cursor: pointer;
    position: relative;
    float: left;
    padding: 25px 5px 15px 5px;
    height: 145px;
    background-color: #f9faff;
    width: 50%;
}
.sections .icons .icon:first-child{
    padding-left: 0;
}
.sections .icons .icon:last-child{
    padding-right: 0;
    width: 100%;
}
@media (min-width: 768px) {
    .sections .icons .icon,
    .sections .icons .icon:last-child{
        width: 33.3%;
    }
    .sections .icons .icon:last-child{
        width: 100%;
    }
}
@media (min-width: 992px) {
    .sections .icons .icon,
    .sections .icons .icon:last-child{
        width: 14.28%;
    }
}
@media (min-width: 1200px) {
    .sections .icons .icon,
    .sections .icons .icon:last-child{
        width: 14.28%;
    }
}
.sections .icons .icon .image{
    width: 56px;
    height: 56px;
    line-height: 50px;
    text-align: center;
    border-radius: 28px;
    background-color: #6a78ba;
    margin: 0 auto 5px auto;
}
.sections .icons .icon.active .image{
    background-color: #ea6846;
}
.sections .icons .icon .title{
    text-align: center;
    color: #303030;
    font-size: 14px;
    font-family: "PTSans";
    height: 40px;
}
.sections .icons .icon.active .title{
    color: #ea6846;
}

.sections .overview{
    padding-top: 32px;
    padding-bottom: 32px;
    min-height: 280px;
    background-color: #eff1f8;
}
.sections.with-corousel .icons .icon.active:after{
    display: block;
    content: '';
    position: relative;
    width: 36px;
    height: 36px;
    background-color: #f9faff;
    margin: 0 auto;
    transform:  rotate(45deg);
    z-index: -1;
}
.sections .carousel-indicators{
    left: 0;
    margin-left: 0;
    position: relative;
    width: 100%;
    bottom: 0;
    padding-right: 0;
    padding-left: 0;
}
.sections .carousel-control, .carousel-control{
    position: relative;
    text-shadow: none;
    opacity: 1;
    width: auto;
    background-image: none;
    background-color: transparent;
}
.button{
    display: inline-block;
    border: 1px solid #6a78ba;
    height: 38px;
    border-radius: 19px;
    min-width: 180px;
    line-height: 35px;
    color: #6a78ba;
    text-align: center;
    padding: 0 25px;
    font-weight: normal;
    font-size: 16px;
    font-family: "PTSans";
    text-decoration: none;
}
.button.active,
.button:hover,
.button:focus,
.button:active{
    background-color: #6a78ba;
    color: #f9faff;
    text-decoration: none;
}
.button.next{
    padding-right: 10px;
}
.button.next span{
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    background-image: url('../images/btn-next.png');
    background-repeat: no-repeat;
    background-position: right center;
    padding-right: 25px;
}
.button.prev{
    padding-left: 35px;
    background-image: url('../images/btn-prev.png');
    background-repeat: no-repeat;
    background-position: left 10px center;
}
.button.next:hover span,
.button.next:focus span,
.button.next:active span{
    background-image: url('../images/btn-next-inverted.png');
}
.sections .overview .image{
    margin-top: 15px;
}
.sections .overview .image img{
    margin: 0 auto;
    width: 80px;
}
.sections .overview .description{

}
.sections .overview .description header{
    font-size: 24px;
    font-family: "PTSans";
    color: #6a78ba;
}
.sections .overview .description h2{
    margin-top: 10px;
    font-size: 24px;
    font-family: "PTSans";
    color: #303030;
    font-weight: bold;
}
.sections .overview .description p{
    font-family: PTSans;
    font-size: 16px;
    color: #303030;
}

.sections .overview .description .buttons{
    font-size: 16px;
    color: #303030;
    font-family: PTSans;
    margin-top: 20px;
}
footer{
    background-color: #6a78ba;
    padding-top: 50px;
    padding-bottom: 45px;
    font-family: PTSans;
    font-size: 16px;
}
footer .white,
footer .white a{
    color: #ffffff;
}
footer .kontakts > div{
    margin-right: 20px;
}
footer .violet{
    margin-top: 20px;
}
footer .violet,
footer .violet a{
    color: #222f6a;
}
footer a{
    text-decoration: none;
}
footer .nav{

}
footer .nav li{
    display: inline-block;
    padding: 0 8px 0 0;
    font-size: 16px;
    text-transform: none;
}
footer .nav li:first-child{
    padding-left: 0;
}
footer .nav li a,
footer .nav li a:focus,
footer .nav li a:hover,
footer .nav li a:active{
    display: auto;
    text-transform: none;
    padding: 0;
    margin: 0;
    background-color: transparent;
}
footer .nav > li > a{
    display: inline;
    font-weight: normal;
    font-size: 13px;
}
@media (min-width: 768px){
    footer .nav > li > a{
        display: inline;
        font-weight: normal;
        font-size: 15px;
    }
}
footer .nav > li > a:hover,
footer .nav > li > a:focus,
footer .nav > li > a:active{
    color: #505e9c;
    background-color: transparent;
}
footer a,
footer a:focus,
footer a:hover,
footer a:active{
    text-decoration: none;
    margin-right: 10px;
    margin-left: 0;
}
footer .form-inline input.form-control[type="email"]{
    width: 150px;
    font-size: 12px;
    height: 31px;
}
footer .btn.go{
    background-color: #ea6846;
    border-color: #ea6846;
    color: #ffffff;
    font-size: 12px;
    display: inline-block;
    height: 31px;
    line-height: 12px;
}
footer .btn.go.active,
footer .btn.go:active,
footer .btn.go:focus,
footer .btn.go:hover{
    background-color: #ae4328;
    border-color: #ae4328;
    color: #ea6846;
}

footer .copyright,
footer .navigation{
    margin-top: 5px;
    margin-bottom: 10px;
    font-size: 13px;
}
@media (min-width: 768px){
    footer .copyright,
    footer .navigation{
        font-size: 15px;
    }
}
footer .form{
    margin-bottom: 10px;
}
footer .form-group{
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
}
.section{
    padding-bottom: 32px;
    padding-top: 32px;
}
.section.even{
    background-color: #eff1f8;
}
.section.odd{
    background-color: #f9faff;
}
.section .description header {
    color: #6a78ba;
    font-family: "PTSans";
    font-size: 24px;
}
.section .description h2{
    color: #303030;
    font-family: "PTSans";
    font-size: 24px;
    font-weight: bold;
    margin-top: 10px;
}
.section .description p{
    font-family: PTSans;
    font-size: 16px;
    color: #303030;
}
.section .description .buttons {
    color: #303030;
    font-family: PTSans;
    font-size: 16px;
    margin-top: 20px;
}
.next-page{
    margin-top: 30px;
    margin-bottom: 30px;
}
.grundsatze .section{
    padding-top: 0;
}
.grundsatze .section .description{
    border-top: 1px solid #e1e4f2;
    padding-top: 50px;
    padding-bottom: 10px;
}
.grundsatze .section:first-child .description{
    border-top: 0;
}
.team .overview .description h2{
    margin-top: 0;
}
.team .overview{
    border-top: 1px solid #e1e4f2;
    padding-top: 50px;
}
.team .overview:first-child{
    border: 0;
    padding-top: 20px;
}
.kontakt .top-block{
    height: 300px;
    background-color: #e1e4f2;
    margin-top: 22px;
    margin-bottom: 22px;
}
footer .violet a:hover,
footer .violet a:focus,
footer .violet a:active{
    color: #505e9c;
}
ul li{
    font-size: 16px;
}
@media (max-width: 992px) {
    .navbar-header {
        float: none;
    }
    .navbar-toggle {
        display: block;
    }
    .navbar-collapse {
        border-top: 1px solid transparent;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
    }
    .navbar-collapse.collapse {
        display: none!important;
    }
    .navbar-nav {
        float: none!important;
        margin: 7.5px -15px;
    }
    .navbar-nav>li {
        float: none;
    }
    .navbar-nav>li>a {
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .navbar-text {
        float: none;
        margin: 15px 0;
    }
    /* since 3.1.0 */
    .navbar-collapse.collapse.in {
        display: block!important;
    }
    .collapsing {
        overflow: hidden!important;
    }
}
#dropdownMainMenu{
    margin-top: 10px;
    float: right;
}
.dropdown-menu{
    left: auto;
    right: 0;
}
header .kontakts > div{
    margin-top: 0;
    padding-top: 0;
}
header .kontakts{
    margin-top: 10px;
    padding: 5px 0 15px 0;
    /*padding-bottom: 15px;
    */
}
header .kontakts > div.email{

}
@media (min-width: 540px) {
    header .kontakts{
        padding-top: 15px;
    }
}
.dropdown-menu>.active>a, .dropdown-menu>.active>a:hover, .dropdown-menu>.active>a:focus{
    background-color: #515b8c;
}
.img-responsive{

}

/* referenzen */

.picture{
    text-align:  center;
    padding-top: 15px;
}

.picture img {
    width: 290px;
}

.description .icon {
    width: 62px;
    height: 42px;
    padding-left: 10px;
    padding-right: 10px;
}

.description .icon img{
    width: 42px;
}

.description .description_text {
    width: calc(100% - 92px);
}

@media (min-width: 768px){
    .picture{
        text-align:  right;
        padding-left: 0;
        padding-right: 0;
    }

    .picture img {
        width: 188px;
    }
}

@media (min-width: 992px){
    .picture img {
        width: 240px;
    }
}

/* Typografie der Informationsseiten. */
.impressum h1, .impressum h2, .impressum h3,
.datenschutz h1, .datenschutz h2, .datenschutz h3,
.kontakt h1, .kontakt h2, .kontakt h3,
.bildrechte h1, .bildrechte h2, .bildrechte h3 {
    font-family: "PTSans";
    color: #303030;
    line-height: 1.25;
    margin-top: 0.9em;
    margin-bottom: 0.45em;
}
.datenschutz h1 { font-size: 28px; }
.datenschutz h2 { font-size: 22px; }
.datenschutz h3 { font-size: 18px; }
.impressum h1, .kontakt h1, .bildrechte h1 { font-size: 28px; }
.impressum h2, .kontakt h2, .bildrechte h2 { font-size: 22px; }
.impressum h3, .kontakt h3, .bildrechte h3 { font-size: 18px; }
.impressum p, .kontakt p, .bildrechte p, .datenschutz p,
.impressum li, .kontakt li, .bildrechte li, .datenschutz li {
    font-family: "PTSans";
    color: #303030;
    line-height: 1.55;
}

