:root {
    --lbp-main-color: #0E0F6D;
}

/* Icon */
.uk-icon.uk-navbar-toggle-icon svg {
    width: 24px;
}

.uk-icon.uk-close svg {
    width: 20px;
}

.lbp-word-break-word {
    word-break: break-word;
}

/* Hero Gradient Overlay */
.lbp-hero-gradient {
    position: relative;
}

.lbp-hero-gradient .uk-section {
    position: relative;
}

.lbp-hero-gradient .uk-section::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    background: linear-gradient(270deg, rgba(14, 15, 109, 0) 0%, rgba(14, 15, 109, 0.70) 35%, #0E0F6D 65%, #0E0F6D 100%);
    top: 0;
    left: 0;
    z-index: 2;
}

.lbp-hero-gradient .uk-section>div {
    position: relative;
    z-index: 3;
}

@media only screen and (max-width: 576px) {
    .lbp-hero-gradient .uk-section::before {
        background: rgba(14, 15, 109, 0.9);
    }
}

/* Leistungen Grid & Slider
================================================= */

.lbp-leistungen-grid .uk-grid>div:not(:last-child) .uk-button,
.lbp-leistungen-slider .uk-grid>div:not(:last-child) .uk-button {
    padding: 0;
    border: 0;
    font-size: 14px;
    line-height: 1.3em;
}

.lbp-leistungen-grid .uk-grid>div:not(:last-child) .uk-button:hover,
.lbp-leistungen-slider .uk-grid>div:not(:last-child) .uk-button:hover {
    color: inherit;
}

.lbp-leistungen-grid .uk-grid>div:last-child .uk-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.lbp-leistungen-grid .uk-grid>div:last-child .uk-card .el-title,
.lbp-leistungen-grid .uk-grid>div:last-child .uk-card .el-content {
    color: #ffffff;
}

.lbp-leistungen-slider .uk-slider-container {
    padding: 10px 18px 30px;
}

/* Team Section 
================================================= */
.lbp-team-grid__wrapper .el-image {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 1;
}

/* Contact Section 
================================================= */
.lbp-contact-image__column img {
    box-shadow: -24px 24px 0px var(--lbp-main-color);
}

@media only screen and (min-width: 992px) {
    .lbp-contact-image__column {
        padding-right: 40px;
    }
}

@media only screen and (max-width: 992px) {
    .lbp-contact-image__column img {
        box-shadow: -10px 10px 0px var(--lbp-main-color);
    }
}

/* Form CF7 
================================================= */
.lbp-form-cf7__wrapper .wpcf7 input:not(.wpcf7-submit),
.lbp-form-cf7__wrapper .wpcf7 textarea {
    font-family: inherit;
    font-size: inherit;
    color: rgba(0, 0, 0, 0.35);
}

.lbp-form-cf7__wrapper .wpcf7 {
    max-width: 850px;
    margin: 0 auto;
}

.lbp-form-cf7__row {
    display: flex;
    flex-wrap: nowrap;
    gap: 16px;
    margin: 0 0 16px;
}

.lbp-form-cf7__row:last-child {
    margin-bottom: 0;
}

.lbp-form-cf7__column {
    flex: 1 0 0%;
}

.lbp-form-cf7__wrapper .wpcf7 .wpcf7-form-control-wrap {
    display: block;
}

.lbp-form-cf7__wrapper .wpcf7 .wpcf7-form-control:not(.wpcf7-submit) {
    width: 100%;
    background-color: #D7D7F5;
    padding: 14px 24px;
    border: 1px solid #ADADE4;
    box-sizing: border-box;
    color: rgba(4, 4, 36, 1);
}

.lbp-form-cf7__wrapper .wpcf7 .wpcf7-submit {
    width: 100%;
    font-size: 18px;
}

.lbp-form-cf7__notes {
    margin: 16px 0 32px;
}

.lbp-form-cf7__notes p {
    margin: 0;
}

.lbp-form-cf7__wrapper .wpcf7 ::-ms-input-placeholder {
    color: rgba(4, 4, 36, 0.6);
}

.lbp-form-cf7__wrapper .wpcf7 ::placeholder {
    color: rgba(4, 4, 36, 0.6);
}

.lbp-form-cf7__wrapper .wpcf7 .wpcf7-spinner {
    position: absolute;
    right: 0;
    margin-top: 10px;
}

/* CF7 Validation */
div.wpcf7 .wpcf7-not-valid-tip {
    margin-top: 5px;
    font-size: 14px;
}

div.wpcf7 input.wpcf7-form-control.wpcf7-not-valid {
    border: 1px solid #dc3232 !important;
}

div.wpcf7 form .wpcf7-response-output {
    margin: 30px 0 0;
    padding: 15px;
    font-size: 16px;
    color: #fff;
    border: 0;
}

div.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    background-color: #dfa407;
}

div.wpcf7 form.sent .wpcf7-response-output {
    background-color: #46b450;
}

div.wpcf7 form.failed .wpcf7-response-output {
    background-color: #C4252A;
}

@media only screen and (max-width: 767px) {
    .lbp-form-cf7__row {
        flex-direction: column;
    }
}

/* Footer
================================================= */
footer a:hover {
    text-decoration: none;
    color: var(--lbp-main-color);
}

.footer .uk-nav>li>a {
    padding: 4px 0;
}

/* Footer Menu */
.lbp-footer-menu.uk-nav>li:first-child>a {
    padding-top: 0;
}

/* Footer Contact Info */
.lbp-footer-contact-info .textwidget p {
    margin: 0 0 8px;
}

.lbp-footer-contact-info a {
    color: #000000;
    transition: .1s ease-in-out;
    transition-property: color, background-color, border-color, box-shadow, opacity, filter;
}

/* Footer Legal Menu */
.lbp-footer-legal-menu {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.lbp-footer-legal-menu .menu-item {
    position: relative;
}

.lbp-footer-legal-menu .menu-item:not(:last-child)::after {
    content: '';
    width: 3px;
    height: 3px;
    background-color: #040424;
    border-radius: 100%;
    position: absolute;
    right: -12px;
    top: 50%;
}

/* Mobile Popup Menu
================================================= */
#tm-dialog-mobile .uk-nav>li>a {
    padding: 15px 0;
    border-bottom: 1px solid rgba(14, 15, 109, 0.1);
}

#tm-dialog-mobile .lbp-kontakt-button {
    display: block;
    margin-top: 24px;
}

#tm-dialog-mobile #media_image-2 {
    margin-bottom: 48px;
}

#tm-dialog-mobile #media_image-2 img {
    max-width: 170px !important;
}

#tm-dialog-mobile #nav_menu-5 ul {
    display: flex;
    justify-content: center;
    gap: 20px;
}

#tm-dialog-mobile #nav_menu-5 .menu-item {
    position: relative;
}

#tm-dialog-mobile #nav_menu-5 .menu-item:not(:last-child)::after {
    content: '';
    width: 3px;
    height: 3px;
    background-color: #040424;
    border-radius: 100%;
    position: absolute;
    right: -12px;
    top: 50%;
}

#tm-dialog-mobile #nav_menu-5 .menu-item a {
    border-bottom: 0;
}

/* Detail Service Page
================================================= */

.lbp-hero-service__image img {
    object-fit: cover;
    min-height: 390px;
    box-shadow: 24px 24px 0px var(--lbp-main-color);
}

.lbp-service-main-content {
    max-width: 1000%;
    margin: 0 auto;
    border: 1px solid rgba(14, 15, 109, 0.1);
    padding: 48px;
}

@media only screen and (max-width: 992px) {
    .lbp-hero-service__image img {
        box-shadow: 10px 10px 0px var(--lbp-main-color);
    }
}

@media only screen and (max-width: 576px) {
    .lbp-service-main-content {
        padding: 20px;
    }

    .leistung-servie-und-modernisierungskonzepte .lbp-hero-service__title{
        font-size: 1.8rem;
    }
}

/* Slider Nav 
================================================= */
@media only screen and (max-width: 992px) {
    .el-slidenav.uk-icon {
        background-color: #fff;
        border-radius: 100%;
        box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.15);
    }

    .el-slidenav.uk-slidenav-previous {
        left: -10px
    }

    .el-slidenav.uk-slidenav-next {
        right: -10px
    }
}