/* Allgemeine Einstellungen */

:root {
    --body: #17313A;
    --primary: #000000;
    --secondary: #0071B6;
    --tertiary: #00568A;
    --quartary: #F6F6F6;
    --lighter: #F3FAFA;
    --darker: #333;
    --grey: #666;
    /* --lightgrey: #999; */
    --lightgrey: #F8F8F8;
    --darkgrey: #333;
    --altgrey: #999;
    --white: #fff;
    --black: #000;
    --alternative: #ccc;
    --link: #0071B6;
    --subheadline: #999;

    --box-shadow: 0 2px 25px 0 rgba(0, 0, 0, 0.1);
    --gradient: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.44) 63.99%, rgba(0, 0, 0, 0.6) 100%);

    --transition-function: cubic-bezier(0.77, 0, 0.175, 1);
    --transition-duration: 0.3s;
    --transition-all: all var(--transition-duration) var(--transition-function);

    /* --max-width: 1273px; */
    --max-width: 1360px;
    --wide: 1056px;
    --narrow: 838px;
    --narrower: 555px;

    --primary_font: 'Montserrat';
    --secondary_font: 'Archivo';

    --sp-sections-desktop: 120px;
    --sp-sections-mobile: 70px;

    --border-color: #eee;
    --border-radius: 23px;

    --gap: 25px;
}

::selection {
    background: var(--secondary);
}

::selection {
    color: var(--white);
}

body {
    font-style: normal;
    color: var(--body);
}

body {
    font-family: var(--primary_font);
    font-size: 18px;
    letter-spacing: 0;
    line-height: 25px;
    font-weight: 300;
}

p, ul li {
    color: var(--grey);
    font-family: Montserrat;
    font-size: 16px;
    line-height: 26px;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--secondary_font);
    color: var(--primary);
    -moz-hyphens: unset;
    hyphens: unset;
}

h1 {
    font-family: var(--secondary_font);
    color: var(--primary);
    font-size: 48px;
    letter-spacing: 0;
    font-weight: bold;
    line-height: 56px;
    text-transform: uppercase;
}

h2,
.et_pb_column_2_5 h2 {
    font-size: 48px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 56px;
    text-transform: uppercase;
    padding-bottom: 20px;
}

.et_pb_blurb_description .like_h2 {
    font-size: 18px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 28px;
    text-transform: none;
}

h3, .like_h3 {
    font-size: 28px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 34px;
    text-transform: uppercase;
}

.download_module .et_pb_module .et_pb_blurb_content .et_pb_blurb_container .et_pb_module_header span {
    font-size: 18px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 28px;
    font-family: var(--secondary_font);
    color: var(--primary);
    hyphens: unset;
}

h3.like_h4 {
    font-size: 21px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 28px;
}

h4 {
    font-size: 21px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 28px;
}

#service h2 {
    padding-bottom: 80px;
}

@media only screen and ( max-width: 768px ) {
    #service h2 {
        padding-bottom: 0;
    }
}

#service h3 {
    padding-bottom: 0;
}

.contact h2,
.contact p {
    color: var(--white);
}

.contact_icons_wrapper a {
    color: var(--link);
    font-family: Montserrat;
    font-size: 16px;
    font-weight: bold;
    line-height: 26px;
    padding-left: 15px;
}

.contact_icons_wrapper:first-child {
    padding-bottom: 15px;
}

div.subheadline {
    color: var(--subheadline);
    font-family: Archivo;
    font-size: 32px;
    line-height: 35px;
}

div.blockquote {
    color: var(--primary);
    font-family: Archivo;
    font-size: 28px;
    line-height: 34px;
    font-weight: 900;
    margin-bottom: 20px;
    text-transform: uppercase;
}

.contact div.contact_subheadline {
    font-family: Archivo;
    font-size: 32px;
    line-height: 35px;
}

#effords_boxes div.et_pb_blurb_container h2 {
    color: #666;
    font-family: Montserrat;
    font-size: 16px;
    line-height: 26px;
    text-align: center;
    text-transform: none;
    font-weight: 200;
}

.et_pb_blurb_content {
    max-width: 550px;
    margin: 0 auto;
    position: relative;
    text-align: center;
    display: table;
    width: 100%;
}

.et_pb_main_blurb_image {
    display: inline-block;
    margin-bottom: 30px;
    line-height: 0;
    max-width: 100%;
}

.et_pb_blurb .et_pb_image_wrap {
    display: block;
    margin: auto;
}

.et_pb_animation_top.et-animated {
    opacity: 1;
    animation: fadeTop 1s cubic-bezier(.77, 0, .175, 1) 1;
}

/*
@media only screen and ( min-width: 768px ) and ( max-width: 980px ) {
    h1 {
        font-size: 40px;
        line-height: 52px;
    }

    h2 {
        font-size: 34px;
        line-height: 46px;
    }

    h3, .like_h3 {
        font-size: 26px;
        line-height: 33px;
    }

    h4 {
        font-size: 24px;
        line-height: 31px;
    }
}
 */

@media only screen and ( max-width: 767px ) {
    h1 {
        hyphens: auto;
        -moz-hyphens: auto;
    }
}

/* @media only screen and ( min-width: 480px ) and ( max-width: 767px ) { */
@media only screen and ( max-width: 768px ) {
    h1 {
        /*
        font-size: 36px;
        line-height: 46px;
         */
        font-size: 42px;
        line-height: 50px;
    }

    h2, .et_pb_column_2_5 h2 {
        /*
        font-size: 32px;
        line-height: 44px;
        */
        font-size: 36px;
        line-height: 46px;
    }

    h3 {
        /*
        font-size: 26px;
        line-height: 38px;
        */
        font-size: 28px;
        line-height: 34px;
    }

    h3.like_h4 {
        font-size: 21px;
        line-height: 28px;
    }

    h4 {
        /*
        font-size: 24px;
        line-height: 35px;
        */
        font-size: 21px;
        line-height: 28px;
    }

    div.subheadline {
        font-size: 25px;
        line-height: 27px;
        padding-bottom: 10px;
    }

    p {
        padding-bottom: 0;
    }
}

/*
@media only screen and ( max-width: 479px ) {
    h1 {
        font-size: 28px;
        line-height: 32px;
    }

    h2 {
        font-size: 26px;
        line-height: 30px;
    }

    h3, .like_h3 {
        font-size: 24px;
        line-height: 31px;
    }

    h4 {
        font-size: 22px;
        line-height: 28px;
    }
}
*/

a {
    color: var(--primary);
}

.narrow {
    max-width: var(--narrow);
    margin: 0 auto;
}

.wide {
    max-width: var(--wide);
    margin: 0 auto;
}

.centered {
    text-align: center;
}

.fullwidth {
    width: 100%;
    max-width: unset;
}

.vertical-align {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.equal-height {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    direction: ltr;
}

#errorcode {
    font-size: 4.5em;
    color: var(--white);
    font-weight: 600;
    margin-bottom: 50px;
}

@media only screen and ( max-width: 767px ) {
    #errorcode {
        font-size: 2.5em;
        line-height: 1.1em;
    }
}

.not-found-title {
    color: var(--body);
    font-size: 2em;
    line-height: 1.2em;
}

.not_found .entry {
    margin-bottom: 50px;
}

/*================================================
    Layout
================================================*/

#main-header .container.et_menu_container {
    max-width: var(--max-width);
}

.et_pb_section .et_pb_row {
    padding: 0;
    max-width: var(--max-width);
}

.et_pb_section.section_full-width .et_pb_row {
    max-width: unset;
    margin: 0;
    width: 100%;
}

/* column styles */
@media (min-width: 981px) {
    .et_pb_section .et_pb_row .et_pb_column {
        /* margin-right: 2.5%; */
    }

    #leistungen_buttons .et_pb_row .et_pb_column_1_2,
    .last_section .et_pb_row .et_pb_column_1_2 {
        width: 40%;
    }

    #leistungen_buttons .et_pb_row .et_pb_column,
    .effords_last_section .et_pb_row .et_pb_column {
        margin-right: 20%;
    }

    /* 6-1-5 grid */
    .et_pb_row.left_long_column .et_pb_column:first-child {
        /*
        width: 50%;
        margin-right: 10%;
        */
        width: 47.25%;
        margin-right: 13.375%;
    }

    .et_pb_row.left_long_column .et-last-child {
        /* width: 40%; */
        width: 39.375%;
    }

    /* 5-1-6 grid */
    .et_pb_row.right_long_column .et_pb_column:first-child {
        /*
        width: 40%;
        margin-right: 10% !important;
         */
        width: 39.375%;
        margin-right: 13.375%;
    }

    .et_pb_row.right_long_column .et-last-child {
        /* width: 50%; */
        width: 47.25%;
    }

    .et_pb_row.left_long_column,
    .et_pb_row.right_long_column {
        display: flex;
        align-items: center;
    }

    /* 2-8-2 grid */
    .centered_element.et_pb_row {
        max-width: 900px;
        padding: 0;
        margin: 0 auto;
    }

    .et_pb_section .centered_element.et_pb_row .et_pb_module {
        margin-bottom: 52px;
    }

    /* corresponds with 2 8 2 grid */
    .centered .et_pb_row {
        max-width: 900px;
        margin: 0 auto;
    }

    /*************** Spacing *****************/
    /* Startseite Leistungs Boxen */
    /*
    .et_pb_section.effords_first_section,
    .et_pb_section.effords_second_section {
        padding-top: 160px;
        padding-bottom: 0;
    }

    .et_pb_section.effords_last_section {
        padding: 160px 0;
    }
    */
    .et_pb_section {
        padding: 160px 0 !important;
    }

    .et_pb_section.no_top_space {
        padding-top: 0 !important;
    }

    /* Effords Section */
    .et_pb_section.effords_second_section {
        padding: 0 !important;
    }

    /* Quote Section */
    /* Contact Module */
    /* Career With Background */
    .et_pb_section.quote-section_large,
    .et_pb_section.contact-section_large,
    .et_pb_section.section_with-background.light-grey {
        padding: 120px 0 !important;
    }

    /* service Module */
    .et_pb_section#service {
        padding: 160px 0;
    }

    /* References */
    .et_pb_section#references {
        padding-top: 160px;
        padding-bottom: 0 !important;
    }

    /* Service */
    .et_pb_gutters3 .et_pb_column_4_4 .et_pb_module {
        margin-bottom: 20px;
    }

    /* Career */
    .et_pb_section.career_second_section {
        padding-top: 0 !important;
    }

    /* About Us */
    .et_pb_section.centered_element {
        padding-top: 0 !important;
        padding-bottom: 180px !important;
    }

    /* Abouts Us - Downloads Section */
    .downloads_module_section.et_pb_section {
        padding-top: 100px !important;
        padding-bottom: 0 !important;
    }

    /* Downloads */
    .et_pb_section.downloads_page_section {
        padding-top: 0 !important;
    }

    .et_pb_section.downloads_page_section:last-child {
        padding-bottom: 0 !important;
    }

    /* Contact Icons */
    .et_pb_column .contact_icons.et_pb_module {
        margin-bottom: 60px;
    }

    /* Google Map */
    .et_pb_section.map-section {
        padding: 0 !important;
    }

    /* Footer */
    footer .et_pb_section {
        padding: 80px 0 !important;
    }

    /* Addiditional Content */
    /*
    #additional_content.et_pb_section {
        padding: 0 !important;
    }
    */
    /******************************************/
}

/* Section paddings */
/*
@media only screen and (min-width: 1350px) {
    .et_pb_section_1 {
        padding: 160px 0 !important;
    }

    .et_pb_section_2 {
        padding: 0 !important;
    }

    .et_pb_section_3 {
        padding: 160px 0 !important;
    }
}
*/

.et_pb_row.headline {
    padding-bottom: 60px;
}

/* mobile layout */
@media only screen and ( max-width: 980px ) {

    .et_pb_section {
        padding: 100px 0;
    }

    .et_pb_column .contact_icons.et_pb_module {
        margin-bottom: 60px;
    }

    #cf7md-form .mdc-layout-grid .mdc-layout-grid__inner .cf7md-item {
        padding-left: 0 !important;
    }

    #cf7md-form .mdc-layout-grid .mdc-layout-grid__inner .cf7md-item.cf7md-textarea {
        margin-bottom: 50px;
    }

    .et_pb_section.effords_first_section {
        padding-bottom: 80px;
    }

    .et_pb_section.effords_second_section,
    .et_pb_section.map-section {
        padding: 0;
    }

    .wpcf7 {
        padding-top: 90px;
    }

    .et_pb_section#service,
    .et_pb_section.section_with-background.quote-section_large,
    .et_pb_section.effords_last_section {
        padding: 100px 0;
    }

    .et_pb_section#references {
        padding-top: 100px;
        padding-bottom: 60px;
    }

    .et_pb_section.mobile_stage,
    .et_pb_section#references .et_pb_row.headline,
    .et_pb_section.downloads_module_section,
    .et_pb_section .et_pb_row.right_long_column {
        padding-bottom: 0;
    }

    .et_pb_section#references .et_pb_row.headline .et_pb_column {
        margin-bottom: 40px;
    }

    #additional_content.et_pb_section {
        padding-top: 60px !important;
        padding-bottom: 100px;
    }

    .et_pb_section.section_with-background.light-grey.partners {
        padding-bottom: 100px;
    }

    .et_pb_section.section_with-background.contact-section_large {
        padding-top: var(--sp-sections-mobile);
        padding-bottom: var(--sp-sections-mobile);
    }

    .et_pb_section.et_pb_section.centered_element,
    .et_pb_section.career_second_section,
    .et_pb_section.no_top_space {
        padding-top: 0;
    }

    .et_pb_section.no_top_space .et_pb_row.right_long_column .et_pb_column:first-child {
        padding-top: 40px;
    }

    .history_slider .dica-container .swiper-pagination {
        padding-top: 0 !important;
    }

    .et_pb_section.career_second_section .et_pb_row,
    .et_pb_section .et_pb_row.effords_boxes_column,
    .et_pb_section .et_pb_row.right_long_column {
        display: flex;
        flex-direction: column-reverse;
    }

    .et_pb_section .et_pb_row.effords_boxes_column .et_pb_column {
        margin-bottom: 0;
    }

    .et_pb_section .et_pb_row.effords_boxes_column .et_pb_column .et_pb_text {
        margin-bottom: 28px;
    }

    .et_pb_section.career_second_section .et_pb_row .et_pb_column:first-child {
        margin-top: 40px;
        margin-bottom: 0;
    }

    .et_pb_section.section_with-background.light-grey {
        padding: 60px 0;
    }

    /* Downloads */
    .et_pb_section .et_pb_row .et_pb_column .et_pb_code_inner .downloads_page_section:nth-child(odd) {
        padding: 0;
    }

    .et_pb_section .et_pb_row .et_pb_column .et_pb_code_inner .downloads_page_section:last-child {
        padding-bottom: 0;
    }

    .et_pb_section .et_pb_row .et_pb_column .et_pb_code_inner .downloads_page_section .et_pb_row {
        width: 100%;
    }

    .fittings_slider.dica_divi_carousel .et_pb_module_inner .dica-container .swiper-container .swiper-wrapper
    .dica_divi_carouselitem .et_pb_module_inner .dica-item {
        width: 100% !important;
    }

    footer .et_pb_section {
        padding: 43px 0;
    }
}

/*================================================
    Sections with Background
================================================*/
/*
@media only screen and (min-width: 1101px) {
    .et_pb_section.section_with-background {
        padding-top: var(--sp-sections-desktop);
        padding-bottom: var(--sp-sections-desktop);
        margin-top: 0;
        margin-bottom: 0;
    }

    .et_pb_section.section_with-background.light-grey {
        background-color: #f8f8f8;
    }

    .et_pb_section.section_with-background.blue {
        background-color: var(--secondary);
        color: var(--white);
    }
}
*/

.et_pb_section.section_with-background {
    padding-top: var(--sp-sections-desktop);
    padding-bottom: var(--sp-sections-desktop);
    margin-top: 0;
    margin-bottom: 0;
}

.et_pb_section.section_with-background.light-grey {
    background-color: #f8f8f8;
}

.et_pb_section.section_with-background.blue {
    background-color: var(--secondary);
    color: var(--white);
}

/*================================================
    Snippets
================================================*/

.et-search-form, .et_mobile_menu, .footer-widget li:before, .nav li ul, blockquote {
    border-color: var(--primary);
}

#et_search_icon:hover, #top-menu li.current-menu-ancestor > a, #top-menu li.current-menu-item > a, .bottom-nav li.current-menu-item > a, .comment-reply-link, .entry-summary p.price ins, .et-social-icon a:hover, .et_password_protected_form .et_submit_button, .footer-widget h4, .form-submit .et_pb_button, .mobile_menu_bar:after, .mobile_menu_bar:before, .nav-single a, .posted_in a, .woocommerce #content div.product p.price, .woocommerce #content div.product span.price, .woocommerce #content input.button, .woocommerce #content input.button.alt, .woocommerce #content input.button.alt:hover, .woocommerce #content input.button:hover, .woocommerce #respond input#submit, .woocommerce #respond input#submit.alt, .woocommerce #respond input#submit.alt:hover, .woocommerce #respond input#submit:hover, .woocommerce-page #content div.product p.price, .woocommerce-page #content div.product span.price, .woocommerce-page #content input.button, .woocommerce-page #content input.button.alt, .woocommerce-page #content input.button.alt:hover, .woocommerce-page #respond input#submit, .woocommerce-page #respond input#submit.alt, .woocommerce-page #respond input#submit.alt:hover, .woocommerce-page #respond input#submit:hover, .woocommerce-page .star-rating span:before, .woocommerce-page a.button, .woocommerce-page a.button.alt, .woocommerce-page a.button.alt:hover, .woocommerce-page a.button:hover, .woocommerce-page button.button, .woocommerce-page button.button.alt, .woocommerce-page button.button.alt.disabled, .woocommerce-page button.button.alt.disabled:hover, .woocommerce-page button.button.alt:hover, .woocommerce-page button.button:hover, .woocommerce-page div.product p.price, .woocommerce-page div.product span.price, .woocommerce-page input.button, .woocommerce-page input.button.alt, .woocommerce-page input.button.alt:hover, .woocommerce-page input.button:hover, .woocommerce .star-rating span:before, .woocommerce a.button, .woocommerce a.button.alt, .woocommerce a.button.alt:hover, .woocommerce a.button:hover, .woocommerce button.button, .woocommerce button.button.alt, .woocommerce button.button.alt.disabled, .woocommerce button.button.alt.disabled:hover, .woocommerce button.button.alt:hover, .woocommerce div.product p.price, .woocommerce div.product span.price, .woocommerce input.button, .woocommerce input.button.alt, .woocommerce input.button.alt:hover, .woocommerce input.button:hover, .wp-pagenavi a:hover, .wp-pagenavi span.current {
    color: var(--primary);
}

.et_overlay:before, .et_pb_bg_layout_light.et_pb_module.et_pb_button, .et_pb_bg_layout_light .et_pb_more_button, .et_pb_bg_layout_light .et_pb_newsletter_button, .et_pb_bg_layout_light .et_pb_promo_button, .et_pb_contact_submit, .et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active, .et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active, .et_pb_gallery .et_pb_gallery_pagination ul li a.active, .et_pb_member_social_links a:hover, .et_pb_pricing_table_button, .et_pb_pricing li a, .et_pb_sum {
    color: var(--primary);
}

.et-db #et-boc .et-l .et_overlay:before, .et-db #et-boc .et-l .et_pb_bg_layout_light.et_pb_module.et_pb_button, .et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_more_button, .et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_newsletter_button, .et-db #et-boc .et-l .et_pb_bg_layout_light .et_pb_promo_button, .et-db #et-boc .et-l .et_pb_contact_submit, .et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active, .et-db #et-boc .et-l .et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active, .et-db #et-boc .et-l .et_pb_gallery .et_pb_gallery_pagination ul li a.active, .et-db #et-boc .et-l .et_pb_member_social_links a:hover, .et-db #et-boc .et-l .et_pb_pricing_table_button, .et-db #et-boc .et-l .et_pb_pricing li a, .et-db #et-boc .et-l .et_pb_sum {
    color: var(--primary);
}

input.text, input.title, input[type=email], input[type=password], input[type=tel], input[type=text], select, textarea {
    border: 2px solid var(--primary);
    border-radius: var(--border-radius);
}


/*================================================
    .more Links
================================================*/

a.more, a.read-more,
article .dgbm_blog_module .dgbm_post_item .dg_read_more_wrapper a {
    font-family: var(--secondary_font);
    color: var(--secondary);
    font-size: 14px;
    letter-spacing: 0;
    line-height: 15px;
    font-weight: bold;
    position: relative;
}

a.read-more:after,
.et_pb_blurb_description a:after,
article .dgbm_blog_module .dgbm_post_item .dg_read_more_wrapper a:after {
    content: unset;
}

a.more::after {
    content: "";
    position: absolute;
    bottom: -4px;
    background: var(--secondary);
    height: 2px;
    left: 0;
    width: 100%;
}

/*================================================
    Buttons
================================================*/

button, button:hover,
.et_pb_button, .et_pb_button:hover,
.et_pb_module .et_pb_button, .et_pb_module .et_pb_button:hover,
.btn-primary, .btn-primary:hover,
.btn-secondary, .btn-secondary:hover,
.btn-transparent, .btn-transparent:hover,
.leistungsbox .et_pb_blurb_description a,
#blog article a.more-link,
#news article a.more-link,
#related article a.more-link {
    /* padding: 10px 20px; */
    /* border-radius: var(--border-radius); */
    border-radius: unset;
    padding: 15px;
    -webkit-transition: all .2s;
    transition: all .2s;
    font-size: 16px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 17px;
    text-transform: uppercase;
    font-family: var(--secondary_font);
}

.et_pb_button, .et_pb_button:hover,
.et_pb_module .et_pb_button, .et_pb_module .et_pb_button:hover,
.btn-primary, .btn-primary:hover,
.btn-secondary, .btn-secondary:hover,
.btn-transparent, .btn-transparent:hover,
.leistungsbox .et_pb_blurb_description a,
#blog article a.more-link,
#news article a.more-link,
#related article a.more-link {
    /* box-shadow: 0 2px 14px 0 rgba(0, 0, 0, 0.1); */
}

.et_pb_button:before, .et_pb_button:after,
.leistungsbox .et_pb_blurb_description a:before, .leistungsbox .et_pb_blurb_description a:after {
    display: none;
}

.btn-primary,
.et_pb_bg_layout_light.btn-primary {
    color: var(--white);
    background-color: var(--secondary);
    border: 2px solid var(--secondary);
}

.btn-primary:hover,
.et_pb_bg_layout_light.btn-primary:hover {
    /* filter: brightness(90%); */
    color: var(--white);
    background-color: var(--tertiary);
    border: 2px solid var(--tertiary);
}

.btn-secondary,
.et_pb_bg_layout_light.btn-secondary,
.leistungsbox .et_pb_blurb_description a {
    color: var(--secondary);
    background: var(--white);
    border: 2px solid var(--secondary);
}

.btn-secondary:hover,
.et_pb_bg_layout_light.btn-secondary.et_pb_button:hover,
.leistungsbox .et_pb_blurb_description a:hover {
    /* filter: brightness(90%); */
    color: var(--white);
    background-color: var(--secondary);
    border: 2px solid var(--secondary);
}

.btn-transparent,
.et_pb_bg_layout_light.btn-transparent.et_pb_button,
#blog article a.more-link,
#news article a.more-link {
    color: var(--primary);
    background-color: unset;
    border: 2px solid var(--primary);
    box-shadow: unset;
}

.btn-transparent:hover,
.et_pb_bg_layout_light.btn-transparent.et_pb_button:hover {
    filter: brightness(90%);
    color: var(--white);
    background-color: var(--primary);
    border: 2px solid var(--primary);
    box-shadow: var(--secondary-shadow);
}

/* contact module button */
.contact .btn-primary,
.contact .btn-primary:hover {
    border: 2px solid var(--white);
}

.btn-white,
.et_pb_bg_layout_light.btn-white {
    color: var(--black);
    background-color: var(--white);
    border: 2px solid var(--white);
}

.btn-white:hover,
.et_pb_bg_layout_light.btn-white:hover {
    filter: brightness(90%);
    color: var(--black);
    background-color: var(--white);
    border: 2px solid var(--white);
}

.btn-black,
.et_pb_bg_layout_light.btn-black {
    color: var(--white);
    background-color: var(--black);
    border: 2px solid var(--black);
}

.btn-black:hover,
.et_pb_bg_layout_light.btn-black:hover {
    filter: brightness(90%);
    color: var(--white);
    background-color: var(--black);
    border: 2px solid var(--black);
}

@media only screen and ( max-width: 980px ) {
    .et_pb_section.primary_cover .et_pb_button_module_wrapper {
        margin-top: 20px;
    }
}


/*================================================
    wp page-navi
================================================*/

.wp-pagenavi {
    text-align: center;
    border-top: 0;
    font-size: 16px;
    padding: 8px 0;
    margin: 0 auto;
    margin-top: 40px;
    overflow: hidden;
}

@media only screen and ( min-width: 768px ) {
    .wp-pagenavi {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

.wp-pagenavi a, .wp-pagenavi span {
    font-family: var(--primary_font);
    font-size: 16px !important;
    letter-spacing: 0;
    line-height: 24px;
    text-align: center;
    padding: 10px 18px;
}

.wp-pagenavi span.current {
    background-color: var(--lighter);
    border-top: 2px solid var(--body) !important;
}

.wp-pagenavi a:hover, .wp-pagenavi span.current {
    color: var(--primary) !important;
}

@media only screen and ( max-width: 768px ) {
    .wp-pagenavi span.pages {
        display: block;
        margin-bottom: 20px;
    }

    .wp-pagenavi a, .wp-pagenavi span {
        padding: 10px 14px;
    }

    .wp-pagenavi a.first, .wp-pagenavi a.last {
        display: none;
    }
}


/*================================================
    Scrollicon / up
================================================*/

.et_pb_scroll_top.et-pb-icon {
    background: var(--primary);
    color: var(--white);
    border-top: 1px solid var(--white);
    border-bottom: 1px solid var(--white);
    border-left: 1px solid var(--white);
}

/*================================================
    Divi sidebar removal
================================================*/

#main-content .container:before {
    background: none;
}

@media (min-width: 981px) {
    #left-area {
        width: 100%;
        padding: 23px 0px 0px !important;
        float: none !important;
    }
}

/*================================================
    stack-order
================================================*/

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

    /*** wrap row in a flex box ***/
    .custom_row {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        /* Safari 6.1+ */
        flex-wrap: wrap;
    }

    /*** custom classes that will designate the order of columns in the flex box row ***/
    .first-on-mobile {
        -webkit-order: 1;
        order: 1;
    }

    .first-on-mobile img {
        margin-bottom: 30px;
    }

    .second-on-mobile {
        -webkit-order: 2;
        order: 2;
    }

    .third-on-mobile {
        -webkit-order: 3;
        order: 3;
    }

    .fourth-on-mobile {
        -webkit-order: 4;
        order: 4;
    }

    /*** add margin to last column ***/
    .custom_row:last-child .et_pb_column:last-child {
        margin-bottom: 30px;
    }
}

/* Stack Order Smartphone */
@media only screen and (max-width: 479px) {

    /*** custom classes that will designate the order of columns in the flex box row ***/
    .first-on-smartphone {
        -webkit-order: 1;
        order: 1;
    }

    .first-on-smartphone img {
        margin-bottom: 30px;
    }

    .second-on-smartphone {
        -webkit-order: 2;
        order: 2;
    }

    .third-on-smartphone {
        -webkit-order: 3;
        order: 3;
    }

    .fourth-on-smartphone {
        -webkit-order: 4;
        order: 4;
    }
}

/*================================================
    BorlabsCookie
================================================*/

#BorlabsCookieBox ._brlbs-btn:hover,
#BorlabsCookieBox ._brlbs-btn-accept-all:hover,
#BorlabsCookieBox ._brlbs-btn {
    background: var(--primary) !important;
    color: var(--white) !important;
}

#BorlabsCookieBox a,
#BorlabsCookieBox ._brlbs-manage a,
#BorlabsCookieBox a:hover,
#BorlabsCookieBox ._brlbs-manage a:hover {
    color: var(--primary);
}

#BorlabsCookieBox ._brlbs-btn:hover,
#BorlabsCookieBox ._brlbs-btn-accept-all:hover,
#BorlabsCookieBox a:hover,
#BorlabsCookieBox ._brlbs-manage a:hover {
    filter: brightness(90%);
}

.BorlabsCookie ._brlbs-btn-switch input:checked + ._brlbs-slider {
    background-color: var(--primary);
}

.BorlabsCookie ._brlbs-checkbox input:checked ~ ._brlbs-checkbox-indicator {
    background-color: var(--primary);
    border-color: var(--primary);
}

.BorlabsCookie ._brlbs-checkbox ._brlbs-checkbox-indicator {
    border-color: var(--primary);
}

.BorlabsCookie ._brlbs-checkbox input:disabled ~ ._brlbs-checkbox-indicator::after {
    border-color: #eee;
}

/*================================================
    Text Links
================================================*/

.et_pb_module.et_pb_text .et_pb_text_inner a {
    color: var(--secondary);
    font-weight: bold;
}

.et_pb_module.et_pb_text .et_pb_text_inner a.underlined {
    text-decoration: underline;
}


/*================================================
    NinjaForms
================================================*/

#nf-field-7-wrap {
    display: block;
}

#nf-field-7-wrap > div.nf-field-description {
    margin-right: 0;
    margin-top: 10px;
}

@media only screen and ( min-width: 768px ) {
    .bd_grid,
    .bd_grid.bd_row, #post_archive.bd_grid.col-6 {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        gap: 32px;
    }

    .bd_grid.smallgap,
    .tax-product-category .bd_grid {
        gap: 32px;
    }

    .bd_grid.big_gap {
        gap: 64px;
    }

    .bd_grid .bd_col-1, .col-1 {
        grid-column: span 1;
    }

    .bd_grid .bd_col-2, .col-2 {
        grid-column: span 2;
    }

    .bd_grid .bd_col-3, .col-3 {
        grid-column: span 3;
    }

    .bd_grid .bd_col-4, .col-4 {
        grid-column: span 4;
    }

    .bd_grid .bd_col-5, .col-5 {
        grid-column: span 5;
    }

    .bd_grid .bd_col-6, .col-6, #post_archive.bd_grid.col-6 article {
        grid-column: span 6;
    }

    .bd_grid .bd_col-7, .col-7 {
        grid-column: span 7;
    }

    .bd_grid .bd_col-8, .col-8 {
        grid-column: span 8;
    }

    .bd_grid .bd_col-9, .col-9 {
        grid-column: span 9;
    }

    .bd_grid .bd_col-10, .col-10 {
        grid-column: span 10;
    }

    .bd_grid .bd_col-11, .col-11 {
        grid-column: span 11;
    }

    .bd_grid .bd_col-12, .col-12 {
        grid-column: span 12;
    }
}

@media only screen and ( max-width: 767px ) {
    .bd_downloads .bd_grid .bd_col-6, .bd_downloads .col-6 {
        grid-column: span 12;
    }

    article.download.bd_grid {
        display: grid;
        grid-template-columns: repeat(12, 1fr);
        gap: 32px;
        margin-bottom: 32px;
    }

    article.download.bd_grid .col-3 {
        grid-column: span 3;
    }

    article.download.bd_grid .col-9 {
        grid-column: span 9;
    }
}

.bd_downloads h3 {
    text-align: left;
}

.page-id-300 .et_pb_code_inner {
    max-width: 980px;
    margin: 0 auto;
    width: 100%;
}

.et_pb_gutters3 .bd_downloads .et_pb_column_4_4 .et_pb_module.et_pb_code,
.bd_downloads .et_pb_code,
.page-id-300 .et_pb_code_inner .bd_downloads {
    margin-bottom: 4em;
}

.page-id-300 .et_pb_code_inner .bd_downloads:last-of-type,
.bd_downloads .et_pb_code:last-of-type {
    margin-bottom: 0;
}

.page-id-300 .et_pb_code_inner h2 {
    max-width: 100%;
    display: inline-block;
    white-space: normal;
    hyphens: auto;
    overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
}

article.download {
    overflow: hidden;
    padding: 28px;
    border: 2px solid #CCC;
    border-radius: 10px;
}

article.download .content {
    text-align: left;
}

article.download strong a {
    font-size: 21px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 28px;
    max-width: 100%;
    display: inline-block;
    white-space: normal;
    hyphens: auto;
    overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
}

article.download .file_size {
    margin-top: 1em;
    font-size: .8em;
    font-style: initial;
}