/**
    General Layout fixes
*/
html {
    min-height: 100vh;
}
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    overflow-x: hidden !important;
}
main {
    flex: 1;
}
a {
    color: var(--e-global-color-accent);
}
a:active, a:hover {
    color: var(--e-global-color-accent);
    text-decoration: underline;
}
.noline .elementor-widget-container {
    border: none !important;
}
/**
    Fix Vertical Layout when content is none or short:
    Footer grows upwards
 */
.elementor-location-footer {
    flex: 2 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: stretch;
}
/**
    Fix animated headline becoming jarringly pixelated during animation state
*/
.bdt-animated-heading *,
.animated * {
    -webkit-backface-visibility: hidden;
    -webkit-font-smoothing: antialiased;
    -webkit-transform: translateZ(0);
}
/**
    Fix Footer-2 nav display
 */
@media (max-width: 425px) {
    #footer-2 .bdt-navbar-nav {
        justify-content: center;
    }
}
/**
    Make animated headline always wrap on mobile devices to prevent sudden scrolling
 */
@media (max-width: 425px) {
    div[data-elementor-type="wp-post"] .elementor-widget-bdt-animated-heading .bdt-heading-tag {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: flex-start;
    }
}
/*
    Globally hide site headers
*/
.site-header,
.page-header{
    display: none !important;
}
/*
   Align .site-main content to center
   This will catch all system pages (404, search)
*/
body:not(.cmplz-document) .site-main {
    text-align: center;
}
.site-main .page-header {
    color: var( --e-global-color-primary );
    font-family: "Bebas Neue", sans-serif;
    font-size: 85px;
    letter-spacing: 1px;
    font-weight: 500;
    line-height: 1.2;
}
/**
    Fix Elementor List Vertical Position on mobile
 */
.bullet-list .elementor-widget .elementor-icon-list-item,
.elementor-widget .elementor-icon-list-item a {
    display: flex;
    font-size: inherit;
    align-items: start;
}
.bullet-list .elementor-widget .elementor-icon-list-item .elementor-icon-list-icon {
    padding-top: calc(var(--e-icon-list-icon-size) * 0.45);
}
.page-content {
    color: var( --e-global-color-primary);
}
.page-content h2.entry-title a {
    color: var(--e-global-color-accent );
}
/**
    Custom Scroll Bars
 */
body {
    scrollbar-width: normal;
    scrollbar-color:  #000000 var( --e-global-color-accent );
}
::-webkit-scrollbar{
    width: 10px;
    background: #000;
}
::-webkit-scrollbar-thumb{
    background: var( --e-global-color-accent );
    border-radius: 0px;
    -webkit-transition: border-radius 1s;
    transition: border-radius 1s;
}
/**
    "Gutes" Site custom scrollbar color
 */
.page-id-2514::-webkit-scrollbar-thumb,
.parent-pageid-2514::-webkit-scrollbar-thumb {
    background: var( --e-global-color-5cc064f ) !important;
    border-radius: 0px;
    -webkit-transition: border-radius 1s;
    transition: border-radius 1s;
}
/**
    Menu + Mobile Menu fixes
 */
ul.elementor-nav-menu--dropdown a,
ul.elementor-nav-menu--dropdown a:focus,
ul.elementor-nav-menu--dropdown a:hover {
    border-left-width: 0 !important;
}
/**
    Fix HIC Leistungen Grid Icon Boxes stretch issue
 */
.elementor-widget-bdt-advanced-icon-box .bdt-ep-advanced-icon-box {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    height: 100%;
}
.elementor-widget-bdt-advanced-icon-box .bdt-ep-advanced-icon-box .bdt-ep-advanced-icon-box-content {
    flex: 2 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
}
/**
    Fix HIC Leistungen Grid items to stretch vertically when in a 2-item-per-row grid on laptops or lower
 */
@media (max-width: 1024px) {
    .elementor-widget-bdt-advanced-icon-box {
        align-self: stretch !important;
    }
    .elementor-widget-bdt-advanced-icon-box .bdt-ep-advanced-icon-box-content{
        justify-content: space-between !important;
    }

}
/**
    Fix HIC Leistungen Grid item readmore button to not fill horizontal space
 */
.bdt-ep-advanced-icon-box-readmore {
    align-self: flex-start;
}
@media (max-width: 425px) {
    .bdt-ep-advanced-icon-box-readmore {
        align-self: center;
    }
}
/**
    Fix Contact Form Input Field Width
 */
.contact-fullwidth {
    width: 100% !important;
    padding: 5px 10px !important;
}
.wpcf7-form label {
    display: block;
}
.wpcf7-form .wpcf7-list-item {
    margin: 0 0 30px 0 !important;
}
/**
    Make Consent Checkbox flex so text doesn't overflow below it
 */
.wpcf7-acceptance label {
    display: flex;
    flex-wrap: nowrap;
    align-items: baseline;
    column-gap: 10px;
}
.wpcf7-acceptance label span {
    text-transform: none !important;
}
/**
    Cookie Page Styling Adjustments
 */
.cmplz-service-header h3 {
    font-size: 1.5rem !important;
    color: var(--e-global-color-accent) !important;
}
.cmplz-cookiebanner .cmplz-description,
.cmplz-cookiebanner .cmplz-description-functional,
.cmplz-cookiebanner .cmplz-description-statistics-anonymous {
    line-height: var(--cmplz_text_line_height) !important;
}
/**
    News list adjustments
 */
.newslist .elementor-pagination .page-numbers {
    font-family: var(--e-global-typography-primary-font-family ), sans-serif;
    font-weight: var(--e-global-typography-primary-font-weight );
    text-transform: var(--e-global-typography-primary-text-transform );
}
/**
    Kundengalerie adjustments
 */
.kunden-galerie .bdt-gallery-item .bdt-overlay {
    display: none !important;
}

@media (max-width: 1024px) {
    .bdt-dynamic-carousel .swiper-container {
        margin: 0 !important;
    }
}
@media (max-width: 768px) {
    [class*="elementor-widget-bdt-"] .bdt-slider .swiper-pagination,
    [class*="elementor-widget-bdt-"] .bdt-dots-container .swiper-pagination,
    [class*="elementor-widget-bdt-"] .bdt-arrows-dots-container .swiper-pagination {
        flex-wrap: wrap;
    }
    [class*="elementor-widget-bdt-"] .bdt-slider .swiper-pagination .swiper-pagination-bullet+.swiper-pagination-bullet,
    [class*="elementor-widget-bdt-"] .bdt-dots-container .swiper-pagination .swiper-pagination-bullet+.swiper-pagination-bullet,
    [class*="elementor-widget-bdt-"] .bdt-arrows-dots-container .swiper-pagination .swiper-pagination-bullet+.swiper-pagination-bullet {
        margin-top: var(--ep-swiper-dots-space-between, 5px);
    }
}

/**
    Menschen Skills Extra CSS
 */
.elementor-widget-progress {
    text-align: left
}

.elementor-progress-wrapper {
    position: relative;
    background-color: #eee;
    color: #fff;
    height: 100%;
    border-radius: 2px
}

.elementor-progress-bar {
    display: flex;
    width: 0;
    font-size: 11px;
    height: 30px;
    line-height: 30px;
    border-radius: 2px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-65173f0 .elementor-progress-bar {
    width: 0;
    animation-fill-mode: both;
}

.elementor-progress-text {
    flex-grow: 1;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    padding-left: 15px
}

.elementor-progress-percentage {
    padding-right: 15px
}

.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar {
    background-color: #5bc0de
}

.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar {
    background-color: #5cb85c
}

.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar {
    background-color: #f0ad4e
}

.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar {
    background-color: #d9534f
}

.elementor-progress .elementor-title {
    display: block
}

@media (max-width: 426px) {
    .elementor-progress-text {
        padding-left: 10px
    }
}

.e-con-inner .elementor-progress-wrapper, .e-con .elementor-progress-wrapper {
    height: auto
}

/**
    Individual Skill Bar Container etc
 */
.e-loop-item.type-mensch .elementor-element.mensch-skill {
    --content-width: 100%;
    --display: flex;
    --flex-direction: row;
    --container-widget-width: calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );
    --container-widget-height: 100%;
    --container-widget-flex-grow: 1;
    --container-widget-align-self: stretch;
    --justify-content: space-between;
    --align-items: center;
    --gap: 0px;
    --flex-wrap: nowrap;
    --background-transition: 0.3s;
    --margin-top: 0px;
    --margin-right: 0px;
    --margin-bottom: 0px;
    --margin-left: 0px;
    --padding-top: 0px;
    --padding-right: 0px;
    --padding-bottom: 10px;
    --padding-left: 0px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-c7d9d51 .elementor-icon-list-icon {
    width: 14px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-c7d9d51 .elementor-icon-list-icon i {
    font-size: 14px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-c7d9d51 .elementor-icon-list-icon svg {
    --e-icon-list-icon-size: 14px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-c7d9d51 .elementor-icon-list-text,  .e-loop-item.type-mensch .elementor-element.elementor-element-c7d9d51 .elementor-icon-list-text a {
    color: var( --e-global-color-primary );
}

.e-loop-item.type-mensch .elementor-element.elementor-element-c7d9d51 .elementor-icon-list-item {
    font-family: var( --e-global-typography-accent-font-family ), Sans-serif;
    font-weight: var( --e-global-typography-accent-font-weight );
}

.e-loop-item.type-mensch .elementor-element.elementor-element-c7d9d51 > .elementor-widget-container {
    margin: 0px 25px 0px 0px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-c7d9d51 {
    width: var( --container-widget-width, 33% );
    max-width: 33%;
    --container-widget-width: 33%;
    --container-widget-flex-grow: 0;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-65173f0 .elementor-progress-wrapper .elementor-progress-bar {
    background-color: var( --e-global-color-523d392 );
}

.e-loop-item.type-mensch .elementor-element.elementor-element-65173f0 .elementor-progress-wrapper {
    background-color: var( --e-global-color-523d392 );
    border-radius: 0px;
    overflow: hidden;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-65173f0 .elementor-progress-bar {
    height: 17px;
    line-height: 17px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-65173f0 .elementor-title {
    font-family: var( --e-global-typography-accent-font-family ), Sans-serif;
    font-weight: var( --e-global-typography-accent-font-weight );
}

.e-loop-item.type-mensch .elementor-element.elementor-element-65173f0 {
    width: var( --container-widget-width, 33% );
    max-width: 33%;
    --container-widget-width: 33%;
    --container-widget-flex-grow: 0;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-1e61b2c .elementor-icon-list-icon {
    width: 14px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-1e61b2c .elementor-icon-list-icon i {
    font-size: 14px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-1e61b2c .elementor-icon-list-icon svg {
    --e-icon-list-icon-size: 14px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-1e61b2c .elementor-icon-list-text,  .e-loop-item.type-mensch .elementor-element.elementor-element-1e61b2c .elementor-icon-list-text a {
    color: var( --e-global-color-primary );
}

.e-loop-item.type-mensch .elementor-element.elementor-element-1e61b2c .elementor-icon-list-item {
    font-family: var( --e-global-typography-accent-font-family ), Sans-serif;
    font-weight: var( --e-global-typography-accent-font-weight );
}

.e-loop-item.type-mensch .elementor-element.elementor-element-1e61b2c > .elementor-widget-container {
    margin: 0px 0px 0px 25px;
}

.e-loop-item.type-mensch .elementor-element.elementor-element-1e61b2c {
    width: var( --container-widget-width, 33% );
    max-width: 33%;
    --container-widget-width: 33%;
    --container-widget-flex-grow: 0;
}

.e-loop-item-2077 {
    --preview-width: 100vw;
}

.e-loop-item.type-mensch .elementor-progress-wrapper {
    position: relative;
    height: 17px;
    overflow-y: visible !important;
    overflow-x: visible !important;
    padding-right: 0 !important;
}
.e-loop-item.type-mensch .elementor-progress-wrapper .elementor-progress-bar {
    background-color: transparent !important;
    border-right: 8px solid var(--e-global-color-accent );
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    position: absolute;
    height: 25px !important;
    top: -4px;
}

.modalvideo .bdt-overlay,
.modalvideo .bdt-custom-gallery-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}


.modalvideo .bdt-custom-gallery-content-inner,
.modalvideo .bdt-gallery-item-link-wrapper,
.modalvideo a.bdt-gallery-item-link{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left:0;
    right:0;
    bottom:0;
}

.modalvideo .bdt-gallery-item-title,
.modalvideo .bdt-gallery-item-text {
    display: none;
}

div.post.category-news .wp-block-buttons a {
    color: var(--e-global-color-13889e5) !important;
    border-style: solid;
    border-width: 3px 3px 3px 3px;
    border-color: var(--e-global-color-13889e5) !important;
    font-family: "Roboto Condensed", Sans-serif;
    font-size: 20px;
    font-weight: 700;
    background-color: transparent !important;
    border-radius: 0 !important;
    text-transform: uppercase !important;
}

div.post.category-news figcaption {
    color: #FFFFFF !important;
}

@media(max-width: 1024px) {
    .e-loop-item.type-mensch .elementor-element.elementor-element-05c0db3 {
        width:100%;
        max-width: 100%;
    }
}

@media(max-width: 426px) {
    .e-loop-item.type-mensch .elementor-element.elementor-element-e4980d8 .elementor-icon-list-item {
        font-size:19px;
    }

    .e-loop-item.type-mensch .elementor-element.elementor-element-c8f6512 .elementor-icon-list-item {
        font-size: 19px;
    }

    .e-loop-item.type-mensch .elementor-element.elementor-element-c7d9d51 {
        width: initial;
        max-width: initial;
    }

    .e-loop-item.type-mensch .elementor-element.elementor-element-65173f0 {
        width: 100%;
        max-width: 100%;
    }

    .e-loop-item.type-mensch .elementor-element.elementor-element-1e61b2c {
        width: initial;
        max-width: initial;
    }
    .swiper-pagination-bullets {
        display: none !important;
    }
}

/**
 * Cases Video Lightbox fix
 */
@media (min-width: 769px) {
    .elementor-lightbox .elementor-video-container {
        width: auto;
        position: relative;
        top: 0;
        left: 0;
        transform: none;
    }
    .elementor-fit-aspect-ratio video {
        max-height: 100vh;
    }
}

.elementor-page-2085 div.mensch .e-child.lazyloaded {
    background-position: center !important;
    background-size: cover;
}

@media (max-width: 425px) {
    .elementor-page-2085 div.mensch .e-child.lazyloaded {
        background-size: contain !important;
        background-repeat: no-repeat !important;
        background-position: center center !important;
    }
}