.elementor-kit-26{--e-global-color-primary:#141310;--e-global-color-secondary:#E8DCC8;--e-global-color-text:#3A3A38;--e-global-color-accent:#6B6B68;--e-global-color-paper:#FAF7F2;--e-global-color-white:#FFFFFF;--e-global-color-line:#E4E4E1;--e-global-color-line_strong:#D8D8D5;--e-global-color-sable_deep:#DBCBAE;--e-global-color-grey_light:#BDBDB9;--e-global-typography-primary-font-family:"Karla";--e-global-typography-primary-font-size:42px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.15em;--e-global-typography-primary-letter-spacing:-0.025em;--e-global-typography-secondary-font-family:"Karla";--e-global-typography-secondary-font-size:32px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.15em;--e-global-typography-secondary-letter-spacing:-0.025em;--e-global-typography-text-font-family:"Karla";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Roboto Mono";--e-global-typography-accent-font-size:11px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0.16em;--e-global-typography-display-font-family:"Karla";--e-global-typography-display-font-size:52px;--e-global-typography-display-font-weight:700;--e-global-typography-display-line-height:1.08em;--e-global-typography-display-letter-spacing:-0.03em;--e-global-typography-h3-font-family:"Karla";--e-global-typography-h3-font-size:20px;--e-global-typography-h3-font-weight:700;--e-global-typography-h3-line-height:1.25em;--e-global-typography-h3-letter-spacing:-0.01em;--e-global-typography-lead-font-family:"Karla";--e-global-typography-lead-font-size:22px;--e-global-typography-lead-font-weight:300;--e-global-typography-lead-line-height:1.45em;--e-global-typography-small-font-family:"Karla";--e-global-typography-small-font-size:15px;--e-global-typography-small-font-weight:400;--e-global-typography-small-line-height:1.6em;--e-global-typography-meta-font-family:"Karla";--e-global-typography-meta-font-size:13px;--e-global-typography-meta-font-weight:400;--e-global-typography-meta-line-height:1.6em;--e-global-typography-navlink-font-family:"Karla";--e-global-typography-navlink-font-size:16px;--e-global-typography-navlink-font-weight:400;--e-global-typography-navlink-text-transform:uppercase;--e-global-typography-navlink-line-height:1em;--e-global-typography-navlink-letter-spacing:0.06em;--e-global-typography-button-font-family:"Karla";--e-global-typography-button-font-size:14px;--e-global-typography-button-font-weight:700;--e-global-typography-button-text-transform:uppercase;--e-global-typography-button-line-height:1em;--e-global-typography-button-letter-spacing:0.08em;--e-global-typography-price-font-family:"Roboto Mono";--e-global-typography-price-font-size:15px;--e-global-typography-price-font-weight:400;--e-global-typography-price-line-height:1em;--e-global-typography-price_large-font-family:"Roboto Mono";--e-global-typography-price_large-font-size:28px;--e-global-typography-price_large-font-weight:400;--e-global-typography-price_large-line-height:1em;--e-global-typography-linkarrow-font-family:"Karla";--e-global-typography-linkarrow-font-size:17px;--e-global-typography-linkarrow-font-weight:700;--e-global-typography-linkarrow-text-transform:uppercase;--e-global-typography-linkarrow-line-height:1em;--e-global-typography-linkarrow-letter-spacing:0.06em;background-color:#FFFFFF;}.elementor-kit-26 button,.elementor-kit-26 input[type="button"],.elementor-kit-26 input[type="submit"],.elementor-kit-26 .elementor-button{background-color:var( --e-global-color-secondary );font-family:var( --e-global-typography-button-font-family ), Sans-serif;font-size:var( --e-global-typography-button-font-size );font-weight:var( --e-global-typography-button-font-weight );text-transform:var( --e-global-typography-button-text-transform );line-height:var( --e-global-typography-button-line-height );letter-spacing:var( --e-global-typography-button-letter-spacing );color:var( --e-global-color-primary );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-secondary );border-radius:0px 0px 0px 0px;padding:16px 26px 16px 26px;}.elementor-kit-26 button:hover,.elementor-kit-26 button:focus,.elementor-kit-26 input[type="button"]:hover,.elementor-kit-26 input[type="button"]:focus,.elementor-kit-26 input[type="submit"]:hover,.elementor-kit-26 input[type="submit"]:focus,.elementor-kit-26 .elementor-button:hover,.elementor-kit-26 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-white );}.elementor-kit-26 e-page-transition{background-color:#FFBC7D;}body.e-wc-message-notice .woocommerce-message, body.e-wc-message-notice .wc-block-components-notice-banner.is-success{background-color:var( --e-global-color-secondary );}body.e-wc-message-notice .woocommerce-message .button, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button{background-color:var( --e-global-color-accent );background-image:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );border-width:1px 1px 1px 1px;}body.e-wc-info-notice .woocommerce-info, body.e-wc-info-notice .wc-block-components-notice-banner.is-info{background-color:#F3F5F8;border-style:solid;border-width:1px 1px 1px 1px;}body.e-wc-info-notice .woocommerce-info .button:hover, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button:hover, body.e-wc-info-notice .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-info .woocommerce-Button:hover, body.e-wc-info-notice .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .wc-block-components-notice-banner.is-info .woocommerce-Button:hover{background-color:var( --e-global-color-accent );background-image:var( --e-global-color-accent );}.elementor-kit-26 a{color:var( --e-global-color-accent );}.elementor-kit-26 a:hover{color:var( --e-global-color-primary );}.elementor-kit-26 h4{color:var( --e-global-color-primary );font-family:"Poppins", Sans-serif;font-size:22px;font-weight:600;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1180px;}.e-con{--container-max-width:1180px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{--error-message-text-color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );--error-message-normal-links-color:var( --e-global-color-accent );}body.e-wc-error-notice .woocommerce-error a.wc-backward, body.e-wc-error-notice .wc-block-components-notice-banner.is-error a.wc-backward{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );--message-message-icon-color:var( --e-global-color-accent );--message-buttons-normal-text-color:#FFFFFF;--message-buttons-hover-text-color:var( --e-global-color-accent );--message-buttons-hover-border-color:var( --e-global-color-accent );--message-border-type:solid;--message-border-color:var( --e-global-color-accent );--message-buttons-border-radius:50px 50px 50px 50px;--message-buttons-padding:12px 25px 12px 25px;}body.e-wc-message-notice .woocommerce-message .restore-item, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, body.e-wc-message-notice .woocommerce-message a:not([class]), body.e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-message-notice .woocommerce-message .restore-item, .e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, .e-wc-message-notice .woocommerce-message a:not([class]), .e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){--notice-message-normal-links-color:var( --e-global-color-accent );}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{--info-message-text-color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );--info-message-icon-color:var( --e-global-color-accent );--info-buttons-normal-text-color:var( --e-global-color-accent );--info-buttons-hover-border-color:var( --e-global-color-accent );--info-border-type:solid;--info-buttons-border-radius:50px 50px 50px 50px;--info-buttons-padding:12px 25px 12px 25px;}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );border-width:1px 1px 1px 1px;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-26{--e-global-typography-primary-font-size:36px;--e-global-typography-secondary-font-size:28px;--e-global-typography-display-font-size:44px;}.elementor-kit-26 button,.elementor-kit-26 input[type="button"],.elementor-kit-26 input[type="submit"],.elementor-kit-26 .elementor-button{font-size:var( --e-global-typography-button-font-size );line-height:var( --e-global-typography-button-line-height );letter-spacing:var( --e-global-typography-button-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}body.e-wc-error-notice .woocommerce-error a.wc-backward, body.e-wc-error-notice .wc-block-components-notice-banner.is-error a.wc-backward{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}body.e-wc-message-notice .woocommerce-message .restore-item, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, body.e-wc-message-notice .woocommerce-message a:not([class]), body.e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}body.e-wc-message-notice .woocommerce-message .button, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}@media(max-width:767px){.elementor-kit-26{--e-global-typography-primary-font-size:32px;--e-global-typography-secondary-font-size:24px;--e-global-typography-text-font-size:16px;--e-global-typography-display-font-size:38px;--e-global-typography-lead-font-size:17px;--e-global-typography-navlink-font-size:15px;--e-global-typography-price_large-font-size:24px;}.elementor-kit-26 h4{font-size:18px;}.elementor-kit-26 button,.elementor-kit-26 input[type="button"],.elementor-kit-26 input[type="submit"],.elementor-kit-26 .elementor-button{font-size:var( --e-global-typography-button-font-size );line-height:var( --e-global-typography-button-line-height );letter-spacing:var( --e-global-typography-button-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}body.e-wc-error-notice .woocommerce-error a.wc-backward, body.e-wc-error-notice .wc-block-components-notice-banner.is-error a.wc-backward{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}body.e-wc-message-notice .woocommerce-message .restore-item, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, body.e-wc-message-notice .woocommerce-message a:not([class]), body.e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}body.e-wc-message-notice .woocommerce-message .button, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}
/* Start custom CSS *//* ==========================================================================
   WooCommerce-Anpassungen — Dreizeiler Verlag
   Diese Bereiche liefert WooCommerce als eigenes Markup, dafuer gibt es
   kein Elementor-Widget. Jeder Wert kommt aus den Elementor-Globals
   (--e-global-*), damit eine Aenderung im Kit auch hier durchschlaegt.
   Gepflegt in css/woocommerce.css, deployt nach Site Settings > Custom CSS.
   ========================================================================== */

/* --- Keine Radien. Markenzeichen. (A8, A11, A15) ----------------------- */
.woocommerce input, .woocommerce select, .woocommerce textarea,
.woocommerce .button, .woocommerce button.button, .woocommerce a.button,
.woocommerce input[type="submit"], .woocommerce .quantity .qty,
.woocommerce-message, .woocommerce-info, .woocommerce-error,
.woocommerce #reviews #comments ol.commentlist li .comment-text,
.woocommerce #reviews #comments ol.commentlist li img.avatar,
.woocommerce #review_form #respond textarea,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-account .woocommerce-Address,
.wc-block-components-button, .wc-block-components-text-input input,
.wc-block-components-sidebar, .wc-block-components-panel,
.elementor-menu-cart__container, .elementor-menu-cart__main,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--single .select2-selection__rendered {
  border-radius: 0 !important;
}

/* --- Primaere Buttons: Sable (A10, A14, A17) --------------------------- */
.woocommerce .button.alt,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce #respond input#submit.alt,
.woocommerce .wc-proceed-to-checkout a.checkout-button,
.woocommerce #place_order,
.wc-block-components-checkout-place-order-button {
  background-color: var(--e-global-color-secondary) !important;
  color: var(--e-global-color-primary) !important;
  border: 1px solid var(--e-global-color-secondary) !important;
  font-family: var(--e-global-typography-button-font-family), sans-serif;
  font-size: var(--e-global-typography-button-font-size);
  font-weight: var(--e-global-typography-button-font-weight);
  letter-spacing: var(--e-global-typography-button-letter-spacing);
  text-transform: var(--e-global-typography-button-text-transform);
  padding: 16px 26px;
  line-height: 1.1;
}
.woocommerce .button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #place_order:hover,
.wc-block-components-checkout-place-order-button:hover {
  background-color: var(--e-global-color-primary) !important;
  color: var(--e-global-color-white) !important;
  border-color: var(--e-global-color-primary) !important;
}

/* --- Sekundaere Buttons: Umriss ---------------------------------------- */
.woocommerce .button:not(.alt):not(.add_to_cart_button),
.woocommerce a.button:not(.alt):not(.add_to_cart_button) {
  background-color: transparent;
  color: var(--e-global-color-primary);
  border: 1px solid var(--e-global-color-primary);
  font-family: var(--e-global-typography-button-font-family), sans-serif;
  font-size: var(--e-global-typography-button-font-size);
  font-weight: var(--e-global-typography-button-font-weight);
  letter-spacing: var(--e-global-typography-button-letter-spacing);
  text-transform: var(--e-global-typography-button-text-transform);
  padding: 16px 26px;
  line-height: 1.1;
}
.woocommerce .button:not(.alt):not(.add_to_cart_button):hover,
.woocommerce a.button:not(.alt):not(.add_to_cart_button):hover {
  background-color: var(--e-global-color-primary);
  color: var(--e-global-color-white);
}

/* --- Eingabefelder (A15) ----------------------------------------------- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single {
  border: 1px solid var(--e-global-color-line_strong);
  background: var(--e-global-color-white);
  color: var(--e-global-color-primary);
  font-family: var(--e-global-typography-small-font-family), sans-serif;
  font-size: var(--e-global-typography-small-font-size);
  padding: 14px 16px;
  min-height: 52px;
  line-height: 1.4;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  outline: none;
  border-color: var(--e-global-color-primary);
  box-shadow: 0 0 0 3px var(--e-global-color-secondary);
}
.woocommerce form .form-row label {
  font-family: var(--e-global-typography-small-font-family), sans-serif;
  font-size: var(--e-global-typography-small-font-size);
  letter-spacing: 0;
  text-transform: none;
  color: var(--e-global-color-accent);
  margin-bottom: 8px;
}

/* --- Mengenauswahl (A11) ----------------------------------------------- */
.woocommerce .quantity .qty {
  border: 1px solid var(--e-global-color-line_strong);
  background: var(--e-global-color-white);
  color: var(--e-global-color-primary);
  font-family: var(--e-global-typography-text-font-family), sans-serif;
  min-height: 52px;
  padding: 12px 10px;
}

/* --- Hinweise: schlichter Haken statt gefuelltem Kreis (A9) ------------ */
.woocommerce-message, .woocommerce-info {
  background: var(--e-global-color-paper);
  border-top: none;
  border-left: 3px solid var(--e-global-color-secondary);
  color: var(--e-global-color-primary);
  font-family: var(--e-global-typography-text-font-family), sans-serif;
  font-size: var(--e-global-typography-small-font-size);
  padding: 18px 20px 18px 48px;
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.woocommerce-message::before, .woocommerce-info::before {
  content: "\2713";
  font-family: inherit;
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  color: var(--e-global-color-primary);
  background: none;
  border-radius: 0;
  top: 50%;
  transform: translateY(-50%);
  left: 20px;
}
.woocommerce-error {
  background: var(--e-global-color-paper);
  border-top: none;
  border-left: 3px solid var(--e-global-color-primary);
  color: var(--e-global-color-primary);
}

/* --- Produktseite (A6, A7) --------------------------------------------- */
.woocommerce-product-gallery__trigger { display: none !important; }
/* Elementor rendert die Meta als .detail-container mit .detail-label */
.product_meta { display: flex; flex-direction: column; gap: 8px; }
.product_meta .detail-container { display: flex; gap: 10px; align-items: baseline; }
.product_meta .detail-label {
  font-family: var(--e-global-typography-accent-font-family), monospace;
  font-size: var(--e-global-typography-accent-font-size);
  letter-spacing: var(--e-global-typography-accent-letter-spacing);
  text-transform: uppercase;
  color: var(--e-global-color-accent);
  min-width: 84px;
}
.product_meta .sku,
.product_meta .detail-content,
.product_meta .detail-content a {
  font-family: var(--e-global-typography-meta-font-family), sans-serif;
  color: var(--e-global-color-primary);
}

/* --- Mein Konto (A1, A3) ----------------------------------------------- */
.woocommerce-account .woocommerce { display: flex; gap: 64px; flex-wrap: wrap; }
.woocommerce-account .woocommerce-MyAccount-navigation { width: 24%; min-width: 220px; float: none; }
.woocommerce-account .woocommerce-MyAccount-content { width: auto; flex: 1; float: none; }
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none; margin: 0; padding: 0;
  border-top: 1px solid var(--e-global-color-line);
}
.woocommerce-account .woocommerce-MyAccount-navigation li {
  border-bottom: 1px solid var(--e-global-color-line);
}
.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: block;
  padding: 16px 0;
  font-family: var(--e-global-typography-navlink-font-family), sans-serif;
  font-size: var(--e-global-typography-navlink-font-size);
  letter-spacing: var(--e-global-typography-navlink-letter-spacing);
  text-transform: uppercase;
  color: var(--e-global-color-text);
  border-bottom: none;
  transition: color 160ms ease;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { color: var(--e-global-color-accent); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  color: var(--e-global-color-primary);
  font-weight: 700;
}
@media (max-width: 767px) {
  .woocommerce-account .woocommerce { gap: 32px; }
  .woocommerce-account .woocommerce-MyAccount-navigation { width: 100%; }
}

/* --- Tabellen (Warenkorb, Bestellungen) -------------------------------- */
.woocommerce table.shop_table,
.woocommerce table.shop_table td,
.woocommerce table.shop_table th { border-radius: 0; border-color: var(--e-global-color-line); }
.woocommerce table.shop_table th {
  font-family: var(--e-global-typography-small-font-family), sans-serif;
  font-size: var(--e-global-typography-small-font-size);
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
  color: var(--e-global-color-accent);
}
.woocommerce .cart_totals h2, .woocommerce-checkout #order_review_heading {
  font-family: var(--e-global-typography-secondary-font-family), sans-serif;
  font-size: var(--e-global-typography-h3-font-size);
  color: var(--e-global-color-primary);
}

/* --- Warenkorb-Icon im Header: kein Rahmen -----------------------------
   Das Widget setzt border-width ueber --toggle-button-border-width mit 1px
   als Fallback. Die Widget-Einstellung erreicht die Variable nicht. */
.elementor-menu-cart__toggle .elementor-button {
  --toggle-button-border-width: 0px;
  --toggle-button-border-type: none;
  --toggle-button-border-color: transparent;
}

/* --- Mobiles Menue: unter dem Header statt darin ----------------------
   Elementors "Volle Breite" positioniert das Dropdown in Container-
   Layouts falsch — es bleibt im Fluss und blaeht den Header auf.
   Deshalb absolut unter die Headerleiste, ueber die volle Fensterbreite. */
@media (max-width: 767px) {
  header.e-con { position: relative; }
  /* Das Menue-Widget darf kein eigener Bezugspunkt sein, sonst richtet
     sich das Dropdown an ihm statt am Header aus. */
  header.e-con .elementor-widget-nav-menu { position: static !important; }
  header.e-con .elementor-nav-menu--dropdown {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    background: var(--e-global-color-white);
    border-top: 1px solid var(--e-global-color-line);
    box-shadow: 0 10px 24px rgba(20, 19, 16, 0.08);
    z-index: 999;
  }
  header.e-con .elementor-nav-menu--dropdown a {
    padding: 16px var(--dz-gutter-mobile, 20px) !important;
    border-bottom: 1px solid var(--e-global-color-line);
  }
}

/* --- Warenkorb-Icon im Header: Luft zwischen Zahl und Symbol ----------- */
.elementor-menu-cart__toggle .elementor-button-icon {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.elementor-menu-cart__toggle .elementor-button-icon-qty {
  margin-inline-end: 6px;
  font-family: var(--e-global-typography-text-font-family), sans-serif;
}

/* --- Rechtstexte (Impressum, AGB, Datenschutz, Widerruf, Lieferung) ------
   Klasse dz-rechtstext am Text-Widget. Alles aus den Globals. */
.dz-rechtstext h2 {
  font-family: var(--e-global-typography-h3-font-family), sans-serif;
  font-size: var(--e-global-typography-h3-font-size);
  font-weight: var(--e-global-typography-h3-font-weight);
  line-height: var(--e-global-typography-h3-line-height);
  letter-spacing: var(--e-global-typography-h3-letter-spacing);
  color: var(--e-global-color-primary);
  margin: 44px 0 14px;
}
.dz-rechtstext h2:first-child { margin-top: 0; }
.dz-rechtstext p { margin: 0 0 14px; }
.dz-rechtstext a {
  color: var(--e-global-color-primary);
  text-decoration: none;
  border-bottom: 1px solid var(--e-global-color-sable_deep);
}
.dz-rechtstext a:hover { color: var(--e-global-color-accent); border-bottom-color: var(--e-global-color-accent); }
.dz-rechtstext table { width: 100%; border-collapse: collapse; margin: 6px 0 18px; border: none; }
/* Hello Elementor faerbt jede zweite Tabellenzeile grau (tr:nth-child(odd)).
   Die Regel ist spezifischer, deshalb hier gezielt ueberschrieben. */
.dz-rechtstext table tbody > tr > td,
.dz-rechtstext table tbody > tr:nth-child(odd) > td {
  padding: 14px 0;
  border: none;
  border-bottom: 1px solid var(--e-global-color-line);
  background-color: transparent;
}
.dz-rechtstext table tr:first-child td { border-top: 1px solid var(--e-global-color-line); }
.dz-rechtstext table td:last-child {
  text-align: right;
  font-family: var(--e-global-typography-price-font-family), monospace;
  color: var(--e-global-color-primary);
}

/* --- Zweisprachige Texte (Design-Regel: FR in Ink, DE darunter in Grau) ---
   Markiert ueber lang-Attribut, z.B. in der Produkt-Kurzbeschreibung. */
.woocommerce-product-details__short-description p[lang="fr"],
.elementor-widget-woocommerce-product-short-description p[lang="fr"] {
  color: var(--e-global-color-primary);
}
.woocommerce-product-details__short-description p[lang="de"],
.elementor-widget-woocommerce-product-short-description p[lang="de"] {
  color: var(--e-global-color-accent);
}

/* --- Danke-Seite nach der Bestellung (Kasse > order-received) -----------
   WooCommerce rendert sie als Unterbereich der Kasse, nicht als eigene Seite. */
.woocommerce-order .woocommerce-thankyou-order-received,
.woocommerce-order .woocommerce-notice--success {
  font-family: var(--e-global-typography-secondary-font-family), sans-serif;
  font-size: var(--e-global-typography-secondary-font-size);
  font-weight: var(--e-global-typography-secondary-font-weight);
  line-height: var(--e-global-typography-secondary-line-height);
  color: var(--e-global-color-primary);
  background: none;
  border: none;
  padding: 0;
  margin: 0 0 32px;
}
.woocommerce-order .woocommerce-thankyou-order-received::before,
.woocommerce-order .woocommerce-notice--success::before { display: none; }
.woocommerce-order ul.woocommerce-order-overview {
  display: flex; flex-wrap: wrap; gap: 0; margin: 0 0 48px; padding: 0;
  list-style: none; background: var(--e-global-color-paper);
}
.woocommerce-order ul.woocommerce-order-overview li {
  flex: 1 1 180px; margin: 0; padding: 20px 24px; border: none;
  border-right: 1px solid var(--e-global-color-line);
  font-family: var(--e-global-typography-accent-font-family), monospace;
  font-size: var(--e-global-typography-accent-font-size);
  letter-spacing: var(--e-global-typography-accent-letter-spacing);
  text-transform: uppercase; color: var(--e-global-color-accent);
}
.woocommerce-order ul.woocommerce-order-overview li:last-child { border-right: none; }
.woocommerce-order ul.woocommerce-order-overview li strong {
  display: block; margin-top: 8px;
  font-family: var(--e-global-typography-text-font-family), sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  letter-spacing: 0; text-transform: none; color: var(--e-global-color-primary);
}
.woocommerce-order h2 {
  font-family: var(--e-global-typography-h3-font-family), sans-serif;
  font-size: var(--e-global-typography-h3-font-size);
  font-weight: var(--e-global-typography-h3-font-weight);
  color: var(--e-global-color-primary);
  margin: 40px 0 16px;
}
.woocommerce-order address {
  font-style: normal; border: 1px solid var(--e-global-color-line);
  border-radius: 0; padding: 20px 24px;
}

/* ==========================================================================
   DESIGN-TREUE (Runde 8) — WooCommerce-Seiten nach warenkorb.html, kasse.html,
   kundenkonto.html und produkt.html aus dem Claude-Design.
   Alles unter .dz-woo / .dz-* eingegrenzt, alles aus den Globals.
   ========================================================================== */

/* --- Gemeinsame Bausteine ------------------------------------------------ */
.dz-woo .woocommerce h2,
.dz-woo .woocommerce h3,
.dz-woo #order_review_heading {
  font-family: var(--e-global-typography-h3-font-family), sans-serif;
  font-size: var(--e-global-typography-h3-font-size);
  font-weight: var(--e-global-typography-h3-font-weight);
  line-height: var(--e-global-typography-h3-line-height);
  letter-spacing: var(--e-global-typography-h3-letter-spacing);
  color: var(--e-global-color-primary);
  margin: 0 0 20px;
}
.dz-woo .woocommerce-notices-wrapper:empty { display: none; }

/* Tabellenkopf wie .linetable: Mono-Label, Ink-Linie darunter */
.dz-woo table.shop_table { border: none !important; border-collapse: collapse; width: 100%; }
.dz-woo table.shop_table thead th {
  font-family: var(--e-global-typography-accent-font-family), monospace;
  font-size: var(--e-global-typography-accent-font-size);
  font-weight: var(--e-global-typography-accent-font-weight);
  letter-spacing: var(--e-global-typography-accent-letter-spacing);
  text-transform: uppercase;
  color: var(--e-global-color-accent);
  background: none;
  padding: 0 16px 12px 0;
  border: none;
  border-bottom: 1px solid var(--e-global-color-primary);
}
.dz-woo table.shop_table td {
  padding: 24px 16px 24px 0;
  border: none;
  border-bottom: 1px solid var(--e-global-color-line);
  background: transparent !important;
  vertical-align: middle;
}

/* Paper-Zusammenfassung wie .summary */
.dz-woo .cart_totals,
.dz-woo #order_review {
  background: var(--e-global-color-paper);
  padding: 32px;
}
.dz-woo .cart_totals table.shop_table th,
.dz-woo .cart_totals table.shop_table td,
.dz-woo #order_review table.shop_table th,
.dz-woo #order_review table.shop_table td {
  background: transparent !important;
  border: none;
  padding: 8px 0;
  font-family: var(--e-global-typography-small-font-family), sans-serif;
  font-size: var(--e-global-typography-small-font-size);
  font-weight: 400;
  text-transform: none;
  letter-spacing: 0;
  color: var(--e-global-color-text);
}
.dz-woo .cart_totals .amount,
.dz-woo #order_review .amount,
.dz-woo table.shop_table .product-subtotal .amount,
.dz-woo table.shop_table .product-price .amount {
  font-family: var(--e-global-typography-price-font-family), monospace;
  color: var(--e-global-color-primary);
}
.dz-woo .cart_totals .order-total th,
.dz-woo .cart_totals .order-total td,
.dz-woo #order_review .order-total th,
.dz-woo #order_review .order-total td {
  border-top: 1px solid var(--e-global-color-primary) !important;
  padding-top: 16px;
  font-family: var(--e-global-typography-h3-font-family), sans-serif;
  font-size: var(--e-global-typography-h3-font-size);
  font-weight: 700;
  color: var(--e-global-color-primary);
}
.dz-woo .cart_totals .order-total .amount,
.dz-woo #order_review .order-total .amount { font-size: var(--e-global-typography-h3-font-size); }
.dz-woo .cart_totals td, .dz-woo #order_review tfoot td { text-align: right; }

/* --- WARENKORB: Tabelle links, Zusammenfassung rechts -------------------- */
.dz-woo--cart .woocommerce {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 32px 64px;
  align-items: start;
}
.dz-woo--cart .woocommerce > .woocommerce-notices-wrapper,
.dz-woo--cart .woocommerce > .woocommerce-message,
.dz-woo--cart .woocommerce > .cart-empty,
.dz-woo--cart .woocommerce > .return-to-shop { grid-column: 1 / -1; }
.dz-woo--cart .cart-collaterals { width: auto; }
.dz-woo--cart .cart-collaterals .cart_totals { width: 100%; float: none; }
.dz-woo--cart table.cart .product-price { display: none; }        /* Entwurf: Artikel / Menge / Preis */
.dz-woo--cart table.cart .product-thumbnail { width: 88px; padding-right: 16px; }
.dz-woo--cart table.cart .product-thumbnail img {
  width: 72px !important; height: auto; border: 1px solid var(--e-global-color-line);
}
.dz-woo--cart table.cart .product-name a {
  font-family: var(--e-global-typography-text-font-family), sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: 700;
  color: var(--e-global-color-primary);
  text-decoration: none;
  border: none;
}
.dz-woo--cart table.cart .product-remove { width: 32px; }
.dz-woo--cart table.cart a.remove {
  color: var(--e-global-color-accent) !important;
  font-size: 20px; font-weight: 300;
  width: auto; height: auto; line-height: 1;
  background: none !important; border: none; border-radius: 0 !important;
}
.dz-woo--cart table.cart a.remove:hover { color: var(--e-global-color-primary) !important; }
.dz-woo--cart table.cart .product-subtotal { text-align: right; padding-right: 0; }
.dz-woo--cart table.cart thead th:last-child { text-align: right; padding-right: 0; }
.dz-woo--cart table.cart td.actions { border-bottom: none; padding: 20px 0 0; text-align: left; }
.dz-woo--cart table.cart td.actions .button {
  padding: 11px 18px !important; font-size: 13px !important; min-height: 0;
}
.dz-woo--cart .wc-proceed-to-checkout { padding: 20px 0 0; }
.dz-woo--cart .wc-proceed-to-checkout a.checkout-button {
  display: block; width: 100%; text-align: center;
  padding: 20px 34px !important; margin: 0;
}

/* --- KASSE: Formular links, Bestellung rechts ----------------------------- */
.dz-woo--checkout form.checkout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  grid-template-rows: auto 1fr;
  gap: 0 64px;
  align-items: start;
}
.dz-woo--checkout form.checkout > .woocommerce-NoticeGroup { grid-column: 1 / -1; }
.dz-woo--checkout #customer_details { grid-column: 1; grid-row: 1 / span 2; width: auto; }
.dz-woo--checkout #customer_details .col-1,
.dz-woo--checkout #customer_details .col-2 { width: 100%; float: none; padding: 0; }
.dz-woo--checkout #customer_details .col-2 { margin-top: 40px; }
.dz-woo--checkout #order_review_heading {
  grid-column: 2; grid-row: 1;
  background: var(--e-global-color-paper);
  padding: 32px 32px 0; margin: 0;
}
.dz-woo--checkout #order_review { grid-column: 2; grid-row: 2; padding-top: 16px; }
@media (min-width: 1024px) {
  .dz-woo--checkout #order_review_heading { position: sticky; top: 24px; }
}
.dz-woo--checkout .woocommerce-billing-fields h3,
.dz-woo--checkout .woocommerce-shipping-fields h3,
.dz-woo--checkout .woocommerce-additional-fields h3 { margin-bottom: 16px; }
.dz-woo--checkout .form-row { margin: 0 0 16px; padding: 0; }
.dz-woo--checkout .form-row-first, .dz-woo--checkout .form-row-last { width: calc(50% - 8px); }
.dz-woo--checkout #order_review table.shop_table thead { display: none; }
.dz-woo--checkout #order_review .product-name {
  font-weight: 700; color: var(--e-global-color-primary);
}
.dz-woo--checkout #order_review tbody td {
  border-bottom: 1px solid var(--e-global-color-line) !important; padding: 14px 0;
}

/* Zahlungsarten als Auswahlkaesten (.choice) */
.dz-woo #payment { background: none !important; border-radius: 0 !important; }
.dz-woo #payment ul.payment_methods { border: none; padding: 0; margin: 0 0 16px; }
.dz-woo #payment ul.payment_methods li {
  list-style: none;
  border: 1px solid var(--e-global-color-line_strong);
  background: var(--e-global-color-white);
  padding: 16px; margin: 0 0 8px;
}
.dz-woo #payment ul.payment_methods li:has(input:checked) {
  border-color: var(--e-global-color-primary);
  background: var(--e-global-color-paper);
}
.dz-woo #payment ul.payment_methods li label {
  font-weight: 700; color: var(--e-global-color-primary);
  font-family: var(--e-global-typography-small-font-family), sans-serif;
  font-size: var(--e-global-typography-small-font-size);
}
.dz-woo #payment div.payment_box {
  background: transparent !important; padding: 8px 0 0 !important; margin: 0 !important;
  color: var(--e-global-color-accent);
  font-size: var(--e-global-typography-meta-font-size);
}
.dz-woo #payment div.payment_box::before { display: none !important; }
.dz-woo #payment .place-order { padding: 16px 0 0 !important; }
.dz-woo #payment #place_order,
.dz-woo #place_order {
  display: block; width: 100%; float: none;
  padding: 20px 34px !important; font-size: 15px !important;
}
/* Rechtliche Checkboxen wie .checkline */
.dz-woo .wc-gzd-checkbox-placeholder label,
.dz-woo .woocommerce-terms-and-conditions-wrapper label,
.dz-woo p.form-row.checkbox-legal label {
  font-size: var(--e-global-typography-small-font-size);
  color: var(--e-global-color-text);
  line-height: 1.6;
}

/* --- KONTO: Anmelden weiss mit Rahmen, Registrieren in Paper -------------- */
.dz-woo--account #customer_login {
  display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start;
}
.dz-woo--account #customer_login::before,
.dz-woo--account #customer_login::after { display: none; }
.dz-woo--account #customer_login .u-column1,
.dz-woo--account #customer_login .u-column2 { width: auto; float: none; padding: 32px; }
.dz-woo--account #customer_login .u-column1 { border: 1px solid var(--e-global-color-line_strong); }
.dz-woo--account #customer_login .u-column2 { background: var(--e-global-color-paper); }
.dz-woo--account form.login, .dz-woo--account form.register {
  border: none !important; padding: 0 !important; margin: 0 !important; border-radius: 0 !important;
}
.dz-woo--account form.register .button {
  background: transparent !important; color: var(--e-global-color-primary) !important;
  border: 1px solid var(--e-global-color-primary) !important;
}
.dz-woo--account form.register .button:hover {
  background: var(--e-global-color-primary) !important; color: var(--e-global-color-white) !important;
}
.dz-woo--account .woocommerce-MyAccount-navigation { width: 240px !important; min-width: 0; flex: none; }

/* --- PRODUKTSEITE --------------------------------------------------------- */
.dz-kurzbeschreibung .dz-lead,
.woocommerce-product-details__short-description .dz-lead {
  font-family: var(--e-global-typography-lead-font-family), sans-serif;
  font-size: var(--e-global-typography-lead-font-size);
  font-weight: var(--e-global-typography-lead-font-weight);
  line-height: var(--e-global-typography-lead-line-height);
  color: var(--e-global-color-text);
  margin-bottom: 16px;
}
/* Menge + Button in einer Zeile, Button fuellt den Rest */
.dz-kaufen form.cart,
.dz-kaufen .elementor-add-to-cart form.cart {
  display: flex !important; gap: 12px; align-items: stretch; margin: 0 !important;
}
.dz-kaufen .quantity { margin: 0 !important; }
.dz-kaufen .quantity .qty {
  width: 72px !important; min-height: 52px; height: 100%;
  text-align: center;
  font-family: var(--e-global-typography-price-font-family), monospace;
  border: 1px solid var(--e-global-color-line_strong) !important;
}
.dz-kaufen button.single_add_to_cart_button,
.dz-kaufen .elementor-button {
  flex: 1; width: 100%; min-height: 52px; justify-content: center;
}
.dz-kaufen .elementor-button-icon { display: none; }
.dz-breit, .dz-breit .elementor-button { width: 100%; }
.dz-breit .elementor-button { justify-content: center; }

/* Attribute + Detailzeilen: Label (Mono) oben, Wert darunter, Linien */
.dz-attribute table.woocommerce-product-attributes { border: none; margin: 0; }
.dz-attribute table.woocommerce-product-attributes tr,
.dz-details .dz-detail {
  display: block;
  border-top: 1px solid var(--e-global-color-line);
  padding: 16px 0;
}
.dz-attribute table.woocommerce-product-attributes th,
.dz-attribute table.woocommerce-product-attributes td {
  display: block; width: auto; padding: 0; border: none; background: none !important;
  text-align: left;
}
.dz-attribute table.woocommerce-product-attributes th,
.dz-details .dz-detail__label {
  display: block;
  font-family: var(--e-global-typography-accent-font-family), monospace;
  font-size: var(--e-global-typography-accent-font-size);
  font-weight: var(--e-global-typography-accent-font-weight);
  letter-spacing: var(--e-global-typography-accent-letter-spacing);
  text-transform: uppercase;
  color: var(--e-global-color-accent);
}
.dz-attribute table.woocommerce-product-attributes td,
.dz-details .dz-detail__wert {
  display: block; margin-top: 6px;
  font-family: var(--e-global-typography-small-font-family), sans-serif;
  font-size: var(--e-global-typography-small-font-size);
  color: var(--e-global-color-text);
  font-style: normal;
}
.dz-attribute table.woocommerce-product-attributes td p { margin: 0; }
.dz-details .dz-detail:last-child { border-bottom: 1px solid var(--e-global-color-line); }
.dz-attribute + .elementor-widget .dz-details .dz-detail:first-child { border-top: none; }

/* Galerie: grosses Cover mit Schatten, Vorschaubilder im 3er-Raster */
.dz-galerie .woocommerce-product-gallery { width: 100% !important; float: none !important; }
.dz-galerie .woocommerce-product-gallery__wrapper img { box-shadow: 0 4px 24px rgba(0,0,0,0.14); }
.dz-galerie .flex-control-thumbs {
  display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 12px !important;
}
.dz-galerie .flex-control-thumbs li { width: auto !important; margin: 0 !important; }
.dz-galerie .flex-control-thumbs img {
  border: 1px solid var(--e-global-color-line); opacity: 1 !important;
}
.dz-galerie .flex-control-thumbs img.flex-active { border-color: var(--e-global-color-primary); }

/* Leseprobe: Siegel + FR (Ink) + DE (Grau), drei Spalten */
.dz-leseprobe { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.dz-leseprobe__haiku { display: flex; flex-direction: column; gap: 16px; }
.dz-siegel {
  width: 34px; height: 34px; display: grid; place-items: center;
  background: var(--e-global-color-secondary);
  color: var(--e-global-color-primary);
  font-family: var(--e-global-typography-accent-font-family), monospace;
  font-size: 13px;
}
.dz-leseprobe p { margin: 0; font-weight: 300; line-height: 1.7; }
.dz-leseprobe p[lang="fr"] { color: var(--e-global-color-primary); }
.dz-leseprobe p[lang="de"] { color: var(--e-global-color-accent); }

/* Links auf dunklem Grund (Newsletter) */
.dz-auf-dunkel a { color: var(--e-global-color-grey_light); border-bottom: 1px solid var(--e-global-color-accent); }
.dz-auf-dunkel a:hover { color: var(--e-global-color-white); }

/* --- Breakpoints ---------------------------------------------------------- */
@media (max-width: 1023px) {
  .dz-woo--cart .woocommerce,
  .dz-woo--checkout form.checkout { grid-template-columns: 1fr; gap: 40px; }
  .dz-woo--checkout #customer_details,
  .dz-woo--checkout #order_review_heading,
  .dz-woo--checkout #order_review { grid-column: 1; grid-row: auto; }
  .dz-leseprobe { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
  .dz-woo--account #customer_login { grid-template-columns: 1fr; gap: 24px; }
  .dz-woo--account #customer_login .u-column1,
  .dz-woo--account #customer_login .u-column2 { padding: 24px; }
  .dz-woo .cart_totals, .dz-woo #order_review { padding: 24px; }
  .dz-woo--checkout .form-row-first, .dz-woo--checkout .form-row-last { width: 100%; }
  /* Warenkorb-Zeilen als Bloecke */
  .dz-woo--cart table.cart thead { display: none; }
  .dz-woo--cart table.cart tr.cart_item {
    display: grid; grid-template-columns: 72px 1fr auto; gap: 8px 16px;
    padding: 20px 0; border-bottom: 1px solid var(--e-global-color-line);
  }
  .dz-woo--cart table.cart tr.cart_item td { border: none; padding: 0; display: block; }
  .dz-woo--cart table.cart tr.cart_item td::before { display: none; }
  .dz-woo--cart table.cart .product-thumbnail { grid-row: 1 / span 3; width: auto; display: block !important; }
  .dz-woo--cart table.cart .product-remove { grid-column: 3; grid-row: 1; text-align: right; }
  .dz-woo--cart table.cart .product-name { grid-column: 2; grid-row: 1; }
  .dz-woo--cart table.cart .product-quantity { grid-column: 2; grid-row: 2; text-align: left !important; }
  .dz-woo--cart table.cart .product-subtotal { grid-column: 2 / span 2; grid-row: 3; text-align: left !important; }
  .dz-leseprobe { grid-template-columns: 1fr; }
}

/* wc-add-to-cart (FR-Produktseite) legt Menge + Button in einen eigenen Halter */
.dz-kaufen .e-atc-qty-button-holder {
  display: flex; flex: 1 1 100%; width: 100%; gap: 12px; align-items: stretch;
}
.dz-kaufen .e-atc-qty-button-holder .elementor-button {
  display: flex; align-items: center; justify-content: center;
}

/* Konto: Anmelden ist der Hauptbutton (Sable), Registrieren der Umriss */
.dz-woo--account form.login .button {
  background: var(--e-global-color-secondary) !important;
  color: var(--e-global-color-primary) !important;
  border: 1px solid var(--e-global-color-secondary) !important;
}
.dz-woo--account form.login .button:hover {
  background: var(--e-global-color-primary) !important;
  color: var(--e-global-color-white) !important;
  border-color: var(--e-global-color-primary) !important;
}
@media (max-width: 767px) {
  .dz-woo--cart table.cart tr.cart_item td.product-price { display: none !important; }
}

/* --- R9: Textblock ohne Luft nach dem letzten Absatz ------------------ */
/* Sonst addiert sich der Absatzabstand zum Container-Abstand (Hero, Seitenkopf). */
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }

/* --- R9: Kasse, Checkbox "abweichende Lieferadresse" als ruhige Zeile ---- */
.woocommerce-checkout #ship-to-different-address {
  font-family: var(--e-global-typography-text-font-family), sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: var(--e-global-typography-text-font-weight);
  letter-spacing: 0;
  text-transform: none;
  margin: 8px 0 24px;
}
.woocommerce-checkout #ship-to-different-address label {
  display: inline-flex; align-items: center; gap: 10px; cursor: pointer;
}
.woocommerce-checkout #ship-to-different-address input { margin: 0; accent-color: var(--e-global-color-primary); }
.woocommerce-checkout .woocommerce-shipping-fields .shipping_address { margin-bottom: 24px; }

/* ==========================================================================
   RUNDE 10 (02.10.2026): Kasse, Warenkorb, Gutscheine, Dankeseite
   ========================================================================== */

/* Germanized färbt Bestelltabellen grau (#eee): überall raus */
.woocommerce-checkout .shop_table,
.woocommerce-order .shop_table,
.dz-woo .shop_table { background-color: transparent !important; }

/* "— ODER —" unter den Express-Buttons (Stripe) weg */
#wc-stripe-express-checkout-button-separator,
#wc-stripe-payment-request-button-separator { display: none !important; }
#wc-stripe-express-checkout-element { margin-bottom: 24px; }

/* Kasse: rechte Spalte ca. 50 % breiter (360 -> 540 px) */
.dz-woo--checkout form.checkout { grid-template-columns: minmax(0, 1fr) 540px; gap: 0 56px; }
.dz-woo--checkout #order_payment_heading {
  font-family: var(--e-global-typography-h3-font-family), sans-serif;
  font-size: var(--e-global-typography-h3-font-size);
  font-weight: var(--e-global-typography-h3-font-weight);
  color: var(--e-global-color-primary);
  margin: 0 0 16px;
}

/* Zahlungsarten: ein ruhiger Kasten statt drei verschachtelter */
.dz-woo #payment ul.payment_methods li.payment_method_stripe { border: none; background: transparent; padding: 0; }
.dz-woo #payment ul.payment_methods li.wc_payment_method:only-child > input,
.dz-woo #payment ul.payment_methods li.wc_payment_method:only-child > label { display: none; }
.dz-woo #payment fieldset { border: none; padding: 0; margin: 0; min-width: 0; }
.dz-woo #payment div.payment_box.payment_method_stripe { padding: 0 !important; }
.dz-woo #payment .woocommerce-SavedPaymentMethods-saveNew label { font-weight: 400; color: var(--e-global-color-text); }

/* Kleines Buchbild in Kasse/Warenkorb: ganzes Cover, nicht beschnitten */
.dz-woo #order_review img,
.dz-woo--cart table.cart .product-thumbnail img {
  width: 56px !important; height: auto !important; max-width: none;
  object-fit: contain; border: 1px solid var(--e-global-color-line);
}

/* Gutschein-Hinweis und -Formular (WooCommerce) */
.dz-woo .woocommerce-form-coupon-toggle .woocommerce-info {
  background: var(--e-global-color-paper) !important;
  border: none !important; border-radius: 0 !important;
  padding: 16px 20px !important; margin: 0 0 32px !important;
  font-family: var(--e-global-typography-small-font-family), sans-serif;
  font-size: var(--e-global-typography-small-font-size);
  color: var(--e-global-color-text);
}
.dz-woo .woocommerce-form-coupon-toggle .woocommerce-info::before { display: none !important; }
.dz-woo .woocommerce-form-coupon-toggle .woocommerce-info a {
  color: var(--e-global-color-primary); text-decoration: underline; text-underline-offset: 3px;
}
.dz-woo form.checkout_coupon {
  display: flex; gap: 8px; align-items: stretch; flex-wrap: wrap;
  border: 1px solid var(--e-global-color-line_strong) !important; border-radius: 0 !important;
  padding: 20px !important; margin: -16px 0 32px !important;
}
.dz-woo form.checkout_coupon > p:not(.form-row) { flex: 1 0 100%; margin: 0 0 4px; }
.dz-woo form.checkout_coupon .form-row { width: auto !important; float: none !important; margin: 0 !important; }
.dz-woo form.checkout_coupon .form-row-first { flex: 1 1 240px; }
.dz-woo--cart td.actions .coupon { display: flex; gap: 8px; }
.dz-woo--cart td.actions .coupon .input-text { width: 220px !important; }

/* Guthaben-Block (Advanced Coupons) */
.dz-woo .acfw-checkout-ui-block,
.dz-woo .acfw-accordions { margin: 16px 0 !important; padding: 0 !important; background: none !important; }
.dz-woo .acfw-accordion {
  border: 1px solid var(--e-global-color-line_strong) !important;
  background: var(--e-global-color-white) !important;
  border-radius: 0 !important; box-shadow: none !important; margin: 0 0 8px !important;
}
.dz-woo .acfw-accordion h3 {
  display: flex !important; justify-content: space-between; align-items: center;
  margin: 0 !important; padding: 14px 16px !important; cursor: pointer;
  background: transparent !important;
  font-family: var(--e-global-typography-small-font-family), sans-serif !important;
  font-size: var(--e-global-typography-small-font-size) !important;
  font-weight: 700 !important; line-height: 1.4 !important;
  color: var(--e-global-color-primary) !important;
}
.dz-woo .acfw-accordion h3 .caret img { width: 10px !important; height: auto !important; }
.dz-woo .acfw-accordion-inner { padding: 0 16px !important; }
.dz-woo .acfw-accordion-content { padding: 0 0 16px !important; font-size: var(--e-global-typography-small-font-size); color: var(--e-global-color-text); }
.dz-woo .acfw-accordion-content > div { display: flex; gap: 8px; flex-wrap: wrap; }
.dz-woo .acfw-accordion input.input-text { flex: 1 1 140px; border-radius: 0 !important; }

/* ---------- Dankeseite (Kasse > order-received) ---------- */
body.woocommerce-order-received .dz-seitenkopf { display: none !important; }
.dz-woo .woocommerce-order { max-width: 880px; padding-top: 24px; }
.dz-woo .woocommerce-order .woocommerce-thankyou-order-received {
  font-family: var(--e-global-typography-primary-font-family), sans-serif;
  font-size: var(--e-global-typography-primary-font-size);
  font-weight: var(--e-global-typography-primary-font-weight);
  line-height: var(--e-global-typography-primary-line-height);
  letter-spacing: var(--e-global-typography-primary-letter-spacing);
  margin: 0 0 32px;
}
/* kürzer: E-Mail und Zahlungsart stehen ohnehin unten in der Tabelle */
.dz-woo .woocommerce-order-overview__email,
.dz-woo .woocommerce-order-overview__payment-method { display: none !important; }
.dz-woo .woocommerce-order ul.woocommerce-order-overview { margin-bottom: 40px; }
.dz-woo .woocommerce-order-details { margin: 0 0 40px; }
.dz-woo .woocommerce-order-details table.shop_table tfoot th,
.dz-woo .woocommerce-order-details table.shop_table tfoot td {
  background: transparent !important; border: none; border-bottom: 1px solid var(--e-global-color-line);
  padding: 12px 0; font-family: var(--e-global-typography-small-font-family), sans-serif;
  font-size: var(--e-global-typography-small-font-size); font-weight: 400; color: var(--e-global-color-text);
}
.dz-woo .woocommerce-order-details table.shop_table tfoot td { text-align: right; }
.dz-woo .woocommerce-order-details .product-total,
.dz-woo .woocommerce-order-details thead th:last-child { text-align: right; padding-right: 0; }
.dz-woo .woocommerce-order-details .order-actions-button {
  background: transparent !important; color: var(--e-global-color-primary) !important;
  border: 1px solid var(--e-global-color-primary) !important; padding: 12px 20px !important;
}
.dz-woo .woocommerce-order-details .order-actions-button:hover {
  background: var(--e-global-color-primary) !important; color: var(--e-global-color-white) !important;
}
.dz-woo .woocommerce-customer-details .woocommerce-columns--addresses {
  display: grid; grid-template-columns: 1fr 1fr; gap: 24px;
}
.dz-woo .woocommerce-customer-details .woocommerce-columns--addresses::before,
.dz-woo .woocommerce-customer-details .woocommerce-columns--addresses::after { display: none; }
.dz-woo .woocommerce-customer-details .woocommerce-column { width: auto !important; float: none !important; padding: 0 !important; }
.dz-woo .woocommerce-customer-details h2 { margin-top: 0; }
.dz-woo .woocommerce-customer-details address { background: var(--e-global-color-paper); border: none; padding: 20px 24px; line-height: 1.6; }
@media (max-width: 1024px) {
  .dz-woo--checkout form.checkout { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .dz-woo .woocommerce-customer-details .woocommerce-columns--addresses { grid-template-columns: 1fr; }
  .dz-woo .woocommerce-order ul.woocommerce-order-overview li { flex: 1 1 100%; border-right: none; border-bottom: 1px solid var(--e-global-color-line); }
}
/* "via Versand" hinter dem Versandbetrag ist bei nur einer Versandart doppelt */
.dz-woo .shipped_via { display: none; }
.dz-woo .woocommerce-customer-details address,
.dz-woo .woocommerce-order-details td,
.dz-woo .woocommerce-order-details th {
  font-family: var(--e-global-typography-small-font-family), sans-serif;
  font-size: var(--e-global-typography-small-font-size);
}
.dz-woo .woocommerce-order-details tfoot th { font-weight: 400 !important; }

/* Express-Buttons (Apple/Google/Amazon Pay, Link): Position siehe R12 */
/* R12: Express-Buttons wieder ganz oben in der rechten Spalte, darunter die Bestellbox */
.dz-woo--checkout form.checkout { grid-template-rows: auto auto auto 1fr; }
.dz-woo--checkout #customer_details { grid-row: 1 / span 4; }
.dz-woo--checkout #wc-stripe-express-checkout-element { grid-column: 2; grid-row: 1; align-self: start; margin: 0 0 24px; }
.dz-woo--checkout #order_review_heading { grid-row: 2; }
.dz-woo--checkout #order_review { grid-row: 3; }
@media (max-width: 1024px) {
  .dz-woo--checkout #wc-stripe-express-checkout-element { grid-column: 1; grid-row: auto; }
  .dz-woo--checkout #customer_details { grid-row: auto; }
}
/* Versandbetrag ohne Auswahlliste-Optik */
.dz-woo ul#shipping_method { margin: 0; padding: 0; list-style: none; }
.dz-woo ul#shipping_method li { margin: 0; padding: 0; text-align: right; }

/* R12: In der Bestellbox: Zahlungsart, Bestellübersicht, AGB-Checkbox direkt über "Jetzt kaufen" */
.dz-woo--checkout #order_review { display: flex; flex-direction: column; }
.dz-woo--checkout #order_review > table.shop_table { order: 2; }
.dz-woo--checkout #order_review > .wc-gzd-checkbox-placeholder { order: 3; }
.dz-woo--checkout #order_review > .wc-gzd-order-submit { order: 4; }
.dz-woo--checkout #order_review > [id^="ppc-button"] { order: 5; }
.dz-woo--checkout #order_review > .wc-gzd-checkbox-placeholder-legal { margin-top: 24px; }
@media (max-width: 1024px) {
  .dz-woo--checkout form.checkout { grid-template-rows: none; }
  .dz-woo--checkout #customer_details,
  .dz-woo--checkout #order_review_heading,
  .dz-woo--checkout #order_review,
  .dz-woo--checkout #wc-stripe-express-checkout-element { grid-column: 1; grid-row: auto; }
}
/* R12: Warenkorb ohne Versand-Hinweistext, nur der Betrag */
.dz-woo .woocommerce-shipping-totals .woocommerce-shipping-destination { display: none !important; }

/* R13 Mobil: Warenkorb darf nie breiter als der Bildschirm werden */
@media (max-width: 1024px) {
  .dz-woo--cart .woocommerce { grid-template-columns: minmax(0, 1fr) !important; }
  .dz-woo--cart table.cart { width: 100%; table-layout: fixed; }
}
@media (max-width: 767px) {
  .dz-woo--cart table.cart tr.cart_item { grid-template-columns: 72px minmax(0, 1fr) 32px !important; }
  .dz-woo--cart table.cart tr.cart_item td { text-align: left !important; }
  .dz-woo--cart table.cart td.actions,
  .dz-woo--cart table.cart td.actions .coupon { display: flex; flex-wrap: wrap; gap: 8px; width: 100%; }
  .dz-woo--cart table.cart td.actions .coupon .input-text { flex: 1 1 160px; width: auto !important; min-width: 0; }
  .dz-woo--cart table.cart td.actions .coupon .button { flex: 1 1 auto; }
}

/* R13 Mobil: Mini-Überschrift (Strich + Label) bleibt auch auf Tablet/Handy eine Zeile */
@media (max-width: 1024px) {
  /* Strich = leerer Container direkt vor der Label-Überschrift (kein verschachteltes :has) */
  .e-con:first-child:has(+ .elementor-widget-heading):not(:has(> *)) {
    --width: 22px !important; width: 22px !important; flex: 0 0 22px !important; min-height: 3px;
  }
  .dz-woo--cart table.cart td.actions .coupon .input-text { margin: 0 !important; }
}
/* R13 Mobil: iPhone zoomt bei Eingabefeldern unter 16 px automatisch hinein */
@media (max-width: 767px) {
  input[type="text"], input[type="email"], input[type="tel"], input[type="password"],
  input[type="number"], input[type="search"], select, textarea,
  .elementor-field-group .elementor-field { font-size: 16px !important; }
}

/* R13 Cookie-Banner (Complianz) im Seitendesign.
   Akzeptieren und Ablehnen bewusst gleich gewichtet (CNIL / deutsche Aufsichtsbehörden). */
.cmplz-cookiebanner {
  border-radius: 0 !important; box-shadow: 0 8px 32px rgba(20, 19, 16, 0.12) !important;
  font-family: var(--e-global-typography-text-font-family), sans-serif !important;
  color: var(--e-global-color-text) !important;
}
.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-title,
.cmplz-cookiebanner .cmplz-category-title,
.cmplz-cookiebanner .cmplz-description { font-family: inherit !important; color: var(--e-global-color-text) !important; }
.cmplz-cookiebanner .cmplz-message { font-size: 14px !important; line-height: 1.6 !important; }
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
  border-radius: 0 !important; font-family: var(--e-global-typography-button-font-family), sans-serif !important;
  font-size: 13px !important; font-weight: 700 !important; letter-spacing: 0.12em !important;
  text-transform: uppercase !important; height: auto !important; padding: 14px 20px !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-accept,
.cmplz-cookiebanner .cmplz-btn.cmplz-deny {
  background: var(--e-global-color-secondary) !important; border: 1px solid var(--e-global-color-secondary) !important;
  color: var(--e-global-color-primary) !important;
}
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,
.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences {
  background: var(--e-global-color-white) !important; border: 1px solid var(--e-global-color-primary) !important;
  color: var(--e-global-color-primary) !important;
}
.cmplz-cookiebanner .cmplz-btn:hover { background: var(--e-global-color-primary) !important; border-color: var(--e-global-color-primary) !important; color: var(--e-global-color-white) !important; }
.cmplz-cookiebanner .cmplz-links a, .cmplz-cookiebanner a.cmplz-link { color: var(--e-global-color-primary) !important; }
.cmplz-cookiebanner .cmplz-close { color: var(--e-global-color-primary) !important; }

/* R14 Mobil-Vorschläge (03.10.2026) */
/* Konto-Eintrag nur im Handy-Menü (am Desktop gibt es das Konto-Symbol) */
.elementor-nav-menu--main .dz-nur-mobil { display: none !important; }
.dz-attribute table.woocommerce-product-attributes td { padding: 0 !important; }
@media (max-width: 767px) {
  /* Produktdetails kompakt: Bezeichnung links, Wert rechts */
  .dz-attribute table.woocommerce-product-attributes tr,
  .dz-details .dz-detail {
    display: grid !important; grid-template-columns: 112px minmax(0, 1fr); gap: 12px; align-items: baseline;
    padding: 12px 0 !important;
  }
  .dz-attribute table.woocommerce-product-attributes td,
  .dz-details .dz-detail__wert { margin-top: 0 !important; }
  /* Tippflächen: Footer-Links und Sprachwahl mindestens ~40 px hoch */
  [data-elementor-type="footer"] .elementor-widget-text-editor p { margin: 0 !important; }
  [data-elementor-type="footer"] .elementor-widget-text-editor a { display: inline-block; padding: 10px 0; }
  .cpel-switcher__lang a {
    display: inline-flex !important; align-items: center !important; min-height: 40px; padding: 0 6px;
    margin: -10px 0 !important; /* große Tippfläche, Leiste bleibt so hoch wie vorher */
  }
  /* Startseite: Buchcover kleiner, damit der Titel früher sichtbar ist */
  .dz-hero-cover { width: 70% !important; max-width: 70% !important; margin: 0 auto !important; }
}

/* R15 Header: Konto-Symbol exakt auf Höhe des Warenkorbs (kein Zeilenabstand unter dem Symbol) */
[data-elementor-type="header"] .elementor-widget-icon .elementor-icon-wrapper { line-height: 0; display: flex; align-items: center; }
[data-elementor-type="header"] .elementor-widget-icon .elementor-icon { display: inline-flex; }

/* R16: Widerrufsbutton nur im Footer (Link "Vertrag widerrufen"), nicht als eigene Zeile darunter */
body > .eu-owb-order-withdraw-from-contract-button,
.elementor-location-footer ~ .eu-owb-order-withdraw-from-contract-button,
[data-elementor-type="footer"] ~ .eu-owb-order-withdraw-from-contract-button { display: none !important; }
/* R16: Tabellenköpfe (Warenkorb, Kasse, Konto) mittig zwischen den Linien */
.dz-woo table.shop_table thead th { padding-top: 12px !important; padding-bottom: 12px !important; vertical-align: middle; }
.dz-woo table.shop_table { border-top: 1px solid var(--e-global-color-line_strong) !important; }

/* R16: Button in Hinweisleisten ("Warenkorb anzeigen" / "Voir le panier") im Seitendesign statt grauer Pille */
.woocommerce-message .button, .woocommerce-message a.button, .woocommerce-info .button, .woocommerce-info a.button {
  border-radius: 0 !important; background: transparent !important; color: var(--e-global-color-primary) !important;
  border: 1px solid var(--e-global-color-primary) !important; box-shadow: none !important;
  font-family: var(--e-global-typography-button-font-family), sans-serif !important;
  font-size: 12px !important; font-weight: 700 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important;
  padding: 10px 16px !important; line-height: 1.2 !important;
}
.woocommerce-message .button:hover, .woocommerce-message a.button:hover, .woocommerce-info .button:hover {
  background: var(--e-global-color-primary) !important; color: var(--e-global-color-white) !important;
}

/* R16 Einheitlichkeit: alles in Karla und in Palettenfarben (gefunden im Komplett-Check) */
.woocommerce-breadcrumb, .woocommerce-breadcrumb a,
.dz-kurzbeschreibung p, .woocommerce-product-details__short-description p,
.woocommerce-LostPassword a, .lost_password a,
.wc-gzd-additional-info, .wc-gzd-additional-info a, .wc-gzd-cart-info, .delivery-time-info,
.delivery-time-inner, .delivery-time-data, .shipping-costs-info, .price-unit,
.order-withdrawal-request label, .order-withdrawal-request input, .order-withdrawal-request textarea {
  font-family: var(--e-global-typography-text-font-family), sans-serif !important;
}
.woocommerce-breadcrumb, .woocommerce-breadcrumb a { color: var(--e-global-color-accent) !important; }
.wc-gzd-additional-info, .wc-gzd-additional-info a, .wc-gzd-cart-info, .delivery-time-info,
.delivery-time-inner, .delivery-time-data { color: var(--e-global-color-accent) !important; font-size: var(--e-global-typography-meta-font-size); }
.order-withdrawal-request label { color: var(--e-global-color-text) !important; }
/* Pflicht-Sternchen in Tinte statt WooCommerce-Rot */
.required, abbr.required, .woocommerce form .form-row .required { color: var(--e-global-color-primary) !important; text-decoration: none !important; }
/* Länderauswahl (select2) in Textfarbe */
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--e-global-color-text) !important; font-family: var(--e-global-typography-text-font-family), sans-serif !important;
}
@media (max-width: 767px) {
  .dz-woo--account #customer_login { grid-template-columns: minmax(0, 1fr) !important; gap: 24px; }
  .dz-woo--account #customer_login .u-column1,
  .dz-woo--account #customer_login .u-column2 { box-sizing: border-box; padding: 24px 20px !important; max-width: 100%; }
}

/* R17 Mobil (03.10.2026) */
@media (max-width: 767px) {
  /* Schwarze Leiste: Text links, Flaggen rechts, Platz in der Mitte */
  .elementor-element-dz00004 { justify-content: space-between !important; }
  /* Warenkorb: Gutscheinfeld und -button bündig auf voller Breite */
  .dz-woo--cart table.cart td.actions { padding-left: 0 !important; padding-right: 0 !important; }
  .dz-woo--cart table.cart td.actions .coupon { flex-direction: column; align-items: stretch; width: 100% !important; float: none !important; }
  .dz-woo--cart table.cart td.actions .coupon .input-text,
  .dz-woo--cart table.cart td.actions .coupon .button {
    width: 100% !important; max-width: 100%; margin: 0 !important; box-sizing: border-box; float: none !important; flex: none;
  }
}
@media (max-width: 1024px) {
  /* Kasse: Express-Zahlarten ganz unten, unter Zahlungsblock und Kaufbutton */
  .dz-woo--checkout #wc-stripe-express-checkout-element { order: 10 !important; margin: 24px 0 0 !important; }
}
/* "Warenkorb anzeigen"-Link, den WooCommerce nach dem Hinzufügen neben den Button setzt: nicht nötig, der Seitenwarenkorb öffnet sich */
.elementor-button + .added_to_cart, .elementor-button-wrapper .added_to_cart { display: none !important; }

/* R18 Header mobil: Warenkorb-Zahl näher am Symbol, Warenkorb näher am Burger-Menü */
@media (max-width: 767px) {
  [data-elementor-type="header"] #elementor-menu-cart__toggle_button { gap: 4px !important; }
  [data-elementor-type="header"] #elementor-menu-cart__toggle_button .elementor-button-icon-qty { margin-right: 0 !important; }
  .elementor-element-dz0000a { margin-right: -14px !important; }
}

/* R19 Warenkorb: Mengenwahl mit Minus/Plus (Handy und Desktop) */
.dz-woo--cart .quantity.dz-menge {
  display: inline-flex !important; align-items: stretch; border: 1px solid var(--e-global-color-line_strong);
  background: var(--e-global-color-white); height: 44px;
}
.dz-woo--cart .quantity.dz-menge input.qty {
  width: 44px !important; height: 100% !important; border: none !important; padding: 0 !important; margin: 0 !important;
  text-align: center; font-family: var(--e-global-typography-price-font-family), monospace; font-size: 16px !important;
  background: transparent !important; -moz-appearance: textfield; appearance: textfield;
}
.dz-woo--cart .quantity.dz-menge input.qty::-webkit-outer-spin-button,
.dz-woo--cart .quantity.dz-menge input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.dz-woo--cart .dz-menge__knopf {
  width: 44px; border: none !important; background: transparent !important; color: var(--e-global-color-primary) !important;
  font-family: var(--e-global-typography-text-font-family), sans-serif; font-size: 20px; line-height: 1;
  padding: 0 !important; cursor: pointer; border-radius: 0 !important; box-shadow: none !important;
}
.dz-woo--cart .dz-menge__knopf:hover { background: var(--e-global-color-paper) !important; }
.dz-woo--cart .dz-menge__knopf:focus-visible { outline: 1px solid var(--e-global-color-primary); outline-offset: -2px; }

/* R23: Formularmeldungen im Newsletter-Block (globale Vorlage 373, schwarzer Grund) in Weiß */
.elementor-373 .elementor-message,
.elementor-373 .elementor-message::before { color: var(--e-global-color-white) !important; }/* End custom CSS */