.elementor-8609 .elementor-element.elementor-element-f4f52d8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-8609 .elementor-element.elementor-element-651b0ed8{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:10%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:8%;--padding-right:8%;}.elementor-8609 .elementor-element.elementor-element-502e5987 .shop_table .button:hover, .elementor-8609 .elementor-element.elementor-element-502e5987 .shop_table .button:disabled[disabled]:hover{background-color:var( --e-global-color-accent );}.elementor-8609 .elementor-element.elementor-element-502e5987 .woocommerce .wc-proceed-to-checkout .checkout-button{background-color:var( --e-global-color-accent );}.elementor-8609 .elementor-element.elementor-element-502e5987{--sections-border-type:none;--sections-padding:0px 0px 0px 0px;--sections-title-color:var( --e-global-color-text );--links-normal-color:var( --e-global-color-accent );--links-hover-color:var( --e-global-color-primary );--forms-fields-normal-color:var( --e-global-color-text );--forms-fields-border-radius:0px 0px 0px 0px;--forms-buttons-normal-text-color:var( --e-global-color-accent );--forms-buttons-hover-border-color:var( --e-global-color-accent );--forms-buttons-border-type:solid;--forms-buttons-border-color:var( --e-global-color-accent );--forms-buttons-border-radius:300px 300px 300px 300px;--order-summary-rows-gap-top:calc( 46px/2 );--order-summary-rows-gap-bottom:calc( 46px/2 );--order-summary-title-spacing:36px;--order-summary-color:var( --e-global-color-text );--order-summary-variations-color:var( --e-global-color-text );--product-link-normal-color:var( --e-global-color-accent );--product-link-hover-color:var( --e-global-color-primary );--order-summary-items-divider-color:var( --e-global-color-text );--order-summary-quantity-border-color:var( --e-global-color-text );--order-summary-remove-icon-normal-color:var( --e-global-color-primary );--order-summary-remove-icon-hover-color:var( --e-global-color-accent );--totals-rows-gap-top:calc( 49px/2 );--totals-rows-gap-bottom:calc( 49px/2 );--totals-color:var( --e-global-color-primary );--totals-divider-color:var( --e-global-color-primary );--totals-divider-weight:1px;--checkout-button-hover-text-color:var( --e-global-color-accent );--checkout-button-hover-border-color:var( --e-global-color-accent );--checkout-button-border-radius:50px 50px 50px 50px;}.elementor-8609 .elementor-element.elementor-element-502e5987 .cart_totals h2{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-8609 .elementor-element.elementor-element-502e5987 {--sections-descriptions-color:var( --e-global-color-text );--forms-fields-padding:10px 0px 10px 0px;}.elementor-8609 .elementor-element.elementor-element-502e5987 .e-cart-content, .elementor-8609 .elementor-element.elementor-element-502e5987 .woocommerce-shipping-destination, .elementor-8609 .elementor-element.elementor-element-502e5987 .shipping-calculator-button{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-8609 .elementor-element.elementor-element-502e5987 .coupon .input-text, .elementor-8609 .elementor-element.elementor-element-502e5987 .cart-collaterals .input-text, .elementor-8609 .elementor-element.elementor-element-502e5987 select, .elementor-8609 .elementor-element.elementor-element-502e5987 .select2-selection--single{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );border-style:solid;border-width:0px 0px 1px 0px;border-color:var( --e-global-color-text );}.e-woo-select2-wrapper .select2-results__option{color:var( --e-global-color-text );}.elementor-8609 .elementor-element.elementor-element-502e5987 .select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:var( --e-global-color-text );}.elementor-8609 .elementor-element.elementor-element-502e5987 .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:calc( (10px*2) + 16px );padding-left:0px;padding-right:0px;}.elementor-8609 .elementor-element.elementor-element-502e5987 .select2-container--default .select2-selection--single .select2-selection__arrow{height:calc( (10px*2) + 16px );right:0px;}.elementor-8609 .elementor-element.elementor-element-502e5987 .select2-container--default .select2-selection--single{height:auto;}.elementor-8609 .elementor-element.elementor-element-502e5987 .shop_table .button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );border-width:1px 1px 1px 1px;}.elementor-8609 .elementor-element.elementor-element-502e5987 .woocommerce-cart-form{--order-summary-title-color:var( --e-global-color-text );}.elementor-8609 .elementor-element.elementor-element-502e5987 .e-shop-table .cart th, .elementor-8609 .elementor-element.elementor-element-502e5987 .e-shop-table .cart td:before{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-8609 .elementor-element.elementor-element-502e5987 .cart td span, .elementor-8609 .elementor-element.elementor-element-502e5987 .cart td, .elementor-8609 .elementor-element.elementor-element-502e5987 .input-text.qty{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-8609 .elementor-element.elementor-element-502e5987 .product-name .variation{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-8609 .elementor-element.elementor-element-502e5987 .checkout-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );}.elementor-8609 .elementor-element.elementor-element-502e5987 .e-shop-table{--sections-margin:0% 15% 0% 0%;}.elementor-8609 .elementor-element.elementor-element-502e5987 .coupon{--sections-margin:3% 15% 0% 0%;}.elementor-8609 .elementor-element.elementor-element-502e5987 .e-cart__container{grid-row-gap:0%;}.elementor-8609 .elementor-element.elementor-element-2fb0a39{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-8609 .elementor-element.elementor-element-a27bd70{text-align:center;}.elementor-8609 .elementor-element.elementor-element-a27bd70 .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-8609 .elementor-element.elementor-element-9351f33{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:1px;}.elementor-8609 .elementor-element.elementor-element-9351f33 .elementor-divider-separator{width:10%;margin:0 auto;margin-center:0;}.elementor-8609 .elementor-element.elementor-element-9351f33 .elementor-divider{text-align:center;padding-block-start:15px;padding-block-end:15px;}.elementor-8609 .elementor-element.elementor-element-c904918{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-8609 .elementor-element.elementor-element-fa6f0ef{--swiper-slides-to-display:4;--swiper-slides-gap:10px;--arrow-prev-left-align:0%;--arrow-prev-translate-x:0px;--arrow-prev-left-position:0px;--arrow-prev-top-align:50%;--arrow-prev-translate-y:-50%;--arrow-prev-top-position:0px;--arrow-next-right-align:0%;--arrow-next-translate-x:0%;--arrow-next-right-position:0px;--arrow-next-top-align:50%;--arrow-next-translate-y:-50%;--arrow-next-top-position:0px;}.elementor-8609 .elementor-element.elementor-element-fa6f0ef .swiper-slide > .elementor-element{height:100%;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-8609 .elementor-element.elementor-element-502e5987{--sections-title-spacing:0px;--order-summary-rows-gap-top:calc( 15px/2 );--order-summary-rows-gap-bottom:calc( 15px/2 );}.elementor-8609 .elementor-element.elementor-element-502e5987 .e-shop-table{--sections-margin:0% 0% 0% 0%;}.elementor-8609 .elementor-element.elementor-element-502e5987 .e-cart-totals{--sections-margin:10% 0% 0% 0%;}.elementor-8609 .elementor-element.elementor-element-502e5987 .coupon{--sections-margin:10% 0% 0% 0%;}.elementor-8609 .elementor-element.elementor-element-502e5987 .e-cart__container{grid-row-gap:0%;}.elementor-8609 .elementor-element.elementor-element-fa6f0ef{--swiper-slides-to-display:2;}}@media(max-width:767px){.elementor-8609 .elementor-element.elementor-element-651b0ed8{--padding-top:0%;--padding-bottom:0%;--padding-left:5%;--padding-right:5%;}.elementor-8609 .elementor-element.elementor-element-502e5987{width:100%;max-width:100%;}.elementor-8609 .elementor-element.elementor-element-502e5987 .e-cart-totals{--sections-margin:20% 0% 0% 0%;}.elementor-8609 .elementor-element.elementor-element-502e5987 .coupon{--sections-margin:20% 0% 0% 0%;}.elementor-8609 .elementor-element.elementor-element-502e5987 .e-cart__container{grid-row-gap:0%;}.elementor-8609 .elementor-element.elementor-element-fa6f0ef{--swiper-slides-to-display:1;}}/* Start custom CSS for loop-carousel, class: .elementor-element-fa6f0ef *//* ==========================================================================
   Drachenheld – Warenkorb Custom CSS
   Widget:  Elementor Pro "Warenkorb" (WooCommerce Cart)
   Scope:   body.woocommerce-cart → GLOBAL einfügbar:
            Elementor → Website-Einstellungen → Benutzerdefiniertes CSS
            ODER Design → Customizer → Zusätzliches CSS
            Funktioniert unabhängig davon, wie die Warenkorb-Seite gebaut ist
            (Elementor-Widget, Shortcode oder Gutenberg-Block).
   Version: 1.3.0  (Finale Härtung: text-fill-color + ID-Spezifität via :is())
   Farben:  Weinrot #6a1417 · Gold #c9a35c · Cinzel / Source Sans 3
   Prinzip: identisch zum Checkout (dh-checkout-widget.css v1.4.0) –
            links helle Karten, rechts dunkle Weinrot-Karte
   ========================================================================== */

body.woocommerce-cart {
    --dh-weinrot: #6a1417;
    --dh-weinrot-dunkel: #4e0e11;
    --dh-gold: #c9a35c;
    --dh-gold-hell: #e2c890;
    --dh-creme: #f6efe4;
    --dh-ink: #2b2320;
    --dh-grau: #6f6560;
    --dh-linie: #e5ddd3;
    --dh-feld-bg: #fdfcfa;
    --dh-karte-bg: #ffffff;
    --dh-radius: 12px;
    --dh-radius-klein: 8px;
    --dh-schatten: 0 4px 18px rgba(43, 35, 32, 0.07);
    font-family: 'Source Sans 3', 'Source Sans Pro', sans-serif;
    color: var(--dh-ink);
}

/* --------------------------------------------------------------------------
   1. Überschriften
   -------------------------------------------------------------------------- */

body.woocommerce-cart h1,
body.woocommerce-cart h2,
body.woocommerce-cart h3 {
    font-family: 'Cinzel', serif;
    color: var(--dh-weinrot);
    letter-spacing: 0.02em;
}

/* --------------------------------------------------------------------------
   2. Linke Spalte: Warenkorb-Tabelle als helle Karte
   -------------------------------------------------------------------------- */

body.woocommerce-cart .e-cart__container {
    gap: 32px;
}

body.woocommerce-cart .woocommerce-cart-form {
    background: var(--dh-karte-bg);
    border: 1px solid var(--dh-linie);
    border-radius: var(--dh-radius);
    box-shadow: var(--dh-schatten);
    padding: 24px;
}

body.woocommerce-cart table.shop_table.cart {
    width: 100%;
    border: none !important;
    border-collapse: collapse;
    margin: 0;
}

body.woocommerce-cart table.shop_table.cart th,
body.woocommerce-cart table.shop_table.cart td {
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid var(--dh-linie) !important;
    padding: 16px 10px;
    vertical-align: middle;
}

/* Tabellenkopf im Cinzel-Kapitälchen-Stil wie im Checkout */
body.woocommerce-cart table.shop_table.cart thead th {
    font-family: 'Cinzel', serif;
    font-size: 0.82rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--dh-weinrot);
    border-bottom: 2px solid var(--dh-gold) !important;
}

/* Produktbild: abgerundet mit Goldrand */
body.woocommerce-cart .product-thumbnail img {
    width: 72px;
    height: auto;
    border: 1px solid var(--dh-gold);
    border-radius: var(--dh-radius-klein);
    box-shadow: 0 2px 8px rgba(43, 35, 32, 0.12);
}

/* Produktname */
body.woocommerce-cart td.product-name a {
    color: var(--dh-weinrot);
    font-weight: 600;
    text-decoration: none;
    line-height: 1.4;
}

body.woocommerce-cart td.product-name a:hover {
    color: var(--dh-weinrot-dunkel);
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Preise */
body.woocommerce-cart td.product-price .amount,
body.woocommerce-cart td.product-subtotal .amount {
    color: var(--dh-ink);
    font-weight: 600;
    white-space: nowrap;
}

body.woocommerce-cart td.product-subtotal .amount {
    color: var(--dh-weinrot);
}

/* Entfernen-Button (×) als goldener Kreis, Weinrot beim Hover */
body.woocommerce-cart td.product-remove .remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid var(--dh-gold);
    background: var(--dh-karte-bg);
    color: var(--dh-weinrot) !important;
    font-size: 1.1rem;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

body.woocommerce-cart td.product-remove .remove:hover {
    background: var(--dh-weinrot);
    border-color: var(--dh-weinrot);
    color: #ffffff !important;
}

/* Mengen-Eingabe */
body.woocommerce-cart .quantity .qty {
    background: var(--dh-feld-bg) !important;
    border: 1px solid var(--dh-linie) !important;
    border-radius: var(--dh-radius-klein) !important;
    min-height: 44px;
    width: 74px;
    padding: 8px 6px 8px 12px !important;
    font-size: 1rem;
    font-family: inherit;
    color: var(--dh-ink) !important;
    text-align: center;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

body.woocommerce-cart .quantity .qty:focus {
    border-color: var(--dh-weinrot) !important;
    box-shadow: 0 0 0 3px rgba(201, 163, 92, 0.25) !important;
    outline: none;
}

/* --------------------------------------------------------------------------
   3. Aktionszeile: Gutschein + Warenkorb aktualisieren
   -------------------------------------------------------------------------- */

body.woocommerce-cart td.actions {
    padding-top: 20px !important;
    border-bottom: none !important;
}

/* Gutschein-Bereich als gestrichelte Gold-Box wie im Checkout */
body.woocommerce-cart td.actions .coupon,
body.woocommerce-cart .e-apply-coupon {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    background: var(--dh-karte-bg);
    border: 1px dashed var(--dh-gold);
    border-radius: var(--dh-radius-klein);
    padding: 14px 16px;
    margin-bottom: 14px;
    float: none;
}

body.woocommerce-cart td.actions .coupon .input-text,
body.woocommerce-cart td.actions .coupon #coupon_code {
    background: var(--dh-feld-bg) !important;
    border: 1px solid var(--dh-linie) !important;
    border-radius: var(--dh-radius-klein) !important;
    min-height: 46px;
    padding: 10px 14px !important;
    font-size: 1rem;
    font-family: inherit;
    color: var(--dh-ink) !important;
    flex: 1 1 200px;
    width: auto !important;
    box-sizing: border-box;
}

body.woocommerce-cart td.actions .coupon .input-text:focus {
    border-color: var(--dh-weinrot) !important;
    box-shadow: 0 0 0 3px rgba(201, 163, 92, 0.25) !important;
    outline: none;
}

/* --------------------------------------------------------------------------
   4. Buttons
   -------------------------------------------------------------------------- */

body.woocommerce-cart button.button,
body.woocommerce-cart .button {
    background: var(--dh-weinrot) !important;
    color: #ffffff !important;
    border: 1px solid var(--dh-weinrot) !important;
    border-radius: 999px !important;
    font-family: 'Source Sans 3', 'Source Sans Pro', sans-serif;
    font-weight: 600;
    font-size: 1rem;
    letter-spacing: 0.02em;
    padding: 12px 28px;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.18s ease, border-color 0.18s ease,
                transform 0.12s ease, box-shadow 0.18s ease;
}

body.woocommerce-cart button.button:hover,
body.woocommerce-cart .button:hover {
    background: var(--dh-weinrot-dunkel) !important;
    border-color: var(--dh-gold) !important;
    box-shadow: 0 4px 14px rgba(106, 20, 23, 0.30);
    transform: translateY(-1px);
    color: #ffffff !important;
}

body.woocommerce-cart button.button:focus-visible,
body.woocommerce-cart .button:focus-visible {
    outline: 3px solid var(--dh-gold);
    outline-offset: 2px;
}

/* Deaktivierter "Warenkorb aktualisieren"-Button (nichts geändert) */
body.woocommerce-cart button.button:disabled,
body.woocommerce-cart button.button[disabled] {
    background: #d8cfc6 !important;
    border-color: #d8cfc6 !important;
    color: #8a7f77 !important;
    cursor: not-allowed;
    box-shadow: none;
    transform: none;
}

/* --------------------------------------------------------------------------
   5. Rechte Spalte: Warenkorb-Summe als dunkle Weinrot-Karte
   -------------------------------------------------------------------------- */

body.woocommerce-cart .cart_totals {
    background: linear-gradient(160deg, #56100f 0%, var(--dh-weinrot) 55%, #3f0b0d 100%) !important;
    border: 1px solid var(--dh-gold);
    border-radius: var(--dh-radius);
    box-shadow: 0 8px 28px rgba(63, 11, 13, 0.35);
    padding: 28px;
    color: var(--dh-creme);
    float: none;
    width: auto;
}

body.woocommerce-cart .cart_totals h2 {
    color: var(--dh-gold);
    font-size: 1.4rem;
    padding-bottom: 0.6rem;
    margin-bottom: 1.2rem;
    border-bottom: 2px solid rgba(201, 163, 92, 0.45);
    display: inline-block;
}

/* Alle Texte in der dunklen Karte hell erzwingen –
   Theme färbt Links/amounts sonst weinrot-auf-weinrot */
body.woocommerce-cart .cart_totals,
body.woocommerce-cart .cart_totals p,
body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td,
body.woocommerce-cart .cart_totals li,
body.woocommerce-cart .cart_totals label,
body.woocommerce-cart .cart_totals .amount,
body.woocommerce-cart .cart_totals .woocommerce-Price-amount {
    color: var(--dh-creme) !important;
}

body.woocommerce-cart .cart_totals a {
    color: var(--dh-gold-hell) !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.woocommerce-cart .cart_totals table.shop_table {
    width: 100%;
    border: none !important;
    border-collapse: collapse;
    margin: 0 0 12px;
}

body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td {
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid rgba(201, 163, 92, 0.30) !important;
    padding: 13px 4px;
    font-size: 0.98rem;
    vertical-align: top;
    text-align: left;
}

body.woocommerce-cart .cart_totals th {
    font-weight: 600;
    width: 40%;
}

/* Gesamtsumme */
body.woocommerce-cart .cart_totals .order-total th,
body.woocommerce-cart .cart_totals .order-total td {
    border-bottom: none !important;
    border-top: 2px solid var(--dh-gold) !important;
    padding-top: 16px;
    font-size: 1.18rem;
    font-weight: 700;
    color: #ffffff !important;
}

body.woocommerce-cart .cart_totals .order-total .amount {
    color: var(--dh-gold-hell) !important;
}

/* MwSt.-Hinweis dezent als eigene Zeile */
body.woocommerce-cart .cart_totals .includes_tax,
body.woocommerce-cart .cart_totals .woocommerce-Price-taxLabel,
body.woocommerce-cart .cart_totals .order-total small {
    display: block;
    font-size: 0.8rem;
    font-weight: 400;
    margin-top: 4px;
    color: rgba(246, 239, 228, 0.7) !important;
}

/* --------------------------------------------------------------------------
   6. Versandkosten-Rechner in der dunklen Karte
   -------------------------------------------------------------------------- */

body.woocommerce-cart .woocommerce-shipping-destination {
    font-size: 0.9rem;
    color: rgba(246, 239, 228, 0.88) !important;
}

body.woocommerce-cart .shipping-calculator-button {
    color: var(--dh-gold-hell) !important;
    font-weight: 600;
}

body.woocommerce-cart .shipping-calculator-form {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid rgba(201, 163, 92, 0.28);
}

body.woocommerce-cart .shipping-calculator-form .form-row {
    margin-bottom: 12px;
}

body.woocommerce-cart .shipping-calculator-form label {
    color: var(--dh-creme) !important;
    font-weight: 600;
    font-size: 0.88rem;
    margin-bottom: 6px;
    display: block;
}

/* Helle Eingabefelder auf dunklem Grund */
body.woocommerce-cart .shipping-calculator-form input.input-text,
body.woocommerce-cart .shipping-calculator-form select,
body.woocommerce-cart .cart_totals .select2-container--default .select2-selection--single {
    background: var(--dh-feld-bg) !important;
    border: 1px solid var(--dh-gold) !important;
    border-radius: var(--dh-radius-klein) !important;
    min-height: 46px;
    padding: 10px 14px !important;
    font-size: 1rem;
    font-family: inherit;
    color: var(--dh-ink) !important;
    width: 100%;
    box-sizing: border-box;
}

body.woocommerce-cart .cart_totals .select2-container--default .select2-selection--single {
    display: flex;
    align-items: center;
}

body.woocommerce-cart .cart_totals .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--dh-ink) !important;
}

body.woocommerce-cart .cart_totals .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100%;
    top: 0;
}

body.woocommerce-cart .shipping-calculator-form input.input-text:focus,
body.woocommerce-cart .shipping-calculator-form select:focus {
    border-color: var(--dh-gold-hell) !important;
    box-shadow: 0 0 0 3px rgba(201, 163, 92, 0.35) !important;
    outline: none;
}

/* --------------------------------------------------------------------------
   7. "Weiter zur Kasse"-Button
   -------------------------------------------------------------------------- */

body.woocommerce-cart .wc-proceed-to-checkout {
    padding: 0;
    margin-top: 20px;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 1.1rem;
    padding: 16px 32px;
    background: linear-gradient(180deg, #7c191c, var(--dh-weinrot)) !important;
    border: 1px solid var(--dh-gold) !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

/* --------------------------------------------------------------------------
   8. Leerer Warenkorb & Hinweise
   -------------------------------------------------------------------------- */

body.woocommerce-cart .cart-empty.woocommerce-info,
body.woocommerce-cart .woocommerce-info {
    background: linear-gradient(90deg, rgba(201, 163, 92, 0.10), transparent);
    border: 1px solid var(--dh-gold);
    border-left: 4px solid var(--dh-gold);
    border-radius: var(--dh-radius-klein);
    color: var(--dh-ink);
    padding: 14px 18px;
}

body.woocommerce-cart .woocommerce-message {
    background: #f4f8f2;
    border: 1px solid #b9d0b0;
    border-left: 4px solid #7a9c6e;
    border-radius: var(--dh-radius-klein);
    color: #3d5535;
    padding: 14px 18px;
}

/* Cross-Sells ("Das könnte dich auch interessieren") */
body.woocommerce-cart .cross-sells > h2 {
    font-size: 1.3rem;
    padding-bottom: 0.6rem;
    margin: 32px 0 20px;
    border-bottom: 2px solid var(--dh-gold);
    display: inline-block;
}

/* --------------------------------------------------------------------------
   9. Responsive – WooCommerce stapelt die Tabelle auf Mobile
   -------------------------------------------------------------------------- */

@media (max-width: 1024px) {
    body.woocommerce-cart .e-cart__container {
        gap: 20px;
    }

    body.woocommerce-cart .cart_totals {
        padding: 20px;
    }
}

@media (max-width: 767px) {
    body.woocommerce-cart .woocommerce-cart-form {
        padding: 16px;
    }

    /* Gestapelte Zeilen: Label links (data-title), Wert rechts */
    body.woocommerce-cart table.shop_table_responsive tr td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        text-align: right;
        border-bottom: 1px solid var(--dh-linie) !important;
        padding: 12px 4px;
    }

    body.woocommerce-cart table.shop_table_responsive tr td::before {
        font-family: 'Cinzel', serif;
        font-size: 0.78rem;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: var(--dh-weinrot);
        float: none;
    }

    body.woocommerce-cart table.shop_table_responsive tr.cart_item {
        display: block;
        border: 1px solid var(--dh-linie);
        border-radius: var(--dh-radius-klein);
        margin-bottom: 14px;
        padding: 6px 10px;
    }

    body.woocommerce-cart td.product-thumbnail {
        justify-content: center !important;
    }

    body.woocommerce-cart td.actions .coupon {
        flex-direction: column;
        align-items: stretch;
    }

    body.woocommerce-cart td.actions .coupon .input-text {
        flex: 1 1 auto;
        font-size: 16px !important; /* verhindert iOS-Auto-Zoom */
    }

    body.woocommerce-cart td.actions .coupon button.button,
    body.woocommerce-cart button[name="update_cart"] {
        width: 100%;
    }

    body.woocommerce-cart .quantity .qty {
        min-height: 44px;
        font-size: 16px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.woocommerce-cart button.button,
    body.woocommerce-cart .button,
    body.woocommerce-cart .quantity .qty {
        transition: none;
    }

    body.woocommerce-cart button.button:hover,
    body.woocommerce-cart .button:hover {
        transform: none;
    }
}

/* --------------------------------------------------------------------------
   10. Lesbarkeits-Härtung (v1.1.0)
   Theme/Elementor-Kit setzen Überschriften- und Tabellenfarben teils mit
   gleicher oder höherer Spezifität auf Weinrot – auf der dunklen Karte war
   das unlesbar (Cart Total, Zwischensumme, Sendung, Gesamtsumme).
   Doppelte Klassen (.cart_totals.cart_totals) heben die Spezifität über
   Theme- und Kit-Regeln, ohne IDs zu benötigen.
   -------------------------------------------------------------------------- */

/* Überschrift "Cart Total" */
body.woocommerce-cart .cart_totals.cart_totals h2,
body.woocommerce-cart .cart_totals.cart_totals > h2 {
    color: var(--dh-gold) !important;
}

/* Zeilen-Labels (Zwischensumme, Sendung) + Werte */
body.woocommerce-cart .cart_totals.cart_totals table th,
body.woocommerce-cart .cart_totals.cart_totals table td,
body.woocommerce-cart .cart_totals.cart_totals table td .amount,
body.woocommerce-cart .cart_totals.cart_totals table td bdi {
    color: var(--dh-creme) !important;
}

/* Gesamtsumme: Label weiß, Betrag hellgold */
body.woocommerce-cart .cart_totals.cart_totals .order-total th {
    color: #ffffff !important;
}

body.woocommerce-cart .cart_totals.cart_totals .order-total td,
body.woocommerce-cart .cart_totals.cart_totals .order-total .amount,
body.woocommerce-cart .cart_totals.cart_totals .order-total bdi {
    color: var(--dh-gold-hell) !important;
}

/* Buttons in der dunklen Karte brauchen den Goldrand, sonst
   verschwinden sie Weinrot-auf-Weinrot (Update, Proceed to Checkout) */
body.woocommerce-cart .cart_totals.cart_totals .button,
body.woocommerce-cart .cart_totals.cart_totals button.button,
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
    border: 1px solid var(--dh-gold) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

body.woocommerce-cart .cart_totals.cart_totals .button:hover,
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
    border-color: var(--dh-gold-hell) !important;
    background: var(--dh-weinrot-dunkel) !important;
}

/* "Update"-Button im Versandrechner: helle Kontur-Variante,
   damit er sich vom Kauf-Button unterscheidet */
body.woocommerce-cart .shipping-calculator-form .button {
    background: transparent !important;
    border: 1px solid var(--dh-gold) !important;
    color: var(--dh-gold-hell) !important;
}

body.woocommerce-cart .shipping-calculator-form .button:hover {
    background: rgba(201, 163, 92, 0.15) !important;
    color: #ffffff !important;
}

/* Gutschein-Bereich: greift auch bei Elementor-Markup ohne td.actions,
   Feld mit vollem Rahmen statt Theme-Unterstrich */
body.woocommerce-cart .woocommerce-cart-form .coupon {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    background: var(--dh-karte-bg);
    border: 1px dashed var(--dh-gold);
    border-radius: var(--dh-radius-klein);
    padding: 14px 16px;
    float: none;
}

body.woocommerce-cart .coupon input#coupon_code,
body.woocommerce-cart .coupon .input-text {
    background: var(--dh-feld-bg) !important;
    border: 1px solid var(--dh-linie) !important;
    border-bottom: 1px solid var(--dh-linie) !important;
    border-radius: var(--dh-radius-klein) !important;
    min-height: 46px !important;
    padding: 10px 14px !important;
    flex: 1 1 200px;
    width: auto !important;
    box-shadow: none !important;
}

body.woocommerce-cart .coupon input#coupon_code:focus {
    border-color: var(--dh-weinrot) !important;
    box-shadow: 0 0 0 3px rgba(201, 163, 92, 0.25) !important;
    outline: none;
}

/* Trennlinien der dunklen Karte konsistent in gedämpftem Gold */
body.woocommerce-cart .cart_totals.cart_totals table th,
body.woocommerce-cart .cart_totals.cart_totals table td {
    border: none !important;
    border-bottom: 1px solid rgba(201, 163, 92, 0.30) !important;
}

body.woocommerce-cart .cart_totals.cart_totals .order-total th,
body.woocommerce-cart .cart_totals.cart_totals .order-total td {
    border-bottom: none !important;
    border-top: 2px solid var(--dh-gold) !important;
}

/* --------------------------------------------------------------------------
   11. Härtung v1.2.0 – letzte unlesbare Labels + abgehackte Ränder
   -------------------------------------------------------------------------- */

/* Innenabstand der dunklen Karte war vom Theme überschrieben worden –
   Inhalt klebte an den Kanten und wirkte abgeschnitten */
body.woocommerce-cart .cart_totals.cart_totals {
    padding: 28px !important;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden; /* rundet Inhalt sauber mit den Karten-Ecken ab */
}

/* Zeilen-Labels (Zwischensumme, Sendung, Gesamtsumme):
   Vierfach-Klasse schlägt jede Theme-/Kit-Regel ohne ID-Selektoren.
   Deckt auch verschachtelte strong/span/b-Elemente ab. */
body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals th,
body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals th *,
body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals td,
body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals h3,
body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals h4 {
    color: var(--dh-creme) !important;
}

body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals h2 {
    color: var(--dh-gold) !important;
}

body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals .order-total th,
body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals .order-total th * {
    color: #ffffff !important;
}

body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals .order-total td,
body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals .order-total td .amount,
body.woocommerce-cart .cart_totals.cart_totals.cart_totals.cart_totals .order-total td bdi {
    color: var(--dh-gold-hell) !important;
}

/* Luft zwischen den Blöcken in der Karte, damit nichts gequetscht wirkt */
body.woocommerce-cart .cart_totals.cart_totals h2 {
    margin-top: 0;
}

body.woocommerce-cart .cart_totals.cart_totals table.shop_table {
    margin-bottom: 16px;
}

body.woocommerce-cart .shipping-calculator-form .button {
    margin-top: 4px;
}

body.woocommerce-cart .wc-proceed-to-checkout {
    margin-top: 24px;
}

/* Gesamtsummen-Zeile bekommt mehr Abstand nach oben statt einer
   kantenbündigen Volltrennlinie */
body.woocommerce-cart .cart_totals.cart_totals .order-total th,
body.woocommerce-cart .cart_totals.cart_totals .order-total td {
    padding-top: 18px !important;
    padding-bottom: 6px !important;
}

/* --------------------------------------------------------------------------
   12. Finale Härtung v1.3.0 – Zwischensumme / Sendung / Gesamtsumme
   Zwei Mechanismen, die normale color-Regeln komplett aushebeln können:
   a) -webkit-text-fill-color: setzt das Theme diese Eigenschaft (üblich bei
      Gradient-Überschriften), wird JEDE color-Angabe visuell ignoriert –
      egal mit wie viel !important. Muss separat überschrieben werden.
   b) :is(#dh-spec-boost, …) hebt die Spezifität der Regel auf ID-Niveau
      (der ID-Selektor muss dafür nicht existieren – :is() zählt immer das
      spezifischste Argument). Schlägt damit auch !important-Regeln von
      Theme/Kit auf Klassenbasis.
   -------------------------------------------------------------------------- */

body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) th,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) th *,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) table td,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) table td *,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) h3,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) h4,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) strong {
    color: var(--dh-creme) !important;
    -webkit-text-fill-color: var(--dh-creme) !important;
}

body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) h2 {
    color: var(--dh-gold) !important;
    -webkit-text-fill-color: var(--dh-gold) !important;
    background: none !important;
    background-clip: border-box !important;
    -webkit-background-clip: border-box !important;
}

body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) tr.order-total th,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) tr.order-total th * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) tr.order-total td,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) tr.order-total td *,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) tr.order-total bdi {
    color: var(--dh-gold-hell) !important;
    -webkit-text-fill-color: var(--dh-gold-hell) !important;
}

/* Links (Adresse ändern) davon ausnehmen – bleiben hellgold */
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) a,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) a * {
    color: var(--dh-gold-hell) !important;
    -webkit-text-fill-color: var(--dh-gold-hell) !important;
}

/* Eingabefelder im Versandrechner behalten dunkle Schrift auf hellem Feld */
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) input.input-text,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) select,
body.woocommerce-cart :is(#dh-spec-boost, .cart_totals) .select2-selection__rendered {
    color: var(--dh-ink) !important;
    -webkit-text-fill-color: var(--dh-ink) !important;
}/* End custom CSS */