/**
Theme Name: Astra Child
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/
/* open-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../../uploads/fonts/open-sans-v40-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../../uploads/fonts/open-sans-v40-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../../uploads/fonts/open-sans-v40-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../../uploads/fonts/open-sans-v40-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* open-sans-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../../uploads/fonts/open-sans-v40-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

*,body,input,select,textarea{
  font-family: 'Open Sans';
}
*,body,input,select,textarea{
  hyphens: auto;
  word-wrap: break-word;
}
h1{
   margin: 10px 0 20px !important;
}
h4{
	margin: 40px 0 20px;
}
.bt_col_black,
.bt_col_black a,
ul#menu-login-de li a,
ul#menu-login-en li a,
.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link,
.ast-builder-menu-2 .menu-item.current-menu-item > .menu-link{
	color: #231F20;
	color: #046bd2;
}
.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link:hover,
.ast-builder-menu-2 .menu-item.current-menu-item > .menu-link:hover{
	color: #046bd2;
}
.bt_link_white{
	color:#fff;
	font-weight: bold;
}

ul#menu-login-de li a:hover,
ul#menu-login-en li a:hover{
	font-weight: bold;
}
ul#menu-login-de li a,
ul#menu-login-en li a{
  font-size: 12px;	
}

.bt_btn_blau a{
	background-color: #046BD2 !important;
	color: #fff !important;
}
.bt_grau,
.bt_bg_grau{
	background: #f6f6f6;
}
.site-below-footer-wrap[data-section="section-below-footer-builder"],
.bt_bg_grad{
	background-image: linear-gradient(to right, #9ACA3C 0%, #109CA8 100%);
}
.bt_bg_blau_grad{
	background-color: #134094;
	background-image: linear-gradient(65deg, rgba(0, 0, 0, .3) 10%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, .3) 90%);	
}

.bt_container{
    padding: 10px 20px !important;
}
.bt_mb_xs{
	margin-bottom: 1.2rem !important;
}

/* Downloads */
.bt_liste li{
	padding: 15px 0;
}

.bt_full_width,
.bt_full_width a img,
.bt_full_width img{
	width: 100% !important;
}
#bt_logo img{
	height: 100px !important;
}
.bt_table, .bt_table tr, .bt_table th, .bt_table td{
    border: 0;
	padding: 0;
	margin: 0;
}
.bt_table td{
	padding-top: 10px;
	padding-bottom: 10px;
}
.bt_table a{
	color: inherit;
}
.bt_half{
	width: 50%;
}

/* Downloads */
.bt_download_link a,
.bt_link_download{
	color: inherit;
}
.bt_download td{
	cursor: pointer;
}
.bt_icon_link,
.bt_icon_download{
	width: 1.5rem;
	margin-right: 1.0rem;
	display: inline-block;
}
.bt_download_link{
	padding-bottom: 15px;
}
.bt_icon_download:before{
	content: url(/wp-content/uploads/icon-download.svg);
}
.bt_icon_link:before{
	content: url(/wp-content/uploads/icon-link.svg);
}
/* Header */
header#masthead{
    box-shadow: 0px 1px 5px 0px #00000040;
}
/* Main Menu */
header#masthead{
	box-shadow: none;
}
.bt_pl0 nav ul, .bt_pl10 nav ul{
	margin-left: 10px;
}
.bt_pl0 nav ul.uael-nav-menu li a:not(.uael-sub-menu-item):first-child{
	padding-left: 0 !important;
}
.bt_pl10 nav ul.uael-nav-menu li a:not(.uael-sub-menu-item):first-child{
	padding-left: 10px !important;
}
.bt_pl0 ul.sub-menu li a, .bt_pl10 ul.sub-menu li a{
	padding-left: 15px!important;
}

/* Menu Sprachauswahl Header oben */
#ast-hf-menu-3 ul li#menu-item-1852 a.menu-link{
	background-color: #f9f9f9;
}
#ast-hf-menu-3 a:hover{
	font-weight: bold;
}
/* anmelden Header oben */
.ast-header-html-1 .ast-builder-html-element{
	display: flex;
}
/*[CLASS*="-sticky-header-active"] .main-header-menu .menu-link,
*/.ast-sticky-shrunk .main-header-menu > .menu-item > .menu-link/*, 
#ast-hf-menu-2 a.ast-hf-menu-2*/{
	background-color: #fff !important;
}
.ast-builder-menu-3 .main-header-menu,
.ast-sticky-shrunk .main-header-menu > #menu-item-1852 > .menu-link{
	background-color: #f9f9f9 !important;
}
#bt_head_faq{
	text-align: center; 
	margin-top: 5px; 
	margin-bottom: 5px; 
	line-height: 1.75rem;	
}
#bt_head_faq img{
    width:25px; height:25px; 
}
/* sticky Header  		20240724
.ast-builder-menu-2 {
	visibility: hidden;    
	transition: all .0s linear;
}
.ast-header-sticked .ast-builder-menu-2 {
	visibility: visible;
	transition: all .0s linear;
}*/

/* Menu Main Underline Customizer */
.ast-desktop .ast-primary-header-bar .main-header-menu > .menu-item,
.ast-desktop .ast-below-header-bar .main-header-menu > .menu-item,
.ast-desktop.ast-sticky-header-shrink .ast-primary-header-bar.ast-header-sticked .main-header-menu > .menu-item{
    line-height: 40px;
    margin-bottom: 15px;
}

#ast-hf-menu-1 li a:after /*,
#ast-hf-menu-2 li a:after*/{
    content: '';
    bottom: 0;
    display: block;
    position: absolute;
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transition-timing-function: cubic-bezier(0.58,0.3,0.005,1);
    transition-timing-function: cubic-bezier(0.58,0.3,0.005,1);
    left: 0;
    z-index: 2;
    opacity: 1;
    width: 80%;
    height: 2px;
    background-color: #59B471;
	opacity: 0;
}/*
#ast-hf-menu-2 li a{
	padding-bottom: 10px;    
	padding-left: 10px;
    padding-right: 44px;
}*/
#ast-hf-menu-1 li a:hover:after/*,
#ast-hf-menu-2 li a:hover:after*/{
    opacity: 1;
}

}
/* Menu Main Underline Elementor */
#bt_main_menu .menu-item.parent a.uael-menu-item:after{
	opacity: 0;
}
#bt_main_menu .menu-item.parent a.uael-menu-item:hover:after,
.uael-pointer__underline .menu-item.parent a.uael-menu-item:after{
	opacity: 1;
	width: 80%;
	height: 2px;
	background-color: #59B471;
}
.bt_hov_bold a:hover{
	font-weight: bold;
}

/* Posts */
.bt_post a{
	color: inherit;
}
.bt_post > div.elementor-container{
    border-bottom: solid 1px;
    padding-bottom: 30px;
    margin-bottom: 50px;
}
.ast-single-related-posts-container{
	border-top: 1px solid !important;
}

/* Menu Bottom im Footer */
#astra-footer-menu li:not(:last-child),
#bt_menu_bottom ul.uael-nav-menu li:not(:last-child) {
    border-right: 1px solid #fff;
}
.ast-builder-menu-2 .menu-item > .menu-link{
	font-size: 0.75rem;
}
.ast-builder-menu-2 .menu-item > .menu-link:hover{
	font-size: 0.75rem;
	color: #000;
}

.ast-builder-menu-2 .main-header-menu,
.ast-builder-menu-3 .main-header-menu{
	background-color: #f9f9f9 !important;
	color: #000;
	font-weight: normal
}
.ast-builder-menu-2 .main-header-menu:hover{
	font-size: 0.75rem;
	color: #000;
}

.ast-sticky-shrunk .ast-builder-menu-2 .main-header-menu > .menu-item > .menu-link,
.ast-sticky-shrunk .ast-builder-menu-3 .main-header-menu > .menu-item > .menu-link{
	background-color: #f9f9f9 !important;
}
.ast-builder-menu-2 .main-header-menu:focus,	
.ast-builder-menu-2 .main-header-menu:hover{
	font-weight:bold;
	color: #000;	
}
.ast-builder-menu-2 .menu-item{
	font-weight: normal;
}

.ast-builder-menu-2 .menu-item:hover{
	font-weight: bold;
}
.ast-builder-menu-2 .menu-item:hover > .menu-link{
	color: #000;
	font-size: 0.75rem;
}
.ast-builder-menu-3 .menu-item:hover > .menu-link{
    font-weight: bold;	
}
.ast-desktop .ast-menu-hover-style-zoom > .menu-item > .menu-link:hover{
	transform: none;
}

/* Text im Headerbild */

article#post-1923 div.elementor-1923,
article#post-1851 div.elementor-1851,
article#post-1764 div.elementor-1764,
article#post-7 div.elementor-7{
  position: relative;	
}

#bt_txt_headerbild{
	position: relative;
	padding-top: 10px;
	max-width: 100vw;
}
@media (min-width: 768px ){
  #bt_txt_headerbild{
	  position: absolute;
	  top: 10px;
	  z-index: 9;
  }
}
@media (min-width: 1000px ){
  #bt_txt_headerbild{
	  top: 50px;
	  z-index: 9;
  }
}
@media (min-width: 1200px ){
  #bt_txt_headerbild{
	  top: 100px;
	  z-index: 9;
  }
}

.bt_txt_qb{
	width: 250px;
	padding: 15px;
}
.bt_txt_pd{
	width: 350px;
	padding: 15px;
	background: #fff;
}
.bt_txt_pd h2{
	font-size: 2.25rem;
}

.bt_zoom{
	 overflow: hidden;
}

.bt_bord_bot .elementor-accordion-item{
	border-bottom: 1px solid !important;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

/* Accordion hide first, damit alle geschlossen sind */
div.bt_hide_first div.elementor-accordion-item:first-child{
	display: none;
}

#impressum table, #impressum tr, #impressum th, #impressum td{
    border: 0;
	padding: 0;
	margin: 0;
}	

#bt_faq_svg svg{
  max-width: 30px;	
}

#bt_cat_loginout a{
 display: flex;
 justify-content: space-between;
 font-size: 12px;	
 color: #231F20;
}
#bt_cat_loginout a:hover{
 font-weight: bold;
}
/* Contact Form 7 - Column Grid */
.bt-form {
    width: 100%;
    margin: 0 auto;
}
.bt-form-row {
    display: flex;
    flex-direction: column;
    width: 100%;
}
.bt-form-row .wpcf7-form-control,
.wpcf7-form label {
    width: 100%;
}
.bt-form-column {
    flex: 1;
    padding: 0.5rem 0;
    width: 100%;
}
.bt-form-column:first-of-type {
    padding-left: 0;
}
.bt-form-column:last-of-type {
    padding-right: 0;
}

/* CF7 Grid - Desktop Ansicht */
@media only screen and ( min-width: 48em ) {
    .bt-form-row {
        flex-direction: row;
    }
    .bt-form-column {
        padding: 0.5rem 1rem;
    }

    .bt-form-column.col-12 {
        width: 100%;
        flex: inherit;
    }
    .bt-form-column.col-11 {
        width: 91.66666667%;
        flex: inherit;
    }
    .bt-form-column.col-10 {
        width: 83.33333333%;
        flex: inherit;
    }
    .bt-form-column.col-9 {
        width: 75%;
        flex: inherit;
    }
    .bt-form-column.col-8 {
        width: 66.66666667%;
        flex: inherit;
    }
    .bt-form-column.col-7 {
        width: 58.33333333%;
        flex: inherit;
    }
    .bt-form-column.col-6 {
        width: 50%;
        flex: inherit;
    }
    .bt-form-column.col-5 {
        width: 41.66666667%;
        flex: inherit;
    }
    .bt-form-column.col-4 {
        width: 33.33333333%;
        flex: inherit;
    }
    .bt-form-column.col-3 {
        width: 25%;
        flex: inherit;
    }
    .bt-form-column.col-2 {
        width: 16.66666667%;
        flex: inherit;
    }
    .bt-form-column.col-1 {
        width: 8.33333333%;
        flex: inherit;
    }
    
    .bt-form input,
    .bt-form select,
    .bt-form textarea{
     border: none;
     border-bottom: 2px solid #a0a0a0;
     background-color: #f6f6f6;
     border-radius: 0; 
     }
    
    .bt-form img{
        max-width: 180px;
    }
}

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output, .wpcf7-acceptance .wpcf7-list-item{
	border-width: 0;
	padding-left: 0;
    margin-left: 0;
}
.wpcf7 .wpcf7-not-valid-tip,
.wpcf7-response-output,
.bt-pflicht{
	color: #be0002;
}

/* Ultimate member */

/* Register */

.bt-form .um .um-form input[type="text"],
.bt-form .um .um-form input[type="tel"],
.bt-form .um .um-form-field input[type="email"], 
.bt-form .um .um-form-field span.selection,
.bt-form .um .um-form-field input[type="password"],
.bt-form .um-form .um-field-area-password input[type=password],
.bt-form .um-field .select2.select2-container .select2-selection{
     border: none !important;
     border-bottom: 2px solid #a0a0a0 !important;
     background-color: #f6f6f6 !important;
     border-radius: 0 !important; 
     }
.um a.um-button, .um input[type=submit].um-button { /*width: 270px !important;*/ background-color:#046BD2; }
.um a.um-button:hover, .um input[type=submit].um-button:hover { font-weight: bold;background-color:#046BD2; }
input[type=submit].um-button {
    background: #046bd2 !important;
}
#um_field_2312_gender,
#um_field_2209_gender{
	padding-bottom: 10px;
}
#um_field_2312_gender .um-field-half,
#um_field_2209_gender .um-field-half{
	width: 100%;
}
#bt_registrieren #um-submit-btn{
	margin-top: 30px;
}
/* Anmelden */
#bt-anmelden{
	max-width: 450px;
	margin-bottom: 40px;
}
#bt-register-ok a.um-col-alt-b,
#bt-anmelden .um-col-alt-b a,
#bt-anmelden .um-col-alt-c a{
    background: #046bd2 !important;
	color: #fff !important;
    line-height: 1em !important;
    padding: 16px 20px !important;
    padding-top: 16px !important;
    padding-right: 20px !important;
    padding-bottom: 16px !important;
    padding-left: 20px !important;
    text-decoration: none !important;
    text-align: center;
    text-transform: none !important;
    font-weight: 400 !important;
    overflow: hidden;
    position: relative;
    transition: .25s;
    box-sizing: border-box;
    -moz-border-radius: 4px !important;
    -webkit-border-radius: 4px !important;
    border-radius: 4px !important;
    -webkit-box-shadow: 0 4px 6px rgba(50, 50, 93, .11), 0 1px 3px rgba(0, 0, 0, .08);
    box-shadow: 0 4px 6px rgba(50, 50, 93, .11), 0 1px 3px rgba(0, 0, 0, .08);
    opacity: 1;
}

/* Registrierungsbestätigung deutsch */
body.postid-2149 .post-navigation{
	display: none;
}

/* Account */
.um-account-profile-link{
	display: none;
}
.bt_home_ansprechpartner{
	min-height: 380px;
}

/* Menu 20240916 */
.site-header-above-section-left{
	width: 0;
}
.ast-header-break-point .main-navigation ul .menu-item .menu-link{
	border-width: 0;
}
/* 20240927 */
.ast-above-sticky-header-active .ast-above-header.ast-header-sticked,
.ast-primary-sticky-header-active .main-header-bar-wrap .main-header-bar{
	max-width: 100% !important;
}

#bt_404_headerbild{
	position: absolute;
	padding-top: 10px;
	top: 90px;
	z-index: 9;
}
.bt_btn_180, .bt_btn_180 a{
	width: 180px !important;
}

/* Mailpoet */
.um-field-checkbox-option {
	width: 100%
}

.page-id-1823 header.entry-header:not(.related-entry-header) .post-thumb img, .ast-single-post-featured-section.post-thumb img {
    aspect-ratio: initial;
}
/* Footer Menu LinkedIn */
#menu-item-2900 a:after,
#menu-item-2908 a:after {
  content: "";
  width: 16px;
  height: 16px; 
  background-image: url("/wp-content/uploads/linkedin.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

/* 20250304 */
.ast-single-post-featured-section.post-thumb img{
    width: 1600px;
    aspect-ratio: auto 1600 / 544;
    max-width: 100%;
	height: auto;
}

.bt_mittig{
	text-align: center;
}