/*----------------------------------Main----------------------------------*/
body {
    font-size: 17px;
    line-height: 24px;
}

h1, h2 {
    font-size: 30px;
    line-height: 40px;
}
h3 {
    margin: 68px 0 22px 0;
    font-size: 30px;
    line-height: 40px;
}
h4 {
    margin: 0 0 30px 0;
    font-size: 20px;
    line-height: 30px;
}
h5 {
    font-size: 24px;
    line-height: 32px;
    margin: 0 0 10px 0;
    font-weight: 500;
}
h6 {
    font-size: 16px;
    line-height: 24px;
    margin: 0 0 15px 0;
    color: var(--maincolor);
}
strong, b {
    font-weight: 700;
}
#search_box {
    width: 90%;
    height: 213px;
    margin: 18vh auto 0 auto;
}
.cta, .cta:hover {
    margin: 0 0 20px 0;
    background-position: right 20px center;
}
.cta a {
    padding: 11px 42px 10px 26px;
    font-size: 15px;
    line-height: 15px;
}
#header_box {
    padding: 22px 0 25px 0;
}
.neg_spacer {
    margin: 0 0 -41px 0;
}
.quote_serif {
    font-size: 20px;
    line-height: 30px;
}
.intro_headline {
    /*-moz-hyphens: auto;
    -o-hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;*/
}
#smartmenu {
    display: none;
    position: fixed;
    width: 100%;
    height: calc(100% + 156px);
    top: 148px;
    right: 0;
    bottom: 0;
    box-shadow: none;
    left: 0;
    z-index: 999999;
    border-top: 1px solid var(--midgrey);
    background-color: var(--background);
}
#smartmenu.sticky {
    position: fixed;
    height: calc(100% + 80px);
    top: 80px;
}

.intro_fontsize {
    font-size: 20px;
    line-height: 28px;
}
.sp-buttons {
    display: none;
}

/*----------------------------------Sidebar----------------------------------*/
.sidebar_smart {
    display: block;
}
#sidebar {
    display: none !important;
}
.quickbox {
    display: block;
    background-color: #fff;
}
#sidebar_menu p {
    margin: 0;
}
#sidebar_menu {
    position: relative;
    z-index: 1030;
    display: none;
}
#sidebar_menu.sticky {
    position: fixed;
    width: 100%;
    top: 128px;
    /*z-index: 1031;*/
    z-index: 999998;
    display: none;
}
#sidebar_menu .sidebar_icon {
    width: 68px;
    height: 68px;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: bottom;
    border-bottom: 1px solid var(--midgrey);
    float: left;
}
#sidebar_menu .sidebar_slider {
    height: 68px;
    width: calc(90% - 68px);
    padding: 0 5%;
    display: flex;
    align-items: center;
    font-size: 14px;
    line-height: 18px;
    color: var(--maincolor);
    background-color: #fff;
    border-bottom: 1px solid var(--midgrey);
    float: left;
    cursor: pointer;
}
#sidebar_menu .sidebar_slider a {
    color: var(--maincolor);
    cursor: pointer;
}
#sidebar_menu .sidebar_slider a:hover {
    font-weight: 700;
}
#sidebar_menu .sidebar_slider.arrow {
    background-image: url("../images/Arrow_InternalLink.svg");
    background-repeat: no-repeat;
    background-size: 18px 18px;
    background-position: right 25px center;
}
#sidebar_menu .jobs_sum {
    margin: -5px 15px 0 0;
    font-size: 32px;
    color: var(--maincolor);
    font-weight: 700;
}
#sidebar_menu a:hover {
    font-weight: 400 !important;
}


/*----------------------------------Module----------------------------------*/
.module {
    padding: 20px 0 !important;
}
.module.teaser {
    padding: 20px 0 0 0 !important;
}
.module.slideshow {
    margin: 0 0 30px 0;
}
.module_header {
    padding: 0 5%;
}
.icon {
    max-width: 900px;
    margin: 30px 0 34px 0;
}
.preline {
    margin: 0 0 28px 0;
    font-size: 17px;
    line-height: 24px;
}
.headline {
    margin: 0 0 19px 0;
    font-size: 32px;
    line-height: 40px;
}
.subline {
    margin: 0 0 30px 0;
    font-size: 17px;
    line-height: 24px;
}
.textlink.internal a, .textlink.external a, .textlink.downloads a {
    padding: 0 0 15px 0;
    padding-right: 28px;
    background-repeat: no-repeat;
    background-position: right 6px;
}
.module.text .intro_intro {
    margin: 0 0 32px 0;
}

.intro_intro {
    margin: 0 auto 30px auto;
}


.cols_3 .teaser_box .teaser_txt .cta p {
    display: block;
}
.g_rest {
    font-size: 24px;
    line-height: 32px;
}
.module.images_2 {
    margin: 0 0 9% 0;
}

/*--------------------Intro--------------------*/
.intro_content {
    font-size: 20px;
    line-height: 30px;
}
.module.text .intro_wrapper .module_header, .module.teaser .wrapper .module_header {
    margin: 0;
    padding: 0;
}

/*--------------------Slideshow--------------------*/
.module.slideshow.desktop {
    display: none;
}
.module.slideshow.smart {
    display: block;
}
.module.slideshow.smart {
    padding: 0 0 40px 0 !important;
    margin: 0 !important;
}
.slideshow_wrapper {
    width: 100%;
    padding: 0;
}
.slide_image {
    aspect-ratio: 390/520;
}
.slide_text.have_cta {
    padding: 0;
}
.slide_headline {
    max-width: 84%;
    margin: 0 auto 0 auto;
    font-size: 40px;
    height: 44px;
}
.slide_text.have_cta .slide_headline {
    margin: 0 auto;
    font-size: 40px;
    line-height: 48px;
    height: 44px;
}
.slide_cta {
    display: none;
}
.rsNav.rsBullets {
    display: none;
}
.color_desktop {
    display: none;
}
.color_smart {
    display: block;
}
.module.color_animation .slide_image {
    aspect-ratio: 390/520;
}
.module.color_animation .slide_text {
    bottom: 1.5%;
    width: 96%;
}
.module.color_animation .slide_cta {
    display: inline-block;
}
.module.color_animation .slide_headline {
    margin: 0 auto 20px auto;
    font-size: 24px;
    line-height: 30px;
    height: auto;
}
.job_bubble {
    top: 6%;
    right: 6%;
    width: 140px;
    height: 160px
}
.job_bubble img {
    max-width: 100%;
    height: auto;
}


/*--------------------Gallery--------------------*/
.galery {
    width: 100;
    margin: 40px 0 0 0;
}
.gallery .wrapper {
    width: 100;
    padding: 0;
}
.g_box {
    margin: 0 auto;
    float: none;
    clear: both;
}
.galery .g_text {
    display: block;
    width: 100%;
    margin: 0 auto;
    text-align: center;
}
.galery_1 .g_center {
    width: 60%;
    display: block;
    margin: 0 auto 35px auto;;
}
.galery_2 .g_center {
    width: 90%;
    text-align: left;
    display: block;
    margin: 0 auto 35px auto;;
}
.galery_1 .g_text {
    margin: 0;
}
.g_text .g_intro {
    font-size: 32px;
    line-height: 40px;
    margin: 0 0 7px 0;
}
.g_text .g_rest {
    font-size: 24px;
    line-height: 32px;
    width: 100%;
    margin: 0;
}
.galery_2 .g_text {
    margin: 0;
}
.galery_1 .g_image {
    width: 100%;
    margin: 0;
}
.galery_2 .g_image {
    width: 100%;
    margin: 0;
}
.galery_3 .g_image {
    width: 100%;
    margin: 0;
}

.img_txt_desktop {
    display: none;
}
.img_txt_smart {
    display: block;
}


/*--------------------Coverflow--------------------*/
.module.coverflow {
    max-width: 100%;
}
.cflow_image {
    width: 64%;
    margin: 0 0.1%;
}
.flipster.flipster--transform.flipster--flat {
    margin: 0 0 0 -5%;
}
.flipster__item--past, .flipster__item--future {
    transform: scale(80%);
}
.flipster__item--current {
    transform: scale(130%) !important;
    margin-left: -15%;
}
.cflow_image .img_copyright {
    bottom: 9px;
}
.outro {
    margin: 25px auto 0 auto;
    padding: 0 5%;
    font-size: 17px;
    line-height: 24px;
}
.sp-mask, .sp-grabbing, .sp-slide, .sp-image-container {
    height: 200px !important;
}

/*--------------------2 Bilder--------------------*/
.module.images_2 .wrapper {
    width: 90%;
}
.images_desktop {
    display: none;
}
.image_mobile {
    display: block;
    width: 111%;
    margin: 0 0 0 -5.5%;
    padding: 0;
    overflow: hidden;
}
.img_mobile {
    margin: 0;
    padding: 0;
    aspect-ratio: 1/1;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

/*--------------------2-Spalter--------------------*/
.left {
    display: block;
    margin: 0 0 15px 0;
    float: none;
}
.right {
    display: block;
    float: none;
}
.text_center {
    display: block;
    vertical-align: none;
}
.left_50, .right_50 {
    width: 100%;
}
.left_40, .right_40 {
    width: 100%;
}
.left_60, .right_60 {
    width: 100%;
}
/*--------------------Akkordeon--------------------*/
.acc_intro {
    margin: 0 0 5px 0;
}
.acc_title {
    width: 85%;
    padding: 12px 10% 12px 5%;
    margin: 14px 0 0 0;
    font-size: 14px;
    line-height: 18px;
    background-position: right 5% center;
}
.acc_content {
    padding: 8% 5.3%;
}

/*--------------------Text & Bild--------------------*/
.img_txt .wrapper {
    width: 100;
    padding: 0;
}
.left_img {
    width: 100%;
    margin: 0 0 15px 0;
    float: none;
}
.right_txt {
    max-width: 90%;
    margin: 0 5%;
    float: none;
}
.left_txt {
    margin: 0 5% 15px 5%;
    max-width: 90%;
    float: none;
}
.right_img {
    width: 100%;
    margin: 0;
    float: none;
}
.bt_box_desktop {
    display: none;
}
.bt_box_smart {
    display: block;
    margin: 0 0 50px 0;
}
.bt_box_smart:last-child {
    margin: 0 0 0 0;
}
.bt_box_smart img {
    max-width: 111%;
    height: auto;
    margin: 0 0 0 -5.5%;
}
.col1_content img {
    max-width: 111%;
    width: 111%;
    height: auto;
    margin: 0 0 0 -5.5%;
}

/*--------------------News--------------------*/
.inner_wrapper2 {
    width: 90%;
    padding: 0 5%;
}
.news .left_50 {
    max-width: 100%;
}
.news .pagination_arrows {
    margin: 50px 0 30px 0;
}
.news_content p, .trimmed_content p, .news_content h6, .trimmed_content h6 {
    margin: 0 0 10px 0;
}
.news_trigger {
    padding: 0 22px 0 0;
    margin-right: 10px;
    background-position: right 6px;
    background-size: 14%;
}
.prev_arrow {
    height: 15px;
}
.next_arrow {
    height: 15px;
}
.prev_arrow:hover {
    background-position: center top;
}
.next_arrow:hover {
    background-position: center top;
}

/*--------------------Teaser--------------------*/
.teaser_intro {
    max-width: aito;
    margin: 0 auto 20px auto;
}
.teaser_box {
    display: block;
}
.cols_1, .cols_2, .cols_3 {
    text-align: center;
    width: 100%;
}
.cols_1 .teaser_box, .cols_2 .teaser_box, .cols_3 .teaser_box {
    width: 100%;
    margin: 0 auto 40px auto;
}
.cols_1 .teaser_box:first-child, .cols_2 .teaser_box:first-child, .cols_3 .teaser_box:first-child {
    width: 100%;
    margin: 0 auto 40px auto;
}
.teaser_img {
    margin: 0 0 15px 0;
}

/*--------------------Zitat--------------------*/
.module.quote .wrapper {
    width: 84%;
    margin: 0 auto;
}
.module.quote {
    padding: 50px 0 !important;
    margin: 30px 0 10px 0 !important;
}
.quote_text {
    margin: 0 0 20px 0;
    font-size: 22px;
    line-height: 29px;
}

/*--------------------Jobs--------------------*/
.job_bubble {
    display: block;
}


/*--------------------Video-Player--------------------*/
.video_content {
    width: 111%;
    margin: 0 0 0 -5.5%;
    max-width: 904px;
    aspect-ratio: 16/9;
}
.video_content video {
    max-width: 100%;
    height: auto;
}
.video_description {
    width: 100%;
    max-width: 904px;
    margin: 27px auto 0 auto;
    font-size: 16px;
    line-height: 24px;
}

/*--------------------Links--------------------*/
.module.links {
    width: 100%;
    padding: 58px 0;
}
.module.links .wrapper {
    width: 85%;
}
.link_area {
    width: 100%;
    margin: 0;
}
.link_container {
    width: 100%;
    margin: 0;
}
.link_box {
    aspect-ratio: 128/90;
}
.link_image {
    aspect-ratio: 32/20;
}

.module.spacer_module {
    height: 0 !important;
    padding: 0 !important;
}

/*----------------------------------Forms----------------------------------*/
.contactform {
    margin: 30px 0 0 0;
}
.form_left {
    width: 96%;
    padding: 3%;
    float: none;
}
.form_right {
    width: 96%;
    padding: 3%;
    float: none;
}

/*----------------------------------Contact----------------------------------*/
#contact_layer {
    position: fixed;
    overflow-y: scroll;
}
#contact_box {
    width: 80%;
    max-width: auto;
    padding: 5%;
    margin: 5% auto 5% auto;
}
.contact_headline {
    margin: 20px 0 30px 0;
}

.submit_box .cta {
    position: relative;
    z-index: 999 !important;
}

/*----------------------------------Footer----------------------------------*/
footer {
    margin: 0;
    padding: 48px 0 48px 0;
}
footer .wrapper {
    padding: 0;
}
#footerlogo {
    width: 150px;
    height: 86px;
    margin: 0 auto 46px auto;
}
.row1 {
    border-top: 1px solid #007ec0;
}
.row1, .row2, .row3, .row4 {
    width: 90%;
    padding: 0 5%;
    border-bottom: 1px solid #007ec0;
    float: none;
    clear: both;
    cursor: pointer;
}
.row1:hover .row_head, .row2:hover .row_head, .row3:hover .row_head, .row4:hover .row_head {
    /*color: #95CDEB;*/
}
.row5 {
    width: 100%;
    margin: 48px 0 0 0;
    text-align: center;
}
.row_head {
    margin: 0;
    padding: 15px 0 12px 0;
    background-image: url("../images/IconPlus_neg.svg");
    background-repeat: no-repeat;
    background-position: right center;
}
.row_head.open {
    background-image: url("../images/IconMinus_neg.svg");
}
.row_links {
    display: none;
    margin: 10px 0 15px 0;
}
footer .row4 img {
    display: inline-block;
}
#meta_footer .wrapper {
    width: 100%;
    padding: 0;
}
#scrolltop {
    right: 5%;
    bottom: -40px;
}
.meta_navigation {
    margin: 18px 0 0 0;
    float: none;
    clear: both;
}
.meta_link {
    display: block;
    width: 90%;
    padding: 15px 5% 12px 5%;
    border-bottom: 1px solid #eae8db;
}
.meta_link:first-child {
    border-top: 1px solid #eae8db;
}
.meta_link:hover {
    padding: 15px 5% 12px 5%;
}
.copyright {
    width: 90%;
    padding: 0 5%;
    margin: 64px 0 0 0;
    float: none;
    clear: both;
}



