@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');

:root {
    --light-blue: #DDF0FF;
    --lighter-black: #181818;
    --darker-grey: #444;
    --text-grey: #A4A4A4;
    --text-grey-darker: #707070;


    /* Settings that can easily be overwritten by the clients: */
    --submit_btn: #0065b0;
    --main_color: #a5c43a;
    /* Hintergrund im DocumentUpload */
    --second_color: #a5c43a;

    --font_family: 'Montserrat', sans-serif;
    --font_letter_spacing: normal;

    /* border radius input fields (and frames) - originally 18px */
    --border_radius_input_fields: 18px;
    /* border radius buttons - originally 38px  */
    --border_radius_buttons: 38px;
    /* border colour input fields - originally #181818*/
    --border_color_formElements: #181818;

    /* font-weight for labels - originally 600*/
    --font_weight_labels: 600;
    /* font-size for labels - originally 14px */
    --font_size_labels: 14px;

    /* END ----- Settings  that can easily be overwritten by the clients */

    --third-color: #0065b0;
    --fourth-color: #0071BC;

    --header-menue-btn-txt-color: red;

    --header-btn-txt-color: #666;
    --header-btn-color: white;

    --header-active-btn-txt-color: white;
    --header-active-btn-color: #9E005D;

    --header-active-menu-btn-color: #B63F85;
    --header-disabled-btn-txt-color: #ccc;

    --steps-number-icon-color: #EBEBEB;
    --steps-number-icon-active-color: var(--main_color);
    --steps-number-txt-color: #D8D8D8;

    --helptext-icon-color: var(--main_color);
    --text-box-right-border-color: var(--main_color);
    --text-box-right-txt-color: var(--darker-grey);

    --error-tooltip-txt-color: #E02626;
    --error-tooltip-color: white;

    --tooltip-border-color: var(--main_color);

    --page-title-color: #7F7F7F;

    --rechner-btn-collor: var(--main_color);

    --vermitler-fon-txt-color: var(--fourth-color);
    --rbox-button-color: #444;

    --footer-color: #e6e6e6;
    --footer-line-color: var(--third-color);
    --footer-title-txt-color: #ADADAD;

    --empty-bankproduct-icon-color: var(--fourth-color);
    --default-border-color: var(--fourth-color);

    --table-header-cl-color: var(--fourth-color);
    --table-header-cl-txt-color: white;
    --table-even-row-color: var(--light-blue);

    --wave-negative-color: white;


}


#header {
    position: absolute;
    z-index: 100;
    height: 135px;
    left: 0;
    right: 0;
    top: 0;
    display: block;
    background-color: transparent;
}

#header .wrapper {
    width: 100%;
    max-width: 81.25rem;
    margin: 0 auto;
}

#header .header_logo_section {
    padding-right: 1.5625rem;
    padding-left: 1.5625rem;
}

#header .header_logo_section:before {
    content: "";
    background-image: url("/images/HeadLineBaufiserviceCurved4.png");
    position: absolute;
    min-height: 135px;
    max-height: 150px;
    height: 25vw;
    max-width: 1900px;
    top: 0;
    left: 0;
    right: 0;
    background-position: 50% 0;
    background-repeat: no-repeat;
    z-index: -1;
    margin: 0 auto;
}

#header .logo {
    display: inline-block;
    border: none;
    background: none;
    cursor: pointer;
    width: 25%;
    min-width: 200px;
}

#header .logo:hover {
    background: none;
}

#header .logo img {
    display: inline-block;
    vertical-align: middle;
    max-width: 100%;
    height: auto;
    float: left;
}

#header .form-header-wrapper {
    float: right;
    display: inline-block;
    text-align: right;
    margin: 10px 0;
}

#header span {
    color: inherit;
}

.ym-header-hlist {
    background-color: white;
}

.ym-header-hlist ul li button {
    border: 1px solid transparent;
    letter-spacing: 1px;
    font-size: 12px;
}

.ym-header-hlist ul li button,
.ym-header-hlist ul li button * {
    cursor: pointer;
}

.ym-header-hlist ul {
    padding: 0;
}

.ym-header-hlist ul li.active > button,
.ym-header-hlist ul li.disabled > button {
    cursor: initial;
}

.ym-header-hlist ul li.active {
    background-color: transparent;
}

.ym-header-hlist ul li > button,
.ym-header-hlist ul li:hover > button,
.ym-header-hlist ul li:focus > button,
.ym-header-hlist ul li.active > button,
.ym-header-hlist ul li.active:hover > button,
.ym-header-hlist ul li.active:focus > button,
.ym-header-hlist ul li.disabled > button,
.ym-header-hlist ul li.disabled:hover > button,
.ym-header-hlist ul li.disabled:focus > button {
    color: var(--header-btn-txt-color);
    text-shadow: none;
    background-color: var(--header-btn-color);
    font-weight: normal;
    border-radius: 0;
}

.ym-header-hlist ul li.active > button,
.ym-header-hlist ul li.active:hover > button,
.ym-header-hlist ul li.active:focus > button,
.ym-header-hlist ul li.active > button i,
.ym-header-hlist ul li:hover > button,
.ym-header-hlist ul li:focus > button,
.ym-header-hlist ul li:hover > button i,
.ym-header-hlist ul li:focus > button i,
.ym-header-hlist .ym-hlist-menu,
.ym-header-hlist .ym-hlist-menu ul li > button,
.ym-header-hlist .hlist-item-menu button.horizontal-sub-menue-toggler-open {
    color: var(--header-active-btn-txt-color);
    background-color: var(--header-active-btn-color);
}

.ym-header-hlist .ym-hlist-menu ul li:hover > button,
.ym-header-hlist .ym-hlist-menu ul li:focus > button,
.ym-header-hlist .ym-hlist-menu ul li.active > button,
.ym-header-hlist .ym-hlist-menu ul li.active:hover > button,
.ym-header-hlist .ym-hlist-menu ul li.active:focus > button {
    background: var(--header-active-menu-btn-color);
    background: rgba(255, 255, 255, 0.25);
}


.ym-header-hlist ul li.disabled > button,
.ym-header-hlist ul li.disabled:hover > button,
.ym-header-hlist ul li.disabled:focus > button,
.ym-header-hlist ul li.disabled > button i,
.ym-header-hlist ul li.disabled:hover > button i,
.ym-header-hlist ul li.disabled:focus > button i {
    color: var(--header-disabled-btn-txt-color);
    font-weight: normal;
    text-shadow: none;
}

.ym-header-hlist ul li button {
    display: inline-block;
}

#top-background-image {
    /*width: 1324px;*/
    height: 500px;
    position: absolute;
    left: 0;
    right: 0;
    z-index: -2;
    background-repeat: no-repeat;
    background-position: 50% 0;
    top: 0;
}

.top-background-image-index,
.top-background-image-landing_page1,
.top-background-image-landing_page2,
.top-background-image-landing_page3,
.top-background-image-landing_vergleich {
    background-image: url('/images/headgrafik_4.jpg');
}

.top-background-image-fp_0300,
.top-background-image-fp_0400,
.top-background-image-fp_0410,
.top-background-image-fp_0420,
.top-background-image-fp_0430,
.top-background-image-fp_0440,
.top-background-image-fp_0500,
.top-background-image-fp_0600,
.top-background-image-fp_0650,
.top-background-image-fp_2600,
.top-background-image-fp_2610,
.top-background-image-fp_0800,
.top-background-image-fp_0810,
.top-background-image-fp_0900,
.top-background-image-fp_1000,
.top-background-image-fp_1050,
.top-background-image-fp_1100,
.top-background-image-fp_1200,
.top-background-image-fp_1210,
.top-background-image-fp_1300,
.top-background-image-fp_zusammenfassung_uebergabe,
.top-background-image-fp_top_konditionen,
.top-background-image-danke,
.top-background-image-Finanzierungswunsch,
.top-background-image-PersAngabenQuick,
.top-background-image-KurzanfrageDanke,
.top-background-image-documentuploadinflow,
.top-background-image-documentupload,
.top-background-image-RechnerGrundbuch,
.top-background-image-RechnerWasLeisten,
.top-background-image-Terminvereinbarung,
.top-background-image-RechnerMietenKaufen,
.top-background-image-RechnerInvestition {
    background-image: url('/images/headgrafik_3.jpg');
}

.top-background-image-zinstabelle,
.top-background-image-TopKonditionenStandalone {
    background-image: url('/images/headgrafik_3.jpg');
}

.top-background-image-Kontaktformular {
    background-image: url('/images/headgrafik_8_a.jpg');
}

.top-background-image-fp_4900 {
    background-image: url('/images/headgrafik_5_a.jpg');
}

.top-background-image-fp_2200,
.top-background-image-fp_2300,
.top-background-image-customerLogout,
.top-background-image-PasswortVergessen {
    background-image: url('/images/headgrafik_2_a.jpg');
}

#footer .ym-grid-wrapper {
    padding: 20px 60px;
}


form[name="mainform"] {
    margin-top: 0;
    position: relative;
    background-color: transparent;
    padding: 100px 0 0 0;
}


#main {
    min-height: 320px;
    margin-top: -1px;
    background-color: transparent;
}

.ym-col3 {
    padding-right: 0;
}

.ym-col2 {
    right: -40px;
}

.heading, .page-title {
    line-height: 30px;
    color: var(--page-title-color);
    font-size: 26px;
    letter-spacing: 2px;
    margin: 35px 0 0 0;
    background: none;
    border: none;
    box-shadow: none;
    padding: 10px;
    text-transform: uppercase;
}

#nav {
    position: relative;
}

#nav .button_bar {
    padding: 0;
    background: transparent none repeat scroll 0 0;
    border: medium none;
    margin: 0;
    box-shadow: none;
    position: absolute;
    bottom: 30px;
    left: -60px;
    display: none;
}

.ym-form button:before, .ym-button:before {
    float: right;
}

.ym-wbox, #header, #main, #col3_content {
    padding: 0;
}

.fa-info-button-label::after {
    content: "\00a0 Fragen?";
}

#docUploader .x-form-file-input {
    height: 100%;
    width: 100%;
}

#docUploader .x-btn-inner {
    padding-left: 25px;
}

#ButtonCalculate {
    background-color: var(--rechner-btn-collor);
    border-color: var(--rechner-btn-collor) !important;
}

.variant-box:hover button, .ym-button:hover, .ym-form button:hover,
.ym-form input[type="button"]:hover, .ym-form input[type="reset"]:hover,
.ym-form input[type="submit"]:hover, .ym-button:focus, .ym-form button:focus,
.ym-form input[type="button"]:focus, .ym-form input[type="reset"]:focus,
.ym-form input[type="submit"]:focus, #ButtonCalculate:hover,
#ButtonCalculate:focus, #paymentconditionsWindow .x-btn:hover,
#paymentconditionsWindow .x-btn:focus,
#docUploader .x-btn:hover,
#docUploader .x-btn:focus {
    background-image: none;
    background-color: #000;
    filter: none;
}

.ym-form button:before, .ym-button:before {
    background: none !important;
    box-shadow: none;
    margin-right: 0.25em;
    margin-left: -0.75em;
}

button.buttonBearbeiten, button.buttonLoeschen {
    color: #444 !important;
}

#paymentconditionsWindow .x-btn-inner {
    color: #fff !important;
}

.variant-box:hover {
    background-color: #515151;
}

.variant-box:hover, .variant-box:hover h4 {
    color: #fff !important;
}

.ym-form .variant-box:hover label {
    color: #cecece !important;
}

.ym-form .box .ym-fbox-heading {
    margin: 0 0 29px;
}

.ym-offer-hlist ul li button,
.ym-offer-hlist ul li:hover button,
.ym-offer-hlist ul li:focus button,
.ym-offer-hlist ul li.active button,
.ym-offer-hlist ul li.active:hover button,
.ym-offer-hlist ul li.active:focus button,
.ym-offer-hlist ul li.disabled button,
.ym-offer-hlist ul li.disabled:hover button,
.ym-offer-hlist ul li.disabled:focus button {
    font-weight: normal;
    letter-spacing: 2px;
    padding-bottom: 1px;
}


#ButtonAngebotAnfordern, #ButtonZinstabelle {
    height: 48px;
    line-height: 48px;
    width: 250px;
    text-transform: uppercase;
    font-size: 120%;
}

#ButtonZinstabelle {
    width: 180px;
}

#ButtonZinstabelle.zinstabelle,
#ButtonZinstabelle.fp_0300,
#ButtonZinstabelle.fp_0400,
#ButtonZinstabelle.fp_0410,
#ButtonZinstabelle.fp_0420,
#ButtonZinstabelle.fp_0430,
#ButtonZinstabelle.fp_0440,
#ButtonZinstabelle.fp_0500,
#ButtonZinstabelle.fp_0600,
#ButtonZinstabelle.fp_0650,
#ButtonZinstabelle.fp_2600,
#ButtonZinstabelle.fp_2610,
#ButtonZinstabelle.fp_0800,
#ButtonZinstabelle.fp_0810,
#ButtonZinstabelle.fp_0900,
#ButtonZinstabelle.fp_1000,
#ButtonZinstabelle.fp_1050,
#ButtonZinstabelle.fp_1100,
#ButtonZinstabelle.fp_1200,
#ButtonZinstabelle.fp_1210,
#ButtonZinstabelle.fp_1300,
#ButtonZinstabelle.fp_zusammenfassung_uebergabe,
#ButtonZinstabelle.fp_top_konditionen,
#ButtonZinstabelle.landing_page1,
#ButtonZinstabelle.landing_page2,
#ButtonZinstabelle.landing_page3,
#ButtonZinstabelle.landing_vergleich,
#ButtonZinstabelle.Finanzierungswunsch,
#ButtonZinstabelle.PersAngabenQuick,
#ButtonZinstabelle.KurzanfrageDanke {
    display: none;
}


#nav .button_bar #ButtonAngebotAnfordern, #nav .button_bar #ButtonZinstabelle {
    background-color: var(--header-active-btn-color);
    border-radius: 5px 5px 0 0;
}

#nav .button_bar #ButtonZinstabelle {
    background-color: var(--rechner-btn-collor);
}

#main .page-title {
    display: none;
}

.ym-form {
    box-shadow: none;
}

.p-panel-content {
    background-color: white;
    border: none;
}

.ym-form .ym-fbox-footer {
    border: none;
    background: none;
}


#footer {
    position: absolute;
    left: 0;
    right: 0;
    margin-top: 2rem;
    background-color: var(--footer-color);
}

#footer .footer-line {
    background-color: var(--footer-line-color);
    height: 10rem;
}

#footer .anker-link-wrapper {
    margin-top: -130px;
    width: 100px;
    margin-left: auto;
    margin-right: auto;
    height: 130px;
}

#footer form {
    margin-left: auto;
    margin-right: auto;
}

#footer .box .ym-vtitle, #footer .footer-title {
    font-size: 18px;
    font-weight: normal;
    text-transform: uppercase;
    min-height: 34px;
    color: var(--footer-title-txt-color);
}

#footer .anker-link-wrapper i {
    font-size: 100px;
}


#footer .impressum-wrapper div:first-child {
    margin-top: 7px !important;
    padding-top: 0 !important;
}

#footer .box .ym-vlist li {
    background: none !important;
    margin: 1px 0;
}

#footer .box .vlist-item .vlist-button {
    border: 1px solid #4F4F4F;
    cursor: pointer;
}

#footer .box .vlist-item .active, #footer .box .vlist-item .vlist-button:hover {
    border-color: #A5A5A5;
}

.bankproduct-empty-icon {
    color: var(--empty-bankproduct-icon-color);
}

body .border-color-default {
    border-color: var(--default-border-color);
}

#footer .pk-flex {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    justify-content: flex-end;
}

#footer .footer-img-wrapper {
    min-width: 500px;
}

#footer .footer-img {
    background-image: url("/images/Baufiservice_csm_teaser_bottom_b5d9167b79.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position-y: bottom;
}

#footer .ym-grid-wrapper {
    margin: 0;
    padding: 0;
}


.pk-item-grow-1 {
    flex-grow: 1;
}

.pk-item {
    width: 400px;
    background-color: white;
    border: 1px solid rgba(0, 0, 0, 0.3);
    border-bottom: unset;
    box-shadow: 0 12px 18px -6px rgba(0, 0, 0, 0.3);
}

.pk-item .box {
    border-radius: unset;
    box-shadow: none;
    border: none;
}

.anschrift-wrapper-box {
    margin-right: 2rem;

}

/**
 * --------------------------------------------------------------------------------------------
 *
 * Tables | Tabellen
 *
 * (en) Generic classes for table-width and design definition
 * (de) Generische Klassen für die Tabellenbreite und Gestaltungsvorschriften für Tabellen
 *
 * @section content-tables
 */

.pk-ym-table-head .pk-ym-table-head-cl {
    background-color: var(--table-header-cl-color);
    color: var(--table-header-cl-txt-color);
}

.pk-ym-table-body .pk-ym-table-body-row:nth-child(even) {
    background-color: var(--table-even-row-color);
}

/*Überschriften auf der fp_1300*/
.ueberschriftMargin {
    padding: 0 0 0 0;
}


/********************* WAVY *************************************/
#wave-container {
    width: 100%;
    height: 100px;
    overflow: hidden;
}

#wave {
    display: block;
    position: relative;
    height: 40px;
    background: var(--wave-negative-color);
}

#wave:before {
    content: "";
    display: block;
    position: absolute;
    border-radius: 100%;
    width: 100%;
    height: 300px;
    background-color: var(--footer-color);
    right: -25%;
    top: 20px
}

#wave:after {
    content: "";
    display: block;
    position: absolute;
    border-radius: 100%;
    width: 100%;
    height: 300px;
    background-color: var(--wave-negative-color);
    left: -25%;
    top: -240px;
}

/****************************************************************/


@media screen and (max-width: 1023px) {
    body {
        -webkit-animation: bugfix infinite 1s;
    }

    @-webkit-keyframes bugfix {
        from {
            padding: 0;
        }
        to {
            padding: 0;
        }
    }
    .form-header-wrapper nav .horizontal-menue-toggler {
        display: inline-block;
        width: 100%;
    }

    .form-header-wrapper nav .horizontal-menue-toggler-label {
        display: inline-block;
        text-align: right;
        width: 100%;
    }

    .form-header-wrapper nav.ym-header-hlist .horizontal-menue-toggler-label:before,
    .form-header-wrapper nav.ym-header-hlist .horizontal-menue-toggler-label:after {
        content: 'MENÜ';
        font-family: FontAwesome !important;
        font-size: 20px;
        line-height: 20px;
        display: inline-block;
        color: var(--header-menue-btn-txt-color);
        padding: 3px 4px 3px 0;
        cursor: pointer;
        user-select: none;
    }

    .form-header-wrapper nav.ym-header-hlist .horizontal-menue-toggler-label:before {
        position: absolute;
        right: 22px;
        top: 0;
    }

    .form-header-wrapper nav.ym-header-hlist .horizontal-menue-toggler-label:after {
        padding-left: 3.3em;
        content: '\f0c9';
    }

    .ym-header-hlist {
        text-align: center;
        position: absolute;
        right: 2rem;
        width: 300px;
    }

    .ym-header-hlist > ul {
        display: none;
        width: 300px;
        box-shadow: 0 1px 15px #EBEBEB;

    }

    .ym-header-hlist ul li,
    .ym-header-hlist ul li button {
        width: 100%;
    }

    .ym-header-hlist .hlist-item-menu nav.ym-hlist-menu ul li {
        border-color: #fff;
    }

    .ym-header-hlist .hlist-item-menu nav.ym-hlist-menu ul li:last-child {
        border-bottom: none;
    }

    .form-header-wrapper nav.ym-header-hlist span.horizontal-menue-toggler-open:after {
        content: '\f00d';
    }

    .ym-hlist li.hlist-item-menu .ym-hlist-menu {
        position: relative;
        width: 100%;
        box-shadow: none;
    }

    form[name="mainform"], #footer .ym-grid-wrapper {
        padding-left: 0;
        padding-right: 0;
    }

    #contentform #nav .button_bar {
        left: 0
    }

}


/*************** new theme configurations ***********************/


body, h1, h2, h3, h4, h5, h6, body span, body p {
    font-family: var(--font_family);
    letter-spacing: var(--font_letter_spacing);
}


.horizontal-menue-toggler .hlist-button .fa-stack .item-number:before {
    font-family: var(--font_family) !important;
}

nav.ym-offer-hlist {
    border-bottom: 2px solid #EBEBEB;
    background-color: transparent;
    height: 2.5em;
    overflow: visible;
    margin-bottom: 30px;
    margin-top: 10px;
    float: none;
}

.horizontal-menue-toggler .hlist-button .fa-stack .fa-stack-2x {
    display: none;
}

.horizontal-menue-toggler .hlist-button .fa-stack {
    width: 5em;
    height: 5em;
}

.horizontal-menue-toggler .hlist-button .fa-stack .item-number {
    display: flex;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    font-size: 28px;
    text-shadow: none;
    align-items: center;
    justify-content: center;
    width: 80%;
    height: 80%;
    border-radius: 50%;
    background-color: var(--steps-number-icon-color);
}

.horizontal-menue-toggler .hlist-button.active .fa-stack .item-number {
    width: 100%;
    height: 100%;
    background-color: var(--steps-number-icon-active-color);
}

.horizontal-menue-toggler .hlist-button-label {
    text-shadow: none;
    color: var(--steps-number-txt-color);
}

.ym-form .lb-helptext-icon, .ym-form .lb-helptext-icon:hover {
    color: var(--helptext-icon-color);
}

.formlabel {
    margin-right: 30px;
    font-size: var(--font_size_labels);
    font-weight: var(--font_weight_labels);
    text-shadow: none;
}

.ym-form .ym-fbox, .ym-form .ym-fbox + .ym-fbox {
    margin-top: 2em;
}

.ym-g40.ym-grid.ym-gl select, .ym-fbox-text .formElement:not(textarea), .ym-gbox-text .formElement, .ym-fbox-select .formElement, .ym-fbox-select .formfeld {
    height: 38px;
}

.ym-g40.ym-grid.ym-gl select, .ym-fbox-text .formElement, .ym-gbox-text .formElement, .ym-fbox-select .formElement, .ym-fbox-select .formfeld {
    font-family: var(--font_family);
    font-size: 12px;
    border-radius: var(--border_radius_input_fields);
    padding: 0 32px 0 12px;
    box-shadow: none;
    border-color: var(--border_color_formElements);
    line-height: 100%;
    background-color: white;
    -webkit-appearance: none
}

.ym-offer-hlist ul li button, .ym-offer-hlist ul li:hover button, .ym-offer-hlist ul li:focus button, .ym-offer-hlist ul li.active button, .ym-offer-hlist ul li.active:hover button, .ym-offer-hlist ul li.active:focus button, .ym-offer-hlist ul li.disabled button, .ym-offer-hlist ul li.disabled:hover button, .ym-offer-hlist ul li.disabled:focus button {
    color: #888;
    text-shadow: 0 1px 0 #222;
    background-color: white;
    font-weight: bold;
}

.ym-fbox-text.text-right {
    padding: 0 32px 0 12px;
    height: 34px;
    border: 2px solid var(--text-box-right-border-color);
    border-radius: var(--border_radius_input_fields);
}

.ym-fbox-text.text-right span {
    top: 0;
    font-size: 12px;
    color: black;
    height: 100%;
    line-height: 100%;
    padding: 0;
    margin: 0;
    float: right;
    display: flex;
    align-items: center;
}

.ym-fbox-text.text-right .df-symbols {
    right: 1.3em;
    color: var(--text-box-right-txt-color);
}

.ym-fbox-text.text-right span {
    top: 0;
    font-size: 12px;
    color: black;
    height: 100%;
    line-height: 100%;
    padding: 0;
    margin: 0;
    float: right;
    display: flex;
    align-items: center;
}

.ym-fbox-text span.symbols {
    font-size: 12px;
    margin: 0 10px 0 0;
    height: 100%;
    line-height: 100%;
    display: flex;
    align-items: center;
    padding: 0;
    top: 0;
}

.ym-gbox-text span.symbols {
    padding: 0;
    height: 38px;
    top: 0;
    line-height: 38px;
    margin: 0 10px 0 0;
}


.ym-form .ff_notification_error-tooltip {
    display: table-cell;
    background-color: var(--error-tooltip-color);
    color: var(--error-tooltip-txt-color);
    white-space: inherit;
    border: none;
    box-shadow: none;
    padding: 12px 14px;
    border-radius: 6px;
}

.p-button.fa:before,
.p-button.ym-add:before {
    display: none;
}

.ym-g60 .ym-fbox-text textarea {
    padding-top: 8px;
}

.formElement.p-button, .formElement.p-button:focus, .formElement.p-button:hover, .formElement.p-button:active {
    font-family: var(--font_family);
    text-shadow: none;
    background: unset;
    border: 2px solid var(--lighter-black);
    border-radius: var(--border_radius_buttons);
    color: var(--lighter-black) !important;
    font-size: 15px;
    padding: 5px 49px;
    font-weight: bold;
    box-shadow: none;
    background-color: white;
}

#ButtonForward, #antrag_erfassen_button {
    border: 2px solid transparent;
    font-family: var(--font_family);
    background: var(--submit_btn);
    border-radius: var(--border_radius_buttons);
    text-shadow: none;
    font-size: 20px;
    padding: 4px 54px;
    font-weight: bold;
    color: white !important;
    box-shadow: none;
}

.tooltip {
    background-color: white;
    border: 2px solid var(--tooltip-border-color);
    box-shadow: none;
    color: #757575;
    border-radius: var(--border_radius_input_fields);
    padding: 15px;
    max-width: 165px;
    font-size: 11px;
}

#main > .ym-column {
    display: flex;
    flex-direction: column;
}


#main > .ym-column > .ym-col2 {
    position: unset;
    display: block;
    margin-top: 2em;
}

.contact-box-text h1 {
    font-weight: 900;
    font-size: 29px;
    color: #1E3836;
}

.p-panel, .ym-form .ym-fbox-footer, .p-panel-content {
    background: white;
    border: none;
    box-shadow: none;
}

.ym-g60.ym-gl.contact-box {
    margin-top: 2em;
    min-width: 330px;
}

.bottom-box-content {
    width: 100%;
    height: 190px;
    padding: 20px 0;
    border: 2px solid var(--main_color);
    border-radius: var(--border_radius_input_fields);
}

.bottom-box .bottom-box-content .vermittler-fon:before {
    color: var(--text-grey);
    font-family: 'FontAwesome';
    content: "\f095";
    margin-right: 8px;
    vertical-align: baseline;
    color: var(--darker-grey);
}

.bottom-box-content .vermittler-bild {
    float: left;
    margin: 0;
    height: 100%;
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bottom-box-content p {
    width: 50%;
    float: right;
    font-weight: 500;
}

.bottom-box-content p:not(.vermittler-bild) {
    font-size: 11px;
}

.bottom-box .bottom-box-content .vermittler-name {
    margin-top: 37px;
    margin-bottom: 2px;
    font-size: 19px;
}

.vermittler-email a,
.vermittler-email a:hover,
.vermittler-email a:active,
.vermittler-email a:focus,
.vermittler-fon a,
.vermittler-fon a:hover,
.vermittler-fon a:active,
.vermittler-fon a:focus {
    color: var(--darker-grey);
    background-color: unset;
}


.ym-form input:focus,
.ym-form select:focus,
.ym-form textarea:focus,
.ym-form input:hover,
.ym-form select:hover,
.ym-form textarea:hover,
.ym-form input:active,
.ym-form select:active,
.ym-form textarea:active {
    border: 2px var(--submit_btn) solid;
}

.ym-form .ym-fbox, .ym-form .ym-fbox + .ym-fbox {
    margin-top: 2em;
}

.box {
    background-color: #FFFFFF;
    border: none !important;
    box-shadow: none;
    border-radius: unset;
}

.note {
    background: transparent;
    color: var(--darker-grey);
    border-width: 3px 3px 3px 10px !important;
    border-style: solid !important;
    border-color: var(--main_color) !important;
    border-radius: 6px 0.5em 0.5em 6px !important;
}

.p-panel.ym-columnar.ym-form.linearize-form #b2c_calendar .ym-g50.ym-gl {
    width: 100%;
    margin-top: 1.6em;
}

.b2c-calender-table-body-content {
    max-width: 500px;
}

.p-panel.ym-columnar.ym-form.linearize-form .b2c-calender-table-column {
    height: 100%;
    min-height: 400px;
    overflow-y: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.p-panel.ym-columnar.ym-form.linearize-form .b2c-calender-table-cell-header {
    background-color: white;
    color: var(--darker-grey);
}

.p-panel.ym-columnar.ym-form.linearize-form .b2c-calender-table-cell-header .next-day-chooser i, .p-panel.ym-columnar.ym-form.linearize-form .b2c-calender-table-cell-header .before-day-chooser i {
    padding-top: 2px;
}

.p-panel.ym-columnar.ym-form.linearize-form .b2c-calender-table-cell-header .before-day-chooser i:before {
    font-family: FontAwesome;
    content: '\f053';
    font-size: 15px;
    vertical-align: middle;
}

.p-panel.ym-columnar.ym-form.linearize-form .b2c-calender-table-cell-header .b2c-calender-table-cell-header-content {
    font-weight: 500;
}

.p-panel.ym-columnar.ym-form.linearize-form .b2c-calender-table-cell-header .next-day-chooser i:before {
    font-family: FontAwesome;
    content: '\f054';
    font-size: 15px;
    vertical-align: middle;
}

.p-panel.ym-columnar.ym-form.linearize-form .b2c-calender-table-cell {
    min-width: unset;
    background: white;
    border: 1px solid var(--main_color);
    color: var(--submit_btn);
    font-weight: 600;
    border-radius: 8px;
    padding: 0;
    margin-bottom: 8px;
}

.p-panel.ym-columnar.ym-form.linearize-form .b2c-calender-table-cell .fa-square-o {
    display: none;
}

.b2c-calender .dialog .dialog-content .p-button-cancel, .b2c-calender .dialog .dialog-content .p-button-cancel:hover, .b2c-calender .dialog .dialog-content .p-button-cancel:focus {
    background-color: white;
    padding: 3px 30px;
}

.b2c-calender .dialog .dialog-content .p-button-confirm, .b2c-calender .dialog .dialog-content .p-button-confirm:hover, .b2c-calender .dialog .dialog-content .p-button-confirm:focus {
    background-color: var(--submit_btn);
    color: white !important;
    padding: 3px 30px;
    border-color: transparent;
}

.ym-fbox-footer.ym-fbox-button .formElement.p-button {
    font-size: 20px;
    padding: 4px 54px;
}

.ym-g40.ym-gl.ym-full .ym-fbox-text .formElement, .ym-g50.ym-gr .ym-fbox-text .formElement {
    padding-right: 39px;
}

label > .label-wrapper:not(:only-child):first-child span.formlabel {
    margin-right: 0;
}

.ueberschriftMargin.completionBox {
    background: transparent;
    color: var(--darker-grey);
    border-width: 3px 3px 3px 10px !important;
    border-style: solid !important;
    border-color: var(--main_color) !important;
    border-radius: 6px 0.5em 0.5em 6px !important;
    width: fit-content;
}


.ueberschriftMargin {
    padding-left: 1em;
    padding-top: 0.5em;
}

#paymentconditions .x-box-inner {
    height: 28px !important;
}

#paymentconditions .x-column-header {
    background-color: unset;
    height: 28px !important;
}

#paymentconditions .x-column-header-text-container {
    border-right: none;
}

#paymentconditions .Prokonzept-widget7-PaymentConditions-Table {
    border: 1px solid #707070;
    border-radius: var(--border_radius_input_fields);
    padding: 0;
}

#paymentconditions .x-column-header .x-column-header-text-inner {
    color: black;
    font-size: 12px;
}

.documents-upload #docUploader .x-grid-header-ct.x-docked.x-grid-header-ct-default, #paymentconditions .x-column-header-trigger, #paymentconditions .x-panel-header.x-header-noborder {
    display: none;
}

#paymentconditions .x-grid-header-ct {
    background-color: var(--second_color);
    left: 0 !important;
    height: 28px !important;
}

#paymentconditions .x-btn-inner.x-btn-inner-default-small {
    color: black;
    font-family: var(--font_family);
}

.loadmask-msg {
    border: 2px var(--main_color) solid;
    background-color: rgba(255, 255, 255, 0.5);
    box-shadow: none;
    border-radius: var(--border_radius_input_fields);
}

.loadmask-msg div {
    border: unset;
    border-radius: var(--border_radius_input_fields);
    background-color: rgba(255, 255, 255, 0.5);
}

#mietdauer.formfeld {
    padding-right: 56px;
}

@media screen and (min-width: 1025px) {
    .ym-form.linearize-form .ym-fbox .heading {
        font-weight: 900;
        font-size: 29px;
        color: #1E3836;
    }
}

@media screen and (max-width: 760px) {
    .linearize-level-1 > [class*="ym-c"] > [class*="ym-cbox"], .linearize-level-1 > [class*="ym-g"] > [class*="ym-gbox"] {
        padding: 3px !important;
    }
}

@media screen and (max-width: 653px) {
    #contentform #nav {
        margin-bottom: 20px;
    }
}

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

    #indexNavigation, #indexCustomerLoginNavigation {
        width: auto;
        max-width: 300px;
        background-color: transparent;
    }

    #indexNavigation-toggler-menue {
        background-color: white;
    }

    .ym-fbox-footer.ym-fbox-button .formElement.p-button {
        font-size: 3.5vw !important;
        padding: 4px 9vw !important;
    }

    .ym-offer-hlist ul li button .hlist-button-label {
        font-size: 3vw;
    }

    .horizontal-menue-toggler .hlist-button .fa-stack {
        width: 3rem;
        height: 3rem;
    }

    .horizontal-menue-toggler .hlist-button .fa-stack .item-number {
        font-size: 4vw;
    }

    .page-title {
        font-size: 5vw;
    }

    .formElement.p-button, .formElement.p-button:focus, .formElement.p-button:hover, .formElement.p-button:active {
        padding-left: 9vw;
        padding-right: 9vw;
        width: auto !important;
    }


    #impressum-wrapper {
        width: 95% !important;
    }

}
