/*
 Theme Name:   VRM Digital Communications GmbH
 Theme URI:    https://www.vrm-digital-communications.de
 Description:  Umsetzung: <strong>Stephan Benz</strong> / <strong>Franziska Wirth</strong> | Design: <strong>Annika Weisenstein</strong> / <strong>Mona Strieder</strong>
 Author:       VRM Digital Communications GmbH
 Template:     Divi
 Author URI:   https://www.vrm-digital-communications.de
 Version:      2.2
*/

/* Allgemeine Einstellungen */



:root {
    --body: #333;
    --primary: #E62336;
    --secondary: #5a78a5;
    /* vorher #8EA5C8 */
    --tertiary: #1951A0;
    --light: rgba(51, 51, 51, 0.7);
    --lighter: #FAD1CE;
    --grey: #fbfbfb;
    --lightgrey: #F2F2F2;
    --darkgrey: #979797;
    --altgrey: #ccc;
    --white: #fff;
    --black: #000;
    --alternative: #F9F9F9;

    --focus: #C11E2D;

    --boxshadow: 0 2px 35px 0 rgba(0, 0, 0, 0.05);
    --gradient: linear-gradient(180deg, rgba(79, 79, 79, 0) 0%, #272727 100%);
    --pageheader: linear-gradient(270deg, #000000 0%, rgba(0, 0, 0, 0) 100%);

    --max-width: 1400px;

    --wide: 900px;
    --narrow: 500px;
    --slim: 800px;
    --narrowed-row: 670px;

    --primary_font: adrianna, sans-serif;

    --border-radius: 5px;

    --vrmdc: #ffcf36;

    --gutter: 20px;
    --gutter_v2: 30px;

    --section_padding: 150px;
}

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

    :root {
        --section_padding: 80px;
    }

}

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

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

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

body,
ul li {
    font-family: var(--primary_font);
    font-size: 16px;
    letter-spacing: 0;
    line-height: 26px;
}

#main-content {
    overflow-x: hidden;
}

/* Sections anpassen */

@media only screen and (min-width: 981px) {

    /* .entry-content .et_pb_section:not(#breadcrumbs):not(.nopadding):not(#pageheader):not(#media) {
        padding: 100px 0
    } */
    .et_builder_inner_content.et_pb_gutters3 .et_pb_section:first-of-type {
        padding-top: 0;
    }
}

#main-content,
#main-content .et_pb_section {
    color: var(--body);
}

#main-content .et_pb_section.max {
    max-width: var(--max-width);
    margin: 0 auto;
}

#main-content .et_pb_section.wide {
    max-width: var(--wide);
    margin: 0 auto;
}


/* Hintergründe */

.bg_primary,
#main-content.bg_primary.et_pb_section,
.bg_primary.et_pb_section,
.et_pb_row.bg_primary {
    background: var(--primary);
    color: var(--white);
}

.bg_primary h2,
.bg_primary h3,
#main-content.bg_primary.et_pb_section h2,
#main-content.bg_primary.et_pb_section h3,
.bg_primary.et_pb_section,
.bg_primary.et_pb_section h2,
.bg_primary.et_pb_section h3,
.et_pb_row.bg_primary h2,
.et_pb_row.bg_primary h3 {
    color: var(--white);
}

.bg_darkgrey,
#main-content .bg_darkgrey.et_pb_section,
.bg_darkgrey.et_pb_section,
.et_pb_row.bg_darkgrey {
    background: var(--darkgrey);
}

/* Überschriften */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--primary_font);
    color: var(--body);
    -moz-hyphens: none;
    hyphens: none;
    font-style: normal;
    font-weight: bold;
    padding-bottom: 10px;
}

h1:only-child,
h2:only-child,
h3:only-child,
h4:only-child,
h5:only-child,
h6:only-child {
    padding-bottom: 0;
}

h1,
.et_pb_slide_description .et_pb_slide_title {
    font-size: 65px;
    font-weight: bold;
    letter-spacing: 0.02px;
    line-height: 70px;
}

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

    h1,
    .et_pb_slide_description .et_pb_slide_title {
        font-size: 50px;
        font-weight: bold;
        letter-spacing: 0;
        line-height: 55px;
    }

}

.page-template-template_without-builder h1,
#main-content .et_pb_section.wide h1 {
    text-align: center;
}

h2 {
    font-size: 45px;
    font-weight: bold;
    letter-spacing: 0.01px;
    line-height: 50px;
    padding-bottom: 10px;
}

h3 {
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 35px;
}

@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 {
        font-size: 26px;
        line-height: 33px;
    }
}

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

    h2 {
        font-size: 32px;
        line-height: 44px;
    }

    h3 {
        font-size: 26px;
        line-height: 38px;
    }
}

@media only screen and (max-width: 479px) {
    h1 {
        font-size: 30px;
        line-height: 35px;
    }

    h2 {
        font-size: 28px;
        line-height: 36px;
    }

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

/* Barrierefreiheit */
a:focus {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.skip-link:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    width: auto;
    background: var(--primary);
    color: var(--white);
    padding: 10px;
    z-index: 10000;
    font-family: var(--primary_font);
}

/* External link icon */
.external-link::after {
    content: "";
    width: 12px;
    height: 12px;
    margin-left: 4px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block;
    vertical-align: middle;
}

p {
    padding-bottom: 20px;
}

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

.et_pb_text_inner a {
    color: var(--primary);
    font-weight: bold;
}

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

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

.et_pb_text.narrower {
    max-width: var(--narrower);
    margin-left: 0;
}

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

.et_pb_text.narrower.centered,
.et_pb_text.teaser {
    max-width: var(--narrow);
    margin: 0 auto;
}

.et_pb_text.narrower.centered h2,
.et_pb_text.teaser h2 {
    max-width: 454px;
    margin: 0 auto;
    text-align: center;
    -moz-hyphens: none;
    hyphens: none;
}

.centered {
    text-align: center;
}

.teaser {
    text-align: center;
    margin: 0 auto;
    max-width: var(--narrow);
}

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

.teaser.left-aligned {
    text-align: left;
    margin-left: 0;
}

.teaser.left-aligned p {
    max-width: var(--narrow);
    margin-left: 0;
}

.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;
}

hr {
    border: none;
    height: 1px;
    color: #ccc;
    background-color: var(--altgrey);
    margin: 30px 0;
}

/* Snippets */

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

#et_search_icon:hover,
.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-page #content div.product p.price,
.woocommerce-page #content div.product span.price,
.woocommerce-page .star-rating span:before,
.woocommerce-page div.product p.price,
.woocommerce-page div.product span.price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
    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: 1px solid var(--alternative);
    border-radius: var(--border-radius);
    color: var(--body);
    font-size: 16px;
    letter-spacing: 0;
    line-height: 24px;
}

/* Ende Snippets */

/* Seitenlinks "more" */

a.more,
a.read-more,
article .dgbm_blog_module .dgbm_post_item .dg_read_more_wrapper a,
.et-db #et-boc .et-l a.read-more,
.et-db #et-boc .et-l a.more {
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0;
    color: var(--body);
    border-bottom: 1px solid var(--body);
    line-height: 18px;
}

a.more::after,
a.read-more::after,
article .dgbm_blog_module .dgbm_post_item .dg_read_more_wrapper a::after {
    content: "\35";
    font-family: etmodules;
    opacity: 1;
    display: inline-block;
    transform: translateY(2px);
    font-weight: bold;
}

/* DiviGear BlogModule */

article .dgbm_blog_module .dgbm_post_item .dg_read_more_wrapper a::after {
    margin-left: 0;
    vertical-align: unset;
    transform: translateY(1px);
}

/* Ende Seitenlinks "more" */


/* Buttons: component geometry stays stable; only the palette changes on interaction. */

.et_pb_code.buttons a:not(:last-of-type) { margin-right: 20px; }

/* Low-specificity fallback for unstyled native controls. Never repeat this as button:hover. */
button {
    padding: 10px 34px 8px;
    border-radius: var(--border-radius);
    font-family: var(--primary_font);
    color: var(--primary);
    background-color: transparent;
    border: 1.5px solid var(--primary);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 22px;
}

/* The theme scope also beats Divi's subsequently loaded customizer defaults.
   Plugin-specific icon buttons (wishlist, search, menus, close controls) keep their own styles. */
body.wp-child-theme-vrmdc.theme-Divi :is(
    .et_pb_button, .et_pb_button.et_pb_bg_layout_light, .et_pb_button.et_pb_bg_layout_dark,
    .btn-primary, .btn-secondary, .btn-transparent, .wpcf7-submit,
    .et_pb_contact_submit, .et_submit_button, .tribe-common-c-btn, .tribe-events-c-ical__link,
    .woocommerce .button, .woocommerce .button.alt.disabled, .woocommerce-page .button, .woocommerce input[type="submit"],
    .woocommerce .prev-step-button
),
body.wp-child-theme-vrmdc.theme-Divi.woocommerce #respond input#submit,
body.wp-child-theme-vrmdc.theme-Divi .woocommerce #respond input#submit {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 34px 8px;
    border: 1.5px solid var(--mz-button-border, var(--mz-button-rest-border, var(--primary)));
    border-radius: var(--border-radius);
    font-family: var(--primary_font);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 22px;
    text-align: center;
    text-decoration: none;
    color: var(--mz-button-text, var(--mz-button-rest-text, var(--primary)));
    background-color: var(--mz-button-background, var(--mz-button-rest-background, transparent));
    background-image: none;
    cursor: pointer;
    filter: none;
    transition: color .18s ease, background-color .18s ease, border-color .18s ease;
}

/* Primary actions stay readable over images as well as white backgrounds. */
body.wp-child-theme-vrmdc.theme-Divi :is(
    .btn-primary, .single_add_to_cart_button, .woocommerce .button.alt,
    .woocommerce-page .button.alt, .next-step-button, :where(#place_order),
    .wpcf7-submit, .et_pb_contact_submit, .et_submit_button
),
body.wp-child-theme-vrmdc.theme-Divi #testimonials .et_pb_button,
body.wp-child-theme-vrmdc.theme-Divi .et_pb_slide_description .et_pb_more_button {
    --mz-button-rest-background: var(--primary);
    --mz-button-rest-text: var(--white);
    --mz-button-rest-border: var(--primary);
    --mz-button-hover-background: var(--focus);
    --mz-button-hover-text: var(--white);
    --mz-button-hover-border: var(--focus);
}

body.wp-child-theme-vrmdc.theme-Divi .btn-secondary {
    --mz-button-rest-background: transparent;
    --mz-button-rest-text: var(--primary);
    --mz-button-rest-border: var(--primary);
    --mz-button-hover-background: var(--primary);
    --mz-button-hover-text: var(--white);
    --mz-button-hover-border: var(--primary);
}

body.wp-child-theme-vrmdc.theme-Divi .btn-transparent {
    --mz-button-rest-background: transparent;
    --mz-button-rest-text: var(--white);
    --mz-button-rest-border: var(--white);
    --mz-button-hover-background: var(--white);
    --mz-button-hover-text: var(--focus);
    --mz-button-hover-border: var(--white);
}

/* Keep Divi's hover arrow/padding animation from resizing the text buttons. */
body.wp-child-theme-vrmdc.theme-Divi :is(.et_pb_button, .woocommerce .button, .woocommerce-page .button)::before,
body.wp-child-theme-vrmdc.theme-Divi :is(.et_pb_button, .woocommerce .button, .woocommerce-page .button)::after {
    content: none;
    display: none;
}

@media (hover: hover) {
    body.wp-child-theme-vrmdc.theme-Divi :is(
        .et_pb_button, .btn-primary, .btn-secondary, .btn-transparent, .wpcf7-submit,
        .et_pb_contact_submit, .et_submit_button, .tribe-common-c-btn, .tribe-events-c-ical__link,
        .woocommerce .button, .woocommerce .button.alt.disabled, .woocommerce-page .button, .woocommerce input[type="submit"],
        .woocommerce .prev-step-button
    ):hover:not(:disabled):not(.disabled):not([aria-disabled="true"]) {
        --mz-button-background: var(--mz-button-hover-background, var(--primary));
        --mz-button-text: var(--mz-button-hover-text, var(--white));
        --mz-button-border: var(--mz-button-hover-border, var(--primary));
    }
}

body.wp-child-theme-vrmdc.theme-Divi :is(
    .et_pb_button, .btn-primary, .btn-secondary, .btn-transparent, .wpcf7-submit,
    .et_pb_contact_submit, .et_submit_button, .tribe-common-c-btn, .tribe-events-c-ical__link,
    .woocommerce .button, .woocommerce .button.alt.disabled, .woocommerce-page .button, .woocommerce input[type="submit"],
    .woocommerce .prev-step-button
):focus-visible:not(:disabled):not(.disabled):not([aria-disabled="true"]) {
    --mz-button-background: var(--mz-button-hover-background, var(--primary));
    --mz-button-text: var(--mz-button-hover-text, var(--white));
    --mz-button-border: var(--mz-button-hover-border, var(--primary));
}

body.wp-child-theme-vrmdc.theme-Divi :is(
    .et_pb_button, .btn-primary, .btn-secondary, .btn-transparent, .wpcf7-submit,
    .et_pb_contact_submit, .et_submit_button, .tribe-common-c-btn, .tribe-events-c-ical__link,
    .woocommerce .button, .woocommerce .button.alt.disabled, .woocommerce-page .button, .woocommerce input[type="submit"],
    .woocommerce .prev-step-button
):is(:disabled, .disabled, [aria-disabled="true"]) {
    --mz-button-background: var(--lightgrey);
    --mz-button-text: #595959;
    --mz-button-border: var(--darkgrey);
    cursor: not-allowed;
    opacity: 1;
}

body.wp-child-theme-vrmdc.theme-Divi :where(
    button, [role="button"], input[type="submit"], input[type="button"],
    a.et_pb_button, a.button, a.btn-primary, a.btn-secondary, a.btn-transparent
):focus-visible {
    outline: 3px solid #123f67;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    body.wp-child-theme-vrmdc.theme-Divi :is(.et_pb_button, .btn-primary, .btn-secondary, .btn-transparent, .wpcf7-submit, .woocommerce .button, .woocommerce-page .button) {
        transition: none;
    }
}

/* Ende Buttons */

/* Divi Carousel */

.dica-container .swiper-button-next,
.dica-container .swiper-button-prev {
    border-radius: 0;
}

.dica_divi_carousel_0.dica_divi_carousel .dica-container .swiper-button-next,
.dica_divi_carousel_0.dica_divi_carousel .dica-container .swiper-button-prev,
.dica_divi_carousel_1.dica_divi_carousel .dica-container .swiper-button-next,
.dica_divi_carousel_1.dica_divi_carousel .dica-container .swiper-button-prev,
.dica_divi_carousel_2.dica_divi_carousel .dica-container .swiper-button-next,
.dica_divi_carousel_2.dica_divi_carousel .dica-container .swiper-button-prev {
    background-color: rgba(0, 0, 0, 0.5) !important;
    height: 45px;
    width: 38px;
    font-size: 28px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.dica_divi_carousel_0 .dica-container .swiper-button-next:before,
.dica_divi_carousel_0 .dica-container .swiper-button-prev:before,
.dica_divi_carousel_1 .dica-container .swiper-button-next:before,
.dica_divi_carousel_1 .dica-container .swiper-button-prev:before,
.dica_divi_carousel_2 .dica-container .swiper-button-next:before,
.dica_divi_carousel_2 .dica-container .swiper-button-prev:before {
    color: var(--white) !important;
}

.dica-container .swiper-buttton-container .swiper-button-prev {
    display: none;
}

.dica-container .swiper-buttton-container .swiper-button-next {
    right: 0;
}

/* Ende Divi Carousel */

/* Divi Blog Module */

article .dgbm_blog_module_0 .dgbm_post_item .dg_read_more_wrapper,
article .dgbm_blog_module_1 .dgbm_post_item .dg_read_more_wrapper,
article .dgbm_blog_module_2 .dgbm_post_item .dg_read_more_wrapper {
    text-align: center;
}

article.dgbm_post_item .post-content {
    margin-bottom: 20px;
}

/* Ende Divi Blog Module */



/* Suche */

.et_pb_search {
    max-width: 459px;
    margin: 0 auto;
    border: 0;
}

input.et_pb_s,
.et_pb_search input.et_pb_s {
    -webkit-appearance: none;
    border: 2px solid var(--primary);
    border-radius: 25px;
    font-family: var(--primary_font);
    font-size: 16px;
    color: var(--primary);
    letter-spacing: 0;
    line-height: 24px;
    height: 44px !important;
}

/* Ende Suche */

/* Suchergebnisse */

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

#search_teaser,
#search_box {
    margin: 0 auto;
    max-width: var(--narrower);
    text-align: center;
}

#search_results h2 {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 24px;
    padding-bottom: 15px;
}

#search_results .search_excerpt {
    padding-bottom: 20px;
}

article.search_result:not(:last-of-type) {
    margin-bottom: 80px;
}

#search_box .et_pb_search {
    max-width: 420px;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 60px;
}

#search_box input.et_pb_searchsubmit,
#search_box .widget_search input#searchsubmit {
    background: transparent;
    color: transparent;
    border: none;
    width: 55px;
    z-index: 2;
}

#search_box input.et_pb_s,
#search_box .widget_search input#s {
    padding-right: 55px !important;
}

#search_box .et_pb_searchform:before,
#search_box .widget_search::before {
    content: '\55';
    position: absolute;
    font-family: 'ETModules';
    z-index: 1;
    right: 0;
    font-size: 20px;
    padding: 8px 20px;
}

/* Ende Suchergebnisse */

/* Scrollicon */

.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);
}

/* Ende Scrollicon */

/* Sidebar Removal */

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

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

    .et_right_sidebar #main-content .container:before {
        right: unset !important;
    }

    #main-content .container:before {
        content: unset;
    }
}

/* 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
================================================*/

.theme-Divi #BorlabsCookieBox .brlbs-cpmnt-dialog-bar-buttons button,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-btn.brlbs-cmpnt-font-semibold,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-btn.brlbs-cmpnt-font-semibold,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-btn-switch input:checked+.brlbs-cmpnt-slider,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-btn-switch input:checked+.brlbs-cmpnt-slider,
body.theme-Divi .brlbs-cmpnt-content-blocker a.brlbs-cmpnt-cb-btn,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-dialog-provider .brlbs-cmpnt-btn-close {
    color: var(--white);
    background-color: var(--primary);
}

.theme-Divi #BorlabsCookieBox .brlbs-cpmnt-dialog-bar-buttons button:hover,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-btn.brlbs-cmpnt-font-semibold:hover,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-btn.brlbs-cmpnt-font-semibold:hover,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-tab.brlbs-cmpnt-tab-inactive:focus,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-tab.brlbs-cmpnt-tab-inactive:hover,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-tab.brlbs-cmpnt-tab-inactive:focus,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-tab.brlbs-cmpnt-tab-inactive:hover,
body.theme-Divi .brlbs-cmpnt-content-blocker a.brlbs-cmpnt-cb-btn:hover,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-dialog-provider .brlbs-cmpnt-btn-close:hover {
    color: var(--white);
    background-color: var(--primary);
    filter: brightness(.9);
}

.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-dialog-entrance-description a,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-dialog-entrance-description a,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-link.brlbs-cmpnt-back-button,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-link.brlbs-cmpnt-back-button,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-card .brlbs-cmpnt-accordion-toggle,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-card .brlbs-cmpnt-accordion-toggle *,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-card .brlbs-cmpnt-accordion-toggle,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-card .brlbs-cmpnt-accordion-toggle *,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-inline-link,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-inline-link *,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-inline-link,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-inline-link *,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-close-button,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-close-button,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-list-item .brlbs-cmpnt-accordion-toggle *,
body.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-list-item .brlbs-cmpnt-accordion-toggle :hover,
body.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-list-item .brlbs-cmpnt-accordion-toggle:hover,
body.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-list-item .brlbs-cmpnt-accordion-toggle :hover,
body.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-list-item .brlbs-cmpnt-accordion-toggle:hover {
    color: var(--primary);
}

body.theme-Divi .brlbs-cmpnt-content-blocker a.brlbs-cmpnt-cb-provider-toggle {
    color: var(--white);
}

.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-dialog-entrance-description a:hover,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-dialog-entrance-description a:hover,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-link.brlbs-cmpnt-back-button:hover,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-link.brlbs-cmpnt-back-button:hover,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-card .brlbs-cmpnt-accordion-toggle:hover,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-card .brlbs-cmpnt-accordion-toggle *:hover,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-card .brlbs-cmpnt-accordion-toggle:hover,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-card .brlbs-cmpnt-accordion-toggle *:hover,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-inline-link:hover,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-inline-link *:hover,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-inline-link:hover,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-inline-link *:hover,
.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-dialog-footer.brlbs-cmpnt-dialog-bar-links button:hover,
body.theme-Divi .brlbs-cmpnt-content-blocker a.brlbs-cmpnt-cb-provider-toggle:hover {
    color: var(--primary);
    filter: brightness(.9);
}

.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-tab.brlbs-cmpnt-tab-active,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-tab.brlbs-cmpnt-tab-active {
    background-color: var(--primary);
}

.theme-Divi #BorlabsCookieBox input[type=checkbox].brlbs-cmpnt-checkbox:checked:not(:disabled),
.theme-Divi .brlbs-cmpnt-container input[type=checkbox].brlbs-cmpnt-checkbox:checked:not(:disabled) {
    background-color: var(--primary);
    border-color: var(--primary);
}

.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-with-separator,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-with-separator,
body.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-with-separator,
body.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-with-separator {
    border-color: var(--primary);
}

body.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-tab.brlbs-cmpnt-tab-active,
body.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-tab.brlbs-cmpnt-tab-active,
body.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-search-bar-input,
body.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-list-item,
body.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-list-item,
body.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-tab.brlbs-cmpnt-tab-active:focus,
body.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-tab.brlbs-cmpnt-tab-active:focus,
body.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-search-bar-input:focus,
body.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-list-item:focus,
body.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-list-item:focus {
    border-radius: var(--border-radius);
    border-color: var(--border-color);
}

.theme-Divi #BorlabsCookieBox .brlbs-cmpnt-tab.brlbs-cmpnt-tab-inactive,
.theme-Divi .brlbs-cmpnt-container .brlbs-cmpnt-tab.brlbs-cmpnt-tab-inactive {
    border: unset;
}

body div.brlbs-cmpnt-container.brlbs-cmpnt-content-blocker.brlbs-cmpnt-with-individual-styles[data-borlabs-cookie-content-blocker-id] .brlbs-cmpnt-cb-youtube .brlbs-cmpnt-cb-btn,
body div.brlbs-cmpnt-container.brlbs-cmpnt-content-blocker[data-borlabs-cookie-content-blocker-id] .brlbs-cmpnt-cb-youtube .brlbs-cmpnt-cb-btn {
    background-color: var(--primary);
    color: var(--white,#fff);
}

/*================================================
product hotfix
================================================*/
#product_subtitle ul,
#product_subtitle ol {
    list-style: disc;
    list-style-position: outside;
    padding-left: 20px;
    margin-top:    0;
    margin-bottom: 20px;
}

/* Hier hinzufügen: Schriftgröße und Zeilenhöhe für Listenelemente */
#product_subtitle ul li,
#product_subtitle ol li {
    font-size: 14px;
    line-height: 26px;
}

#product_subtitle ol {
    list-style: decimal;
}

/*================================================
Barrierefreiheit Hotfixes
================================================*/

span.cfw-sc-opac .cfw-sc-total {
    background-color: var(--primary);
}

.cfw-sc-container .cfw-sc-base section footer {
    background: transparent;
}

.cfw-sc-container .cfw-sc-base section footer .cta-container .checkout:hover {
    background-color: var(--primary);
    filter: brightness(.8)
}

.modern-quote {
    all: unset;
    display: block;
    max-width: 800px;
    margin: 2rem auto;
    padding: 2rem 2rem;
    position: relative;
    text-align: center;
    color: #000;
    background: transparent;
}

.modern-quote p {
    font-size: 3rem;
    font-weight: 900;
    text-transform: uppercase;
    margin: 0;
    line-height: 1.2;
    position: relative;
    z-index: 2;
}

.modern-quote cite {
    display: block;
    margin-top: 1.5rem;
    font-size: 1.2rem;
    font-style: italic;
    color: #333;
    z-index: 2;
    position: relative;
}

.modern-quote::before {
    all: unset;
    content: "“";
    font-size: 10rem;
    color: var(--primary);
    position: absolute;
    top: 0;
    left: 0;
    line-height: 1;
    z-index: 0;
}

.modern-quote::after {
    all: unset;
    content: "”";
    font-size: 10rem;
    color: var(--primary);
    position: absolute;
    bottom: 0;
    right: 0;
    line-height: 1;
    z-index: 0;
}

@media (max-width: 600px) {
    .modern-quote p {
        font-size: 2rem;
    }

    .modern-quote::after {
        font-size: 6rem;
        bottom: -30px;
        right: 10px;
    }
}

.woocommerce ul.products li.product a.woocommerce-loop-product__link {
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
}
/*================================================
    Allgemeines Layout
================================================*/

/* Grid Settings */

@media only screen and (min-width: 768px) {

  .et_pb_row.flex_wrapper .et_pb_column,
  #infoblurb .et_pb_column {
    display: flex;
    flex-wrap: wrap;
    position: relative;
  }

  div.flex_wrapper article {
    width: calc((100% / 2) - var(--gutter));
    margin-right: 0;
    margin-bottom: var(--gutter);
  }

  div.flex_wrapper article:nth-child(odd) {
    margin-right: 40px;
  }
}

@media only screen and (max-width: 980px) {
  div.flex_wrapper article:not(:last-of-type) {
    margin-bottom: var(--gutter);
  }
}

/*================================================
    Teaserbox(en)
================================================*/

@media only screen and (min-width: 981px) {

  .et-db #et-boc .et-l .teaserbox,
  .teaserbox {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    max-width: unset;
    margin: var(--gutter_v2) 0 !important;
    padding: 0;
  }

  .et-db #main-content #et-boc .et-l .shop_home+.teaserbox,
  #main-content .shop_home+.teaserbox {
    margin-top: 0 !important;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row,
  .teaserbox .et_pb_row:first-of-type {
    width: calc((100% / 3 * 2) - var(--gutter_v2));
    display: flex;
    flex-wrap: wrap;
    position: relative;
    margin: unset;
    margin-right: var(--gutter_v2);
    max-width: unset;
    background-color: var(--grey);
    padding: 0;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:first-of-type .et_pb_column_1_2,
  .teaserbox .et_pb_row:first-of-type .et_pb_column_1_2 {
    width: 50%;
    margin-right: 0;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:first-of-type .et_pb_column_1_2:first-of-type,
  .teaserbox .et_pb_row:first-of-type .et_pb_column_1_2:first-of-type {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:first-of-type .et_pb_column_1_2:last-of-type,
  .teaserbox .et_pb_row:first-of-type .et_pb_column_1_2:last-of-type {
    padding: 60px 100px 60px 0;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:first-of-type .et_pb_text,
  .teaserbox .et_pb_row:first-of-type .et_pb_text {
    max-width: var(--narrow);
    align-self: flex-end;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:first-of-type .et_pb_text_inner,
  .teaserbox .et_pb_row:first-of-type .et_pb_text_inner {
    padding: 60px;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-of-type,
  .teaserbox .et_pb_row:last-of-type {
    width: calc(100% / 3);
    flex: 1;
    margin: unset;
    padding: 0;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_column,
  .teaserbox .et_pb_column {
    width: 100%;
    margin-right: 0;
    float: unset;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-of-type .et_pb_column,
  .teaserbox .et_pb_row:last-of-type .et_pb_column {
    text-align: right;
    height: calc(50% - (var(--gutter_v2) / 2));
    margin-bottom: var(--gutter_v2);
    justify-content: flex-end;
    display: flex;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-of-type .et_pb_column:last-of-type,
  .teaserbox .et_pb_row:last-of-type .et_pb_column:last-of-type {
    margin-bottom: unset;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-of-type .et_pb_module,
  .teaserbox .et_pb_row:last-of-type .et_pb_module {
    width: 40%;
    display: inline-block;
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-of-type .et_pb_text,
  .teaserbox .et_pb_row:last-of-type .et_pb_text {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px;
    text-align: center;
    background-color: var(--secondary);
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-of-type .et_pb_column:last-of-type .et_pb_text,
  .teaserbox .et_pb_row:last-of-type .et_pb_column:last-of-type .et_pb_text {
    background-color: var(--tertiary);
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-of-type h2,
  .teaserbox .et_pb_row:last-of-type h2 {
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 35px;
    color: var(--white);
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-of-type a,
  .teaserbox .et_pb_row:last-of-type a {
    color: var(--white);
    border-bottom: 1px solid var(--white);
  }

  .et-db #et-boc .et-l .teaserbox .et_pb_image,
  .et-db #et-boc .et-l .teaserbox .et_pb_image .et_pb_image_wrap,
  .et-db #et-boc .et-l .teaserbox .et_pb_image .et_pb_image_wrap img,
  .teaserbox .et_pb_image,
  .teaserbox .et_pb_image .et_pb_image_wrap,
  .teaserbox .et_pb_image .et_pb_image_wrap img {
    width: 100%;
    height: 100%;

    object-fit: cover;
  }
}

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

  .teaserbox,
  .et-db #et-boc .et-l .teaserbox {
    padding: 0 0 30px 0;
  }

  .teaserbox .et_pb_row:first-child,
  .et-db #et-boc .et-l .teaserbox .et_pb_row:first-child {
    padding: 60px 0;
    width: 100%;
    background: var(--alternative);
    max-width: unset;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
  }

  .teaserbox .et_pb_row:first-child .et_pb_column,
  .et-db #et-boc .et-l .teaserbox .et_pb_row:first-child .et_pb_column {
    width: 80% !important;
    margin: 0 10%;
  }

  .teaserbox .et_pb_row:first-child .et_pb_column:first-child,
  .et-db #et-boc .et-l .teaserbox .et_pb_row:first-child .et_pb_column:first-child {
    order: 1;
    margin-top: 50px;
  }

  .teaserbox .et_pb_row:last-child,
  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-child {
    width: 100%;
  }

  .teaserbox .et_pb_row:last-child .et_pb_column,
  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-child .et_pb_column {
    background-position: left;
    /*background-size: 40%;*/
  }

  .teaserbox .et_pb_row:last-child .et_pb_text_inner,
  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-child .et_pb_text_inner {
    width: 60%;
    float: right;
    padding: 80px 30px;
  }

  .teaserbox .et_pb_row:last-child .et_pb_column:first-child .et_pb_text_inner,
  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-child .et_pb_column:first-child .et_pb_text_inner {
    background: var(--secondary);
  }

  .teaserbox .et_pb_row:last-child .et_pb_column:last-child .et_pb_text_inner,
  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-child .et_pb_column:last-child .et_pb_text_inner {
    background: var(--tertiary);
  }

  .teaserbox .et_pb_row:last-child .et_pb_text_inner h2,
  .teaserbox .et_pb_row:last-child .et_pb_text_inner a,
  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-child .et_pb_text_inner h2,
  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-child .et_pb_text_inner a {
    color: var(--white);
    border-color: var(--white);
  }

  .teaserbox .et_pb_column:nth-of-type(2) .et_pb_image .et_pb_image_wrap {
    width: 100%;
    text-align: center;
  }
}

/*================================================
    Kategorien (Slick Slider)
================================================*/

.et_pb_section.kategorie_slider {
  padding: var(--section_padding) 0;
}

.shop_categories.slider .slick-list {
  margin: 0 -10px;
}

.shop_categories.slider article {
  height: 500px;
  margin: 0 10px;
  position: relative;
}

.shop_categories.slider article::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  opacity: 0.9;
  background: linear-gradient(180deg,
      rgba(255, 255, 255, 0.15) 0%,
      #ffffff 100%);
}

.shop_categories.slider .content_wrapper {
  width: 100%;
  position: absolute;
  bottom: 0;
  padding: 0 25px 40px 25px;
  text-align: center;
}

.shop_categories.slider .content_wrapper h3 {
  padding-bottom: 20px;
  hyphens: auto;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
}



/*================================================
    XforWooCommerce – LiveSearch
================================================*/

#top-header .xwc--ls-element {
  box-shadow: unset;
}

#top-header input.xwc--ls-input {
  font-family: var(--primary_font) !important;
  font-size: 15px !important;
  letter-spacing: 0 !important;
  line-height: 18px !important;
  color: var(--body) !important;
  padding: 12px 15px !important;
}

#top-header .xwc--ls-button {
  top: 3px !important;
  right: 3px !important;
  background-image: url("https://www.mainz-store.com/wp-content/themes/vrmdc/css/../img/search.svg") !important;
}

.xwc--ls-result {
  font-size: 15px;
  letter-spacing: 0;
  line-height: 18px;
  color: var(--body);
  padding: 12px 15px;
}

#top-header .xwc--ls-element a {
  color: var(--primary);
}

#top-header .xwc--ls-title a {
  font-weight: normal;
}

.xwc--ls-price {
  font-weight: bold;
}

#top-header .xwc--ls-path,
#top-header .xwc--ls-separator,
#top-header .xwc--ls-image {
  display: none;
}

/*================================================
    WooCommerce settings
================================================*/

.woocommerce .woocommerce-error,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message {
  background: var(--primary);
}

.woocommerce .woocommerce-error a,
.woocommerce .woocommerce-info a,
.woocommerce .woocommerce-message a {
  color: var(--white);
  text-decoration: underline;
}

/* Button colors and interaction states are defined in _basics.css. */

.woocommerce form.cart a.added_to_cart {
  display: none;
}

.woocommerce .woocommerce-info a {
  text-decoration: underline;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
  padding: 0;
}

@media only screen and (max-width: 980px) {
  ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
    margin-top: 100px;
  }
}

@media only screen and (max-width: 780px) {
  ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
    display: grid;
  }

  .woocommerce ul.order_details li {
    border-right: 0;
  }

  .woocommerce ul.order_details li:not(:nth-last-of-type(1)) {
    padding-bottom: 15px;
  }
}

/*================================================
    WooCommerce Checkout
================================================*/

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
  border-color: var(--darkgrey);
}

.woocommerce-multistep-checkout #main-content article {
  padding-bottom: 100px;
}

/* Button colors and interaction states are defined in _basics.css. */

.woocommerce-multistep-checkout #payment {
  background: unset;
}

.woocommerce-multistep-checkout #payment ul.payment_methods {
  border: 1.5px solid var(--primary);
  border-radius: var(--border-radius);
  padding: 30px;
}

.woocommerce-checkout #payment div.payment_box {
  background-color: var(--lighter);
  color: var(--body);
}

.woocommerce-checkout #payment div.payment_box::before {
  border: 1em solid var(--lighter);
  border-right-color: transparent;
  border-left-color: transparent;
  border-top-color: transparent;
}

/* Button colors and interaction states are defined in _basics.css. */

.woocommerce-multistep-checkout .shop_table.woocommerce-checkout-review-order-table {
  background: unset;
  padding-top: 50px;
}

.woocommerce-multistep-checkout .shop_table.woocommerce-checkout-review-order-table thead {
  border-bottom-color: var(--lighter);
}

.woocommerce-multistep-checkout .shop_table.woocommerce-checkout-review-order-table th {
  color: var(--primary);
  padding-bottom: 5px;
}

.woocommerce-multistep-checkout .shop_table.woocommerce-checkout-review-order-table td,
.woocommerce-multistep-checkout .shop_table.woocommerce-checkout-review-order-table th,
.woocommerce-checkout #main-content .cart-subtotal td {
  border-color: var(--lighter);
}

p.woocommerce-thankyou-order-received {
  text-align: center;
  margin-bottom: 60px;
  font-size: 1.2em;
}

section.woocommerce-order-details {
  margin: 1em 0 2em 0;
}

table.woocommerce-table.woocommerce-table--order-details {
  background-color: unset;
}

#content-area table.woocommerce-table.woocommerce-table--order-details td,
#content-area table.woocommerce-table.woocommerce-table--order-details th,
table.woocommerce-table.woocommerce-table--order-details td,
table.woocommerce-table.woocommerce-table--order-details th {
  padding-left: 0;
  padding-right: 20px;
}

/* Persönliche Notiz */

.woocommerce-additional-fields__field-gift-message {
  margin-top: 40px;
}

/*================================================
    Mein Account
================================================*/

.woocommerce-account .woocommerce h2 {
  text-align: center;
}

.woocommerce-account form.woocommerce-ResetPassword,
.woocommerce-account form.login,
.woocommerce-account .woocommerce-notices-wrapper {
  max-width: 500px;
  margin: 0 auto;
}

/*================================================
    Productfilter // prdctfltr
================================================*/

/* home */

.home .prdctfltr_checkboxes {
  /* text-align: right; */
  display: flex;
  flex-wrap: wrap;
  column-gap: 35px;
}

@media only screen and (max-width: 980px) {
  .home .prdctfltr_checkboxes {
    text-align: left;
  }
}

.home .prdctfltr_filter label {
  display: inline-block;
  /* margin-right: 35px; */
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 26px;
  text-transform: uppercase;
}

.home .prdctfltr_filter label:last-of-type {
  margin-right: 0;
}

/*================================================
    Products
================================================*/

/* Grid */

.products.columns-4 {
  display: flex;
  flex-wrap: wrap;
}

.woocommerce ul.products li.product .woocommerce-placeholder {
  border: unset;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  width: calc(100% / 4 - (60px / 4));
}

@media only screen and (min-width: 768px) and (max-width: 1099px) {

  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product,
  .woocommerce ul.products[class*="columns-"] li.product,
  .woocommerce-page ul.products[class*="columns-"] li.product {
    width: calc((100% - 20px) / 2) !important;
    margin: 0 20px 20px 0 !important;
  }

  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product:nth-of-type(even),
  .woocommerce ul.products[class*="columns-"] li.product:nth-of-type(even),
  .woocommerce-page ul.products[class*="columns-"] li.product:nth-of-type(even) {
    margin-right: 0 !important;
  }
}

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

  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product,
  .woocommerce ul.products[class*="columns-"] li.product,
  .woocommerce-page ul.products[class*="columns-"] li.product {
    width: 100% !important;
    margin: 0 0 20px 0 !important;
  }
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  background: var(--alternative);
  padding: 0;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  margin-right: var(--gutter);
  margin-bottom: var(--gutter);
}

.woocommerce ul.products li.product:nth-child(4n + 4),
.woocommerce-page ul.products li.product:nth-child(4n + 4) {
  margin-right: 0;
}

.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
  font-size: 16px;
  letter-spacing: 0;
  line-height: 26px;
  font-weight: normal;
}

.woocommerce-page ul.products li.product .price,
.woocommerce-page ul.products li.product .price del,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price del {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 26px;
  color: var(--body) !important;
}

/* Hauptpreis (wie bisher) */
.woocommerce-page ul.products li.product .price,
.woocommerce ul.products li.product .price {
  font-size: 16px;
  font-weight: bold;
  color: var(--body, #222);
  letter-spacing: 0;
  line-height: 1.2;
  margin-bottom: 0.1em;
}

/* GRUNDPREIS im Archiv/Loop dezenter */
.woocommerce-page ul.products li.product .price.price-unit,
.woocommerce-page ul.products li.product .price.price-unit.smaller,
.woocommerce-page ul.products li.product .price.price-unit.wc-gzd-additional-info,
.woocommerce-page ul.products li.product .price-unit,
.woocommerce-page ul.products li.product .wc-gzd-additional-info.wc-gzd-additional-info-loop {
  font-size: 13px !important;
  color: #595959 !important; /* AA-konform */
  font-weight: 400 !important;
  letter-spacing: 0;
  line-height: 1.2;
  margin-top: -3px;
  margin-bottom: 1px;
  display: block;
}

/* Auch das Währungszeichen und die Einheit auf die richtige Farbe bringen */
.woocommerce-page ul.products li.product .price.price-unit .woocommerce-Price-amount,
.woocommerce-page ul.products li.product .price.price-unit .unit {
  font-size: inherit !important;
  color: inherit !important;
  font-weight: inherit !important;
}

.woocommerce-page ul.products li.product .wc-gzd-additional-info.wc-gzd-additional-info-loop.tax-info,
.woocommerce-page ul.products li.product .wc-gzd-additional-info.wc-gzd-additional-info-loop.shipping-costs-info {
  display: none;
}

.woocommerce-page ul.products li.product .wc-gzd-additional-info.wc-gzd-additional-info-loop.product-units-wrapper.product-units {
margin-top: .6em;
}

li.product .tinv-wraper.woocommerce.tinv-wishlist {
  position: absolute;
  top: 25px;
  left: unset;
  right: 12px;
}

ul.products li.product .tinvwl_add_to_wishlist_button {
  margin-top: 0;
}

.tinv-wraper {
  width: unset;
  text-align: unset;
}

div.tinv-wraper.woocommerce.tinv-wishlist.tinvwl-above_thumb-add-to-cart.tinvwl-loop-button-wrapper>a::before {
  content: "";
  background-image: url("https://www.mainz-store.com/wp-content/themes/vrmdc/css/../img/heart.svg");
  background-repeat: no-repeat;
  width: 22px;
  height: 20px;
}

div.tinv-wraper.woocommerce.tinv-wishlist.tinvwl-above_thumb-add-to-cart.tinvwl-loop-button-wrapper>a.tinvwl-product-in-list::before {
  background-image: url("https://www.mainz-store.com/wp-content/themes/vrmdc/css/../img/heart_filled.svg");
}

span.tinvwl_add_to_wishlist-text {
  /*display: none;*/
}

.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart::before {
  font-size: 35px;
  color: var(--darkgrey);
}

.tinv-wraper {
  width: 95%;
  text-align: right;
}

li.product p.wc-gzd-additional-info.tax-info,
li.product p.wc-gzd-additional-info.shipping-costs-info {
  display: none;
}

.woocommerce ul.products li.product a img.product_teaser_thumb {
  margin-bottom: 40px !important;
  mix-blend-mode: multiply;
}

.product_teaser_details {
  display: flex;
  flex-wrap: wrap;
}

.product_teaser_info {
  width: calc(100% - 100px);
  margin-right: 16px;
  padding: 0 0 20px 15px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.product_teaser_cart {
  width: 84px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.product_teaser_cart a {
  height: 84px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.product_teaser_cart a:hover {
  background-color: var(--primary);
}

.product_teaser_cart a:hover img {
  filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(114deg) brightness(103%) contrast(101%);
}

.product_teaser_name {
  font-size: 16px;
  letter-spacing: 0;
  line-height: 26px;
  color: var(--body);
}

div.product_teaser_info>span>span>bdi {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 26px;
  color: var(--body);
}

.woocommerce ul.products li.product a img.product_teaser_basket {
  width: 34px;
  height: auto;
  margin: 0 auto !important;
}

/*================================================
    shop / archive / categories
================================================*/

.et-db #et-boc .et-l #shop_products .et_pb_section,
.et-db #et-boc .et-l #shop_products .et_pb_section .et_pb_row {
  padding-top: 0;
}

@media only screen and (min-width: 1100px) {

  .woocommerce #shop_products ul.products li.product,
  .woocommerce-page #shop_products ul.products li.product {
    width: calc(100% / 3 - (40px / 3));
  }

  .woocommerce #shop_products ul.products li.product:nth-child(4n + 4),
  .woocommerce-page #shop_products ul.products li.product:nth-child(4n + 4) {
    margin-right: var(--gutter);
  }

  .woocommerce #shop_products.products li.product:nth-child(3n + 3),
  .woocommerce-page #shop_products ul.products li.product:nth-child(3n + 3) {
    margin-right: 0;
  }
}

/* Pagination */

.woocommerce nav.woocommerce-pagination {
  text-align: right;
}

.woocommerce nav.woocommerce-pagination ul {
  border: 0;
}

.woocommerce .woocommerce-pagination ul.page-numbers li,
.woocommerce-page .woocommerce-pagination ul.page-numbers li {
  width: 39px;
  height: 39px;
  background-color: unset;
  border: 0;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 18px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 4px;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  color: var(--body);
}

.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: unset;
  background-color: var(--primary);
  color: var(--white) !important;
  border-radius: 50%;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/*================================================
    breadcrumbs
================================================*/

#breadcrumbs {
  margin-bottom: 24px;
  color: var(--light);
  font-size: 15px;
  letter-spacing: 0;
  line-height: 18px;
}

#breadcrumbs a {
  color: var(--body);
}

/*================================================
    single-product
================================================*/

@media only screen and (min-width: 768px) {
  #product_details_inner_wrapper {
    display: flex;
    flex-wrap: wrap;
    position: relative;
  }

  .woocommerce #content div.product div.summary,
  .woocommerce div.product div.summary,
  .woocommerce-page #content div.product div.summary,
  .woocommerce-page div.product div.summary,
  .woocommerce #content div.product div.images,
  .woocommerce div.product div.images,
  .woocommerce-page #content div.product div.images,
  .woocommerce-page div.product div.images {
    float: unset;
    width: unset;
    clear: unset;
  }

  #product_gallery,
  #product_details {
    width: calc((100% / 2) - (120px / 2));
    margin-bottom: 0;
  }

  #product_details {
    max-width: 500px;
  }

  #product_gallery {
    margin-right: 120px;
  }
}

#product_details_wrapper {
  padding: 30px 0 var(--section_padding) 0;
}

#product_details_wrapper .et_pb_row {
  padding: 0;
}

#product_details_inner {
  max-width: var(--narrow);
}

.product_category-title {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 18px;
  color: var(--primary);
  text-transform: uppercase;
  margin-top: 30px;
  padding-bottom: 8px;
  position: relative;
}

.product_category-title::before {
  content: "";
  width: 55px;
  height: 1px;
  background-color: var(--primary);
  position: absolute;
  top: -8px;
  left: 0;
}

.woocommerce div.product .product_title {
      margin-top: .4rem;
}

h1.product_title {
  font-size: 26px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 26px;
  padding-right: 60px;
}

#pd_priceinfo .price {
  font-size: 26px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 26px;
  color: var(--body);
}

#pd_priceinfo p.smaller.wc-gzd-additional-info {
  font-size: 16px !important;
  line-height: 16px !important;
  display: inline-block;
  font-weight: 400;
}

#pd_priceinfo p.smaller.wc-gzd-additional-info span {
  font-size: 16px !important;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product .stock {
  color: #357a38;
}

.single-product .details_wrapper {
  margin-top: 30px;
}

.single-product .details_wrapper p {
  padding-bottom: 0;
}

.single-product .details_wrapper table {}

.single-product .details_wrapper tr {}

.single-product .details_wrapper tr td:first-child {
  padding-right: 15px;
  font-weight: bold;
}

.single-product .details_wrapper tr td:last-child {}

div.taxinfo p,
.product .taxinfo p.wc-gzd-additional-info {
  display: inline-block;
  margin-bottom: 0;
  font-size: 15px;
  letter-spacing: 0;
  line-height: 26px;
  color: var(--light);
  padding-bottom: 0;
}

.woocommerce #content .quantity input.qty,
.woocommerce-cart table.cart td.actions .coupon .input-text,
.woocommerce-page #content .quantity input.qty,
.woocommerce-page .quantity input.qty,
.woocommerce .quantity input.qty {
  font-weight: normal !important;
  font-size: 15px !important;
  color: var(--black) !important;
  border-radius: 0;
  background-color: var(--white) !important;
  border: unset !important;
  border-bottom: 1px solid var(--altgrey) !important;
  height: 44px;
}

/* .orderby,
.woocommerce div.product form.cart .variations td select {
  background-color: var(--white);
  border-radius: 0;
  font-size: 15px;
  color: var(--black);
  border-bottom: 1px solid var(--altgrey);
} */

@media only screen and (max-width: 980px) {
  .tinv-wraper.tinv-wishlist.tinvwl-after-add-to-cart {
    margin-left: 0;
    width: 100%;
    text-align: left;
    margin-top: 20px;
  }
}

@media only screen and (min-width: 768px) {
  div.quantity {
    display: inline-block;
    float: unset;
    margin: 0 30px 0 0 !important;
  }

  .tinv-wraper {
    margin-left: 15px;
    transform: translateY(-15px);
  }
}

/* gallery */
.flex-active {
  border: 1px solid var(--body);
}

/* Wishlist Settings */

/* MODULE */

.tinvwl-button.tinvwl_button_view.tinvwl-btn-onclick {
  background: var(--primary);
  color: var(--white);
  border: 1.5px solid var(--primary);
}

.tinvwl-button.tinvwl_button_view.tinvwl-btn-onclick:hover {
  background: transparent;
  border: 1.5px solid var(--primary);
  color: var(--primary);
}

button.tinvwl-button.tinvwl_button_close:hover {
  background: var(--primary);
  color: var(--white);
  border: 1.5px solid var(--primary);
  filter: unset;
}

.tinv-wraper {
  display: inline-block;
  width: unset;
  text-align: center;
}

.tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart::before {
  content: unset;
}

/* Versandinfo */

#versandinfo footer .et_pb_blurb_content {
  max-width: 150px;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 22px;
}

#versandinfo .et_pb_blurb.et_pb_text_align_left .et_pb_blurb_content .et_pb_blurb_container {
  text-align: center;
}

#versandinfo .et_pb_main_blurb_image {
  margin-bottom: 10px;
}

#versandinfo .et_pb_blurb p {
  font-size: 14px;
  line-height: 22px;
}

#versandinfo .et_pb_blurb a {
  color: var(--body);
  transition: 0.3s ease all;
}

#versandinfo .et_pb_blurb a:hover {
  color: var(--primary);
  transition: 0.3s ease all;
}

#product_details_wrapper #versandinfo.et_pb_row {
  width: 100%;
  background-color: var(--lightgrey);
}

#versandinfo .et_pb_column {
  padding: 25px 15px;
}

#versandinfo .et_pb_column.et_pb_column_4_4 {
  padding-bottom: 4em;
}

@media only screen and (min-width: 768px) {
  #versandinfo .et_pb_column {
    display: flex;
    flex-wrap: wrap;
    /*justify-content: space-between;*/
    justify-content: space-around;
  }

  #versandinfo .et_pb_blurb {
    width: calc((100% / 3) - (30px / 3));
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 0;
    display: flex;
    justify-content: center;
    flex-direction: column;
  }

  #versandinfo .et_pb_blurb:nth-child(2) {
    margin-right: 10px;
    margin-left: 10px;
  }
}

#versandinfo .et_pb_column::after {
  content: 'Lieferzeit: 5 – 7 Tage nach Bestelleingang';
  position: absolute;
  bottom: 1em;
  font-size: 14px;
  line-height: 22px;
  left: 0;
  right: 0;
  margin: 0 auto;
  text-align: center;
  max-width: 80%;
}

/* bestseller */

#bestseller,
.et_pb_section.bestseller {
  padding: var(--section_padding) 0;
}

#bestseller h2 {
  padding-bottom: 20px;
}

/*================================================
    Benefits
================================================*/

.et-db #et-boc .et-l #benefits,
#benefits {
  background-color: var(--alternative);
  padding: 110px 0;
}

#benefits .et_pb_main_blurb_image {
  width: 100px;
  margin: 0 auto;
  margin-bottom: 25px;
}

#benefits .et_pb_blurb_description {
  text-align: center;
}

#benefits p:first-child {
  padding-bottom: 10px;
}

#benefits p:first-child strong {
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 35px;
}

@media only screen and (min-width: 981px) {
  #benefits .et_pb_column {
    width: calc((100% - 100px) / 2);
  }

  #benefits .et_pb_column:not(:last-child) {
    margin-right: 100px;
  }
}

@media only screen and (max-width: 980px) {
  #benefits .et_pb_column {
    width: 100%;
  }

  #benefits .et_pb_column:not(:last-child) {
    margin-bottom: 100px;
  }
}

/*================================================
    /wishlist/
================================================*/

ul.navigation-button.tinv-wishlist-clear {
  list-style: none;
  text-align: center;
  margin-top: unset;
  padding: 0;
}

.tinv-wishlist .navigation-button>li {
  float: unset;
  display: inline-block;
}

.tinv-header {
  margin: 0 auto;
}

/*================================================
    Additional Content / SEO Texte
================================================*/

#additional_content {
  background-color: var(--grey);
  padding: 100px 0;
}

#additional_content .et_pb_row,
.et-db #et-boc .et-l #additional_content .et_pb_row {
  max-width: var(--wide);
  padding: 0;
  margin: 0 auto;
}

#additional_content .et_pb_text_inner>* {
  color: #666;
}

#additional_content h2,
.et-db #et-boc .et-l #additional_content h2,
#additional_content h3,
.et-db #et-boc .et-l #additional_content h3,
#additional_content h4,
.et-db #et-boc .et-l #additional_content h4 {
  font-size: 30px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 35px;
}

#additional_content .et_pb_text_inner {
  opacity: 0.7;
}

#additional_content h2,
#additional_content h3 {
  padding-bottom: 10px;
}

#additional_content p {
  padding-bottom: 0;
}

#additional_content p+p {
  padding-top: 25px;
}

#additional_content p+h2,
#additional_content p+h3 {
  margin-top: 40px;
}

/*================================================
    Slick Carousel
================================================*/
/*
.slick-prev,
.slick-next {
  left: -50px;
  display: block;
}

.slick-next {
  left: unset;
  right: -25px;
}

.slick-prev::before,
.slick-next::before {
  content: "\34";
  font-family: etmodules;
  color: var(--primary);
  font-size: 48px;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
}

.slick-next::before {
  content: "\35";
}

button.slick-arrow {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
}

@media only screen and (max-width: 767px) {
  button.slick-arrow {
    display: block;
    width: 48px;
    height: 48px;
  }

  .slick-prev.slick-arrow {
    left: -12%;
  }

  .slick-next.slick-arrow {
    right: -12%;
  }
}
*/

div.slick-track {
  display: flex !important;
}

div.slick-slide {
  height: inherit !important;
  display: grid !important;
}

/*================================================
    Rechtliche Seiten
================================================*/

body.page-template-template_rechtliches:not(.et-tb) #main-content .container,
body.page-template-template_rechtliches:not(.et-tb-has-header) #main-content .container,
.page-template-template_rechtliches .container {
  padding: 0;
}

.page-template-template_rechtliches #main-content .et_pb_section {
  padding: var(--section_padding) 0;
  max-width: 900px;
  margin: 0 auto;
}

.page-template-template_rechtliches h1 {
  padding-bottom: 26px;
}

.page-template-template_rechtliches h2 {
  margin-top: 34px;
  padding-bottom: 10px;
  font-size: 30px;
  font-weight: bold;
  line-height: 35px;
}

.page-template-template_rechtliches h3 {
  padding-bottom: 10px;
  font-size: 24px;
  font-weight: bold;
  line-height: 30px;
}

.page-template-template_rechtliches p+h3 {
  margin-top: 20px;
}

/*================================================
    CONTENT
================================================*/

#main-content #pageheader+.et_pb_section,
.et-db .shop_wrapper #et-boc .et-l .et_pb_section.first-section {
  padding: var(--section_padding) 0;
}

.einleitung.ueber-uns .et_pb_text {
  max-width: 900px;
}

.shop_home .et_pb_text.et_pb_module {
  margin-bottom: 60px;
}

#aufgaben_ziele {
  padding: var(--section_padding) 0;
}

#aufgaben_ziele .et_pb_row:first-child {
  padding-bottom: 60px;
}

#aufgaben_ziele .et_pb_row {
  max-width: 900px;
}

#aufgaben_ziele .et_pb_code {
  margin-bottom: 15px;
}

#aufgaben_ziele iframe {
  height: 260px;
}

.et_pb_section.equal_height {
  padding: 0;
  margin-top: 30px;
}

.et_pb_section.equal_height .et_pb_row {
  padding: 0;
  width: 100%;
  max-width: unset;
}

#ausbildung.equal_height .et_pb_column:first-child {
  width: 40%;
}

#ausbildung.equal_height .et_pb_column:last-child {
  width: 60%;
}

#downloads.equal_height .et_pb_column:first-child {
  width: 70%;
}

#downloads.equal_height .et_pb_column:last-child {
  width: 30%;
}

.equal_height .et_pb_column:first-child {
  margin-right: 30px;
}

.equal_height .et_pb_column.img-module * {
  height: 100%;
  width: 100%;
}

.equal_height .et_pb_column.img-module img {
  object-fit: cover;
}

@media only screen and (max-width: 980px) {
  .equal_height .et_pb_column.img-module img {
    min-height: 500px;
  }
}

.equal_height .et_pb_column:not(.img-module) {
  background: var(--alternative);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--section_padding) 130px;
}

@media only screen and (max-width: 980px) {
  .equal_height .et_pb_column:not(.img-module) {
    padding: 100px 30px;
  }
}

#downloads.equal_height .et_pb_column:not(.img-module) {
  display: block;
}

@media only screen and (min-width: 1500px) {
  #downloads .et_pb_blurb {
    float: left;
    width: calc((100% - 60px) / 2);
  }

  #downloads .et_pb_blurb:nth-child(even) {
    margin-right: 60px;
  }
}

#downloads .et_pb_blurb_content {
  max-width: unset;
}

#downloads .et_pb_text {
  margin-bottom: 60px;
}

#struktur {
  padding: var(--section_padding) 0;
}

#struktur .intro .et_pb_module:first-child {
  margin-bottom: 40px;
}

#struktur .intro .et_pb_module:nth-child(2),
#struktur .intro .et_pb_module:last-child {
  margin-bottom: 60px;
}

#struktur .et_pb_blurb .et_pb_module_header {
  font-size: 24px;
  font-weight: bold;
  line-height: 35px;
  padding-bottom: 5px;
}

#struktur .et_pb_blurb .et_pb_blurb_content {
  max-width: unset;
}

@media only screen and (min-width: 981px) {
  #struktur .et_pb_row:last-child .et_pb_column {
    display: flex;
    flex-wrap: wrap;
  }

  #struktur .et_pb_blurb {
    width: calc((100% - 200px) / 3);
    height: inherit !important;
    display: grid !important;
    margin-bottom: 60px;
  }

  #struktur .et_pb_blurb:not(:nth-of-type(3n)) {
    margin-right: 100px;
  }

  #struktur .et_pb_row:last-child .et_pb_column div:nth-child(3n):nth-last-child(-n + 4)~div {
    margin-bottom: 0;
  }
}

#struktur .et_pb_blurb .et_pb_main_blurb_image {
  position: relative;
  overflow-y: hidden;
  margin-bottom: 25px;
}

#struktur .et_pb_blurb .et_pb_main_blurb_image:after {
  content: "\4c";
  color: var(--white);
  background: var(--primary);
  position: absolute;
  width: calc(100% - 30px);
  font-weight: 500;
  line-height: 1;
  top: 0;
  left: 0;
  font-family: ETModules;
  text-align: left;
  font-size: 50px;
  opacity: 0;
  transition: transform 300ms;
  transform: translate3d(0, calc(100% - 10px), 0);
  height: 0;
  padding: 0;
}

#struktur .et_pb_blurb .et_pb_main_blurb_image:hover:after {
  opacity: 1;
  top: 0;
  -webkit-transition: all 0.5s;
  transition: transform 300ms;
  transform: translate3d(0, 0, 0);
  height: calc(100% - 30px);
  padding: 15px;
}

body:not(.single-product):not(.archive) #main-content .et_pb_section:last-child:is(#mainzgefuehl) {
  margin: 30px 0;
}

#mainzgefuehl {
  padding: 100px 0;
}

#mainzgefuehl .et_pb_text {
  margin-bottom: 20px;
}

#mainzgefuehl .et_pb_text_inner {
  text-align: center;
}

/*================================================
    SHOP
================================================*/

.shop_home .prdctfltr_checkboxes label {
  border-bottom: 2px solid transparent;
  transition: 0.3s ease all;
}

.shop_home .prdctfltr_checkboxes label:hover,
.shop_home label.prdctfltr_active {
  transition: 0.3s ease all;
  color: var(--primary);
  border-color: var(--primary);
}

/*
.shop_home ul.products li:nth-child(3n):nth-last-child(-n+4) ~ li {
    margin-bottom: 0 !important;
    border: 1px solid blue;
}
*/

.shop_home ul.product,
.shop_home .woocommerce .products ul,
.shop_home .woocommerce ul.products,
.shop_home .et_pb_module.et_pb_code {
  margin-bottom: 0;
}

.shop_home .et_pb_button_module_wrapper:last-child {
  margin-top: 40px;
}

/* PRODUKTDETAILSEITE */

#product_details_wrapper,
.et-db #et-boc .et-l #product_details_wrapper.et_pb_section {
  padding: 30px 0 var(--section_padding) 0;
}

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

  #product_details_wrapper,
  .et-db #et-boc .et-l #product_details_wrapper.et_pb_section {
    padding-top: 2em;
  }
}

#product_details_wrapper .et_pb_row,
.et-db #et-boc .et-l #product_details_wrapper.et_pb_section .et_pb_row {
  padding: 0;
}

/* SHOP */
#shop_filter,
.et-db #et-boc .et-l #shop_filter.et_pb_column {
  width: calc(100% / 3);
  /*max-width: 250px;*/
  margin-right: 0;
  padding-right: 100px;
  padding-top: 20px;
  margin-top: 59px;
  border-top: 1px solid rgba(51, 51, 51, 0.2);
}

#shop_products,
.et-db #et-boc .et-l #shop_products.et_pb_column {
  width: calc((100% / 3) * 2);
}

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

  #shop_filter,
  .et-db #et-boc .et-l #shop_filter.et_pb_column,
  #shop_products,
  .et-db #et-boc .et-l #shop_products.et_pb_column {
    margin: 0;
    border: 0;
    padding: 0;
    width: 100% !important;
  }

  #shop_filter .et_pb_widget.prdctfltr-widget {
    width: 100% !important;
  }
}

#shop_products,
.et-db .shop_wrapper #et-boc .et-l #shop_products .et_pb_section,
#shop_products .et_pb_section {
  padding: 0;
  background: unset;
}

#shop_products article .et_pb_row,
.et-db .shop_wrapper #et-boc .et-l #shop_products article .et_pb_row {
  width: 100%;
  max-width: unset;
}

#shop_products article ul.products {
  padding-top: 30px;
  border-top: 1px solid rgba(51, 51, 51, 0.2);
}

#shop_products p.woocommerce-result-count {
  color: var(--body);
  width: calc((100% - 30px) / 2);
  margin-right: 30px;
  text-align: right;
  min-height: 50px;
  margin-bottom: 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.woocommerce #shop_products form.woocommerce-ordering {
  margin-bottom: 10px;
  width: calc((100% - 30px) / 2);
}

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

  #shop_products p.woocommerce-result-count,
  .woocommerce #shop_products form.woocommerce-ordering {
    width: 100%;
  }
}

#shop_products .intro .et_pb_column:first-child {}

#shop_products .intro .et_pb_column:last-child {
  /*width: calc((100% - 100px) / 6 * 4);*/
  width: 100%;
}

@media only screen and (min-width: 981px) {
  #shop_products .intro .et_pb_column:first-child {
    width: calc((100% - 100px) / 6 * 2);
    /*border-right: 1px solid var(--white);*/
    margin-right: 0;
    padding-right: 50px;
    max-width: 240px;
    border-top: 1px solid var(--white);
    margin-top: 58px;
    padding-top: 30px;
  }
}

#shop_products .et_pb_column:last-child form.prdctfltr_woocommerce_ordering {
  max-width: 1080px;
  margin-left: 0;
  width: 100%;
}

#shop_products .prdctfltr_wc .prdctfltr_buttons {
  display: none;
}

#shop_products .et_pb_column:last-child .pf_select .prdctfltr_filter_wrapper {
  padding-bottom: 10px;
  border-bottom: 1px solid var(--white);
  margin-bottom: 30px;
}

#shop_products .et_pb_column:last-child .prdctfltr_filter.prdctfltr_text {
  padding: 0;
  width: fit-content;
  float: right;
}

#shop_products .et_pb_column:last-child .pf_select .prdctfltr_filter .prdctfltr_regular_title {
  background: unset;
  color: var(--body);
  padding-left: 32px;
  padding-right: 40px;
}

#shop_products .et_pb_column:last-child .prdctfltr_add_scroll.prdctfltr_down {
  width: 100%;
  background: var(--black);
  color: var(--white);
}

#shop_products .et_pb_column:first-child .prdctfltr_columns_1 {
  /*padding-right: 50px;*/
}

#shop_products .et_pb_column:first-child .prdctfltr_columns_1 .prdctfltr_filter {
  padding: 0;
  border-bottom: 1px solid var(--white);
  padding: 15px 0;
  width: 70%;
}

#shop_products .et_pb_column:first-child .prdctfltr_columns_1 .prdctfltr_filter:first-of-type {
  padding: 0 0 15px 0;
}

#shop_products .et_pb_column:first-child .prdctfltr_columns_1 .prdctfltr_filter:last-of-type {
  border: unset;
  padding-top: 15px;
}

#shop_products .et_pb_column:first-child .prdctfltr_filter .prdctfltr_regular_title {
  line-height: 1.5;
}

#shop_products .et_pb_column:first-child .prdctfltr_wc .prdctfltr_woocommerce_ordering {
  margin: 0;
}

#shop_products .prdctfltr_collector_flat>span {
  border: 1px solid var(--white);
  border-radius: 0 !important;
  padding: 10px 15px !important;
  line-height: 1;
}

#shop_products .et_pb_column:first-child .prdctfltr_filter_inner {
  display: flex;
  flex-direction: column;
}

/* CUSTOM SELECT-STYLES WOOCOMMERCE */
.woocommerce #shop_products .woocommerce-ordering select,
.woocommerce #shop_products select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  border: none;
  padding: 0 1em 0 0;
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  cursor: inherit;
  line-height: inherit;
  outline: none;
}

.woocommerce #shop_products .woocommerce-ordering select::-ms-expand,
.woocommerce #shop_products select::-ms-expand {
  display: none;
}

.woocommerce #shop_products .woocommerce-ordering,
.woocommerce #shop_products div.product form.cart .variations td span {
  padding: 10px 15px;
  border-radius: 5px;
  background-color: var(--primary);
  border: 1.5px solid var(--primary);
  cursor: pointer;
  margin: 0;
  grid-template-areas: "select";
  align-items: center;
  display: grid;
  transition: 0.3s ease all;
  position: relative;
}

.woocommerce #shop_products .woocommerce-ordering:after,
.woocommerce #shop_products div.product form.cart .variations td span:after {
  content: "\33";
  visibility: visible !important;
  display: block;
  position: absolute;
  right: 15px;
  top: 8px;
  box-sizing: border-box;
  font-family: "ETmodules";
  line-height: 26px;
  color: var(--white);
  justify-self: end;
}

.woocommerce #shop_products .woocommerce-ordering select,
.woocommerce #shop_products div.product form.cart .variations td span select {
  font-family: var(--primary_font);
  /* color: var(--white) !important; */
  font-size: 14px;
  padding: 0;
  /* background-color: transparent; */
  letter-spacing: 0;
  color: var(--white);
  line-height: 26px;
}

.woocommerce #shop_products .woocommerce-ordering select,
.woocommerce #shop_products div.product form.cart .variations td span select {
  font-family: var(--primary_font);
  font-size: 14px;
  padding: 0;
  color: var(--white);
  /* Initial color set to white */
  line-height: 26px;
  background-color: transparent;
  border: none;
  appearance: none;
  /* Removes default system styling */
}

.woocommerce #shop_products .woocommerce-ordering select,
.woocommerce #shop_products div.product form.cart .variations td span select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  padding: 0 1em 0 0;
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  cursor: inherit;
  line-height: inherit;
  outline: none;
  color: var(--white) !important;
  /* Ensures initial color is white */
}

.woocommerce #shop_products .woocommerce-ordering select:focus,
.woocommerce #shop_products .woocommerce-ordering select:hover,
.woocommerce #shop_products div.product form.cart .variations td span select:focus,
.woocommerce #shop_products div.product form.cart .variations td span select:hover {
  color: var(--black) !important;
  /* Color changes to black on focus and hover */
}

.woocommerce #shop_products .woocommerce-ordering select option {
  color: var(--black);
  /* Ensures options are always black */
}

/* Custom arrow styling */
.woocommerce #shop_products .woocommerce-ordering::after,
.woocommerce #shop_products div.product form.cart .variations td span::after {
  content: "\25BC";
  /* Down arrow symbol */
  color: var(--white);
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  /* Makes the arrow non-interactive */
}

/* Hover and focus styles for the select box */
.woocommerce #shop_products .woocommerce-ordering:hover,
.woocommerce #shop_products .woocommerce-ordering:focus,
.woocommerce #shop_products div.product form.cart .variations td span:hover,
.woocommerce #shop_products div.product form.cart .variations td span:focus {
  background-color: var(--light-grey);
  /* Light background on hover/focus */
  color: var(--black);
  /* Text color changes on hover/focus */
}

/* .woocommerce #shop_products .woocommerce-ordering:hover,
.woocommerce #shop_products .woocommerce-ordering:focus,
.woocommerce #shop_products div.product form.cart .variations td span:hover,
.woocommerce #shop_products div.product form.cart .variations td span:focus {
  transition: 0.3s ease all;
  background-color: var(--primary);
}

.woocommerce #shop_products .woocommerce-ordering:hover select,
.woocommerce #shop_products .woocommerce-ordering:focus select,
.woocommerce #shop_products .woocommerce-ordering:hover:after,
.woocommerce #shop_products .woocommerce-ordering:focus:after,
.woocommerce
  #shop_products
  div.product
  form.cart
  .variations
  td
  span:hover
  select,
.woocommerce
  #shop_products
  div.product
  form.cart
  .variations
  td
  span:hover
  select:focus,
.woocommerce
  #shop_products
  div.product
  form.cart
  .variations
  td
  span:hover:after,
.woocommerce
  #shop_products
  div.product
  form.cart
  .variations
  td
  span:focus:after {
  transition: 0.3s ease all;
  color: var(--white) !important;
} */

#shop_products .woocommerce-result-count {
  min-height: 50px;
  margin-bottom: 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
}

/* FILTER */
#shop_filter form.prdctfltr_woocommerce_ordering {
  display: flex;
  flex-direction: column;
  margin: 0;
}

#shop_filter .prdctfltr_wc .prdctfltr_filter_inner .prdctfltr_filter {
  padding: 0;
  border-bottom: 1px solid rgba(51, 51, 51, 0.2);
  margin-bottom: 10px;
}

#shop_filter .prdctfltr_wc .prdctfltr_filter_inner .prdctfltr_filter h4 {
  font-size: 16px;
  font-weight: bold;
  line-height: 24px;
  padding-bottom: 10px;
}

#shop_filter .prdctfltr_wc .prdctfltr_filter_inner .prdctfltr_filter .prdctfltr_checkboxes {
  padding: 0;
  margin-bottom: 20px;
}

#shop_filter .prdctfltr_collector.prdctfltr_collector_border {
  order: 10;
  margin: 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
}

#shop_filter .prdctfltr_collector_border>span {
  border: 1px solid var(--white);
  border-radius: unset;
  padding: 8px 15px;
  text-align: center;
}

#shop_filter .prdctfltr_wc .prdctfltr_buttons {
  padding: 0;
  margin-top: 25px;
}

@media only screen and (max-width: 980px) {
  #shop_filter .prdctfltr_wc .prdctfltr_buttons {
    margin: 0;
  }
}

#shop_filter .prdctfltr_wc .prdctfltr_buttons .prdctfltr_woocommerce_filter_submit {
  width: 100%;
  color: var(--white) !important;
  background: var(--primary);
  border: 1.5px solid var(--primary);
  text-align: center;
  text-transform: unset;
  letter-spacing: 0;
  border-radius: 5px;
}

.prdctfltr_woocommerce.prdctfltr_wc .prdctfltr_inline.prdctfltr_filter label>span:before,
.prdctfltr_wc.prdctfltr_checkbox .prdctfltr_filter label>span:before {
  border: 1px solid rgba(51, 51, 51, 0.2) !important;
  width: 13px !important;
  height: 13px !important;
  background: unset !important;
}

.prdctfltr_wc.prdctfltr_checkbox .prdctfltr_filter label.prdctfltr_active>span:after {
  color: var(--primary);
}

#shop_filter .prdctfltr_count {
  background: unset;
  border: unset;
  color: var(--primary);
}

#shop_filter .widgettitle [class^="prdctfltr-"]:before,
#shop_filter .widgettitle [class*=" prdctfltr-"]:before {
  font-family: "ETmodules" !important;
  font-weight: bold !important;
  color: var(--primary);
}

.prdctfltr-down:before {
  content: "\4c" !important;
}

.prdctfltr-up:before {
  content: "\4b" !important;
}

.et_full_width_page.woocommerce-page ul.products li.product:nth-child(4n + 1),
.et_left_sidebar.woocommerce-page #main-content ul.products li.product:nth-child(3n + 1),
.et_right_sidebar.woocommerce-page #main-content ul.products li.product:nth-child(3n + 1) {
  clear: unset;
}

/* KONTAKT */

#kontaktformular h2 {
  padding-bottom: 10px;
}

@media only screen and (min-width: 981px) {
  #kontaktformular .et_pb_row:first-child .et_pb_column {
    width: 30%;
    max-width: 500px;
  }

  #kontaktformular .et_pb_row:last-child .et_pb_column:first-child {
    width: 30%;
    max-width: 500px;
    margin-right: 60px;
  }

  #kontaktformular .et_pb_row:last-child .et_pb_column:last-child {
    width: calc(70% - 60px);
  }
}

@media only screen and (max-width: 980px) {
  #moodimg img {
    min-height: 600px;
    object-fit: cover;
  }
}

@media only screen and (max-width: 980px) {
  .woocommerce-multistep-checkout ul.nav-wizard {
    margin-top: 50px;
  }
}

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

@media only screen and (max-width: 479px) {
  .woocommerce-multistep-checkout ul.nav-wizard {
    justify-content: center;
    flex-direction: column;
    padding-top: 50px;
    display: inline-block;
    padding-left: 0;
  }

  .woocommerce-multistep-checkout ul.nav-wizard li a {
    padding: 0;
  }

  .woocommerce-multistep-checkout ul.nav-wizard li:not(:last-child) {
    margin-bottom: 10px;
  }

  .woocommerce-multistep-checkout ul.nav-wizard li:before,
  .woocommerce-multistep-checkout ul.nav-wizard li a:before {
    display: none;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1387px) {

  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-of-type h2,
  .teaserbox .et_pb_row:last-of-type h2 {
    font-size: 23px;
  }
}

@media only screen and (min-width: 981px) and (max-width: 1199px) {

  .et-db #et-boc .et-l .teaserbox .et_pb_row:last-of-type .et_pb_module,
  .teaserbox .et_pb_row:last-of-type .et_pb_module {
    width: 60%;
  }
}

@media only screen and (max-width: 530px) {
  .woocommerce-multistep-checkout .step-wrapper.step-wrapper-2.step-wrapper-active .step-buttons.step-buttons-payment {
    display: flex;
    justify-content: center;
    flex-direction: column;
    text-align: center;
  }

  .woocommerce-multistep-checkout .step-wrapper.step-wrapper-2.step-wrapper-active .step-buttons.step-buttons-payment a.prev-step-button,
  .woocommerce-multistep-checkout .step-wrapper.step-wrapper-2.step-wrapper-active .step-buttons.step-buttons-payment button.next-step-button {
    display: inline-block;
    width: fit-content;
    margin: 0 auto;
  }

  .woocommerce-multistep-checkout .step-wrapper.step-wrapper-2.step-wrapper-active .step-buttons.step-buttons-payment a.prev-step-button {
    margin-bottom: 20px;
  }
}

@media only screen and (min-width: 981px) and (max-width: 1342px) {
  .woocommerce div.product form.cart .button.single_add_to_cart_button {
    margin-bottom: 20px;
    margin-left: 15px;
  }

  .tinv-wraper.woocommerce.tinv-wishlist.tinvwl-after-add-to-cart {
    margin: 0;
  }
}

/*================================================
  Produkteigenschaften
================================================*/

.product-acf-details__title {
  font-size: 1.25rem;
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 1rem;

}

.product-acf-details__content {
  display: block;
}

.product-acf-details__table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1rem;
}

.product-acf-details__subtitle {
  font-size: 1rem;
  font-weight: bold;
  text-transform: uppercase;
  padding: 0.5rem;
  background: #f5f5f5;
  text-align: left;

}

.product-acf-details__row {
  border-bottom: 1px solid #ddd;
}

.product-acf-details__label {
  font-weight: normal;
  text-transform: none;
  padding: 0.5rem;
  width: 30%;
  text-align: left;
}

.product-acf-details__value {
  padding: 0.5rem;

}

.product-acf-details__sublist {
  list-style: none;
  padding: 0;
  margin: 0;
}

.product-acf-details__sublist li {
  margin-bottom: 0.25rem;
}

/* Responsives Design */
@media (max-width: 768px) {

  .product-acf-details__table,
  .product-acf-details__table>*,
  .product-acf-details__table tr,
  .product-acf-details__table th,
  .product-acf-details__table td {
    display: block;
    width: 100%;
  }

  .product-acf-details__subtitle {
    display: block;
    width: 100%;
  }

  .product-acf-details__row {
    display: block;
    border-bottom: none;
    padding: 0.5rem 0;
  }

  .product-acf-details__label,
  .product-acf-details__value {
    display: block;
    width: 100%;
    padding: 0.25rem 0;
  }

  .product-acf-details__label {
    font-weight: bold;
  }

  .product-acf-details__value {
    border-bottom: 1px solid #ddd;
  }
}

/* Barrierefreiheit */
.product-acf-details__title:focus,
.product-acf-details__subtitle:focus {
  outline: 2px solid #0073aa;
}

.product-acf-details {

  background: transparent;
}

/*================================================
  Hotfix
================================================*/
@media only screen and (min-width: 981px) {
  .single div.et-l>.et_pb_section>.et_pb_row {
    max-width: 1400px;
  }
}

/*================================================
  Ajax Search
================================================*/
.et_divi_theme #ajaxsearchpro2_1 .probox,
.et_divi_theme #ajaxsearchpro2_2 .probox,
.et_divi_theme div.asp_m.asp_m_2 .probox {
  border: 1px solid var(--altgrey, #ccc);
  background-color: var(--white, #fff);
}

#ajaxsearchpro2_1 .probox .proinput input.orig,
#ajaxsearchpro2_2 .probox .proinput input.orig,
div.asp_m.asp_m_2 .probox .proinput input.orig,
.et_divi_theme #ajaxsearchpro2_1 .probox .proinput input.orig,
.et_divi_theme #ajaxsearchpro2_2 .probox .proinput input.orig,
.et_divi_theme div.asp_m.asp_m_2 .probox .proinput input.orig {
  color: var(--body, #333);
  font-size: 14px;
  font-family: var(--primary_font);
  opacity: 1;
}

.et_divi_theme #ajaxsearchpro2_1 .probox .proinput input.orig input::placeholder,
.et_divi_theme #ajaxsearchpro2_2 .probox .proinput input.orig input::placeholder,
.et_divi_theme div.asp_m.asp_m_2 .probox .proinput input.orig input::placeholder {
  color: var(--body, #333);
  font-size: 14px;
  font-family: var(--primary_font);
  opacity: 1;
}

.et_divi_theme #ajaxsearchpro2_1 .probox .proinput input.orig input:-moz-placeholder,
.et_divi_theme #ajaxsearchpro2_2 .probox .proinput input.orig input:-moz-placeholder,
.et_divi_theme div.asp_m.asp_m_2 .probox .proinput input.orig input:-moz-placeholder {
  color: var(--body, #333);
  font-size: 14px;
  font-family: var(--primary_font);
  opacity: 1;
}

.et_divi_theme #ajaxsearchpro2_1 .probox .proinput input.orig input:-ms-input-placeholder,
.et_divi_theme #ajaxsearchpro2_2 .probox .proinput input.orig input:-ms-input-placeholder,
.et_divi_theme div.asp_m.asp_m_2 .probox .proinput input.orig input:-ms-input-placeholder {
  color: var(--body, #333);
  font-size: 14px;
  font-family: var(--primary_font);
  opacity: 1;
}

#ajaxsearchpro2_1 .probox .promagnifier,
#ajaxsearchpro2_2 .probox .promagnifier,
div.asp_m.asp_m_2 .probox .promagnifier,
.et_divi_theme #ajaxsearchpro2_1 .probox .promagnifier,
.et_divi_theme #ajaxsearchpro2_2 .probox .promagnifier,
.et_divi_theme div.asp_m.asp_m_2 .probox .promagnifier {
  background-image: unset;
  background-color: var(--altgrey, #ccc);
}

#ajaxsearchpro2_1 .probox .proclose svg,
#ajaxsearchpro2_2 .probox .proclose svg,
div.asp_m.asp_m_2 .probox .proclose svg,
.et_divi_theme #ajaxsearchpro2_1 .probox .proclose svg,
.et_divi_theme #ajaxsearchpro2_2 .probox .proclose svg,
.et_divi_theme div.asp_m.asp_m_2 .probox .proclose svg {
  background: var(--primary, #E62336);
}

#ajaxsearchprores2_1,
#ajaxsearchprores2_2,
div.asp_r.asp_r_2,
.et_divi_theme #ajaxsearchprores2_1,
.et_divi_theme #ajaxsearchprores2_2,
.et_divi_theme div.asp_r.asp_r_2 {
  z-index: 99999;
}

#ajaxsearchprores2_1.vertical,
#ajaxsearchprores2_2.vertical,
div.asp_r.asp_r_2.vertical,
.et_divi_theme #ajaxsearchprores2_1.vertical,
.et_divi_theme #ajaxsearchprores2_2.vertical,
.et_divi_theme div.asp_r.asp_r_2.vertical {
  padding: 1px;
  background: var(--altgrey, #ccc);
}

#ajaxsearchprores2_1 .results .item .asp_content h3,
#ajaxsearchprores2_2 .results .item .asp_content h3,
div.asp_r.asp_r_2 .results .item .asp_content h3,
.et_divi_theme #ajaxsearchprores2_1 .results .item .asp_content h3,
.et_divi_theme #ajaxsearchprores2_2 .results .item .asp_content h3,
.et_divi_theme div.asp_r.asp_r_2 .results .item .asp_content h3 {
  font-family: var(--primary_font);
  font-weight: bold;
  line-height: 1.2em;
  font-size: 18px;
  letter-spacing: 0;
}

#ajaxsearchprores2_1 .results .item .asp_content h3 a,
#ajaxsearchprores2_2 .results .item .asp_content h3 a,
div.asp_r.asp_r_2 .results .item .asp_content h3 a,
.et_divi_theme #ajaxsearchprores2_1 .results .item .asp_content h3 a,
.et_divi_theme #ajaxsearchprores2_2 .results .item .asp_content h3 a,
.et_divi_theme div.asp_r.asp_r_2 .results .item .asp_content h3 a {
  color: var(--body, #333);
  font-weight: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

#ajaxsearchprores2_1 .results .item .asp_content h3 a:hover,
#ajaxsearchprores2_2 .results .item .asp_content h3 a:hover,
div.asp_r.asp_r_2 .results .item .asp_content h3 a:hover,
.et_divi_theme #ajaxsearchprores2_1 .results .item .asp_content h3 a:hover,
.et_divi_theme #ajaxsearchprores2_2 .results .item .asp_content h3 a:hover,
.et_divi_theme div.asp_r.asp_r_2 .results .item .asp_content h3 a:hover {
  color: var(--primary, #E62336);
  font-weight: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

div.asp_content>div.asp_res_text {
  font-style: normal;
  font-weight: normal;
  color: var(--body);
  font-size: 16px;
  letter-spacing: 0;
  line-height: 26px;
}

#ajaxsearchprores2_1 .asp_nores .asp_keyword,
#ajaxsearchprores2_2 .asp_nores .asp_keyword,
div.asp_r.asp_r_2 .asp_nores .asp_keyword,
.et_divi_theme #ajaxsearchprores2_1 .asp_nores .asp_keyword,
.et_divi_theme #ajaxsearchprores2_2 .asp_nores .asp_keyword,
.et_divi_theme div.asp_r.asp_r_2 .asp_nores .asp_keyword {
  font-family: var(--primary_font);
  font-size: 18px;
}

/*================================================
    search // search results
================================================*/

.benzdigital div.ajaxsearchpro,
.benzdigital #ajaxsearchpro1_1,
#ajaxsearchpro1_1,
#ajaxsearchpro1_2,
div.asp_m.asp_m_1 {
  background-color: unset;
  background: transparent;
}

.benzdigital div.ajaxsearchpro,
.benzdigital #ajaxsearchpro1_1 * {
  color: var(--body) !important;
  font-size: inherit !important;
  font-family: inherit !important;
}

.benzdigital #ajaxsearchprores1_1 .results .item .asp_content h3 a,
.benzdigital #ajaxsearchprores1_2 .results .item .asp_content h3 a,
.benzdigital div.asp_r.asp_r_1 .results .item .asp_content h3 a,
#ajaxsearchprores1_1 .results .item .asp_content h3 a,
#ajaxsearchprores1_2 .results .item .asp_content h3 a,
div.asp_r.asp_r_1 .results .item .asp_content h3 a,
.benzdigital #ajaxsearchprores1_1 .results .item .asp_content h3 a:hover,
.benzdigital #ajaxsearchprores1_2 .results .item .asp_content h3 a:hover,
.benzdigital div.asp_r.asp_r_1 .results .item .asp_content h3 a:hover #ajaxsearchprores1_1 .results .item .asp_content h3 a:hover,
#ajaxsearchprores1_2 .results .item .asp_content h3 a:hover,
div.asp_r.asp_r_1 .results .item .asp_content h3 a:hover {
  color: var(--body);
}

.benzdigital #ajaxsearchprores1_1,
#ajaxsearchprores1_1 {
  left: unset !important;
  right: 10% !important;
  width: 320px !important;
  border: unset !important;
  border-radius: var(--border-radius) !important;
  background-color: var(--white, #fff) !important;
  box-shadow: var(--box-shadow) !important;
}


input.swp-input--search.swp-input {
  border: 1px solid var(--lightgrey);
  border-radius: var(--border-radius);
  padding: 12px 20px;
}

input.swp-input--search.swp-input:focus {
  box-shadow: 0 10px 20px 0 rgba(2, 197, 192, 0.25);
}

.search-results .bd_grid {
  margin-bottom: 4em;
}

.search-results article {
  box-shadow: var(--box-shadow);
  background-color: var(--white);
  border-radius: var(--border-radius);
  position: relative;
}

.search-results article h2 {
  font-size: 1.6em;
  padding-bottom: .4em;
  line-height: 1em;
}

.search-results article>a:first-child {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 1;
}

.search-results article img {
  border-top-left-radius: var(--border-radius);
  border-top-right-radius: var(--border-radius);
}

.search-results article .content {
  padding: 1em 0;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

.search-results article .content a:last-of-type {
  display: block;
  margin-top: 1em;
}

.search-form {
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 2em;
  margin-bottom: 2em;
}

.search-form .bd_text {
  width: 80%;
  max-width: var(--narrower);
  margin: 0 auto;
  text-align: center;
}

.search-form strong {
  display: block;
  font-size: 1.4em;
  margin-bottom: .4em;
}

.search-results .search_input {
  margin: 0 auto;
  width: 80%;
  max-width: var(--wide);
  text-align: center;
  padding: 2em 0;
  justify-content: center;
}

.search_input {
  display: flex;
  width: 100%;
}

.search-submit {
  padding: 10px 15px;
  background: var(--primary);
  color: var(--white, #fff);
  border: none;
  cursor: pointer;
  border-radius: 0 8px 8px 0;
}

.search-field {
  flex-grow: 1;
  padding: 10px 15px;
  font-size: 1em;
  border: 2px solid var(--alternative, #ccc);
  border-radius: 8px 0 0 8px;
}

.search-submit:hover {
  background: var(--primary);
}

@media only screen and (max-width: 767px) {
  div.search_input {
    text-align: center;
  }
}

/* popup */
#search-popup .search-submit {
  background: var(--white);
  color: var(--primary);
}

#search-popup .search_input {
  display: flex;
  width: 100%;
  justify-content: center;
}


@media (max-width: 768px) {
  .search-form {
    flex-direction: column;
  }

  .search_input {
    flex-direction: column;
    width: auto;
  }

  .search-field {
    border-radius: var(--border-radius);
    margin-bottom: 10px;
  }

  .search-submit {
    width: fit-content;
    display: block;
    margin: 0 auto;
    border-radius: var(--border-radius);
  }
}

#search_teaser {
  padding: 3em 0;
}

#et-boc form>div.bd_text {
  max-width: 768px;
  width: 80%;
  margin: 0 auto;
}

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

/* Grid Settings */

.bd_section {
  padding: 4% 0;
  position: relative;
  background-color: var(--white);
  box-sizing: border-box;
  display: block;
  max-width: 1400px;
  margin: 0 auto;
}

@media only screen and (max-width: 980px) {
  .search .bd_section {
    margin-top: 8em;
  }
}

.bd_row {
  width: 80%;
  padding: 3em 0;
  margin: 3em auto;
  box-sizing: border-box;
  display: block;
  position: relative;
  max-width: var(--default_width);
  background-size: cover;
  background-position: 50%;
  background-repeat: no-repeat;
  hyphens: manual;
  /* oder 'none', um automatische Silbentrennung zu verhindern */
  word-break: break-word;
  /* Erlaubt Wortumbrüche, wenn notwendig */
  overflow-wrap: break-word;
  /* Umbrechen von langen Wörtern */
}

.bd_row .bd_module:first-of-type {
  margin-top: 0;
  padding-top: 0;
}

.bd_section.no-padding-top,
.bd_row.no-padding-top {
  padding-top: 0;
}

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

.bd_row.no-margin,
.bd_row.fullwidth.no-margin {
  margin-top: 0;
  margin-bottom: 0;
}

.bd_row.no-padding {
  padding: 0;
}

.bd_row.fullwidth.special {
  width: 80%;
  margin: 3em 0 auto;
  padding-bottom: 0;
}

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

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

.without_divi_builder .bd_section,
.et_pb_section_first {
  padding-top: 72px !important;
}

.bd_grid {
  display: grid;
  gap: 64px;
}

.bd_grid.smallgap {
  gap: 32px;
}

div.bd_row.centered>* {
  text-align: center;
}

.bd_grid.vertical_align>div {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.bd_grid img {
  width: 100%;
  height: auto;
}

@media only screen and (min-width: 981px) {
  .et_pb_section.et_section_regular .et_pb_row {
    max-width: var(--default_width);
    margin: 0 auto;
  }

  .flex_wrapper,
  .et_pb_row.flex_wrapper .et_pb_column {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .bd_row.flex_wrapper {
    width: 80%;
    margin: auto;
  }

  .et_pb_row.flex_wrapper.col4 .et_pb_column .et_pb_module {
    width: calc((100% - 3 * var(--gap)) / 4);
    margin-right: var(--gap);
    margin-bottom: var(--gap);
  }

  .et_pb_row.flex_wrapper.col4 .et_pb_column .et_pb_module:last-of-type {
    margin-right: 0;
  }

  .et_pb_row.flex_wrapper.col4 .et_pb_column .et_pb_module.et_pb_blurb {
    margin-bottom: 0;
  }

  .bd_row.fullwidth.special {
    width: 90%;
    margin-left: 10%;
  }

  .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;
  }

  .align-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }

  .align-left {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
  }

  .align-right {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
  }

  .align-space-evenly {
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly
  }

  .align-space-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }

  .align-space-around {
    -ms-flex-pack: distribute;
    justify-content: space-around
  }

  .valign-stretch {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
  }

  .valign-top {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
  }

  .valign-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }

  .valign-bottom {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
  }
}

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

  .bd_row,
  .bd_row.wide {
    width: 80%;
    max-width: 100%;
    margin: 0 auto;
    padding: 48px 0;
  }

  div.flex_wrapper.col-2.wide article:not(:last-of-type) {
    margin-bottom: calc(3 * var(--gap));
  }

  .flex_wrapper.col-3 .employe:not(:last-of-type) {
    margin-bottom: 40px;
  }
}

/*================================================
    wp-pagenavi
================================================*/

.wp-pagenavi {
  text-align: center;
  display: block;
  margin: 2em auto;
}

.wp-pagenavi a,
.wp-pagenavi span {
  border: unset;
}

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

/*================================================
    Contact Form 7, bd edit
================================================*/
#kontaktformular {
  max-width: 980px;
  margin: 0 auto;
}

.wpcf7 label {
  margin-bottom: .4em;
}

.wpcf7 label,
.wpcf7-form-control-wrap {
  display: block;
  display: block;
}

.wpcf7-form-control-wrap input,
.wpcf7-form-control-wrap textarea,
.wpcf7-form-control-wrap select {
  width: 100%;
}

.wpcf7-form-control-wrap input[type=checkbox] {
  width: auto;
}

.bd_grid .wpcf7-list-item {
  display: block;
  margin: unset;
}

.wpcf7-form-control.wpcf7-acceptance .wpcf7-list-item label {
  display: flex;
  align-items: flex-start;
}

.wpcf7-form-control.wpcf7-acceptance input[type="checkbox"] {
  margin-right: 1em;
  margin-top: 0.4em;
}

.wpcf7-list-item-label {
  flex: 1;
}

.wpcf7 input.wpcf7-text,
.wpcf7 input.wpcf7-title,
.wpcf7 input[type=email],
.wpcf7 input[type=password],
.wpcf7 input[type=tel],
.wpcf7 input[type=text],
.wpcf7 input[type=date],
.wpcf7 select,
.wpcf7 textarea {
  padding: 0.75rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 1rem;
}

.wpcf7 input.wpcf7-text:focus,
.wpcf7 input.wpcf7-title:focus,
.wpcf7 input[type=email]:focus,
.wpcf7 input[type=password]:focus,
.wpcf7 input[type=tel]:focus,
.wpcf7 input[type=text]:focus,
.wpcf7 input[type=date]:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus {
  border-color: #000;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.wpcf7 select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url('data:image/svg+xml;utf8,<svg fill="%23333" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/></svg>') no-repeat;
  background-position: right 10px center;
  background-color: var(--white, #fff);
  background-size: 16px;
  padding-right: 30px;
  border: 1px solid solid #ccc;
  border-radius: 4px;
  font-size: 1rem;
  padding: 0.75rem;
}

.wpcf7 select::-ms-expand {
  display: none;
}

/* Button colors and interaction states are defined in _basics.css. */

.wpcf7-list-item-label {
  font-size: 0.9rem;
  display: block;
}

.wpcf7-list-item-label a {
  text-decoration: underline;
}

.wpcf7-spinner {
  margin-left: 10px;
}

.has-spinner[disabled] {
  cursor: not-allowed;
  opacity: 0.5;
}

.has-spinner[disabled] .wpcf7-spinner {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid var(--white, #fff);
  border-top: 2px solid var(--primary);
  border-radius: 50%;
  animation: spinner 0.6s linear infinite;
}

@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.wpcf7-not-valid-tip {
  margin-top: .4em;
}


/* Product-specific stock display. */
.postid-6958 p.stock.in-stock {
  display: none !important;
}


/*================================================
    product-acf-details
================================================*/

.product-acf-details {
  line-height: 1.6;
  color: var(--body)
}

.product-acf-details__title {
  font-size: 1.25rem;
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.product-acf-details__content {
  display: block;
}

.product-acf-details__table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1.5rem;
  font-size: .9rem;
}

.product-acf-details__subtitle {
  font-size: 1rem;
  text-transform: uppercase;
  padding: 0.5rem 0;
  text-align: left;
  font-weight: bold;
  margin-top: 1rem;
}

.product-acf-details__row {
  border-bottom: 1px solid #e0e0e0;
}

.product-acf-details__row:last-child,
tbody tr.product-acf-details__row:last-of-type {
  border-bottom: none;
}

.product-acf-details__label,
.product-acf-details__value {
  padding: 0.75rem 0.5rem;
  text-align: left;
  vertical-align: top;
  line-height: 1.5;
}

.product-acf-details__label {
  font-weight: bold;
  width: 30%;
}

.product-acf-details__value {
  width: 70%;
}

.product-acf-details__sublist {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 1em;
  line-height: 1.5;
}

.product-acf-details__sublist li {
  margin-bottom: 0.25rem;
  font-size: 1em;
}

.product-acf-details__sublist li:last-child {
  margin-bottom: 0;
}

.product-acf-details__collapsible {
  margin-bottom: 1rem;
}

.product-acf-details__toggle,
.product-acf-details__toggle:hover {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-left: 1em;
  margin-bottom: 1em;
  background: transparent;
  border: none;
  cursor: pointer;
}

.product-acf-details__toggle .product-acf-details__subtitle {
  flex-grow: 1;
  background: transparent;
  padding: 0;
  margin: 0;
}

.product-acf-details__toggle-icon {
  font-size: 1.2rem;
  line-height: 1;
  padding: 0.25rem 0.5rem;
  transition: transform 0.3s ease-in-out;
  background: transparent;
}

.product-acf-details__toggle-icon::before {
  content: "+";
  display: inline-block;
  font-weight: bold;
}

.product-acf-details__toggle[aria-expanded="true"] .product-acf-details__toggle-icon::before {
  content: "–";
}

.product-acf-details__collapse-content {
  max-height: 0;
  opacity: 0;
  transform: translateY(-10px);
  transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
  overflow: hidden;
}

.product-acf-details__collapse-content:not([hidden]) {
  max-height: 1000px;
  opacity: 1;
  transform: translateY(0);
  padding-top: 0.5rem;
}

@media (prefers-reduced-motion: reduce) {

  .product-acf-details__collapse-content,
  .product-acf-details__toggle-icon {
    transition: none;
  }
}

@media (max-width: 768px) {

  .product-acf-details__table,
  .product-acf-details__table tbody,
  .product-acf-details__table tr,
  .product-acf-details__table th,
  .product-acf-details__table td {
    display: block;
    width: 100% !important;
    box-sizing: border-box;
  }

  .product-acf-details__subtitle {
    display: block;
    width: 100%;
  }

  .product-acf-details__row {
    display: block;
    border-bottom: none;
    padding: 0;
    margin-bottom: 0.75rem;
  }

  .product-acf-details__row:last-child {
    margin-bottom: 0;
  }

  .product-acf-details__label,
  .product-acf-details__value {
    display: block;
    width: 100%;
    padding: 0.35rem 0;
    border: none;
  }

  .product-acf-details__label {
    font-weight: bold;
    padding-bottom: 0.15rem;
  }

  .product-acf-details__value {
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #e0e0e0;
  }

  .product-acf-details__value .product-acf-details__sublist {
    padding-left: 0;
  }

  .product-acf-details__sublist li {
    margin-bottom: 0.2rem;
  }

  .product-acf-details__row:last-child .product-acf-details__value:last-child,
  .product-acf-details__row:last-of-type>.product-acf-details__value:last-of-type {
    border-bottom: none;
  }
}

button.product-acf-details__toggle:hover {
  border: unset;
}

.product-acf-details__title:focus,
.product-acf-details__toggle:focus {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}



/* Barrierefreiheit für Produkt-Filter Checkboxen */
.prdctfltr_add_scroll {
  padding: 1em 0;
}

.prdctfltr_checkboxes label:focus-within {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
    text-decoration: underline;
}





.shipping-banner {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 9998;
  background: var(--alternative, #f6f7f8);
  color: var(--body, #1d1d1b);
  box-shadow: 0 -6px 20px rgba(0,0,0,.08);
  transform: translateY(100%);
  transition: transform .35s ease-out;
}
.shipping-banner.is-open { transform: translateY(0); }

.shipping-banner__wrap {
  max-width: var(--max-width, 1200px);
  margin: 0 auto;
  padding: .8rem 1rem;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: .75rem;
  align-items: center;
}

/* WICHTIG: kein all: unset auf interaktiven Controls */
.shipping-banner__close {
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  margin: 0;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  background: var(--primary, #E62336);
  color: var(--white, #fff);
  width: 32px;
  height: 32px;
  border-radius: 50%;
  font: inherit;
  line-height: 1;
  transition: opacity .2s, box-shadow .2s, outline-offset .2s;
}
.shipping-banner__close:hover { opacity: .9; }
.shipping-banner__close:active { opacity: .8; }

/* sichtbarer Tastaturfokus */
.shipping-banner__close:focus,
.shipping-banner__close:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(230,35,54,.35);
}

.shipping-banner__close i { pointer-events: none; }

.shipping-banner__text {
  margin: 0;
  text-align: center;
  font-size: 15px;
}

.shipping-banner__spacer {
  width: auto;
  display: inline-block;
}

@media (max-width: 720px) {
  .shipping-banner { padding-bottom: env(safe-area-inset-bottom); }
  .shipping-banner__wrap {
    grid-template-columns: 1fr auto;
    gap: .5rem;
    padding: .9rem 1rem;
  }
  .shipping-banner__text {
    text-align: left;
    font-size: clamp(15px, 4.2vw, 17px);
    line-height: 1.45;
    padding-right: 72px;
  }
  .shipping-banner__spacer { display: none; }
}
@media (max-width: 420px) {
  .shipping-banner__text {
    font-size: clamp(15px, 5vw, 18px);
    padding-right: 76px;
  }
}

/* Off-screen is not hidden: exclude closed cart controls from keyboard focus. */
#custom-sidecart[aria-hidden="true"] {
  visibility: hidden;
  transition-property: right;
}

/* Barrierefreie Header-Stile */
#main-header {
  background-color: var(--white);
  position: relative;
  width: 100%;
  top: 0;
  z-index: 1000;
  font-family: var(--primary_font);
}

.header-container {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 var(--gutter);
}

.top-header {
  display: flex;
  align-items: center;
  padding: 20px 0;
  position: relative;
  z-index: 1001;
}

.search-container {
  flex: 1;
  position: relative;
  min-height: 38px;
  display: flex;
  align-items: center;
}

.search-container form {
  margin: 0;
}

.search-container input[type="search"] {
  border: 1px solid var(--altgrey);
  border-radius: var(--border-radius);
  padding: 8px;
  font-family: var(--primary_font);
}

.search-container input[type="submit"] {
  background: var(--primary);
  color: var(--white);
  border: none;
  border-radius: var(--border-radius);
  padding: 8px 15px;
  cursor: pointer;
}

.vrmdc-lazy-search {
  position: relative;
  width: 100%;
  min-height: 38px;
}

.vrmdc-lazy-search__asp[hidden],
.vrmdc-lazy-search__fallback[hidden] {
  display: none !important;
}

.vrmdc-lazy-search__asp,
.vrmdc-lazy-search__fallback {
  width: 100%;
}

.vrmdc-lazy-search__fallback {
  display: flex;
  align-items: center;
  gap: 0;
}

.vrmdc-lazy-search__fallback input[type="search"] {
  flex: 1 1 auto;
  min-width: 0;
  height: 38px;
  width: 100%;
  margin: 0;
  padding: 0 15px;
  border: 1px solid var(--altgrey, #ccc);
  border-right: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--body, #333);
  font-size: 14px;
  line-height: 38px;
  font-family: var(--primary_font);
  background: var(--white, #fff);
}

.vrmdc-lazy-search__fallback input[type="search"]::placeholder {
  color: var(--body, #333);
  opacity: .85;
}

.vrmdc-lazy-search__submit {
  position: relative;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  margin: 0;
  padding: 0;
  border: 1px solid var(--altgrey, #ccc);
  border-left: 0;
  border-radius: 0;
  background: var(--altgrey, #ccc);
  cursor: pointer;
}

.vrmdc-lazy-search__submit::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 18px;
  transform: translate(-50%, -50%);
  background: var(--white, #fff);
  mask: url("https://www.mainz-store.com/wp-content/themes/vrmdc/css/../img/search.svg") center / contain no-repeat;
  -webkit-mask: url("https://www.mainz-store.com/wp-content/themes/vrmdc/css/../img/search.svg") center / contain no-repeat;
}

.vrmdc-lazy-search.is-loading .vrmdc-lazy-search__fallback input[type="search"] {
  cursor: wait;
}

.vrmdc-lazy-search .asp_m,
.vrmdc-lazy-search .ajaxsearchpro {
  width: 100% !important;
}

.vrmdc-lazy-search .asp_main_container {
  margin: 0 !important;
}

.vrmdc-lazy-search div.asp_m.asp_m_2 .probox {
  min-height: 38px !important;
  height: 38px !important;
  border: 1px solid var(--altgrey, #ccc) !important;
  background: var(--white, #fff) !important;
}

.vrmdc-lazy-search div.asp_m.asp_m_2 .probox .proinput input.orig,
.vrmdc-lazy-search div.asp_m.asp_m_2 .probox .proinput input.autocomplete {
  height: 38px !important;
  font-size: 14px !important;
  font-family: var(--primary_font) !important;
  color: var(--body, #333) !important;
}

.vrmdc-lazy-search div.asp_m.asp_m_2 .probox .promagnifier,
.vrmdc-lazy-search div.asp_m.asp_m_2 .probox .proloading,
.vrmdc-lazy-search div.asp_m.asp_m_2 .probox .proclose,
.vrmdc-lazy-search div.asp_m.asp_m_2 .probox .prosettings {
  width: 38px !important;
  height: 38px !important;
  flex-basis: 38px !important;
}

.logo-container {
  flex: 2;
  text-align: center;
}

.et_header_style_left #logo,
/* Divi Fix */
.logo-container img #logo {
  max-width: 175px;
  height: auto;
}

.secondary-menu {
  flex: 1;
  text-align: right;
}

#secondary-nav {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-flex;
  align-items: center;
}

#secondary-nav.menu {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}

#secondary-nav .fa-light {
  color: var(--body);
  font-size: 1.4em;
}

#secondary-nav li {
  margin-left: var(--gutter);
}

#secondary-nav a {
  text-decoration: none;
}

#secondary-nav img {
  width: 24px;
  height: 24px;
}

#secondary-nav a:hover img,
#secondary-nav a:focus img {
  opacity: 0.8;
}

.top-header .menu-toggle {
  display: none;
  background: none;
  border: none;
  padding: 10px;
  cursor: pointer;
  position: absolute;
  right: var(--gutter);
  z-index: 1003;
  /* Höher als #primary-nav */
}

#primary-nav>div>button,
#primary-nav>div>button:hover,
.top-header .menu-toggle,
.top-header .menu-toggle:hover,
.top-header button.menu-toggle,
.top-header button.menu-toggle:hover {
  border: unset;
  padding: 10px;
}

.close-button-container {
  display: none;
  position: absolute;
  top: 16px;
  right: 30px;
  z-index: 1004;
  /* Über dem Menü-Inhalt */
}

/* Basiseigenschaften des Menu-Icons */
.menu-toggle .menu-icon,
.menu-toggle .menu-icon::before,
.menu-toggle .menu-icon::after {
  background: var(--primary);
  height: 2px;
  width: 25px;
  display: block;
  position: relative;
  transition: all 0.3s ease;
}

.menu-toggle .menu-icon::before,
.menu-toggle .menu-icon::after {
  content: '';
  position: absolute;
}

.menu-toggle .menu-icon::before {
  top: -8px;
}

.menu-toggle .menu-icon::after {
  top: 8px;
}

/* Transformiere den Burger-Button in ein "X", wenn das Menü offen ist */
.menu-toggle[aria-expanded="true"] .menu-icon {
  background: transparent;
}

.menu-toggle[aria-expanded="true"] .menu-icon::before {
  transform: rotate(45deg);
  top: 0;
}

.menu-toggle[aria-expanded="true"] .menu-icon::after {
  transform: rotate(-45deg);
  top: 0;
}

#primary-nav {
  border-top: 1px solid var(--altgrey);
  text-align: center;
}

#primary-menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

#primary-menu li {
  display: inline-block;
  position: relative;
}

#primary-menu a {
  display: block;
  color: var(--body);
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  padding: 25px;
  text-decoration: none;
}

#primary-menu a:hover,
#primary-menu a:focus,
#primary-menu .current-menu-item>a,
#primary-menu .current-menu-ancestor>a {
  color: var(--primary);
  /* background-color: rgba(230, 35, 54, 0.1); */
}

#primary-menu a:focus {
  outline-offset: 0;
}

#primary-menu .sub-menu {
  display: none;
  position: absolute;
  background: var(--white);
  list-style: none;
  padding: 10px 0;
  min-width: 200px;
  text-align: left;
  box-shadow: var(--boxshadow);
  z-index: 1000;
}

#primary-menu li:hover>.sub-menu,
#primary-menu li:focus-within>.sub-menu {
  display: block;
}

#primary-menu .sub-menu a {
  padding: 10px 20px;
  font-size: 13px;
}

@media (max-width: 980px) {
  .top-header {
    position: relative;
    height: 110px;
    align-items: flex-start;
  }

  .secondary-menu {
    position: absolute;
    top: 20px;
    left: var(--gutter);
    text-align: left;
    z-index: 1002;
  }

  #secondary-nav {
    display: flex;
    transform: translateY(3px);
  }

  #secondary-nav li {
    margin-left: 0;
    margin-right: .5em;
  }

  #secondary-nav li .fa-light {
    font-size: 1em;
  }

  .search-container {
    position: absolute;
    bottom: 10px;
    left: var(--gutter);
    right: var(--gutter);
  }

  .logo-container {
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 187px;
  }

  .top-header .menu-toggle {
    display: block !important;
    top: 20px;
    right: var(--gutter);
    transform: translateX(10px);
    /* Verschiebt den Button um das Padding nach rechts */
    z-index: 1003;
  }

  .close-button-container {
    display: block;
  }

  #primary-nav {
    position: fixed;
    top: 0;
    right: 0;
    width: 300px;
    height: 100vh;
    background: var(--white);
    transform: translateX(100%);
    transition: transform 0.4s ease;
    overflow-y: auto;
    padding-top: 80px;
    /* Platz für den Close-Button */
    z-index: 1001;
  }

  #primary-nav[aria-expanded="true"] {
    transform: translateX(0);
  }

  #primary-menu {
    display: block;
    text-align: left;
  }

  #primary-menu li {
    display: block;
  }

  #primary-menu a {
    padding: 15px 20px;
    border-bottom: 1px solid var(--altgrey);
  }

  #primary-menu .sub-menu {
    position: static;
    display: none;
    box-shadow: none;
    padding: 0;
  }

  #primary-menu .sub-menu a {
    padding-left: 40px;
    font-size: 12px;
  }
}

@media (max-width: 480px) {
  #primary-nav {
    width: 260px;
  }

  .logo-container {
    width: 130px;
  }
}

/* =============================
   Text-to-Speech Panel Styling
============================= */

.tts-panel {
  position: fixed;
  bottom: 24px;
  left: 16px;
  background: var(--white, #fff);
  border-radius: 18px;
  box-shadow: var(--boxshadow, 0 4px 18px rgba(0, 0, 0, 0.08));
  padding: 12px;
  display: none;
  z-index: 2000;
  width: auto;
  max-width: 420px;
  font-size: 1.08em;
  color: var(--body, #333);
  box-sizing: border-box;
}

.tts-panel .tts-section-label {
  margin-bottom: 8px;
  font-weight: bold;
  font-size: 1.04em;
  color: var(--body, #333);
}

.tts-panel-controls {
  display: flex;
  gap: 12px;
  margin-bottom: 0;
  justify-content: flex-start;
  align-items: center;
}

.tts-panel .tts-btn {
  all: unset;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--grey, #fbfbfb);
  color: var(--body, #333);
  border-radius: 8px;
  min-width: 40px;
  min-height: 40px;
  padding: 0;
  margin: 0;
  font-size: 1.16em;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: background 0.17s, color 0.17s, box-shadow 0.16s, border-color 0.16s;
  position: relative;
  border: 2px solid transparent;
}

.tts-panel .tts-btn:hover {
  background: var(--lightgrey, #F2F2F2);
  color: var(--primary, #E62336);
}

.tts-panel .tts-btn:focus-visible {
  outline: none;
  border-color: var(--focus, #C11E2D);
  box-shadow: 0 0 0 2px rgba(198, 30, 45, 0.12);
  background: var(--lighter, #FAD1CE);
  color: var(--primary, #E62336);
}

.tts-panel .tts-btn i,
.tts-panel .tts-btn svg {
  pointer-events: none;
  font-size: 1.18em;
  width: 1em;
  height: 1em;
}

@media (max-width: 600px) {
  .tts-panel {
    left: 4vw;
    right: 4vw;
    width: auto;
    max-width: none;
    padding: 10px 4vw 8px 4vw;
    font-size: 1em;
  }
  .tts-panel .tts-btn {
    min-width: 36px;
    min-height: 36px;
    font-size: 1em;
  }
  .tts-panel .tts-section-label {
    font-size: 1em;
  }
}


/*================================================
    Pageheader
================================================*/

#pageheader {
  height: 700px;
  padding: 0;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

#pageheader.small {
  height: 500px;
}

#pageheader:not(.slider)::before,
#pageheader .et_pb_slide::before {
  content: "";
  background: linear-gradient(132.6deg,
      rgba(255, 255, 255, 0.3) 0%,
      rgba(255, 255, 255, 0.83) 53.11%,
      #ffffff 100%);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.93;
}

#pageheader:not(.slider) .et_pb_row,
#pageheader .et_pb_slider_container_inner {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 65px;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
}

#pageheader:not(.slider) .et_pb_row {
  bottom: 50px;
}

#pageheader:not(.slider) .et_pb_row .et_pb_text {
  max-width: 800px;
}

#pageheader.narrow .et_pb_row {
  padding-bottom: 40px;
}

#pageheader .et_pb_row.centered .et_pb_module {
  margin: 0 auto;
  text-align: center;
}

#pageheader .et_pb_row.centered .et_pb_module.et_pb_search {
  margin-top: 30px;
}

.archive.et-db .et-l #pageheader.et_pb_section,
.archive #pageheader {
  display: flex;
  padding: 0 0 50px 0;
  background-repeat: no-repeat;
  object-fit: cover;
  background-size: 100%;
}

.archive.et-db .et-l #pageheader.et_pb_section .et_pb_row.intro,
.archive #pageheader .intro {
  margin: 0 auto;
  display: flex;
  top: 0;
  position: relative;
}

.archive.et-db .et-l #pageheader.et_pb_section .et_pb_row.intro .et_pb_column,
.archive #pageheader .intro .et_pb_column {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

/* Slider */

#pageheader.slider .et_pb_row,
#pageheader.slider .et_pb_column,
#pageheader.slider .et_pb_module,
#pageheader.slider .et_pb_slides,
#pageheader.slider .et_pb_slide {
  height: 100%;
  width: 100%;
  max-width: unset;
  padding: 0;
}

#pageheader.slider .et_pb_slide_description {
  padding: 0;
  height: 100%;
  max-width: 570px;
  width: 80%;
  margin-right: 5%;
  text-align: left;
}

#pageheader .et_pb_bg_layout_dark .et_pb_slide_description {
  text-shadow: unset;
}

#pageheader.slider .et_pb_slide_content {
  text-align: left;
  max-width: var(--narrower);
  margin-left: 0;
}

.et_pb_slide_description .et_pb_slide_title,
#pageheader.slider .et_pb_slide_content {
  color: #000 !important;
}

#pageheader.slider .et_pb_slide_content h1,
#pageheader.slider .et_pb_slide_content h2 {
  font-size: 38px;
  letter-spacing: 0;
  line-height: 43px;
}

#pageheader button:hover,
#pageheader a:hover {
  cursor: pointer;
}

#pageheader.slider .caption {
  position: absolute;
  top: -25px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 18px;
  color: var(--primary);
  text-transform: uppercase;
}

#pageheader.slider .caption:before {
  content: "";
  width: 55px;
  height: 1px;
  background-color: var(--primary);
  position: absolute;
  top: -8px;
  left: 0;
}

footer {
    font-size: 14px;
    letter-spacing: 0;
    line-height: 22px;
    border-bottom: 10px solid var(--primary);
    background: var(--lightgrey);
    background-color: var(--lightgrey);
    padding-top: 10px;
    color: var(--body);
}

.footer a {
    color: var(--body);
    font-size: 14px;
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer a:hover {
    color: var(--primary);
}

/* Rows */

footer section {
    width: 80%;
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0 var(--gutter);
}

footer section:not(:last-of-type) {
    border-bottom: 1px solid var(--darkgrey);
}

.footer__container {
    margin: 0 auto;
    padding: 30px 0;
}

/* Info-Blöcke */
.footer__info .footer__container {
    max-width: var(--slim);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15vw;
    padding: 2em;
}

.footer__info-item {
    flex: 1 1 calc(50% - 24px);
    max-width: 150px;
    text-align: center;
}

.footer__info-item i {
    margin-bottom: 1rem;
}

.footer__info-item img {
    margin-bottom: 10px;
    width: 50px;
    height: auto;
}

.footer__info-item p {
    margin: 0;
}

/* Navigation */
.footer__nav .footer__container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px;
}

.footer__nav-section {
    flex: 1 1 calc(33.33% - 24px);
    min-width: 200px;
}

.footer__nav-section .footer-heading {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 10px;
    padding-bottom: 0;
}

.footer__nav-section ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer__nav-section li {
    margin-bottom: 5px;
}

.footer__nav-section .menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer__nav-section .menu li {
    margin-bottom: 5px;
}

.footer__nav-section .menu a {
    font-size: 14px;
    line-height: 22px;
}

/* Store Adresse */
.footer__store address {
    font-style: normal;
    margin-bottom: 20px;
}

.footer__store .store-hours {
    margin: 10px 0;
}

.footer__store .store-hours strong {
    font-weight: bold;
}

.footer__store img {
    width: 173px;
    height: 118px;
    margin: 20px 0;
}

.footer__store p:last-child {
    margin-top: 20px;
}

/* Social Media */
.footer__social {
    text-align: center;
    padding: 30px 0;
    border-bottom: 1px solid var(--darkgrey);
}

.footer__social .menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: inline-flex;
    gap: 22px;
}

.footer__social li {
    display: inline-block;
}

.footer__social img {
    width: 24px;
    height: 24px;
}

/* Copyright */
.footer__copyright {
    text-align: center;
    padding: 30px 0;
}

.footer__copyright p {
    margin: 5px 0;
}

.footer__copyright small,
.footer__copyright small a {
    font-size: 12px;
}

/* Responsive Design */
@media only screen and (max-width: 980px) {
    .footer__container {
        padding: 40px 0 30px;
    }

    .footer__info {
        flex-direction: column;
        align-items: center;
    }

    .footer__info .footer__container {
        gap: calc(2*var(--gutter));
    }

    .footer__info-item {
        flex: 1 1 100%;
        max-width: 100%;
    }

    .footer__nav {
        flex-direction: column;
        align-items: center;
    }

    .footer__nav-section {
        flex: 1 1 100%;
        width: 60%;
        text-align: center;
    }

    .footer__store p:last-child {
        margin-top: 30px;
    }

    .footer__social,
    .footer__copyright {
        padding: 30px 0;
    }
}

@media only screen and (min-width: 768px) {
    .footer__container {
        padding: 30px 0;
    }
}

/* Angepasstes Footer-CSS für bessere Fokusbehandlung und Hover */
.footer a:hover {
    color: var(--primary);
    text-decoration: underline;
}

.footer a:focus {
    color: var(--primary);
    outline: 2px solid var(--focus);
    outline-offset: 2px;
    text-decoration: underline;
}

a:focus {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
    text-decoration: underline;
}

button:focus,
input:focus,
select:focus,
textarea:focus,
[tabindex]:focus {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
}

/* Skip-Link mit Fokusfarbe */
.skip-link {
    position: absolute;
    top: -100px;
    left: 0;
    background: var(--focus);
    color: var(--white);
    padding: 10px;
    z-index: 1000;
    transition: top 0.3s;
}

.skip-link:focus {
    top: 0;
    outline: 3px solid var(--primary);
    outline-offset: 2px;
}

/* Meine Wunschliste */

.page-template-template_without-builder-php #main-content .container,
body:not(.et-tb).page-template-template_without-builder-php #main-content .container,
body:not(.et-tb-has-header).page-template-template_without-builder-php #main-content .container,
.page-template-template_wishlist #main-content .container,
body:not(.et-tb).page-template-template_wishlist #main-content .container,
body:not(.et-tb-has-header).page-template-template_wishlist #main-content .container {
	padding: 0;
}

.page-template-template_wishlist #main-content .et_pb_section:first-child {
	padding: var(--section_padding) 0 60px 0;
}

.page-template-template_wishlist h1 {
	padding-bottom: 15px;
	text-align: center;
}

.page-template-template_wishlist .tinv-wishlist {

}

.page-template-template_wishlist .tinv-wishlist .tinv-header {
	padding: 0 0 var(--section_padding) 0;
	margin-bottom: 0;
}

.page-template-template_wishlist .tinv-wishlist .tinv-header .navigation-button {

}


.page-template-template_wishlist .tinv-wishlist .tinv-header .navigation-button li:not(:last-child) {
	margin-right: 50px;
}

.page-template-template_wishlist .tinv-wishlist .tinv-header .navigation-button a {
	margin-top: 0;
	margin-right: 0;
	color: var(--body);
	font-family: Adrianna;
	font-size: 16px;
	font-weight: 600;
	line-height: 26px;
	border-bottom:  1px solid #333333;
	transition: 0.3s ease all;
}

.page-template-template_wishlist .tinv-wishlist .tinv-header .navigation-button a:hover {
	color: var(--primary);
	border-color: var(--primary);
	transition: 0.3s ease all;
}

.page-template-template_wishlist .tinv-wishlist .tinv-header .navigation-button a.tinvwl-button-notifications {
}

.tinv-wishlist .tinvwl-table-manage-list,
table.shop_table {
	border: unset !important;
}

.tinv-wishlist .tinvwl-table-manage-list thead tr,
table.shop_table thead tr {
	padding: 0 !important;
}

.tinv-wishlist .tinvwl-table-manage-list thead tr th,
table.shop_table thead tr th {
	padding-top: 0 !important;
	padding-bottom: 30px;
}

#content-area table td,
#content-area table th,
#content-area table tr,
#main-content table.cart td,
#main-content table.cart th,
#main-content table.cart tr,
table.cart td, table.cart th,
table.cart tr {
	padding-top: 30px;
	padding-bottom: 30px;
}

.tinv-wishlist tfoot .tinvwl-to-right {
	width: 100%;
}

.tinvwl-table-manage-list .product-name a,
table.shop_table .product-name a {
	color: var(--body);
	max-width: 300px;
	display: inline-block;
}

.tinvwl-table-manage-list .product-action button,
.tinvwl-table-manage-list .product-action a{
	white-space: nowrap;
}

.cart-empty.woocommerce-info {

}

p.return-to-shop a.button.tinvwl-button.wc-backward {
	border-width: 1.5px;
}

p.return-to-shop a.button.tinvwl-button.wc-backward:hover {
	background: var(--primary);
	color: var(--white);
	filter: unset;
	border-width: 1.5px;
}

.tinv-wishlist .social-buttons {
	float: left;
}

/*.tinvwl-table-manage-list // .tinvwl-button */

button[name="tinvwl-add-to-cart"],
.tinvwl-table-manage-list  .product-action button,
.tinvwl-table-manage-list .product-action a,
button[name="tinvwl-action"]:hover,
button.tinvwl_button_add {
	background: var(--primary) !important;
	border: 1.5px solid var(--primary) !important;
	color: var(--white) !important;
}

button[name="tinvwl-add-to-cart"],
.tinvwl-table-manage-list .product-action button:hover ,
.tinvwl-table-manage-list .product-action a:hover,
button[name="tinvwl-action"],
button.tinvwl_button_add:hover {
	background: transparent !important;
	border: 1.5px solid var(--primary) !important;
	color: var(--primary) !important;
}

button.tinvwl-button:hover,
a.button.product_type_variable:hover {
	background: transparent ;
	color: var(--primary) ;
	border: 1.5px solid var(--primary);
	filter: unset;
}


/* ICONS */

.tinv-wishlist .product-remove button {
	background: unset;
}

.tinv-wishlist .product-remove button:after  {
	content: url('/wp-content/themes/vrmdc/img/delete.svg');
}


.ftinvwl-bars:before{content:'\e91c' !important}

/* SIDEBAR CART */

a.xoo-wsc-ft-btn.button.xoo-wsc-ft-btn-checkout,
a.xoo-wsc-ft-btn-continue:hover,
a.xoo-wsc-ft-btn-cart:hover {
	background: var(--primary) !important;
	border: 1.5px solid var(--primary) !important;
	color: var(--white) !important;
}

a.xoo-wsc-ft-btn.button.xoo-wsc-ft-btn-checkout:hover {
	background: transparent !important;
	border: 1.5px solid var(--primary) !important;
	color: var(--primary) !important;
}

/* CHECKOUT */

body.woocommerce-cart #main-content .container {
	padding: 100px 0 60px 0;
}

body.woocommerce-cart h1 {
	text-align: center;
	margin-bottom: 80px;
}

@media only screen and (max-width: 980px) {
	
	body.woocommerce-cart #main-content .container {
		padding-top: 150px;
	}
	
	body.woocommerce-cart h1 {
		margin-bottom: 0;
	}
	
}

@media only screen and (min-width: 768px) and (max-width: 980px) {
	
	
	body.woocommerce-cart h1 {
		margin-bottom: 30px;
	}
	
}

body.woocommerce-cart button:hover,
body.woocommerce-cart .checkout-button:hover {
	background: var(--primary) !important;
	border: 1.5px solid var(--primary) !important;
	color: var(--white) !important;
}

.woocommerce a.tinvwl_add_to_wishlist_button.tinvwl-product-already-on-wishlist:hover {
	color: var(--white) !important;
	background: var(--primary) !important;
	border-color: var(--primary) !important;
}
/* Hide voucher recipient/message fields for mainzcardplus products */
#recipient_name\[94435\]_field,
#recipient_name\[16066\]_field,
#recipient_name\[1285217\]_field,
#recipient_name\[1285219\]_field {
  display: none;
}

#message\[94435\]_field,
#message\[16066\]_field,
#message\[1285217\]_field,
#message\[1285219\]_field {
  display: none;
}

.voucher-image-options {
  display: none;
}


/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

