/*
Theme Name: Stiftung Waisenhaus
Author: pink lakritz
Version: 1.14
Author URI: https://www.pink-lakritz.com/
Description: Dieses responsive Theme und alle enthaltenen Templates sind exklusiv f&uuml;r die Website der Stiftung Waisenhaus.
Tags: Stiftung Waisenhaus, Frankfurt, Careleaver-Beratung, Wohngruppen, Tagesgruppen, Buchenrode
*/
.temp {
    color: var(--maincolor);
    color: var(--lightblue);
    color: var(--background);
    color: var(--lightgrey);
    color: var(--midgrey);
    color: var(--darkgrey);
}

/*----------------------------------Fonts----------------------------------*/
@font-face {
    font-family: 'Cera';
    src: url("fonts/CeraPro-Regular.woff2") format('woff');
    font-feature-settings: "ss01" 1, "onum" 1;
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Cera';
    src: url("fonts/CeraPro-Medium.woff2") format('woff');
    font-feature-settings: "ss01" 1, "onum" 1;
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Cera';
    src: url("fonts/CeraPro-Bold.woff2") format('woff');
    font-feature-settings: "ss01" 1, "onum" 1;
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-display: swap;
    font-family: 'SourceSerif';
    font-style: italic;
    font-weight: 700;
    src: url('fonts/source-serif-4-v8-latin-600italic.woff2') format('woff2');
}

.sp-image {
    opacity: 0.3;
    -webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.sp-selected .sp-image-container .sp-image {
    opacity: 1;
}
.sp-buttons {
    margin-top: 10px;
    display: block;
}
.sp-button {
    width: 8px !important;
    height: 8px !important;
    margin: 8px !important;
    border: none !important;
    background-color: #dbd8ce !important;
}
.sp-button.sp-selected-button {
    background-color: var(--maincolor) !important;
}


/*----------------------------------Main----------------------------------*/
* {
	outline-width: 0;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
input:focus, select:focus, textarea:focus, button:focus {
    outline: none;
}
body {
	font-family: "Cera", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
    color: var(--darkgrey);
    background-color: var(--background);
    -webkit-font-smoothing: antialiased;
    font-feature-settings: "ss01" 1, "onum" 1;
}
.clearfix {
	float: none;
	clear: both;
}
.wrapper {
    position: relative;
	max-width: 1366px;
	padding: 0 5%;
	margin: 0 auto;
}
.inner_wrapper {
    position: relative;
	max-width: 1216px;
    margin: 0 auto;
}
.inner_wrapper2 {
    position: relative;
	max-width: 1072px;
    margin: 0 auto;
}
p {
    margin: 0 0 32px 0;
}
p:last-child {
    margin: 0;
}
a {
	text-decoration: none;
	color: var(--maincolor);
}
a:hover {
	color: var(--maincolor);
    font-weight: 700;
}
.mail-link { 
    text-decoration: underline;
}
.mail-link:hover { 
    letter-spacing: -0.3px;
}
h1, h2 {
    font-size: clamp(36px, 4vw, 48px);
    line-height: 1.3em;
    /*font-size: 48px;
    line-height: 60px;*/
    font-weight: 500;
    color: var(--maincolor);
}
h3 {
    font-size: 48px;
    line-height: 60px;
    margin: 68px 0 22px 0;
    font-weight: 500;
    color: var(--maincolor);
}
h4 {
    margin: 0 0 30px 0;
    font-size: 20px;
    line-height: 30px;
    font-weight: 500;
    color: var(--maincolor);
}
h5 {
    font-size: 36px;
    line-height: 44px;
    margin: 0 0 15px 0;
    font-weight: 500;
    color: var(--maincolor);
}
h6 {
    font-size: 20px;
    line-height: 28px;
    margin: 0 0 17px 0;
    font-weight: 700;
    color: var(--maincolor);
}
strong, b {
    font-weight: 700;
}
italic, em {
    font-style: italic;
}
blockquote {
    max-width: 592px;
    margin: 0 auto 36px auto;
    font-family: "SourceSerif", "Times New Roman", "serif";
    font-style: italic;
    color: var(--maincolor);
}
.module ul {
    margin: 0 0 0 0;
}
.module ul li {
    margin: 0 0 4px 20px;
}

/*----------------------------------Header----------------------------------*/
#main_header {
	width: 100%;
    display: block;
}
#header_box {
    position: relative;
    display: block;
    width: 100%;
    padding: 42px 0 32px 0;
}
#headerlogo {
	width: 240px;
	height: 136px;
    margin: 0 auto;
	display: block;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
#header_left {
    position: absolute;
    left: 2%;
    top: 55px;
}
.hamburger {
    width: 24px;
    height: 11px;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: top;
    cursor: pointer;
    display: none;
}
.hamburger:hover {
    /*background-position: bottom;*/
}
.hamburger.open {
    width: 18px;
    height: 18px;
    background-image: url("images/iconclose.svg") !important;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: top;
}
.hamburger.open:hover {
    /*background-position: bottom;*/
}
#header_right {
    position: absolute;
    right: 5.2%;    
    top: 42px;
}
#header_right .language {
    font-size: 14px;
    color: var(--darkgrey);
}
#header_right .language.active, #header_right .language:hover {
    font-weight: 700;
    color: var(--maincolor);
}
#header_right #search_icon {
    position: absolute;
    width: 18px;
    height: 18px;
    margin: 10px 0 0 0;
    right: 0;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: top;
    cursor: pointer;
}
#header_right #search_icon:hover {
    background-position: bottom;
}

/*----------------------------------Menu----------------------------------*/
#menu {
    position: relative;
    margin: 0 auto;
    text-align: center;
    z-index: 999991
}
header a {
    text-decoration: none;
}
#menu ul li {
    text-align: center;
    display: inline-block;
    list-style: none;
}
#menu ul li a {
    display: block;
    color: var(--darkgrey);
    padding: 0 40px 31px 40px;
    font-size: 16px;
    line-height: 16px;
    font-weight: 400;
}
#menu ul li a:hover {
    color: var(--maincolor);
}
#menu .current-page-parent a, #menu .current_page_item a {
    font-weight: 700;
    color: var(--maincolor);
}
#menu .current-page-parent .menu-item a, #menu .current_page_item .menu-item a {
    font-weight: 400 !important;
    color: var(--darkgrey);
}
#menu .current-page-parent .current_page_item a, #menu .current_page_item .current_page_item a {
    font-weight: 700 !important;
    color: var(--maincolor);
}
#menu .sub-menu {
    display: none;
}
#menu ul li ul {
    position: absolute;
    z-index: 1005;
}
#menu ul li ul li {
    margin: 0 0 0 25px;
    display: block;
    text-align: left;
    vertical-align: middle;
    background-color: var(--background);
    background-image: url("images/Arrow_InternalLink_Back.svg");
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: right 20px center;
}
#menu ul li ul li:last-child {
    border-bottom: none;
}
#menu ul li ul li:hover {
    background-image: url("images/Arrow_InternalLink.svg");
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: right 20px center;
}
#menu ul li ul li:active {
    background-image: url("images/Arrow_InternalLink_neg.svg");
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: right 20px center;
    background-color: var(--maincolor);
}
#menu ul li ul li:active a {
    color: #fff;
}
#menu ul li ul li a {
    display: flex;
    max-width: 260px;
    border-bottom: 1px solid var(--midgrey);
    padding: 0 50px 0 15px;
    align-items: center;
    height: 57px;
    margin: 0;
    font-size: 16px;
    line-height: 20px;
    color: var(--darkgrey);
    cursor: pointer;
}
#menu ul li ul li:last-child a {
    border-bottom: none;
}
#menu ul li ul li:hover a, #menu .current-page-parent ul li:hover a, #menu .current_page_item ul li:hover a {
    color: var(--maincolor);
}
#menu ul li ul li:active a, #menu .current-page-parent ul li:active a, #menu .current_page_item ul li:active a {
    font-weight: 400;
    color: #fff;
}
@media (max-width: 1206px) {
    #menu ul li a {
        padding: 0 20px 24px 20px;
    }
    #menu ul li a:hover {
        padding: 0 19px 24px 19px;
    }
    #menu ul li ul li {
        margin: 0 0 0 5px;
    }
    #menu ul li ul li a {
        padding: 0 15px 0 15px;
    }
}
.neg_spacer {
    position: relative;
    width: 100%;
    height: 1px;
    margin: 0 0 -49px 0;
    z-index: 1;
}

/*----------------------------------Sticky-Header----------------------------------*/
#sticky_header {
    top: 0;
    position: fixed;
	width: 100%;
	height: 30px;
    padding: 25px 0;
    display: none;
    z-index: 999999;
    background-color: var(--background);
    border-bottom: 1px solid var(--lightgrey);
}
.sticky #sticky_header {
    display: block;
}
#sticky_header .wrapper {
    position: relative;
}
#sticky_header #headerlogo2 {
    position: absolute;
    width: 36px;
    height: 30px;
    left: 5;
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
#sticky_header #search_icon2 {
    position: absolute;
    width: 18px;
    height: 18px;
    margin: 10px 0 0 0;
    top: -2px;
    right: 6%;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: top;
    cursor: pointer;
}
#sticky_header #search_icon2:hover {
    background-position: bottom;
}
#menu2 {
    margin: 0 auto;
    text-align: center;
    padding: 0 0 24px 0;
}



#menu2 ul li {
    text-align: center;
    display: inline-block;
    list-style: none;
}
#menu2 ul li a {
    display: block;
    color: var(--darkgrey);
    padding: 0 40px 31px 40px;
    font-size: 16px;
    line-height: 16px;
    font-weight: 400;
}
#menu2 ul li a:hover {
    color: var(--maincolor);
}
#menu2 .current-page-parent a, #menu2 .current_page_item a {
    font-weight: 700;
    color: var(--maincolor);
}
#menu2 .current-page-parent .menu-item a, #menu2 .current_page_item .menu-item a {
    font-weight: 400 !important;
    color: var(--darkgrey);
}
#menu2 .current-page-parent .current_page_item a, #menu2 .current_page_item .current_page_item a {
    font-weight: 700 !important;
    color: var(--maincolor);
}
#menu2 .sub-menu {
    display: none;
}
#menu2 ul li ul {
    position: absolute;
    z-index: 1005;
}
#menu2 ul li ul li {
    margin: 0 0 0 25px;
    display: block;
    text-align: left;
    vertical-align: middle;
    background-color: var(--background);
    background-image: url("images/Arrow_InternalLink_Back.svg");
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: right 20px center;
}
#menu2 ul li ul li:last-child {
    border-bottom: none;
}
#menu2 ul li ul li:hover {
    background-image: url("images/Arrow_InternalLink.svg");
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: right 20px center;
}
#menu2 ul li ul li:active {
    background-image: url("images/Arrow_InternalLink_neg.svg");
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: right 20px center;
    background-color: var(--maincolor);
}
#menu2 ul li ul li:active a {
    color: #fff !important;
}
#menu2 ul li ul li a {
    display: flex;
    max-width: 260px;
    border-bottom: 1px solid var(--midgrey);
    padding: 0 50px 0 15px;
    align-items: center;
    height: 57px;
    margin: 0;
    font-size: 16px;
    line-height: 20px;
    color: var(--darkgrey);
    cursor: pointer;
}
#menu2 ul li ul li:last-child a {
    border-bottom: none;
}
#menu2 ul li ul li:hover a, #menu2 .current-page-parent ul li:hover a, #menu2 .current_page_item ul li:hover a {
    color: var(--maincolor);
}
#menu2 ul li ul li:active a, #menu2.current-page-parent ul li:active a, #menu2 .current_page_item ul li:active a {
    font-weight: 400;
    color: #fff;
}
@media (max-width: 1206px) {
    #menu2 ul li a {
        padding: 0 20px 24px 20px;
    }
    #menu2 ul li a:hover {
        padding: 0 19px 24px 19px;
    }
    #menu2 ul li ul li {
        margin: 0 0 0 5px;
    }
    #menu2 ul li ul li a {
        padding: 0 15px 0 15px;
    }
}
#smartmenu {
    display: none;
}
/*----------------------------------Sidebar----------------------------------*/
#sidebar {
    position: fixed;
    right: 0;
    top: 282px;
    z-index: 999999;
}
#sidebar .sidebar_box1 {
    margin: 0;
}
#sidebar .sidebar_box2 {
    margin: 68px 0 0 0;
}
#sidebar .sidebar_box3 {
    margin: 136px 0 0 0;
}
#sidebar .sidebar_slider {
    position: absolute;
    width: 178px;
    height: 64px;
    padding: 0 5px 0 20px;
    display: flex;
    align-items: center;
    right: -140px;
    background-color: var(--maincolor);
    -webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
    cursor: pointer;
}
#sidebar .sidebar_slider.open {
    right: 64px;
}
#sidebar .sidebar_slider.arrow {
    background-image: url("images/Arrow_InternalLink_neg.svg");
    background-repeat: no-repeat;
    background-size: 18px 18px;
    background-position: right 25px center;
}
#sidebar .sidebar_text {
    margin: 0 10px 0 0;
    font-size: 12px;
    line-height: 18px;
    color: #fff;
}
#sidebar .sidebar_text a {
    color: #fff;
}
#sidebar .sidebar_text a:hover {
    font-weight: 400;
}
#sidebar .sidebar_text p {
    margin: 0;
}
#sidebar .sidebar_icon {
    position: absolute;
    right: 0;
    width: 64px;
    height: 64px;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: top;
    cursor: pointer;
}
#sidebar .sidebar_icon:hover, #sidebar .sidebar_box1.open #sidebar .sidebar_icon, #sidebar .sidebar_box2.open #sidebar .sidebar_icon, #sidebar .sidebar_box3.open .sidebar_icon {
    background-position: bottom;
    
}
#sidebar .jobs_sum {
    margin: 0 15px 0 0;
    font-size: 32px;
    color: #fff;
    font-weight: 700;
    font-feature-settings: 'tnum';
    -webkit-font-feature-settings: 'tnum';
    -moz-font-feature-settings: 'tnum';
}
.sidebar_smart {
    display: none;
    width: 100%;
    max-height: 48px;
    aspect-ratio: 100/12.3;
    background-color: var(--maincolor);
    background-position: top;
    background-repeat: no-repeat;
    cursor: pointer;
}
.sidebar_smart.open {
    background-position: bottom;
}
.sidebar_smart.sticky {
    position: fixed;
    top: 80px;
    left: 0;
    height: 48px;
    aspect-ratio: auto;
    z-index: 1010;
}
#sidebar_menu {
    position: relative;
    z-index: 1010;
    display: none;
}

/*----------------------------------Content----------------------------------*/
img.alignright {float: right; margin: 0 0 1em 1em;}
img.alignleft {float: left; margin: 0 1em 1em 0;}
img.aligncenter {display: block; margin-left: auto; margin-right: auto;}
.alignright {float: right; }
.alignleft {float: left; }
.aligncenter {display: block; margin-left: auto; margin-right: auto;}

/*----------------------------------CTAs----------------------------------*/
.cta {
    position: relative;
    display: inline-block;
    margin: 0 0 25px 0;
    border-radius: 50px;
    border: 2px solid var(--maincolor);
    background-repeat: no-repeat;
    background-position: right 30px center;
    letter-spacing: 0.1em;
    cursor: pointer;
    -webkit-transition: ease background-color 0.3s;
	-moz-transition: ease background-color 0.3s;
	-ms-transition: ease background-color 0.3s;
	-o-transition: ease background-color 0.3s;
	transition: ease background-color 0.3s;
    z-index: 999;
}
.cta p {
    margin: 0;
}
.cta a {
    display: block;
    padding: 14px 58px 13px 30px;
    font-size: 16px;
    line-height: 16px;
    color: var(--maincolor);
    font-weight: 500;
}
.cta:hover {
    background-color: var(--maincolor);
    background-repeat: no-repeat;
    background-position: right 30px center;
}
.cta:hover a {
    color: #fff;
    font-weight: 400;
}
.cta.internal {
    background-size: 16px 12px;
    background-image: url("images/Arrow_InternalLink.svg");
}
.cta.external {
    background-size: 10px 10px;
    background-image: url("images/Arrow_ExternalLink.svg");
}
.cta.downloads {
    background-size: 12px 14px;
    background-image: url("images/Arrow_Download.svg");
}
.cta.top {
    background-size: 12px 14px;
    background-image: url("images/Arrow_Top.svg");
}
.cta.internal:hover {
    background-image: url("images/Arrow_InternalLink_neg.svg");
}
.cta.external:hover {
    background-image: url("images/Arrow_ExternalLink_neg.svg");
}
.cta.downloads:hover {
    background-image: url("images/Arrow_Download_neg.svg");
}
.cta.top:hover {
    background-image: url("images/Arrow_Top_neg.svg");
}
.cta.neg {
    border: 2px solid #fff;
}
.cta.neg a {
    color: #fff;
}
.cta.neg:hover {
    background-color: #fff;
}
.cta.neg:hover a {
    color: var(--maincolor);
}
.cta.internal.neg {
    background-image: url("images/Arrow_InternalLink_neg.svg");
}
.cta.external.neg {
    background-image: url("images/Arrow_ExternalLink_neg.svg");
}
.cta.downloads.neg {
    background-image: url("images/Arrow_Download_neg.svg");
}
.cta.top.neg {
    background-image: url("images/Arrow_Top_neg.svg");
}
.cta.internal.neg:hover {
    background-image: url("images/Arrow_InternalLink.svg");
}
.cta.external.neg:hover {
    background-image: url("images/Arrow_ExternalLink.svg");
}
.cta.downloads.neg:hover {
    background-image: url("images/Arrow_Download.svg");
}
.cta.top.neg:hover {
    background-image: url("images/Arrow_Top.svg");
}
.cta.center {
    position: relative;
    text-align: center;
    margin: 0 auto;
    left: 50%;
    transform: translateX(-50%);
}

.textlink p {
    margin: 0;
}
.textlink.internal a, .textlink.external a, .textlink.downloads a, a.textlink.internal {
    display: inline-block;
    color: var(--maincolor);
    padding: 0 30px 0 0;
    margin-right: 10px;
    background-image: url("images/Arrow_InternalLink.svg");
    background-repeat: no-repeat;
    background-position: right 8px;
}
.textlink.external a {
    background-image: url("images/Arrow_ExternalLink.svg");
    background-size: 12px 12px;
    background-position: right 8px;
    padding: 0 27px 0 0;
}
.textlink.downloads a {
    background-image: url("images/Arrow_Download.svg");
    background-position: right 8px;
    padding: 0 27px 0 0;
}
a.textlink.intro.internal {
    display: inline-block;
    color: var(--maincolor);
    padding: 0 25px 0 0;
    margin-right: 4px;
    background-image: url("images/Arrow_InternalLink.svg");
    background-repeat: no-repeat;
    background-position: right 12px;
}

/*----------------------------------Modules----------------------------------*/
.icon {
    max-width: 130px;
    margin: 0 0 34px 0;
}
.icon img {
    max-width: 100%;
    height: auto;
}
.preline {
    margin: 0 0 28px 0;
    font-size: 20px;
    line-height: 30px;
    font-weight: 500;
    color: var(--darkgrey);
}
.headline {
    margin: 0 0 19px 0;
}
.subline {
    margin: 0 0 30px 0;
    font-size: 20px;
    line-height: 30px;
    font-weight: 500;
    color: var(--maincolor);
}
.no_subline {
    width: 100%;
    height: 0;
}
.intro_intro {
    text-align: left;
    width: 100%;
    margin: 0 auto 70px auto;
    max-width: 800px;
    font-weight: 400;
    color: var(--darkgrey);
}
.intro_800 {
    max-width: 800px;
    margin: 20px auto 35px auto;
}
.clearspace {
    width: 100%;
    height: 40px;
}
.spacer_module {
    width: 100%;
}
/*--------------------Intro--------------------*/
.intro_wrapper {
    max-width: 902px;
    margin: 0 auto;
}
.intro_icon {
    margin: 0 auto 34px auto;
    text-align: center;
}
.intro_preline {
    width: 100%;
    text-align: center;
}
.intro_headline {
    width: 100%;
    max-width: 800px;
    margin: 0 auto 27px auto;
    text-align: center;
}
.intro_subline {
    width: 100%;
    text-align: center;
}
.intro_content {
    text-align: center;
    font-size: 24px;
    line-height: 36px;
}

/*--------------------Slideshow--------------------*/
.module.slideshow {
    padding: 0 0 0 0;
    margin: 0 auto -14px auto;
    /*max-width: 2500px;*/
}
.module.slideshow.desktop {
    display: block;
}
.module.slideshow.smart {
    display: none;
}
.wrapper.slideshow_wrapper.size2 {
    width: 100%;
    max-width: 5000px !important;
}
.slide_image {
    width: 100%;
    aspect-ratio: 1366/596;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: 998;
}
.slider_main {
    width: 100%;
    height: 100%;
    display: table;
}
.royalSlider {
    opacity: 0;
}
.slide_darker {
    background-color: rgba(0,0,0,0.2);
}
.slide_text {
    padding: 0;
    display: table-cell;
    vertical-align: middle;
    z-index: 1001;
}
.slide_text.have_cta {
    padding: 6.8% 0 0 0;
}
.slideshow_wrapper {
    padding: 0;
    text-align: center;
}
.slide_headline {
    margin: 0 auto 0 auto;
    color: #fff;
    height: 64px;
    z-index: 1001;
}
.slide_text.have_cta .slide_headline {
    margin: 0 auto 42px auto;
    color: #fff;
    height: 64px;
}
.slide_cta.neg:hover {
    background-color: var(--maincolor);
    border-color: var(--maincolor);
    background-image: url("images/Arrow_InternalLink_neg.svg") !important;
}
.slide_cta.neg:hover a {
    color: #fff;
}
.rsDefault .rsBullets {
    margin-bottom: 36px !important;
}

/*--------------------Color-Animation--------------------*/
.module.color_animation {
    padding: 0 0 0 0;
    margin: 0 0 -14px 0;
}
.color_desktop {
    display: block;
}
.color_smart {
    display: none;
}
.wrapper.slideshow_wrapper.size2 {
    width: 100%;
    max-width: 5000px !important;
}
.module.color_animation .slide_image {
    aspect-ratio: 1366/840;
}
.module.color_animation .slider_main {
    display: block;
    position: relative;
}
.module.color_animation .slide_text {
    max-width: 1050px;
    width: 90%;
    display: block;
    position: absolute;
    bottom: 6%;
    left: 50%;
    transform: translateX(-50%);
    top: auto;
    margin: 0 auto;
    vertical-align: none;
}
.module.color_animation .slide_headline {
    margin: 0 auto 5% auto;
    font-size: clamp(40px, 4vw, 56px);
    line-height: 1.2em;
    height: auto;
}
.job_bubble {
    position: absolute;
    top: 15%;
    right: 26%;
}
.module.color_animation .slide_cta {
    margin: 0 0 4% 0;
    position: relative;
    z-index: 99999;
}

/*--------------------Gallery--------------------*/
.galery {
    width: 100;
    margin: 40px 0 0 0;
}
.galery:first-child {
    margin: 0;
}
.g_box {
    position: relative;
    float: left;
}
.galery .g_text {
    display: table;
    width: 33%;
}
.g_center {
    display: table-cell;
    vertical-align: middle;
}
.galery_1  .g_text {
    width: 32%;
    margin: 0 0 0 10.1%;
}
.g_text .g_intro {
    margin: 0 0 15px 0;
    font-size: clamp(38px, 3.5vw, 48px);
    line-height: 1.4em;
    font-weight: 500;
}
.g_text .g_rest {
    width: 69%;
    margin: 0 0 0 15.5%;
    font-family: "SourceSerif", "Times New Roman", "serif";
    font-size: clamp(26px, 3vw, 32px);
    line-height: 1.4em;
    letter-spacing: 0.005em;
    font-style: italic;
}
.galery_2  .g_text {
    text-align: center;
    margin: 0 0 0 10.6%;
}
.galery .g_image {
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.galery .g_image.multiply {
    mix-blend-mode: multiply;
}
.galery_1 .g_image {
    width: 38%;
    aspect-ratio: 520/693;
    margin: 0 0 0 3.4%;
}
.galery_2 .g_image {
    width: 43.3%;
    aspect-ratio: 1/1;
    margin: 0 0 0 7.5%;
}
.galery_3 .g_image {
    width: 48%;
    aspect-ratio: 1/1;
    margin: 0 0 0 26.4%;
}
.img_copyright {
    position: absolute;
    display: inline-block;
    padding: 2px 7px;
    background-color: rgba(255,255,255,0.7);
    font-size: 13px;
    line-height: 15px;
    left: 0;
    bottom: 0;
}
.img_txt .left, .img_txt .right {
    position: relative;
}
.img_txt .left .img_copyright, .img_txt .right .img_copyright {
    bottom: 11px;
}

/*--------------------Coverflow-Gallery--------------------*/
.module.coverflow {
    max-width: 1500px;
    margin: 0 auto;
}
.flipster {
    overflow-y: hidden !important;
}
.flipster--transform {
    margin: 0 0 0 -1%;
}
.flipster__container {
    padding: 5% 0 !important;
}
.module.coverflow ul li {
    margin: 0;
}
.cflow_image {
    list-style: none;
    display: block;
    aspect-ratio: 798/560;
    width: 35%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100%;
    margin: 0 0.1%;
    overflow: visible;
    -webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.cflow_image:hover {
    /*background-size: 105%;*/
    opacity: 1;
}
.flipster__item {
    vertical-align: middle !important;
}
.flipster__item--past, .flipster__item--future {
    opacity: 0.3 !important;
    transform: scale(80%);
}
.flipster__item--past:hover, .flipster__item--future:hover {
    opacity: 1 !important;
}
.flipster--flat .flipster__container, .flipster--flat .flipster__item, .flipster--flat .flipster__item__content {
    transition: all 300ms ease-in-out !important;
}
.flipster__item--current {
    opacity: 1;
    transform: scale(130%) !important;
    margin-left: -15%;
    /*box-shadow: inset 0 0 0 10px var(--background);*/
    border: 10px solid var(--background);
}
.cflow_image .img_copyright {
    bottom: 9px;
}
.outro {
    max-width: 700px;
    margin: 25px auto 0 auto;
    text-align: center;
    font-size: 20px;
    line-height: 30px;
}


/*--------------------2 Bilder--------------------*/
.images_desktop {
    display: block;
}
.image_mobile {
    position: relative;
    display: none;
}
.img_1_2 {
    position: relative;
    width: 28.1%;
    margin: 7.1% 0 0 5.5%;
    aspect-ratio: 384/529;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    float: left;
}
.img_2_2 {
    position: relative;
    width: 58.5%;
    margin: 0 5.5% 0 0;
    aspect-ratio: 800/529;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    float: right;
}

/*--------------------1- und 2-Spalter und Code--------------------*/
.col1 .wrapper {
    max-width: 1216px;
    margin: 0 auto;
}
.col1_content {
    margin: 0 auto;
}
.left {
    display: table;
    float: left;
}
.right {
    display: table;
    float: right;
}
.content_800 {
    max-width: 800px !important;
    margin: 0 auto;
}
.content_902 {
    max-width: 902px !important;
    margin: 0 auto;
}
.intro_fontsize {
    font-size: 24px;
    line-height: 36px;
}
.intro_fontsize h6 {
    font-size: 24px;
    line-height: 36px;
}
.text_center.v_center {
    display: table-cell;
    vertical-align: middle;
}
.text_center a {
    text-decoration: underline;
    color: var(--maincolor);
}
.text_center .cta a {
    text-decoration: none;
}
.left_50, .right_50 {
    width: 48%;
}
.left_40, .right_40 {
    width: 31%;
}
.left_60, .right_60 {
    width: 65%;
    margin: 0;
}
.img_txt .left img, .img_txt .right img {
    width: 100%;
    height: auto;
}
.left_50 img, .right_50 img, .left_40 img, .right_40 img, .left_60 img, .right_60 img {
    width: 100%;
    margin: 0;
    height: auto;
}
.col1_content.code {
    width: 90%;
    padding: 5%;
    background-color: #fff;
}
.col1_content.code iframe {
    width: 100%;
    height: 460px;
    overflow-y: scroll;
}
.col_code {
    margin: 0 0 50px 0;
}

/*--------------------Text-Erweiterung--------------------*/
.module.extension {
    padding: 18px 0 18px 0;
    background-color: var(--background) !important;
}
.content_extension {
    /*max-width: 800px;*/
    margin: 0 auto;
}
.module.text .intro_intro {
    margin: 46px;
}

/*--------------------Akkordeon--------------------*/
.accordion .acc_wrapper {
    width: 100%;
    max-width: 904px;
    margin: 60px auto 0 auto;
}
.acc_spacer {
    width: 100%;
    height: 60px;
}
.acc_intro {
    display: block;
    margin: 0 0 40px 0;
    overflow: hidden;
    background-color: #f00;
}
.acc_subhead {
    text-align: center;
    margin: 20px 0 30px 0;
}
.acc_subtext {
    text-align: left;
    margin: 0 auto 60px auto;
    max-width: 800px;
}
.acc_title {
    width: 94.6%;
    padding: 14px 2.7%;
    margin: 24px 0 0 0;
    background-color: var(--lightblue);
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    color: var(--maincolor);
    background-image: url("images/Acc_Arrow_Closed.svg");
    background-repeat: no-repeat;
    background-position: right 2.7% center;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.acc_title:hover {
    background-color: var(--maincolor);
    color: #fff;
    background-image: url("images/Acc_Arrow_Open_Hover.svg");
}
.acc_title.open {
    background-color: var(--maincolor);
    color: #fff;
    background-image: url("images/Acc_Arrow_Open.svg");
}
.acc_title.open:hover {
    /*background-color: var(--lightblue);
    color: var(--maincolor);
    background-image: url("images/Acc_Arrow_Open.svg");*/
}
.acc_content {
    display: none;
    width: 89.4%;
    padding: 5.3%;
    background-color: #fff;
    color: var(--maincolor);
    font-size: 16px;
    line-height: 24px;
}
.acc_text {
    max-width: 624px;
}
.acc_content strong p {
    margin: 0;
}

/*--------------------Text & Bild--------------------*/
.img_txt .wrapper, .img_txt_gallery .wrapper {
    max-width: 1216px;
    margin: 0 auto;
}
.img_txt_desktop {
    display: block;
}
.img_txt_smart {
    display: none;
}
.left_img {
    width: 58%;
    margin: 0 4.6% 0 5.4%;
    aspect-ratio: 80/56;
    float: left;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.right_txt {
    max-width: 25%;
    float: left;
}
.left_txt {
    max-width: 25%;
    float: left;
}
.right_img {
    width: 58%;
    margin: 0 4.6% 0 5.4%;
    aspect-ratio: 80/56;
    float: left;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.left .text_center {
    padding: 0 8% 0 12%;
}
.right .text_center {
    padding: 0 4% 0 4%;
}
.right_50 .text_center {
    padding: 0 10% 0 10%;
}
.left .text_center {
    padding: 0 4% 0 4%;
}
.left_50 .text_center {
    padding: 0 10% 0 10%;
}
.img_cut img {
    max-height: 350px;
    width: auto;
}
.bt_box {
    margin: 0 0 80px 0;
}
.bt_box_desktop {
    display: block;
}
.bt_box_smart {
    display: none;
}
.img_txt_gallery .left_50 img,  .img_txt_gallery .right_50 img {
    min-width: 80%;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}
.img_multiply {
    mix-blend-mode: multiply;
}
.img_txt_gallery .left, .img_txt_gallery .right {
    position: relative;
}
.img_txt_gallery .left .img_copyright, .img_txt_gallery .right .img_copyright {
    bottom: 8px;
}
.text_height {
    display: table;
}
.text_center {
    display: table-cell;
    vertical-align: middle;
}

/*--------------------Einzelbild-Galerie--------------------*/
.ig_box {
    max-width: 800px;
    margin: 60px auto 20px auto;
    text-align: center;
}
.ig_box_1 {
    margin: -20px auto 20px auto;
}
.ig_head {
    max-width: 696px;
    margin: 0 auto 36px auto;
}
.ig_intro {
    max-width: 696px;
    margin: 0 auto 46px auto;
}
.ig_image {
   position: relative;
}
.ig_image img {
    width: 100%;
    height: auto;
    margin: 0 0 16px 0;
}
.ig_bu {
    max-width: 696px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 24px;
}
.ig_image .img_copyright {
    bottom: 24px;
}

/*--------------------Teaser--------------------*/
.teaser_intro {
    max-width: 800px;
    margin: 0 auto 40px auto;
}
.teaser_box {
    display: inline-block;
    vertical-align: top;
}
.cols_1, .cols_2, .cols_3 {
    text-align: center;
    width: 100%;
}
.cols_1 .teaser_box {
    width: 100%;
    max-width: 1216px;
    margin: 0 auto;
}
.cols_2 .teaser_box {
    width: 43.3%;
    margin: 0 0 0 2.34%;
}
.cols_2 .teaser_box:first-child {
    margin: 0 auto;
}
.cols_3 .teaser_box {
    width: 28.11%;
    margin: 0 0 0 2.34%;
}
.cols_3 .teaser_box:first-child {
    margin: 0 auto;
}
.teaser_img {
    position: relative;
    display: block;
    max-width: 100%;
    margin: 0 0 42px 0;
    aspect-ratio: 1216/368;
    background-repeat: no-repeat;
    background-position: center center;
}
.teaser_img.multiply {
    mix-blend-mode: multiply;
}
.teaser_img.contain {
    margin: 24px 0 42px 0;
}
.cols_2 .teaser_img {
    aspect-ratio: 592/370;
}
.cols_3 .teaser_img {
    aspect-ratio: 384/192;
}
.teaser_txt {
    max-width: 520px;
    text-align: center;
    margin: 0 auto 50px auto;
    font-size: 16px;
    line-height: 24px;
}
.teaser_txt p {
    margin: 0 0 28px 0;
}
.teaser_txt .cta p {
    margin: 0;
}
a.teaser_box:hover .teaser_txt, a.teaser_txt:hover {
    max-width: 520px;
    text-align: center;
    margin: 0 auto;
}

/*--------------------Zitat--------------------*/
.quote .wrapper {
    font-weight: 400;
}
.module.quote {
    padding: 102px 0 96px 0;
}
.quote_text {
    width: 100%;
    max-width: 864px;
    margin: 0 auto 35px auto;
    text-align: center;
    font-family: "SourceSerif", "Times New Roman", "serif";
    font-size: clamp(24px, 3vw, 32px);
    font-style: italic;
    line-height: 1.4em;
    letter-spacing: 0.005em;
    color: var(--maincolor);
}
.quote_author {
    width: 100%;
    text-align: center;
    font-weight: 700;
}
.quote_description {
    width: 100%;
    text-align: center;
}
.quote_serif {
    max-width: 620px;
    margin: -30px auto 45px auto;
    font-size: 24px;
    line-height: 36px;
    font-family: "SourceSerif", "Times New Roman", "serif";
    font-style: italic;
    color: var(--maincolor);
}

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

/*--------------------Links--------------------*/
.module.links {
    padding: 78px 0;
    background-color: var(--lightgrey);
}
.module.links .intro_headline {
    width: 100%;
    text-align: center;
    margin: 0 auto 35px auto;
}
.link_area {
    text-align: center;
    width: 92%;
    margin: 0 auto;
}
.link_container {
    display: inline-block;
    text-align: left;
    vertical-align: top;
    width: 30%;
    margin: 1.5%;
}
.link_box {
    position: relative;
    -webkit-perspective: 800;
    perspective: 800;
    display: block;
    width: 100%;
    aspect-ratio: 128/90;
    overflow: visible;
    background-color: var(--background);
}
.link_image {
    display: block;
    width: 80%;
    margin: 10%;
    aspect-ratio: 32/20;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.link_image.multiply {
    background-blend-mode: multiply;
    background-color: var(--background);
}
.link_back {
    display: table-cell;
    vertical-align: middle;
    width: 80%;
    height: 80%;
    padding: 10%;
    text-align: center;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    background-color: var(--background);
}
.link_back p {
    max-height: 150px;
    overflow-y: auto;
}
.module.links a.link_url {
    padding: 0 22px 0 0;
    font-weight: 400;
    display: inline-block;
    margin: 20px 0 30px 0;
    font-size: 16px;
    line-height: 20px;
    color: var(--maincolor);
    background-image: url("images/Arrow_ExternalLink.svg");
    background-repeat: no-repeat;
    background-size: 9px;
    background-position: right 0 center;
}
.link_container a.link_url:hover {
    font-weight: 700;
}
.link_box .card.flipped {
    -webkit-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
}
.link_box .card {
    width: 100%;
    height: 100%;
    -webkit-transform-style: preserve-3d;
    -webkit-transition: 0.5s;
    transform-style: preserve-3d;
    transition: 0.5s;
}
.link_box .card .face {
    width: 100%;
    height: 100%;
    position: absolute;
    -webkit-backface-visibility: hidden ;
    backface-visibility: hidden ;
    z-index: 2;
}
.link_box .card .front {
    position: absolute;
    z-index: 1;
    cursor: pointer;
}
.link_box .card .back {
    display: table;
    -webkit-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
    cursor: pointer;
    color: var(--maincolor);
}

/*----------------------------------Password-Page----------------------------------*/
.push_passtext {
    max-width: 800px;
    margin: 0 auto;
}
.push_passtext form {
    margin: 30px 0 0 0;
}
.push_passtext #passsubmit {
    margin: 20px 0 0 0; 
}
#pass {
    font-family: "Cera", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
}
h2.center {
    text-align: center;
    margin: 0 0 20px 0;
}

/*----------------------------------Forms----------------------------------*/
.news_header {
    position: absolute;
    padding: 10px 0;
    text-align: center;
    top: 0;
    left: 0;
    width: 170px;
    background-color: var(--lightblue);
    color: var(--maincolor);
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
}
.news_title {
    margin: 0 0 15px 0;
    max-width: 800px;
}
.news_date {
    margin: 0 0 40px 0;
    font-size: 16px;
    line-height: 24px;
    color: var(--maincolor);
}
.news_image img, .more_img img {
    width: 100%;
    height: auto;
    margin: 0 0 30px 0;
}
.more_images {
    display: none;
}
.news_content a {
    text-decoration: none;
}
.news_bu {
    margin: 15px 0 0 0;
    font-size: 16px;
    line-height: 20px;
}
.news_content {
    display: none;
    margin: 0 0 30px 0;
    height: 300px;
}
.news_content.open {
    height: auto !important;
}
.trimmed_content {
    margin: 0 0 30px 0;
    display: block;
}
.news_content h6 {
    margin: 0 0 0 0;
    line-height: 30px;
    font-weight: 700;
}
.trimmed_content h6 {
    margin: 0 0 30px 0;
    line-height: 30px;
    font-weight: 700;
}
.text_center2 {
    display: block;
}
.text_center2 a {
    color: var(--maincolor);
}
.text_center2 .cta a {
    text-decoration: none;
}
.news .left_50 {
    max-width: 43%;
}
.news_trigger {
    display: inline-block;
    color: var(--maincolor);
    padding: 0 30px 0 0;
    margin-right: 10px;
    background-image: url("images/Arrow_InternalLink.svg");
    background-repeat: no-repeat;
    background-position: right 8px;
    cursor: pointer;
}
.news_trigger:hover {
    font-weight: 700;
}
.close_trigger {
    display: none;
    color: var(--maincolor);
    padding: 0 30px 0 0;
    margin: 0 0 30px 0;
    margin-right: 10px;
    background-image: url("images/Arrow_Back.svg");
    background-repeat: no-repeat;
    background-position: right 8px;
    cursor: pointer;
}
.close_trigger:hover {
    font-weight: 700;
}
.pagination {
    position: absolute;
    top: 0;
    right: 0;
    margin: -3px 0 0 0;
    padding: 0 0 80px 10px;
    background-color: #ebe7dc;
    z-index: 300;
}
.pagingInfo {
    font-size: 16px;
    line-height: 24px;
    color: var(--maincolor);
    margin: 0 0 0 10px;
}
.pagination_arrows {
    display: block;
    margin: 20px 0 30px 0;
}
.prev_arrow {
    display: inline-block;
    width: 10px;
    height: 16px;
    margin: 0 30px 0 0;
    background-image: url("images/ArrowPrev2.svg");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    cursor: pointer;
}
.next_arrow {
    display: inline-block;
    width: 10px;
    height: 16px;
    margin: 0 0 0 0;
    background-image: url("images/ArrowNext2.svg");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    cursor: pointer;
}
.prev_arrow:hover {
    background-position: center bottom;
}
.next_arrow:hover {
    background-position: center bottom;
}


/*----------------------------------Forms----------------------------------*/
input::-webkit-input-placeholder {color: #999;}
::-webkit-input-placeholder {color: #999;} 
:-moz-placeholder {color: #999;}  
::-moz-placeholder {color: #999;}   
:-ms-input-placeholder {color: #999;}   
::-ms-input-placeholder {color: #999;}  
::placeholder {color: #999;} 
*:focus {outline: none;}

.contactform {
    /*padding: 15px;*/
    display: block;
    margin: 50px 0 0 0;
    background-color: #fff;
}
.form_left {
    width: 42.7%;
    padding: 3%;
    float: left;
    background-color: var(--background);
}
.form_right {
    width: 42.7%;
    padding: 3%;
    float: right;
    background-color: var(--background);
}
.form_left p, .form_right p {
    margin: 0;
}
.contactform .label {
    margin: 0 0 10px 0;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    color: var(--maincolor);
}
.gender_label {
    display: inline-block;
}
.form_copy {
    margin: 30px 0 0 0;
    width: 100%;
    max-width: 1112px;
    font-size: 16px;
    line-height: 24px;
    color: #323232;
}
.form_copy a {
    /*text-decoration: underline;*/
    font-weight: 400;
    color: var(--maincolor);
}
.form_copy p {
    margin: 0 0 15px 0;
}
.divider {
    width: 114%;
    height: 4px;
    margin: 5% 0 10% -7%;
    background-color: #fff;
}
 input, textarea, select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 40px;
    padding: 0;
    margin: 0 0 6px 0;
    border: none;
     background-color: transparent;
    border-bottom: 1px solid var(--maincolor);
    color: #323232;
    font-family: "Cera", Helvetica, Arial, sans-serif;
    font-size: 20px;
    line-height: 30px;
    border-radius: 0;
}
textarea {
    display: block;
    padding: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: 520/400;
    border: none;
    resize: none;
}
.wpcf7-list-item-label {
    width: auto;
    height: auto;
    margin: 0 30px 0 0;
    color: #323232;
    font-size: 16px;
    line-height: 24px;
}
.wpcf7-list-item-label a {
    /*text-decoration: underline;*/
    font-weight: 400;
    color: var(--maincolor);
}
input[type="radio"] {
    border: none;
    width: 18px;
	height: 18px;
	margin: 8px 5px -3px 0;
	border-radius: 50%;
	display: inline-block;
	cursor: pointer;
    box-shadow: none;
    background-color: #fff;
}
input[type="radio"]:checked {
    background-color: var(--maincolor);
}
.wpcf7-form-control-wrap {
    display: inline-block;
    width: 100%;
}
input[type="checkbox"] {
    width: 24px;
	height: 24px;
	margin: 8px 5px -6px 0;
	border-radius: 0;
    border: none;
	display: inline-block;
	cursor: pointer;
    box-shadow: none;
    background-color: var(--background);
}
input[type="checkbox"]:checked {
    background-color: var(--maincolor);
}
input[type="submit"] {
    display: block;
    width: auto;
    height: 50px;
    padding: 14px 58px 14px 30px;
    border-radius: 50px;
    border: 2px solid var(--maincolor);
    background-color: var(--maincolor);
    font-size: 16px;
    line-height: 20px;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #fff;
    background-size: 16px 12px;
    background-image: url("images/Arrow_InternalLink_neg.svg");
    background-repeat: no-repeat;
    background-position: right 30px center;
    cursor: pointer;
    -webkit-transition: background-color 0.2s ease-in-out;
	-moz-transition: background-color 0.2s ease-in-out;
	transition: background-color 0.2s ease-in-out;
    float: right;
}
input[type="submit"]:hover {
    background-color: transparent;
    color: var(--maincolor);
    background-image: url("images/Arrow_InternalLink.svg");
}
input[type="submit"]:disabled {
    opacity: 0.3;
}

span.wpcf7-list-item {
	margin: 0 !important;
}
.wpcf7-not-valid-tip {
	display: none !important;
}
input.wpcf7-not-valid {
	border-bottom: 1px solid #f00;
}

.wpcf7-validation-errors {
	display: none !important;
}
.wpcf7-mail-sent-ok {
	border: 1px solid #e30613 !important;
}
.wpcf7-response-output {
	border: none !important;
	color: var(--maincolor) !important;
	display: block !important;
    width: 100% !important;
    text-align: right !important;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
	margin: 15px 0 0 0 !important;
	padding: 0 !important;
	float: none !important;
	clear: both !important;
}
form .textlink.internal a {
    padding: 0 24px 0 0;
    background-position: right 6px;
}
form .textlink.internal a:hover {
    font-weight: 700;
}

/*----------------------------------Search----------------------------------*/
#search_layer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.85);
    z-index: 9999999;
    display: none;
}
#search_box {
    position: relative;
    width: 512px;
    margin: 18vh auto 0 auto;
    padding: 0 0 32px 0;
    text-align: center;
    background-color: var(--background);
}
#search_close {
    position: absolute;
    width: 19px;
    height: 19px;
    top: 18px;
    right: 23px;
    background-image: url("images/iconclose.svg");
    background-repeat: no-repeat;
    background-position: top;
    background-size: 100%;
    cursor: pointer;
}
#search_close:hover {
    background-position: bottom;
}
#searchfield {
    width: 92%;
    height: 64px;
    margin: 60px auto 32px auto;
    padding: 0 4%;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background-color: #fff;
    -moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
    font-size: 16px;
}
#search_submit {
    background-color: var(--background);
    color: var(--maincolor);
    margin: 0 auto;
    float: none;
    clear: both;
}
#search_submit:hover {
    background-color: var(--maincolor);
    color: #fff;
}
.search_wrapper {
    max-width: 902px;
    margin: 0 auto;
}
.search_wrapper h5 {
    margin: 30px 0 30px 0;
}
.search_sum {
    margin: 0 0 30px 0;
}
.search_box {
    margin: 0 0 70px 0;
}
.search_title {
    margin: 0 0 25px 0;
}
.module.srp #searchfield {
    width: 100%;
    max-width: 464px;
    margin: 50px 0 5px 0;
}
.submit_box {
    display: block;
    width: 100%;
    max-width: 464px;
    padding: 10px 0;
    background-color: #fff;
    margin: 0 0 70px 0;
}
.submit_box #search_submit {
    background-color: #fff;
    color: var(--maincolor);
}
.submit_box #search_submit:hover {
    background-color: var(--maincolor) !important;
    color: #fff !important;
}
.grecaptcha-badge {
    display: none;
}

/*----------------------------------Contact----------------------------------*/
#contact_layer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.85);
    z-index: 1999999;
    display: none;
    overflow-y: scroll;
}
#contact_box {
    position: relative;
    width: calc(90% - 72px);
    max-width: 1366px;
    height: auto;
    padding: 36px;
    margin: 18vh auto 0 auto;
    background-color: #fff;
}
#contact_close {
    position: absolute;
    width: 19px;
    height: 19px;
    top: 18px;
    right: 23px;
    background-image: url("images/iconclose.svg");
    background-repeat: no-repeat;
    background-position: top;
    background-size: 100%;
    cursor: pointer;
}
#contact_close:hover {
    background-position: bottom;
}
.contact_headline {
    margin: 30px 0 40px 0;
}

/*----------------------------------Footer----------------------------------*/
footer {
    width: 100%;
    margin: 96px 0 0 0;
    padding: 80px 0;
	background-color: var(--maincolor);
    color: #fff;
    font-size: 16px;
    line-height: 20px;
}
footer .wrapper {
    position: relative;
}
footer p {
    margin: 0 0 20px 0;
}
footer a {
    text-decoration: none;
    color: #fff;
	font-size: 16px;
}
footer a:hover {
    color: #fff;
	font-weight: 700;
}
#footerlogo {
    width: 200px;
    height: 114px;
    margin: 0 auto 64px auto;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.row_head  {
    margin: 0 0 20px 0;
    font-weight: 700;
}
.row1, .row2, .row3, .row4, .row5 {
    padding: 0 6% 0 0;
    float: left;
}
.row1 {
    width: 26%;
}
.row2 {
    width: 26%;
}
.row3 {
    width: 15%;
}
.row4 {
    width: 15%;
    padding: 0;
    /*opacity: 0;*/
}
#scrolltop {
    position: absolute;
    right: 5%;
    bottom: -20px;
}
.row4 img {
    margin: 0 10px -10px 0;
}
#meta_footer {
    padding: 30px 0 26px 0;
    background-color: #fff;
    font-size: 16px;
    line-height: 16px;
}
#meta_footer p {
    margin: 0;
}
.copyright {
    float: left;
}
.meta_navigation {
    float: right;
}
.meta_link {
    color: var(--darkgrey);
    padding: 0 0 0 80px;
}