/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/


.angebote-tabs ul{
	border-color: transparent !important;
}

.hide_{
	display:none !important;
}

.angebote-tabs .tab-pane{
	border-color: transparent !important;
	
}

.same-height-pic{
	min-height:300px;
}

.angebote-tabs ul li a{
background-color:transparent !important;	
}

p strong{
	color: rgb(117, 117, 117) !important;
	
}

.lars-eichler .person-title{
	padding: 0 10px;
}

.logo-section-header{
display: block;
padding-top: 24px !important;
}

.logo-section-header img{
	height:30px;
padding-right: 10px;
	margin: 0px;
	width: auto;
}


h4 small, h2 small, h3 small{
	text-transform: initial;
}

.logo-section-header a{
display:inline !important;	
}

.logo-section-header a img{
filter:none !important;
}

.logo-section-header .bmw-logo img{
	/* filter: brightness(0) invert(1) !important; */
	height: 30px;
		margin: 0px;
	width: auto;
}

h4.ng-binding, .h4, h4{
	text-transform: normal !important;
}

.logo-5{
	width: 13vw !important;	
}

/*
.logo-section-header .mini-logo img{
	filter: brightness(0) invert(1) !important;
}
*/

.fusion-mobile-menu-icons img{
    height:37px !important;
    width:auto;
    padding-right:7px;
}

.logo-section-header a:hover{
	border:none !important;
}

.fusion-mobile-menu-icons ul {
	margin:0px;
	padding:0px;
}

.black-normal-text > h1, .black-normal-text > h2, .black-normal-text, .black-normal-text > h3{
	color: black !important;
	 font-style: normal !important;
	text-transform: none !important;
}

.raeder-tabs li::before{
	display:none !important;
}
.raeder-tabs li h4{
	font-size:1.2rem !important;
}


#leasing-angebot-tab li, 
#leasing-angebot-tab li a{
	border:none;
	background-color:transparent;
}

#leasing-angebot-tab li.active a h4{
	padding-bottom:10px;
	border-bottom:1px solid rgb(0, 159, 228);
}

#leasing-angebot-tab-mobile h4 a{
	color:rgb(33, 41, 52) !important;	
}

#leasing-angebot-tab-mobile h4.active{
	padding-bottom:10px;
	border-bottom:1px solid rgb(0, 159, 228);	
}

@media screen and (max-width:991px){
	
	
}

@media screen and (max-width:666px){
	.logo-section-header {	
	display:none !important;
	}
	
}


.small{
	
}


  .table-item-cta, 
  .table-item-blank, 
  .table-item-text {
  position: relative;
}

table .table-item-cell, 
table.table-item  td {
  border-bottom: 1px solid #333;
  border-top: 1px solid #fff;
  height: 50px;
  padding: 10px;
    padding-left: 10px;
  vertical-align: top;
}
  
  table.table-item {
  max-width: 100%;
  background-color: transparent;
  width: 100%;
}
  
.table-item td {
  table-layout: auto;
  width: 100%;
  word-wrap: normal;
  border-collapse: separate;
  margin-bottom: 25px;
  text-transform:uppercase;
}

.fusion-post-content  .table-item p, .post-content  .table-item p {
  margin: 0 0 0px;
    margin-top: 0px;
    margin-bottom: 0px;
}

.header-pic-text .headlinetext.customtext{
	bottom:50%;
}


a:hover {
  color: #000000;
}

html.avada-header-color-not-opaque .fusion-header-wrapper .fusion-header {
  height: auto !important;
}
.fusion-image-carousel {
  margin-bottom: 0px;
}
.fusion-carousel .fusion-carousel-wrapper {
  box-sizing: content-box;
  padding: 0px 0;
}
.bigslider_home .fusion-carousel .fusion-carousel-item .fusion-image-wrapper, 
.bigslider_home .fusion-imageframe {
  display: block;
  margin-bottom: 0;
  text-align: center;
  max-width: none;
}

.bigslider_home .fusion-carousel .fusion-carousel-wrapper {
  box-sizing: content-box;
  padding: 0px 0px;
}
.bigslider_home .fusion-carousel .fusion-carousel-item img, 
.bigslider_home img{
  vertical-align: middle;
  width: 100%;
  height: auto;
  max-width: none;
}
h1, h2, h3,  h5, h6, .h1, .h2, .h3, .h5, .h6 {
  text-transform: uppercase !important;
}


.h1, .h1 .title-heading-tag {
  font-size: var(--h1_typography-font-size);
  color: var(--h1_typography-color) !important;
  font-family: var(--h1_typography-font-family);
  font-weight: var(--h1_typography-font-weight);
  line-height: var(--h1_typography-line-height);
  letter-spacing: var(--h1_typography-letter-spacing);
  text-transform: var(--h1_typography-text-transform);
  font-style: var(--h1_typography-font-style, normal);
}
.h2, .h2 .title-heading-tag {
  font-size: var(--h2_typography-font-size);
  color: var(--h2_typography-color) !important;
  color: var(--awb-color5) !important;
  font-family: var(--h2_typography-font-family);
  font-weight: var(--h2_typography-font-weight);
  line-height: var(--h2_typography-line-height);
  letter-spacing: var(--h2_typography-letter-spacing);
  text-transform: var(--h2_typography-text-transform);
  font-style: var(--h2_typography-font-style, normal);
  margin-bottom: 20px;
}
.h3, .h3 .title-heading-tag {
  font-size: var(--h3_typography-font-size);
  color: var(--h3_typography-color) !important;
  font-family: var(--h3_typography-font-family);
  font-weight: var(--h3_typography-font-weight);
  line-height: var(--h3_typography-line-height);
  letter-spacing: var(--h3_typography-letter-spacing);
  text-transform: var(--h3_typography-text-transform);
  font-style: var(--h3_typography-font-style, normal);
  margin-bottom: 20px;
}
.h4, .h4 .title-heading-tag {
  font-size: var(--h4_typography-font-size);
  color: var(--h4_typography-color) !important;
  font-family: var(--h4_typography-font-family);
  font-weight: var(--h4_typography-font-weight);
  line-height: var(--h4_typography-line-height);
  letter-spacing: var(--h4_typography-letter-spacing);
  text-transform: var(--h4_typography-text-transform);
  font-style: var(--h4_typography-font-style, normal);
  margin-bottom: 20px;
}
.h5, .h5 .title-heading-tag {
  font-size: var(--h5_typography-font-size);
  color: var(--h5_typography-color) !important;
  font-family: var(--h5_typography-font-family);
  font-weight: var(--h5_typography-font-weight);
  line-height: var(--h5_typography-line-height);
  letter-spacing: var(--h5_typography-letter-spacing);
  text-transform: var(--h5_typography-text-transform);
  font-style: var(--h5_typography-font-style, normal);
  margin-bottom: 20px;
}
.h6, .h6 .title-heading-tag {
  font-size: var(--h6_typography-font-size);
  color: var(--h6_typography-color) !important;
  font-family: var(--h6_typography-font-family);
  font-weight: var(--h6_typography-font-weight);
  line-height: var(--h6_typography-line-height);
  letter-spacing: var(--h6_typography-letter-spacing);
  text-transform: var(--h6_typography-text-transform);
  font-style: var(--h6_typography-font-style, normal);
  margin-bottom: 20px;
}




.avada-page-titlebar-wrapper {
  top: 50px;
  position: relative;
  margin-bottom: 36px;
}
.servicecards img, .cards img {
  width: 100% !important;
  height: auto;
  max-width: none !important;
}

#image-gallery-pixelconcept .servicecards img{
	width: auto !important;
}

.fusion-page-title-bar {
  background-size: cover !important;
}
body .fusion-tb-footer.fusion-footer {
  margin-top: 0px !important;
  top: 0px !important;
}
.footer, .lh_footer {
  color: #fff;
  font-size: 16px;
  line-height: 1.35;
}
.footer a, .lh_footer a {
  color: #fff;
}
.footer a:hover, .lh_footer a:hover {
  color: #ccc !important;
}
ul.checklist ul {
  margin-left: 0px;
  padding: 20px 0px;
}
iframe, video {
  max-width: 100% !important;
}
.fusion-blog-archive {
  padding-bottom: 60px;
}
.fusion-blog-layout-large article, .fusion-blog-layout-large-alternate article, .fusion-blog-layout-medium article {
  margin-bottom: 21px;
}
.modelluebersicht .fusion-accordian .fusion-toggle-icon-right .fusion-toggle-heading {
  margin-right: 20px;
}
h4 span, .h4 span {
  margin-top: 0px !important;
}
.modelluebersicht .fusion-accordian h4 span {
  margin-top: 0px !important;
}
.fusion-header-wrapper, #side-header {
  background-color: rgba(0, 0, 0, .35);
}
.fusion-form-form-wrapper .fusion-form-field .fusion-form-checkbox input {
  opacity: 1;
}
.langenhan-person .person-shortcode-image-wrapper {
  background-color: #ffffff;
  padding: 30px 30px 0px 30px;
}
.langenhan-person .person-desc {
  background-color: #ffffff;
  padding: 20px 10px 30px 10px !important;
}
.langenhan-person .fusion-person .person-shortcode-image-wrapper img {
  vertical-align: top;
  box-shadow: none;
  max-width: 150px !important;
	 min-width: 150px !important;
}


.person-rounded-overflow{
	border-radius:0 !important;
}

.langenhan-person .person-author-wrapper {
  font-size: 18px;
  line-height: 1.35;
}
.langenhan-person .fusion-person .person-desc .person-author .person-name {
  font-size: 18px;
  line-height: 1.35;
}
.langenhan-person .fusion-person .person-desc .person-author .person-title {
  font-size: 16px;
  line-height: 1.35;
  font-weight: normal;
	min-height:45px;
}
.langenhan-person .fusion-person-center .person-content {
  margin-top: 15px;
}
.langenhan-person .fusion-person-center .person-content .fa {
  margin-right: 10px;
}
.fusion-alert.alert-sm {
  clear: both;
  position: relative;
  padding: 10px;
  border-radius: 0;
  text-shadow: none;
  background-color: #03a9f4;
  color: #ffffff;
  border-color: #03a9f4;
  border-width: 0px;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 20px;
  margin-left: 0px;
  display: inline-block;
  width: auto;
}
.onlymobile {
  display: none;
}
.fusion-page-title-captions h1.entry-title {
  font-size: 4vw;
}
table h5 {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}
.fusion-page-title-captions h1.entry-title {
  font-size: 4vw;
}
.fusion-page-title-bar h1 {
  color: rgba(255, 255, 255, 1);
}
.person-col {
  background-color: #ffffff;
  border: 10px solid #f2f2f2;
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}
.checklists ul, ul.checklist {
  margin: 20px 0px;
  padding: 0px 0px;
  list-style: none;
}

.checklists.two ul, 
ul.checklist.two {
  margin-left: 40px !important;
}

.checklists ul li, ul.checklist li {
  padding: 0px 0 0.5em 25px;
  position: relative;
  margin: 0px;
  line-height: 1.5;
  list-style: none;
}
#content ul.checklist li:before, .checklists ul li:before {
  position: absolute;
  content: "\f054";
  left: 0px;
  top: 0px;
  color: #0093e0;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 100%;
}
.single-post .post {
  margin-bottom: 60px;
}


#am-marketplace .pswp__img {
  width: 50vw !important;
  height: auto !important;
}


.csscols {
  width: 100%;
  -moz-column-count: 2;
  -moz-column-gap: 20px;
  -webkit-column-count: 2;
  -webkit-column-gap: 20px;
  column-count: 2;
  column-gap: 20px;
  column-rule-color: rgba(0, 0, 0, 0.0);
  column-rule-width: 0px;
  column-rule-style: solid;
  /* hyphens: auto;*/
  orphans: 3;
  widows: 3;
}
.csscols.one {
  column-count: 1;
}
.csscols.two {
  column-count: 2;
}
.csscols.three {
  column-count: 3;
}
.csscols h1, .csscols h2, .csscols h3, .csscols h4, .csscols h5, .csscols h6, .csscols .h1, .csscols .h2, .csscols .h3, .csscols .h4, .csscols .h5, .csscols .h6, .csscols .h1 *, .csscols .h2 *, .csscols .h3 *, .csscols .h4 *, .csscols .h5 *, .csscols .h6 *, .csscols img {
  column-break-after: column;
}
.csscols h1, .csscols h2, .csscols h3, .csscols h4, .csscols h5, .csscols h6, .csscols .h1, .csscols .h2, .csscols .h3, .csscols .h4, .csscols .h5, .csscols .h6, .csscols .h1 *, .csscols .h2 *, .csscols .h3 *, .csscols .h4 *, .csscols .h5 *, .csscols .h6 * {
  column-span: all;
}
.text-transform-none, .text-transform-none *, 
.no-text-transform, .no-text-transform *{
  text-transform: none !important;
}
body .servicecard.two > .fusion-column-wrapper {
  padding-top: 0px !important;
  padding-bottom: 30px !important;
}
.termine p {
  margin: 0px 0px;
  line-height: 1.35;
}
.termine .btn {
  margin: 15px 0px;
  line-height: 1.2;
}
.termine div[class^="row"], .termine div[class*=" row"] {
  margin-right: 0px;
  margin-left: 0px;
  margin-bottom: 0.0em;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.termine div[class^="col-"], .termine div[class*=" col-"] {
  padding: 3px 0px;
}
.termine .nt_date {
  font-weight: bold;
  padding-right: 25px !important;
  position: relative;
  text-align: right;
}
.termine div[class^="col-"], .termine div[class*=" col-"] {
  padding: 5px 0px;
}
.termine span {
  display: inline-block;
  white-space: pre;
}
.termine .nt_highlight .nt_date:before {
  content: '\f005';
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  float: none;
  margin-left: 0em;
  margin-right: 0.75em;
  color: #0093e0;
  display: inline-block;
  position: absolute;
  top: 10px;
  left: -23px;
  font-size: 90%;
  line-height: 1;
}
.termine div[class^="col-"], .termine div[class*=" col-"] {
  padding: 3px 0px;
}
.home .fusion-image-carousel {
  margin-bottom: 0px;
}
.quicksearch.fusion-form-field.fusion-form-select-field.fusion-form-label-above.fusion-select-wrapper {
  width: auto;
  margin: auto;
}
.pc-quickseach-title {
  font-size: 3vw;
  line-height: 1;
  font-weight: normal;
  color: #666;
  padding: 0px 30px 0px 0px;
  display: inline-block;
  margin: 0px 0px 0px 0px;
  position: relative;
  top: 12px;
}
.pc-quickseach-select {
  background-color: #ffffff;
  min-width: none;
  width: auto;
  padding: 0 2em 0 1em;
  outline: 0;
  transition: all .2s ease;
  margin-right: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.quicksearch .button-large {
  padding: 15px 29px !important;
  line-height: 17px;
  font-size: 16px;
}
.fusion-logo img {
  width: auto;
  max-width: 320px;
}
/* Hide Sections */
.hidden-section .hide {
  display: none;
}
.hidden-section .trigger-hide-section:hover .hide {
  display: block;
}
.hidden-section .hide {
  margin-top: 30px;
}


/* arrows */
select.classic, select.classic:focus {
  background-image:
    linear-gradient(45deg, transparent 50%, black 0%), linear-gradient(135deg, black 0%, transparent 50%);
  background-position:
    calc(100% - 20px) calc(1em + 5px), calc(100% - 15px) calc(1em + 5px), 100% 0;
  background-size:
    5px 5px, 5px 5px, 2.5em 2.5em;
  background-repeat: no-repeat;
}
select.minimal {
  background-image:
    linear-gradient(45deg, transparent 50%, gray 50%), linear-gradient(135deg, gray 50%, transparent 50%), linear-gradient(to right, #ccc, #ccc);
  background-position:
    calc(100% - 20px) calc(1em + 2px), calc(100% - 15px) calc(1em + 2px), calc(100% - 2.5em) 0.5em;
  background-size:
    5px 5px, 5px 5px, 1px 1.5em;
  background-repeat: no-repeat;
}
select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}


.fusion-body .fusion-main-menu .current-menu-ancestor > a {
  border-color: #ffffff;
  color: #ffffff;
  border-top: none !important;
}




body .lh_footer .title-heading-tag {
	font-size: 14px;
}
body .lh_footer .footer_text_small  {
	font-size: 12px;
}









@media (max-width: 1280px) {
  .fusion-main-menu > ul > li {
    padding-right: 10px;
  }
  .fusion-logo {
    max-width: 100%;
    max-width: 200px;
  }
  .fusion-logo img {
    width: auto;
    max-width: 100%;
  }
}

@media (max-width: 1251px) and (min-width:991px){
	.fusion-mobile-menu-icons img {
		height: 32px;
	}
	
	.awb-menu_row .menu-text {
  font-size: 0.7rem;
}
	
} 
@media (max-width: 991px) {
  body .fusion-header-wrapper {
    z-index: 10;
  }
  #main {
    padding-top: 0px;
    padding-bottom: 0px;
  }
  
  .home #main {
    padding-top: 0px;
  }
  a {
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
    -webkit-hyphenate-limit-before: 3;
    -webkit-hyphenate-limit-after: 2;
    -moz-hyphenate-limit-chars: 6 3 2;
    -webkit-hyphenate-limit-chars: 6 3 2;
    -ms-hyphenate-limit-chars: 6 3 2;
    hyphenate-limit-chars: 6 3 2;
  }
  .langenhan-person .person-col {
    width: 50% !important;
  }
  .onlymobile {
    display: block;
  }
  .fusion-secondary-header {
    display: none;
  }
  .fusion-page-title-captions h1.entry-title {
    font-size: 4vw;
  }
}





html .fusion-body .fusion-menu-element-wrapper[data-count="1"]:not(.collapse-enabled) .fusion-menu-element-list > li.menu-item:focus-within > a .fusion-megamenu-icon {
 color: var(--awb-color5) !important;
}
html .fusion-body .fusion-menu-element-wrapper[data-count="1"]:not(.collapse-enabled) .fusion-menu-element-list > li.menu-item:hover > a .fusion-megamenu-icon,
html .fusion-body .fusion-menu-element-wrapper[data-count="1"]:not(.collapse-enabled) .fusion-menu-element-list > li.menu-item.hover > a .fusion-megamenu-icon,
html .fusion-body .fusion-menu-element-wrapper[data-count="1"]:not(.collapse-enabled) .fusion-menu-element-list > li.menu-item:focus > a .fusion-megamenu-icon,
html .fusion-body .fusion-menu-element-wrapper[data-count="1"]:not(.collapse-enabled) .fusion-menu-element-list > li.menu-item:active > a .fusion-megamenu-icon,
html .fusion-body .fusion-menu-element-wrapper[data-count="1"]:not(.collapse-enabled) .fusion-menu-element-list > li.menu-item.current-menu-item > a .fusion-megamenu-icon {
 color: var(--awb-color5) !important;
}
html .fusion-body .fusion-menu-element-wrapper[data-count="1"]:not(.collapse-enabled) .fusion-menu-element-list > li.menu-item.current-menu-ancestor > a .fusion-megamenu-icon {
 color: var(--awb-color5) !important;
}
html .fusion-body .fusion-menu-element-wrapper[data-count="1"]:not(.collapse-enabled) .fusion-menu-element-list > li:not(.awb-flyout-top-level-no-link).menu-item.current-menu-parent > a .fusion-megamenu-icon {
 color: var(--awb-color5) !important;
}
html .fusion-body .fusion-menu-element-wrapper[data-count="1"]:not(.collapse-enabled) .fusion-menu-element-list > li.menu-item.expanded > a .fusion-megamenu-icon {
 color: var(--awb-color5) !important;
}
html .fusion-body .fusion-menu-element-wrapper[data-count="1"] .custom-menu-search-dropdown:hover .fusion-main-menu-icon,
html .fusion-body .fusion-menu-element-wrapper[data-count="1"] .custom-menu-search-overlay:hover .fusion-menu-icon-search.trigger-overlay,
html .fusion-body .fusion-menu-element-wrapper[data-count="1"] .custom-menu-search-overlay:hover ~ .fusion-overlay-search {
 color: var(--awb-color5) !important;
}



.table-item-2 th, .table-item-2 td {
  width: 50%;
}



@media (max-width: 1380px) {
    .fusion-body .fusion-menu-element-wrapper[data-count="1"], .fusion-body .fusion-menu-element-wrapper[data-count="1"] .fusion-menu-element-list .menu-item > a {
      font-size: 13px !important;
    }
}


@media (max-width: 600px) {
    
    .fusion-menu-element-wrapper > .avada-menu-mobile-menu-trigger {
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  font-size: 0.85em;
}
	
	.mobile-logo-mini {
  height: 20px !important;
  width: auto !important;
}
	.logo-5{
		width: 43vw !important;
	}

html .fusion-body .fusion-flex-container.fusion-builder-row-2 {
    top:0px !important;
    position:relative !important;
    /* background-color:#000000 !important; */
}
    
    .logo-marken .m-100 span.fusion-imageframe{
      max-width: 100% !important;
        
    }
    .logo-marken .m-100 img{
      width: 60% !important;
    }
	
	.logo-marken .mm-100 img{
      width: 100% !important;
    }
	
	.logo-marken .mm-100:last-child{
		width:100% !important;
	}
    
   body .has-fusion-mobile-logo {
        max-width:50vw !important;
        margin-top:0px;
    }
	
	
    
}

.no-transform h1, .no-transform h2, .no-transform h3, .no-transform h4, h4{
		text-transform: none !important;
	}
	
	.vehicle-offers .car-single{
		min-height:635px;
		position:relative;
	}

.vehicle-offers .car-read-more{
position:absolute;	
	bottom:15px;
	left:15px;
}


 .mobilapp-appointment-icon {
            position: fixed;
            bottom: 50px;
            right: 50px;
            display: flex;
            align-items: center;
            cursor: pointer;
			width:210px;
        }

        .button-text {
            font-size: 16px;
            font-weight: bold;
            padding: 10px 40px 10px 55px;
            background: #fff;
            border-radius: 25px;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
			width:170px;
			color: rgb(28, 104, 209);
			
        }

        .rolling-wheel {
            width: 70px;
            height: 70px;
            margin-left: -195px;
            transition: all 0.3s ease;
        }

        /* Animation wenn Maus auf den Button geht */
        .mobilapp-appointment-icon:hover .rolling-wheel {
            animation: roll-forward 1.2s ease-in-out forwards;
        }

        /* Rückwärtsanimation, wenn Maus den Button verlässt */
        .mobilapp-appointment-icon:not(:hover) .rolling-wheel {
            animation: roll-backward 1s ease-in-out forwards;
        }
      
		
		/* Keyframe Animation für Vorwärtsbewegung */
        @keyframes roll-forward {
            0% {
                transform: translateX(0) rotate(0deg);
            }
            100% {
                transform: translateX(150px) rotate(360deg);
            }
        }

        /* Keyframe Animation für Rückwärtsbewegung */
        @keyframes roll-backward {
            0% {
                transform: translateX(150px) rotate(360deg);
            }
            100% {
                transform: translateX(0) rotate(0deg);
            }
        }
		
		

        .mobilapp-appointment-icon:hover {
            animation: pulse-grow 1s ease-in-out 0.8s forwards;
        }

        @keyframes pulse-grow {
            0% {
                transform: scale(1);
            }
            50% {
                transform: scale(1.2);
            }
            100% {
                transform: scale(1);
            }
        }

        .appointment-overlay {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.7);
            justify-content: center;
            align-items: center;
        }

        .overlay-content {
            background: #fff;
            padding: 40px;
            border-radius: 10px;
            text-align: center;
			position:relative;
        }

        .btn {
            display: block;
            margin: 10px 0;
            padding: 15px;
            background: #004080;
            color: #fff;
            text-decoration: none;
            border-radius: 5px;
        }

        .close-btn {
            font-size: 30px;
            cursor: pointer;
			color:black;
			position:absolute;
			top:-10px;
			right:0;
        }
		
		
		#standortDropdown .dropdown-options, #standortAuswahlMobil .dropdown-options{
		display: none;
	border:2px solid white;	
  color: white;
  padding:9px 15px;
  margin-bottom:15px;
	}
	
	#standortDropdown .dropdown-options:hover,#standortDropdown .selected-option:hover,
	#standortAuswahlMobil .dropdown-options:hover,#standortAuswahlMobil .selected-option:hover
	{
		cursor:pointer;
	}
	
	#standortDropdown .dropdown-option,
	#standortAuswahlMobil .dropdown-option
	{
		margin-top:10px;
		  display: flex;
            align-items: center;
			border-top:1px solid white;
			padding-top:10px;		
	}
	
	#standortAuswahlMobil .dropdown-option
	{
		  display: inline-block;
		  width:100%;
	}
	#standortAuswahlMobil .dropdown-option img{
		height:30px !important;
		width:auto !important;
	}
	#standortAuswahlMobil .dropdown-option div{
		display:inline-block;
	}
	
	#standortDropdown .dropdown-option span,
	#standortAuswahlMobil .dropdown-option span
	{
		display:inline-block;
		min-width:110px;
	}
	
	#standortAuswahlMobil .dropdown-option span
	{
		display:block;
		min-width:150px;
	}
	
	#standortAuswahlMobil .dropdown-option span{
		text-align:center !important;
	}
	
		#standortDropdown .dropdown-option:first-child,
		#standortAuswahlMobil .dropdown-option:first-child
		{
			border-top:1px solid transparent;
			margin-top:0;
		}
	
	.selected-option::after {
            content: '\25BC'; /* Unicode für Pfeil nach unten */
            margin-left: 10px;
            transition: transform 0.3s ease;
			float:right;
        }
        .selected-option.active::after {
            transform: rotate(180deg); /* Pfeil nach oben drehen */
        }
	
	#standortDropdown .dropdown-option img,
	#standortAuswahlMobil .dropdown-option img
	{
            margin-left: 10px;
        }
	#standortDropdown .selected-option,
	#standortAuswahlMobil .selected-option
	{
		background-color: white;
		padding:9px 15px;
		color: rgb(142, 142, 142);
	}
	
	.right-col img {
  max-width: 100% !important;
}

@media (max-width: 800px) {
    
    .formularauswahl_menu {

    }
	
	.rolling-wheel{
		width: auto !important;
	}
	.mobilapp-appointment-icon {
 
	right: 0px !important;
	}
    
    .formularauswahl_menu .fusion-menu-element-wrapper:not(.expanded):not(.mobile-mode-always-expanded) .fusion-menu-element-list ul:not(.fusion-megamenu) {
      width: max-content;
      width: 100%;
    }
    
   .fusion-body .formularauswahl_menu  .fusion-menu-element-wrapper[data-count="0"] .fusion-menu-element-list .menu-item > a, 
   .fusion-body .formularauswahl_menu  .fusion-menu-element-wrapper[data-count="0"]:not(.collapse-enabled) .fusion-menu-element-list ul:not(.fusion-megamenu) a {
      font-size: 1em;
    }
    
    .fusion-body .formularauswahl_menu .fusion-menu-element-wrapper[data-count="0"] .fusion-menu-element-list ul:not(.fusion-megamenu) > li:not(.fusion-menu-item-button) > a, .fusion-body .fusion-menu-element-wrapper[data-count="0"] .sub-menu .fusion-menu-cart a, .fusion-body .fusion-menu-element-wrapper[data-count="0"] .custom-menu-search-dropdown .fusion-menu-searchform-dropdown .fusion-search-form-content {
      padding-top: 10px;
      padding-right: 15px;
      padding-bottom: 10px;
      padding-left: 15px;
    }
    
    .quicksearch.fusion-form-field.fusion-form-select-field.fusion-form-label-above.fusion-select-wrapper {
      width: 100%;
      margin: auto;
    }
    
    .pc-quickseach-title {
      font-size: 30px;
      padding: 10px 0px 30px 0px;
      margin: 0px 0px 0px 0px;
      top: 0;
    }
    
    .pc-quickseach-select {
      min-width: none;
      display: block;
      margin: 0px 0px 20px 0px;
      width: 100%;
    }
    
    #carsearchlink {
      display: block;
      text-align: center;
    }
    
    .quicksearch .button-large {
      display: block;
      float: none;
      margin: auto;
      width: 100%;
    }
  
  .fusion-text.fusion-text-split-columns {
    -webkit-column-count: 1 !important;
    -webkit-column-gap: 2em !important;
    -webkit-column-width: auto !important;
    -moz-column-count: 1 !important;
    -moz-column-gap: 0em !important;
    -moz-column-width: auto !important;
    column-count: 1 !important;
    column-gap: 0em !important;
    column-width: auto !important;
  }
  

  
  body, body .fusion-accordian.accordian .toggle-content, body .fusion-accordian.accordian .toggle-content p, .fusion-testimonials.clean blockquote q, .fusion-testimonials.clean .author {
    font-size: 16px !important;
    line-height: 1.5 !important;
    font-family: Arial, Helvetica, sans-serif;
    -webkit-text-size-adjust: 100%;
  }
  h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
    -webkit-hyphenate-limit-before: 3;
    -webkit-hyphenate-limit-after: 2;
    -moz-hyphenate-limit-chars: 6 3 2;
    -webkit-hyphenate-limit-chars: 6 3 2;
    -ms-hyphenate-limit-chars: 6 3 2;
    hyphenate-limit-chars: 6 3 2;
  }
  .floating-menu {
    visibility: hidden !important;
    display: none;
  }
  .fusion-logo {
    max-width: 65%;
  }
  .fusion-logo img {
    width: auto;
    max-width: 100%;
  }
  .avada-page-titlebar-wrapper {
    top: 0px;
    position: relative;
    margin-bottom: 0px;
  }
  #main {
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 0px;
    padding-bottom: 0px;
  }
  .home #main {
    padding-top: 0px;
    padding-bottom: 0px;
  }
  h1, .h1, .h1 *, .post-content h1 {
    font-size: 26px !important;
  }
  h2, .h2, .h2 *, .post-content h2, .h2 .title-heading-tag, #main .fusion-portfolio h2, #main .post h2, #wrapper #main .post h2, #wrapper #main .post-content .fusion-title h2, #wrapper #main .post-content .title h2, #wrapper .fusion-title h2, #wrapper .post-content h2, #wrapper .title h2, .fusion-modal h2, .fusion-tb-footer h2, .fusion-tb-page-title-bar h2, .fusion-widget-area h2, h2.entry-title {
    font-size: 20px !important;
    line-height: 1.25 !important;
    margin-bottom: 10px !important;
  }
  h3, .h3, .h3 *, .post-content h3, .fusion-author .fusion-author-title, .fusion-header-tagline, .fusion-modal .modal-title, .fusion-modal h3, .fusion-pricing-table .pricing-row, .fusion-pricing-table .title-row, .fusion-tb-footer h3, .fusion-tb-page-title-bar h3, .fusion-title h3, .fusion-widget-area h3, .main-flex .slide-content h3, .post-content h3, .project-content h3, .sidebar .widget h3 {
    font-size: 20px !important;
    line-height: 1.25 !important;
    margin-bottom: 10px !important;
  }
  h4, .h4, .h4 *, .post-content h4 {
    font-size: 20px;
  }
  h5 .h5, .h5 *, .post-content h5 {
    font-size: 18px;
  }
  h6 .h6, .h6 *, .post-content h6 {
    font-size: 18px;
  }
  #wrapper .cta_termin_vereinbaren_global .title h2.fusion-responsive-typography-calculated, #wrapper #main .post-content .cta_termin_vereinbaren_global .fusion-title h2, #wrapper #main .post-content .cta_termin_vereinbaren_global .title h2, #wrapper .cta_termin_vereinbaren_global .fusion-title h2, #wrapper .post-content .cta_termin_vereinbaren_global h2, #wrapper .cta_termin_vereinbaren_global .title h2 {
    font-size: 28px !important;
  }
  .footer *, .lh_footer * {
    text-align: center !important;
  }
  .fusion-accordian .accordian .panel-title a, body .fusion-accordian .panel-title a {
    font-size: 16px !important;
  }
  .fusion-body .fusion-form .fusion-flex-container {
    padding-right: 0px !important;
    padding-left: 0px !important;
  }
  .servicecards.home img {
    width: 100% !important;
    max-width: none !important;
  }
  img {
    width: 100% !important;
    max-width: none !important;
  }
  .img-normal img, img.img-normal, .img-no-scale img, img.img-no-scale {
    width: auto !important;
    max-width: 100% !important;
  }
  .fusion-imageframe, .servicecards.home .fusion-imageframe {
    display: block;
    overflow: hidden;
    max-width: none;
  }
  .button-default, .button.default, .fusion-button, .fusion-button-default, input.button-default {
    display: inline-table;
  }
  .cta_termin_vereinbaren_global, .cta_termin_vereinbaren_global * {
    background-image: none !important;
  }
  .ankauf_container_global {
    background-image: none;
    background-image: url("https://www.langenhan-gruppe.de/wp-content/uploads/Autokauf-Fahrzeug-in-Zahlung-geben-bei-der-Langenhan-GmbH-800x167.jpg");
  }
  .mobile_col_reverse .fusion-builder-row, .mobile_cols_reverse .fusion-builder-row, .mobile-col-reverse .fusion-builder-row, .mobile-cols-reverse .fusion-builder-row {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .bg-grey table td, .servicecards table td, .leasing table td, .leasingangebot table td, .preistabelle table td, .finanzierung table td, .finanzierungsangebot table td, .mobile-table table td, .mobile_table table td {
    display: block;
  }
}


@media (max-width: 1024px) and (orientation: landscape) {

.footer-logo-section img{
	max-height:44px !important;
	width:auto !important;
	display:block;
	margin-bottom:10px !important;
}

.footer-logo-section .langenhan-logo{
	max-height:24px !important;
	height:24px !important;
}

.standortauswahl-section{
	width: 70% !important;
}

}

#filter-container {
    width: 100%;
    position: relative;
}

#filter-bar {
    display: flex;
    justify-content: space-around;
    background: white;
    padding: 10px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    transition: all 0.3s ease-in-out;
	width:100%;
	left:0;
	top:120px;
}

#filter-bar.sticky .filter-btn{
	font-size:12px;
}


#filter-bar.sticky .serien .filter-btn {
  flex: 1 1 calc(100% / 8 - 10px);
}

.filter-group {
    display: flex;
    flex-direction: column; /* Überschrift oben, Buttons darunter */
    align-items: center;
    flex: 1; /* Alle Bereiche gleich breit */
   gap: 15px; /* Mehr Abstand zwischen den Elementen */
    margin: 15px; /* Abstand zwischen den Gruppen */
    min-width: 250px; /* Breitere Gruppen für bessere Lesbarkeit */
}

.filter-title {
    font-weight: bold;
    margin-bottom: 5px;
    font-size: 1.1rem;
    text-align: center;
}

.filter-btn-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; /* Zentrierte Anordnung der Buttons */
    gap: 5px; /* Abstand zwischen den Buttons */
}

.filter-btn {
    padding: 8px 12px;
    margin: 3px;
    border: 1px solid #ccc;
    background: white;
    cursor: pointer;
    border-radius: 5px;
    transition: background 0.3s;
	flex: 1 1 calc(100% / 3 - 10px); /* Gleiche Breite für alle Buttons, 3 pro Zeile */
    max-width: 150px; /* Maximale Breite für größere Bildschirme */
    box-sizing: border-box;
	font-size:18px;
}

.serien .filter-btn{
	flex: 1 1 calc(100% / 6 - 10px); /* Gleiche Breite für alle Buttons, 3 pro Zeile */
}

.filter-btn:hover, .filter-btn.active {
    background: #007BFF;
    color: white;
    border-color: #007BFF;
}

.sticky {
    position: fixed;
    top: 0;
    width: 100%;
    background: white;
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.2);
}

.fahrzeug-kachel {
    display: block;
}

.small-label label {
    font-size: 0.85rem !important;
}

.termine-table tr td:first-child{
	min-width:110px;
}

.laufband-container {
  position: relative;
  width: 100%;
  height: 40px;
  overflow: hidden;
  background-color: #fff5f5;
  border-top: 2px solid red;
  border-bottom: 2px solid red;
  display: flex;
  align-items: center;
  margin-bottom:30px;
}


.laufband-text {
  position: absolute;
  white-space: nowrap;
  color: red;
  font-weight: bold;
  font-size: 1.2rem;
}


@media (max-width: 768px) {
  .laufband-container {
    justify-content: center;
	height: auto;
	text-align:center;
  }

  .laufband-text {
    position: static;
    white-space: normal;
  }
  
  .guest-checkin {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  width: 100%;
}

.guest-checkin table {
  width: 100%;
  min-width: 900px; /* oder größer je nach Spaltenanzahl */
  border-collapse: collapse;
}
  .guest-checkin button{
	  margin-top:5px;
	  margin-left:0;
  }
  
  #standortDropdown img{
	 width:auto !important; 
  }
  
}

@media (max-width: 500px) {
.mobilapp-appointment-icon{
		bottom: 15px;
	width: 75px;
	}
	
	.mobilapp-appointment-icon .button-text{
		width: 195px;
		padding: 10px 20px 10px 80px;
	}
	
	.to-top-right #toTop {
  right: 15px !important;
  bottom: 90px !important;
}
	
}






#mobile-filter-bar { display: none; }

@media (max-width: 768px) {
    #filter-bar { display: none; }

    #mobile-filter-bar {
        display: block;
        background-color: white;
    }

    #mobile-filter-bar .accordion-toggle {
        width: 100%;
        padding: 12px;
        background: white;
        border: none;
        font-size: 16px;
        font-weight: bold;
        text-align: left;
        display: flex;
        justify-content: space-between;
        align-items: center;
        cursor: pointer;
    }

    #mobile-filter-bar .accordion-label {
        flex-grow: 1;
    }

    #mobile-filter-bar .accordion-icon {
        font-size: 16px;
        transition: transform 0.2s ease;
    }

    #mobile-filter-bar .accordion-toggle.active .accordion-icon {
        transform: rotate(180deg);
    }

    #mobile-filter-bar .accordion-toggle.active {
        background: #ddd;
    }

    #mobile-filter-bar .accordion-content {
        display: none;
        background: white;
        padding: 10px;
        flex-wrap: wrap;
        gap: 10px;
    }

    #mobile-filter-bar .accordion-content .filter-btn {
        flex: 1 1 45%;
        padding: 10px;
        background: white;
        border: 1px solid #ccc;
        border-radius: 5px;
        font-size: 14px;
        cursor: pointer;
    }

    #mobile-filter-bar .filter-btn.active {
        background-color: #007BFF;
        color: white;
        border-color: #007BFF;
    }

    #mobile-filter-bar .filter-btn {
        width: 100%;
        padding: 8px;
        margin-top: 10px;
        background-color: white;
        color: black;
        font-weight: 400;
        border: 1px solid black;
        border-radius: 5px;
        cursor: pointer;
		max-width:100%;
    }
	
	.fahrzeug-kachel{
		margin-bottom:10px !important;
	}
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

table.car-details, table.car-price-details{
	width:100%;
}

table.car-details tr{
	padding:10px 5px;
	width:100%;
	border-bottom:1px solid gray;
}

table.car-details tr td{
	width:50%;
	font-size:14px;
	color: #8e8e8e;
	line-height: 1.25;
	 padding: 10px 0 !important;
}

table.car-details tr td:last-child(){
	
}

.vehicle-offers .car-kw {
  margin: 0 !important;
  font-size:14px !important;
}

table.car-price-details tr td{
	width:50%;
	
}


table.car-price-details .car-rate small{
	display:inline-block;
	line-height:1.25;
	color: #8e8e8e;
}
table.car-price-details .car-rate small span{
	color:rgb(33, 41, 52);
	font-weight:bold;
}

#fahrzeugtyp-auswahl-logos{
	margin-top:15px;
}


.leasing-info-toggle {
    background: #ccc;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: inline-block;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    cursor: pointer;
    line-height: 20px;
    color: #000;
}

.vehicle-leasing-details {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #f9f9f9;
    border: 1px solid #aaa;
    box-shadow: 0 0 15px rgba(0,0,0,0.3);
    padding: 20px;
    z-index: 9999;
    max-width: 320px;
    width: 90%;
    font-size: 14px;
    line-height: 1.4;
    border-radius: 6px;
}

.vehicle-leasing-details ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.vehicle-leasing-details li {
    margin-bottom: 8px;
    border-bottom: 1px solid #ddd;
    padding-bottom: 5px;
}

.vehicle-leasing-details li:last-child {
    border-bottom: none;
}

.hidden {
    display: none;
}

.close-leasing-overlay {
    text-align: right;
    font-size: 18px;
    font-weight: bold;
    margin-top: 10px;
    cursor: pointer;
    color: #555;
}

.car-wltp {
    font-size: 12px;
    color: #555;
    margin: 5px 0 10px 0;
    line-height: 1.2;
	min-height:35px;
}


/* === Mobile-Fix für Termin-Button (nur Icon) === */
@media (max-width: 500px){

  /* Runder FAB-Button */
  .mobilapp-appointment-icon{
    position: fixed !important;
    right: 14px !important;
    bottom: calc(14px + env(safe-area-inset-bottom,0px)) !important;
    width: 56px !important;
    height: 56px !important;
    background: #111 !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.18) !important;
    z-index: 10050 !important;
    cursor: pointer !important;
  }

  /* Rad zentriert im Button, keine Roll-Animation */
  .mobilapp-appointment-icon .rolling-wheel{
    width: 32px !important;
    height: 32px !important;
    margin: 0 !important;
    position: static !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
    pointer-events: none !important; /* Klick immer Parent */
  }

  /* Text visuell ausblenden (nur für Screenreader) */
  .mobilapp-appointment-icon .button-text{
    position: absolute !important;
    width: 1px !important; height: 1px !important;
    padding: 0 !important; margin: -1px !important;
    overflow: hidden !important; clip: rect(0 0 0 0) !important;
    white-space: nowrap !important; border: 0 !important;
  }

  /* Overlay immer über allem */
  .appointment-overlay{
    z-index: 10060 !important;
  }

  /* "Nach oben"-Button nicht überdecken */
  .to-top-right #toTop{
    right: 14px !important;
    bottom: calc(14px + env(safe-area-inset-bottom,0px) + 64px) !important;
  }
}

/* Sicherheitsnetz: Touch-Geräte -> Roll-Animation immer aus */
@media (hover: none){
  .mobilapp-appointment-icon,
  .mobilapp-appointment-icon .rolling-wheel,
  .mobilapp-appointment-icon:hover,
  .mobilapp-appointment-icon:hover .rolling-wheel,
  .mobilapp-appointment-icon:not(:hover) .rolling-wheel{
    animation: none !important;
    transform: none !important;
  }
}

.mobilapp-appointment-icon .rolling-wheel { pointer-events: none; }

/* --- 1) Overlay immer ganz oben (auch >500px Breite) --- */
.appointment-overlay{
  z-index: 99999 !important; /* statt nur im 500px-Block */
}

/* Button darüber (aber unter Overlay, falls überlappend) */
.mobilapp-appointment-icon{
  z-index: 99998 !important;
  touch-action: manipulation; /* schnellere Taps */
}

/* --- 2) Touch-Geräte: alle Roll-/Pulse-Animationen aus, keine Transforms --- */
@media (hover: none){
  .mobilapp-appointment-icon,
  .mobilapp-appointment-icon .rolling-wheel,
  .mobilapp-appointment-icon:hover,
  .mobilapp-appointment-icon:hover .rolling-wheel,
  .mobilapp-appointment-icon:not(:hover) .rolling-wheel{
    animation: none !important;
    transform: none !important;
  }

  /* Bild frisst keine Klicks, Parent bekommt Tap */
  .mobilapp-appointment-icon .rolling-wheel{
    pointer-events: none !important;
    margin-left: 0 !important;  /* kein „Ausfahren“ */
  }
}

/* --- 3) Einheitliches mobiles Layout (bis 800px), nicht nur bis 500px --- */
@media (max-width: 500px){
  .mobilapp-appointment-icon{
    position: fixed !important;
    right: 14px !important;
    bottom: calc(14px + env(safe-area-inset-bottom,0px)) !important;
    width: 56px !important;
    height: 56px !important;
    background: #111 !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.18) !important;
    cursor: pointer !important;
  }
  .mobilapp-appointment-icon .rolling-wheel{
    width: 32px !important;
    height: 32px !important;
    margin: 0 !important;
  }
  .mobilapp-appointment-icon .button-text{
    position: absolute !important;
    width: 1px !important; height: 1px !important;
    padding: 0 !important; margin: -1px !important;
    overflow: hidden !important; clip: rect(0 0 0 0) !important;
    white-space: nowrap !important; border: 0 !important;
  }
  .to-top-right #toTop{
    right: 14px !important;
    bottom: calc(14px + env(safe-area-inset-bottom,0px) + 64px) !important;
  }
  
  #am-marketplace .modal{
	  top: 120px !important;
	  height:85% !important;
  }
	
	
  
}

#am-marketplace .search-tab-body{
		top:90px !important;
	}

/* --- 4) Sicherheitsnetz: nie vom Bild blockiert --- */
.mobilapp-appointment-icon .rolling-wheel{ pointer-events: none !important; }



.vehicle-pagination ul{
	list-style:none;
}


.vehicle-pagination ul li{
	display:inline-block;
	margin-right:15px;
}


#am-marketplace .modal,.pxc-modal .pxc-modal-content, .pxc-modal-content {
top: 140px !important;
height: 85% !important;
}

@media screen and (max-width:771px){
	.fusion-tb-header .fusion-sticky-transition, .fusion-sticky-container:not(.fusion-sticky-spacer) {
  background-color: rgb(33, 33, 33) !important;
}
	
	.awb-menu.collapse-enabled .awb-menu__open-nav-submenu_mobile::before {
  color: white !important;
}
	
	#menu-startseite-main-menu{
	min-height:600px;	
	}
	
}

.fusion-footer{
	position:relative;
	z-index:9;
}

@media (max-width: 768px){
  body:not(.logos-moved) #fahrzeugtyp-auswahl-logos{
    display:none !important;
  }
	.page-id-16109 .mobilapp-appointment-icon{
		display:none !important;
	}
	
	
}
body:not(.side-header) #wrapper, #wrapper{
	z-index: 9 !important;
}


/* =========================================================
   BEWERBUNGS-MODAL – FIX FÜR KLEINE BILDSCHIRMHÖHEN
   ========================================================= */

:root {
    /* Wird durch JavaScript automatisch aktualisiert */
    --jobs-header-height: 103px;
}

.jobs-modal {
    position: fixed !important;
    inset: 0 !important;

    /*
     * Modal liegt sicher vor Navigation, Sticky-Elementen
     * und sonstigen Overlays.
     */
    z-index: 2147483000 !important;

    box-sizing: border-box !important;

    /*
     * Der dunkle Hintergrund liegt über der Navigation,
     * der weiße Dialog beginnt aber erst darunter.
     */
    padding:
        calc(var(--jobs-header-height) + 16px)
        16px
        24px !important;

    overflow: hidden !important;
    overscroll-behavior: contain;

    background: rgba(0, 0, 0, 0.68) !important;
}

/*
 * Die Tabellen-Zentrierung des Plugins entfernen.
 * Diese sorgt bei geringer Höhe dafür, dass der Dialog
 * nach oben aus dem sichtbaren Bereich geschoben wird.
 */
.jobs-modal .jobs-modal-table,
.jobs-modal .jobs-modal-table-cell {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
}

.jobs-modal .jobs-modal-table-cell {
    vertical-align: top !important;
}

/*
 * Dialog bleibt vollständig unterhalb der Navigation.
 * Ist er höher als der Bildschirm, scrollt nur der Dialog.
 */
.jobs-modal .jobs-modal-content {
    position: relative !important;

    width: 100% !important;
    max-width: 680px !important;

    max-height: calc(
        100dvh - var(--jobs-header-height) - 40px
    ) !important;

    margin: 0 auto !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;

    box-sizing: border-box !important;
}

/*
 * Schließen-Button bleibt immer sichtbar.
 */
.jobs-modal .modal-close {
    position: sticky !important;
    top: 0 !important;
    right: 0 !important;
    z-index: 20 !important;

    display: block !important;
    margin-left: auto !important;
}

/*
 * Während das Modal geöffnet ist, darf die Seite
 * im Hintergrund nicht scrollen.
 */
html.jobs-modal-is-open,
body.jobs-modal-is-open {
    overflow: hidden !important;
}

/* Etwas kleinere Abstände auf Mobilgeräten */
@media (max-width: 767px) {
    .jobs-modal {
        padding-right: 8px !important;
        padding-bottom: 12px !important;
        padding-left: 8px !important;
    }

    .jobs-modal .jobs-modal-content {
        max-height: calc(
            100dvh - var(--jobs-header-height) - 24px
        ) !important;
    }
}

/*
 * Fallback für Browser ohne Unterstützung von dvh.
 */
@supports not (height: 100dvh) {
    .jobs-modal .jobs-modal-content {
        max-height: calc(
            100vh - var(--jobs-header-height) - 40px
        ) !important;
    }
}

.avada-clean-table {
    width: 100%;
}

.avada-clean-table table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #dfe3e8;
    background: #fff;
}

.avada-clean-table th,
.avada-clean-table td {
    padding: 14px 18px;
    text-align: left;
    vertical-align: middle;
    border: 1px solid #dfe3e8;
}

.avada-clean-table thead th {
    background: #f2f3f5;
    font-weight: 600;
    color: #222;
}

.avada-clean-table tbody th {
    font-weight: 600;
    background: #f8f9fa;
}

.avada-clean-table tbody tr:nth-child(even) td {
    background: #fafafa;
}

.avada-clean-table tbody tr:hover td,
.avada-clean-table tbody tr:hover th {
    background: #f3f6fa;
}

@media (max-width: 800px) {
    .avada-clean-table {
        overflow-x: auto;
    }

    .avada-clean-table table {
        min-width: 650px;
    }

    .avada-clean-table th,
    .avada-clean-table td {
        padding: 11px 12px;
    }
}
.langenhan-toggle-list .fusion-toggle-icon-wrapper,
.langenhan-toggle-list .fusion-toggle-icon-wrapper .fa-fusion-box {
    background: #eaf1fb !important;
    background-color: #eaf1fb !important;
    color: #1c69d4 !important;
}
.langenhan-toggle-list .fusion-toggle-icon-wrapper,
.langenhan-toggle-list .fusion-toggle-icon-wrapper .fa-fusion-box {
    background-color: #eaf1fb !important;
    color: #1c69d4 !important;
}

/* Hover */
.langenhan-toggle-list .panel-title a:hover .fusion-toggle-icon-wrapper,
.langenhan-toggle-list .panel-title a:hover .fusion-toggle-icon-wrapper .fa-fusion-box,
.langenhan-toggle-list .panel-title a:focus .fusion-toggle-icon-wrapper,
.langenhan-toggle-list .panel-title a:focus .fusion-toggle-icon-wrapper .fa-fusion-box {
    background-color: #eaf1fb !important;
    color: #1c69d4 !important;
}

/* Aktiv / geöffnet */
.langenhan-toggle-list .panel-title a.active .fusion-toggle-icon-wrapper,
.langenhan-toggle-list .panel-title a.active .fusion-toggle-icon-wrapper .fa-fusion-box,
.langenhan-toggle-list .panel-title a[aria-expanded="true"] .fusion-toggle-icon-wrapper,
.langenhan-toggle-list .panel-title a[aria-expanded="true"] .fusion-toggle-icon-wrapper .fa-fusion-box {
    background-color: #eaf1fb !important;
    color: #1c69d4 !important;
}

/* Avada-Variablen ebenfalls festsetzen */
.langenhan-toggle-list {
    --awb-icon-box-color: #eaf1fb !important;
    --awb-toggle-hover-accent-color: #1c69d4 !important;
}

h2,h3,h4,h1{
	line-height: 1.3 !important;
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 800px) {

    /*
     * AVADA COLUMNS
     * Auf Smartphones immer untereinander.
     * min-width: 0 ist besonders wichtig, damit eine
     * breite Tabelle die Column nicht aufzieht.
     */
    .fusion-builder-row {
        flex-wrap: wrap !important;
        min-width: 0;
    }

    .fusion-builder-row > .fusion-layout-column {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        flex: 0 0 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .fusion-layout-column,
    .fusion-column-wrapper {
        min-width: 0 !important;
        max-width: 100% !important;
    }


    /*
     * NUR Tabellen mit der bereits vergebenen
     * Klasse avada-clean-table
     */
    .avada-clean-table {
        display: block;
        width: 100%;
        max-width: 100%;
        min-width: 0;

        overflow-x: auto;
        overflow-y: hidden;

        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;

        padding-bottom: 5px;
    }


    /*
     * Tabelle behält eine sinnvolle Mindestbreite.
     * Dadurch werden Spalten nicht unlesbar
     * zusammengequetscht.
     */
    .avada-clean-table table {
        width: 100%;
        min-width: 650px;
        max-width: none;
        table-layout: auto;
        margin-bottom: 0;
    }


    /*
     * Etwas kompakter auf Smartphones
     */
    .avada-clean-table th,
    .avada-clean-table td {
        padding: 11px 12px;
        white-space: normal;
        word-break: normal;
        overflow-wrap: normal;
    }


    /*
     * Erste Spalte stabil halten
     */
    .avada-clean-table th:first-child,
    .avada-clean-table td:first-child {
        min-width: 175px;
    }


    /*
     * Weitere Spalten nicht zu schmal werden lassen
     */
    .avada-clean-table th:not(:first-child),
    .avada-clean-table td:not(:first-child) {
        min-width: 145px;
    }
}
/* Appointment control: stable wheel size, one-line label and viewport layer. */
body > .mobilapp-appointment-icon {
 right:20px !important; bottom:35px; width:220px !important; height:70px !important;
 display:flex !important; align-items:center !important; background:transparent !important;
 border-radius:0 !important; box-shadow:none !important; z-index:2147483000 !important;
 animation:none !important; transform:none !important;
}
body > .mobilapp-appointment-icon .button-text {
 position:static !important; width:220px !important; height:auto !important;
 box-sizing:border-box; padding:12px 16px 12px 72px !important; margin:0 !important;
 white-space:nowrap !important; overflow:visible !important; clip:auto !important;
 font-size:16px; line-height:24px; border:0 !important;
}
body > .mobilapp-appointment-icon picture {
 position:absolute; top:0; left:0; display:block; width:70px; height:70px; flex:none;
 pointer-events:none;
}
body > .mobilapp-appointment-icon .rolling-wheel {
 position:absolute; top:0; left:0; width:70px !important; min-width:70px; max-width:none !important;
 height:70px !important; margin:0 !important; display:block; object-fit:contain;
 animation:none !important; transform:translateX(0) rotate(0deg) !important;
 transition:transform 1.1s ease-in-out !important; pointer-events:none;
}
body > .mobilapp-appointment-icon:hover .rolling-wheel {
 transform:translateX(150px) rotate(360deg) !important;
}
body > .appointment-overlay { z-index:2147483001 !important; }
@media(max-width:500px) {
 body > .mobilapp-appointment-icon { right:12px !important; bottom:calc(14px + env(safe-area-inset-bottom,0px)) !important; width:200px !important; height:56px !important; }
 body > .mobilapp-appointment-icon .button-text { width:200px !important; padding:10px 14px 10px 62px !important; font-size:15px; }
 body > .mobilapp-appointment-icon picture { width:56px; height:56px; }
 body > .mobilapp-appointment-icon .rolling-wheel { width:56px !important; min-width:56px; height:56px !important; }
 body > .mobilapp-appointment-icon:hover .rolling-wheel { transform:translateX(144px) rotate(360deg) !important; }
}
@media(hover:none), (prefers-reduced-motion:reduce) {
 body > .mobilapp-appointment-icon .rolling-wheel,
 body > .mobilapp-appointment-icon:hover .rolling-wheel { transform:none !important; transition:none !important; }
}

/* Compact appointment label with a separate, short wheel travel. */
body > .mobilapp-appointment-icon { width:190px !important; }
body > .mobilapp-appointment-icon .button-text {
 width:190px !important; padding:8px 18px 8px 94px !important;
 white-space:normal !important; line-height:22px;
}
body > .mobilapp-appointment-icon:hover .rolling-wheel {
 transform:translateX(12px) rotate(28deg) !important;
}
@media(max-width:500px) {
 body > .mobilapp-appointment-icon { width:170px !important; }
 body > .mobilapp-appointment-icon .button-text { width:170px !important; padding:6px 18px 6px 80px !important; line-height:20px; }
 body > .mobilapp-appointment-icon:hover .rolling-wheel { transform:translateX(10px) rotate(28deg) !important; }
}
@media(hover:none), (prefers-reduced-motion:reduce) {
 body > .mobilapp-appointment-icon:hover .rolling-wheel { transform:none !important; }
}
