/*
Theme Name: FCT.swiss
Theme URI: http://fct.swiss
Description: Stylish, customizable, simple, readable and responsive.
Version: 1.0.0
Author: Simon Meier
Author URI: http://www.starcrate-development.de
*/

@import url("fonts/Roboto/styles.css");

body {
	font-family: 'Roboto-Regular';
	color: #434343;
	overflow-x: hidden;
	position: relative;
	font-weight: 400;
}

.red_text {
	color: #DA0719;
}

p, tr {
	margin-bottom: 15px;
	font-size: 1.1em;
	line-height: 30px;
}

a {
	text-decoration: none;
	color: #DA0719;
}

b, strong {
	font-family: 'Roboto-Bold';
}

u {
	text-decoration: underline;
}

h1, .h1 {
	font-family: 'Roboto-Bold';
	font-size: 2em;
	line-height: 1.2em;
	margin: 10px 0 25px 0;
	color: #9E9E9E;
}
h1.home {
	color: #434343;
}

h2, .h2 {
	font-family: 'Roboto-Bold';
	font-size: 1.7em;
	margin: 10px 0 20px 0;
	color: #DA0719;
}
h2.home {
	color: #434343;
}

h3 {
	font-family: 'Roboto-Bold';
	font-size: 1.5em;
	margin: 10px 0 20px 0;
	color: #DA0719;
}

h4 {
	font-family: 'Roboto-Bold';
	font-size: 1.4em;
	margin: 15px 0 20px 0;
	line-height: 1.5em;
}

h5 {
	font-family: 'Roboto-Bold';
	font-size: 1.15em;
	margin: 10px 0 20px 0;
	color: #DA0719;
}

li {
	line-height: 1.6em;
	font-size: 1.1em;
}

header {
	background-color: #DA0719;
	color: #FFF;
    padding: 22px 10%;
	text-align: right;
}

header a {
	color: #FFF;
	text-decoration: none;
    -webkit-transition: color 0.25s ease;
    -moz-transition: color 0.25s ease;
    -ms-transition: color 0.25s ease;
    -o-transition: color 0.25s ease;
    transition: color 0.25s ease;
}

.search .content_grid:after {
	display: none;
}

.search .content_grid {
	padding-top: 40px;
}

header .search-form {
	display: inline-block;
}

header #search_button {
	width: 20px;
	position: relative;
	top: 4px;
}

header .header-menu {
	display: inline-block;
    vertical-align: middle;
}

header ul li {
	display: inline-block;
}

header .header-menu li a:hover,
header .header-menu li.current-menu-item a {
    color: #000;
}
.img100 {
    width: 100%;
    height: auto;
}

header .menu li {
	margin-left: 15px;
}

.cb_image {
	margin: 0 4px;
}
li.menu-item.menu-item-1036.menu-item-object-page.menu-item-type-post_type a,
li.menu-item.menu-item-custom a 
{
    background: #da0719;
    color: #fff;
    padding: 10px 10px 20px 10px;
    margin: 0;
}
li.menu-item.menu-item-custom.menu-item-newsletter.custom_contact_mm {
    margin-left: 20px;
}
li.menu-item.menu-item-1036.menu-item-object-page.menu-item-type-post_type.current_menu_item a,
li.menu-item.menu-item-1036.menu-item-object-page.menu-item-type-post_type a:hover,
li.menu-item.menu-item-custom a:hover
{
    color: #000;
}
li.menu-item.menu-item-custom.menu-item-kontakt a {
    margin-left: 10px;
}
.flex{
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    position: relative;
}
.float_c_form {
    max-width: 335px;
    position: absolute;
    bottom: 20%;
    right: -25px;
    box-shadow: 3px 3px 7px 2px rgba(0, 0, 0, 0.19);
    background: #fff; 
    color: #04224c;
    z-index: 5;
}
div#header_form_yellow{
	color: #f8b600;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    -webkit-font-smoothing: subpixel-antialiased;
}
div#header_form_yellow.shake {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-font-smoothing: subpixel-antialiased;
}
div#header_form_red{
	color: #da0719;
}
.blue_f_wrapper {
    padding: 27px 45px 20px 30px;
    background: #04224c;
    color: #fff;
}
.header_c_f_info {
    font-size: 18px;
    font-family: 'Roboto-Bold';
    margin-bottom: 10px;
    line-height: 1.2em;
}
.contact_form_header label {
    font-size: 10px;
    display: inline-block;
    width: calc(100% - 50px);
    margin-left: 5px;
    margin-top: 0px;
    line-height: 1.2;
    position: relative;
    top: 8px;
}
input.p_p_agree_header {
    display: inline-block;
    margin: 0px;
}
.contact_form_header input, .contact_form_header textarea {
    width: calc(100% - 20px);
    border: none;
    font-family: 'Roboto-Regular';
    padding: 5px 10px;
    margin-bottom: 10px;
}
input.p_p_agree_header {
    width: auto !important;
}
.custom_h_button {
    border: 0px;
    background: #fff;
    width: 100%;
    text-align: center;
    padding: 10px;
    color: #04224c;
    font-family: 'Roboto-Bold';
    font-size: 16px;
    text-transform: uppercase;
    cursor: pointer;
}

.red_f_wrapper {
    padding: 27px 45px 20px 30px;
    background: #da0719;
    color: #fff;
}
form#contact-form-header-red button {
    color: #da0719;
}

.yellow_f_wrapper {
    padding: 27px 45px 20px 30px;
    background: #f8b600;
    color: #fff;
}
form#contact-form-header-yellow button {
    color: #f8b600;
}
.kasten.page_kasten p:last-child {
    margin-bottom: 0px;
}

/*----------------------------------------------------*/
/*-------------  FOOTER CONTACT FORM   ---------------*/
/*----------------------------------------------------*/
.footer_contact_wrapper {
    position: absolute;
    top: 0px;
    right: 0;
    background: #da0719;
    height: calc(100% - 120px);
    padding: 60px 50px;
    width: 450px;
}
.footer_p_icon {
	display: inline-block;
	width: 38px;
	height: 43px;
	background:url(img/footer-phone-icon.png) no-repeat center center;
}
.f_c_icon {
    display: inline-block;
    width: 50px;
    float: left;
}
.f_c_contact_form {
    display: inline-block;
    width: calc(100% - 50px);
    float: left;
}
span.f_c_title {
    font-family: 'Roboto-Bold';
    text-transform: uppercase;
    color: #fff;
    font-size: 19px;
    line-height: 35px;
    display: inline-block;
    margin-bottom: 20px;
}
form#contact-form-footer input {
    height: 25px;
    border: 1px solid #fff;
    line-height: 25px;
    color: #464646;
    width: 100%;
    margin-bottom: 15px;
    padding: 0px 8px;
}
button#submit_footer {
    width: 100%;
    height: 68px;
    border: none;
    background: #fff;
    font-size: 14px;
    font-family: 'Roboto-Bold';
    cursor: pointer;
}
.relative.checkbox_footer {
    /*width: 20px;*/
    display: inline-block;
    float: left;
    width: 100%;
}
form#contact-form-footer input#p_p_agree {
    margin: 0px;
    width: 15px;
    height: 15px;
    line-height: 15px;
    padding: 0px;
    border: 0px;
}
.row_footer_contact label {
    font-size: 12px;
    color: #fff;
    display: inline-block;
    /* float: left; */
    width: calc(100% - 20px);
    position: relative;
    top: 12px;
    line-height: 1.4;
}
.f_c_icon_mobile{
	display: none;
}
input#phone {
    margin-bottom: 0 !important;
}

/*----------------------------------------------------*/
/*------------- ADDITIONAL FORM STYLES ---------------*/
/*----------------------------------------------------*/

form#contact-form,
.contact_form_footer,
.contact_form_header
{
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    -o-transform: rotateX(0deg);
    transform: rotateX(0deg);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
form#contact-form.flip-form,
.contact_form_footer.flip-form,
.contact_form_header.flip-form
{
    -webkit-transform: rotateX(-90deg);
    -moz-transform: rotateX(-90deg);
    -ms-transform: rotateX(-90deg);
    -o-transform: rotateX(-90deg);
    transform: rotateX(-90deg);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.response-holder {
    position: absolute;
    top: 50%;
    left: 0px;
    width: 100%;
    text-align: center;
    -webkit-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -o-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
}

span.relative-submit-wrapper {
    position: relative;
    display: inline-block;
    float: right;
}

.relative {
    position: relative;
}
span.error {
    max-height: 0px !important;
    max-width: 0px !important;
    overflow: hidden;
    display: inline-block !important;
    border: 0px !important;
}
form#contact-form em,
form#contact-form-footer em,
.contact_form_footer em,
.float_c_form em
{
    position: absolute;
    top: -1px;
    right: 8px;
    z-index: 100;
    font-style: normal;
}
.float_c_form em {
	top: -6px;
}
form#contact-form-footer em, .contact_form_footer em {
    right: -14px;
    top: -6px;
}
.contact_form_footer .relative.checkbox_footer em {
    right: -14px;
    top: 10px !important;
}
form#contact-form em:before,
form#contact-form-footer em:before,
.contact_form_footer em:before,
.float_c_form em:before
{
    content: "\f06a";
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: #ffffff;
    color: red;
    font-weight: 700;
    font-size: 22px;
    width: 18px;
    height: 19px;
    display: inline-block;
    text-align: center;
    line-height: 19px;
    border-radius: 100%;
    cursor: pointer;
    margin: 10px 0px 10px 0px;
}
span.error.hover-active {
    max-height: none !important;
    max-width: 300px !important;
    position: absolute;
    top: 7px;
    right: 40px;
    background: #ededed;
    padding: 6px 10px;
    line-height: 15px;
    border: 0px;
    z-index: 100;
    display: inline-block !important;
    font-size: 13px;
    color: #f90106;
    font-weight: 700;
    overflow: visible;
}
form#contact-form em.hover-active,
form#contact-form-footer em.hover-active,
.contact_form_footer em.hover-active,
.float_c_form em.hover-active
{
    width: 90%;
    text-align: right;
}
span.error.hover-active:after {
    content: "";
    display: inline-block;
    width: 6px;
    height: 16px;
    background: url(img/hover_error_form.png);
    position: absolute;
    top: 5px;
    right: -6px;
}
div#response {
    font-size: 26px;
    color: rgba(7, 101, 175, 1);
}
input#submit[disabled] {
    cursor: no-drop;
}
.contact-form-wrapper {
    position: relative;
}

button[disabled="disabled"] {
    cursor: no-drop;
    background: #b5b5b5;
}
.contact-form-wrapper {
    position: relative;
}
label.error {
    display: none !important;
}
#contact-form .error,
form#contact-form-footer .error,
.contact_form_footer .error
{
    border: 1px solid red;
}
.response.response_footer {
    padding: 0px 15px;
    color: #fff;
    font-size: 18px;
}

main {
	position: relative;
	margin: 20px 10% 0 10%;
}

#logo {
	width: 300px;
    height: auto;
    max-width: 100%;
}

#toggle_nav {
	display: none;
	width: 30px;
	position: absolute;
	right: 10%;
}
div#header_wrapper:after{
	display: none;
}
nav, .navigation {
	display: inline-block;
	float: right;
	margin-top: 0 !important;
}

.angebot  {
	float: right;
    margin-left: 50px;
    display: block;
}

nav .navigation ul li {
	display: inline-block;
	position: relative;
    z-index: 10;
}

nav .navigation ul li a {
	text-decoration: none;
	color: #000;
	font-size: 1.75em;
	margin-left: 75px;
}

nav .menu-item-has-children:hover > .sub-menu {
	/*display: block;*/
    opacity: 1;
    visibility: visible;
}

nav li:first-child .sub-menu {
	left: 0;
}

nav .sub-menu {
	left: 42px;
    top: 42px;
	/*display: none;*/
	position: absolute;
	background-color: #FFFFFF;
	/*opacity: 0.8;*/
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.25s, visibility 0.25s;
    -moz-transition: opacity 0.25s, visibility 0.25s;
    -ms-transition: opacity 0.25s, visibility 0.25s;
    -o-transition: opacity 0.25s, visibility 0.25s;
    transition: opacity 0.25s, visibility 0.25s;
	z-index: 5;
    min-width: 180px;
}

nav ul.sub-menu li, nav ul.sub-menu li a {
	display: block;
	font-size: 1em!important;
	margin-left: 0!important;
	padding: 2px 5px;
}

#header_combined {
	position: relative;
	left: -13.9%;
	width: 113.9%;
	margin: 15px 0 40px 0;
}



.leistung_container {
	border-top: solid 8px #D9D9D9;
	padding-top: 30px;
/*	display: inline-block;*/
/*	width: 32%;
	margin-right: 1.8%;*/
	margin-bottom: 30px;
}
/*.leistung_container#lct_3 {
	margin-right: 0;
}*/

.leistung_container_header {
	text-align: center;
	padding-bottom: 7px;
}

.leistung_container_header > img {
	margin-bottom: 14px;
}

.leistung_container_body {
	background-color: #EBEBEB;
	padding: 40px;
	line-height: 1.35em;
	font-size: 1.25em
}

.leistung_container_body li {
	margin-left: 22px;
}

div#zertifikate {
    margin-top: 30px;
    margin-bottom: 30px;
}

.zertifikat {
    margin-top: 15px;
    margin-bottom: 15px;
	text-align: center;
}

.zertifikat img {
    max-width: 100%;
    max-height: 100%;
}

.zertifikat#zert3 {
	padding-right: 0;
}


#firmen {
  margin: 20px 0;
  border-top: solid 10px #D9D9D9;
}
#firmen p {
  margin-bottom: 10px;
  font-family: "Roboto", sans-serif;
}

.firma {
  display: inline-block;
  margin-right: 10px;
}
.firma img {
  height: 30px;
}

.half {
	width: 46%;
	padding: 1% 1% 1% 0;
	display: inline-block;
	vertical-align: top;
}
.half.half-left {
	margin-right: 1.5%;
}

.kasten {
	background-color: #E5E5E5;
	padding: 20px;
}


.footer_social_elem {
    display: inline-block;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #fff;
    text-align: center;
    -webkit-transition: background-color 0.25s;
    -moz-transition: background-color 0.25s;
    -ms-transition: background-color 0.25s;
    -o-transition: background-color 0.25s;
    transition: background-color 0.25s;
}

.footer_social_elem > i {
    color: #000;
    font-size: 23px;
    position: relative;
    top: 8px;
}

.footer_social_elem:hover {
    background-color: #DA0719;
}








.third_left {
	width: 64%;
	display: inline-block;
}

.third_right {
	width: 31%;
	display: inline-block;
}




.page-template-template-christmas #page_content_wrapper{
    padding-bottom: 65px;
    margin-bottom: 50px;
}

.page-template-template-christmas #page_content_wrapper .ch_bg{
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(img/christmas-bg.jpg) bottom right 20% no-repeat;
    z-index: -1;
    background-size: 500px;
}



footer {
	padding: 30px 10% 50px 10%;
	background-color: #000000;
	color: #FFFFFF;
}

footer a {
	color: #FFFFFF;
	text-decoration: none;
	-webkit-transition: color 0.25s ease;
    -moz-transition: color 0.25s ease;
    -ms-transition: color 0.25s ease;
    -o-transition: color 0.25s ease;
    transition: color 0.25s ease;
}

footer a:hover {
	color: #DA0719;
}

footer .socialmedia,
footer .agb-impressum {
	display: inline-block;
	vertical-align: top;
	text-align: left;
}

footer .socialmedia .twitter-icon {
    height: 20px;
    width: 20px;
    position: relative;
    top: 2px;
}

footer .socialmedia .footer_social_elem {
	width: 40px;
    margin: 0 10px;
}

footer .socialmedia a.footer_social_elem:first-of-type  {
	margin: 0 10px 0 0;
}

footer .socialmedia a.footer_social_elem:last-of-type  {
	margin: 0 0 0 10px;
}

footer #es_txt_email_pg {
	width: 95%;
	border: 0;
	height: 20px;
}

footer #es_txt_button_pg {
	background-color: #DA0719;
	color: #FFFFFF;
	border: 0;
	padding: 10px 0;
	width: 95%;
}

.whereami {
	float: right;
    /*margin: 35px 0px 0;*/
}
#breadcrumbs {
	font-size: 1em;
}
.whereami a {
	text-decoration: none;
	color: #000000;
	-webkit-transition: color 0.25s ease;
    -moz-transition: color 0.25s ease;
    -ms-transition: color 0.25s ease;
    -o-transition: color 0.25s ease;
    transition: color 0.25s ease;
    margin-right: 15px;
}

.whereami a:hover {
	color: #DA0719;
}

.whereami b, .whereami strong {
	color: #DA0719;
}

#header_combined_subsite img,
.header .slider_wrapper {
	position: relative;
	left: -13.9%;
	width: 113.9%;
	height: auto;
	margin: 15px 0;
}
.single_image.slick-slide {
    position: relative;
}
.slider_caption_wrapper {
    position: absolute;
    left: 0;
    bottom: 15px;
    width: 100%;
    color: #fff;
    font-size: 12px;
    z-index: 100;
}
.slider_caption_wrapper .sc_container {
    max-width: 1296px;
    width: 75%;
    margin: 0 auto;
}
.slider_caption {
    max-width: 460px;
    background: rgba(255, 255, 255, 0.8);
    padding: 20px;
    border: 1px solid #a1a2a1;
    margin-bottom: 15px;
    font-size: 18px;
    color: #434343;
    font-family: 'Roboto-Bold';
    /* text-transform: uppercase; */
    line-height: 1.2;
    display: inline-block;
}
.c_text {
    font-size: 22px;
}
.c_button a {
    background: #DA0719 url(img/button-icon.png) no-repeat center left 24px;
    color: #fff;
    font-size: 16px;
    padding: 12px 22px 10px 55px;
    display: inline-block;
    margin-top: 10px;
    line-height: 1;
    -webkit-transition: background 0.3s ease-in-out;
    -moz-transition: background 0.3s ease-in-out;
    -ms-transition: background 0.3s ease-in-out;
    -o-transition: background 0.3s ease-in-out;
    transition: background 0.3s ease-in-out;
}
.c_button a:hover {
    background-color: #000;
}
.c_bottom {
    text-shadow: 1px 1px 1px #000;
}

.sidebar, .sidebar_left, .sidebar_right {
	display: inline-block;
	vertical-align: middle;
}
.sidebar_left, .sidebar_left img {
	width: 90px;
}
.sidebar_right:nth-child(2) {
	margin-left: 20px;
}

.content {
	width: calc(70% - 115px);
	min-width: calc(70% - 115px);
	display: inline-block;
	position: relative;
}

.content img.graueLinie {
	width: 650px;
	height: 12px;
	position: relative;
	top: -5px;
}

.content .kasten {
	width: 40%;
	display: inline-block;
	float: right;
	position: absolute;
	right: -48%;
	top: 0;
}

.content li {
	position: relative;
	left: 20px;
}

.clear {
	clear: both;
}

#nav_toggle {
	display: none;
}
.hide768 {
	display: none;
}

.toggleView {
	display: none;
}

a.toggleViewButton {
    padding: 15px 40px;
    background: #DA0719;
    color: #fff;
    display: inline-block;
    cursor: pointer;
    -webkit-transition: background 0.25s;
    -moz-transition: background 0.25s;
    -ms-transition: background 0.25s;
    -o-transition: background 0.25s;
    transition: background 0.25s;
}

a.toggleViewButton:hover {
	background: #000000;
}

a.toggleViewButton.verl {
    margin-top: 11px;
}

#home_button_wrapper {
	display: block;
	text-align: center;
	margin-bottom: 20px;
	padding: 15px 0;
	text-decoration: underline;
}

.header iframe{
	width: 100%;
	height: auto;
	margin: 15px 0;
}




.home-arrow-list {
	position: relative;
	/*left: 25px;*/
}









.team-box {
	display: inline-block;
	margin-right: 15px;
	width: 200px;
	height: 500px;
	vertical-align: top;
}

.team-box img {
	width: 200px;
	height: 225px;
}





#schnellangebot {
	width: 400px;
	height: auto;
	max-width: 100%;
	cursor: pointer;
}

.full-width {
	width: 100%;
}


.form-btn-schnellanfrage, #form-btn-schnellanfrage {
	float: right!important;
	background-color: #76B729!important;
	color: #111111!important;
}

.form-btn-schnellanfrage:hover, #form-btn-schnellanfrage:hover {
	float: right!important;
	background-color: #456B18!important;
	color: #111111!important;
}


.cf-uploader-trigger {
	background-color:#DA0719;
	color: #FFFFFF;
}
.cf-uploader-trigger:hover {
	background-color:#B7071B;
	color: #FFFFFF;
}

/*================================================================================================================*/

/*
 *
 * LEXO
 *
 */

 * {
 	outline: none;
 }

.clearfix:after {visibility: hidden;display: block;font-size: 0;content: " ";clear: both;height: 0;}
.clearfix { display: inline-block; }
/* start commented backslash hack \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* close commented backslash hack */

/*
 *
 * KONTAKT
 *
 */

 .contact_form {
 	position: relative;
 }

.cf_elem {
	margin-bottom: 15px;
}

.cf_inner {
	float: left;
}

.cf_label {
	width: 130px;
    font-size: 1.1em;
    line-height: 30px;
    color: #7a7a7a;
    min-height: 1px;
}

.cf_field {
	width: calc(100% - 130px);
}

.cf_field input,
.cf_field textarea {
	width: 100%;
    height: 34px;
    padding: 6px 12px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 2px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cf_field.cf_inner.checkbox_f input {
    height: auto;
    display: inline-block;
    width: auto;
    margin: 0px 7px 0px 0px;
    cursor: pointer;
}
.cf_field.cf_inner.checkbox_f label {
    font-size: 14px;
}
.cf_field.cf_inner.checkbox_f{
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
}

.cf_field.cf_inner.checkbox_f label {
    cursor: pointer;
}
form#contact-form .cf_field.cf_inner.checkbox_f em {
    top: 10px;
    left: -5px;
}

form#contact-form .cf_field.cf_inner.checkbox_f span.error.hover-active {
    right: auto;
    left: 26px;
    width: 160px;
    text-align: left;
}

form#contact-form .cf_field.cf_inner.checkbox_f span.error.hover-active:after {
    right: auto;
    left: -5px;
    transform: rotate(180deg);
}

.cf_field textarea {
	resize:vertical;
    overflow:auto;
    min-height: 154px;
}

.send_wrapper input[type="submit"] {
    display: block;
    width: 100%;
    margin-bottom: 0;
    font-family: 'Roboto-Regular';
    text-align: center;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    border-radius: 2px;
    user-select: none;
    outline: 0;
    background-image: none;
    background-color: #fff;
    border-color: #ccc;
    -webkit-transition: border-color ease-in-out .15s,background-color ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,background-color ease-in-out .15s;
    transition: border-color ease-in-out .15s,background-color ease-in-out .15s;
}


.send_wrapper input[type="submit"]:hover {
    color: #333;
    background-color: #e6e6e6;
    border-color: #adadad;
}

#lower_footer {
	background-color: #DA0719;
	text-align: center;
}

#copyright {
	padding: 20px 0;
    display: inline-block;
    vertical-align: top;
    color: #fff;
}

.header p {
    margin: 15px 0;
}
.header p a img {
    height: 500px;
    object-fit: cover;
}

.map_img_wrapper {
    margin: 15px 0;
}
.map_img {
    border: 0;
    width: 100%;
    height: 500px;
    object-fit: cover;
}


/*----------------------------------------------------------------*/
/*---------------------- ADDITIONAL CHANGES ----------------------*/
/*----------------------------------------------------------------*/

.pcwt_title_wrapper.float_left {
    float: left;
}
.col-xs-12.col-lg-4.right_column {
    margin-top: -80px;
}
form#contact-form-header-nl {
    text-align: left;
}
form#contact-form-header-nl span {
    display: inline-block;
}
span.top_nl_text a {
    text-decoration: underline;
}
.response-holder {
    display: none;
    top: calc(100% + 8px);
    left: 0;
    text-align: left;
    -webkit-transform: translate(0%, 0%);
    -moz-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    -o-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
    vertical-align: top;
    background: #da0719;
    padding: 15px;
    line-height: 1.3;
}
.response-holder.response-holder-header {
    /* display: block; */
    top: 50%;
    width: calc(100% - 30px);
    max-width: calc(100% - 30px);
    -webkit-transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -o-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
    text-align: center;
    color: #fff;
}
button#submit_nl {
    font-size: 14px;
    line-height: 1;
    padding: 7px 15px;
    vertical-align: top;
    margin: 0;
}
input#email_nl {
    vertical-align: top;
    padding: 5px 10px 6px;
    min-width: 250px;
    font-size: 14px;
    line-height: 1;
    height: 17px;
}
span.top_nl_text {
    font-size: 14px;
    display: inline-block;
    position: relative;
    top: 5px;
}

/*------------------------------ BLOG STYLES ----------------------------------*/

h4.right_column_title {
    color: #d10e1e;
}
h2.main_post_title {
    font-size: 20px;
    color: #32312f;
}

.right_column a:hover{
    color:#32312f;
}

.read_more_post a {
    background: url(img/Arrow_right.png) center left no-repeat;
    padding-left: 16px;
    background-size: 11px;
}
.single_blog_post {
    border-bottom: 1px solid #ccc;
    margin-bottom: 15px;
    padding-bottom: 25px;
    margin-top: 10px;
}
.post_date {
    font-size: 16px;
    color: #9a9a9a;
}
.post_content {
    font-size: 18px;
    line-height: 1.2;
    margin-top: 18px;
    margin-bottom: 20px;
}
.post_title a {
    font-size: 20px;
    font-family: 'Roboto-Bold';
    color: #32312f;
    margin-bottom: 15px;
    display: inline-block;
}
.single_blog_post:last-child {
    border: none;
    margin-bottom: 0;
}

.categories_title {
    font-size: 26px;
    font-family: 'Roboto-Bold';
    color: #d10e1e;
}
.blog_categories {
    padding: 20px 20px;
    margin-top: 20px;
}
.blog_cat_separator {
    height: 10px;
    background: #d9d9d9;
    margin: 20px 0px;
}
.blog_cat_single {
    border-bottom: 1px solid #e3e3e3;
    padding: 15px 0;
}
.blog_cat_single a {
    background: url(img/Arrow_right.png) center left no-repeat;
    background-size: 11px;
    padding-left: 15px;
}
.blog_cat_container .blog_cat_single:last-child {
    border: none;
    padding-bottom: 10px;
}

.blog_tags a {
    color: #32312f;
}
.blog_tags a:hover {
    color: #d10e1e;
}
.blog_tags {
    padding: 20px;
}
.tags_container {
    line-height: 1.3;
    margin-top: 20px;
}


.cat_post_single a {
    background: url(img/Arrow_right.png) center left no-repeat;
    background-size: 11px;
    padding: 15px;
    border-bottom: 1px solid #e3e3e3;
    display: inline-block;
    width: calc(100% - 30px);
}
.cat_post_single a:hover {
    color: #32312f;
}

span.error.hover-active {
    max-height: none !important;
    max-width: 300px !important;
    position: absolute;
    top: 7px;
    right: 40px;
    background: #ededed;
    padding: 5px 10px;
    line-height: 15px;
    border: 0px;
    z-index: 100;
    display: inline-block !important;
    font-size: 13px;
    color: #f90106;
    font-weight: 700;
    overflow: visible;
}
form#contact-form em.hover-active {
    width: 90%;
    text-align: right;
}
span.error.hover-active:after {
    content: "";
    display: inline-block;
    width: 6px;
    height: 16px;
    background: url(img/hover_error_form.png);
    position: absolute;
    top: 5px;
    right: -6px;
}
div#response {
    font-size: 26px;
    color: #000;
}
input#submit[disabled] {
    background: #acacac;
    cursor: no-drop;
}

#home_content {
	position: relative;
}

#home_content:after {
	content: '';
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,ffffff+100&0+-1,0+0,1+100 */
	background: -moz-linear-gradient(top, rgba(255,255,255,0) -1%, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) -1%,rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(255,255,255,0) -1%,rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 150px;
}

#home_content.open:after {
    -webkit-transform: translate(0,100%);
    -moz-transform: translate(0,100%);
    -ms-transform: translate(0,100%);
    -o-transform: translate(0,100%);
    transform: translate(0,100%);
}

.leistung_container_footer a {
	background: #DA0719;
    padding-top: 20px;
    padding-bottom: 20px;
    text-align: center;
    color: #fff;
    display: block;
    -webkit-transition: background 0.3s ease-in-out;
    -moz-transition: background 0.3s ease-in-out;
    -ms-transition: background 0.3s ease-in-out;
    -o-transition: background 0.3s ease-in-out;
    transition: background 0.3s ease-in-out;
}

.leistung_container_footer a:hover {
	background: #000;
}

/*.zertifikat:nth-child(3n+1) {
    clear: left;
}*/

.pcwt_elem  {
	float: right;
    width: 55%;
}

.pcwt_elem.bc_elem {
	width: 45%;
	padding-left: 20px;
	box-sizing: border-box;
}

.pcwt_inner {
	display: inline-block;
  	vertical-align: middle;
}

.icon_wrapper img {
	max-width: 90px;
	width: 100%;
	height: auto;
}

.top_title_wrapper {
	width: calc(100% - 116px);
}

.top_title_wrapper h2, .top_title_wrapper h1, #breadcrumbs {
	margin: 0;
}

.icon_wrapper {
	margin-right: 22px;
}

#pcw_bot {
	margin-left: 115px;
}

.content_grid {
	padding-top: 40px;
}

.pcwt_title_wrapper {
	position: relative;
}

.pcwt_title_wrapper:after {
    content: "";
    position: absolute;
    bottom: -12px;
    right: 0px;
    height: 12px;
    width: calc(100% - 115px);
    max-width: 100%;
    background-color: #d9d9d9;
    visibility: visible;
}


#content_area h1 {
    margin: 5px 0 25px 0;
}

#note {
	margin: 30px 0 30px;
}

.team_img {
    max-width: 100%;
    height: auto;
    display: inline-block;
    filter: grayscale(1);
}

#team_wrapper {
	margin-top: 34px;
}

.field_form label,
.field_form .label {
	display: inline-block;
    max-width: 100%;
    margin-bottom: 5px;
    font-family: 'Roboto-Medium';
}

.field_form .req {
	color: #ee0000;
}

.field_form .cf_field {
    width: 100%;
    margin-bottom: 15px;
}

.section3 {
	margin-bottom: 15px;
}

.menu,
.sub-menu {
	margin: 0;
}

.hw_left {
    width: 21%;
}

.hw_right {
	width: 79%;
}

.hw_elem {
    display: table-cell;
    height: 100%;
    vertical-align: bottom;
}

#header_wrapper {
    display: table;
    width: 100%;
}

nav .navigation ul li a {
    font-size: 1em;
    margin-left: 20px;
}

nav .navigation ul li.current_menu_item > a,
nav .navigation ul > li > a:hover,
nav .navigation > ul > li.current_menu_item_parent > a {
	color: #DA0719;
}

nav .navigation ul li:first-child a {
	margin-left: 0;
}

#mobile-burger {
    padding: 0;
    display: none;
    position: relative;
    margin-left: 22px;
    margin-right: -8px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.burger {
    position: relative;
    width: 41px;
    height: 41px;
    z-index: 9999;
    text-align: center;
    cursor: pointer;
}

div.x,
div.y,
div.z {
    position: absolute; margin: auto;
    top: 0px;
    background: #fff;
    border-radius:2px;
    -webkit-transition: all 200ms ease-out;
       -moz-transition: all 200ms ease-out;
        -ms-transition: all 200ms ease-out;
         -o-transition: all 200ms ease-out;
            transition: all 200ms ease-out;
}       
div.x, div.y, div.z { height: 3px; width: 24px; margin: 0px; left: 8px;}
div.x{top: 11px;}
div.y{top: 19px;}
div.z{top: 27px;}
div.collapsed{
    top: 19px;
    -webkit-transition: all 70ms ease-out;
       -moz-transition: all 70ms ease-out;
        -ms-transition: all 70ms ease-out;
         -o-transition: all 70ms ease-out;
            transition: all 70ms ease-out;
}
 

div.rotate30{
    -ms-transform: rotate(30deg); 
    -webkit-transform: rotate(30deg); 
    transform: rotate(30deg);   
    -webkit-transition: all 50ms ease-out;
       -moz-transition: all 50ms ease-out;
        -ms-transition: all 50ms ease-out;
         -o-transition: all 50ms ease-out;
            transition: all 50ms ease-out;                  
}
div.rotate150{
    -ms-transform: rotate(150deg); 
    -webkit-transform: rotate(150deg); 
    transform: rotate(150deg);  
    -webkit-transition: all 50ms ease-out;
       -moz-transition: all 50ms ease-out;
        -ms-transition: all 50ms ease-out;
         -o-transition: all 50ms ease-out;
            transition: all 50ms ease-out;                  
}

div.rotate45{
    -ms-transform: rotate(45deg); 
    -webkit-transform: rotate(45deg); 
    transform: rotate(45deg);   
    -webkit-transition: all 100ms ease-out;
       -moz-transition: all 100ms ease-out;
        -ms-transition: all 100ms ease-out;
         -o-transition: all 100ms ease-out;
            transition: all 100ms ease-out;                 
}
div.rotate135{
    -ms-transform: rotate(135deg); 
    -webkit-transform: rotate(135deg); 
    transform: rotate(135deg);  
    -webkit-transition: all 100ms ease-out;
       -moz-transition: all 100ms ease-out;
        -ms-transition: all 100ms ease-out;
         -o-transition: all 100ms ease-out;
            transition: all 100ms ease-out;                 
}

#mmw {
    position: absolute;
    top: 44px;
    left: 0;
    width: 290px;
    padding: 30px 15px;
    height: calc(100% - 132px);
    background-color: rgba(255, 255, 255, 1);
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: all .25;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 2;
}

#mmw.active {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
}


#search-form-holder-mobile input {
    width: 100%;
}

#main-menu-mobile,
#main-menu-mobile ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#main-menu-mobile .sub-menu {
    padding-left: 15px;
}

#main-menu-mobile .menu-item a {
    display: block;
    color: #000;
    font-family: 'Roboto-Medium';
    position: relative;
}

#main-menu-mobile > li {
    border-bottom: 1px solid #DA0719;
    position: relative;
}

#main-menu-mobile li {
    padding-bottom: 8px;
    padding-top: 11px;
}

#main-menu-mobile > li:before {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    height: 1px;
    width: 100%;
    background: #dedede;
}

#main-menu-mobile .menu-item.current_menu_item a,
#main-menu-mobile > li.current_menu_item:after,
#main-menu-mobile .menu-item a:hover,
#main-menu-mobile .menu-item.current_page_parent > a  {
    color: #DA0719;
    text-decoration:  none;
}

#main-menu-mobile li.menu-item.menu_item-has_children.current-menu-item.current_menu_item ul.sub-menu li.menu-item a {
    color: #000;
}

#main-menu-mobile > li > a:after {
    content: "\f105";
    position: absolute;
    top: 4px;
    font-size: 14px;
    right: 0px;
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#main-menu-mobile > li.menu-item-has-children > a:after {
    content: "\f107";
    right: 2px;
}

#mmw_top {
    margin-bottom: 15px;
}

.overlay {
	position: absolute;
	top: 44px;
	left: 0;
	height: calc(100% - 72px);
	width: 100%;
	background: rgba(0,0,0,0.4);
	opacity: 0;
	visibility: hidden;
	z-index: 1;
    -webkit-transition: background 0.25s, opacity 0.25s, visibility 0.25s;
    -moz-transition: background 0.25s, opacity 0.25s, visibility 0.25s;
    -ms-transition: background 0.25s, opacity 0.25s, visibility 0.25s;
    -o-transition: background 0.25s, opacity 0.25s, visibility 0.25s;
    transition: background 0.25s, opacity 0.25s, visibility 0.25s;
}

.overlay.active {
	opacity: 0.99;
	visibility: visible;
}

.search-form_inner {
	position: relative;
}

#s {
	border: none;
    height: 20px;
    padding: 3px 27px 4px 5px;
    width: 155px;
}

.search-submit {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    border: none;
    height: 21px;
    width: 28px;
    background: transparent;
    position: absolute;
    top: 0;
    padding-top: 5px;
    padding-bottom: 4px;
    right: 0;
    cursor: pointer;
}

.f_second {
	text-align: center;
}

.f_third {
	text-align: right;
}

.team_elem {
	margin-bottom: 40px;
}

.team_image {
	margin-bottom: 15px;
    text-align: center;
}

.team_name,
.team_function,
.team_desc {
	margin: 10px 0;
    line-height: 1.4em;
    text-align: center;
}

.team_name {
	text-transform: uppercase;
}

.siluete {
	position: relative;
	font-size: 140px;
	border: 1px solid #d9d9d9;
	max-width: 200px;
	display: inline-block;
	vertical-align: top;
}

.siluete img {
	display: block;
    width: 100%;
    height: auto;
}

.siluete > .fa {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -70px 0 0 -70px;
	color: #DA0719;
	display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.res_title a {
    -webkit-transition: color 0.25s ease;
    -moz-transition: color 0.25s ease;
    -ms-transition: color 0.25s ease;
    -o-transition: color 0.25s ease;
    transition: color 0.25s ease;
}

.res_title a:hover {
    color: #000;
}

.result {
	margin-bottom: 37px;
    padding-bottom: 17px;
    border-bottom: 1px solid #d9d9d9;
}

.no_result {
	margin-bottom: 37px;
    padding-bottom: 17px;
}

.section1 {
	margin-bottom: 30px;
}

.uFile {
    margin: 15px 0;
	padding: 15px;
	-webkit-box-shadow: 0px 0px 5px 3px rgba(217,217,217,1);
	-moz-box-shadow: 0px 0px 5px 3px rgba(217,217,217,1);
	box-shadow: 0px 0px 5px 3px rgba(217,217,217,1);
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	position: relative;
}

.uFile:last-of-type {
	margin: 15px 0 30px;
}

.uFileName {
    font-family: 'Roboto-Bold';
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding-right: 30px;
    margin: 0 0 15px 0;
}

.uFileData {
	border-top: 2px solid #ececec;
}

.uFileType,
.uFileSize {
    margin: 15px 0 0 0;
}

.uFileType {
	float: left;
}

.uFileSize {
	float: right;
}

.uFileRemove {
	position: absolute;
    top: 15px;
    right: 15px;
    color: #DA0719;
    cursor: pointer;
}

.uFile.invalid .uFileName,
.uFile.invalid .uFileType,
.uFile.invalid .uFileSize {
	color: #DA0719;
}

#uploaded_file {
	display: none;
}

#file_trigger {
	text-align: center;
	color: #fff;
	background-color: #DA0719;
    margin: 15px 0;
    padding: 10px;
    cursor: pointer;
}

.file_error {
	text-align: center;
    margin-top: 29px;
    color: #DA0719;
}

.leistung_container_body .arrow_list {
	margin-left: 0;
}

.wp-caption {
    max-width: 100%;
    height: auto;
}

.wp-caption.aligncenter {
    margin-left: auto;
    margin-right: auto;
}

.wp-caption.alignleft {
    float: left;
    margin:0 1em 1em 0 !important
}

.wp-caption.alignright {
    float: right;
    margin:0 0 1em 1em !important
}

.wp-caption-dd {
    text-align: center;
    font-size: 13px;
    margin-top: 15px;
    margin-bottom: 31px;
}

.wp-caption.alignright .wp-caption-text,
.wp-caption.alignleft .wp-caption-text,
.wp-caption.alignright .wp-caption-dd,
.wp-caption.alignleft .wp-caption-dd {
    margin-bottom: 0 !important;
}

img.alignright {width: auto !important; max-width: 100%; float:right; margin:0 0 1em 1em; height: auto;}
img.alignleft {width: auto !important; max-width: 100%; float:left; margin:0 1em 1em 0; height: auto;}
img.aligncenter {width: auto !important; max-width: 100%; display: block; margin-left: auto; margin-right: auto; height: auto;}
a img.alignright {width: auto !important; max-width: 100%; float:right; margin:0 0 1em 1em; height: auto;}
a img.alignleft {width: auto !important; max-width: 100%; float:left; margin:0 1em 1em 0; height: auto;}
a img.aligncenter {width: auto !important; max-width: 100%; display: block; margin-left: auto; margin-right: auto; height: auto;}
img.alignnone,a img.alignnone {width: auto !important; max-width: 100%; height: auto;}

/*RESPONSIVE*/

@media screen and (max-width: 1775px) {
	nav .navigation ul li a {
	    font-size: 0.85em;
    	margin-left: 18px;
	}
    li.menu-item.menu-item-custom.menu-item-newsletter.custom_contact_mm {
        margin-left: 15px;
    }
	p, ul, ul li {
	    font-size: 16px;;
	}

	h2, .h2 {
    	font-size: 1.4em;
	}

	h1, .h1 {
    	font-size: 1.7em;
	}

	h3 {
    	font-size: 1.2em;
	}

	h4 {
    	font-size: 1em;
	}
	.float_c_form.header_form_blue {
    	bottom: 5%;
    }
}

@media screen and (max-width: 1550px) {
	.f_third {
	    text-align: center;
	}
	.footer_contact_wrapper {
	    padding: 60px 20px;
	    width: 420px;
	}
	#logo {
		width: 200px;
	}
    .float_c_form {
        bottom: 5%;
    }
    form#contact-form-header-nl span.top_nl_text {
        display: block;
        width: 100%;
        top: 0;
    }
    input#email_nl {
        margin-bottom: 5px;
    }
}

@media screen and (max-width: 1450px) {
	nav .navigation ul li a	{
	    margin-left: 8px;
	}
	li.menu-item.menu-item-custom.menu-item-kontakt a {
		margin-left: 5px;
	}
    .float_c_form.header_form_blue {
        bottom: 0%;
    }
}

@media screen and (max-width: 1300px) {
	.float_c_form {
	    bottom: 0%;
	}
}


@media screen and (min-width: 1200px) {
	.col5 {
		width: 20%;
	}

	.col5:nth-child(5n+1) {
	    clear: left;
    }    
}

@media screen and (max-width: 1350px) {
	.hw_left {
	    width: 15%;
	}
	.hw_right {
	    width: 85%;
	}
    .float_c_form.header_form_blue {
        bottom: -10%;
    }
}

@media screen and (max-width: 1260px) {
	nav .navigation ul li a {
	    margin-left: 3px;
	}
	li.menu-item.menu-item-custom.menu-item-kontakt a {
	    margin-left: 0px;
	}
    li.menu-item.menu-item-custom.menu-item-newsletter.custom_contact_mm {
        margin-left: 5px;
    }
    .float_c_form.header_form_blue {
        bottom: auto;
        top: 0;
    }
    .hw_right {
        width: 86%;
    }
    .hw_left {
        width: 14%;
    }
}

@media screen and (max-width: 1200px) {
    .col-xs-12.col-lg-4.right_column {
        margin-top: 20px;
    }
    .page-template-template-christmas #page_content_wrapper .ch_bg {
        opacity: 0.5;
        background-position: bottom right;
    }
	.row_footer_contact .googlecaptcha_wrapper:after {
	    right: 40%;
	}
	.pcwt_elem {
	    float: none; 
	    width: 100%; 
	}

	.pcwt_elem.bc_elem {
		width: 100%;
	}

	.whereami {
     	float: none !important; 
    	margin: 0px 112px 15px;
	}

	.col5:nth-child(4n+1) {
	    clear: left;
	}

	.nav_menu {
		display: none !important;
	}

	.hw_elem {
		vertical-align: middle;
	}

	.hw_left {
		width: 40%;
	}

	.hw_right {
		width: 60%;
	}

	#mobile-burger {
	    display: inline-block;
	}

	header {
        padding: 0px 5%;
        display: inline-block;
        width: 90%;
    }

	header .header-menu li {
		display: none;
	}
	header .header-menu li:first-child {
		display: inline-block;
	}
	header .search-form {
        vertical-align: top;
        margin-top: 10px;
    }
    header .header-menu {
        display: none;
    }
    input#email_nl {
        min-width: 205px;
        font-size: 13px;
    }
    button#submit_nl {
        font-size: 12px;
    }
	.pcwt_elem.bc_elem {
		padding-left: 0;
	}
    form#contact-form-header-nl span.top_nl_text {
        display: inline-block;
        width: auto;
        top: 5px;
        margin-bottom: 5px;
    }
	.footer_contact_wrapper {
	    position: relative;
	    width: calc(100% - 60px);
	    padding: 30px;
	    display: inline-block;
	    vertical-align: top;
	}
	.f_inputs_wrapper .relative {
	    display: inline-block;
	    width: calc(50% - 15px);
	    /*overflow: hidden;*/
	    float: left;
	    margin-right: 15px;
	}
	.f_inputs_wrapper .relative.checkbox_footer {
	    width: 100%;
	    float: left;
	}
	.row_footer_contact label {
	    float: left;
	    display: inline-block;
	    margin-top: 2px;
	    top: 0;
	}
	button#submit_footer {
	    height: 27px;
	}
	.f_inputs_wrapper {
	    padding: 0px;
	    margin-left: 0px;
	}
	.f_button_wrapper{
		padding: 0px;
		width: calc(25% - 15px);
	}
	.footer_contact_wrapper {
	    width: calc(100% - 60px);
	    padding: 15px 30px;
	}
	.f_c_icon{
		display: none;
	}
	.f_c_icon_mobile{
		display: inline-block;
		width: 50px;
    	/*float: left;*/
	}
	.f_c_contact_form{
		width: 100%;
	}
	.row.row_footer_contact {
	    margin-left: 0px;
	}
	.contact_form_footer em {
	    top: -6px !important;
	    right: 6px !important;
	}
	form#contact-form-footer input {
	    width: calc(100% - 15px);
	}
	form#contact-form-footer input#p_p_agree {
	    float: left;
	    margin-right: 5px;
	}
}

@media screen and (max-width: 992px) {
    .overlay,
    #mmw {
        top: 62px;
    }
    form#contact-form-header-nl span.top_nl_text {
        top: 0px;
        width: 100%;
    }
    .slider_caption_wrapper {
        position: relative;
        bottom: 0;
        color: #434343;
    }
    .c_bottom {
        text-shadow: none;
    }
    .slider_caption_wrapper .sc_container {
        width: 100%;
        max-width: 100%;
    }
    .slider_caption {
        max-width: 100%;
        width: 100%;
        border-width: 0px 0px 1px 0px;
        padding-left: 0;
        padding-right: 0;
    }
    #header_combined_subsite img, .header .slider_wrapper {
        width: 100%;
        left: 0;
    }
    h1, .h1 {
        font-size: 1.5em;
    }
    .whereami b, .whereami strong {
        font-size: 14px;
        position: relative;
        top: -2px;
    }
	.float_c_form {
	    display: none !important;
	}
	li.menu-item.menu-item-custom {
	    display: none !important;
	}
	button#submit_footer {
	    height: 34px;
	    margin-top: 10px;
	}
	.f_second {
		text-align: right;
	}

	.f_third {
		text-align: left;
	}

	.col5:nth-child(4n+1) {
	    clear: none;
	}

	.col5:nth-child(3n+1) {
	    clear: left;
	}

	#un_wrapper .container {
	    width: 100%;
	}
}



@media screen and (max-width: 768px) {
    .row_footer_contact .googlecaptcha_wrapper.active {
        -webkit-transform: translate(0,0);
        -moz-transform: translate(0,0);
        -ms-transform: translate(0,0);
        -o-transform: translate(0,0);
        transform: translate(0,0);
        z-index: 100;
    }
    .footer_contact_wrapper .googlecaptcha_container {
        display: inline-block;
        max-width: 320px;
        margin: 0 auto;
        clear: both;
        float: none;
    }
    .page-template-template-christmas #page_content_wrapper .ch_bg {
        opacity: 0.2;
    }
    main {
        margin: 20px 15px 0 15px;
    }
	.f_c_contact_form {
	    text-align: center;
	}
	.f_c_icon_mobile {
	    position: relative;
	    bottom: -15px;
	}
	.footer_contact_wrapper {
	    padding: 0px 30px 10px;
	}
	.contact_form_footer .relative.checkbox_footer em {
	    /*left: -40px;*/
	    top: 0px !important;
	}
	.row.row_footer_contact {
	    margin: 0px -15px;
	}
	.f_inputs_wrapper {
	    padding: 0px 15px;
	}
	.f_button_wrapper {
	    padding: 0px 15px;
	    width: 100%;
	    margin: 0 auto;
	    max-width: 430px;
	}
	.f_inputs_wrapper .relative {
	    width: 100%;
	    clear: both;
	    max-width: 400px;
	    margin: 0 auto !important;
	    float: none;
	}
	.f_inputs_wrapper {
	    text-align: center;
	}
	.f_inputs_wrapper .relative.checkbox_footer {
	    float: none !important;
	    display: block;
        padding-top: 12px;
	}
	.row_footer_contact label {
	    margin: 0 auto;
	    float: none;
	    text-align: left;
	}
	.pcwt_inner {
	    display: block;
	    vertical-align: middle;
	    text-align: center;
	}

	.icon_wrapper {
	    margin-right: 0;
	}

	.top_title_wrapper {
	    width: 100%;
	}

	.top_title_wrapper h2,
	.top_title_wrapper h1 {
	    margin: 10px 0 20px 0;
	}

	#pcw_bot {
		margin-left: 0;
	}

	.bc_elem {
		text-align: center;
	}

	.whereami {
		margin: 0px auto 15px;
    	display: inline-block;
	}


	.cf_inner {
    	float: left;
	}

	.cf_field,.cf_label {
	    width: 100%;
	}

	.contact-form-wrapper {
		max-width: 100% !important;
	}

	.f_second ,.f_third, .third.info {
		text-align: center;
	}

	footer .socialmedia, footer .agb-impressum {
	    display: inline-block;
	    vertical-align: top;
	    text-align: center;
	}

	.col5:nth-child(2n+1) {
	    clear: left;
	}

	.col5:nth-child(3n+1) {
	    clear: none;
	}

	.blanko_img {
		display: none;
	}

    .leistung_container_body {
        padding: 20px;
    }

    .pcwt_title_wrapper:after {
	    content: "";
	    position: absolute;
	    bottom: -40px;
	    right: 0px;
	    height: 12px;
	    width: 100%;
	    max-width: 100%;
	    background-color: #d9d9d9;
	    visibility: visible;
	}

	#uns_email_preview, #uns_button {
	    max-width: 100%;
	    width: 100%;
	}

}
@media screen and (max-width: 680px){
    form#contact-form-header-nl span.top_nl_text {
        display: none;
    }
    .overlay,
    #mmw {
        top: 85px;
    }
    form#contact-form-header-nl {
        text-align: center;
    }
    header {
        text-align: center;
    }
    #s {
        width: 183px;
        margin-left: -60px;
    }
    input#email_nl {
        padding: 5px 5px 6px;
    }
}

@media screen and (max-width: 600px) {
    #header_combined_subsite img, .header .slider_wrapper {
        width: 100%;
        left: 0;
    }
	.hw_elem {
	    display: block;
	    width: 100%;
	    height: 100%;
	    vertical-align: bottom;
	    text-align: center;
	}
	.header-menu {
	    right: 20%;
	}
	.angebot {
	    float: none;
	    margin-left: 0;
	    display: block;
        margin-top: 25px;
	}
	/* #s {
	    width: 120px;
	} */
    h1, .h1 {
        font-size: 1.3em;
    }
}

@media screen and (max-width: 550px) {
    div#zertifikate .zertifikat {
        width: 100%;
        margin-top: 20px;
        margin-bottom: 20px;
    }
    #copyright {
        font-size: 14px;
    }
    #s {
        width: 148px;
        margin-left: -40px;
    }
    button#submit_nl {
        padding: 7px 5px;
    }
    input#email_nl {
        min-width: 170px;
    }
}

@media screen and (max-width: 360px) {
	.col5 {
	    width: 100%;
	}

	.team_elem {
	    text-align: center;
	}

	.team_img {
	    display: inline-block;
	    vertical-align: top;
	}
}

/* POPUP STYLES */

#pdf_download {
    background-color: #C82C28;
    padding: 10px 15px 10px 15px;
    cursor: pointer;
    color: #FFF;
    border-radius: 5px;
    font-size: 20px;
    text-transform: uppercase;
    font-family: 'Roboto-Regular';
    border-color: transparent;
    transition: color .25s, background-color .25s;
    margin-bottom: 10px;
}

#pdf_download:is(:hover, :focus) {
    background-color: #9d201d;
}

@media (max-width: 768px) {
    #pdf_download {
        font-size: 16px;
        margin-top: 10px;
    }
}

#pdf_download::after {
    content: '\f019';
    font-family: 'FontAwesome';
}

.popup-element-wrapper {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 100;
}

.popup-overflow {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.popup-element {
    position: fixed;
    top: 120px;
    left: 50%;
    transform: translateX(-50%);
    background: #231F20;
    backdrop-filter: blur(10px);
    display: flex;
    flex-direction: column;
    user-select: none;
    width: 100%;
    max-width: 650px;
    overflow: auto;
    max-height: calc(100% - 150px);
    animation-name: popup-fadein;
    animation-duration: 0.5s;
    font-family: 'Roboto-Regular';
    border-top: 8px #C82C28 solid;
}

.popup-element-wrapper .title {
    color: #FFF;
    font-size: 42px;
    text-transform: uppercase;
    font-family: 'Roboto-Bold';
    line-height: 0.9;
}

.popup-element-wrapper .subtitle {
    color: #C82C28;
    font-size: 24px;
    text-transform: uppercase;
    font-family: 'Roboto-Bold';
}

.popup-element-wrapper .main-content {
    color: #FFF;
    font-size: 18px;
}

.popup-element-wrapper .email-input {
    display: flex;
    flex-direction: column;
}

.popup-element-wrapper .content-wrapper {
    position: relative;
    top: -30px;
    text-align: center;
    width: calc(100% - 30px);
    max-width: 450px;
    margin: 0px auto;
    padding: 15px;
}

.popup-element-wrapper .email-input {
    gap: 5px;
    position: relative;
}

.popup-element-wrapper .email-input button,
.popup-element-wrapper .email-input input {
    text-align: center;
    font-size: 18px;
    font-family: 'Roboto-Regular';
}

.popup-element-wrapper .email-input button:is(:hover, :focus) {
    background-color: #9d201d;
}

.popup-element-wrapper .email-input input {
    height: 43px;
}

.popup-element-wrapper .email-input input::placeholder {
    color: #43434380;
    font-size: 18px;
}

.popup-element-wrapper .email-input button {
    background: #C82C28;
    color: #FFF;
    font-size: 18px;
    text-transform: uppercase;
    font-family: 'Roboto-Regular';
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 49px;
    border-color: transparent;
}

.popup-element-wrapper .email-input button::after {
    content: '\f178';
    font-family: 'FontAwesome';
    margin-left: 5px;
}

.popup-element-wrapper .popup-close-wrapper .square {
    content: '';
    position: absolute;
    top: 0px;
    right: 85px;
    height: 135px;
    width: 50px;
    background-color: #231F20;
    transform: rotate(335deg);
}

.popup-element-wrapper .popup-element-close {
    line-height: 1.15;
    cursor: pointer;
    display: flex;
    height: max-content;
    width: max-content;
    background-color: #C82C28;
    margin-left: auto;
    padding: 10px 15px 10px 60px;
}

body.mini .popup-element {
    top: 90px;
    max-height: calc(100% - 120px);
}

.popup-element-wrapper .popup-element-close::before {
    content: '\f00d';
    font-family: 'FontAwesome';
    font-size: 3.5rem;
    color: #FFF;
    transition: all 0.2s;
}

.popup-element-wrapper .popup-element-close:hover::before {
    color: #FFFFFFBD;
}

.popup-element-wrapper .content-wrapper .fa-download {
    font-size: 2.5rem;
    color: #FFF;
    font-family: 'FontAwesome';
    position: relative;
    top: -20px;
}

body.popup-active {
    overflow: hidden;
}

@keyframes popup-fadein {
    from { opacity: 0; }
    to { opacity: 1; }
}

.loader {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 50px;
    aspect-ratio: 1;
    border-radius: 50%;
    border: 8px solid #C02F27;
    animation:
        l20-1 0.8s infinite linear alternate,
        l20-2 1.6s infinite linear;
}

@keyframes l20-1{
    0%    {clip-path: polygon(50% 50%,0       0,  50%   0%,  50%    0%, 50%    0%, 50%    0%, 50%    0% )}
    12.5% {clip-path: polygon(50% 50%,0       0,  50%   0%,  100%   0%, 100%   0%, 100%   0%, 100%   0% )}
    25%   {clip-path: polygon(50% 50%,0       0,  50%   0%,  100%   0%, 100% 100%, 100% 100%, 100% 100% )}
    50%   {clip-path: polygon(50% 50%,0       0,  50%   0%,  100%   0%, 100% 100%, 50%  100%, 0%   100% )}
    62.5% {clip-path: polygon(50% 50%,100%    0, 100%   0%,  100%   0%, 100% 100%, 50%  100%, 0%   100% )}
    75%   {clip-path: polygon(50% 50%,100% 100%, 100% 100%,  100% 100%, 100% 100%, 50%  100%, 0%   100% )}
    100%  {clip-path: polygon(50% 50%,50%  100%,  50% 100%,   50% 100%,  50% 100%, 50%  100%, 0%   100% )}
}

@keyframes l20-2{ 
    0%    {transform:scaleY(1)  rotate(0deg)}
    49.99%{transform:scaleY(1)  rotate(135deg)}
    50%   {transform:scaleY(-1) rotate(0deg)}
    100%  {transform:scaleY(-1) rotate(-135deg)}
}

.popup-element-wrapper .generic-form em {
    position: absolute;
    top: 25%;
    right: 8px;
    height: 24px;
    line-height: 24px;
    z-index: 5;
    font-style: normal;
    transform: translateY(-50%);
}

.popup-element-wrapper .generic-form em::before {
    content: "\f06a";
    font-family: 'FontAwesome';
    font-size: 24px;
    color: #db0132;
    -webkit-font-smoothing: antialiased;
}

@media (max-width: 500px) {
    .popup-element-wrapper .content-wrapper {
        top: 15px;
    }

    .popup-element {
        padding-bottom: 20px;
    }
}

/* l-notify style */
#l-notify {
    position: fixed;
    left: 0;
    bottom: 0;
    color: #FFF;
    background: #b10413;
    width: 100%;
    padding: 25px 15px;
    visibility: hidden;
    font-family: 'Roboto-Regular';
    font-size: 2rem;
    line-height: 1.3em;
    text-align: center;
    z-index: 100;
    transform: translate(0, 100%);
    transition: transform .25s, opacity .25s, visibility .25s;
}

#l-notify.active {
    visibility: visible;
    transform: translate(0, 0);
}
