/*----------------------------------------
  General Layout
------------------------------------------*/
* {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
}

.bb_html, .bb_body {
    -webkit-overflow-scrolling: touch;  /* Ermöglicht das reibungslose Scrollen auf iOS-Geräten */
}

.bb_body {
	/* background: #ffffff; */
	background-color: var(--bck-grnd-color-body);
	color: var(--dark-700);
  overflow-y: scroll; /* Verhindert das Scrollen */
  display: flex;
  flex-direction: column;

}
.bb_body,
.bb_body *,
.bb_p {
	font-family:  var(--main-font-family);
	font-size: 15px;
	line-height: 25px;
	font-weight: 500;
}


.bb_body, .bb_body *, .bb_p {
	font-family:  var(--main-font-family);
	font-size: inherit;
	line-height: 1.2; /* oder 22px, wenn du spezifische px bevorzugst */
	font-weight: 500;
  }

  
body.bb_ajax nav.bb_navigation,
body.bb_ajaxurl nav.bb_navigation {
	position: relative;
	z-index: 999;
}

body.bb_ajaxloading #bb_response_wrapper,
body.bb_ajaxloading .bb_sidenav,
body.bb_ajaxloading .bb_sidesettings {
	opacity: 0;
}

@media only screen and (max-width: 768px) {
	::-webkit-scrollbar {
		display: none;
	}
}

/* .bb_container.bb_full {
	margin: 0px;
	width: 100%;
}
.bb_container.bb_full .bb_sec-tit {
	margin-left: 24px;
} */
.bb_container.bb_no-margin {
	width: 100%;
	margin: 0px auto;
}


.bb_container.bb_over{
	background-color: #ffffff;
	z-index: auto;
	position: relative;
	/*border-radius: var(--border-radius);*/
	border-top-left-radius: 24px;
	border-top-right-radius: 24px;
	padding: 0 24px;
	margin-bottom: 0px;
	width: 100%;
	box-shadow: 0 -5px 6px -2px rgb(0 0 0 / 10%);
  -webkit-box-shadow: 0 -5px 6px -2px rgb(0 0 0 / 10%);
}

.bb_container.bb_over.bb_primary-bg{
	background-color:var(--bck-grnd-color-general);
}
.bb_container.bb_over.bb_mb0{
	margin-bottom: 0;
}
.bb_container.bb_over.bb_float-top{
	top: -30px;
	position: relative;
	z-index: 998;
	margin-bottom: -30px;
}
.bb_container.bb_overhide{
	overflow: hidden;
}
.bb_container.bb_bb{
	border-bottom: 1px solid #e0e0e0;
}
.bb_container.bb_flat{
	z-index: 1;
	position: relative;
	padding: 0 24px;
	margin-bottom: 30px;
	width: 100%;
}

.bb_sidenav .bb_waves-ripple{
	background: transparent !important;
}


/* Basierend auf deinen ursprünglichen Styles */
.bb_h1, .bb_h2, .bb_h3, .bb_h4, .bb_h5, .bb_h6 {
	font-family:  var(--main-font-family);
	font-weight: 400;
	text-transform: uppercase;
}

.bb_h1 { font-size: var(--font-size-h1); line-height: var(--line-height-h1); margin: var(--margin-h1); }
.bb_h2 { font-size: var(--font-size-h2); line-height: var(--line-height-h2); margin: var(--margin-h2); }
.bb_h3 { font-size: var(--font-size-h3); line-height: var(--line-height-h3); margin: var(--margin-h3); }
.bb_h4 { font-size: var(--font-size-h4); line-height: var(--line-height-h4); margin: var(--margin-h4); }
.bb_h5 { font-size: var(--font-size-h5); line-height: var(--line-height-h5); margin: var(--margin-h5); }
.bb_h6 { font-size: var(--font-size-h6); line-height: var(--line-height-h6); margin: var(--margin-h6); }

.bb_h1 .bb_sec-tit:before {top: var(--line-height-h1);}
.bb_h2 .bb_sec-tit:before {top: var(--line-height-h1);}
.bb_h3 .bb_sec-tit:before {top: var(--line-height-h1);}
.bb_h4 .bb_sec-tit:before {top: var(--line-height-h1);}
.bb_h5 .bb_sec-tit:before {top: var(--line-height-h1);}
.bb_h6 .bb_sec-tit:before {top: var(--line-height-h1);}

/* Anwendung der Tablet-spezifischen Variablen */
@media (max-width: 768px) and (orientation: portrait) {
    .bb_h1 { font-size: var(--tablet-font-size-h1); line-height: var(--tablet-line-height-h1); }
    .bb_h2 { font-size: var(--tablet-font-size-h2); line-height: var(--tablet-line-height-h2); }
    .bb_h3 { font-size: var(--tablet-font-size-h3); line-height: var(--tablet-line-height-h3); }
    .bb_h4 { font-size: var(--tablet-font-size-h4); line-height: var(--tablet-line-height-h4); }
    .bb_h5 { font-size: var(--tablet-font-size-h5); line-height: var(--tablet-line-height-h5); }
    .bb_h6 { font-size: var(--tablet-font-size-h6); line-height: var(--tablet-line-height-h6); }

	.bb_h1.bb_sec-tit:before {top: var(--tablet-line-height-h1);}
	.bb_h2.bb_sec-tit:before {top: var(--tablet-line-height-h2);}
	.bb_h3.bb_sec-tit:before {top: var(--tablet-line-height-h3);}
	.bb_h4.bb_sec-tit:before {top: var(--tablet-line-height-h4);}
	.bb_h5.bb_sec-tit:before {top: var(--tablet-line-height-h5);}
	.bb_h6.bb_sec-tit:before {top: var(--tablet-line-height-h6);}
	
}

/* Anwendung der Mobilgerät-spezifischen Variablen */
@media (max-width: 480px) and (orientation: portrait) {
    .bb_h1 { font-size: var(--mobile-font-size-h1); line-height: var(--mobile-line-height-h1); }
    .bb_h2 { font-size: var(--mobile-font-size-h2); line-height: var(--mobile-line-height-h2); }
    .bb_h3 { font-size: var(--mobile-font-size-h3); line-height: var(--mobile-line-height-h3); }
    .bb_h4 { font-size: var(--mobile-font-size-h4); line-height: var(--mobile-line-height-h4); }
    .bb_h5 { font-size: var(--mobile-font-size-h5); line-height: var(--mobile-line-height-h5); }
    .bb_h6 { font-size: var(--mobile-font-size-h6); line-height: var(--mobile-line-height-h6); }

	.bb_h1.bb_sec-tit:before {top: var(--mobile-line-height-h1);}
	.bb_h2.bb_sec-tit:before {top: var(--mobile-line-height-h2);}
	.bb_h3.bb_sec-tit:before {top: var(--mobile-line-height-h3);}
	.bb_h4.bb_sec-tit:before {top: var(--mobile-line-height-h4);}
	.bb_h5.bb_sec-tit:before {top: var(--mobile-line-height-h5);}
	.bb_h6.bb_sec-tit:before {top: var(--mobile-line-height-h6);}

}

.bb_strong {
	font-weight: 600;
}

.bb_a {
	color: var(--primary-color);
}
h4.bb_sec-tit{
	line-height: 34px;
}
.bb_sec-tit.bb_mt0{
	margin-top: 0;
}
.bb_sec-tit {
	position: relative;
}
.bb_sec-tit:after {
	display: block;
	position: relative;
	content: " ";
	height: 1px;
	width: 40px;
	/* margin: 8px 0 0px 20px; */
	margin-top:5px;
	margin-bottom:5px;
	background: var(--primary-color);
}

.bb_sec-tit:before {
	display: none;
	position: absolute;
	content: " ";
	height: 3px;
	width: 20px;
	margin: 7px 0 0px 0;
	background: var(--primary-color);
}
.bb_sec-tit.bb_center:after {
	margin: 10px auto 0px auto;
	width: 60px;
}
.bb_sec-tit.bb_center:before {
	left: 50%;
	margin-left: -10px !important;
	top: 36px;
}
.bb_white-text .bb_sec-tit:after,
.bb_white-text .bb_sec-tit:before,
.bb_sec-tit.bb_white-text:after,
.bb_sec-tit.bb_white-text:before {
	background: #ffffff;
	opacity: 0.;
}

.bb_secondary-content {
	color: #607d8b;
}
.bb_dark-text {
	color: var(--dark-700);
}
.bb_light {
	font-weight: 400;
}
.bb_label {
	color: var(--dark-600);
}
.bb_transparent {
	background-color: transparent;
}
.bb_section.bb_pt0{
	padding-top: 0;
}
.bb_section.bb_pb0{
	padding-bottom: 0;
}
.bb_ph24{
	padding-right: 24px;
	padding-left: 24px;
}
/*----------------------------------------
  Page Title
------------------------------------------*/

.bb_pagetitle {
	text-transform: uppercase;
	font-weight: 400;
	font-size: 24px;
	line-height: 36px;
	position: relative;
	margin-top: 50px;
}

.bb_pagetitle::after {
	display: block;
	position: relative;
	content: " ";
	height: 1px;
    width: 40px;
    margin: 8px 0 0px 20px;
	background: var(--primary-color);
}
.bb_pagetitle::before {
	display: block;
	position: absolute;
	content: " ";
	height: 3px;
    width: 20px;
    margin: 7px 0 0px 0;
	background: var(--primary-color);
	/* top: 36px; */
	bottom: -1px;
}

.bb_small {
	font-size: 14px;
	opacity: 0.;
}
.bb_text-upper {
	text-transform: uppercase;
}
.bb_preloader-background {
	background-color: #f5f5f5;
}

/*----------------------------------------
  Helper Classes
------------------------------------------*/
.bb_top-0 {
	margin-top: 0px;
}
.bb_bot-0 {
	margin-bottom: 0px;
}
.bb_bot-20 {
	margin-bottom: 20px;
}
.bb_pad-top-15 {
	padding-top: 15px;
}
.bb_pad-15 {
	padding: 0 15px;
}
.bb_pad-30 {
	padding: 0 30px;
}
.bb_spacer {
	margin-bottom: 20px;
	display: block;
	width: 100%;
	height: 1px;
}
.bb_spacer-line {
	margin-bottom: 1px;
	display: block;
	width: 100%;
	height: 1px;
}
.bb_spacer-small {
	margin-bottom: 3px;
	display: block;
	width: 100%;
	height: 1px;
}
.bb_spacer-medium {
	margin-bottom: 30px;
	display: block;
	width: 100%;
	height: 1px;
}
.bb_spacer-large {
	margin-bottom: 50px;
	display: block;
	width: 100%;
	height: 1px;
}
.bb_spacer-xlarge {
	margin-bottom: 100px;
	display: block;
	width: 100%;
	height: 1px;
}

.bb_col.bb_pad-0,
.bb_pad-0 {
	padding: 0px;
}
.bb_divider {
	background-color: #eeeeee;
	width: 90%;
	margin: 0 5%;
}
.bb_inblock{
	display: inline-block;
}
.bb_body .bb_white-bg {
	background-color: #ffffff;
}
.bb_body .bb_theme-bg {
	background-color: #ffffff;
}
.bb_body[data-site_mode="dark"] .bb_theme-bg {
	background-color: var(--dark-800);
}

.bb_body .bb_primary-bg {
	background-color:var(--bck-grnd-color-general);
}
.bb_body .bb_primary-bg-light {
	background-color: rgba(var(--primary-rgb), 0.);
}
.bb_body .bb_primary-text {
	color: var(--primary-color);
}
.bb_body .bb_accent-bg {
	background-color: var(--accent-color);
}
.bb_body .bb_accent-bg-light {
	background-color: rgba(var(--accent-rgb), 0.);
}
.bb_body .bb_accent-text {
	color: var(--accent-color);
}

.bb_b0{
	border: none !important;
}
.bb_pl0{
	padding-left: 0 !important;
}
.bb_pr0{
	padding-right: 0 !important;
}
.bb_mb0{
	margin-bottom: 0;
}
/*----------------------------------------
  Highlight
------------------------------------------*/
.bb_highlight {
	padding: 2px 5px;
}

/*----------------------------------------
  Breadcrumbs
------------------------------------------*/
.bb_breadcrumb:before {
	content: "\F142";
	font: normal normal normal 24px/1 "Material Design Icons";
}
.bb_breadcrumb.bb_black-text:before {
	color: rgba(50, 50, 50, 0.);
}

.sticky-bottom {
  position: fixed;
  bottom: 50px;
  width: -webkit-fill-available;
  /* box-shadow: 0 -2px 4px rgba(0, 0, 0, 0.1); */
  display: flex;
  margin: auto;
  justify-content: center;
  padding: 5px 0;
}

.container {
    display: flex;
    flex: 1;
    overflow: hidden; 
}

.group-content,
.group-content-dt,
.group-no-content {
    flex: 2;
    margin-right: 0;
    /* border: 1px solid #ddd; */
    border-radius: 12px;
    background: white;
    /*     padding-left: 5px;
    padding-right: 5px;
 */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    overflow-y: auto;
}
.group-list {
    flex: 1;
    background: white;
    padding: 0;
    overflow-y: auto;
}

.group-list ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    max-width: 100%;
}

.group-list li {
    margin: 0;
    padding: 10px 20px;
    cursor: pointer;
    border: 1px solid #ddd;
    border-left: none;
    transition: color 0.3s, background-color 0.3s;
    max-width: 100%;
}

.group-list li:not(:last-child) {
    border-bottom: none;
}

.group-list li:hover {
    color: var(--txt-color-general);
}

.group-list li.active {
    color: var(--txt-color-general);
    background-color:var(--bck-grnd-color-general);
    border-left: 1px solid #fff;
}

.group {
    display: none;
}

.group:first-child {
    display: block;
}

.reduceWidth{
	margin-left: 1%;
	margin-right: 1%;
}