:root {
    --placeholder-color: rgba(17, 17, 18, 0.6);
}

/* Form
======================================== */

body ::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: var(--placeholder-color) !important;
}

body ::-moz-placeholder {
    /* Firefox 19+ */
    color: var(--placeholder-color) !important;
}

body :-ms-input-placeholder {
    /* IE 10+ */
    color: var(--placeholder-color) !important;
}

body :-moz-placeholder {
    /* Firefox 18- */
    color: var(--placeholder-color) !important;
}

/* =====================================
* Header
======================================== */

body.admin-bar header.simplistic-header {
    top: 32px;
}

header.simplistic-header {
    background-color: transparent;
    max-width: 100%;
    height: auto;
    padding: 45px 0;
    z-index: 9999;
    transition: all 0.3s ease;
    top: 0;
    left: 0;
    position: fixed;
}

header.simplistic-header .container {
    z-index: 10;
}

.simplistic-logo {
    gap: 15px;
}

.simplistic-logo .logo {
    transition: all 0.3s ease;
}

@media only screen and (min-width: 768px) {
    body:not(.budi-scrolled):not(.single-job_listing) header.simplistic-header::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(to bottom, #252525 -20%, transparent 100%);
        display: block !important;
        z-index: 9;
    }

    body.admin-bar .budi-simplistic-popup-menu__wrapper {
        top: 32px;
    }
}

header.simplistic-header .container {
    max-width: var(--header-max-width);
}



/* Menu Hamburger */
.simplistic-menu-mobile-hamburger {
    cursor: auto;
}

.simplistic-menu-mobile-hamburger-inner {
    background-color: #ffffff;
    padding: 10px 25px;
    border-radius: 20px;
    gap: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.budi-simplistic-logo__arrow {
    cursor: pointer;
}

.budi-simplistic-logo__arrow svg {
    top: -5px;
}

.budi-simplistic-logo__arrow:not(.budi-opened) svg {
    animation: jumpInfinite 1.5s infinite;
}

.budi-simplistic-logo__arrow.budi-opened svg {
    transform: rotate(180deg);
}

/* Other Company Logo */
.budi-simplistic-company__other {
    margin: 15px -10px 0;
    padding: 20px 16px 20px 16px;
    top: 100%;
    left: 40px;
    background-color: rgba(11, 55, 83, 0.95);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease-in;
    z-index: 9;
}

.budi-simplistic-company__other.budi-opened {
    opacity: 1;
    visibility: visible;
}

.budi-simplistic-company__other li:not(:last-child) {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.budi-company-lists__link {
    gap: 15px;
}

.budi-company-lists__link img {
    width: auto !important;
    max-height: 36px;
    transition: all 0.3s ease;
    filter: brightness(0) invert(1);
}

.budi-company-lists__link svg {
    position: relative;
    transition: transform 0.3s ease-in;
    transform: translate(0, 0);
}

.budi-company-lists__link:hover svg {
    transform: translate(3px, -3px);
}

/* Menu Popup */
.budi-simplistic-popup-menu__wrapper {
    background-color: #ffffff;
    top: 0;
    right: -100%;
    z-index: 99999;
    transition: all 0.3s ease-in;
    opacity: 0;
    visibility: hidden;
}

.budi-simplistic-popup-menu__wrapper.budi-opened {
    opacity: 1;
    visibility: visible;
    right: 0;
}

.budi-simplistic-popup-menu__header {
    padding: 40px 0;
}

.budi-simplistic-popup-menu__header .simplistic-logo .logo {
    max-width: var(--branding-width-max);
}

.budi-simplistic-popup__background {
    width: 50%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}

.budi-simplistic-popup-menu li a:not([href]){
    color: var(--color-main);
}

/* Menu Popup Content Inner */
.budi-simplistic-popup-menu__content-inner {
    width: 110%;
    max-height: calc(100vh - 100px);
    overflow-y: auto;
    overflow-x: hidden;
    padding: 40px 0px 40px 80px;
}

.budi-simplistic-popup-menu__content-inner::-webkit-scrollbar {
    width: 5px;
}

.budi-simplistic-popup-menu__content-inner::-webkit-scrollbar-track {
    box-shadow: none;
}

.budi-simplistic-popup-menu__content-inner::-webkit-scrollbar-thumb {
    background-color: var(--color-main);
    outline: 0;
}

.budi-simplistic-popup-menu__list {
    margin: 0 0 15px;
    padding: 25px 0;
    border-top: 1px solid rgba(11, 55, 83, 0.2);
    border-bottom: 1px solid rgba(11, 55, 83, 0.2);
}

.budi-simplistic-popup-menu__list-top {
    padding-bottom: 10px;
}

.budi-simplistic-popup-menu li a {
    display: inline-block;
    line-height: 1.2em;
}

.budi-simplistic-popup-menu li.current-menu-item>a {
    color: var(--color-sub);
}

.budi-simplistic-popup-menu:not(.no-heading-style)>li>a {
    margin-bottom: 15px;
    font-size: 32px;
    font-weight: 600;
}

.budi-simplistic-popup-menu__list-right {
    padding-left: 40px;
}

.budi-simplistic-popup-menu.no-heading-style,
.budi-simplistic-popup-menu .sub-menu {
    padding: 0;
    list-style-type: none;
    font-weight: 400;
}

.budi-simplistic-popup-menu .sub-menu li,
.budi-simplistic-popup-menu.no-heading-style li {
    margin-bottom: 5px;
}



/* Menu Popup Email */
.budi-simplistic-popup-menu__cp {
    gap: 20px;
}

/* Menu Popup Social Media */
.budi__socialmedia {
    gap: 7px;
}

.budi__socialmedia li a {
    width: 30px;
    height: 30px;
    border-radius: 100%;
    background-color: var(--color-sub);
}

.budi__socialmedia li a:hover {
    background-color: var(--color-main);
}

/* Close Icon */
.budi-simplistic-popup-menu__close {
    font-size: 35px;
    color: #000000;
    bottom: -20px;
    cursor: pointer;
}

/* When Budi Scrolled */
body.budi-scrolled header.simplistic-header {
    background-color: var(--color-main);
    padding: 10px 0;
}

body.budi-scrolled .budi-simplistic-header-logo img.logo {
    max-width: 275px;
}

body.budi-scrolled .budi-company-lists__link img {
    width: 255px;
}

body.budi-scrolled .budi-simplistic-header-logo .budi-simplistic-logo__arrow svg {
    width: 25px;
}


@media (min-width: 768px) {
    .simplistic-logo .logo {
        filter: brightness(0) invert(1);
    }
}


@media only screen and (max-width: 1200px) {
    .budi-simplistic-popup-menu__content-inner {
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
    }

    .budi-simplistic-popup-menu:not(.no-heading-style)>li>a {
        font-size: 28px;
    }

    .budi-simplistic-popup-menu__list-right {
        padding-left: 15px;
    }
}

@media only screen and (max-width: 992px) {

    .budi-simplistic-popup-menu__header .simplistic-logo .logo {
        max-width: 100%;
    }

    .budi-simplistic-popup-menu>li>a {
        font-size: 20px;
    }

    .budi-simplistic-popup-menu__content-inner {
        padding-left: 10px;
        padding-right: 10px;
    }

    .budi-simplistic-popup-menu:not(.no-heading-style)>li>a {
        font-size: 24px;
    }
}


@media only screen and (max-width: 767px) {
    body:not(.budi-scrolled):has(.budi-hero) .simplistic-logo .logo,
    body:not(.budi-scrolled):has(.budi-hero-webloesungen) .simplistic-logo .logo,
    body:not(.budi-scrolled):has(.budi-hero-markitech) .simplistic-logo .logo,
    body:not(.budi-scrolled).budi-product-brian .simplistic-logo .logo {
        filter: brightness(0) invert(1);
    }

    .budi-simplistic-popup-menu__cp .budi-social-media-text {
        font-size: 18px;
    }

    body.admin-bar:not(.budi-scrolled) header.simplistic-header {
        top: 46px;
    }

    body.admin-bar.budi-scrolled header.simplistic-header {
        top: 0;
    }

    body.budi-scrolled header.simplistic-header {
        box-shadow: 0px 1px 20px rgba(0, 0, 0, 0.1);
    }

    header.simplistic-header,
    .budi-simplistic-popup-menu__header {
        padding: 20px 0;
        /* background-color: #ffffff; */
    }

    body.budi-scrolled header.simplistic-header {
        padding: 20px 0;
        background-color: #ffffff;
    }

    .budi-simplistic-logo__arrow svg {
        width: 20px;
    }

    body.budi-scrolled .budi-simplistic-header-logo .budi-simplistic-logo__arrow svg {
        width: 20px;
    }

    .budi-simplistic-popup-menu__content-inner {
        padding: 30px 0 10px;
    }

    .simplistic-menu-mobile-hamburger-inner {
        padding: 0;
        background-color: transparent;
    }

    body:not(.budi-scrolled):has(.budi-hero) .simplistic-menu-mobile-hamburger svg path,
    body:not(.budi-scrolled):has(.budi-hero-webloesungen) .simplistic-menu-mobile-hamburger svg path,
    body:not(.budi-scrolled):has(.budi-hero-markitech) .simplistic-menu-mobile-hamburger svg path,
    body:not(.budi-scrolled).budi-product-brian .simplistic-menu-mobile-hamburger svg path {
        stroke: #ffffff;
    }

    .budi-simplistic-company__other {
        width: 260px;
        left: 30px;
        margin-top: 20px;
        padding: 20px 16px 20px 16px;
    }

    .budi-company-lists__link img {
        width: 100%;
        height: 22px;
        max-width: unset;
    }

    .budi-simplistic-popup-menu__header .budi-simplistic-company__other {
        background-color: var(--color-main);
        margin-top: 10px;
    }

    .budi-simplistic-popup-menu__close {
        font-size: 30px;
    }

    .budi-simplistic-popup-menu>li>a {
        margin-bottom: 4px;
    }

    .budi-simplistic-popup-menu__cp .company-email-class {
        font-size: 12px;
    }
}

@media only screen and (max-width: 360px) {
    .budi__socialmedia li a {
        width: 25px;
        height: 25px;
    }

    .budi__socialmedia li a svg {
        width: 10px;
    }

    .budi-simplistic-popup-menu:not(.no-heading-style)>li>a {
        font-size: 18px;
    }

    .budi-simplistic-popup-menu li a {
        font-size: 15px;
    }

    .budi-simplistic-popup-menu__content>.row>div {
        padding-left: 10px;
        padding-right: 10px;
    }
}


@keyframes jumpInfinite {
    0% {
        top: -5px;
    }

    50% {
        top: 5px;
    }

    100% {
        top: -5px;
    }
}

/* Newsletter Form
============================================== */

.budi-footer__newsletter .sib-form-message-panel {
    max-width: 100% !important;
}

.budi-footer__newsletter-form .sib-form,
.budi-footer__newsletter-form #sib-container {
    padding: 0;
}

.budi-footer__newsletter .budi-footer__newsletter-input-fields {
    height: 65px;
    border-radius: 10px;
    border: 1px solid #E2E2E2;
}

.budi-footer__newsletter .sib-form-block {
    padding: 0;
}

.budi-footer__newsletter .sib-form-block.sib-form-block__button-wrapper {
    height: 100%;
}

.budi-footer__newsletter .sib-form .entry__field {
    width: 100%;
    margin: 0;
    border: 0;
}

.budi-footer__newsletter-input-fields .sib-input {
    padding: 0 32px;
}

.budi-footer__newsletter-input-fields .sib-input:not(:last-child) {
    border-right: 1px solid #E2E2E2;
}

.budi-footer__newsletter .sib-form .entry__field input {
    width: 100%;
    padding: 0;
    font-family: var(--font-text), sans-serif;
    color: var(--body-text-color);
}

.budi-footer__newsletter .sib-form .entry__field input:focus {
    outline: 0;
}

.budi-footer__newsletter .sib-form .entry__choice {
    padding-left: 0;
    font-family: var(--font-text), sans-serif;
    font-weight: 300;
    font-size: 13px;
    color: rgba(17, 17, 18, 0.6);
    text-indent: 0;
}

.budi-footer__newsletter #sib-form .entry__choice label {
    display: flex;
    align-items: center;
    margin-bottom: 0;
}

.budi-footer__newsletter .sib-form-block__button {
    display: flex;
    align-items: center;
    gap: 11px;
    height: 100%;
    max-height: 65px;
    padding: 17.5px 25px !important;
    border-radius: 10px !important;
    font-weight: 600;
    font-size: 18px !important;
    background: var(--color-sub);
    color: #ffffff;
}

.budi-footer__newsletter .sib-form .progress-indicator__icon {
    display: none;
}

.budi-footer__newsletter .sib-form-block__button-icon {
    width: 30px;
    height: 30px;
    background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_908_561)'%3E%3Cpath d='M29.4749 6.84961H8.40311C8.11307 6.84961 7.87793 7.08475 7.87793 7.37478V22.6252C7.87793 22.9152 8.11307 23.1503 8.40311 23.1503H24.8482C25.1382 23.1503 25.3734 22.9152 25.3734 22.6252C25.3734 22.3351 25.1382 22.1 24.8482 22.1H9.77754L16.9233 15.7046L18.5888 17.1952C18.6885 17.2844 18.8137 17.329 18.939 17.329C19.0642 17.329 19.1895 17.2844 19.2892 17.1952L20.9544 15.7049L28.1 22.1H26.5989C26.3088 22.1 26.0737 22.3351 26.0737 22.6252C26.0737 22.9152 26.3088 23.1503 26.5989 23.1503H29.4749C29.7649 23.1503 30.0001 22.9152 30.0001 22.6252V7.37478C30.0001 7.08475 29.7649 6.84961 29.4749 6.84961ZM18.939 16.099L13.8842 11.5754C13.6681 11.382 13.3361 11.4003 13.1426 11.6165C12.9492 11.8327 12.9676 12.1646 13.1838 12.3581L16.1358 14.9999L8.92828 21.4505V8.54971L11.8453 11.1602C11.9454 11.2499 12.0706 11.2941 12.1953 11.2941C12.3395 11.2941 12.4831 11.2351 12.5868 11.1192C12.7802 10.903 12.7619 10.571 12.5457 10.3776L9.77742 7.9002H28.1004L18.939 16.099ZM28.9497 21.4508L21.742 15.0001L28.9496 8.54959V21.4508H28.9497Z' fill='white' /%3E%3Cpath d='M6.02186 8.69824H1.92557C1.63553 8.69824 1.40039 8.93338 1.40039 9.22342C1.40039 9.51346 1.63553 9.74859 1.92557 9.74859H6.02186C6.31189 9.74859 6.54703 9.51346 6.54703 9.22342C6.54703 8.93338 6.31189 8.69824 6.02186 8.69824Z' fill='white' /%3E%3Cpath d='M6.37189 16.0508H2.62576C2.33572 16.0508 2.10059 16.2859 2.10059 16.576C2.10059 16.866 2.33572 17.1011 2.62576 17.1011H6.37189C6.66193 17.1011 6.89707 16.866 6.89707 16.576C6.89713 16.2859 6.66193 16.0508 6.37189 16.0508Z' fill='white' /%3E%3Cpath d='M4.97156 12.8994H0.525176C0.235137 12.8994 0 13.1346 0 13.4246C0 13.7146 0.235137 13.9498 0.525176 13.9498H4.97156C5.2616 13.9498 5.49674 13.7146 5.49674 13.4246C5.49674 13.1346 5.2616 12.8994 4.97156 12.8994Z' fill='white' /%3E%3Cpath d='M4.97152 20.252H4.5408C4.25076 20.252 4.01562 20.4871 4.01562 20.7771C4.01562 21.0672 4.25076 21.3023 4.5408 21.3023H4.97152C5.26156 21.3023 5.4967 21.0672 5.4967 20.7771C5.49676 20.4871 5.26156 20.252 4.97152 20.252Z' fill='white' /%3E%3Cpath d='M2.79023 20.252H0.525176C0.235137 20.252 0 20.4871 0 20.7771C0 21.0672 0.235137 21.3023 0.525176 21.3023H2.79023C3.08027 21.3023 3.31541 21.0672 3.31541 20.7771C3.31541 20.4871 3.08027 20.252 2.79023 20.252Z' fill='white' /%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_908_561'%3E%3Crect width='30' height='30' fill='white' /%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
}

.budi-footer__newsletter .sib-form .checkbox {
    width: 18px;
    height: 18px;
    border-color: rgba(17, 17, 18, 0.25);
}

.budi-footer__newsletter .sib-form .sib-optin__text {
    max-width: calc(100% - 25px);
}

.budi-footer__newsletter .sib-optin {
    margin-top: 20px;
}

.budi-footer__newsletter .sib-form .input_replaced:checked+.checkbox_tick_positive {
    background: var(--color-main);
    border-color: var(--color-main);
}

.budi-footer__newsletter .sib-form .input_replaced:active+.checkbox,
.budi-footer__newsletter .sib-form .input_replaced:active+.radio-button,
.budi-footer__newsletter .sib-form .input_replaced:focus+.checkbox,
.budi-footer__newsletter .sib-form .input_replaced:focus+.radio-button {
    box-shadow: none;
}

.budi-footer__newsletter .sib-form .entry__error {
    margin: 0;
    position: absolute;
    bottom: -8px;
    font-size: 10px;
}

.budi-footer__newsletter .sib-form .sib-optin .entry__error {
    bottom: -13px;
}

@media screen and (max-width: 1200px) {
    .budi-footer__newsletter-input-fields .sib-input {
        padding: 0 20px;
    }
}

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

    .budi-footer__newsletter .sib-form-block__button {
        margin: 0 auto;
    }

    .budi-footer__newsletter .sib-form-block.sib-form-block__button-wrapper {
        margin-top: 30px;
    }
}

@media screen and (max-width: 767px) {
    .budi-footer__newsletter #sib-form {
        gap: 20px;
    }

    .budi-footer__newsletter .budi-footer__newsletter-input-fields {
        height: auto;
        border: 0;
        gap: 13px;
    }

    .budi-footer__newsletter-input-fields .sib-input:not(:last-child) {
        border-right: 0;
    }

    .budi-footer__newsletter-input-fields .sib-input {
        padding: 0;
    }

    .budi-footer__newsletter .sib-form .entry__field input {
        padding: 5px 23px;
        border: 1px solid rgba(17, 17, 18, 0.1);
        border-radius: 10px;
    }

    .budi-footer__newsletter .sib-optin {
        margin-top: 30px;
    }

    .budi-footer__newsletter .sib-form-block__button {
        width: 100%;
        justify-content: center;
    }
}

/* =====================================
* Footer
======================================== */

footer.footer {
    padding-top: 0;
    overflow: hidden;
    font-size: 16px;
    line-height: 1.25em;
}

footer.footer .footer-inner {
    padding: 75px 0 46px;
    position: relative;
}

footer.footer .footer-inner::after {
    content: '';
    width: 523px;
    height: 472px;
    position: absolute;
    top: 0;
    right: -100px;
    background-image: url('../images/footer-background.webp');
    background-repeat: no-repeat;
    background-position: top right;
    background-size: auto 100%;
    z-index: 1;
}

footer :is(h1, h2, h3, h4, h5, h6),
footer :is(.h1, .h2, .h3, .h4, .h5, .h6) {
    margin-bottom: 15px;
}

footer :is(h4, .footer_widget_title) {
    font-size: 20px;
}

/* Footer Logo */
.budi-footer__brand-logo {
    margin-bottom: 35px;
}

.budi-footer__brand-logo img {
    width: 100%;
    max-width: 420px;
    filter: brightness(0) invert(1);
}

/* Footer CTA */
.budi-footer-cta-navigation__wrapper {
    margin-bottom: 59px;
}

.budi-footer-cta__button-wrapper {
    padding-top: 44px;
}

.budi-footer-cta__button.budi-button-container a.btn {
    display: flex;
    gap: 12px;
}

.budi-footer-cta__button.budi-button-container a.btn span {
    color: #ffffff;
}



/* Footer Navigation */
.budi-footer__navigation {
    position: relative;
    z-index: 3;
}

footer .footer_widget_title {
    margin-bottom: 22px;
}

/* Footer Leistungen Menu */
#menu-footer-leistungen-menu {
    display: grid;
    margin-bottom: 0;
    row-gap: 10px;
    column-gap: 14px;
    grid-template-rows: repeat(4, 1fr);
    grid-auto-flow: column;
}

#menu-footer-leistungen-menu li a {
    font-weight: 500;
}

#menu-footer-leistungen-menu li a:hover {
    opacity: 0.7;
}

/* Footer Social Media & Badge */
.budi-footer-socialmedia-badge__wrapper {
    padding: 45px 0;
}

.budi-footer-socialmedia {
    gap: 24px;
}

.budi-footer__logos {
    gap: 20px;
}

.budi-footer__logos-item img {
    width: auto;
    max-height: 50px;
    filter: brightness(0) invert(100%);
}

/* Footer Logos Badge */
.budi-footer__logos-badge .budi-footer__logos-item:nth-child(1) img {
    width: 124px;
}

/* Footer Logos Partner */
@media screen and (min-width: 768px) {
    .budi-footer__logos-partner-container {
        margin-left: -30px;
    }
}

.budi-footer__logos-partner img {
    opacity: 0.7;
}

/* Footer Legal */
footer.footer .footer-legal {
    background: #0B324D;
    padding: 27px 0;
}

footer.footer .budi-footer-legal-menu {
    gap: 15px;
}

footer.footer .budi-footer-legal-menu a {
    color: #C5D2DD;
}

footer.footer .budi-footer-legal-menu a:hover {
    text-decoration: underline;
}

footer.footer .budi-footer-legal-menu>li {
    position: relative;
}

footer.footer .budi-footer-legal-menu>li:not(:last-child):after {
    content: '-';
    position: relative;
    right: -7.5px;
}

/* Other Company */
.budi-footer-other__company-wrapper {
    margin-top: 60px;
    gap: 28px;
}

.budi-footer-other__company-wrapper ul {
    column-gap: 30px;
    row-gap: 17px;
}

.budi-footer-other__company-wrapper li {
    /* max-width: 235px; */
    height: 36px;
    position: relative
}

.budi-footer-other__company-wrapper li:not(:last-child):after {
    content: '';
    position: absolute;
    right: -16px;
    top: 0;
    height: 100%;
    width: 1px;
    background-color: rgba(255, 255, 255, 0.5);
}

.budi-footer-other__company-wrapper .budi-company-lists__link {
    height: 100%;
    position: relative;
    top: 0;
    transition: all 0.3s ease;
}

.budi-footer-other__company-wrapper .budi-company-lists__link:hover {
    top: -3px;
}

@media only screen and (max-width: 1200px) {
    .footer_widget.footer_2 {
        padding-left: 0;
    }
}

@media only screen and (max-width: 992px) {
    footer.footer {
        background-image: none;
    }

    .budi-footer-socialmedia {
        gap: 15px;
    }

    #menu-footer-leistungen-menu {
        grid-template-rows: repeat(4, 1fr);
    }

    .budi-footer__logos {
        gap: 15px;
    }
}

@media only screen and (max-width: 767px) {
    footer.footer .footer-inner::after {
        display: none;
    }

    .budi-footer__brand-logo img {
        max-width: 240px;
    }

    .budi-footer-socialmedia-badge__wrapper {
        padding: 30px 0 15px;
    }

    #menu-footer-leistungen-menu {
        grid-template-rows: repeat(6, 1fr);
    }

    .budi-footer-cta__button-wrapper {
        padding-top: 57px;
    }

    .budi-footer__logos-partner-container {
        margin-top: 45px;
    }

    .budi-footer-other__company-wrapper {
        margin-top: 44px;
    }

    .budi-footer-cta-navigation__wrapper {
        margin-bottom: 45px;
    }

    .budi-footer-other__company-wrapper ul{
        row-gap: 6px;
    }
}

@media only screen and (max-width: 576px) {
    .budi-footer__logos {
        column-gap: 10px;
        row-gap: 0;
    }

    #menu-footer-leistungen-menu {
        grid-template-rows: repeat(8, 1fr);
    }
}

/* Contact Form 7
============================================== */

/* Form Field cf7 */
.wpcf {
    color: var(--placeholder-color);
}

.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="text"],
.wpcf7 textarea,
.wpcf7 select {
    width: 100%;
    border: 1px solid #E2E2E2 !important;
    border-radius: 5px;
    min-height: 50px;
    font-size: 16px !important;
    box-shadow: none;
    padding-left: 20px;
    padding-right: 20px;
    color: var(--placeholder-color);
    line-height: 50px;
}

.wpcf7 select {
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='9' viewBox='0 0 16 9'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Cpath id='Mask' d='M8,6.586,14.293.293a1,1,0,0,1,1.414,1.414l-7,7a1,1,0,0,1-1.414,0l-7-7A1,1,0,0,1,1.707.293Z' fill='%232c2c2c'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg id='Icon_Chevron_Bottom' data-name='Icon/Chevron Bottom' clip-path='url(%23clip-path)'%3E%3Cpath id='Icon_Fill_Accent' data-name='Icon/ðŸ–Œ Fill/Accent' d='M0,0H30V30H0Z' transform='translate(-7 -11)' fill='%232c2c2c'/%3E%3C/g%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: right 20px center;
}

.wpcf7 textarea {
    height: 50px;
    padding-top: 12px;
    line-height: 1.2em !important;
}

.wpcf7 .wpcf7-checkbox .wpcf7-list-item.first {
    margin-left: 0;
}

/* Checkbox container styling */
.wpcf7 .wpcf7-checkbox {
    display: flex;
    flex-wrap: wrap;
    gap: 28px;
}

/* Individual checkbox item styling */
.wpcf7 .wpcf7-checkbox .wpcf7-list-item {
    display: flex;
    margin: 0;
}

/* Checkbox label styling */
.wpcf7 .wpcf7-checkbox .wpcf7-list-item label {
    display: flex;
    margin-bottom: 0;
    align-items: center;
    cursor: pointer;
    font-size: 16px;
}

/* Custom checkbox styling */
.wpcf7 .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    border: 1px solid #D9D9D9;
    border-radius: 2px;
    margin-right: 10px;
    position: relative;
    cursor: pointer;
    background-color: #fff;
    transition: background-color 0.2s, border-color 0.2s;
}

/* Checkbox hover state */
.wpcf7 .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"]:hover {
    border-color: #aaa;
}

/* Checkbox checked state */
.wpcf7 .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"]:checked {
    background-color: #4a90e2;
    border-color: #4a90e2;
}

/* Checkbox checked state with checkmark */
.wpcf7 .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"]:checked::after {
    content: '✓';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-size: 14px;
}

/* Checkbox label text */
.wpcf7 .wpcf7-checkbox .wpcf7-list-item-label {
    font-size: 14px;
    font-weight: 400;
    transition: color 0.2s;
}

/* Hover effect for label text */
.wpcf7 .wpcf7-checkbox .wpcf7-list-item label:hover .wpcf7-list-item-label {
    color: #4a90e2;
}

.wpcf7 .budi-form-note {
    margin: 8px 0 32px;
}

.wpcf7 .budi-form-note p {
    margin-bottom: 14px;
}

.wpcf7 .budi-form-note p a {
    text-decoration: underline;
}

.wpcf7 .budi-form-note p a:hover {
    text-decoration: none;
}

.wpcf7 .wpcf7-submit {
    width: fit-content;
    align-items: center;
    min-height: unset;
    min-width: 230px;
    background: var(--color-sub) !important;
    min-height: 1em;
    font-weight: 700;
    padding: 14px 20px !important;
    border-radius: 10px !important;
}

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

.wpcf7 a{
    color: inherit;
}

/* Validation Form cf7 */
.wpcf7 .wpcf7-not-valid-tip,
.budi-cf7-validation .wpcf7-not-valid-tip {
    font-size: 14px;
}

.wpcf7 .wpcf7-form-control.wpcf7-not-valid,
.budi-cf7-validation.wpcf7-form-control.wpcf7-not-valid {
    border-color: #dc3232 !important;
}

.wpcf7 form .wpcf7-response-output,
.fieldset-cf7mls-wrapper div.wpcf7-validation-errors {
    margin: 20px 0 0;
    padding: 15px;
    color: #fff;
    border: 0;
}

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

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

form.failed .wpcf7-response-output,
.fieldset-cf7mls-wrapper div.wpcf7-validation-errors {
    background-color: #C4252A;
}

.fieldset-cf7mls-wrapper div.wpcf7-validation-errors .wpcf7-icon-wraning {
    fill: #ffffff;
}

/* WPCF7 Form */
.budi-cf7 .budi-select-service__button {
    background-color: #ffffff;
    padding: 5px 20px 5px 20px;
    border-radius: 5px;
    min-height: 50px;
    line-height: 40px;
    cursor: pointer;
}

.budi-cf7 .budi-select-service__button-text {
    color: rgba(17, 17, 18, 0.6);
}

.budi-cf7 .budi-select-service__button-arrow {
    width: 22px;
    height: 12px;
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='12' viewBox='0 0 22 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 12C10.6057 12 10.2114 11.8641 9.91084 11.593L0.451312 3.05639C-0.150437 2.51335 -0.150437 1.63292 0.451312 1.0901C1.05282 0.547287 1.93667 -0.377876 2.53847 0.164939L11 7.22389L20.0962 0.164907C19.3417 0.164643 21.1539 0.164907 21.5485 1.09037C22.1505 1.63318 22.1505 2.51362 21.5485 3.05665L12.0891 11.5933C11.7883 11.8645 11.3941 12 11 12Z' fill='%23E0173C'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: center;
    right: 20px;
    top: 50%;
    transform: translateY(-50%) rotate(0deg);
    transition: all 0.3s ease;
}

.budi-cf7 .budi-select-service__button.budi-opened .budi-select-service__button-arrow {
    transform: translateY(-50%) rotate(180deg);
}

.budi-cf7 .budi-select-service__checkboxs {
    width: 100%;
    background-color: #ffffff;
    padding: 5px 20px 26px;
    top: 45px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    z-index: 6;
    display: none;
}

.budi-cf7 .budi-select-service__checkboxs .wpcf7-checkbox {
    display: flex;
    flex-wrap: wrap;
    column-gap: 16px;
    row-gap: 0px;
    align-items: center;
}

.budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item {
    max-width: calc(50% - 20px + (20px / 2));
    flex-basis: 100%;
    margin: 0;
    padding: 8px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item:nth-last-child(2),
.budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item:last-child {
    border-bottom: 0;
}

.budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item label {
    width: 100%;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    line-height: 1.3em;
    color: rgba(17, 17, 18, 0.6);
}

.budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item label>.wpcf7-list-item-label {
    width: calc(100% - 17px);
}

.budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item input[type="checkbox"] {
    width: 13px;
    height: 13px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='15' height='15' viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.3328 13.3335H1.6665V1.6665H9.99975V0H1.6665C1.22494 0.00138451 0.801866 0.177406 0.489636 0.489636C0.177406 0.801866 0.00138451 1.22494 0 1.6665V13.3335C0.00138451 13.7751 0.177406 14.1981 0.489636 14.5104C0.801866 14.8226 1.22494 14.9986 1.6665 15H13.3335C13.7751 14.9986 14.1981 14.8226 14.5104 14.5104C14.8226 14.1981 14.9986 13.7751 15 13.3335V6.66675H13.3335L13.3328 13.3335Z' fill='%23E0163C'/%3E%3Cpath d='M1.66725 13.3335H13.3335V1.6665H5.00025V0H13.3335C13.7751 0.00138451 14.1981 0.177406 14.5104 0.489636C14.8226 0.801866 14.9986 1.22494 15 1.6665V13.3335C14.9986 13.7751 14.8226 14.1981 14.5104 14.5104C14.1981 14.8226 13.7751 14.9986 13.3335 15H1.6665C1.22494 14.9986 0.801865 14.8226 0.489635 14.5104C0.177406 14.1981 0.00138451 13.7751 0 13.3335V6.66675H1.6665L1.66725 13.3335Z' fill='%23E0163C'/%3E%3C/svg%3E%0A");
    background-size: 100%;
    background-repeat: no-repeat;
}

.budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item input[type="checkbox"]:checked {
    background-image: url("data:image/svg+xml,%3Csvg width='15' height='15' viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.083 5.91675L2.91675 7.083L6.66675 10.833L15 2.49975L13.8337 1.3335L6.66675 8.4585L4.083 5.91675ZM13.3328 13.3335H1.6665V1.6665H9.99975V0H1.6665C1.22494 0.00138451 0.801866 0.177406 0.489636 0.489636C0.177406 0.801866 0.00138451 1.22494 0 1.6665V13.3335C0.00138451 13.7751 0.177406 14.1981 0.489636 14.5104C0.801866 14.8226 1.22494 14.9986 1.6665 15H13.3335C13.7751 14.9986 14.1981 14.8226 14.5104 14.5104C14.8226 14.1981 14.9986 13.7751 15 13.3335V6.66675H13.3335L13.3328 13.3335Z' fill='%23E0163C'/%3E%3C/svg%3E%0A");
}

@media only screen and (max-width: 1200px) {
    .budi-cf7 .budi-select-service__checkboxs .wpcf7-checkbox {
        column-gap: 10px;
    }

    .budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item {
        max-width: calc(50% - 10px + (10px / 2));
    }
}

@media only screen and (max-width: 1100px) {
    .budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item {
        max-width: 100%;
    }

    .budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item:nth-last-child(2) {
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    }
}

@media screen and (max-width: 767px) {
    .wpcf7 .wpcf7-checkbox{
        gap: 8px;
        flex-direction: column;
    }

    .budi-cf7 .budi-select-service__checkboxs .wpcf7-list-item input[type="checkbox"]{
        margin-left: 4px;
    }
}

/* Swiper Arrow New */
.budi-swiper-arrow-new {
    gap: 20px;
    margin-top: 45px;
}

.budi-swiper-arrow-new .swiper-arrow {
    width: 51px;
    height: 20px;
    left: 0;
    right: 0;
    opacity: 1;
    transition: all 0.3s ease;
}

.budi-swiper-arrow-new:has(.swiper-pagination-lock) {
    margin-top: 0 !important;
}

.budi-swiper-arrow-new .swiper-arrow:focus,
.budi-swiper-arrow-new .swiper-arrow:active,
.budi-swiper-arrow-new .swiper-arrow:focus-visible,
.budi-swiper-arrow-new .swiper-arrow:focus-within,
.budi-swiper-arrow-new .swiper-arrow {
    outline: 0;
    box-shadow: none;
}

.budi-swiper-arrow-new .swiper-arrow::after {
    display: none;
}

.budi-swiper-arrow-new .swiper-button-next {
    width: 67px;
    height: 25px;
    border: 2px solid transparent;
    background-clip: padding-box;
}

.budi-swiper-arrow-new .swiper-button-next svg {
    width: 67px;
    height: 25px;
}

.budi-swiper-arrow-new .swiper-button-next .progress-border {
    stroke-dasharray: 180;
    stroke-dashoffset: 180;
    transition: stroke-dashoffset 0.3s ease;
}

/* Swiper Pagination new */
.budi-swiper-arrow-new .swiper-pagination {
    width: auto !important;
    top: auto !important;
    bottom: auto !important;
    position: relative !important;
}

.budi-swiper-arrow-new .swiper-pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 2.5px;
    background-color: var(--color-sub);
    border: 0;
    border-radius: 10px;
    opacity: 1;
    transition: all 0.3s ease !important;
    opacity: 0.3;
    transform: scale(1);
}


/* Swiper bullet dynamic */
.budi-swiper-arrow-new .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 0 !important;
    transform: unset !important;
}

.budi-swiper-arrow-new .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 22px;
    background-color: var(--color-sub);
    opacity: 1;
    transform: scale(1);
}

/* =====================================
* Quick Menu
======================================== */
.budi-quick-menu__wrapper {
    z-index: 100000;
    padding: 20px 25px;
    bottom: -120px;
    left: 0;
    background-color: #ffffff;
    gap: 10px;
    box-shadow: 0px -3px 10px rgba(0, 0, 0, 0.1);
    opacity: 0;
    transition: all 0.3s ease;
}

body.budi-scrolled .budi-quick-menu__wrapper {
    bottom: 0;
    opacity: 1;
}

body.budi-scrolled .budi-quick-menu__wrapper.budi-quick-menu__hide {
    bottom: -120px;
    opacity: 0;
}

.budi-quick-menu-icon__wrapper {
    width: 100%;
    max-width: 44px;
    background-color: var(--color-sub);
    margin-bottom: 6px;
    margin-inline: auto;
    padding: 6px 10px;
    border-radius: 5px;
}

.budi-quick-menu__icon {
    width: 25px;
    height: 25px;
    object-fit: contain;
}

.budi-quick-menu__text {
    font-size: 12px;
}

@media only screen and (max-width: 360px) {
    .budi-quick-menu__wrapper {
        padding: 15px 20px;
    }
}