/*
Theme Name: Bestec GmbH Template
Theme URI: http://www.ideeah.com/
Author: Michael Schröter
Author URI: http://www.ideeah.com
Description: Template Bestec GmbH.
Version: 1.0.0
License: GNU General Public License v2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: red, light, responsive
Text Domain: Bestec Domain
*/

/* */
/* */
/* */
/* */
/* */
/* */
/* */
/* */
/* */
/* */

/* open-sans-300 - latin-ext */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: url('/fonts/open-sans-v34-greek_latin_latin-ext-300.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('/fonts/open-sans-v34-greek_latin_latin-ext-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/fonts/open-sans-v34-greek_latin_latin-ext-300.woff2') format('woff2'), /* Super Modern Browsers */
         url('/fonts/open-sans-v34-greek_latin_latin-ext-300.woff') format('woff'), /* Modern Browsers */
         url('/fonts/open-sans-v34-greek_latin_latin-ext-300.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/fonts/open-sans-v34-greek_latin_latin-ext-300.svg#OpenSans') format('svg'); /* Legacy iOS */
  }
 
  
  /* work-sans-300 - latin-ext */
  @font-face {
    font-family: 'Work Sans';
    font-style: normal;
    font-weight: 300;
    src: url('/fonts/work-sans-v18-latin-ext-300.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('/fonts/work-sans-v18-latin-ext-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/fonts/work-sans-v18-latin-ext-300.woff2') format('woff2'), /* Super Modern Browsers */
         url('/fonts/work-sans-v18-latin-ext-300.woff') format('woff'), /* Modern Browsers */
         url('/fonts/work-sans-v18-latin-ext-300.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/fonts/work-sans-v18-latin-ext-300.svg#WorkSans') format('svg'); /* Legacy iOS */
  }
  
  /* work-sans-regular - latin-ext */
  @font-face {
    font-family: 'Work Sans';
    font-style: normal;
    font-weight: 400;
    src: url('/fonts/work-sans-v18-latin-ext-regular.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('/fonts/work-sans-v18-latin-ext-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/fonts/work-sans-v18-latin-ext-regular.woff2') format('woff2'), /* Super Modern Browsers */
         url('/fonts/work-sans-v18-latin-ext-regular.woff') format('woff'), /* Modern Browsers */
         url('/fonts/work-sans-v18-latin-ext-regular.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/fonts/work-sans-v18-latin-ext-regular.svg#WorkSans') format('svg'); /* Legacy iOS */
  }
  
  /* work-sans-600 - latin-ext */
  @font-face {
    font-family: 'Work Sans';
    font-style: normal;
    font-weight: 600;
    src: url('/fonts/work-sans-v18-latin-ext-600.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('/fonts/work-sans-v18-latin-ext-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/fonts/work-sans-v18-latin-ext-600.woff2') format('woff2'), /* Super Modern Browsers */
         url('/fonts/work-sans-v18-latin-ext-600.woff') format('woff'), /* Modern Browsers */
         url('/fonts/work-sans-v18-latin-ext-600.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/fonts/work-sans-v18-latin-ext-600.svg#WorkSans') format('svg'); /* Legacy iOS */
  }
  
/* Body - Formatierungen */

body{
    font-family: 'Work Sans', sans-serif;
    /* font-family: 'Open Sans', sans-serif;*/
    font-weight: 100;
    color: rgb(149, 141, 131);
    background-color:#FFFFFF;
    margin: 0;
    overflow: hidden;
	min-width:400px;
}

/* Preloader */
  
  #bt_preloader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    z-index: 20000;
  }
  
  #bt_status {
    width: 200px;
    height: 30px;
    position: absolute;
    left: 50%;
    top: 50%;
    background-repeat: no-repeat;
    background-position: center;
    margin: -15px 0 0 -100px;
    text-align: center;
}

/* Hauptelemente */


a{
    color: #E4003A;
    text-decoration: none;
    transition: all 300ms;
}

a:hover{
    color: rgb(185, 0, 46);
}

h1, h2, h3, h4{
    margin: 0px;
    line-height: 1.2em;
    font-family: 'Work Sans';
}

h1 {
    padding: 1.5em;
}

h2 {
    font-size: 1.1em;
    color: #E4003A;
    font-weight: 300;
    /* 16 * 0.0625 = 1px */
    letter-spacing: -0.0625em;
    line-height: 2em;
}

h3 {
    font-size: 2.2em;
    text-transform: uppercase;
    font-weight: 300;
}

h4{
    padding: 0px;
    font-size: 2em;
    font-weight: 300;
    font-style: italic;
}

h5 {
    font-weight: 400;
    font-size: 20px;
    color: rgb(149,141,131);
    padding: 10px 25px;
    margin: 10px 0px;
    vertical-align: middle;
    line-height: 30px;
    display: inline-block;
    border-bottom: 1px solid #e4003A;
}

h6{
    font-weight: 300;
    font-size: 20px;
    color: #E4003A;
    padding: 0px;
    margin: 0px;
}

p {
    font-size: 1.0em;
    font-weight: 300;
    font-style: normal;
    max-width: 1024px;
    text-align: justify;
}

.post .wpb_wrapper h1, .post .wpb_wrapper h3{
	font-size: 1.0em !important;
	font-style: normal !important;
	max-width: 1024px !important;
	text-align: justify !important;
    font-family: 'Work Sans', sans-serif !important;
    font-weight: 100 !important;
    color: rgb(149, 141, 131) !important;
    padding-bottom: 0px !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.bt_hidden_links a {
	color: rgb(149,141,131);
	text-decoration: none;
	transition: all 300ms;
}

.bt_hidden_links a:hover {
	color: #E4003A;
    text-decoration: underline dotted;
}

input[type="text"] {
    font-family: inherit;
    width: 150px;
    display: block;
    padding: 10px 20px;
    margin-bottom: 10px;
    background-color: rgb(255, 255, 255);
    color: rgb(228, 0, 57);
    font-size: 18px;
    font-weight: 400;
    border: 1px solid rgba(208, 204, 199, 1);
}

.bt_font_size_20{
    font-size: 20px !important;
    line-height: 24px;
    letter-spacing: 0em;
}

.bt_font_size_20 h2, .bt_font_size_20 h3{
    padding: 25px 0px;
}

.bt_font_size_20 a{
    color: #E4003A;
    text-decoration: none;
}

.bt_p_padding p{
    padding-bottom: 15px !important;
}

/* Navigationsmenü */

#header_main_logo_nav {
    background-color: rgb(255, 255, 255);
    height: 120px;
    float: left;
    width: 100%;
    box-sizing: border-box;
}

#main_logo_small{
    padding: 20px;
}

#main {
    min-height: calc(100vh - 125px);
}

#header_main_nav_band {
    background-image: url("sources/bestec_logo.png");
    background-repeat: no-repeat;
    text-align: left;
    height: 120px;
    padding-left: 200px;
}

#link_home {
    min-width: 180px;
    min-height: 120px;
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
}

#main_nav {
    vertical-align: bottom;
    display: inline-block;
    line-height: 50px;
    margin-top: 70px;
}

#header_main_nav_band ul{
    margin: 0px;
}

#header_main_nav_band ul li {
    background-color: white;
    float: left;
    list-style: none;
    color: rgb(149, 141, 131);
	user-select: none;
	cursor: pointer;
}

#header_main_nav_band ul li:hover ul {
    color: rgb(149, 141, 131);
    display: block;
    border-top: 1px solid rgb(149, 141, 131);
    border-bottom: 1px solid rgb(149, 141, 131);
    position: absolute;
}

#header_main_nav_band ul li ul {
    background-color: rgba(255,255,255,0.9);
    display: none;
    padding: 0px;
    line-height: 40px;
    box-shadow: 0px 8px 20px -10px rgba(0,0,0,0.3);
    min-width: 300px;
}

#header_main_nav_band ul li ul li {
    width: 100%;
    text-align: left;
    float: none;
}

#header {
    height: 120px;
    box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.1);
    position: fixed;
    width: 100%;
    z-index: 10000;
}

#header_main_nav_band ul li a{
    color: rgb(149, 141, 131);
    font-weight: 300;
    text-decoration: none;
    padding: 0px 25px;
    line-height: 40px;
    font-size: 30px;
}

#header_main_nav_band ul li:hover a{
    color: rgb(228, 0, 57);
}

#header_main_nav_band ul li ul li a{
    color: rgb(149, 141, 131) !important;
    font-variant:small-caps;
    line-height: 40px;
    font-size: 20px;
    display: block;
}

#header_main_nav_band ul li ul li:hover{
    background-color: rgb(240, 238, 236);
}

#menu-footer_menu {
    padding: 0;
        padding-top: 0px;
        padding-right: 0px;
        padding-bottom: 0px;
        padding-left: 0px;
    margin: 0;
    list-style: none;
}

#menu-footer_menu li a {
    text-decoration: none;
    color: rgb(149, 141, 131);
}

#menu-footer_menu li a:hover{
    color: rgb(228, 0, 57);
}

.bt_news_excerpt{
    height: 250px;
}

#v_align_bottom {
    vertical-align: bottom;
    display: inline-block;
}

#v_align_bottom:before {      
    content: ' ';
    display: inline-block;
    vertical-align: bottom;
    height: 100%;
}

#intro {
    background-image: url("sources/background_2.jpg");
    background-attachment: fixed;
    padding: 50px;
    padding-top: 170px;
    min-height: 570px;
    box-sizing: border-box;
}

.bt_balken {
    margin: 0px;
}

#main_nav_sidebar{
    width: 100%;
}

#inner_content {
    padding: 50px;
    background-color:#FFFFFF;
    display: block;
    font-size:30px;
    font-weight: 300;
    line-height: 1.4em;
    letter-spacing: -0.05em;
    max-width: 800px;
    margin: auto;
}

.inner_content_text, .inner_content_text_full {
    padding: 50px;
    background-color:#FFFFFF;
    display: block;
    font-size:30px;
    font-weight: 300;
    line-height: 1.4em;
    letter-spacing: -0.05em;
    max-width: 800px;
    margin: auto;
    box-sizing: border-box;
}

.inner_content_projects_max{
    max-width: 1200px;
    margin: auto;
}

.inner_content_text_full{
    margin: 0;
    max-width: 100%;
}

.inner_content_text_full p{
    max-width: 100%;
}

#copyright_text {
    padding: 5px 20px;
    font-size: 9px;
    font-weight: 500;
    color: #AAAAAA;
    position: fixed;
    bottom: 0px;
    right: 0px;
}

#copyright_text a{
    color: #AAAAAA;
    text-decoration: none;
    font-style: normal;
    font-weight: 400;
}

.footer_col {
    box-sizing: border-box;
    display: block;
    padding: 25px 50px;
    float: left;
}

.footer_col:first-of-type {
    margin-left: 370px;
    border-left: 1px solid rgb(226,0,57);
}


.footer_col_50 {
    box-sizing: border-box;
    display: block;
    padding: 25px;
    width: 50%;
    float: left;
}

#footer{
    display: flex;
    clear: both;
}

#footer p{
    font-style: normal;
    font-size: 0.8em;
    font-weight: 500;
    text-align: left;
    text-transform: uppercase;
}

#inner_content h1{
    font-weight: 400;
    padding: 10px 0px;
    font-style: normal;
}

.bt_red_font, .bt_red_font > div > h2{
    color: #E4003A;
    text-decoration: none;
}

.bt_margin_left {
	margin-left: 12px;
}

.bt_download_button a{
    border: none;
    padding: 10px 50px;
    margin: 50px 0px;
    line-height: 30px;
    width: 100%;
    font-size: 20px;
    color: rgb(149,141,131);
    font-weight: 300;
    font-family: 'Work Sans';
    cursor: pointer;
    box-shadow: 0px 6px 20px -18px rgba(57,0,10,0.75);
    background-color: #f0f0f0;
    text-decoration: none;
    transition: all 250ms;
}

.bt_download_button:hover a{
    box-shadow: 0px 10px 20px -18px rgba(57,0,10,0.75);
    background-color: #f3e6e6;
}

.bt_download_button:active a{
    box-shadow: 0px 5px 15px -12px rgba(57,0,10,0.75);

}

.bt_download_button {
    margin: 35px 0px !important;
}

#mapid { 
    height: 500px;
    letter-spacing: 0em !important; 
    box-shadow: 0px 8px 20px -10px rgba(0,0,0,0.5);
    z-index: 10;
}

#map_overlay {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background-color: rgba(208,0,57,0);
    z-index: 500;
    align-items: center;
    display: flex; 
}

#map_overlay:hover {
    background-color: rgba(208, 204, 199, 0.5);
}

#map_overlay_hint {
    margin: auto;
    line-height: 160%;
    padding: 20px 100px;
    background-color: rgba(255,255,255,0.9);
    text-align: center;
    font-size: 20px;
    box-shadow: 0px 5px 10px -7px rgba(0,0,0,1);
}

.bt_legend_element {
    background-color: rgba(255,255,255,0.7);
    padding: 5px;
    width: 150px;
	box-sizing: border-box;
	font-family: 'Work Sans', sans-serif;
	font-size: 12px;
	font-weight: 300;
	box-shadow: 0px 5px 10px -5px rgba(0,0,0,0.5);
	margin-bottom: 5px;
	border-radius: 2px;
	color: #000;
}

.bt_legend_headquarter_img, .bt_legend_projects_img {
    content: url("/wp-content/themes/Webseite_Template/js/leafletjs/images/marker-icon.png");
    width: 10px;
    position: absolute;
}

.bt_legend_projects_img{
	content: url("/pointer_projects.png");
	top: +42px;
}

.bt_legend_headquarter, .bt_legend_projects {
    padding-left: 20px;
}

#inner_content h4{
    font-size: 0.8em;
    padding-bottom: 50px;
}

.bt_search_results {
    display: flex;
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    color: rgb(149, 141, 131);
    font-size: 20px;
    margin: auto;
    transition: all 300ms;
}

.bt_search_results > a > div > p{
    color: rgb(149, 141, 131);
}

#bt_search_nav{
    display : none;
	background-color: rgb(255,255,255);
	z-index: 9999;
}

.bt_search_results:hover{
    background-color: rgb(240, 238, 236);
    box-shadow: 0px 8px 20px -10px rgba(0,0,0,0.5);
    z-index: 2000;
    position: relative;
}

.bt_search_img_wrapper {
    float: left;
    padding: 10px;
    height: 100%;
    display: flex;
    width: 150px;
}

.bt_img_placeholder {
    width: 150px;
    height: 100%;
    background-color: rgb(240, 238, 236);
    transition: all 300ms;
}

a:hover .bt_img_placeholder {
    background-color: #E4003A;
}

.bt_search_results a{
    color: #E4003A;
    text-decoration: none;
    font-size: 20px;
    font-weight: 400;
}

.bt_search h2{
    padding: 20px 20px;
    font-size: 25px;
    color: #E4003A;
}

.bt_search_results h2, .bt_search_result_disc h2{
    padding: 0;
	padding-bottom: 10px;
	line-height: 1em;
}

.bt_post .bt_search_results p,.bt_post .bt_search_result_disc p{
    padding: 0px;
    padding-bottom: 5px;
    margin: 0px;
    font-size: 16px;
    color: rgb(149, 141, 131);
}

.bt_search_result_disc {
    padding: 10px;
    display: flex;
    width: calc(100% - 300px);
    height: 100%;
    vertical-align: top;
    flex-flow: column;
    min-width: 600px;
    box-sizing: border-box;
}

#nav_overlay {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(250, 250, 250, 1);
    z-index: 9999;
    font-size: 1.5em;
}
  
#nav_overlay div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100vh;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#nav_overlay ul {
    list-style: none;
    text-align: left;
    width: 100%;
    padding: 0px;
    max-width: 300px;
    margin: auto;
    box-shadow: 0px 8px 20px -10px rgba(0,0,0,0.5);
    border: 1px solid rgba(149,141,131,0.05);
    border-top: 1px solid rgb(149, 141, 131);
    border-bottom: 1px solid rgb(149, 141, 131);
	overflow: hidden;
}

#nav_overlay ul li {
    font-family: 'Work Sans';
    font-weight: 600;
    padding: 5px;
    background-color: #FFFFFF;
    padding: 0px 20px;
	position: relative;
}

#nav_overlay ul li:hover {
    background-color: rgb(240, 238, 236);
}

#nav_overlay ul li:hover a{
    color:     rgb(149, 141, 131);
}

#nav_overlay ul li a{
    color: rgb(149, 141, 131);
    font-weight: 300;
    text-decoration: none;
    font-variant:small-caps;
    display: block;
	font-size: 20px;
	line-height: 40px;
}

#nav_overlay ul li ul li {
	box-sizing: border-box;
	display: block;
	padding: 0px 30px;
}

#nav_overlay .sub-menu {
    display: block;
    z-index: 10;
    left: 310px;
    top: 0px;
    box-sizing: border-box;
    border: none;
    background-color: rgba(255,255,255,1) !important;
    transition: all 500ms;
    position: sticky;
	box-shadow: 0px 4px 10px -5px rgba(0,0,0,0.5);
}

#nav_overlay ul li:hover .sub-menu {
    left: 0px;
}

#nav_ham{
	padding: 0px 25px;
    line-height: 50px;
    display: none; /*inline-block*/
    font-size: 24px;
    color: rgba(149, 141, 131, 0.90);
	cursor: pointer;
}

#nav_ham:hover{
    color: rgb(228, 0, 57);
}

.vc_row:not(.inner_content_text, .bt_pj_accordion_content, .inner_content_projects_max) {
    margin-left: -15px;
    margin-right: 0px !important;
}

.vc_inner {
	text-align: center;
}

.bt_inner_result {
    display: inline-table;
    margin: 0;
    text-align: center;
    font-style: normal;
    font-size: smaller;
    text-indent: 0;
    line-height: 0.8em;
    margin-bottom: 0px;
    width: 300px;
    align-items: center;
    max-width: 100%;
}

.bt_img_wrapper{
    min-width: 200px;
    min-height: 210px;
    margin: 5px 10px;
    border-bottom: 1px dashed rgba(208, 204, 199, 1);;
}

.bt_img_max_width{
    max-width: 380px;
    overflow: hidden;
}

.bt_inner_result a{
    color: rgb(149, 141, 131);
    font-size: 16px;
    line-height: 20px;
    text-decoration: none;
    display: block;
}

.bt_pj_title{
    padding: 0px 25px;
    color: rgb(228, 0, 57);
    display: flex;
    flex-direction: column;
    height: 40px;
    justify-content: center;
}

.bt_pj_title:hover{
    color: rgb(185, 0, 46);
}

.bt_pj_excerpt {
    display: block;
    max-width: 350px;
    text-align: justify;
    padding: 10px 25px;
    color: rgb(149,141,131);
    margin: auto;
    height: 250px;
    hyphens: auto;
}

.bt_hover_red{
    padding-top: 10px;
    padding-bottom: 10px;    
    transition: all 250ms;
}

.bt_hover_red:hover{
    background-color: rgb(240, 238, 236);
    box-shadow: 0px 8px 20px -10px rgba(0,0,0,0.5);
    z-index: 2000;
    position: relative;
}

.bt_inner_result a:hover{
    color: rgb(228, 0, 57);
    font-size: 16px;
    text-decoration: none;
}

.bt_nav_search{
    display: inline-block !important;
    margin: 0px !important;
    border: 0px !important;
    line-height: 32px;
    padding: 0px 20px !important;
}

#bt_search_form{
    border: 1px solid rgba(208, 204, 199, 1);
    margin: 10px;
    line-height: 32px;
}

.bt_search_container{
    display: inline-block;
    line-height: 50px;
    margin-left: 50px;
}

.bt_search_button{
    width: 50px;
    line-height: 32px;
    margin-left: -7px;
    border: none;
    border-left: 1px solid rgba(208, 204, 199, 1);
    color: rgba(149, 141, 131, 0.90);
    background-color: #F6F6F6;
}

#bt_result_field {
    background-color: rgba(255,255,255,0.95);
    color: #FFFFFF;
    padding: 0px;
    position: absolute;
    z-index: 10000;
    min-width: 220px;
    border: 1px solid rgba(208, 204, 199, 1);
    box-sizing: border-box;
    min-height: 10px;
    margin-left: -1px;
    line-height: 25px
}

#bt_result_field ul li a{
    color: rgb(149, 141, 131);
    text-decoration: none;
    list-style: none;
    padding: 5px 20px;
    font-size: 0.9em;
    line-height: 26px !important;
}

#bt_result_field ul li{
    list-style: none;
    display: block;
    float: none;
    line-height: 18px;
}

#bt_result_field ul{
    margin: 0px;
    padding: 0px;
}

.bt_spinner{
    padding: 5px 20px; 
    color: rgb(149, 141, 131);
    line-height: 18px;
}

.bt_post p{
    margin: 0.5em 0px;
    font-size: 20px;
}

.bt_post .wpb_content_element{
    margin: 0px;
}

/* Arcordion in Posts */
.bt_arcordion_css a {
    color: rgb(226,0,57);
    font-size: 30px;
    font-style: normal;
    text-decoration: none;
}

.vc_tta-panel-body{
    transition: all 500ms;
    overflow: hidden;
    max-height: 100%;
}

.vc_tta-panel:not(.vc_active) .vc_tta-panel-body{
    max-height: 0px;
}

.bt_arcordion_css a .fa{
    padding: 0px 20px;
    transition: all 300ms;
}

#filter_results{
    transition: all 1000ms;
}

/* Post Formatierungen */

.bt_inner_post {
    font-size: 20px;
    padding: 0px 50px 50px 50px;
}

.bt_first_row > .vc_column_container > .vc_column-inner {
    padding-top: 0px;
}

.vc_row.wpb_row.vc_row-fluid.inner_content_projects_max:first-of-type {
    margin-top: 50px;
}

.bt_inner_post ul {
    padding: 0;
    margin: 0;
}

.bt_inner_post .bt_button button {
    font-family: 'Work Sans', sans-serif !important;
    text-transform: uppercase;
    transition: all 300ms;
    cursor: pointer;
}

.bt_inner_post h2{
    color: rgb(149, 141, 131);
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.5em;
}

.bt_img_10px h6{
    margin-bottom: 10px !important;
}

.wpb_wrapper ul{
    list-style: square;
    margin-left: 20px;
}

.wpb_wrapper ul li{
    padding-left : 30px;
    margin-left : -30px;
}

.bt_back-to-top, .bt_back-button {
    color: #333333;
    position: fixed;
    bottom: 30px;
    right: 30px;
    background-color: rgba(255,255,255,0.75);
    padding: 15px;
    border-bottom: 1px solid rgba(0,0,0,0.3);
    border-right: 1px solid rgba(0,0,0,0.3);
    border-top: 1px solid rgba(0,0,0,0.07);
    border-left: 1px solid rgba(0,0,0,0.07);
    z-index: 9990;
}

.bt_back-to-top:hover, .bt_back-button:hover {
    color: #E4003A;
    border-bottom: 1px solid rgba(228,0,58,0.565);
    border-right: 1px solid rgba(228,0,58,0.565);
    border-top: 1px solid rgba(228,0,58,0.3);
    border-left: 1px solid rgba(228,0,58,0.3);
}

.bt_back-to-top:active, .bt_back-button:active {
    border-top: 1px solid rgba(228,0,58,0.565);
    border-left: 1px solid rgba(228,0,58,0.565);
    border-bottom: 1px solid rgba(228,0,58,0.3);
    border-right: 1px solid rgba(228,0,58,0.3);
}

.bt_back-button{
	left: 30px;
	right: unset;
	box-sizing: border-box;
}

.bt_back-button div {
    padding: 0px 10px;
    display: inline-block;
	font-variant: small-caps;
}

.bt_f20_lh30{
    font-size: 20px !important;
    line-height: 30px !important;
    letter-spacing: -0.03125em;
}

.bt_f20_lh30 > .bt_pj_title{
    font-size: 1.1em;
}

.bt_pc_draft{
	display: none;
}

/* Filterformatierungen */

article {
    width:100%;
    font-size: 16px;
  }

    .ud_pj_active h2{
        color: #E4003A;
    }

    .bt_pj_accordion_header h2{
        font-size: 20px;
        text-transform: uppercase;
        white-space: nowrap;
        overflow: hidden;
        padding-left: 44px;
    }

    dt, .bt_pj_accordion_header, .bt_pj_accordion_content {
        transition: all 300ms;
        -webkit-transition: all 300ms;
        border-bottom: 1px solid rgb(149, 141, 131);
    }

    .bt_pj_accordion_header{
        border-left: 5px solid rgba(228,0,58,0);
    }

    .bt_pj_accordion_header h2::before {
        content: "\f107";
        font-family: FontAwesome;
        transform: rotate(-90deg);
        display: inline-block;
        transition: all 300ms;
        left: -35px;
        position: relative;
    }
    
    .ud_pj_active h2::before {
        transform: rotate(0deg);
    }
    
    .ud_active, .ud_pj_active {
        padding: 4% 0 4% 4%;
        border-bottom: 1px dashed rgb(149, 141, 131) !important;
        border-left: 3px solid #E4003A;
    }
  
    #bt_accordion dt,
    #bt_accordion dd{
        width: 100%;
        float: left;
        padding: 2%;
        margin: 0;
        box-sizing: border-box;
    }

    .bt_sub_menu{
        display: none;
    }

    .inner_content_projects_max h1{
        font-size: 1.5em;
        color: #E4003A;
        font-weight: 300;
        /* 16 * 0.0625 = 1px */
        letter-spacing: -0.0625em;
        margin: 0px;
        padding: 0px;
        padding-bottom: 40px;
        max-width: 1024px;
    }

    .bt_pj_accordion_header,  .bt_pj_accordion_content, .bt_ps_content, .inner_content_projects_max{
        width: 100%;
        padding: 20px;
        box-sizing: border-box;
        font-size: 20px;
    }

    .inner_content_projects_max .wpb_content_element{
        margin: 0px;
    }

    .bt_pj_accordion_content, .bt_ps_content{
        padding: 20px 80px;
    }

    .bt_content_padding{
        padding: 20px 80px;
    }
    
    .bt_pj_accordion_header{
        cursor: pointer;
    }

    .inner_content_projects_max ul{
        margin: 0px;
        padding: 20px 0px;
        margin-left: 50px;
    }

    .inner_content_projects_max ul, .inner_content_projects_max h2{
        max-width: 1024px;
        text-align: justify;
    }
	
    #bt_accordion button {
        font-family: 'Work Sans', sans-serif;
        text-transform: uppercase;
        float: left;
        padding: 10px 60px 10px 20px;
        margin: 5%;
        font-size: 15px;
        color: rgb(149, 141, 131);
        border: none;
        border: 1px solid rgba(228, 0, 57, 0.0);
        transition: all 300ms;
        cursor: pointer;
        background-color: #FFFFFF;
        box-sizing: border-box;
        box-shadow: 0px 2px 10px -7px rgba(0,0,0,0.5);
        text-align: center;
        display: block;
        background-color: rgba(208, 204, 199, 0.15);
        width: 90%;
    }

    #bt_accordion button .fa{
        transition: all 300ms;
    }
  
    #bt_accordion button:hover .fa{
        color: rgb(228, 0, 57);
    }
    
    #bt_accordion button:hover {
        color: rgb(228, 0, 57);
        box-shadow: 0px 4px 10px -6px rgba(0,0,0,0.5);
        background-color: rgba(208, 204, 199, 0.2);
        border: 1px solid rgba(228, 0, 57, 0);
    }

	#bt_accordion .bt_button_light{
		background-color: rgba(255, 255, 255, 0.15);
		border: 1px solid rgba(0, 0, 0, 0.05);
		color: rgb(227,0,58);
		margin-top: 70px;
	}    

    dt{
        background: rgba(255,255,255,0);
        color: rgb(149, 141, 131);
        text-transform: uppercase;
        cursor: pointer;
    }

    dt .fa, #bt_accordion button .fa, .bt_pj_accordion_header .fa{
        padding: 0px 20px;
        width: 15px;
        text-align: right;
        transition: all 300ms;
    }

    dt:first-child {
        border-top: none;
    }

    dt:hover, .bt_pj_accordion_header:hover {
        background-color: rgb(240, 238, 236);
        color: rgb(149, 141, 131);
    }

    dd{
        background: #ffffff;
        line-height: 25px;
        font-size: 16px;
        font-variant:small-caps;
        word-spacing: 3px;
        color: #999;
        display: none;
        border-bottom: 1px solid rgb(149, 141, 131) !important;
    }

    body:not(.vc_editor) .bt_pj_accordion_content{
        display: block;
    }

    .bt_radio_container {
        display: block;
        position: relative;
        padding-left: 60px;
        margin-bottom: 0;
        cursor: pointer;
        font-size: 16px;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    .bt_sub_check::before {
        content: ' ';
        border-bottom: 2px solid rgba(0,0,0,0.1);
        position: absolute;
        left: 4px;
        width: 10px;
        height: 6px;
        display: block;
        top: 5px;
        border-left: 2px solid rgba(0,0,0,0.1);
    }

    .bt_sub_check {
        margin-left: 25px !important;
    }

    .bt_radio_container input {
        position: absolute;
        opacity: 0;
        cursor: pointer;
    }

    .checkmark {
        position: absolute;
        top: 2px;
        left: 20px;
        height: 20px;
        width: 20px;
        background-color: #eee;
    }

    .bt_radio_container:hover input ~ .checkmark {
        background-color: #ccc;
    }

    .bt_radio_container input:checked ~ .checkmark {
        background-color: #E4003A;
}

.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

.bt_radio_container input:checked ~ .checkmark:after {
    display: block;
}

.bt_radio_container .checkmark:after {
    top: 2px;
    left: 7px;
    box-sizing: border-box;
    width: 6px;
    height: 12px;
    transform: rotate(45deg);
    border-width: 2px;
    border-style: solid;
    border-color: #fff;
    border-top: 0;
    border-left: 0;
}

/* Filterformatierungen - ENDE */
  
#bt_filter_list {
    display: flex;
    width: 370px;
    float: left;
    position: fixed;
    left: 0px;
    top: 150px;
    height: calc(100vh - 150px);
    overflow-y: auto; 
}

#bt_filter_site {
    display: flex;
    width: calc(100vw - 370px);
    padding: 0px 20px;
    box-sizing: border-box;
    margin-left: 370px;
}

#download_button_form, .project_cat_button {
	display: block;
	position: relative;
	max-width: 490px;
}

.bt_download_input {
    width: 100% !important;
    box-sizing: border-box;
    transition: all 300ms;
}

.bt_input_error {
    background-color: rgba(228,0,57,0.1) !important;
    border-left: 3px solid #E4003A !important;
}

.bt_success {
    background-color: rgb(200, 255, 200);
}


#bt_message {
    height: 100px;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 10px;
    border: 1px solid rgba(208, 204, 199, 1);
    resize: none;
    font-family: 'Work Sans';
    font-size: 15px;
    padding: 10px 20px;
    color: rgb(149, 141, 131);
}

#download_button_form button, .project_cat_button button  {
    border: none;
    padding: 10px 50px;
    line-height: 30px;
    width: 100%;
    font-size: 20px;
    color: rgb(149,141,131);
    font-weight: 300;
    font-family: 'Work Sans';
    cursor: pointer;
    box-shadow: 0px 10px 20px -18px rgba(57,0,10,0.75);
	margin-top: 20px;
}

#bt_submit_button {
    border: 1px solid rgba(208, 204, 199, 1);
    padding: 10px;
    line-height: 30px;
    font-size: 20px;
    color: rgb(149, 141, 131);
    background-color: #FFF;
    font-family: 'Work Sans';
    font-weight: 300;
    cursor: pointer;
}

#bt_download_formular {
    position: absolute;
    top: 70px;
    padding: 25px;
    background-color: rgba(238, 238, 238, 0.866);
    display: none;
    left: 0px;
    right: 0px;
    margin: 0px;
    box-sizing: border-box;
    z-index: 10000;
    box-shadow: 0px 10px 20px -15px rgba(57,0,10,0.75);
}

#download_button_form button .fa {
    padding-right: 20px;
}

/*
.bt_project_image::after{
    content: "";
    width: 1px;
    height: 800px;
    border-left: 1px solid #e4003A;
    position: absolute;
    left: 50%;
    display: inline-block;
    bottom: -20px;
    z-index: -10;
    background-color: #FFFFFF;
}
*/

.bt_project_image {
    padding: 0px !important;
    background-color: #FFF;
    padding-top: 15px !important;
}

.bt_project_image_overlay {
    position: absolute;
    top: 0px;
    left: 0px;
    opacity: 1;
    padding: 15px !important;
    transition: all 300ms;
}

.bt_project_image_overlay:hover {
    opacity: 0.2;
}

.bt_project_image_overlay:active {
    opacity: 0.0;
}

/*
    Table Formatierung
*/

.vc_editor .bt_table_value:hover::before, .vc_editor .bt_table_key:hover::before, .vc_editor .bt_table_sub_caption:hover::before {
    color: #CCC;
    content: "Key:";
    display: block;
    font-size: 15px;
    font-weight: 600;
    position: absolute;
    top: -15px;
}

.vc_editor .bt_table_value:hover::before{
    content: "Value:";
}

.vc_editor .bt_table_sub_caption:hover::before{
    content: "Cell Caption:";
}

.vc_editor .bt_table_value, .vc_editor .bt_table_key{
    width: 100%;
}

.vc_editor .bt_editor_hint::before{
    content: "--- SMALL GAP BETWEEN TABLE ---";
    font-size: 15px;
    color: #DDD;
    display: block;
    text-align: center;
}

.bt_no_paddings, .bt_no_paddings .vc_column-inner, .bt_no_paddings > .vc_col-has-fill > .vc_column-inner{
    padding: 0px;
}

.bt_image_main_caption{
    padding: 25px 0px 0px 0px;  
}

.bt_table_main_caption, .bt_table_sub_caption, .bt_table_value, .bt_table_key  {
    display: inline-block;
    box-sizing: border-box;
    padding: 5px 15px;
    margin-right: -7px !important;
    line-height: 35px;
    text-align: left !important;
    vertical-align: top;
    font-family: 'Open Sans', sans-serif;
}

.bt_table_main_caption{
    padding: 5px 0px;
}

.bt_table_main_caption .wpb_wrapper, .bt_table_sub_caption .wpb_wrapper, .bt_table_value .wpb_wrapper, .bt_table_key .wpb_wrapper  {
    background: inherit;
}

.bt_table_main_caption {
    color: #333;
    background-color: #FFF;
    width: 100%;
}

.bt_table_sub_caption {
    color: #333;
    width: 100%;
}

.bt_table_key {
    color: #333;
    width: 50%;
    font-weight: 400;
}

.bt_table_value {
    color: #333;
    width: 50%;
}

.bt_table_hide_text p{
    color: #DDD;
}

.bt_table_value p, .bt_table_key p{
    text-align: left;
}

.inner_content_projects_max p, .bt_no_bottom_margin{
    margin: 0px !important;
}

.bt_crypted_mail:after {
	content: attr(data-name) "@" attr(data-domain) "." attr(data-tld); 
	user-select: all;
}

#cookie-popup {
	border: 1px solid #E4003A;
	padding: 20px;
	text-align: center !important;
	display: block;
	position: fixed;
	bottom: 20px;
	left: 20px;
	background-color: rgba(255,255,255,0.98);
    box-shadow: 0px 0px 20px -10px black;
    max-width: 300px;
    z-index: 20000;
}

#cookie-popup.hidden {
	display: none !important;
}

#cookie-popup button {
	padding: 10px 20px;
	display: block;
	text-align: center;
	background-color: #E4003A;
	border: none;
	color: white;
	width: 100%;
    margin-top: 20px;
    cursor: pointer;
}

button.cookie-disable {
	margin-top: 5px !important;
	border: none;
	color: #AAA !important;
	text-decoration: underline;
	font-size: 0.8em;
}

@media (max-width: 1024px) { 
    #main_nav{
        font-size: 14px;
        line-height: 50px;
    }

    .inner_content_text, .inner_content_text_full{
        padding: 25px;
    }

    .bt_search_container{
        display: none;
    }

	#bt_search_nav {
		display: block;
		position: fixed;
		left: 0px;
		right: 0px;
		top: 120px;
		border: 1px solid rgba(208, 204, 199, 1);
		line-height: 32px;
	}
	
	#content{
		padding-top: 140px !important;
	}

    #search_nav{
        width: calc(100% - 50px);
    }

    .bt_search_button{
        position: absolute;
        right: 0px;
    }

    .bt_back-to-top, .bt_back-button {
        bottom: 5px;
		padding: 10px;
    }
	
	.bt_back-to-top{
		left: 5px;
		right: unset;
	}
	
	.bt_back-button{
		left: 0px;
		width: 85px;
	}

    #main_nav ul li{
        display: inline-block;
    }

    #v_align_bottom::before {
        content: ' ';
        display: none;
        vertical-align: bottom;
        height: 100%;
    }

    #v_align_bottom{
        width: 100%;
        display: block;
    }

    #nav_overlay {
        display: none;
    }

    #main_nav{
        display: inline-block;
    }

    #nav_ham{
        display: inline-block;
        line-height: 60px;
    }
	
	#menu-item-2946{
		display: none !important;
	}
	
    #bt_filter_list {
        display: inline-block;
        position: inherit;
        width: 100%;
        min-width: 300px;
        float: none;
		height: inherit;
    }
    
    #bt_filter_site {
        display: inline-block;
        width: 100%;
        padding: 0px 20px;
        box-sizing: border-box;
        margin-left: 0;
    }

    .footer_col:first-of-type {
        margin-left: 0px;
        border-left: none;
        border-top: 1px solid rgb(226,0,57);
    }

    .footer_col {
        box-sizing: border-box;
        display: block;
        padding: 25px 50px;
        width: 100%;
        float: none;
    }

    #footer{
        display: block;
    }

    .bt_table_sub_caption {
        width: 100%;
    }
    
    .bt_table_key {
        width: 40%;
    }
    
    .bt_table_value {
        width: 60%;
    }

    .bt_table_hide_text{
        display: none;
    }
    
}

@media (max-width: 800px) {
    #inner_content, .inner_content_text, .inner_content_text_full {
        font-size: 25px;
    }
    
    .inner_content_projects_max ul{
        margin-left: 0px;
    }
    
    p{
        font-size: 0.9em;
    }

    .bt_table_key {
        width: 100%;
        border-top: 1px dashed #999;
        background-color: #EAEAEA;
    }
    
    .bt_table_value {
        width: 100%;
    }

    .bt_inner_post {
        padding: 0px 0px 50px 0px;
    }

    .bt_pj_accordion_content, .bt_ps_content{
        padding: 20px 35px;
    }

    .bt_search_img_wrapper{
        display: none;
    }

    .bt_search_result_disc{
        width: 100%;
    }

    .bt_content_padding {
        padding: 20px 20px;
    }

    .footer_col{
        padding: 15px 25px;
    }

    .bt_p_padding ul{
        margin-left: 50px;
    }

    .bt_p_padding ul li{
        padding-left: 10px;
    }
	
	.bt_search_result_disc {
		min-width: 300px;
	}

}

@media (max-width: 640px) {
    #main_nav ul li{
        display: inline-block;
        width: 200px;
    }
    
    #main_nav{
        line-height: 60px;
        font-size: 20px;
        display: inline;
    }

    #header_main_nav_band ul li a {
        font-size: 18px;    
    }

    #header_main_nav_band ul li ul li a {
        font-size: 15px;
    }
    
    #nav_ham {
        position: fixed;
        right: 0px;
    }

    .bt_inner_result {
        display: block;
        text-align: center;
    }
	
	.bt_pj_excerpt{
		overflow:hidden;
	}
	
	.bt_f20_lh30 > .bt_pj_title{
		height: 80px;
	}
	
	.bt_inner_result {
		width: 100%;		
	}
	
	.bt_img_max_width{
		max-width: 100%;
	}
}

