/* =========================================================
   ÖKO?LOGISCH! – OVERRIDE LAYER
   ---------------------------------------------------------
   Sammeldatei für alle Marken-/UX-Anpassungen (Mai 2026).
   Wird ganz zuletzt geladen und überschreibt damit gezielt
   die Module aus 1-base … 4-plugins.

   Inhalt:
     1. Fließtext + Buttons: Inter 300 Light, weiße Schrift,
        keine runden Ecken
     2. Navigation: roter Unterstrich
     3. Footer: Inter 300 Light, einheitliche Hintergrund-
        farbe, Öko?Logisch-Logo-Container
     4. Startseite: rote Trennstriche im Statement-Block,
        Trennstrich zwischen Überschrift und Fließtext
     5. Produktseite: Vegan-Badge, helle Beschreibung,
        zentrierte Bilder, dunkelgrüne Icons
     6. Akkordion / Tabs: grüne Akzente, transparenter
        Kasten
     7. Warenkorb: Versteckte Begleitfarbe-CTA, Strang-
        Hinweise, Begleitfarbe entfernt, orangener Kasse-
        Button
     8. Checkout: vollständig weißer Hintergrund
   ========================================================= */


/* ------------------------------------------------------------------
   1. BASIS: FLIESSTEXT + BUTTONS
   ------------------------------------------------------------------ */

/* Fließtext: Inter 300 Light global */
body,
p,
li,
dd,
.entry-content,
.bd-product-summary__intro,
.bd-product-summary__intro p,
.bd-wine-tab-content__copy,
.bd-wine-tab-content__copy p,
.footer__address,
.footer__contact-links,
.footer__nav-list,
.footer__legal-list,
.footer__copyright,
.bd-cart-item__specs,
.bd-cart-item__variation,
.bd-summary__label,
.bd-summary__sub,
.bd-summary__trust-list,
.bd-trustbar__item,
.bd-trustbar__item span {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-weight: 300;
}

/* Buttons: keine runden Ecken, Inter 300 Light, weiße Schrift */
.btn,
.btn-primary,
.btn-accent,
.btn-outline,
.btn-outline-accent,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.single_add_to_cart_button,
.checkout-button,
.add_to_cart_button,
.bd-cart__cta-btn,
.bd-cart-empty__cta,
.bd-summary__actions a.checkout-button,
.bd-summary__actions .checkout-button,
.bd-summary__continue,
.bd-cart__update,
.bd-cart__coupon-btn,
.bd_btn,
.bd_btn--outline,
.bd_btn--sm,
button[type="submit"]:not(.bd-nav__toggle):not(.bd-menu-toggle),
input[type="submit"] {
    border-radius: 0 !important;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-weight: 300 !important;
    letter-spacing: 0.02em;
}

/* Schriftfarbe weiß für gefüllte Buttons */
.btn-primary,
.btn-accent,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.single_add_to_cart_button,
.checkout-button,
.add_to_cart_button,
.bd-cart-empty__cta,
.bd-summary__actions a.checkout-button,
.bd-summary__actions .checkout-button,
.bd-cart__cta-btn {
    color: #ffffff !important;
}

.btn-primary:hover,
.btn-accent:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.bd-cart-empty__cta:hover,
.bd-summary__actions a.checkout-button:hover,
.single_add_to_cart_button:hover,
.checkout-button:hover,
.add_to_cart_button:hover {
    color: #ffffff !important;
}

/* WC Coupon-Input behält visuell den Stil, aber pill weg */
.bd-cart__coupon-input {
    border-radius: 0 !important;
}


/* Top-Bar (single-Modus): ein zentraler Text.
 * Wichtig: Trustbar-Default hat line-height: 1, dazu hat das
 * <span> overflow: hidden + text-overflow: ellipsis. Beides
 * zusammen schneidet Buchstaben-Unterlängen (g, p, y) ab. Hier
 * korrigieren: ausreichende Zeilenhöhe + kein hartes Overflow
 * für den Solo-Text. */
.bd-trustbar,
.bd-trustbar--single {
    line-height: var(--leading-snug) !important;
}

.bd-trustbar--single {
    border-top: 2px solid rgba(173, 17, 42, 0.58) !important;
    border-bottom: 1px solid rgba(43, 45, 66, 0.09) !important;
    background: rgba(251, 248, 239, 0.86) !important;
    color: var(--color-ink-800) !important;
}

.bd-trustbar__inner {
    min-height: 34px;
    padding-block: 4px;
}

.bd-trustbar--single .bd-trustbar__inner--centered {
    grid-template-columns: 1fr !important;
    text-align: center;
}

.bd-trustbar__item--solo {
    justify-content: center !important;
    align-items: center !important;
    font-size: 0.875rem;
    font-weight: 400 !important;
    letter-spacing: 0;
    line-height: 1.35;
}

.bd-trustbar__item--solo span {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    line-height: 1.4 !important;
    display: inline-block;
}

.bd-trustbar__claim {
    display: inline-flex !important;
    align-items: baseline;
    justify-content: center;
    gap: 0.42em;
}

.bd-trustbar__claim-mark {
    color: var(--color-red-500);
    font-weight: 600 !important;
}

.bd-trustbar__claim-separator {
    color: rgba(43, 45, 66, 0.34);
    font-weight: 400;
}

.bd-trustbar__claim-subline {
    color: rgba(43, 45, 66, 0.72);
    font-weight: 400 !important;
}

@media (max-width: 640px) {
    .bd-trustbar--single .bd-trustbar__item--solo {
        display: inline-flex !important;
        font-size: 0.8125rem;
    }

    .bd-trustbar__claim {
        gap: 0.32em;
    }
}

/* Header: korrekt verankertes Dropdown und robuste Tastaturbedienung. */
.bd-skip-link {
    position: fixed;
    top: .75rem;
    left: .75rem;
    z-index: 999999;
    padding: .7rem 1rem;
    border: 2px solid var(--color-red-500);
    border-radius: 4px;
    background: #ffffff;
    color: var(--color-heading);
    font-weight: 600;
    text-decoration: none;
    transform: translateY(calc(-100% - 2rem));
}

.bd-skip-link:focus,
.bd-skip-link:focus-visible {
    outline: 3px solid var(--color-red-500);
    outline-offset: 2px;
    transform: translateY(0);
}

.site-header--shop-focused .bd-nav__toggle:focus-visible {
    outline: 3px solid var(--color-red-500);
    outline-offset: 2px;
    box-shadow: none;
}

@media (min-width: 901px) {
    .site-header--shop-focused .main-navigation > ul > .menu-item-has-children:has(> .bd-nav__dropdown--simple) {
        position: relative;
    }

    .site-header--shop-focused .main-navigation > ul > .menu-item-has-children:has(> .bd-nav__dropdown--simple)::after {
        left: 50%;
        width: min(26rem, calc(100vw - 2rem));
        height: 16px;
        transform: translateX(-50%);
        z-index: 199;
    }

    .site-header--shop-focused .bd-nav__dropdown--simple {
        left: 50%;
        right: auto;
        z-index: 210;
        transform: translate(-50%, -8px);
    }

    .site-header--shop-focused .bd-nav__dropdown--simple:not([hidden]) {
        transform: translate(-50%, 0);
    }

    .site-header--shop-focused .bd-nav__toggle {
        justify-content: center;
        width: 2rem;
        min-width: 2rem;
        min-height: 2rem;
        padding: 0;
    }
}

@media (max-width: 900px) {
    .site-header--shop-focused .bd-nav__dropdown--simple .bd-nav__dropdown-link {
        height: auto;
        min-height: 4rem;
        padding: .65rem var(--container-padding) .65rem calc(var(--container-padding) + 1rem);
    }

    .site-header--shop-focused .bd-nav__dropdown--simple .bd-nav__dropdown-label {
        flex-direction: column;
        align-items: flex-start;
        gap: .2rem;
    }

    .site-header--shop-focused .bd-nav__dropdown--simple .bd-nav__dropdown-title {
        font-size: .95rem;
        line-height: 1.22;
    }

    .site-header--shop-focused .bd-nav__dropdown--simple .bd-nav__dropdown-desc {
        overflow: visible;
        font-size: .75rem;
        line-height: 1.3;
        white-space: normal;
        text-overflow: clip;
    }
}


/* ------------------------------------------------------------------
   2. NAVIGATION: ROTER UNTERSTRICH
   ------------------------------------------------------------------ */
.main-navigation > ul > li > a::after,
.bd-nav__toggle-wrap::after {
    background: var(--color-red-500) !important;
}

.site-header--shop-focused .bd-header-menu__item--featured > .bd-nav__toggle-wrap .bd-nav__parent-link,
.site-header--shop-focused .bd-header-menu__item--featured > a {
    font-weight: 400 !important;
}

.site-header--shop-focused .main-navigation > ul > li.current-menu-item > a,
.site-header--shop-focused .main-navigation > ul > li.current-menu-ancestor > a,
.site-header--shop-focused .menu-item-has-children.current-menu-item > .bd-nav__toggle-wrap .bd-nav__parent-link,
.site-header--shop-focused .menu-item-has-children.current-menu-ancestor > .bd-nav__toggle-wrap .bd-nav__parent-link {
    color: var(--color-red-500) !important;
    font-weight: var(--weight-semibold) !important;
}

.site-header--shop-focused .menu-item-has-children.current-menu-item > .bd-nav__toggle-wrap .bd-nav__toggle,
.site-header--shop-focused .menu-item-has-children.current-menu-ancestor > .bd-nav__toggle-wrap .bd-nav__toggle {
    color: var(--color-red-500) !important;
}

.site-header--shop-focused .menu-item-has-children.current-menu-item > .bd-nav__toggle-wrap::after,
.site-header--shop-focused .menu-item-has-children.current-menu-ancestor > .bd-nav__toggle-wrap::after {
    transform: scaleX(1);
}

.site-header--shop-focused .bd-nav__dropdown-link.is-current,
.site-header--shop-focused .bd-nav__mega-cardlink.is-current {
    color: var(--color-red-500);
}

.site-header--shop-focused .bd-nav__dropdown-link.is-current .bd-nav__dropdown-title,
.site-header--shop-focused .bd-nav__mega-cardlink.is-current strong {
    color: var(--color-red-500);
    font-weight: var(--weight-semibold);
}

.site-header--shop-focused .bd-nav__dropdown-link.is-current .bd-nav__item-chevron {
    opacity: 0.72;
    transform: translateX(2px);
}


/* ------------------------------------------------------------------
   3. FOOTER: EINHEITLICHE FARBE + ÖKO-LOGO
   ------------------------------------------------------------------ */

/* Untere Zeile (Legal) bekommt dieselbe Farbe wie der Haupt-Footer */
.footer__legal {
    background: var(--color-accent) !important; /* gleich wie .footer__main */
}

/* Trustbar (Payment-Icons) ebenfalls einfarbig — kein Schleier */
.footer__bar {
    background-image: none !important;
    background-color: var(--color-accent) !important;
}

/* Footer-Schrift: 300 Light */
.site-footer,
.site-footer p,
.site-footer a,
.site-footer span,
.site-footer li,
.site-footer address,
.footer__col-title,
.footer__copyright,
.footer__legal-list a,
.footer__payment-label {
    font-weight: 300 !important;
    letter-spacing: 0.01em;
}

/* Col-Title bleibt etwas markanter erkennbar */
.footer__col-title {
    font-weight: 400 !important;
    text-transform: none;
    letter-spacing: 0;
    font-size: 1rem;
}

/* Öko?Logisch Logo: zweite Footer-Brand-Marke */
.footer__brand-default .custom-logo-link,
.footer__brand-default .footer__custom-logo-link {
    width: min(16.5rem, 100%);
}

.footer__brand-default .custom-logo,
.footer__brand-default .footer__custom-logo {
    width: 100%;
    height: 3rem;
    max-height: none;
    aspect-ratio: 424.3 / 76.6;
    object-fit: contain;
}

.footer__brand-default .footer__oeko-logo {
    display: block;
    max-height: 56px;
    width: auto;
    margin: var(--space-md) 0 var(--space-sm);
    object-fit: contain;
}

.footer__brand-default .footer__oeko-logo--placeholder {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin: var(--space-md) 0 var(--space-sm);
    padding: 0.4rem 0.9rem;
    background: rgba(255, 255, 255, 0.12);
    border: 1px dashed rgba(255, 255, 255, 0.4);
    color: #fff;
    font-weight: 300;
    font-size: 0.85rem;
    line-height: 1.2;
}

/* Shop-Seiten brauchen nach den hellen Produkt- und Archivflächen einen
   ruhigeren Abschluss als den vollflächig roten Standard-Footer. */
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .site-footer {
    margin-top: clamp(3.5rem, 7vw, 6rem);
    border-top: 1px solid var(--color-border);
    background: var(--color-bg-light);
    color: var(--color-text);
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__main {
    padding-block: clamp(3rem, 6vw, 5rem) clamp(2.25rem, 4vw, 3.25rem);
    background: var(--color-bg-light) !important;
    color: var(--color-text);
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__grid {
    gap: clamp(1.5rem, 3vw, 3rem);
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__col-title {
    position: relative;
    margin-bottom: var(--space-md);
    padding-bottom: .7rem;
    color: var(--color-heading) !important;
    font-weight: var(--weight-semibold) !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__col-title::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 3.25rem;
    height: 2px;
    background: var(--color-red-500);
    content: "";
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__site-name,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__site-name a {
    color: var(--color-heading) !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__tagline,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__address,
:is(body.single-product, body.post-type-archive-product, body.tax-product_tag, body.tax-product_cat) .footer__contact-links,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__nav-list a,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__contact-links a,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__contact-links small {
    color: var(--color-text) !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__nav-list a:hover,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__contact-links a:hover {
    color: var(--color-red-500) !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__social-links a {
    width: 2.35rem;
    height: 2.35rem;
    border: 1px solid var(--color-border);
    border-radius: 999px;
    background: var(--color-bg);
    color: var(--color-red-500) !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__social-links a:hover,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__social-links a:focus-visible {
    border-color: var(--color-red-500);
    background: var(--color-red-500);
    color: var(--color-white) !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__bar {
    min-height: 0;
    padding-block: var(--space-md);
    border-block: 1px solid var(--color-border);
    background: var(--color-bg) !important;
    color: var(--color-heading);
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__bar-inner {
    justify-content: flex-start;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__payment-label,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__payment-icon-list {
    color: var(--color-heading) !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__payment-icon-list i {
    color: var(--color-red-500);
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__legal {
    padding-block: var(--space-md);
    border-top: 0;
    background: var(--color-bg) !important;
    color: var(--color-muted);
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__revocation-action a,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__legal-list a,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__copyright,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__copyright a {
    color: var(--color-muted) !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__revocation-action a:hover,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__legal-list a:hover,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__copyright a:hover {
    color: var(--color-red-500) !important;
}

@media (max-width: 640px) {
    :is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__col--brand {
        border-bottom-color: var(--color-border);
    }

    :is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__bar-inner {
        justify-content: center;
        text-align: center;
    }
}

/* Shop-Footer: eigener Abschluss mit Vertrauen, Orientierung und passendem Branding. */
.bd-shop-footer-prelude {
    border-block: 1px solid var(--color-border);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(251, 248, 239, 0.98)),
        var(--color-bg-light);
}

.bd-shop-footer-prelude__inner {
    display: grid;
    grid-template-columns: minmax(13rem, .85fr) minmax(0, 2.25fr) auto;
    gap: clamp(1rem, 2.3vw, 2.5rem);
    align-items: center;
    padding-block: clamp(1.25rem, 2.2vw, 1.85rem);
}

.bd-shop-footer-prelude__intro {
    display: grid;
    gap: .35rem;
}

.bd-shop-footer-prelude__intro span {
    color: var(--color-red-500);
    font-size: .72rem;
    font-weight: var(--weight-semibold) !important;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bd-shop-footer-prelude__intro strong {
    max-width: 18rem;
    color: var(--color-heading);
    font-family: var(--font-heading);
    font-size: clamp(1.15rem, 1.45vw, 1.45rem);
    font-weight: var(--weight-semibold) !important;
    line-height: 1.2;
}

.bd-shop-footer-prelude__list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(.75rem, 1.5vw, 1.25rem);
    margin: 0;
    padding: 0;
    list-style: none;
}

.bd-shop-footer-prelude__list li {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    gap: .65rem;
    align-items: start;
}

.bd-shop-footer-prelude__list i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid rgba(173, 17, 42, .18);
    border-radius: 999px;
    background: #fff;
    color: var(--color-red-500);
    font-size: .95rem;
}

.bd-shop-footer-prelude__list span {
    display: grid;
    gap: .15rem;
    min-width: 0;
}

.bd-shop-footer-prelude__list strong {
    color: var(--color-heading);
    font-size: .86rem;
    font-weight: var(--weight-semibold) !important;
    line-height: 1.25;
}

.bd-shop-footer-prelude__list small {
    color: var(--color-muted);
    font-size: .78rem;
    line-height: 1.45;
}

.bd-shop-footer-prelude__actions {
    display: grid;
    gap: .6rem;
    min-width: 11.5rem;
}

.bd-shop-footer-prelude__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.55rem;
    padding: .7rem 1rem;
    border: 1px solid var(--color-red-500);
    border-radius: 0;
    background: var(--color-red-500);
    color: #fff !important;
    font-size: .84rem;
    font-weight: var(--weight-semibold) !important;
    line-height: 1;
    text-decoration: none;
    transition:
        background-color var(--transition),
        border-color var(--transition),
        color var(--transition),
        transform var(--transition);
}

.bd-shop-footer-prelude__actions a + a {
    background: transparent;
    color: var(--color-red-500) !important;
}

.bd-shop-footer-prelude__actions a:hover,
.bd-shop-footer-prelude__actions a:focus-visible {
    border-color: var(--color-heading);
    background: var(--color-heading);
    color: #fff !important;
    transform: translateY(-1px);
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .site-footer {
    border-top: 0;
    box-shadow: 0 -1px 0 var(--color-border);
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__main {
    padding-block: clamp(2.4rem, 4.2vw, 3.75rem);
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__grid {
    grid-template-columns: minmax(15rem, 1.15fr) .78fr .95fr minmax(15rem, 1.1fr);
    row-gap: clamp(1.5rem, 3vw, 2.5rem);
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__brand-default {
    max-width: 21rem;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__brand-default .footer__custom-logo,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__brand-default .custom-logo {
    width: min(16.5rem, 100%);
    max-height: none;
    margin-bottom: 1rem;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__brand-default .footer__oeko-logo {
    max-height: 3.4rem;
    margin-top: .6rem;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__tagline {
    max-width: 17rem;
    margin-top: .95rem;
    color: var(--color-muted) !important;
    font-size: .9rem;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__col-title {
    margin-bottom: .95rem;
    padding-bottom: .55rem;
    font-size: .96rem;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__nav-list {
    gap: .55rem;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__nav-list a {
    font-size: .9rem;
    line-height: 1.35;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__address {
    margin-bottom: .85rem;
    line-height: 1.65;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__contact-links {
    line-height: 1.7;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__social-links {
    margin-left: 0;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__bar-inner {
    justify-content: space-between;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__payment-icons {
    gap: .9rem;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__payment-label {
    color: var(--color-muted) !important;
    font-size: .72rem;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__legal-inner {
    grid-template-columns: auto 1fr auto;
    gap: 1rem;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__legal-nav {
    justify-self: center;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__revocation-action a {
    border: 0;
    background: transparent;
    padding: 0;
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 1160px) {
    .bd-shop-footer-prelude__inner {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .bd-shop-footer-prelude__intro strong {
        max-width: 34rem;
    }

    .bd-shop-footer-prelude__actions {
        grid-template-columns: repeat(2, minmax(0, 12rem));
    }
}

@media (max-width: 900px) {
    .bd-shop-footer-prelude__list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    :is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    :is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__legal-inner {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }
}

@media (max-width: 640px) {
    .bd-shop-footer-prelude__inner {
        padding-block: 1.3rem;
    }

    .bd-shop-footer-prelude__list {
        grid-template-columns: 1fr;
    }

    .bd-shop-footer-prelude__actions {
        grid-template-columns: 1fr;
        width: 100%;
    }

    :is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__grid {
        grid-template-columns: 1fr;
    }

    :is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__brand-default .footer__custom-logo,
    :is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .footer__brand-default .custom-logo {
        width: min(14.5rem, 100%);
    }
}

/* Globaler Jana-Footer: heller Abschluss statt roter Fremdkörper. */
.site-footer {
    margin-top: 0;
    border-top: 0;
    background: var(--color-bg-light);
    color: var(--color-text);
    box-shadow: 0 -1px 0 var(--color-border);
}

.footer__main {
    padding-block: clamp(2.4rem, 4.2vw, 3.75rem);
    background: var(--color-bg-light) !important;
    color: var(--color-text);
}

.footer__grid {
    grid-template-columns: minmax(15rem, 1.15fr) .78fr .95fr minmax(15rem, 1.1fr);
    gap: clamp(1.5rem, 3vw, 2.5rem) clamp(1.5rem, 3vw, 3rem);
    align-items: start;
}

.footer__brand-default {
    max-width: 21rem;
}

.footer__brand-logos {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: min(16.5rem, 100%);
}

.footer__brand-logos .footer__oeko-logo {
    margin-inline: auto;
}

.footer__brand-default .footer__custom-logo,
.footer__brand-default .custom-logo {
    width: min(16.5rem, 100%);
    margin-bottom: 1rem;
}

.footer__brand-default .footer__oeko-logo {
    max-height: 3.4rem;
    margin-top: .6rem;
}

.footer__brand-default .footer__oeko-logo--placeholder {
    border-color: var(--color-border);
    background: var(--color-bg);
    color: var(--color-heading);
}

.footer__site-name,
.footer__site-name a,
.footer__col-title {
    color: var(--color-heading) !important;
}

.footer__tagline,
.footer__address,
.footer__contact-links,
.footer__nav-list a,
.footer__contact-links a,
.footer__contact-links small {
    color: var(--color-text) !important;
}

.footer__tagline {
    max-width: 17rem;
    margin-top: .95rem;
    color: var(--color-muted) !important;
    font-size: .9rem;
}

.footer__brand-default .footer__tagline {
    width: min(16.5rem, 100%);
    text-align: center;
}

.footer__col-title {
    position: relative;
    margin-bottom: .95rem;
    padding-bottom: .55rem;
    font-size: .96rem;
    font-weight: var(--weight-semibold) !important;
}

.footer__col-title::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 3.25rem;
    height: 2px;
    background: var(--color-red-500);
    content: "";
}

.footer__nav-list {
    gap: .55rem;
}

.footer__nav-list a {
    font-size: .9rem;
    line-height: 1.35;
}

.footer__nav-list a:hover,
.footer__contact-links a:hover,
.footer__nav-list a:focus-visible,
.footer__contact-links a:focus-visible {
    color: var(--color-red-500) !important;
}

.footer__address {
    margin-bottom: .85rem;
    line-height: 1.65;
}

.footer__contact-links {
    line-height: 1.7;
}

.footer__social-links {
    margin-left: 0;
}

.footer__social-links a {
    width: 2.35rem;
    height: 2.35rem;
    border: 1px solid var(--color-border);
    border-radius: 999px;
    background: var(--color-bg);
    color: var(--color-red-500) !important;
}

.footer__social-links a:hover,
.footer__social-links a:focus-visible {
    border-color: var(--color-red-500);
    background: var(--color-red-500);
    color: var(--color-white) !important;
}

.footer__bar {
    min-height: 0;
    padding-block: var(--space-md);
    border-block: 1px solid var(--color-border);
    background: var(--color-bg) !important;
    color: var(--color-heading);
}

.footer__bar-inner {
    justify-content: space-between;
}

.footer__payment-icons {
    gap: .9rem;
}

.footer__payment-label,
.footer__payment-icon-list {
    color: var(--color-muted) !important;
}

.footer__payment-label {
    font-size: .72rem;
}

.footer__payment-icon-list i {
    color: var(--color-red-500);
}

.footer__extras {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(17rem, .7fr);
    gap: clamp(1rem, 3vw, 2rem);
    margin-top: clamp(2rem, 5vw, 4rem);
    padding-top: clamp(1.5rem, 3vw, 2.5rem);
    border-top: 1px solid var(--color-border);
}

.footer__newsletter,
.footer__price-list {
    display: grid;
    align-items: center;
    gap: clamp(1rem, 3vw, 2rem);
    padding: clamp(1.25rem, 3vw, 2rem);
    border: 1px solid var(--color-border);
    border-radius: 8px;
    background: var(--color-bg);
}

.footer__newsletter {
    grid-template-columns: minmax(0, .85fr) minmax(18rem, 1fr);
}

.footer__newsletter-title,
.footer__newsletter p,
.footer__price-list strong,
.footer__price-list small {
    margin: 0;
    color: var(--color-heading);
}

.footer__newsletter .footer__newsletter-title {
    color: var(--color-heading);
    font-family: var(--font-heading);
    font-size: clamp(1.45rem, 2.4vw, 2rem);
    font-weight: var(--weight-semibold);
    line-height: var(--leading-tight);
    letter-spacing: var(--tracking-h2);
}

.footer__newsletter p,
.footer__price-list small {
    color: var(--color-muted);
}

.footer__extras-kicker {
    display: block;
    margin: 0 0 .35rem !important;
    color: var(--color-red-500) !important;
    font-size: .72rem;
    font-weight: var(--weight-bold);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.footer__newsletter-form .wpcf7-form {
    display: block;
}

.footer__newsletter-form .wpcf7-form > p {
    margin: 0;
}

.footer__newsletter-fields {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .75rem;
    align-items: stretch;
}

.footer__newsletter-fields .wpcf7-form-control-wrap {
    min-width: 0;
}

.footer__newsletter-form input[type="email"] {
    min-height: 3.25rem;
    margin: 0;
    border-color: var(--color-border);
    background: var(--color-white);
    color: var(--color-heading);
}

.footer__newsletter-form input[type="submit"] {
    width: auto;
    min-width: 9rem;
    margin: 0;
}

.footer__newsletter-form .wpcf7-acceptance,
.footer__newsletter-form .wpcf7-not-valid-tip,
.footer__newsletter-form .wpcf7-response-output {
    display: block;
    margin-top: .75rem;
}

.footer__price-list {
    grid-template-columns: auto minmax(0, 1fr);
    color: inherit;
    text-decoration: none;
}

.footer__price-list:hover,
.footer__price-list:focus-visible {
    border-color: var(--color-red-500);
    transform: translateY(-2px);
}

.footer__price-list-icon {
    display: grid;
    place-items: center;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    background: color-mix(in srgb, var(--color-red-500) 10%, var(--color-bg));
    color: var(--color-red-500);
    font-size: 1.35rem;
}

.footer__price-list strong,
.footer__price-list small {
    display: block;
}

@media (max-width: 900px) {
    .footer__extras,
    .footer__newsletter {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .footer__newsletter-fields {
        grid-template-columns: 1fr;
    }

    .footer__newsletter-form input[type="submit"] {
        width: 100%;
    }
}

.footer__legal {
    padding-block: var(--space-md);
    border-top: 0;
    background: var(--color-bg) !important;
    color: var(--color-muted);
}

/* Vier direkte Charakter-Einstiege unter dem Shop-Hero. */
.bd-wine-personalities {
    margin-block: clamp(2rem, 5vw, 4.5rem);
}

.bd-wine-personalities__head {
    margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

.bd-wine-personalities__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(.8rem, 2vw, 1.25rem);
}

.bd-wine-personality {
    display: grid;
    grid-template-columns: minmax(8rem, .78fr) minmax(0, 1.2fr);
    min-height: 15rem;
    border: 1px solid var(--color-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--color-bg-light) 84%, var(--color-primary) 16%);
    color: var(--color-heading);
    text-decoration: none;
    overflow: clip;
    transition: border-color var(--transition), transform var(--transition), box-shadow var(--transition);
}

.bd-wine-personality:hover,
.bd-wine-personality:focus-visible {
    border-color: color-mix(in srgb, var(--color-primary) 55%, var(--color-border));
    box-shadow: 0 18px 36px color-mix(in srgb, var(--color-heading) 10%, transparent);
    transform: translateY(-3px);
}

.bd-wine-personality__media {
    display: grid;
    place-items: end center;
    min-width: 0;
    padding: 1.25rem .75rem 0;
    background: var(--color-bg);
}

.bd-wine-personality__image {
    width: 100%;
    height: 14rem;
    margin: 0;
    object-fit: contain;
}

.bd-wine-personality__copy {
    display: grid;
    align-content: center;
    gap: .65rem;
    padding: clamp(1.25rem, 3vw, 2rem);
}

.bd-wine-personality__eyebrow {
    color: var(--color-muted);
    font-size: .72rem;
    font-weight: var(--weight-bold);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bd-wine-personality__copy strong {
    font-family: var(--font-heading);
    font-size: clamp(1.45rem, 2.6vw, 2.25rem);
    line-height: 1;
    text-transform: uppercase;
}

.bd-wine-personality__action {
    display: inline-flex;
    gap: .5rem;
    align-items: center;
    width: fit-content;
    margin-top: .5rem;
    color: var(--color-red-500);
    font-size: .85rem;
    font-weight: var(--weight-semibold);
}

@media (max-width: 760px) {
    .bd-wine-personalities__grid {
        grid-template-columns: 1fr;
    }

    .bd-wine-personality {
        min-height: 13rem;
    }
}

@media (max-width: 440px) {
    .bd-wine-personality {
        grid-template-columns: minmax(6.5rem, .62fr) minmax(0, 1fr);
    }

    .bd-wine-personality__image {
        height: 11rem;
    }
}

.bd-cart-item__legal {
    margin: .65rem 0 0;
    color: var(--color-muted);
    font-size: .78rem;
    line-height: 1.55;
}

.bd-home-instagram {
    padding-block: clamp(3.5rem, 7vw, 6rem);
    border-top: 1px solid var(--color-border);
    background: var(--color-bg-light);
}

.bd-home-instagram__head {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
    align-items: end;
    margin-bottom: clamp(1.5rem, 4vw, 2.5rem);
}

.bd-home-instagram__head h2,
.bd-home-instagram__head p {
    margin: 0;
}

.bd-home-instagram__head h2 {
    max-width: 20ch;
    color: var(--color-heading);
    font-size: clamp(2rem, 4vw, 3.25rem);
}

.bd-home-instagram__head > div > p:last-child {
    max-width: 62ch;
    margin-top: .75rem;
    color: var(--color-muted);
}

.bd-home-instagram__kicker {
    display: flex;
    gap: .5rem;
    align-items: center;
    margin-bottom: .5rem !important;
    color: var(--color-red-500) !important;
    font-size: .78rem;
    font-weight: var(--weight-bold);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bd-home-instagram__fallback {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    padding: clamp(1.25rem, 3vw, 2rem);
    border: 1px solid var(--color-border);
    border-radius: 8px;
    background: var(--color-bg);
    color: var(--color-heading);
    text-decoration: none;
}

.bd-home-instagram__fallback > i:first-child {
    display: grid;
    place-items: center;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    background: var(--color-red-500);
    color: var(--color-white);
    font-size: 1.5rem;
}

.bd-home-instagram__fallback strong,
.bd-home-instagram__fallback small {
    display: block;
}

.bd-home-instagram__fallback small {
    margin-top: .2rem;
    color: var(--color-muted);
}

.bd-home-instagram__fallback:hover,
.bd-home-instagram__fallback:focus-visible {
    border-color: var(--color-red-500);
}

.bd-home-instagram__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(.75rem, 2vw, 1.25rem);
}

.bd-home-instagram__card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--color-border);
    border-radius: 8px;
    background: var(--color-bg);
    color: var(--color-heading);
    text-decoration: none;
    transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.bd-home-instagram__card:hover,
.bd-home-instagram__card:focus-visible {
    border-color: var(--color-red-500);
    box-shadow: 0 16px 40px rgba(32, 36, 55, .1);
    transform: translateY(-3px);
}

.bd-home-instagram__media {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    background: var(--color-bg-light);
}

.bd-home-instagram__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.bd-home-instagram__card:hover .bd-home-instagram__media img,
.bd-home-instagram__card:focus-visible .bd-home-instagram__media img {
    transform: scale(1.035);
}

.bd-home-instagram__media > i {
    position: absolute;
    top: .75rem;
    right: .75rem;
    display: grid;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    background: rgba(32, 36, 55, .82);
    color: var(--color-white);
}

.bd-home-instagram__meta {
    display: grid;
    gap: .4rem;
    min-height: 7rem;
    padding: 1rem;
    align-content: space-between;
    font-size: .9rem;
    line-height: 1.5;
}

.bd-home-instagram__meta small {
    color: var(--color-muted);
    font-size: .75rem;
}

@media (max-width: 900px) {
    .bd-home-instagram__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .bd-home-instagram__head {
        display: grid;
        align-items: start;
    }
}

@media (max-width: 520px) {
    .bd-home-instagram__grid {
        display: flex;
        gap: .8rem;
        margin-inline: calc(var(--container-padding-mobile) * -1);
        padding-inline: var(--container-padding-mobile);
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: thin;
    }

    .bd-home-instagram__card {
        flex: 0 0 min(82vw, 20rem);
        scroll-snap-align: start;
    }
}

.footer__legal-inner {
    grid-template-columns: auto 1fr auto;
    gap: clamp(1rem, 2.6vw, 2rem);
    align-items: center;
}

.footer__legal-nav {
    justify-self: center;
    min-width: 0;
}

.footer__legal-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
    justify-self: start;
}

.footer__legal-list {
    align-items: center;
    gap: .45rem .95rem;
}

.footer__legal-list li {
    display: inline-flex;
    align-items: center;
    min-width: 0;
}

.footer__legal-list li + li::before {
    content: none !important;
}

.footer__legal-list a:not(.bd-consent-settings) {
    color: var(--color-muted) !important;
    font-size: .82rem;
    line-height: 1.35;
    text-decoration: none;
}

.footer__revocation-action a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.4rem;
    padding: .58rem .85rem;
    border: 1px solid var(--color-red-500) !important;
    border-radius: 0 !important;
    background: var(--color-red-500);
    color: var(--color-white) !important;
    font-size: .82rem;
    font-weight: var(--weight-semibold) !important;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.footer__consent-action .bd-consent-settings,
.footer__legal-list .bd-consent-settings {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.4rem;
    padding: .58rem .85rem;
    border: 1px solid color-mix(in srgb, var(--color-red-500) 36%, var(--color-border));
    border-radius: 0;
    background: color-mix(in srgb, var(--color-red-500) 6%, var(--color-bg));
    color: var(--color-red-500) !important;
    font-size: .82rem;
    font-weight: var(--weight-semibold) !important;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.footer__copyright,
.footer__copyright a {
    color: var(--color-muted) !important;
}

.footer__revocation-action a:hover,
.footer__revocation-action a:focus-visible,
.footer__consent-action .bd-consent-settings:hover,
.footer__consent-action .bd-consent-settings:focus-visible,
.footer__legal-list .bd-consent-settings:hover,
.footer__legal-list .bd-consent-settings:focus-visible {
    border-color: var(--color-heading) !important;
    background: var(--color-heading);
    color: var(--color-white) !important;
    opacity: 1;
}

.footer__legal-list a:hover,
.footer__legal-list a:focus-visible,
.footer__copyright a:hover,
.footer__copyright a:focus-visible {
    color: var(--color-red-500) !important;
    opacity: 1;
}

@media (max-width: 900px) {
    .footer__grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .footer__legal-inner {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .footer__legal-actions {
        justify-content: center;
        justify-self: center;
    }

    .footer__legal-list {
        justify-content: center;
    }
}

@media (max-width: 640px) {
    .footer__grid {
        grid-template-columns: 1fr;
    }

    .footer__col--brand {
        border-bottom-color: var(--color-border);
    }

    .footer__bar-inner {
        justify-content: center;
        text-align: center;
    }

    .footer__brand-default .footer__custom-logo,
    .footer__brand-default .custom-logo {
        width: min(14.5rem, 100%);
    }
}


/* ------------------------------------------------------------------
   4. STARTSEITE: TRENNSTRICHE
   ------------------------------------------------------------------ */

/* Zitatblock / Statement-Block: roter Strich statt orange */
.bd_bgt-rows__statement-text h1::after,
.bd_bgt-rows__statement-text h2::after {
    background: var(--color-red-500) !important;
}

/* Jeder Textblock: Strich zwischen Überschrift und Fließtext.
   Greift bei BD-Core-Blocks-Inhalten (bd_bg-text, bd_bgt-rows, bd_content-*).
   Wir setzen einen 80px breiten roten Strich UNTER h2/h3 wenn direkt
   danach ein <p>, <ul>, <ol> oder ein WYSIWYG-Wrapper folgt. */
[class*="bd_"] h2:has(+ p),
[class*="bd_"] h2:has(+ ul),
[class*="bd_"] h2:has(+ ol),
[class*="bd_"] h2:has(+ .wp-block-buttons),
[class*="bd_"] h3:has(+ p),
[class*="bd_"] h3:has(+ ul),
[class*="bd_"] h3:has(+ ol) {
    position: relative;
    padding-bottom: var(--space-md);
    margin-bottom: var(--space-md);
}

[class*="bd_"] h2:has(+ p)::after,
[class*="bd_"] h2:has(+ ul)::after,
[class*="bd_"] h2:has(+ ol)::after,
[class*="bd_"] h2:has(+ .wp-block-buttons)::after,
[class*="bd_"] h3:has(+ p)::after,
[class*="bd_"] h3:has(+ ul)::after,
[class*="bd_"] h3:has(+ ol)::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 80px;
    height: 3px;
    background: var(--color-red-500);
    border-radius: 2px;
}

/* Im Statement-Block bleibt der zentrierte Strich der Hauptakzent —
   nicht zusätzlich darunter setzen */
.bd_bgt-rows__statement-text h2::before { content: none; }

/* Variante "links ausgerichtet" → Strich ebenfalls links */
.bd_bgt-rows__statement--left h2::after,
.bd_bgt-rows__statement--left h1::after {
    margin-left: 0 !important;
    margin-right: auto !important;
}


/* ------------------------------------------------------------------
   5. PRODUKTSEITE
   ------------------------------------------------------------------ */

/* Produkt-Beschreibung: Inter 300 Light */
.bd-product-summary,
.bd-product-summary__intro,
.bd-product-summary__intro p,
.bd-wine-tabs__panel,
.bd-wine-tab-content__copy,
.bd-wine-tab-content__copy p,
.bd-product-summary__meta {
    font-family: 'Inter', sans-serif;
    font-weight: 300;
    line-height: 1.65;
}

/* USP-Icons in dunkelgrün */
.bd-product-summary__usps li i,
.bd-product-summary__trust li i {
    color: var(--color-green-600) !important;
}

/* ── Produkt-Badges Stack (Bio + Vegan, vertikal) ──────────────
 * Wir rendern beide Badges selbst in bd-gallery.php als
 * `.bd-product-badges__pill`. Das original Plugin-Badge
 * `.bd-wine-bio-badge` im Galerie-Bereich wird ausgeblendet,
 * damit nicht doppelt erscheint. */
.bd-gallery__main {
    position: relative;
}

/* Plugin-Bio-Badge im Galerie-Bereich verbergen — wir rendern selbst */
.bd-gallery__main > .bd-wine-bio-badge {
    display: none !important;
}

.bd-product-badges {
    position: absolute;
    top: 22px;
    left: 22px;
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    pointer-events: none;
}

.bd-product-badges__pill {
    width: 64px;
    height: 64px;
    border-radius: 999px;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.04em;
    line-height: 1;
    box-shadow: 0 8px 22px rgba(28, 39, 18, 0.08);
    text-transform: uppercase;
}

.bd-product-badges__pill i {
    font-size: 18px;
}

.bd-product-badges__pill--bio {
    background: #eef3df;
    color: #486323;
}

.bd-product-badges__pill--vegan {
    background: #ffffff;
    color: var(--color-green-700);
    border: 1px solid #d8e3c4;
}

@media (max-width: 640px) {
    .bd-product-badges {
        top: 12px;
        left: 12px;
        gap: 6px;
    }
    .bd-product-badges__pill {
        width: 52px;
        height: 52px;
        font-size: 11px;
    }
    .bd-product-badges__pill i {
        font-size: 14px;
    }
}

/* Produktbilder Detailseite: mittig, vollständig sichtbar (contain statt cover) */
.bd-gallery img,
.bd-product-gallery img,
.bd-gallery__main img,
.bd-gallery__slide img,
.bd-product-summary__media img,
.woocommerce-product-gallery img,
.woocommerce-product-gallery__image img {
    object-fit: contain !important;
    object-position: center center !important;
    background: var(--color-white);
}

.bd-gallery__main,
.bd-gallery__slide,
.woocommerce-product-gallery__image {
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: var(--color-bg-light);
}

/* Shop-Archiv (Produkt-Karten): Bilder VOLLSTÄNDIG zeigen,
   auch wenn das Original nicht quadratisch ist. Quadratisches
   1:1 Seitenverhältnis bleibt erhalten (sonst springt das Layout). */
.bd-product-card__image-wrap {
    background: #ffffff !important; /* heller Untergrund für transparente PNGs */
    display: flex;
    align-items: center;
    justify-content: center;
}

.bd-product-card__image-link,
.bd-product-card__image-link a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 1 / 1;
}

.bd-product-card__image-link img,
.bd-product-card img,
.bd-product-card .attachment-woocommerce_thumbnail,
.woocommerce ul.products li.product img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    aspect-ratio: 1 / 1;
    padding: clamp(8px, 2vw, 24px);
}

.bd-product-card .bd-product-card__badges {
    top: 22px;
    left: 22px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.bd-product-card .bd-product-card__badges .bd-product-card__badge {
    position: static;
    top: auto;
    left: auto;
}

.bd-product-card .bd-product-card__badge i {
    font-size: 18px;
    line-height: 1;
}

.bd-product-card .bd-product-card__badge > span {
    line-height: 1;
}

.bd-product-card .bd-product-card__badge--bio,
.bd-product-card .bd-product-card__badge--vegan {
    width: 64px;
    min-width: 64px;
    height: 64px;
    padding: 0;
    flex-direction: column;
    gap: 2px;
    border: 1px solid transparent;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.04em;
    box-shadow: 0 8px 22px rgba(28, 39, 18, 0.08);
    text-transform: uppercase;
}

.bd-product-card .bd-product-card__badge--bio {
    background: #eef3df;
    color: #486323;
}

.bd-product-card .bd-product-card__badge--vegan {
    background: #ffffff;
    color: var(--color-green-700);
    border-color: #d8e3c4;
}

@media (max-width: 640px) {
    .bd-product-card .bd-product-card__badges {
        top: 12px;
        left: 12px;
        gap: 6px;
    }

    .bd-product-card .bd-product-card__badge--bio,
    .bd-product-card .bd-product-card__badge--vegan {
        width: 52px;
        min-width: 52px;
        height: 52px;
        font-size: 11px;
    }

    .bd-product-card .bd-product-card__badge--bio i,
    .bd-product-card .bd-product-card__badge--vegan i {
        font-size: 14px;
    }
}


/* ------------------------------------------------------------------
   6. AKKORDION / TABS – grüne Akzente, kein Kasten-Hintergrund
   ------------------------------------------------------------------ */

/* Tab-Unterstrich: grün */
.bd-wine-tabs__tab::after {
    background: var(--color-green-600) !important;
}

.bd-wine-tabs__tab.is-active,
.bd-wine-tabs__tab:hover {
    color: var(--color-green-700) !important;
}

/* Tabs ohne Hintergrund-Kasten */
.bd-wine-tabs,
.bd-wine-tabs__panel,
.bd-wine-panel {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Panel-Padding bleibt (32px Top), aber das ERSTE Kind in einem
 * Tab darf keinen zusätzlichen margin-top mehr aufschlagen — sonst
 * sieht Herkunft & Bewertungen anders aus als Details. Genauso
 * darf das letzte Kind unten keinen extra margin-bottom haben.
 *
 * Die Plugin-CSS-Regeln (`.bd-wine-origin { margin: 32px 0 }`)
 * und WC-Default-Margins für `<ol.commentlist>` werden damit
 * neutralisiert. */
.bd-wine-tabs__panel > *:first-child,
.bd-wine-tabs__panel > *:first-child > *:first-child {
    margin-top: 0 !important;
}

.bd-wine-tabs__panel > *:last-child,
.bd-wine-tabs__panel > *:last-child > *:last-child {
    margin-bottom: 0 !important;
}

/* Spezifisch: Herkunft- und Bewertungen-Inhalte fangen direkt
 * unter dem Tab-Padding an, kein zusätzlicher Versatz. */
.bd-wine-tabs__panel .bd-wine-origin,
.bd-wine-tabs__panel #reviews,
.bd-wine-tabs__panel .bd-reviews,
.bd-wine-tabs__panel .bd-reviews__list-wrap,
.bd-wine-tabs__panel ol.commentlist,
.bd-wine-tabs__panel ol.bd-reviews__list {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Zwischen Review-Items soll der Gap erhalten bleiben — nur der
 * Block-Beginn wird angeglichen. */

.bd-wine-tabs__panel #review_form .comment-notes {
    margin: -0.25rem 0 0 !important;
    color: var(--color-muted) !important;
    font-size: var(--text-sm) !important;
    line-height: var(--leading-normal) !important;
}

.bd-wine-tabs__panel #review_form .comment-notes .required-field-message {
    display: none !important;
}

.bd-wine-tabs__panel .bd-stars-input a > i {
    color: var(--color-muted) !important;
}

.bd-wine-tabs__panel .bd-stars-input a.is-selected-fill > i,
.bd-wine-tabs__panel .bd-stars-input a.is-hovered-fill > i {
    color: var(--color-green-700) !important;
}

.bd-wine-tabs__panel .bd-stars-input a.is-selected-current,
.bd-wine-tabs__panel .bd-stars-input a.is-hovered-current {
    background: #eef3df;
    border-color: #d8e3c4;
}

/* Akkordion / Spec-Listen Icons in grün */
.bd-wine-facts__item i,
.bd-wine-specs i,
.bd-wine-specs__item i,
.bd-wine-tabs__panel i,
.bd-wine-panel i:not(.bd-product-summary__rating i):not(.fa-star) {
    color: var(--color-green-600) !important;
}

/* Auch die einzelnen Spec-Items: keine Hintergrundfarbe */
.bd-wine-specs__item,
.bd-wine-facts__item {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* ── Spec-Cards (Details · Herkunft · Produktangaben) vereinheitlichen ──
 * Standard hatte Produktangaben (.bd-spec-grid--legal) kleinere
 * Value-Schrift als die anderen Tabs. Hier auf identischen Look
 * normalisieren. */
.bd-spec-grid--legal .bd-spec-card__value,
.bd-spec-grid--origin .bd-spec-card__value,
.bd-spec-grid--details .bd-spec-card__value {
    font-size: var(--text-body) !important;
    font-weight: var(--weight-semibold) !important;
    color: var(--color-heading) !important;
}

.bd-spec-grid--legal .bd-spec-card__label,
.bd-spec-grid--origin .bd-spec-card__label,
.bd-spec-grid--details .bd-spec-card__label {
    font-size: var(--text-xs) !important;
    font-weight: var(--weight-bold) !important;
    text-transform: uppercase;
    letter-spacing: var(--tracking-wide);
    color: var(--color-muted) !important;
}

/* Spec-Card-Icon: in unserer Markenfarbe Dunkelgrün */
.bd-spec-card__icon {
    background: rgba(83, 126, 45, 0.10) !important;
    color: var(--color-green-600) !important;
}

/* ── Preis-Suffix-Zeile (Grundpreis · MwSt · Versand) ─────────
 * Bei Sale-Produkten rendert Germanized im Unit-Price beide
 * Werte: alter Preis mit <del>, neuer Preis normal. Wir stellen
 * sicher, dass die Strikethrough-Dekoration NICHT auf die
 * nachfolgenden Spans (Tax, Shipping) durchschlägt und der Block
 * lesbar bleibt. */
.bd-price__suffix {
    font-size: var(--text-sm);
    color: var(--color-muted);
    line-height: var(--leading-snug);
    text-decoration: none !important;
    font-style: normal;
    margin-top: 4px;
}

.bd-price__suffix > * {
    text-decoration: none !important;
}

.bd-price__suffix .bd-price__tax,
.bd-price__suffix .bd-price__shipping,
.bd-price__suffix a {
    text-decoration: none !important;
    color: var(--color-muted);
}

.bd-price__suffix del,
.bd-price__suffix del bdi {
    text-decoration: line-through;
    text-decoration-thickness: 1px;
    opacity: 0.7;
}

/* ── Spec/Profile-Cards aus dem Plugin (benz-digital-naehrwerte) ──
 * Diese Boxen kommen aus dem Naehrwerte-Plugin und haben
 * standardmäßig einen hellgrünen Hintergrund. Hier komplett
 * transparent setzen, damit der Akkordion-Bereich ruhig wirkt. */
.bd-wine-badges,
.bd-wine-profile,
.bd-wine-details,
.bd-wine-origin-facts,
.bd-wine-origin,
.bd-wine-promise,
.bd-wine-extras,
.bd-wine-extras__block,
.bd-wine-legal {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Versprechen-Block: ohne Kasten, mit feiner roter Trennlinie oben */
.bd-wine-promise {
    padding: var(--space-md) 0 !important;
    border-top: 2px solid var(--color-red-500) !important;
    border-radius: 0 !important;
    margin-top: var(--space-lg) !important;
}

.bd-wine-promise i {
    color: var(--color-green-600) !important;
}

.bd-wine-promise__kicker {
    color: var(--color-green-700) !important;
    font-weight: 600 !important;
}

/* Versprechen-Icon als Bild: maximal 80×80 px, mittig im
 * verfügbaren Raum. Ohne Limit würde z. B. die Öko?Logisch-
 * Wortmarke das gesamte Layout sprengen. */
.bd-wine-promise__icon--image {
    width: auto !important;
    height: auto !important;
    max-width: 80px !important;
    max-height: 80px !important;
    object-fit: contain;
    align-self: center;
    margin: 0;
    float: none !important;
}

@media (max-width: 640px) {
    .bd-wine-promise__icon--image {
        max-width: 64px !important;
        max-height: 64px !important;
    }
}

/* Icon-Farbe auf allen Spec-Items: grün */
.bd-wine-badges__item i,
.bd-wine-profile__item i,
.bd-wine-details__item i,
.bd-wine-origin-facts__item i {
    color: var(--color-green-600) !important;
}

/* Spec-Item Strong-Label: in Inter 300 leicht halten */
.bd-wine-badges__body strong,
.bd-wine-profile__body strong,
.bd-wine-details__body strong,
.bd-wine-origin-facts__body strong {
    color: var(--color-heading) !important;
    font-weight: 500 !important;
}


/* ------------------------------------------------------------------
   7. WARENKORB
   ------------------------------------------------------------------ */

/* "Begleitfarbe"-CTA komplett ausblenden (cart.php selbst wird auch
   bereinigt, hier ist nur die CSS-Sicherheit für ältere Caches) */
.bd-cart__cta {
    display: none !important;
}

/* Legacy-Hinweisleiste ausblenden */
.bd-cart__hint {
    display: none !important;
}

/* Legacy-Pill ausblenden */
.bd-cart-item__pill--brand {
    display: none !important;
}

/* Alte Mengen-Subline ausblenden — wir zeigen nur relevante Flascheninfos */
.bd-cart__subline {
    display: none;
}

/* Kasse-Button orange */
.bd-summary__actions a.checkout-button,
.bd-summary__actions .checkout-button,
.checkout-button {
    background: var(--color-curry-500) !important;
    color: #ffffff !important;
}

.bd-summary__actions a.checkout-button:hover,
.bd-summary__actions .checkout-button:hover,
.checkout-button:hover {
    background: var(--color-curry-600) !important;
}

/* Cart-Item: Kurzbeschreibung darunter */
.bd-cart-item__excerpt {
    grid-column: 1 / -1;
    margin: var(--space-xs) 0 0;
    padding-top: var(--space-sm);
    border-top: 1px dashed var(--color-border);
    color: var(--color-muted);
    font-size: 0.85rem;
    font-style: italic;
    line-height: 1.55;
    font-weight: 300;
}

@media (min-width: 768px) {
    .bd-cart-item {
        grid-template-areas:
            "image details total"
            "excerpt excerpt excerpt" !important;
    }
    .bd-cart-item__excerpt {
        grid-area: excerpt;
        margin-left: 0;
    }
}


/* ------------------------------------------------------------------
   8. CHECKOUT – alles weiß
   ------------------------------------------------------------------ */
body.woocommerce-checkout,
body.woocommerce-checkout .site-content,
.woocommerce-checkout .bd-checkout,
.woocommerce-checkout .bd-checkout__main,
.woocommerce-checkout .bd-checkout__aside,
.woocommerce-checkout .bd-checkout__card,
.woocommerce-checkout .bd-checkout__step,
.woocommerce-checkout .bd-checkout__summary,
.woocommerce-checkout .woocommerce,
.woocommerce-checkout #order_review,
.woocommerce-checkout .form-row,
.woocommerce-checkout #payment,
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment .payment_box,
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout .woocommerce-checkout-review-order-table,
.woocommerce-checkout .woocommerce-checkout-review-order-table tbody,
.woocommerce-checkout .woocommerce-checkout-review-order-table thead {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
}

/* Zellen-Streifen weg */
.woocommerce-checkout table tbody tr:nth-child(even),
.woocommerce-checkout table tbody tr:nth-child(odd),
.woocommerce-checkout .woocommerce-checkout-review-order-table tr {
    background: #ffffff !important;
}

.woocommerce-checkout .bd-checkout__card,
.woocommerce-checkout .bd-checkout__step,
.woocommerce-checkout #order_review,
.woocommerce-checkout .woocommerce-checkout-review-order {
    border: 1px solid var(--color-border);
    box-shadow: none !important;
}

/* Akzentboxen (Hint, Trust-Section) auf weiß angleichen */
.woocommerce-checkout .bd-checkout__hint,
.woocommerce-checkout .bd-checkout__trust,
.woocommerce-checkout .bd-checkout__summary-card {
    background: #ffffff !important;
    border: 1px solid var(--color-border);
}


/* ------------------------------------------------------------------
   9. SHOP: ruhige Breadcrumbs + Jana Archiv-Hero
   ------------------------------------------------------------------ */
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .entry-content.container {
    padding-top: clamp(1.35rem, 3vw, 2.5rem) !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .woocommerce-breadcrumb,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-breadcrumbs {
    width: fit-content !important;
    max-width: 100%;
    margin: 0 0 clamp(.8rem, 1.4vw, 1.15rem) !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--color-muted) !important;
    font-size: .8rem !important;
    line-height: 1.3;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .woocommerce-breadcrumb a,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-breadcrumbs a {
    min-height: 1.45rem;
    padding: 0 !important;
    border-radius: 0 !important;
    color: color-mix(in srgb, var(--color-heading) 72%, var(--color-muted)) !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .woocommerce-breadcrumb a:hover,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .woocommerce-breadcrumb a:focus-visible,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-breadcrumbs a:hover,
:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-breadcrumbs a:focus-visible {
    background: transparent !important;
    color: var(--color-red-500) !important;
    text-decoration: underline !important;
    text-decoration-thickness: 1px !important;
    text-underline-offset: .18em !important;
}

:is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-breadcrumbs__sep {
    margin: 0 .12rem;
    color: color-mix(in srgb, var(--color-muted) 46%, transparent) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero {
    grid-template-columns: minmax(0, .94fr) minmax(20rem, .76fr) !important;
    min-height: 0;
    height: clamp(360px, 32vw, 460px) !important;
    margin: 0 0 clamp(2rem, 4vw, 3.75rem) !important;
    overflow: hidden;
    background: var(--color-bg-light) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__content {
    min-height: 0 !important;
    height: 100%;
    padding: clamp(2rem, 4vw, 3.5rem) clamp(2.25rem, 5vw, 4.15rem) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero .topline {
    margin-bottom: clamp(.7rem, 1.2vw, .95rem) !important;
    color: var(--color-red-500) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero .woocommerce-products-header__title.page-title {
    max-width: 10.5ch;
    margin-bottom: clamp(.85rem, 1.45vw, 1.15rem) !important;
    font-size: clamp(2.65rem, 5vw, 4.6rem) !important;
    line-height: .96 !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__lead {
    max-width: 55ch;
    font-size: clamp(.98rem, 1.05vw, 1.08rem);
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__actions {
    margin-top: clamp(1.1rem, 1.7vw, 1.45rem) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag).woocommerce .bd-shop-hero__actions a.button,
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__actions .button {
    border-color: var(--color-red-500) !important;
    background: var(--color-red-500) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag).woocommerce .bd-shop-hero__actions a.button:hover,
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag).woocommerce .bd-shop-hero__actions a.button:focus-visible,
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__actions .button:hover,
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__actions .button:focus-visible {
    border-color: var(--color-heading) !important;
    background: var(--color-heading) !important;
    color: #ffffff !important;
    transform: none !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag).woocommerce .bd-shop-hero__actions a.button.button--secondary,
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__actions .button.button--secondary {
    border-color: color-mix(in srgb, var(--color-heading) 24%, var(--color-border)) !important;
    background: transparent !important;
    color: var(--color-heading) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag).woocommerce .bd-shop-hero__actions a.button.button--secondary:hover,
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag).woocommerce .bd-shop-hero__actions a.button.button--secondary:focus-visible,
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__actions .button.button--secondary:hover,
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__actions .button.button--secondary:focus-visible {
    border-color: var(--color-red-500) !important;
    background: var(--color-red-500) !important;
    color: #ffffff !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__facts {
    max-width: 40rem;
    margin-top: clamp(1.1rem, 1.9vw, 1.55rem) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__facts div {
    padding: .78rem .9rem !important;
    background: color-mix(in srgb, var(--color-bg) 88%, transparent) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__media {
    position: relative;
    min-height: 0 !important;
    height: 100% !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    background:
        radial-gradient(circle at 52% 52%, color-mix(in srgb, var(--color-red-500) 11%, transparent), transparent 32%),
        linear-gradient(135deg, #ffffff 0%, color-mix(in srgb, var(--color-bg-light) 88%, #ffffff) 58%, color-mix(in srgb, var(--color-red-500) 8%, var(--color-bg-light)) 100%) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__media::before {
    position: absolute;
    inset: 11% 17%;
    border: 1px solid color-mix(in srgb, var(--color-red-500) 11%, transparent) !important;
    background: color-mix(in srgb, #ffffff 48%, transparent);
    box-shadow: 0 22px 58px color-mix(in srgb, var(--color-heading) 5%, transparent);
    content: "";
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__media::after {
    position: absolute;
    inset: auto 26% 14%;
    height: 8%;
    background: color-mix(in srgb, var(--color-heading) 11%, transparent) !important;
    filter: blur(22px);
    content: "";
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__image {
    position: absolute !important;
    z-index: 2;
    top: 50%;
    left: 50%;
    width: auto !important;
    height: min(76%, 27rem) !important;
    max-width: 58% !important;
    max-height: 78% !important;
    object-fit: contain !important;
    object-position: center center !important;
    mix-blend-mode: multiply;
    filter: drop-shadow(0 22px 24px color-mix(in srgb, var(--color-heading) 14%, transparent));
    transform: translate(-50%, -50%);
}

@media (max-width: 900px) {
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero {
        grid-template-columns: 1fr !important;
        height: auto !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__content {
        height: auto;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__media {
        min-height: clamp(18rem, 62vw, 24rem) !important;
        height: clamp(18rem, 62vw, 24rem) !important;
    }
}

@media (max-width: 767px) {
    :is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .woocommerce-breadcrumb,
    :is(body.single-product, body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-breadcrumbs {
        width: 100% !important;
        margin-bottom: .85rem !important;
        overflow-x: auto;
        flex-wrap: nowrap;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__content {
        padding: clamp(1.85rem, 9vw, 2.7rem) var(--container-padding-mobile) !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero .woocommerce-products-header__title.page-title {
        max-width: 9.5ch;
        font-size: clamp(2.3rem, 12vw, 3.25rem) !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__image {
        height: min(72%, 17rem) !important;
        max-width: 62% !important;
    }
}

/* Shop archive density: products should arrive quickly, especially on mobile. */
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary {
    margin: clamp(1rem, 2vw, 1.5rem) 0 clamp(1.25rem, 2.8vw, 2rem) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-section-head {
    display: grid;
    grid-template-columns: minmax(0, auto) minmax(12rem, 1fr);
    align-items: end;
    gap: var(--space-sm) var(--space-lg);
    max-width: none;
    margin-bottom: var(--space-sm) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-section-head h2 {
    font-size: clamp(1.2rem, 1.65vw, 1.55rem) !important;
    line-height: 1.1;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-section-head .topline {
    display: none;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-section-head p {
    margin: 0 !important;
    max-width: 40rem;
    font-size: var(--text-sm);
    line-height: 1.35;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: var(--space-sm) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-card {
    grid-template-columns: 3rem minmax(0, 1fr) !important;
    align-items: center;
    gap: .7rem !important;
    min-height: 4.7rem !important;
    padding: .65rem .75rem !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-card__media {
    width: 3rem !important;
    height: 3rem !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-card__title {
    font-size: var(--text-sm) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-card__text {
    display: none !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-card__count {
    margin-top: .25rem !important;
    padding-top: 0 !important;
}

@media (max-width: 1100px) {
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .entry-content.container {
        padding-top: .35rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero {
        margin-bottom: .9rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__content {
        padding: 1rem var(--container-padding-mobile) 1.05rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero .topline {
        margin-bottom: .4rem !important;
        font-size: .72rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero .woocommerce-products-header__title.page-title {
        max-width: none;
        margin-bottom: .45rem !important;
        font-size: clamp(1.95rem, 10vw, 2.7rem) !important;
        line-height: .98 !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__lead {
        font-size: .95rem !important;
        line-height: 1.45 !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__actions,
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__facts,
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__media {
        display: none !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary {
        margin: .65rem calc(var(--container-padding-mobile) * -1) .9rem !important;
        overflow: hidden;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-section-head {
        display: block;
        margin: 0 var(--container-padding-mobile) .55rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-section-head h2 {
        font-size: 1.02rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-section-head p {
        display: none !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-grid {
        display: flex !important;
        gap: .55rem !important;
        overflow-x: auto;
        padding: 0 var(--container-padding-mobile) .2rem;
        scroll-padding-inline: var(--container-padding-mobile);
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-grid::-webkit-scrollbar {
        display: none;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-card {
        flex: 0 0 9.6rem;
        grid-template-columns: 2.2rem minmax(0, 1fr) !important;
        min-height: 3.75rem !important;
        padding: .55rem .62rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-card__media {
        width: 2.2rem !important;
        height: 2.2rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-card__title {
        font-size: .82rem !important;
        line-height: 1.1;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-card__count {
        font-size: .68rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-layout {
        margin-top: .5rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-filter-panel {
        border-radius: 8px !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-toolbar {
        gap: .65rem !important;
        margin-bottom: .8rem !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-product-card__image-wrap {
        aspect-ratio: auto !important;
        display: block !important;
        overflow: hidden;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-product-card__image-link,
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-product-card__image-link a {
        width: 100% !important;
        aspect-ratio: 4 / 3 !important;
        height: auto !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-product-card__image-link img,
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-product-card img,
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-product-card .attachment-woocommerce_thumbnail,
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag).woocommerce ul.products li.product img {
        aspect-ratio: 4 / 3 !important;
        padding: clamp(10px, 4vw, 20px) !important;
    }

    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-product-card .bd-product-card__image-wrap .bd-product-card__cta {
        position: static !important;
        display: flex !important;
        width: calc(100% - 1.3rem) !important;
        margin: 0 .65rem .65rem !important;
        min-height: 2.65rem;
        box-sizing: border-box;
        border-radius: 4px !important;
        opacity: 1 !important;
        transform: none !important;
        box-shadow: none !important;
    }
}


/* ------------------------------------------------------------------
   10. ACCOUNT, WARENKORB, CHECKOUT – ruhige Weingut-Strecke
   ------------------------------------------------------------------ */

body.woocommerce-account .entry-content.container,
body.woocommerce-cart .entry-content.container,
body.woocommerce-checkout .entry-content.container {
    padding-top: clamp(1.35rem, 2.8vw, 2.5rem) !important;
    padding-bottom: clamp(2.75rem, 5vw, 4.5rem) !important;
}

body.woocommerce-account .site-content,
body.woocommerce-cart .site-content,
body.woocommerce-checkout .site-content {
    background:
        linear-gradient(180deg, #ffffff 0, color-mix(in srgb, var(--color-bg-light) 88%, #ffffff) 34rem, #ffffff 100%) !important;
}

body.woocommerce-account .entry-content.container > h1 {
    max-width: 11ch;
    margin: 0 0 clamp(1.5rem, 3vw, 2.15rem) !important;
    color: var(--color-heading);
    font-size: clamp(2.15rem, 5vw, 4.25rem);
    line-height: .96;
    letter-spacing: 0;
}

body.woocommerce-account .entry-content.container > h1::after,
.bd-cart__title::after,
.bd-checkout-intro__title::after,
.bd-login__title::after,
.bd-summary__title::after,
.woocommerce-checkout .step-wrapper h3::after,
.woocommerce-checkout .woocommerce-billing-fields h3::after,
.woocommerce-checkout .woocommerce-shipping-fields h3::after,
.woocommerce-checkout #order_payment_heading::after,
.woocommerce-checkout #order_review_heading::after {
    display: block;
    width: 4.35rem;
    height: 2px;
    margin-top: .65rem;
    background: var(--color-red-500);
    content: "";
}


/* Account: eingeloggter Bereich */
.bd-account {
    gap: clamp(1rem, 2vw, 1.5rem);
    margin-block: 0 clamp(2.5rem, 5vw, 4rem);
}

.bd-account__hero {
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--color-border) 84%, transparent);
    border-left: 4px solid var(--color-red-500);
    border-radius: 8px;
    background: #ffffff !important;
    box-shadow: none;
}

.bd-account__hero::before {
    display: none;
}

.bd-account__avatar {
    border-radius: 8px;
    background: var(--color-red-500);
    color: #ffffff;
    box-shadow: none;
}

.bd-account__greeting {
    letter-spacing: 0;
}

.bd-account__hero-sub {
    max-width: 54ch;
    line-height: 1.6;
}

.bd-account-nav,
.bd-account__content {
    border-color: color-mix(in srgb, var(--color-border) 84%, transparent);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: none;
}

.bd-account-nav {
    padding: .35rem;
}

.bd-account-nav__link,
.bd-account-nav__toggle {
    border-radius: 6px;
}

.bd-account-nav__item.is-active > .bd-account-nav__link,
.bd-account-nav__link[aria-current="page"] {
    background: var(--color-red-500);
    color: #ffffff;
}

.bd-account-nav__link:hover {
    background: color-mix(in srgb, var(--color-bg-light) 72%, #ffffff);
}

.bd-account__content {
    padding: clamp(1.2rem, 2.4vw, 2rem);
}

.bd-stat-card,
.woocommerce-MyAccount-content .woocommerce-Address,
.woocommerce-MyAccount-content .woocommerce-EditAccountForm fieldset {
    border-color: color-mix(in srgb, var(--color-border) 78%, transparent);
    border-radius: 8px;
    background: color-mix(in srgb, var(--color-bg-light) 72%, #ffffff);
    box-shadow: none;
}

.bd-stat-card:hover {
    border-color: color-mix(in srgb, var(--color-red-500) 34%, var(--color-border));
    background: #ffffff;
    box-shadow: 0 16px 36px color-mix(in srgb, var(--color-heading) 7%, transparent);
}

.bd-stat-card__icon {
    color: var(--color-red-500);
}


/* Account: Login / Registrierung */
.bd-login {
    max-width: 74rem;
    margin: clamp(.5rem, 1vw, .75rem) 0 clamp(2.5rem, 5vw, 4rem);
    gap: 0;
    align-items: stretch;
}

.bd-login--has-register {
    grid-template-columns: 1fr;
}

@media (min-width: 860px) {
    .bd-login--has-register {
        grid-template-columns: minmax(0, 1fr) minmax(0, .92fr);
    }
}

.bd-login__card {
    position: relative;
    border: 1px solid color-mix(in srgb, var(--color-border) 82%, transparent);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: none;
}

.bd-login__card::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: var(--color-red-500);
    content: "";
}

.bd-login__card--register {
    background: color-mix(in srgb, var(--color-bg-light) 78%, #ffffff);
}

@media (min-width: 860px) {
    .bd-login__card:first-child {
        border-right: 0;
        border-radius: 8px 0 0 8px;
    }

    .bd-login__card--register {
        border-radius: 0 8px 8px 0;
    }
}

.bd-login__header {
    text-align: left;
}

.bd-login__title {
    margin-bottom: .7rem;
    color: var(--color-heading);
    font-size: clamp(1.45rem, 2.4vw, 2rem);
    line-height: 1.08;
    letter-spacing: 0;
}

.bd-login__title .topline {
    display: block;
    margin: 0 0 .5rem;
    color: var(--color-red-500) !important;
    font-size: .78rem;
    font-weight: 700 !important;
    letter-spacing: .05em;
    line-height: 1.25;
    text-transform: uppercase;
}

.bd-login__sub {
    max-width: 36ch;
    color: color-mix(in srgb, var(--color-heading) 65%, var(--color-muted));
    line-height: 1.6;
}

.bd-form-row label,
.woocommerce-MyAccount-content .form-row label,
.woocommerce-MyAccount-content .woocommerce-EditAccountForm label {
    color: var(--color-heading);
    font-size: .86rem;
    font-weight: 600 !important;
}

.bd-input,
.woocommerce-MyAccount-content .form-row input[type="text"],
.woocommerce-MyAccount-content .form-row input[type="email"],
.woocommerce-MyAccount-content .form-row input[type="tel"],
.woocommerce-MyAccount-content .form-row input[type="password"],
.woocommerce-MyAccount-content .form-row input[type="number"],
.woocommerce-MyAccount-content .form-row select,
.woocommerce-MyAccount-content .form-row textarea {
    min-height: 3rem;
    border-color: color-mix(in srgb, var(--color-border) 84%, transparent);
    border-radius: 6px;
    background: color-mix(in srgb, var(--color-bg-light) 62%, #ffffff);
}

.bd-input:focus-visible,
.woocommerce-MyAccount-content .form-row input:focus-visible,
.woocommerce-MyAccount-content .form-row select:focus-visible,
.woocommerce-MyAccount-content .form-row textarea:focus-visible {
    border-color: var(--color-red-500);
    outline: 2px solid color-mix(in srgb, var(--color-red-500) 28%, transparent);
}

.bd-login__lost,
.woocommerce-MyAccount-content .woocommerce-Address-title .edit,
.bd-dashboard__section-link {
    color: var(--color-red-500);
}

.bd-login__submit button,
.woocommerce-MyAccount-content button[type="submit"],
.woocommerce-MyAccount-content .woocommerce-Button {
    min-height: 3rem;
    border-radius: 6px !important;
    background: var(--color-red-500) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.bd-login__submit button:hover,
.woocommerce-MyAccount-content button[type="submit"]:hover,
.woocommerce-MyAccount-content .woocommerce-Button:hover {
    background: var(--color-red-600) !important;
    color: #ffffff !important;
}


/* Gemeinsamer Bestellfortschritt */
.bd-shop-flow {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin: calc(-1 * var(--space-xs)) 0 var(--space-lg);
    padding: 0;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--color-border) 84%, transparent);
    border-radius: 8px;
    background: #ffffff;
    list-style: none;
}

.bd-shop-flow__item {
    position: relative;
    display: flex;
    align-items: center;
    gap: .7rem;
    min-width: 0;
    padding: .85rem clamp(.85rem, 1.6vw, 1.25rem);
    color: var(--color-muted);
    font-size: .9rem;
    font-weight: 500;
}

.bd-shop-flow__item + .bd-shop-flow__item {
    border-left: 1px solid color-mix(in srgb, var(--color-border) 72%, transparent);
}

.bd-shop-flow__step {
    display: inline-grid;
    place-items: center;
    width: 1.8rem;
    height: 1.8rem;
    flex: 0 0 auto;
    border: 1px solid color-mix(in srgb, var(--color-border) 86%, transparent);
    border-radius: 999px;
    color: var(--color-muted);
    font-size: .82rem;
    font-weight: 700;
}

.bd-shop-flow__item.is-active {
    color: var(--color-heading);
    background: color-mix(in srgb, var(--color-bg-light) 72%, #ffffff);
}

.bd-shop-flow__item.is-active .bd-shop-flow__step {
    border-color: var(--color-red-500);
    background: var(--color-red-500);
    color: #ffffff;
}


/* Warenkorb */
.bd-cart {
    gap: clamp(1rem, 2vw, 1.5rem);
    margin-block: 0 clamp(2.75rem, 5vw, 4.5rem);
}

.bd-cart__title {
    max-width: 18ch;
    font-size: clamp(2.1rem, 4.1vw, 3.75rem);
    line-height: .96;
    letter-spacing: 0;
}

.bd-cart__subline {
    display: block !important;
    max-width: 42ch;
    margin-top: .8rem;
    color: color-mix(in srgb, var(--color-heading) 62%, var(--color-muted));
    font-size: .98rem;
    line-height: 1.6;
}

.bd-cart__continue-top {
    color: var(--color-red-500);
    font-weight: 500;
}

.bd-cart__layout {
    gap: clamp(1rem, 2.4vw, 2rem);
}

.bd-cart__items,
.bd-summary,
.bd-cart-empty {
    border-color: color-mix(in srgb, var(--color-border) 84%, transparent);
    border-radius: 8px;
    box-shadow: none;
}

.bd-cart__items-head {
    background: color-mix(in srgb, var(--color-bg-light) 72%, #ffffff);
}

.bd-cart-item {
    background: #ffffff;
}

.bd-cart-item:hover {
    background: color-mix(in srgb, var(--color-bg-light) 48%, #ffffff);
}

.bd-cart-item__image {
    padding: .45rem;
    border: 1px solid color-mix(in srgb, var(--color-border) 72%, transparent);
    border-radius: 8px;
    background: color-mix(in srgb, var(--color-bg-light) 72%, #ffffff);
}

.bd-cart-item__image img {
    object-fit: contain;
}

.bd-cart-item__name,
h2.bd-cart-item__name {
    letter-spacing: 0;
}

.bd-cart-item__remove {
    color: var(--color-red-500);
    text-decoration-thickness: 1px;
}

.bd-cart__actions {
    border-top: 1px solid color-mix(in srgb, var(--color-border) 76%, transparent);
    background: color-mix(in srgb, var(--color-bg-light) 78%, #ffffff);
}

.bd-cart__coupon-input,
.bd-cart__coupon-btn,
.bd-cart__update,
.bd-summary__continue {
    border-radius: 6px !important;
}

.bd-cart__coupon-btn:hover,
.bd-cart__update:hover,
.bd-summary__continue:hover {
    background: var(--color-heading);
    color: #ffffff;
}

.bd-summary {
    border-left: 4px solid var(--color-red-500);
    background: #ffffff;
}

.bd-summary__title {
    letter-spacing: 0;
}

.bd-summary__row {
    padding-block: .58rem;
}

.bd-summary__row--total {
    border-top-color: color-mix(in srgb, var(--color-heading) 18%, var(--color-border));
}

.bd-summary__value--total {
    letter-spacing: 0;
}

.bd-summary__actions a.checkout-button,
.bd-summary__actions .checkout-button,
.checkout-button {
    min-height: 3.1rem;
    border-radius: 6px !important;
    background: var(--color-red-500) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.bd-summary__actions a.checkout-button:hover,
.bd-summary__actions .checkout-button:hover,
.checkout-button:hover {
    background: var(--color-red-600) !important;
    color: #ffffff !important;
}

.bd-summary__methods li {
    border-radius: 6px;
    background: color-mix(in srgb, var(--color-bg-light) 82%, #ffffff);
}

.bd-summary__methods li i {
    color: var(--color-red-500);
}


/* Checkout */
.bd-checkout-intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: clamp(1rem, 2vw, 1.75rem);
    align-items: end;
    order: -2;
    margin: 0 0 clamp(1rem, 2vw, 1.45rem);
    padding: clamp(1.35rem, 2.8vw, 2.35rem);
    border: 1px solid color-mix(in srgb, var(--color-border) 84%, transparent);
    border-left: 4px solid var(--color-red-500);
    border-radius: 8px;
    background: #ffffff;
}

.bd-checkout-intro__copy {
    min-width: 0;
}

.bd-checkout-intro__kicker {
    margin: 0 0 .5rem;
    color: var(--color-red-500);
    font-size: .78rem;
    font-weight: 700 !important;
    letter-spacing: .05em;
    line-height: 1.25;
    text-transform: uppercase;
}

.bd-checkout-intro__title {
    margin: 0;
    color: var(--color-heading);
    font-size: clamp(2rem, 4.5vw, 4rem);
    line-height: .96;
    letter-spacing: 0;
}

.bd-checkout-intro__text {
    max-width: 54ch;
    margin: .85rem 0 0;
    color: color-mix(in srgb, var(--color-heading) 64%, var(--color-muted));
    font-size: .98rem;
    line-height: 1.6;
}

.bd-checkout-intro__facts {
    display: grid;
    gap: .55rem;
    min-width: min(100%, 20rem);
    margin: 0;
    padding: 0;
    list-style: none;
}

.bd-checkout-intro__facts li {
    display: flex;
    align-items: center;
    gap: .65rem;
    color: var(--color-heading);
    font-size: .9rem;
}

.bd-checkout-intro__facts i {
    width: 1.1rem;
    color: var(--color-red-500);
    text-align: center;
}

.woocommerce-checkout ul.step-nav.nav-wizard {
    order: -1;
    margin-bottom: clamp(1rem, 2vw, 1.45rem);
    padding: .35rem;
    border: 1px solid color-mix(in srgb, var(--color-border) 84%, transparent);
    border-radius: 8px;
    background: #ffffff;
}

.woocommerce-checkout .woocommerce-notices-wrapper:not(:empty),
.woocommerce-checkout .woocommerce-NoticeGroup:not(:empty) {
    order: -3;
}

.woocommerce-checkout ul.step-nav.nav-wizard li a,
.woocommerce-checkout ul.step-nav.nav-wizard li .step {
    border-radius: 6px;
}

.woocommerce-checkout ul.step-nav.nav-wizard li.active a,
.woocommerce-checkout ul.step-nav.nav-wizard li.active .step {
    background: color-mix(in srgb, var(--color-bg-light) 72%, #ffffff);
}

.woocommerce-checkout ul.step-nav.nav-wizard li:not(:last-child)::before {
    background: color-mix(in srgb, var(--color-border) 74%, transparent);
}

.woocommerce-checkout ul.step-nav.nav-wizard .step-number,
.woocommerce-checkout ul.step-nav.nav-wizard li.active .step-number {
    box-shadow: none;
}

.woocommerce-checkout ul.step-nav.nav-wizard li.active .step-number {
    border-color: var(--color-red-500);
    background: var(--color-red-500);
    color: #ffffff;
}

.woocommerce-checkout .step-wrapper,
.woocommerce-checkout form.login,
.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table,
.woocommerce-checkout #payment ul.payment_methods li,
.woocommerce-checkout .col2-set.addresses .col-1,
.woocommerce-checkout .col2-set.addresses .col-2,
.woocommerce-checkout .checkbox-legal,
.woocommerce-checkout .dhl-preferred-service-content {
    border-color: color-mix(in srgb, var(--color-border) 84%, transparent);
    border-radius: 8px;
    background: #ffffff !important;
    box-shadow: none !important;
}

.woocommerce-checkout .step-wrapper {
    padding: clamp(1.15rem, 2.4vw, 2rem);
}

.woocommerce-checkout .step-wrapper h3,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout #order_payment_heading,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-gzdp-checkout-verify-data h4 {
    letter-spacing: 0;
}

.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row input[type="text"],
.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout .form-row input[type="tel"],
.woocommerce-checkout .form-row input[type="number"],
.woocommerce-checkout .form-row input[type="password"],
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .select2-container--default .select2-selection--single,
.woocommerce-checkout .select2-container .select2-selection--single {
    min-height: 3rem;
    border-color: color-mix(in srgb, var(--color-border) 84%, transparent);
    border-radius: 6px;
    background: color-mix(in srgb, var(--color-bg-light) 62%, #ffffff);
}

.woocommerce-checkout .form-row input:focus-visible,
.woocommerce-checkout .form-row textarea:focus-visible,
.woocommerce-checkout .form-row select:focus-visible,
.woocommerce-checkout .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--color-red-500);
    outline: 2px solid color-mix(in srgb, var(--color-red-500) 28%, transparent);
}

.woocommerce-checkout .form-row label {
    font-size: .86rem;
    font-weight: 600 !important;
}

.woocommerce-checkout #payment ul.payment_methods li:has(input[type="radio"]:checked) {
    border-color: color-mix(in srgb, var(--color-red-500) 70%, var(--color-border));
    background: color-mix(in srgb, var(--color-red-500) 4%, #ffffff) !important;
}

.woocommerce-checkout #payment ul.payment_methods li > input[type="radio"],
.woocommerce-checkout #shipping_method input[type="radio"],
.woocommerce-checkout .woocommerce-form__label-for-checkbox input[type="checkbox"],
.woocommerce-checkout label.checkbox input[type="checkbox"],
.woocommerce-checkout .form-row input[type="checkbox"] {
    accent-color: var(--color-red-500);
}

.woocommerce-checkout #payment .payment_box {
    border-radius: 6px;
    background: color-mix(in srgb, var(--color-bg-light) 72%, #ffffff) !important;
}

.woocommerce-checkout table.shop_table thead th {
    background: color-mix(in srgb, var(--color-bg-light) 72%, #ffffff) !important;
}

.woocommerce-checkout .wc-gzd-cart-item-thumbnail {
    border-radius: 6px;
    background: color-mix(in srgb, var(--color-bg-light) 72%, #ffffff);
}

.woocommerce-checkout .step-buttons .next-step-button,
.woocommerce-checkout button.button[name="apply_coupon"],
.woocommerce-checkout button.button[name="login"],
.woocommerce-checkout button.button[name="woocommerce_checkout_place_order"],
.woocommerce-checkout button.button[name="woocommerce_checkout_update_totals"],
.woocommerce-checkout #place_order,
.woocommerce-checkout button.button.alt[name="woocommerce_checkout_place_order"],
.woocommerce-checkout #wc-shiptastic-search-pickup-location-submit,
.woocommerce-checkout .submit-pickup-location {
    min-height: 3rem;
    border-radius: 6px !important;
    background: var(--color-red-500) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.woocommerce-checkout .step-buttons .next-step-button:hover,
.woocommerce-checkout button.button[name="apply_coupon"]:hover,
.woocommerce-checkout button.button[name="login"]:hover,
.woocommerce-checkout button.button[name="woocommerce_checkout_place_order"]:hover,
.woocommerce-checkout button.button[name="woocommerce_checkout_update_totals"]:hover,
.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #wc-shiptastic-search-pickup-location-submit:hover,
.woocommerce-checkout .submit-pickup-location:hover {
    background: var(--color-red-600) !important;
    color: #ffffff !important;
}

.woocommerce-checkout .step-buttons .prev-step-button,
.woocommerce-checkout .col2-set.addresses .edit,
.woocommerce-checkout .col2-set.addresses .step-trigger,
.woocommerce-checkout .pickup-location-notice-link,
.woocommerce-checkout .woocommerce-gzd-legal-checkbox-text a {
    color: var(--color-red-500);
}

@media (max-width: 859px) {
    .bd-login {
        gap: var(--space-md);
    }

    .bd-login__card,
    .bd-login__card:first-child,
    .bd-login__card--register {
        border: 1px solid color-mix(in srgb, var(--color-border) 82%, transparent);
        border-radius: 8px;
    }
}

@media (max-width: 640px) {
    body.woocommerce-account .entry-content.container > h1,
    .bd-cart__title,
    .bd-checkout-intro__title {
        max-width: 100%;
    }

    .bd-login__card,
    .bd-cart-item,
    .bd-summary,
    .bd-cart-empty,
    .woocommerce-checkout .step-wrapper {
        padding: var(--space-lg);
    }

    .bd-checkout-intro {
        padding: var(--space-md) var(--space-lg);
    }

    .bd-shop-flow {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .bd-shop-flow__item + .bd-shop-flow__item {
        border-top: 0;
        border-left: 1px solid color-mix(in srgb, var(--color-border) 72%, transparent);
    }

    .bd-shop-flow__item {
        justify-content: center;
        gap: .4rem;
        padding: .68rem .42rem;
        font-size: .78rem;
        line-height: 1.15;
        text-align: center;
    }

    .bd-shop-flow__step {
        width: 1.45rem;
        height: 1.45rem;
        font-size: .72rem;
    }

    .bd-cart__hero {
        align-items: flex-start;
    }

    .bd-cart-item {
        grid-template-columns: 72px 1fr;
    }

    .bd-cart-item__image {
        width: 72px;
        height: 72px;
    }

    .bd-checkout-intro {
        grid-template-columns: 1fr;
        align-items: start;
        gap: .85rem;
    }

    .bd-checkout-intro__kicker {
        margin-bottom: .35rem;
        font-size: .72rem;
    }

    .bd-checkout-intro__title {
        font-size: clamp(1.85rem, 9vw, 2.35rem);
    }

    .bd-checkout-intro__title::after {
        margin-top: .48rem;
    }

    .bd-checkout-intro__text {
        margin-top: .62rem;
        font-size: .9rem;
        line-height: 1.48;
    }

    .bd-checkout-intro__facts {
        display: none;
    }

    .woocommerce-checkout ul.step-nav.nav-wizard {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: .25rem;
        padding: .3rem;
    }

    .woocommerce-checkout ul.step-nav.nav-wizard li a,
    .woocommerce-checkout ul.step-nav.nav-wizard li .step {
        flex-direction: column;
        justify-content: center;
        gap: .32rem;
        min-height: 3.8rem;
        padding: .55rem .35rem;
        font-size: .7rem;
        line-height: 1.16;
        text-align: center;
    }

    .woocommerce-checkout ul.step-nav.nav-wizard .step-number {
        width: 1.55rem;
        height: 1.55rem;
        font-size: .74rem;
    }

    .woocommerce-checkout ul.step-nav.nav-wizard .step-title {
        max-width: 100%;
        white-space: normal;
        text-align: center;
    }

    .woocommerce-checkout .step-buttons {
        align-items: stretch;
    }

    .woocommerce-checkout .step-buttons .next-step-button,
    .woocommerce-checkout .step-buttons .prev-step-button {
        width: 100%;
        justify-content: center;
        margin-left: 0;
    }

    .woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
    .woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
        min-height: 0;
        padding: .78rem 1rem;
        font-size: .82rem;
        line-height: 1.35;
    }
}

body.woocommerce-account .bd-login .bd-login__submit button[type="submit"].woocommerce-button,
body.woocommerce-account .bd-login .bd-login__submit button[type="submit"].btn,
body.woocommerce-account .woocommerce-MyAccount-content button[type="submit"].woocommerce-Button,
body.woocommerce-cart .bd-cart__coupon button[type="submit"].bd-cart__coupon-btn,
body.woocommerce-cart button[type="submit"].bd-cart__update,
body.woocommerce-checkout .woocommerce .step-buttons button[type="submit"].button.next-step-button,
body.woocommerce-checkout .woocommerce .step-buttons .button.next-step-button,
body.woocommerce-checkout .woocommerce button[type="submit"].button.alt[name="woocommerce_checkout_place_order"],
body.woocommerce-checkout .woocommerce #place_order {
    border-radius: 6px !important;
}


/* Account: Flomp-inspirierte Zwischenloesung */
@media (min-width: 960px) {
    body.woocommerce-account .bd-account {
        display: grid;
        grid-template-columns: minmax(17.5rem, 21rem) minmax(0, 1fr);
        grid-template-areas:
            "profile content"
            "nav content";
        gap: clamp(1rem, 2vw, 1.75rem);
        align-items: start;
    }

    body.woocommerce-account .bd-account__hero {
        grid-area: profile;
        padding: clamp(1rem, 1.8vw, 1.35rem);
        border-left: 0;
        border-top: 3px solid var(--color-red-500);
        background:
            linear-gradient(180deg, #ffffff 0%, color-mix(in srgb, var(--color-bg-light) 74%, #ffffff) 100%) !important;
    }

    body.woocommerce-account .bd-account__hero-inner {
        display: grid;
        grid-template-columns: 3.15rem minmax(0, 1fr);
        gap: .85rem;
        align-items: center;
    }

    body.woocommerce-account .bd-account__avatar {
        width: 3.15rem;
        height: 3.15rem;
        border-radius: 999px;
        font-size: 1rem;
    }

    body.woocommerce-account .bd-account__greeting {
        margin: 0;
        font-size: clamp(1.05rem, 1.35vw, 1.25rem);
        line-height: 1.22;
    }

    body.woocommerce-account .bd-account__greeting .topline {
        display: block;
        margin: 0 0 .2rem;
        color: color-mix(in srgb, var(--color-heading) 54%, var(--color-muted)) !important;
        font-size: .68rem;
        font-weight: 700 !important;
        letter-spacing: .05em;
        line-height: 1.15;
        text-transform: uppercase;
    }

    body.woocommerce-account .bd-account__hero-sub {
        grid-column: 1 / -1;
        margin-top: .25rem;
        font-size: .88rem;
        line-height: 1.48;
    }

    body.woocommerce-account .bd-account__logout {
        display: none !important;
    }

    body.woocommerce-account .bd-account-nav {
        grid-area: nav;
        position: sticky;
        top: calc(var(--header-height, 0px) + 1rem);
        padding: .65rem;
        border-radius: 8px;
        background: #ffffff;
    }

    body.woocommerce-account .bd-account-nav__toggle {
        display: none;
    }

    body.woocommerce-account .bd-account-nav__list {
        display: flex;
        flex-direction: column;
        gap: .18rem;
        overflow: visible;
    }

    body.woocommerce-account .bd-account-nav__item {
        width: 100%;
    }

    body.woocommerce-account .bd-account-nav__item--logout {
        margin: .45rem 0 0;
        padding-top: .45rem;
        border-top: 1px solid color-mix(in srgb, var(--color-border) 78%, transparent);
    }

    body.woocommerce-account .bd-account-nav__link {
        display: flex;
        width: 100%;
        justify-content: flex-start;
        gap: .72rem;
        padding: .76rem .85rem;
        border-radius: 6px;
        white-space: normal;
    }

    body.woocommerce-account .bd-account-nav__icon {
        width: 1.2rem;
        flex: 0 0 1.2rem;
        color: var(--color-red-500);
        text-align: center;
        opacity: 1;
    }

    body.woocommerce-account .bd-account-nav__link::after {
        margin-left: auto;
        color: color-mix(in srgb, var(--color-heading) 42%, var(--color-muted));
        font-family: "Font Awesome 6 Pro", "Font Awesome 5 Pro", "Font Awesome 6 Free";
        font-size: .72rem;
        font-weight: 300;
        line-height: 1;
        opacity: .35;
        content: "\f054";
        transition: transform .18s ease, opacity .18s ease;
    }

    body.woocommerce-account .bd-account-nav__link:hover::after {
        transform: translateX(2px);
        opacity: .7;
    }

    body.woocommerce-account .bd-account-nav__item.is-active > .bd-account-nav__link,
    body.woocommerce-account .bd-account-nav__link[aria-current="page"] {
        background: var(--color-red-500);
        color: #ffffff;
    }

    body.woocommerce-account .bd-account-nav__item.is-active > .bd-account-nav__link .bd-account-nav__icon,
    body.woocommerce-account .bd-account-nav__link[aria-current="page"] .bd-account-nav__icon,
    body.woocommerce-account .bd-account-nav__link[aria-current="page"]::after {
        color: #ffffff;
        opacity: 1;
    }

    body.woocommerce-account .bd-account__content {
        grid-area: content;
        min-width: 0;
        min-height: 28rem;
        padding: clamp(1.5rem, 2.6vw, 2.35rem);
    }

    body.woocommerce-account .bd-dashboard__stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: .9rem;
    }
}

body.woocommerce-account .bd-login {
    max-width: 68rem;
}

.bd-login__benefits {
    display: grid;
    gap: .55rem;
    margin: 1rem 0 0;
    padding: 0;
    list-style: none;
}

.bd-login__benefits li {
    display: flex;
    align-items: center;
    gap: .62rem;
    color: color-mix(in srgb, var(--color-heading) 68%, var(--color-muted));
    font-size: .9rem;
    line-height: 1.35;
}

.bd-login__benefits i {
    display: inline-grid;
    place-items: center;
    width: 1.55rem;
    height: 1.55rem;
    flex: 0 0 auto;
    border: 1px solid color-mix(in srgb, var(--color-red-500) 24%, var(--color-border));
    border-radius: 999px;
    color: var(--color-red-500);
    font-size: .78rem;
}

@media (min-width: 860px) {
    body.woocommerce-account .bd-login--has-register {
        grid-template-columns: minmax(0, .98fr) minmax(20rem, .78fr);
    }

    body.woocommerce-account .bd-login__card {
        padding: clamp(1.6rem, 2.4vw, 2.35rem);
    }

    body.woocommerce-account .bd-login__card--register {
        background:
            linear-gradient(180deg, color-mix(in srgb, var(--color-bg-light) 84%, #ffffff) 0%, #ffffff 100%);
    }

    body.woocommerce-account .bd-login__card--register::before {
        display: none;
    }
}

@media (max-width: 640px) {
    body.woocommerce-account .bd-account__hero {
        padding: var(--space-lg);
    }

    body.woocommerce-account .bd-account__greeting {
        font-size: 1.2rem;
    }

    body.woocommerce-account .bd-account__hero-sub {
        font-size: .9rem;
    }

    body.woocommerce-account .bd-account-nav__item--logout {
        border-top-style: solid;
    }

    .bd-login__benefits {
        margin-top: .85rem;
    }
}


/* Account: Navigation und Formularrhythmus */
@media (min-width: 960px) {
    body.woocommerce-account .bd-account-nav {
        position: static;
        top: auto;
    }

    body.woocommerce-account .bd-account-nav__link::after,
    body.woocommerce-account .bd-account-nav__link:hover::after,
    body.woocommerce-account .bd-account-nav__link[aria-current="page"]::after {
        display: none;
        content: none;
    }
}

body.woocommerce-account .woocommerce-MyAccount-content .shop_table .button:empty,
body.woocommerce-account .woocommerce-MyAccount-content .shop_table button:empty {
    display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-table--order-details tfoot tr:has(.order-actions-button:empty) {
    display: none;
}

body.woocommerce-account .woocommerce-MyAccount-content .shop_table .button,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-table--order-details .button {
    min-height: 2.5rem;
    justify-content: center;
    border-radius: 6px !important;
    white-space: nowrap;
}

@media (min-width: 860px) {
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields {
        display: grid;
        gap: 1rem;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: clamp(1rem, 2vw, 1.35rem);
        row-gap: 1rem;
        align-items: start;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm > .form-row,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm > p,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper > .form-row {
        float: none !important;
        width: auto !important;
        min-width: 0;
        margin: 0;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm > .clear,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper > .clear {
        display: none;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper > #billing_company_field,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper > #billing_title_field,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper > #billing_address_1_field,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper > #billing_address_2_field,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper > #shipping_company_field,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper > #shipping_title_field,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper > #shipping_address_1_field,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper > #shipping_address_2_field,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm fieldset,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm > p:last-child,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields > p:last-child {
        grid-column: 1 / -1;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm fieldset {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem clamp(1rem, 2vw, 1.35rem);
        margin-top: .2rem;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm fieldset legend {
        grid-column: 1 / -1;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm fieldset > .form-row,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm fieldset > p {
        float: none !important;
        width: auto !important;
        min-width: 0;
        margin: 0;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm > p:last-child,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields > p:last-child {
        justify-self: start;
        margin-top: .35rem;
    }

    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm > p:last-child .woocommerce-Button,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields > p:last-child .button {
        width: auto;
        min-width: min(100%, 13rem);
    }
}


/* Account: zusammenhaengende Weingut-Sidebar */
body.woocommerce-account .bd-account {
    gap: clamp(1rem, 2.5vw, 2.1rem);
}

body.woocommerce-account .bd-account__sidebar {
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--color-border) 86%, transparent);
    border-top: 3px solid var(--color-red-500);
    border-radius: 8px;
    background:
        linear-gradient(180deg, #ffffff 0%, color-mix(in srgb, var(--color-bg-light) 76%, #ffffff) 100%);
    box-shadow: 0 18px 44px color-mix(in srgb, var(--color-heading) 6%, transparent);
}

body.woocommerce-account .bd-account__hero {
    position: relative;
    border: 0;
    border-radius: 0;
    background: transparent !important;
    padding: clamp(1.1rem, 1.8vw, 1.45rem);
}

body.woocommerce-account .bd-account__hero::before {
    display: none;
}

body.woocommerce-account .bd-account__hero-inner {
    display: grid;
    grid-template-columns: 3.35rem minmax(0, 1fr);
    gap: .9rem;
    align-items: center;
}

body.woocommerce-account .bd-account__avatar {
    width: 3.35rem;
    height: 3.35rem;
    border: 1px solid color-mix(in srgb, #ffffff 26%, transparent);
    border-radius: 999px;
    background: var(--color-red-500);
    color: #ffffff;
    font-family: var(--font-heading);
    font-size: 1rem;
    letter-spacing: 0;
    box-shadow: 0 10px 20px color-mix(in srgb, var(--color-red-500) 22%, transparent);
}

body.woocommerce-account .bd-account__greeting {
    margin: 0;
    color: var(--color-heading);
    font-size: clamp(1.05rem, 1.35vw, 1.26rem);
    line-height: 1.2;
    letter-spacing: 0;
}

body.woocommerce-account .bd-account__greeting .topline {
    display: block;
    margin: 0 0 .22rem;
    color: var(--color-red-500) !important;
    font-size: .67rem;
    font-weight: 700 !important;
    letter-spacing: .055em;
    line-height: 1.15;
    text-transform: uppercase;
}

body.woocommerce-account .bd-account__hero-sub {
    grid-column: 1 / -1;
    max-width: none;
    margin: .15rem 0 0;
    color: color-mix(in srgb, var(--color-muted) 86%, var(--color-heading));
    font-size: .88rem;
    line-height: 1.48;
}

body.woocommerce-account .bd-account__logout {
    display: none !important;
}

body.woocommerce-account .bd-account-nav {
    position: static;
    top: auto;
    z-index: auto;
    border: 0;
    border-top: 1px solid color-mix(in srgb, var(--color-border) 82%, transparent);
    border-radius: 0;
    background: transparent;
    padding: .72rem .72rem .78rem;
    box-shadow: none;
}

body.woocommerce-account .bd-account-nav__list {
    display: flex;
    flex-direction: column;
    gap: .16rem;
    overflow: visible;
}

body.woocommerce-account .bd-account-nav__item {
    width: 100%;
}

body.woocommerce-account .bd-account-nav__item--logout {
    margin: .48rem 0 0;
    padding-top: .5rem;
    border-top: 1px solid color-mix(in srgb, var(--color-border) 76%, transparent);
}

body.woocommerce-account .bd-account-nav__link {
    display: flex;
    width: 100%;
    min-height: 3rem;
    align-items: center;
    justify-content: flex-start;
    gap: .72rem;
    padding: .78rem .85rem;
    border-radius: 6px;
    color: color-mix(in srgb, var(--color-heading) 88%, var(--color-muted));
    font-size: .98rem;
    line-height: 1.2;
    text-decoration: none;
    white-space: normal;
}

body.woocommerce-account .bd-account-nav__link:hover {
    background: color-mix(in srgb, #ffffff 52%, var(--color-bg-light));
    color: var(--color-heading);
}

body.woocommerce-account .bd-account-nav__icon {
    display: inline-grid;
    width: 1.25rem;
    flex: 0 0 1.25rem;
    place-items: center;
    color: var(--color-red-500);
    font-size: 1rem;
    opacity: 1;
}

body.woocommerce-account .bd-account-nav__chevron {
    margin-left: auto;
    color: color-mix(in srgb, var(--color-muted) 72%, transparent);
    font-size: .76rem;
    opacity: 0;
    transform: translateX(-3px);
    transition: opacity .18s ease, transform .18s ease, color .18s ease;
}

body.woocommerce-account .bd-account-nav__link:hover .bd-account-nav__chevron,
body.woocommerce-account .bd-account-nav__link[aria-current="page"] .bd-account-nav__chevron {
    opacity: 1;
    transform: translateX(0);
}

body.woocommerce-account .bd-account-nav__item.is-active > .bd-account-nav__link,
body.woocommerce-account .bd-account-nav__link[aria-current="page"] {
    background: var(--color-red-500);
    color: #ffffff;
    font-weight: 700;
}

body.woocommerce-account .bd-account-nav__item.is-active > .bd-account-nav__link .bd-account-nav__icon,
body.woocommerce-account .bd-account-nav__item.is-active > .bd-account-nav__link .bd-account-nav__chevron,
body.woocommerce-account .bd-account-nav__link[aria-current="page"] .bd-account-nav__icon,
body.woocommerce-account .bd-account-nav__link[aria-current="page"] .bd-account-nav__chevron {
    color: #ffffff;
    opacity: 1;
}

body.woocommerce-account .bd-account__sidebar-note {
    display: grid;
    grid-template-columns: 2.15rem minmax(0, 1fr);
    gap: .75rem;
    margin: 0 .72rem .82rem;
    padding: .95rem .9rem;
    border: 1px solid color-mix(in srgb, var(--color-red-500) 16%, var(--color-border));
    border-left: 3px solid var(--color-red-500);
    border-radius: 6px;
    background: color-mix(in srgb, #ffffff 45%, var(--color-bg-light));
}

body.woocommerce-account .bd-account__sidebar-note-icon {
    display: inline-grid;
    width: 2.15rem;
    height: 2.15rem;
    place-items: center;
    border-radius: 999px;
    background: color-mix(in srgb, var(--color-red-500) 10%, #ffffff);
    color: var(--color-red-500);
    font-size: .95rem;
}

body.woocommerce-account .bd-account__sidebar-note h3 {
    margin: 0 0 .28rem;
    color: var(--color-heading);
    font-size: .96rem;
    line-height: 1.2;
}

body.woocommerce-account .bd-account__sidebar-note p {
    margin: 0;
    color: color-mix(in srgb, var(--color-muted) 88%, var(--color-heading));
    font-size: .84rem;
    line-height: 1.45;
}

body.woocommerce-account .bd-account__sidebar-note a {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    margin-top: .68rem;
    color: var(--color-red-500);
    font-size: .84rem;
    font-weight: 700;
    text-decoration: none;
}

body.woocommerce-account .bd-account__sidebar-note a:hover {
    opacity: 1;
    color: color-mix(in srgb, var(--color-red-500) 82%, var(--color-heading));
}

body.woocommerce-account .bd-account__content {
    min-width: 0;
    border: 1px solid color-mix(in srgb, var(--color-border) 86%, transparent);
    border-radius: 8px;
    background:
        linear-gradient(180deg, #ffffff 0%, color-mix(in srgb, var(--color-bg-light) 36%, #ffffff) 100%);
    box-shadow: 0 18px 44px color-mix(in srgb, var(--color-heading) 5%, transparent);
}

body.woocommerce-account .bd-stat-card {
    border-top: 2px solid color-mix(in srgb, var(--color-red-500) 30%, var(--color-border));
    background: #ffffff;
}

body.woocommerce-account .bd-stat-card__icon {
    display: inline-grid;
    width: 2.6rem;
    height: 2.6rem;
    place-items: center;
    border-radius: 999px;
    background: color-mix(in srgb, var(--color-red-500) 9%, #ffffff);
    color: var(--color-red-500);
}

body.woocommerce-account .bd-dashboard__section-header {
    padding-bottom: .85rem;
    border-bottom: 1px solid color-mix(in srgb, var(--color-border) 78%, transparent);
}

body.woocommerce-account .woocommerce-MyAccount-content .shop_table th,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-table--order-details th {
    background: color-mix(in srgb, var(--color-bg-light) 76%, #ffffff);
}

body.woocommerce-account .woocommerce-MyAccount-content .form-row input[type="text"],
body.woocommerce-account .woocommerce-MyAccount-content .form-row input[type="email"],
body.woocommerce-account .woocommerce-MyAccount-content .form-row input[type="tel"],
body.woocommerce-account .woocommerce-MyAccount-content .form-row input[type="password"],
body.woocommerce-account .woocommerce-MyAccount-content .form-row input[type="number"],
body.woocommerce-account .woocommerce-MyAccount-content .form-row select,
body.woocommerce-account .woocommerce-MyAccount-content .form-row textarea {
    border-radius: 6px;
    background: color-mix(in srgb, var(--color-bg-light) 50%, #ffffff);
}

body.woocommerce-account .woocommerce-MyAccount-content .form-row input:focus-visible,
body.woocommerce-account .woocommerce-MyAccount-content .form-row select:focus-visible,
body.woocommerce-account .woocommerce-MyAccount-content .form-row textarea:focus-visible {
    border-color: color-mix(in srgb, var(--color-red-500) 54%, var(--color-border));
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-red-500) 12%, transparent);
}

@media (min-width: 960px) {
    body.woocommerce-account .bd-account {
        display: grid;
        grid-template-columns: minmax(18rem, 21.5rem) minmax(0, 1fr);
        gap: clamp(1.35rem, 2.6vw, 2.2rem);
        align-items: start;
    }

    body.woocommerce-account .bd-account__sidebar {
        position: sticky;
        top: calc(var(--header-height, 0px) + 1rem);
        grid-column: 1;
    }

    body.admin-bar.woocommerce-account .bd-account__sidebar {
        top: calc(var(--header-height, 0px) + 3rem);
    }

    body.woocommerce-account .bd-account__hero,
    body.woocommerce-account .bd-account-nav,
    body.woocommerce-account .bd-account__content {
        grid-area: auto;
    }

    body.woocommerce-account .bd-account__content {
        grid-column: 2;
        min-height: 28rem;
        padding: clamp(1.65rem, 2.5vw, 2.35rem);
    }
}

@media (max-width: 959px) {
    body.woocommerce-account .bd-account {
        display: flex;
        flex-direction: column;
    }

    body.woocommerce-account .bd-account__sidebar {
        box-shadow: none;
    }

    body.woocommerce-account .bd-account-nav__toggle {
        border-radius: 6px;
    }
}

@media (max-width: 640px) {
    body.woocommerce-account .bd-account__hero {
        padding: 1rem;
    }

    body.woocommerce-account .bd-account__hero-inner {
        grid-template-columns: 3rem minmax(0, 1fr);
        grid-template-areas: none;
        gap: .8rem;
    }

    body.woocommerce-account .bd-account__avatar {
        width: 3rem;
        height: 3rem;
        font-size: .94rem;
    }

    body.woocommerce-account .bd-account__hero-text {
        grid-area: auto;
    }

    body.woocommerce-account .bd-account__hero-sub {
        grid-column: 1 / -1;
        font-size: .86rem;
    }

    body.woocommerce-account .bd-account-nav {
        padding: .55rem;
    }

    body.woocommerce-account .bd-account-nav__list {
        display: none;
        padding-top: .55rem;
    }

    body.woocommerce-account .bd-account-nav.is-open .bd-account-nav__list {
        display: flex;
    }

    body.woocommerce-account .bd-account-nav__link {
        min-height: 2.85rem;
        padding: .72rem .72rem;
        font-size: .94rem;
    }

    body.woocommerce-account .bd-account__sidebar-note {
        margin: 0 .55rem .65rem;
    }
}

/* ------------------------------------------------------------------
   JANA KORREKTUREN 2026-07: Shop, Teaser, Statements, Weingut-Seiten
   ------------------------------------------------------------------ */

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero {
    height: clamp(340px, 30vw, 460px) !important;
    margin-bottom: clamp(1.25rem, 2.8vw, 2.5rem) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__content {
    padding-block: clamp(1.9rem, 3.4vw, 3.1rem) !important;
}

body.post-type-archive-product .bd-shop-hero .woocommerce-products-header__title.page-title {
    max-width: 14ch !important;
}

body.tax-product_cat .bd-shop-hero .woocommerce-products-header__title.page-title {
    max-width: 14ch !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero__facts {
    display: none !important;
}

body.tax-product_cat .bd-shop-hero__actions {
    display: none !important;
}

.bd-shop-main .woocommerce-pagination ul.page-numbers li span.page-numbers.current {
    border-color: var(--color-primary) !important;
    background: var(--color-primary) !important;
    color: var(--color-white) !important;
}

.bd-shop-main .woocommerce-pagination ul.page-numbers li a.page-numbers:hover {
    border-color: var(--color-primary) !important;
    color: var(--color-primary) !important;
}

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-category-nav--primary .bd-shop-category-grid {
    grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr)) !important;
}

body.post-type-archive-product .bd-shop-category-nav--primary .bd-shop-category-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

.bd-shop-product-recommendations {
    margin: clamp(2rem, 4vw, 3.5rem) 0;
}

.bd-product-grid--recommendations {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.bd-product-card__body {
    gap: .32rem !important;
}

.bd-product-card__title-link,
.bd-product-card__body-link {
    display: grid;
    gap: .32rem;
    color: inherit;
    text-decoration: none;
}

.bd-product-card__meta {
    margin: 0 !important;
    line-height: 1.35;
}

.bd-product-card__excerpt {
    display: block;
    margin: .12rem 0 0;
    color: var(--color-text);
    font-size: .88rem;
    line-height: 1.42;
}

.bd-product-card__price-row {
    display: grid;
    gap: .15rem;
    min-height: 3.25rem;
    margin-top: auto;
    padding-top: .72rem;
    border-top: 1px solid color-mix(in srgb, var(--color-border) 72%, transparent);
}

.bd-product-card__unit-price,
.bd-product-card__unit-price .bd-price__suffix {
    color: var(--color-muted);
    font-size: .74rem;
    line-height: 1.3;
}

body.single-product .bd-gallery__main {
    touch-action: pan-y;
}

.bd-latest-posts__header,
.bd-calendar-teaser__top {
    align-items: flex-start !important;
}

.bd-latest-posts__header > div,
.bd-calendar-teaser__top > div {
    min-width: 0;
    max-width: 68ch;
}

.bd-latest-posts__header .btn,
.bd-calendar-teaser__link {
    flex: 0 0 auto;
    margin-top: .3rem;
    white-space: nowrap;
}

.bd-statement__quote {
    display: grid;
    position: relative;
    gap: clamp(1rem, 2vw, 1.35rem);
    max-width: min(100%, 58rem);
    margin-inline: auto;
    padding: clamp(2rem, 4vw, 3.25rem) clamp(1.5rem, 4vw, 3rem);
    border: 1px solid color-mix(in srgb, var(--color-border) 72%, transparent);
    border-top: 4px solid var(--color-red-500);
    border-radius: 8px;
    background: color-mix(in srgb, var(--color-bg) 92%, #ffffff 8%);
    box-shadow: 0 22px 52px color-mix(in srgb, var(--color-heading) 9%, transparent);
    overflow: clip;
}

.bd-statement__quote::before {
    position: absolute;
    top: clamp(.7rem, 1.5vw, 1rem);
    left: clamp(1rem, 2vw, 1.35rem);
    color: color-mix(in srgb, var(--color-red-500) 18%, transparent);
    font-family: var(--font-heading);
    font-size: clamp(4rem, 8vw, 7rem);
    font-weight: var(--weight-bold);
    line-height: 1;
    content: "\201C";
    pointer-events: none;
}

.bd-statement__quote-mark {
    display: none !important;
}

.bd-statement__quote-text {
    position: relative;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

.bd-statement__quote-text,
.bd-statement__quote-text p {
    color: var(--color-heading);
    font-size: clamp(1.45rem, 2.7vw, 2.35rem) !important;
    font-style: normal;
    font-weight: var(--weight-semibold);
    line-height: 1.16 !important;
    text-wrap: balance;
}

.bd-statement__quote-author {
    position: relative;
    margin-top: 0;
    color: var(--color-muted);
    font-size: clamp(.85rem, 1vw, .98rem);
    letter-spacing: .08em;
}

.bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text {
    font-size: clamp(1.8rem, 4vw, 2.75rem) !important;
    line-height: 1.08 !important;
}

.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero {
    min-height: 0;
    padding-block: clamp(6rem, 10vw, 8.5rem) clamp(4rem, 7vw, 6rem);
    border-bottom: 0;
    background: var(--color-bg) !important;
}

.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero::before,
.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero::after,
.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-inner::before {
    display: none;
}

.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero.bd_bgt-rows__statement--center {
    text-align: center;
}

.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-inner {
    width: min(980px, 100%);
    gap: var(--space-md);
    margin-inline: auto;
}

.bd_bgt-rows.bd-module--bgt-rows.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero :is(h1, h2).bd_bgt-rows__statement-title {
    max-width: min(100%, 68rem);
    margin-inline: auto;
    color: var(--color-heading);
    font-family: var(--font-body);
    font-size: clamp(1.1rem, 1.6vw, 1.35rem);
    font-weight: var(--weight-medium);
    line-height: 1.5;
}

.bd_bgt-rows.bd-module--bgt-rows.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero :is(h1, h2).bd_bgt-rows__statement-title .xxl {
    display: block;
    max-width: none;
    margin: 0 0 var(--space-lg);
    color: inherit;
    font-family: var(--font-heading);
    font-size: clamp(3.2rem, 6.5vw, 6.2rem);
    font-weight: var(--weight-bold);
    line-height: .98;
}

.bd_bgt-rows.bd-module--bgt-rows.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero :is(h1, h2).bd_bgt-rows__statement-title .xxl::after {
    display: block;
    width: clamp(7rem, 17vw, 12rem);
    height: 3px;
    margin: clamp(1.5rem, 3vw, 2.25rem) auto 0;
    background: var(--color-red-500);
    content: "";
}

@media (max-width: 720px) {
    .bd_bgt-rows__event-hero {
        width: 100%;
        aspect-ratio: auto;
        height: clamp(22rem, 82vw, 32rem);
        margin-top: 0;
    }

    .bd_bgt-rows__event-hero-logo {
        top: auto;
        right: var(--container-padding-mobile);
        bottom: 1.5rem;
        left: auto;
        width: min(58vw, 17rem);
        max-height: 38%;
        transform: none;
    }
}

.bd-floating-ctas {
    position: fixed;
    right: clamp(.85rem, 1.8vw, 1.4rem);
    bottom: clamp(1rem, 2.2vw, 1.6rem);
    z-index: 80;
    display: grid;
    gap: .45rem;
    width: min(13rem, calc(100vw - 2rem));
    pointer-events: none;
}

.bd-floating-ctas__link {
    display: flex;
    align-items: center;
    gap: .58rem;
    min-height: 2.72rem;
    padding: .68rem .82rem;
    border: 1px solid color-mix(in srgb, var(--color-heading) 14%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--color-bg) 94%, var(--color-bg-light) 6%);
    box-shadow: 0 14px 30px color-mix(in srgb, var(--color-heading) 12%, transparent);
    color: var(--color-heading);
    font-size: .88rem;
    font-weight: var(--weight-semibold);
    line-height: 1.1;
    pointer-events: auto;
    text-decoration: none;
    transition: background var(--transition), border-color var(--transition), color var(--transition), transform var(--transition);
}

.bd-floating-ctas__link i {
    display: grid;
    width: 1.72rem;
    height: 1.72rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--color-primary) 12%, transparent);
    color: var(--color-primary);
    font-size: .95rem;
}

.bd-floating-ctas__link:hover,
.bd-floating-ctas__link:focus-visible {
    border-color: color-mix(in srgb, var(--color-primary) 42%, transparent);
    background: var(--color-bg);
    color: var(--color-primary);
    transform: translateY(-1px);
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows {
    gap: 0;
    padding-bottom: 0;
    background: var(--color-bg-light);
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows > .bd_bgt-rows__row,
body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows > .bd_bgt-rows__event-hero {
    min-width: 0;
    max-width: 100%;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media {
    padding-block: 0;
    border-top: 0;
    background: var(--color-bg-light);
    overflow: clip;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media--tone-warm,
body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media--tone-clear {
    background: var(--color-bg-light);
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-grid {
    width: 100%;
    max-width: none;
    min-height: var(--bgt-row-height, 70vh);
    margin: 0;
    gap: 0;
    align-items: stretch;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-grid > * {
    min-width: 0;
    max-width: 100%;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-image {
    min-height: var(--bgt-row-height, 70vh);
    height: var(--bgt-row-height, 70vh);
    border: 0;
    border-radius: 0;
    background: color-mix(in srgb, var(--color-bg-light) 86%, var(--color-primary) 14%);
    box-shadow: none;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    object-position: var(--bgt-image-position, center center);
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-content {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    min-height: var(--bgt-row-height, 70vh);
    padding: clamp(3rem, 7vw, 7.5rem);
    background: var(--color-bg-light);
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-content-inner {
    display: grid;
    width: min(var(--bgt-content-width, 58ch), 100%);
    min-width: 0;
    max-width: 100%;
    gap: var(--space-lg);
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media--image-right .bd_bgt-rows__media-content-inner {
    margin-inline: 0 auto;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media--image-left .bd_bgt-rows__media-content-inner {
    margin-inline: auto 0;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-text {
    display: grid;
    gap: var(--space-md);
    min-width: 0;
    max-width: 100%;
    font-size: clamp(1.02rem, 1.15vw, 1.18rem);
    line-height: 1.72;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-text h2 {
    max-width: 18ch;
    margin-inline: 0;
    font-size: clamp(2.45rem, 3.1vw, 3.5rem);
    line-height: 1.02;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-text h2::after {
    width: 5rem;
    height: 3px;
    margin-top: clamp(.85rem, 1.4vw, 1.15rem);
    background: var(--color-red-500);
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-text p,
body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-text li {
    max-width: 62ch;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-text strong {
    display: inline;
    margin: 0;
    color: inherit;
    font-size: inherit;
    font-weight: var(--weight-semibold);
    line-height: inherit;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-text p > strong:only-child {
    display: block;
    margin-bottom: calc(var(--space-sm) * -0.25);
    color: var(--color-heading);
    font-size: clamp(1.05rem, 1.2vw, 1.18rem);
    font-weight: var(--weight-regular);
    line-height: 1.5;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-content-inner::before {
    display: none;
    content: none;
}

@media (min-width: 900px) {
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media {
        --bd-bgt-media-row-height: clamp(42rem, 70svh, 46rem);
        --bd-bgt-media-pad-y: clamp(2.5rem, 4.5vw, 5rem);
        --bd-bgt-media-pad-x: clamp(3rem, 7vw, 7.5rem);
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-grid {
        height: var(--bd-bgt-media-row-height);
        min-height: 0;
        grid-auto-rows: minmax(0, 1fr);
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-image {
        height: 100%;
        min-height: 0;
        max-height: 100%;
        overflow: clip;
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-img {
        min-height: 0;
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-content {
        height: 100%;
        min-height: 0;
        max-height: 100%;
        padding: var(--bd-bgt-media-pad-y) var(--bd-bgt-media-pad-x);
        overflow: clip;
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-content-inner {
        max-height: calc(var(--bd-bgt-media-row-height) - (var(--bd-bgt-media-pad-y) * 2));
    }
}

.bd-bgt-quote {
    display: grid;
    position: relative;
    gap: clamp(1rem, 2vw, 1.35rem);
    width: min(100%, var(--bgt-statement-width, 900px));
    max-width: 100%;
    margin: 0 auto;
    padding: clamp(2.35rem, 4.6vw, 4rem) clamp(1.5rem, 4.8vw, 4.25rem);
    border: 1px solid color-mix(in srgb, var(--color-border) 74%, transparent);
    border-top: 4px solid var(--color-red-500);
    border-radius: 8px;
    background: color-mix(in srgb, var(--color-bg) 90%, #ffffff 10%);
    box-shadow: 0 24px 56px color-mix(in srgb, var(--color-heading) 9%, transparent);
    overflow: clip;
    text-align: center;
}

.bd-bgt-quote::before {
    position: absolute;
    top: clamp(.65rem, 1.5vw, 1.1rem);
    left: clamp(.9rem, 2vw, 1.45rem);
    color: color-mix(in srgb, var(--color-red-500) 17%, transparent);
    font-family: var(--font-heading);
    font-size: clamp(4.5rem, 9vw, 8rem);
    font-weight: var(--weight-bold);
    line-height: 1;
    content: "\201C";
    pointer-events: none;
}

.bd-bgt-quote__blockquote {
    position: relative;
    display: grid;
    gap: clamp(1rem, 2vw, 1.4rem);
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.bd-bgt-quote__lead,
.bd-bgt-quote__copy {
    display: block;
    position: relative;
    margin: 0 auto;
}

.bd-bgt-quote__lead {
    max-width: 18ch;
    color: var(--color-heading);
    font-family: var(--font-heading);
    font-size: clamp(2.15rem, 4.8vw, 4.75rem);
    font-style: normal;
    font-weight: var(--weight-bold);
    line-height: 1.02;
    text-wrap: balance;
}

.bd-bgt-quote__copy {
    max-width: 44ch;
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: clamp(1.18rem, 2.15vw, 1.85rem);
    font-style: normal;
    font-weight: var(--weight-regular);
    line-height: 1.35;
    text-wrap: pretty;
}

.bd-bgt-quote__author {
    position: relative;
    color: var(--color-muted);
    font-size: clamp(.82rem, 1vw, .95rem);
    font-style: normal;
    font-weight: var(--weight-semibold);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bd-bgt-quote__author cite {
    font-style: normal;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) {
    position: relative;
    display: grid;
    min-height: clamp(22rem, 42vw, 34rem);
    align-items: center;
    padding-block: clamp(5rem, 9vw, 8rem);
    border-top: 1px solid color-mix(in srgb, var(--color-border) 65%, transparent);
    border-bottom: 1px solid color-mix(in srgb, var(--color-border) 54%, transparent);
    background: color-mix(in srgb, var(--color-bg) 86%, var(--color-bg-light) 14%);
    overflow: clip;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .container {
    width: min(100% - (var(--container-padding-mobile) * 2), 1180px);
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-inner {
    width: min(var(--bgt-statement-width, 900px), 100%);
    margin-inline: auto;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text {
    display: grid;
    gap: clamp(1rem, 2.2vw, 1.55rem);
    max-width: min(100%, 980px);
    margin-inline: auto;
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: clamp(1.18rem, 1.75vw, 1.55rem) !important;
    font-weight: var(--weight-regular);
    line-height: 1.5 !important;
    place-items: center;
    text-align: center;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text > * {
    margin: 0;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text :is(h1, h2),
body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text > p:first-child:not(:has(.bd-bgt-quote__lead)),
body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd-bgt-quote__lead {
    display: block;
    width: min(100%, 22ch);
    max-width: 960px;
    margin: 0 auto !important;
    padding-bottom: 0 !important;
    color: var(--color-heading);
    font-family: var(--font-heading);
    font-size: clamp(2.35rem, 4.7vw, 5rem);
    font-weight: var(--weight-bold);
    line-height: 1.02;
    text-align: center;
    text-wrap: balance;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text :is(h1, h2) strong {
    display: inline;
    margin: 0;
    color: inherit;
    font: inherit;
    line-height: inherit;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text :is(h1, h2)::after,
body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text > p:first-child:not(:has(.bd-bgt-quote__lead))::after {
    display: block;
    position: static !important;
    inset: auto !important;
    width: clamp(5rem, 10vw, 8rem);
    height: 3px;
    margin: clamp(1.05rem, 2.4vw, 1.65rem) auto 0 !important;
    background: var(--color-red-500);
    border-radius: 0;
    content: "";
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text > p:first-child:not(:has(.bd-bgt-quote__lead)) + p,
body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd-bgt-quote__copy {
    display: block;
    max-width: 42ch;
    margin-inline: auto;
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: clamp(1.35rem, 2.8vw, 2.35rem);
    font-weight: var(--weight-regular);
    line-height: 1.22;
    text-wrap: pretty;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd-bgt-quote__copy {
    margin-top: calc(clamp(1.05rem, 2.4vw, 1.65rem) * -0.15);
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd-bgt-quote {
    width: min(100%, var(--bgt-statement-width, 900px));
    max-width: 100%;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd-bgt-quote .bd-bgt-quote__lead {
    width: auto !important;
    max-width: 18ch;
    margin-inline: auto !important;
    color: var(--color-heading);
    font-family: var(--font-heading);
    font-size: clamp(2.15rem, 4.8vw, 4.75rem);
    font-weight: var(--weight-bold);
    line-height: 1.02;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd-bgt-quote .bd-bgt-quote__copy {
    max-width: 44ch;
    margin-top: 0;
    margin-inline: auto;
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: clamp(1.18rem, 2.15vw, 1.85rem);
    font-weight: var(--weight-regular);
    line-height: 1.35;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero {
    position: relative;
    display: grid;
    min-height: clamp(22rem, 42vw, 34rem);
    align-items: center;
    padding-block: clamp(5rem, 9vw, 8rem) !important;
    border-top: 1px solid color-mix(in srgb, var(--color-border) 65%, transparent);
    border-bottom: 1px solid color-mix(in srgb, var(--color-border) 54%, transparent);
    background: color-mix(in srgb, var(--color-bg) 86%, var(--color-bg-light) 14%) !important;
    overflow: clip;
    text-align: center;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero::before,
body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero::after,
body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-inner::before {
    display: none !important;
    content: none !important;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero .container {
    width: min(100% - (var(--container-padding-mobile) * 2), 1180px);
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-inner {
    display: grid;
    gap: clamp(1rem, 2.2vw, 1.55rem);
    width: min(var(--bgt-statement-width, 900px), 100%);
    margin-inline: auto;
    place-items: center;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-text {
    display: grid;
    gap: clamp(1rem, 2.2vw, 1.55rem);
    max-width: min(100%, 980px);
    margin-inline: auto;
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: clamp(1.18rem, 1.75vw, 1.55rem) !important;
    font-weight: var(--weight-regular);
    line-height: 1.5 !important;
    place-items: center;
    text-align: center;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-text > * {
    margin: 0;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-title:empty {
    display: none !important;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-text :is(h1, h2) {
    display: block;
    width: min(100%, 22ch) !important;
    max-width: 960px !important;
    margin: 0 auto !important;
    padding-bottom: 0 !important;
    color: var(--color-heading);
    font-family: var(--font-heading);
    font-size: clamp(2.35rem, 4.7vw, 5rem) !important;
    font-weight: var(--weight-bold);
    line-height: 1.02 !important;
    justify-self: center;
    text-align: center;
    text-wrap: balance;
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-text :is(h1, h2)::after {
    display: block;
    position: static !important;
    inset: auto !important;
    width: clamp(5rem, 10vw, 8rem);
    height: 3px;
    margin: clamp(1.05rem, 2.4vw, 1.65rem) auto 0 !important;
    background: var(--color-red-500);
    border-radius: 0;
    content: "";
}

body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-text :is(h1, h2) strong {
    display: inline;
    margin: 0;
    color: inherit;
    font: inherit;
    line-height: inherit;
}

@media (max-width: 720px) {
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) {
        min-height: clamp(18rem, 78vw, 26rem);
        padding-block: clamp(4rem, 15vw, 5.5rem);
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero {
        min-height: clamp(18rem, 78vw, 26rem);
        padding-block: clamp(4rem, 15vw, 5.5rem) !important;
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text :is(h1, h2),
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd_bgt-rows__statement-text > p:first-child:not(:has(.bd-bgt-quote__lead)),
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd-bgt-quote__lead,
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows + .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero .bd_bgt-rows__statement-text :is(h1, h2) {
        width: min(100%, 13ch);
        font-size: clamp(2.25rem, 13vw, 3.8rem);
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd-bgt-quote {
        padding: clamp(2rem, 10vw, 2.75rem) clamp(1rem, 6vw, 1.45rem);
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd-bgt-quote .bd-bgt-quote__lead {
        width: auto !important;
        max-width: 14ch;
        font-size: clamp(2rem, 11vw, 3.35rem);
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement:not(.bd_bgt-rows__statement--hero) .bd-bgt-quote .bd-bgt-quote__copy {
        max-width: 30ch;
        font-size: clamp(1.08rem, 5vw, 1.42rem);
    }
}

/* Jana, 10.08.2026: FAQ-Accordions kompakter und ruhiger. */
body .bd_faq-wrapper {
    padding-block: clamp(3.25rem, 6vw, 5.75rem);
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--color-bg) 92%, #ffffff 8%), var(--color-bg));
}

body .bd_faq-wrapper .bd-container,
body .bd_faq-wrapper .container {
    width: min(100% - clamp(2rem, 5vw, 5rem), var(--container-lg));
}

body .bd_faq-headline {
    max-width: min(100%, 14ch);
    margin: 0 auto;
    color: var(--color-heading);
    font-size: clamp(2.15rem, 4.2vw, 3.75rem);
    font-weight: var(--weight-bold);
    line-height: 1.04;
    letter-spacing: 0;
    text-align: center;
    text-wrap: balance;
}

body .bd_faq-teaser {
    max-width: 58ch;
    margin: clamp(1rem, 2vw, 1.4rem) auto 0;
    color: var(--color-muted);
    font-size: clamp(1rem, 1.18vw, 1.12rem);
    line-height: 1.65;
    text-align: center;
    text-wrap: pretty;
}

body .bd_faq-list {
    --bd-accordion-gap: clamp(.55rem, 1.15vw, .8rem);
    --bd-accordion-bg: color-mix(in srgb, #ffffff 94%, var(--color-bg-light) 6%);
    --bd-accordion-bg-hover: color-mix(in srgb, #ffffff 86%, var(--color-bg-light) 14%);
    --bd-accordion-bg-open: #ffffff;
    --bd-accordion-border: color-mix(in srgb, var(--color-border) 78%, transparent);
    --bd-accordion-radius: 8px;
    --bd-accordion-title: var(--color-heading);
    --bd-accordion-text: color-mix(in srgb, var(--color-text) 82%, var(--color-muted));
    --bd-accordion-accent: var(--color-red-500);
    --bd-accordion-icon-bg: color-mix(in srgb, var(--color-bg-light) 78%, #ffffff);
    --bd-accordion-icon-color: var(--color-red-500);
    --bd-accordion-shadow: 0 1px 0 color-mix(in srgb, var(--color-heading) 4%, transparent);
    --bd-accordion-shadow-hover: 0 10px 30px color-mix(in srgb, var(--color-heading) 7%, transparent);
    display: grid;
    gap: var(--bd-accordion-gap);
    width: min(100%, 58rem);
    max-width: min(100%, 58rem);
    margin: clamp(1.75rem, 3vw, 2.65rem) auto 0;
}

body .bd-accordion--faq.bd_faq-list .bd_faq-item {
    position: relative;
    overflow: clip;
    margin: 0;
    border: 1px solid var(--bd-accordion-border);
    border-left-width: 1px;
    border-left-color: var(--bd-accordion-border);
    border-radius: var(--bd-accordion-radius);
    background: var(--bd-accordion-bg);
    box-shadow: var(--bd-accordion-shadow);
    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        background-color .18s ease;
}

body .bd-accordion--faq.bd_faq-list .bd_faq-item::before {
    position: absolute;
    inset: 0 0 auto;
    height: 3px;
    background: var(--color-red-500);
    opacity: 0;
    content: "";
    transition: opacity .18s ease;
}

body .bd-accordion--faq.bd_faq-list .bd_faq-item[open] {
    border-color: color-mix(in srgb, var(--color-red-500) 14%, var(--color-border));
    border-left-color: color-mix(in srgb, var(--color-red-500) 14%, var(--color-border));
    background: var(--bd-accordion-bg-open);
    box-shadow: 0 18px 42px color-mix(in srgb, var(--color-heading) 8%, transparent);
}

body .bd-accordion--faq.bd_faq-list .bd_faq-item[open]::before {
    opacity: 1;
}

body .bd_faq-summary {
    min-height: 0;
    gap: clamp(.85rem, 2vw, 1.25rem);
    align-items: center;
    padding: clamp(1rem, 1.8vw, 1.25rem) clamp(1rem, 2vw, 1.4rem);
    background: transparent;
}

body .bd_faq-item[open] .bd_faq-summary {
    padding-bottom: .55rem;
}

body .bd_faq-summary:hover {
    background: var(--bd-accordion-bg-hover);
    transform: none;
}

body .bd_faq-question-text {
    max-width: 42ch;
    margin: 0;
    padding: 0;
    color: var(--bd-accordion-title);
    font-size: clamp(1.05rem, 1.28vw, 1.24rem);
    font-weight: var(--weight-bold);
    line-height: 1.2;
    letter-spacing: 0;
    text-wrap: balance;
}

body .bd_faq-icon-wrapper {
    width: 2.25rem;
    height: 2.25rem;
    margin: 0;
    border: 1px solid color-mix(in srgb, var(--color-red-500) 12%, transparent);
    border-radius: 8px;
    background: var(--bd-accordion-icon-bg);
    color: var(--bd-accordion-icon-color);
    font-size: .98rem;
}

body .bd_faq-item[open] .bd_faq-icon-wrapper {
    background: color-mix(in srgb, var(--color-red-500) 10%, #ffffff);
}

body .bd_faq-content {
    padding: 0;
    color: var(--bd-accordion-text);
    font-size: clamp(1rem, 1.02vw, 1.08rem);
    line-height: 1.68;
}

body .bd_faq-content-inner {
    max-width: 68ch;
    padding: 0 clamp(1rem, 2vw, 1.4rem) clamp(1rem, 2vw, 1.35rem);
}

body .bd_faq-content-inner > * {
    margin-top: 0;
}

body .bd_faq-content-inner > * + * {
    margin-top: .75rem;
}

@media (max-width: 760px) {
    body .bd_faq-wrapper {
        padding-block: clamp(2.75rem, 12vw, 4.25rem);
    }

    body .bd_faq-wrapper .bd-container,
    body .bd_faq-wrapper .container {
        width: min(100% - 2rem, var(--container-lg));
    }

    body .bd_faq-headline {
        max-width: 12ch;
        font-size: clamp(2rem, 11vw, 3rem);
    }

    body .bd_faq-list {
        width: 100%;
        max-width: 100%;
        margin-top: clamp(1.35rem, 6vw, 2rem);
    }

    body .bd_faq-summary {
        grid-template-columns: minmax(0, 1fr) 2rem;
        gap: .85rem;
        padding: 1rem;
    }

    body .bd_faq-question-text {
        max-width: none;
        font-size: clamp(1rem, 4.8vw, 1.2rem);
    }

    body .bd_faq-icon-wrapper {
        width: 2rem;
        height: 2rem;
        font-size: .9rem;
    }

    body .bd_faq-content-inner {
        max-width: none;
        padding: 0 1rem 1.05rem;
    }
}

body.single-product .bd-product-summary__availability--in-stock i {
    width: .72rem;
    height: .72rem;
    flex: 0 0 .72rem;
    border-radius: 50%;
    background: var(--color-success);
    color: transparent !important;
    font-size: 0;
}

body.single-product .bd-product-summary__cart form.cart {
    width: 100%;
    grid-template-columns: 8.5rem minmax(0, 1fr) !important;
}

body.single-product .bd-product-summary__cart .quantity,
body.single-product .bd-product-summary__cart .quantity.bd-qty-stepper {
    width: 8.5rem !important;
    min-width: 0 !important;
    max-width: 8.5rem;
}

body.single-product .bd-product-summary__cart form.cart .single_add_to_cart_button,
body.single-product .bd-product-summary__cart form.cart button.single_add_to_cart_button {
    width: 100% !important;
    min-width: 0 !important;
    white-space: nowrap;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

body.single-product .bd-qty-stepper > label.screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    min-width: 1px !important;
    max-width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
}

body.single-product .bd-product-summary__quickfact dt,
body.single-product .bd-product-summary__quickfact dd {
    color: var(--color-heading) !important;
}

/* Jana Punkt 22: dekorative Shop-Akzente von Grün auf Markenorange. */
body.woocommerce .bd-product-summary__usps li i,
body.woocommerce .bd-product-summary__trust li i,
body.woocommerce .bd-wine-tabs__tab.is-active,
body.woocommerce .bd-wine-tabs__tab:hover,
body.woocommerce .bd-wine-facts__item i,
body.woocommerce .bd-wine-specs i,
body.woocommerce .bd-wine-specs__item i,
body.woocommerce .bd-wine-tabs__panel i,
body.woocommerce .bd-wine-panel i:not(.bd-product-summary__rating i):not(.fa-star),
body.woocommerce .bd-spec-card__icon,
body.woocommerce .bd-wine-promise i,
body.woocommerce .bd-wine-promise__kicker,
body.woocommerce .bd-wine-badges__item i,
body.woocommerce .bd-wine-profile__item i,
body.woocommerce .bd-wine-details__item i,
body.woocommerce .bd-wine-origin-facts__item i {
    color: var(--color-primary) !important;
}

body.woocommerce .bd-wine-tabs__tab::after {
    background: var(--color-primary) !important;
}

body.woocommerce .bd-spec-card__icon {
    background: color-mix(in srgb, var(--color-primary) 11%, var(--color-white)) !important;
}

body.woocommerce .bd-product-badges__pill--bio,
body.woocommerce .bd-product-badges__pill--vegan,
body.woocommerce .bd-product-card__badge--bio,
body.woocommerce .bd-product-card__badge--vegan {
    border-color: color-mix(in srgb, var(--color-primary) 24%, var(--color-white)) !important;
    background: color-mix(in srgb, var(--color-primary) 9%, var(--color-white)) !important;
    color: var(--color-primary) !important;
}

@media (max-width: 640px) {
    body.single-product .bd-product-summary__cart form.cart {
        grid-template-columns: 7.25rem minmax(0, 1fr) !important;
    }

    body.single-product .bd-product-summary__cart .quantity,
    body.single-product .bd-product-summary__cart .quantity.bd-qty-stepper {
        width: 7.25rem !important;
        max-width: 7.25rem;
    }
}

.bd-event-form .bd_fieldset {
    display: grid;
    gap: var(--space-md);
}

.bd-event-form .bd_form-group,
.bd-event-form .bd_form-row {
    margin-bottom: 0;
}

.bd-event-form .bd_input,
.bd-event-form .bd_textarea,
.bd-event-form input[type="date"] {
    width: 100%;
    min-height: 3.5rem;
    padding: .85rem 1rem;
    border: 1px solid var(--form-field-border);
    border-radius: var(--input-radius);
    background: var(--form-field-bg);
    color: var(--color-heading);
    font: inherit;
}

.bd-event-form input[type="date"] {
    color-scheme: light;
    appearance: auto;
}

.bd-event-form .bd_textarea {
    min-height: 10rem;
}

.bd-event-choices .bd_label small {
    color: var(--color-muted);
    font-size: .82em;
    font-weight: var(--weight-regular);
}

.bd-event-choices .wpcf7-form-control {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem 1rem;
    margin-top: .65rem;
}

.bd-event-choices .wpcf7-list-item {
    margin: 0;
}

.bd-event-choices .wpcf7-list-item label {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    min-height: 100%;
    padding: .75rem .85rem;
    border: 1px solid var(--form-field-border);
    border-radius: var(--input-radius);
    background: var(--form-field-bg);
    cursor: pointer;
}

.bd-event-choices input[type="checkbox"] {
    width: 1rem;
    height: 1rem;
    flex: 0 0 auto;
    margin: .16rem 0 0;
    accent-color: var(--color-primary);
}

.bd-event-form .bd_acceptance {
    padding-top: .25rem;
}

.bd-event-form .bd_form-actions {
    margin-top: var(--space-lg);
}

.bd-event-form .wpcf7-submit.bd_submit {
    width: auto;
    min-width: 11rem;
    min-height: var(--btn-height);
    padding: var(--btn-padding);
    border: var(--btn-border-width) solid var(--color-primary);
    border-radius: var(--btn-radius);
    background: var(--color-primary);
    color: var(--color-white);
}

.wpcf7-form[data-status="init"] .wpcf7-response-output,
.wpcf7-response-output:empty {
    display: none;
}

.wpcf7 .screen-reader-response {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

.bd-event-form + .wpcf7-response-output,
.bd-event-form ~ .wpcf7-response-output {
    width: 100%;
    min-height: 0;
    margin-top: var(--space-md) !important;
    border-color: color-mix(in srgb, var(--color-primary) 38%, var(--color-border)) !important;
    background: var(--color-bg-light);
}

@media (max-width: 640px) {
    .bd-event-choices .wpcf7-form-control {
        grid-template-columns: 1fr;
    }

    .bd-event-form .wpcf7-submit.bd_submit {
        width: 100%;
    }
}

/* Jana Anfragebereiche: Formular und Infokarte als ruhiger eigener Abschnitt. */
body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar {
    scroll-margin-top: clamp(10rem, 16vw, 17rem);
    padding-block: clamp(4.5rem, 8vw, 8rem);
    border-top: 1px solid color-mix(in srgb, var(--color-border) 64%, transparent);
    background:
        linear-gradient(180deg,
            color-mix(in srgb, var(--color-bg-light) 96%, var(--color-white)) 0%,
            color-mix(in srgb, var(--color-bg) 92%, var(--color-bg-light)) 100%);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .container {
    width: min(100% - (var(--container-padding-mobile) * 2), 1220px);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(1.8rem, 4vw, 3.25rem);
    align-items: start;
    max-width: 1180px;
    margin-inline: auto;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__main {
    display: contents;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__intro {
    grid-column: 1 / -1;
    max-width: 820px;
    margin: 0 auto;
    text-align: center;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__headline {
    max-width: 820px;
    margin: 0 auto;
    color: var(--color-heading);
    font-size: clamp(2.8rem, 5vw, 5.2rem);
    line-height: .98;
    letter-spacing: 0;
    text-align: center;
    text-wrap: balance;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__lead {
    max-width: 58ch;
    margin: clamp(.75rem, 1.4vw, 1.15rem) auto 0;
    color: var(--color-text);
    font-size: clamp(1.05rem, 1.45vw, 1.28rem);
    line-height: 1.58;
    text-align: center;
    text-wrap: pretty;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__form,
body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__sidebar {
    width: 100%;
    min-width: 0;
    border: 1px solid color-mix(in srgb, var(--color-border) 62%, transparent);
    border-radius: 8px;
    background: var(--color-white);
    box-shadow: 0 22px 64px color-mix(in srgb, var(--color-heading) 8%, transparent);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__form {
    padding: clamp(1.35rem, 2.8vw, 2.45rem);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .wpcf7-form > fieldset.hidden-fields-container {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    min-inline-size: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__sidebar {
    padding: clamp(1.35rem, 2.5vw, 2.15rem);
    border-top: 4px solid color-mix(in srgb, var(--color-primary) 82%, var(--color-accent));
    background: color-mix(in srgb, var(--color-bg-light) 74%, var(--color-white));
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__form:hover,
body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__sidebar:hover {
    transform: none;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__sidebar-headline {
    margin-bottom: .8rem;
    color: var(--color-heading);
    font-size: clamp(1.45rem, 2vw, 2rem);
    line-height: 1.08;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__sidebar-content {
    color: var(--color-text);
    font-size: clamp(1rem, 1.25vw, 1.1rem);
    line-height: 1.65;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__sidebar-content a {
    color: var(--color-primary);
    font-weight: var(--weight-semibold);
    text-decoration-thickness: 1px;
    text-underline-offset: .16em;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_fieldset {
    min-inline-size: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_form-row {
    gap: clamp(.8rem, 1.6vw, 1.1rem);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_form-group {
    min-width: 0;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_label {
    margin: 0 0 .42rem;
    color: var(--color-heading);
    font-size: .95rem;
    font-weight: var(--weight-bold);
    line-height: 1.2;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_label small {
    margin-left: .25rem;
    color: var(--color-muted);
    font-size: .88em;
    font-weight: var(--weight-regular);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_input,
body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_textarea,
body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form input[type="date"] {
    min-height: 3.35rem;
    padding: .78rem .95rem;
    border-color: color-mix(in srgb, var(--color-border) 86%, var(--color-heading));
    border-radius: 8px;
    background: var(--color-white);
    color: var(--color-heading);
    font-size: 1rem;
    line-height: 1.35;
    box-shadow: inset 0 1px 0 color-mix(in srgb, var(--color-white) 72%, transparent);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_input::placeholder,
body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_textarea::placeholder {
    color: color-mix(in srgb, var(--color-muted) 76%, transparent);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_input:focus-visible,
body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_textarea:focus-visible,
body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form input[type="date"]:focus-visible {
    border-color: var(--color-primary);
    background: var(--color-white);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 14%, transparent);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_textarea {
    min-height: 8.75rem;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-choices .wpcf7-form-control {
    gap: .75rem;
    margin-top: .7rem;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-choices .wpcf7-list-item label {
    min-height: 4.7rem;
    padding: .82rem .9rem;
    border-color: color-mix(in srgb, var(--color-border) 84%, var(--color-heading));
    border-radius: 8px;
    background: color-mix(in srgb, var(--color-white) 92%, var(--color-bg-light));
    color: var(--color-heading);
    font-size: .98rem;
    font-weight: var(--weight-semibold);
    line-height: 1.34;
    transition:
        background-color var(--transition),
        border-color var(--transition),
        box-shadow var(--transition);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-choices .wpcf7-list-item label:hover,
body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-choices .wpcf7-list-item label:has(input:focus-visible) {
    border-color: color-mix(in srgb, var(--color-primary) 44%, var(--color-border));
    background: color-mix(in srgb, var(--color-primary) 7%, var(--color-white));
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-choices .wpcf7-list-item label:has(input:checked) {
    border-color: color-mix(in srgb, var(--color-primary) 72%, var(--color-border));
    background: color-mix(in srgb, var(--color-primary) 10%, var(--color-white));
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--color-primary) 24%, transparent);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-choices input[type="checkbox"],
body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_acceptance input[type="checkbox"] {
    width: 1rem;
    height: 1rem;
    margin-top: .16rem;
    accent-color: var(--color-primary);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_acceptance {
    color: var(--color-muted);
    font-size: .92rem;
    line-height: 1.5;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_acceptance label {
    gap: .62rem;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_acceptance .wpcf7-list-item {
    margin: 0;
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_acceptance a {
    color: var(--color-primary);
    font-weight: var(--weight-semibold);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_form-actions {
    margin-top: clamp(1.2rem, 2vw, 1.6rem);
}

body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .wpcf7-submit.bd_submit {
    min-width: 13rem;
    min-height: 3.25rem;
    padding: .9rem 1.55rem;
    box-shadow: 0 12px 30px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

@media (min-width: 900px) {
    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__inner {
        grid-template-columns: minmax(20rem, .68fr) minmax(0, 1fr);
        column-gap: clamp(2rem, 4vw, 4.5rem);
    }

    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__form {
        grid-column: 2;
        grid-row: 2;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__sidebar {
        grid-column: 1;
        grid-row: 2;
    }
}

@media (max-width: 899px) {
    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar {
        padding-block: clamp(3.25rem, 12vw, 5.5rem);
    }

    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__intro,
    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__headline,
    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__lead {
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__headline {
        font-size: clamp(2.25rem, 10vw, 3.25rem);
        overflow-wrap: anywhere;
        hyphens: auto;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__lead {
        font-size: 1.04rem;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__lead p {
        max-width: 100%;
        overflow-wrap: anywhere;
    }
}

@media (max-width: 720px) {
    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .bd_form-row-50,
    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-choices .wpcf7-form-control {
        grid-template-columns: 1fr;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__form,
    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-form__sidebar {
        padding: 1.35rem;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-form--has-sidebar .bd-event-form .wpcf7-submit.bd_submit {
        width: 100%;
    }
}

@media (max-width: 640px) {
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero :is(h1, h2).bd_bgt-rows__statement-title .xxl {
        max-width: 100%;
        font-size: clamp(3.2rem, 15.5vw, 4.1rem);
        overflow-wrap: anywhere;
        hyphens: auto;
    }
}

/* Weingut/Kontakt: der Contact-Block nutzt andere Klassen als bd/content-form. */
body.page:not(.home):not(.woocommerce-page) .bd-contact {
    scroll-margin-top: clamp(10rem, 16vw, 17rem);
    padding-block: clamp(4.5rem, 8vw, 8rem);
    border-top: 1px solid color-mix(in srgb, var(--color-border) 64%, transparent);
    background:
        linear-gradient(180deg,
            color-mix(in srgb, var(--color-bg-light) 96%, var(--color-white)) 0%,
            color-mix(in srgb, var(--color-bg) 92%, var(--color-bg-light)) 100%);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .container {
    width: min(100% - (var(--container-padding-mobile) * 2), 1220px);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__intro {
    max-width: 820px;
    margin: 0 auto clamp(1.8rem, 4vw, 3.25rem);
    text-align: center;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__headline {
    max-width: 820px;
    margin: 0 auto;
    color: var(--color-heading);
    font-size: clamp(2.8rem, 5vw, 5.2rem);
    line-height: .98;
    letter-spacing: 0;
    text-align: center;
    text-wrap: balance;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__lead {
    max-width: 58ch;
    margin: clamp(.75rem, 1.4vw, 1.15rem) auto 0;
    color: var(--color-text);
    font-size: clamp(1.05rem, 1.45vw, 1.28rem);
    line-height: 1.58;
    text-align: center;
    text-wrap: pretty;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(1.8rem, 4vw, 3.25rem);
    align-items: start;
    max-width: 1180px;
    margin-inline: auto;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__info,
body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__form {
    width: 100%;
    min-width: 0;
    border: 1px solid color-mix(in srgb, var(--color-border) 62%, transparent);
    border-radius: 8px;
    background: var(--color-white);
    box-shadow: 0 22px 64px color-mix(in srgb, var(--color-heading) 8%, transparent);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__info {
    padding: clamp(1.35rem, 2.5vw, 2.15rem);
    border-top: 4px solid color-mix(in srgb, var(--color-primary) 82%, var(--color-accent));
    background: color-mix(in srgb, var(--color-bg-light) 74%, var(--color-white));
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__form {
    padding: clamp(1.35rem, 2.8vw, 2.45rem);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__form:hover,
body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__info:hover {
    transform: none;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .wpcf7-form > fieldset.hidden-fields-container {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    min-inline-size: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_fieldset {
    min-inline-size: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_form-row {
    gap: clamp(.8rem, 1.6vw, 1.1rem);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_form-group {
    min-width: 0;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_label {
    margin: 0 0 .42rem;
    color: var(--color-heading);
    font-size: .95rem;
    font-weight: var(--weight-bold);
    line-height: 1.2;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_label small {
    margin-left: .25rem;
    color: var(--color-muted);
    font-size: .88em;
    font-weight: var(--weight-regular);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_input,
body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_textarea,
body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form input[type="date"] {
    min-height: 3.35rem;
    padding: .78rem .95rem;
    border-color: color-mix(in srgb, var(--color-border) 86%, var(--color-heading));
    border-radius: 8px;
    background: var(--color-white);
    color: var(--color-heading);
    font-size: 1rem;
    line-height: 1.35;
    box-shadow: inset 0 1px 0 color-mix(in srgb, var(--color-white) 72%, transparent);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_input::placeholder,
body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_textarea::placeholder {
    color: color-mix(in srgb, var(--color-muted) 76%, transparent);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_input:focus-visible,
body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_textarea:focus-visible,
body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form input[type="date"]:focus-visible {
    border-color: var(--color-primary);
    background: var(--color-white);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 14%, transparent);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_textarea {
    min-height: 8.75rem;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-choices .wpcf7-form-control {
    gap: .75rem;
    margin-top: .7rem;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-choices .wpcf7-list-item label {
    min-height: 4.7rem;
    padding: .82rem .9rem;
    border-color: color-mix(in srgb, var(--color-border) 84%, var(--color-heading));
    border-radius: 8px;
    background: color-mix(in srgb, var(--color-white) 92%, var(--color-bg-light));
    color: var(--color-heading);
    font-size: .98rem;
    font-weight: var(--weight-semibold);
    line-height: 1.34;
    transition:
        background-color var(--transition),
        border-color var(--transition),
        box-shadow var(--transition);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-choices .wpcf7-list-item label:hover,
body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-choices .wpcf7-list-item label:has(input:focus-visible) {
    border-color: color-mix(in srgb, var(--color-primary) 44%, var(--color-border));
    background: color-mix(in srgb, var(--color-primary) 7%, var(--color-white));
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-choices .wpcf7-list-item label:has(input:checked) {
    border-color: color-mix(in srgb, var(--color-primary) 72%, var(--color-border));
    background: color-mix(in srgb, var(--color-primary) 10%, var(--color-white));
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--color-primary) 24%, transparent);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-choices input[type="checkbox"],
body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_acceptance input[type="checkbox"] {
    width: 1rem;
    height: 1rem;
    margin-top: .16rem;
    accent-color: var(--color-primary);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_acceptance {
    color: var(--color-muted);
    font-size: .92rem;
    line-height: 1.5;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_acceptance label {
    gap: .62rem;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_acceptance .wpcf7-list-item {
    margin: 0;
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_acceptance a {
    color: var(--color-primary);
    font-weight: var(--weight-semibold);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_form-actions {
    margin-top: clamp(1.2rem, 2vw, 1.6rem);
}

body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .wpcf7-submit.bd_submit {
    min-width: 13rem;
    min-height: 3.25rem;
    padding: .9rem 1.55rem;
    box-shadow: 0 12px 30px color-mix(in srgb, var(--color-primary) 20%, transparent);
}

@media (min-width: 900px) {
    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__grid {
        grid-template-columns: minmax(20rem, .68fr) minmax(0, 1fr);
        column-gap: clamp(2rem, 4vw, 4.5rem);
    }

    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__info {
        grid-column: 1;
        grid-row: 1;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__form {
        grid-column: 2;
        grid-row: 1;
    }
}

@media (max-width: 899px) {
    body.page:not(.home):not(.woocommerce-page) .bd-contact {
        padding-block: clamp(3.25rem, 12vw, 5.5rem);
    }

    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__intro,
    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__headline,
    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__lead {
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__headline {
        font-size: clamp(2.25rem, 10vw, 3.25rem);
        overflow-wrap: anywhere;
        hyphens: auto;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__lead {
        font-size: 1.04rem;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__lead p {
        max-width: 100%;
        overflow-wrap: anywhere;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__form {
        order: 1;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__info {
        order: 2;
    }
}

@media (max-width: 720px) {
    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .bd_form-row-50,
    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-choices .wpcf7-form-control {
        grid-template-columns: 1fr;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__form,
    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-contact__info {
        padding: 1.35rem;
    }

    body.page:not(.home):not(.woocommerce-page) .bd-contact .bd-event-form .wpcf7-submit.bd_submit {
        width: 100%;
    }
}

@media (max-width: 1100px) {
    body.post-type-archive-product .bd-shop-category-nav--primary .bd-shop-category-grid,
    .bd-product-grid--recommendations {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 899px) {
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-grid {
        min-height: 0;
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-image {
        min-height: clamp(20rem, 78vw, 32rem);
        height: clamp(20rem, 78vw, 32rem);
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows--has-page-hero .bd_bgt-rows__media--first .bd_bgt-rows__media-image,
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media--mobile-content-first .bd_bgt-rows__media-image {
        order: 2;
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows--has-page-hero .bd_bgt-rows__media--first .bd_bgt-rows__media-content,
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media--mobile-content-first .bd_bgt-rows__media-content {
        order: 1;
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-content {
        min-height: 0;
        padding: clamp(3rem, 11vw, 4.75rem) var(--container-padding-mobile);
    }
}

@media (max-width: 640px) {
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-text h2 {
        width: 100%;
        max-width: 100%;
        font-size: clamp(2.05rem, 9vw, 2.35rem);
        overflow-wrap: anywhere;
        hyphens: auto;
    }

    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-text p,
    body.page:not(.home):not(.woocommerce-page) .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__media-text li {
        width: 100%;
        max-width: 100%;
        overflow-wrap: anywhere;
    }
}

@media (max-width: 767px) {
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .bd-shop-hero {
        height: auto !important;
        margin-bottom: .85rem !important;
    }

    body.post-type-archive-product .bd-shop-category-nav--primary .bd-shop-category-grid,
    .bd-product-grid--recommendations {
        grid-template-columns: 1fr !important;
    }

    .bd-latest-posts__header,
    .bd-calendar-teaser__top {
        align-items: flex-start !important;
        flex-direction: column;
    }

    .bd-latest-posts__header .btn,
    .bd-calendar-teaser__link {
        width: fit-content;
        margin-top: 0;
    }

    body.home .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--hero-home {
        background:
            linear-gradient(180deg,
                color-mix(in srgb, var(--color-bg-light) 98%, transparent) 0%,
                color-mix(in srgb, var(--color-bg-light) 90%, transparent) 58%,
                color-mix(in srgb, var(--color-bg-light) 60%, transparent) 100%),
            url("/wp-content/uploads/2026/05/home-online-shop-weine.jpg") center bottom / cover no-repeat !important;
    }

    .bd-floating-ctas {
        right: .75rem;
        bottom: .75rem;
        left: .75rem;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        width: auto;
        gap: .35rem;
    }

    .bd-floating-ctas__link {
        min-height: 2.95rem;
        justify-content: center;
        gap: .34rem;
        padding: .52rem .38rem;
        border-radius: 8px;
        font-size: .74rem;
    }

    .bd-floating-ctas__link i {
        width: 1.45rem;
        height: 1.45rem;
        font-size: .82rem;
    }
}

/* Jana Shop-Feedback: ruhige Produktkarten mit klarer, eigener Entdecken-Aktion. */
.bd-product-card__discover {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 2.75rem;
    margin-top: .75rem;
    padding: .7rem 1.2rem;
    border: 1px solid var(--color-primary);
    border-radius: 8px;
    background: var(--color-primary);
    color: var(--color-white) !important;
    font-size: .86rem;
    font-weight: var(--weight-semibold);
    line-height: 1;
    text-decoration: none;
}

.bd-product-card__discover:hover,
.bd-product-card__discover:focus-visible {
    border-color: color-mix(in srgb, var(--color-primary) 82%, var(--color-heading));
    background: color-mix(in srgb, var(--color-primary) 82%, var(--color-heading));
    color: var(--color-white) !important;
}

body.woocommerce .bd-price__suffix a,
body.woocommerce .bd-product-card__unit-price a {
    color: inherit !important;
    text-decoration: none !important;
}

/* Checkout: bei der optionalen Lieferadresse keinen dekorativen roten Strich. */
.woocommerce-checkout #ship-to-different-address::after {
    display: none !important;
    content: none !important;
}

/* Suchergebnisse kompakt und ohne die sonst uebliche Zitat-Trennlinie. */
body.search .header-search input[type="search"],
body.search .header-search__input {
    font-size: .875rem !important;
}

body.search .site-content article h2 {
    margin: 1rem 0 .35rem;
    font-size: clamp(1.2rem, 2.1vw, 1.65rem);
    line-height: 1.2;
}

body.search .site-content article h2::after {
    display: none !important;
    content: none !important;
}

body.search .site-content article p {
    margin: 0 0 1rem;
}

/* Termin-Detailseiten: Bild und Farben bleiben wie im bestehenden Layout. */
.bd-event-single__hero .bd_hero-content__image-wrap {
    width: 100%;
    max-height: 34rem;
    aspect-ratio: 16 / 6.5;
}

.bd-event-single__hero .bd-event-single__hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bd-event-single .wp-block-button__link,
.bd-event-single .bd-calendar-event__status {
    border-color: var(--color-primary) !important;
    background: var(--color-primary) !important;
    color: var(--color-white) !important;
}

.bd-event-single .bd-calendar-event__terms span {
    background: color-mix(in srgb, var(--color-primary) 10%, var(--color-white));
    color: var(--color-primary);
}

/* Nur der Termindetails-Kasten: klare Breiten, ruhige Konturen und saubere Abstaende. */
.bd-event-single__aside {
    gap: 1.25rem;
    padding: clamp(1.25rem, 2vw, 1.75rem);
    border-color: color-mix(in srgb, var(--color-heading) 12%, var(--color-border));
    background: color-mix(in srgb, var(--color-bg-light) 92%, var(--color-white));
    box-shadow: 0 .8rem 2rem color-mix(in srgb, var(--color-heading) 5%, transparent);
}

.bd-event-single__aside .bd-calendar-event__actions {
    display: grid;
    align-items: stretch;
    width: 100%;
    gap: .7rem;
}

.bd-event-single__aside .bd-calendar-event__exports {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: .55rem;
}

.bd-event-single__aside .bd-calendar-event__export.btn {
    justify-content: center;
    width: 100%;
    min-height: 3rem;
    padding: .72rem 1rem;
    border-width: 1px;
    border-radius: .55rem;
    font-size: .88rem;
    line-height: 1.2;
}

.bd-event-single__aside .bd-calendar-event__export--ics {
    border-color: var(--color-primary) !important;
    background: var(--color-primary) !important;
    color: var(--color-white) !important;
}

.bd-event-single__aside .bd-calendar-event__export--google {
    border-color: color-mix(in srgb, var(--color-heading) 16%, var(--color-border)) !important;
    background: var(--color-white) !important;
    color: var(--color-heading) !important;
}

.bd-event-single__aside .bd-calendar-event__export--google:hover,
.bd-event-single__aside .bd-calendar-event__export--google:focus-visible {
    border-color: var(--color-accent) !important;
    background: color-mix(in srgb, var(--color-accent) 5%, var(--color-white)) !important;
}

.bd-event-single__aside .bd-event-single__all-events {
    min-height: 2.8rem;
    padding-block: .8rem;
    border-block: 1px solid var(--color-border);
    font-size: .95rem;
}

.bd-event-single__aside .bd-event-single__all-events i {
    transition: transform var(--transition-fast);
}

.bd-event-single__aside .bd-event-single__all-events:hover i,
.bd-event-single__aside .bd-event-single__all-events:focus-visible i {
    transform: translateX(.2rem);
}

.bd-event-single__aside .bd-calendar-event__meta {
    gap: 0;
}

.bd-event-single__aside .bd-calendar-event__meta > div {
    gap: .35rem;
    padding-block: .9rem;
    border-bottom: 1px solid color-mix(in srgb, var(--color-border) 82%, transparent);
}

.bd-event-single__aside .bd-calendar-event__meta > div:first-child {
    padding-top: 0;
}

.bd-event-single__aside .bd-calendar-event__meta > div:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.bd-event-single__aside .bd-calendar-event__meta dt {
    font-size: .72rem;
    letter-spacing: .06em;
}

.bd-event-single__aside .bd-calendar-event__meta dd {
    font-size: .98rem;
    line-height: 1.45;
}

.bd-event-single__aside .bd-calendar-event__meta a {
    overflow-wrap: anywhere;
    text-underline-offset: .16em;
}

@media (max-width: 640px) {
    .bd-event-single__hero .bd_hero-content__image-wrap {
        max-height: 22rem;
        aspect-ratio: 4 / 3;
    }

    .bd-event-single__aside {
        padding: 1.25rem;
    }
}

/* Kompaktes Wein-Events-Dropdown in Janas vorgegebener Reihenfolge. */
.bd-nav__dropdown--simple {
    width: min(26rem, calc(100vw - 2rem));
}

.bd-nav__dropdown--simple .bd-nav__dropdown-link {
    min-height: 3.6rem;
    padding: .72rem 1rem;
}

.bd-nav__dropdown--simple .bd-nav__dropdown-title {
    font-size: .96rem;
}

.bd-nav__dropdown--simple .bd-nav__dropdown-desc {
    font-size: .76rem;
}

/* Variable Weinpakete: Auswahl zuerst, danach Menge und Warenkorb sauber nebeneinander. */
body.single-product form.variations_form.cart {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: .85rem;
    width: 100%;
}

body.single-product form.variations_form table.variations,
body.single-product form.variations_form .single_variation_wrap {
    display: block;
    width: 100% !important;
}

body.single-product form.variations_form table.variations tbody,
body.single-product form.variations_form table.variations tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: .4rem;
    width: 100%;
}

body.single-product form.variations_form table.variations th.label,
body.single-product form.variations_form table.variations td.value {
    display: block;
    width: 100%;
    padding: 0;
    text-align: left;
}

body.single-product form.variations_form table.variations th.label label {
    color: var(--color-heading);
    font-weight: var(--weight-semibold);
}

body.single-product form.variations_form table.variations select {
    width: 100%;
    min-height: 3rem;
    padding: .65rem 2.6rem .65rem .85rem;
    border: 1px solid var(--color-border);
    border-radius: 6px;
    background: var(--color-white);
    color: var(--color-heading);
}

body.single-product form.variations_form .reset_variations {
    display: inline-block;
    margin-top: .4rem;
    color: var(--color-muted);
}

body.single-product form.variations_form .woocommerce-variation-add-to-cart {
    display: grid !important;
    grid-template-columns: 8.5rem minmax(0, 1fr);
    gap: .5rem;
    width: 100%;
}

@media (max-width: 640px) {
    .bd-event-single__hero .bd_hero-content__image-wrap {
        max-height: 22rem;
        aspect-ratio: 4 / 3;
    }

    body.single-product form.variations_form .woocommerce-variation-add-to-cart {
        grid-template-columns: 7.25rem minmax(0, 1fr);
    }
}

/* Das Produktbild bleibt wechselbar und oeffnet die fokussierte Lightbox. */
body.single-product .bd-gallery__image-frame {
    display: block;
    width: 100%;
    height: 100%;
}

/* Vier Charaktere: Flasche zuruecknehmen, Beschreibung und CTA staerken. */
.bd-wine-personality {
    grid-template-columns: minmax(7.5rem, .62fr) minmax(0, 1.38fr);
}

.bd-wine-personality__image {
    width: 76%;
    height: 12rem;
}

.bd-wine-personality__copy strong {
    font-size: clamp(1.6rem, 2.8vw, 2.35rem);
}

.bd-wine-personality__description {
    color: var(--color-text);
    font-size: clamp(1rem, 1.2vw, 1.1rem);
    line-height: 1.48;
}

.bd-wine-personality__action {
    min-height: 2.75rem;
    padding: .72rem 1rem;
    border-radius: 8px;
    background: var(--color-primary);
    color: var(--color-white) !important;
    line-height: 1.25;
}

@media (max-width: 440px) {
    .bd-wine-personality {
        grid-template-columns: minmax(6.2rem, .54fr) minmax(0, 1.46fr);
    }

    .bd-wine-personality__image {
        width: 82%;
        height: 10rem;
    }
}

html body.single-product.woocommerce .bd-single--wine-concept .bd-product-summary .bd-product-summary__cart form.cart button.single_add_to_cart_button.button.alt {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

/* Jana, 18.07.2026: vier gezielte Korrekturen auf der Startseite. */

/* Der Startseiten-Hero nutzt die komplette Breite seines Bereichs. */
body.home .bd_bgt-rows__event-hero {
    width: 100%;
    max-width: none;
    margin-top: 0;
}

/* Suche als geschlossenes Element: Eingabe und Icon sitzen ohne Zwischenraum. */
.site-header--shop-focused .header-search .dgwt-wcas-search-form,
.site-header--shop-focused .header-search .header-search__fallback {
    gap: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    border-radius: var(--radius-pill) !important;
}

.site-header--shop-focused .header-search input[type="search"].dgwt-wcas-search-input,
.site-header--shop-focused .header-search__input {
    height: 48px !important;
    border: 0 !important;
    border-radius: var(--radius-pill) 0 0 var(--radius-pill) !important;
}

.site-header--shop-focused .header-search .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit,
.site-header--shop-focused .header-search__submit {
    position: static !important;
    align-self: stretch;
    display: grid !important;
    place-items: center;
    flex: 0 0 52px !important;
    width: 52px !important;
    min-width: 52px !important;
    height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 var(--radius-pill) var(--radius-pill) 0 !important;
}

.site-header--shop-focused .header-search .dgwt-wcas-ico-magnifier {
    position: static !important;
    inset: auto !important;
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
}

/* Die Startseiten-Aussage bleibt praegnant, ohne den Bildschirm zu dominieren. */
body.home .bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero {
    padding-top: clamp(3.75rem, 6vw, 5rem);
    padding-bottom: clamp(3.25rem, 5vw, 4.5rem);
}

body.home .bd_bgt-rows.bd-module--bgt-rows.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero h1.bd_bgt-rows__statement-title,
body.home .bd_bgt-rows.bd-module--bgt-rows.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero h2.bd_bgt-rows__statement-title {
    width: min(100%, 56rem);
    max-width: 56rem;
}

body.home .bd_bgt-rows.bd-module--bgt-rows.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero h1.bd_bgt-rows__statement-title .xxl,
body.home .bd_bgt-rows.bd-module--bgt-rows.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero h2.bd_bgt-rows__statement-title .xxl {
    width: min(100%, 18ch);
    max-width: 18ch;
    margin-right: auto;
    margin-bottom: 1.25rem;
    margin-left: auto;
    font-size: clamp(2.9rem, 5vw, 4.75rem);
    line-height: 1.04;
}

body.home .bd_bgt-rows.bd-module--bgt-rows.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero h1.bd_bgt-rows__statement-title .xxl::after,
body.home .bd_bgt-rows.bd-module--bgt-rows.bd_bgt-rows--has-hero-image .bd_bgt-rows__statement--hero h2.bd_bgt-rows__statement-title .xxl::after {
    width: 5rem;
    margin-top: 1.15rem;
}

/* Contact Form 7 erzeugt ein sichtbares verstecktes Feldset: wirklich ausblenden. */
.footer__newsletter-form fieldset.hidden-fields-container {
    display: none !important;
}

.footer__newsletter-form .wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
}

.footer__newsletter-form .wpcf7-acceptance label {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    margin: 0;
}

.footer__newsletter-form .wpcf7-acceptance input[type="checkbox"] {
    flex: 0 0 1rem;
    width: 1rem;
    height: 1rem;
    margin: .18rem 0 0;
}

.footer__newsletter-form .wpcf7-list-item-label {
    min-width: 0;
}

/* Jana, 18.07.2026: Germanized-Widerrufsformular in die Seitengestaltung einpassen. */
body.page-id-114 .entry-content.container {
    width: min(calc(100% - 2rem), 54rem);
    margin-inline: auto;
    padding-top: clamp(2.5rem, 5vw, 4.5rem);
    padding-bottom: clamp(3.5rem, 6vw, 5.5rem);
}

body.page-id-114 .entry-content.container > h1 {
    max-width: 14ch;
    margin: 0 0 clamp(1.75rem, 3vw, 2.5rem);
    color: var(--color-heading);
    font-size: clamp(2.35rem, 5vw, 3.5rem);
    line-height: 1.02;
    letter-spacing: 0;
}

body.page-id-114 .entry-content.container > h1::after {
    display: block;
    width: 4.35rem;
    height: 2px;
    margin-top: .75rem;
    background: var(--color-red-500);
    content: "";
}

body.page-id-114 form.order-withdrawal-request {
    padding: clamp(1.25rem, 3vw, 2rem);
    border: 1px solid color-mix(in srgb, var(--color-border) 84%, transparent);
    border-radius: 8px;
    background: var(--color-white);
    box-shadow: 0 14px 36px rgba(43, 45, 66, .08);
}

body.page-id-114 form.order-withdrawal-request .eu-owb-form-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

body.page-id-114 form.order-withdrawal-request .form-row {
    float: none;
    width: auto;
    margin: 0;
}

body.page-id-114 form.order-withdrawal-request .form-row-full,
body.page-id-114 form.order-withdrawal-request .eu-owb-order-item-select-wrapper,
body.page-id-114 form.order-withdrawal-request .order-supports-partial-withdrawal,
body.page-id-114 form.order-withdrawal-request .order-withdrawal-request-items-table,
body.page-id-114 form.order-withdrawal-request .woocommerce-info {
    grid-column: 1 / -1;
}

body.page-id-114 form.order-withdrawal-request .eu-owb-form-fields > .clear {
    display: none;
}

body.page-id-114 form.order-withdrawal-request label {
    display: block;
    margin: 0 0 .42rem;
    color: var(--color-heading);
    font-size: .88rem;
    font-weight: 600 !important;
    line-height: 1.35;
}

body.page-id-114 form.order-withdrawal-request label .required {
    color: var(--color-red-500);
}

body.page-id-114 form.order-withdrawal-request input.input-text,
body.page-id-114 form.order-withdrawal-request input[type="text"],
body.page-id-114 form.order-withdrawal-request input[type="email"],
body.page-id-114 form.order-withdrawal-request select,
body.page-id-114 form.order-withdrawal-request textarea {
    width: 100%;
    min-height: 3rem;
    padding: .7rem .85rem;
    border: 1px solid color-mix(in srgb, var(--color-border) 90%, transparent);
    border-radius: 6px;
    background: color-mix(in srgb, var(--color-bg-light) 42%, #ffffff);
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: 1rem;
    line-height: 1.4;
    box-shadow: none;
}

body.page-id-114 form.order-withdrawal-request input:focus-visible,
body.page-id-114 form.order-withdrawal-request select:focus-visible,
body.page-id-114 form.order-withdrawal-request textarea:focus-visible {
    border-color: var(--color-red-500);
    outline: 3px solid color-mix(in srgb, var(--color-red-500) 20%, transparent);
    outline-offset: 1px;
}

body.page-id-114 form.order-withdrawal-request .woocommerce-invalid input,
body.page-id-114 form.order-withdrawal-request .woocommerce-invalid select,
body.page-id-114 form.order-withdrawal-request .woocommerce-invalid textarea {
    border-color: var(--color-red-500);
}

body.page-id-114 form.order-withdrawal-request .form-row-submit {
    margin-top: 1.35rem;
}

body.page-id-114 form.order-withdrawal-request button.woocommerce-form-return_request__submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 3rem;
    padding: .75rem 1.4rem;
    border: 1px solid var(--color-red-500) !important;
    border-radius: 6px !important;
    background: var(--color-red-500) !important;
    color: #ffffff !important;
    font-size: .95rem;
    font-weight: 600 !important;
    line-height: 1.2;
    box-shadow: none !important;
}

body.page-id-114 form.order-withdrawal-request button.woocommerce-form-return_request__submit:hover,
body.page-id-114 form.order-withdrawal-request button.woocommerce-form-return_request__submit:focus-visible {
    border-color: var(--color-red-600) !important;
    background: var(--color-red-600) !important;
    color: #ffffff !important;
}

@media (max-width: 640px) {
    body.page-id-114 .entry-content.container {
        width: 100%;
        padding-top: 2rem;
    }

    body.page-id-114 form.order-withdrawal-request {
        padding: 1.1rem;
    }

    body.page-id-114 form.order-withdrawal-request .eu-owb-form-fields {
        grid-template-columns: 1fr;
    }

    body.page-id-114 form.order-withdrawal-request .form-row-first,
    body.page-id-114 form.order-withdrawal-request .form-row-last {
        grid-column: 1 / -1;
    }

    body.page-id-114 form.order-withdrawal-request button.woocommerce-form-return_request__submit {
        width: 100%;
    }
}

/* Jana, 10.08.2026: Rechts-/Transparenzseiten als ruhige Leseseiten. */
.entry-content > .bd-legal-page {
    width: min(calc(100% - 2rem), 72rem);
    margin-inline: auto;
    padding-block: clamp(3rem, 7vw, 5.5rem);
    overflow-wrap: anywhere;
}

.entry-content.container > .bd-legal-page {
    width: 100%;
    margin-inline: 0;
    padding-block: 0;
}

.bd-legal-page > *:not(.bd-legal-logo-grid) {
    max-width: 75ch;
}

.bd-legal-page h1 {
    margin: 0 0 clamp(1.5rem, 3vw, 2.15rem);
    color: var(--color-heading);
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
    line-height: var(--leading-tight);
    letter-spacing: 0;
    overflow-wrap: anywhere;
}

.bd-legal-page h1::after {
    display: block;
    width: 4.75rem;
    height: 2px;
    margin-top: 1rem;
    background: var(--color-red-500);
    content: "";
}

.bd-legal-page h2 {
    margin: clamp(2rem, 4vw, 3rem) 0 .7rem;
    color: var(--color-heading);
    font-size: clamp(1.35rem, 2.4vw, 2rem);
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: 0;
}

.bd-legal-page h3 {
    margin: clamp(1.35rem, 2.5vw, 2rem) 0 .5rem;
    color: var(--color-heading);
    font-size: clamp(1.05rem, 1.6vw, 1.32rem);
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0;
}

.bd-legal-page p,
.bd-legal-page li,
.bd-legal-page address {
    color: color-mix(in srgb, var(--color-text) 92%, var(--color-heading));
    font-size: clamp(1rem, 1.18vw, 1.09rem);
    line-height: 1.72;
}

.bd-legal-page p {
    margin: 0 0 1rem;
}

.bd-legal-page ul,
.bd-legal-page ol {
    margin: 0 0 1.2rem 1.25rem;
    padding: 0;
}

.bd-legal-page li + li {
    margin-top: .45rem;
}

.bd-legal-page a {
    color: var(--color-red-500);
    font-weight: 500;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: .18em;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.bd-legal-page a:hover,
.bd-legal-page a:focus-visible {
    color: var(--color-red-600);
}

.bd-legal-page strong {
    color: var(--color-heading);
    font-weight: 700;
}

.bd-legal-logo-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(1rem, 2.5vw, 1.5rem);
    max-width: 58rem;
    margin-top: clamp(2rem, 4vw, 3rem);
}

.bd-legal-logo-grid figure {
    display: grid;
    min-height: 10rem;
    margin: 0;
    place-items: center;
    padding: clamp(1rem, 2vw, 1.45rem);
    border: 1px solid color-mix(in srgb, var(--color-border) 84%, transparent);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 14px 34px rgba(43, 45, 66, .06);
}

.bd-legal-logo-grid img {
    max-width: 100%;
    max-height: 8.5rem;
    object-fit: contain;
}

.bd-ai-transparency-list {
    display: grid;
    gap: .75rem;
    margin-top: 1.35rem;
}

.bd-ai-transparency-list p {
    margin: 0;
    padding: 1rem 1.1rem;
    border-left: 3px solid var(--color-red-500);
    background: color-mix(in srgb, var(--color-bg-light) 62%, #ffffff);
}

@media (max-width: 760px) {
    .entry-content > .bd-legal-page {
        width: 100%;
        padding-inline: var(--container-padding-mobile);
        padding-block: 2.5rem 3.75rem;
    }

    .entry-content.container > .bd-legal-page {
        padding-inline: 0;
        padding-block: 0;
    }

    .bd-legal-logo-grid {
        grid-template-columns: 1fr;
    }

    .bd-legal-logo-grid figure {
        min-height: 8rem;
    }
}

/* Jana, 18.07.2026: Full-HD-Heros und begrenzte 4K-Seitenhülle. */
:root {
    --bd-site-frame-max: 1920px;
}

html {
    background: var(--color-beige-100);
}

body {
    width: 100%;
    max-width: var(--bd-site-frame-max);
    margin-inline: auto;
    background: var(--color-bg);
}

/* Der Hero füllt immer die gesamte verfügbare Seitenhülle – nicht den Inhaltscontainer. */
body .bd_bgt-rows__event-hero {
    width: 100% !important;
    max-width: none !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body .bd_bgt-rows__event-hero-image {
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    object-fit: cover;
}

@media (min-width: 1921px) {
    body {
        box-shadow: 0 0 54px rgba(43, 45, 66, .16);
    }

    .bd-floating-ctas {
        right: calc((100vw - var(--bd-site-frame-max)) / 2 + clamp(.85rem, 1.8vw, 1.4rem));
    }

    .bd-skip-link {
        left: calc((100vw - var(--bd-site-frame-max)) / 2 + 1rem);
    }
}

@media (max-width: 1920px) {
    html {
        background: var(--color-bg);
    }

    body {
        max-width: none;
        box-shadow: none;
    }
}

/* Jana, 18.08.2026: Statement-Familie der Startseite vereinheitlichen. */
body.home .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--home-sequence {
    display: flex;
    min-height: clamp(27rem, 42svh, 34rem) !important;
    align-items: center;
    padding-block: clamp(5rem, 8vw, 8rem) !important;
    border-block: 1px solid color-mix(in srgb, var(--color-border) 58%, transparent);
    background: var(--color-bg) !important;
    overflow: clip;
}

body.home .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--home-sequence + .bd_bgt-rows__statement--home-sequence {
    border-top: 0;
}

body.home .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--home-sequence .container {
    width: min(100% - (var(--container-padding-mobile) * 2), 1200px);
}

body.home .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--home-sequence .bd_bgt-rows__statement-inner {
    display: block;
    width: 100%;
    max-width: none;
    margin-inline: auto;
}

body.home .bd_bgt-rows__statement-message {
    display: grid;
    justify-items: center;
    gap: 0;
    width: 100%;
    text-align: center;
}

body.home .bd_bgt-rows__statement-lead {
    max-width: 18ch;
    margin: 0;
    color: var(--color-heading);
    font-family: var(--font-heading);
    font-size: clamp(3.15rem, 5.15vw, 5.2rem);
    font-weight: var(--weight-bold);
    letter-spacing: -.035em;
    line-height: 1.02;
    text-wrap: balance;
}

body.home .bd_bgt-rows__statement-lead::after {
    display: block;
    width: 5.25rem;
    height: 3px;
    margin: clamp(1.35rem, 2.4vw, 2rem) auto 0;
    background: var(--color-red-500);
    content: "";
}

body.home .bd_bgt-rows__statement-copy {
    max-width: 58ch;
    margin: clamp(1.7rem, 3vw, 2.35rem) 0 0;
    color: var(--color-muted);
    font-family: var(--font-body);
    font-size: clamp(1.15rem, 1.55vw, 1.45rem);
    font-weight: var(--weight-regular);
    letter-spacing: -.01em;
    line-height: 1.48;
    text-wrap: balance;
}

@media (max-width: 700px) {
    body.home .bd_bgt-rows.bd-module--bgt-rows .bd_bgt-rows__statement--home-sequence {
        min-height: 0 !important;
        padding-block: clamp(4rem, 16vw, 5.5rem) !important;
    }

    body.home .bd_bgt-rows__statement-lead {
        max-width: 15ch;
        font-size: clamp(2.35rem, 10.5vw, 3.35rem);
        line-height: 1.04;
    }

    body.home .bd_bgt-rows__statement-copy {
        max-width: 31ch;
        font-size: clamp(1.05rem, 4.7vw, 1.2rem);
        line-height: 1.5;
    }
}
