.wcml-cart-dialog .ui-widget-overlay.ui-front{
	background: rgb(0,0,0,0.26)!important;
}

.wcml-cart-dialog .ui-dialog-title{
color: #333333;
    font-family: "Roboto Condensed", Sans-serif;
    font-size: 36px;
    font-weight: 600;
}

.wcml-cart-dialog .ui-dialog-titlebar{
height:auto!important;
}

#wcml-cart-dialog-confirm p{
	color: #333333;
    	font-family: "Roboto Condensed", Sans-serif;
    	font-size: 18px;
    	font-weight: 400;
}

.wcml-cart-dialog [type=button]:focus, 
.wcml-cart-dialog [type=button]:hover,
.wcml-cart-dialog button{
	height: auto!important;
	font-family: "Roboto Condensed", Sans-serif;
    	font-size: 18px;
    	font-weight: 400;
    	background-color: #0094D0;
    	color: white!important;
    	border-color: #0094D0;
}

body .onetap-container-toggle .onetap-toggle img.design-size2 {
    padding: 15px !important;
    width: 60px !important;
    height: 60px !important;
}

button#place_order:disabled,
button#place_order.disabled {
  opacity: 0.45;
  cursor: not-allowed;
  filter: grayscale(100%);
}
.xoo-el-form-container button.btn.button.xoo-el-action-btn{
	padding:0!important;
}

.button.alt.dsy-open-el-login{
    font-family: "Roboto Condensed", Sans-serif;
    font-size: 16px;
    font-weight: 300;
    padding: 12px 30px;
    border-radius: 25px;
    border: none;
    background-color: #47AAE8 !important
}

#simplyduty-ack-box .de-alert{
	background: #ffffff!important;
  border-width: 5px !important;
}

 #dsy-identity-check{
		margin-top: 6px;
    font-weight: bold !important;
    color: rgb(176, 0, 32);
    background: #ffffff !important;
    border-width: 5px !important;
    border-color: #d12b2b;
    border: 5px solid;
    padding: 20px;
    border-radius: 10px;
}

#dsy-identity-check.dsy-identity-warning:before{
	display:none!important;
}

tr.cart_item.wc-gzd-cart-item-has-thumbnail td.product-name{
	min-width: 220px!important;
}

.base-id-6150.currency-usd .lieferzeit:after,.base-id-6150.currency-usd .mobile-visible , .base-id-6150.currency-usd .desktop-visible {
	display:none!important;
}

.base-id-6150.currency-usd .pp-table.tablesaw.tablesaw-stack tbody tr:nth-last-child(2) td .pp-table-cell-text, .base-id-6150.currency-usd .pp-table.tablesaw.tablesaw-stack tbody tr:nth-last-child(1) td .pp-table-cell-text{
    display: none!important;
}

.print-50.print-margin-top.dentaleyepad-single-right-mobile{
	display: -webkit-box !important;
display: -ms-flexbox !important;
display: -webkit-flex !important;
display: flex !important;

-webkit-box-orient: vertical !important;
-webkit-box-direction: normal !important;
-ms-flex-direction: column !important;
-webkit-flex-direction: column !important;
flex-direction: column !important;

-webkit-box-pack: center !important;
-ms-flex-pack: center !important;
-webkit-justify-content: center !important;
justify-content: center !important;
}

.button.dep-usd-blocked-btn{

top: -40px!important;
    left: 30px!important;
}

.print-50.print-margin-top.dentaleyepad-single-right-mobile .button.dep-usd-blocked-btn{
	top:0!important;
left:0!important;
}

body.lang-us .software-paket-woo-bestellen .button.product_type_simple.add_to_cart_button.ajax_add_to_cart::before{
    content:none!important;
    display:none!important;
}

body.lang-us .software-paket-woo-bestellen  .button.product_type_simple.add_to_cart_button.ajax_add_to_cart{
	font-size:18px!important;
}

body.lang-us .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__close-button:after,body.lang-us .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__close-button:after{
	content:none!important;
}

body.lang-us .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__close-button:before,body.lang-us .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__close-button:before{
	content: "continue shopping"!important;
font-family: "Roboto Condensed", Sans-serif; font-size: 18px !important; font-weight: 100 !important;
}

nav.onetap-accessibility.onetap-plugin-onetap{
box-shadow:none!important;}

#legal_description{font-family: "Roboto Condensed", Sans-serif;
        font-family: "Roboto Condensed", Sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 25px !important;
    margin-top: 20px;}

.woocommerce-gzd-legal-checkbox-text{
	line-height:10px!important;
}

.login-adjuster .xoo-el-login-tgr.xoo-el-pop-sc{
font-family: "Roboto Condensed", Sans-serif !important;
    font-size: 16px !important;
    font-weight: 300 !important;
    fill: #fff !important;
    color: #fff !important;
    background-color: #0094d0 !important;
    border-radius: 25px 25px 25px 25px !important;
    padding: 8px 35px 8px;
    display: inline-block;}

.form-newsletter button.elementor-button.laub-subbtn.laub-subbtn-next,
.form-newsletter button.elementor-button.laub-subbtn.laub-subbtn-prev,
.form-newsletter button.elementor-button.lauc-subbtn.lauc-subbtn-next,
.form-newsletter button.elementor-button.lauc-subbtn.lauc-subbtn-prev{
        background-color: #0094D0 !important;
}

.woocommerce-checkout #payment ul.payment_methods li.payment_method_paypal img {
    float: None!important;
    margin-left: 5px!important;;
}

.elementor-button.elementor-button--view-cart {
    font-family: "Roboto Condensed", sans-serif;
    font-size: 18px !important;
    font-weight: 100 !important;
    border-radius: 25px;
    background-color: var(--checkout-button-background-color, #69727d);
    color: var(--checkout-button-text-color, #fff);
    display: var(--checkout-button-display, inline-block);
    padding: var(--checkout-button-padding, 15px);
}

.elementor-menu-cart__footer-buttons {
    grid-template-columns: 1fr !important;
}

body.lang-de.woocommerce-cart .cart_totals h2::before {
  content: "Übersicht"!important;
}

body.lang-us.woocommerce-cart .cart_totals h2::before {
  content: "Summary"!important;
}

body.lang-en.woocommerce-cart .cart_totals h2::before {
  content: "Summary"!important;
}

body.lang-it.woocommerce-cart .cart_totals h2::before {
  content: "Riepilogo"!important;
}

body.lang-da.woocommerce-cart .cart_totals h2::before {
  content: "Oversigt"!important;
}

body.lang-fr.woocommerce-cart .cart_totals h2::before {
  content: "Récapitulatif"!important;
}

body.lang-es.woocommerce-cart .cart_totals h2::before {
  content: "Resumen"!important;
}

body.lang-nl.woocommerce-cart .cart_totals h2::before {
  content: "Overzicht"!important;
}

/* =========================================================================
   Produktzeilen (horizontal-flex + software-paket-woo-bestellen) – modern
   Stil der Sparpakete-Seite, Layout bleibt länglich (1 Produkt pro Zeile).
   Global einfügen. Keine Texte, keine Produkt-IDs. Greift NUR auf diesen Seiten
   (base-id = WPML-Basisseite, gilt damit auch für alle Übersetzungen):
   base-id-9776, base-id-8375, base-id-9767, base-id-8669, base-id-12491, base-id-12066, base-id-12303, base-id-12445.
   ========================================================================= */

body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) {
  --pz-navy:#0b1f3a; --pz-text:#34465e; --pz-muted:#6b7c93;
  --pz-blue:#0a8be3; --pz-blue-2:#22a8f0; --pz-tint:#eaf5fd; --pz-light:#f4f7fb;
  --pz-line:#e3eaf3; --pz-line-2:#e1e8f0; --pz-field:#d6e0ec;
  --pz-font:"Roboto Condensed","Roboto",Arial,sans-serif;
  --pz-tile:120px;
}

/* ---------- Karte ---------- */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) > .elementor-widget-wrap {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 28px;
  max-width: none !important;
  margin: 0 0 16px !important;
  padding: 22px 28px !important;
  background: #fff !important;
  border: 1px solid var(--pz-line) !important;
  border-radius: 14px !important;
  box-shadow: 0 1px 2px rgba(16,40,80,.04), 0 10px 28px rgba(16,40,80,.05) !important;
  transition: box-shadow .25s ease, border-color .25s ease;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) > .elementor-widget-wrap:hover {
  border-color: #cfe2f5 !important;
  box-shadow: 0 2px 4px rgba(16,40,80,.05), 0 16px 36px rgba(16,40,80,.09) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) > .elementor-widget-wrap > .elementor-widget {
  margin: 0 !important;
  padding: 0 !important;
}

/* ---------- Bild als Kachel ---------- */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .elementor-widget-image {
  flex: 0 0 var(--pz-tile) !important;
  width: var(--pz-tile) !important;
  max-width: var(--pz-tile) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .elementor-widget-image a {
  position: relative !important;
  display: block !important;
  border-radius: 16px !important;
  background: var(--pz-tint) !important;   /* Fläche hier – dahinter verrechnet das Bild */
  isolation: isolate;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .elementor-widget-image img {
  display: block !important;
  width: var(--pz-tile) !important;
  height: var(--pz-tile) !important;
  max-width: none !important;
  padding: 10px !important;
  object-fit: contain !important;
  border-radius: 16px !important;
  background: transparent !important;
  mix-blend-mode: multiply !important;   /* weiße Bildhintergründe werden zur Fläche */
  transition: transform .3s ease;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .elementor-widget-image a:hover img {
  transform: scale(1.04);
}
/* vorhandenes Lupen-Icon als runder Badge */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .elementor-widget-image a::after {
  position: absolute !important;
  top: 6px !important; right: 6px !important; left: auto !important;
  width: 30px !important; height: 30px !important;
  border-radius: 50% !important;
  background-color: #fff !important;
  box-shadow: 0 3px 10px rgba(16,40,80,.14) !important;
  font-size: 13px !important;
  line-height: 30px !important;
  text-align: center !important;
  color: var(--pz-navy) !important;
  opacity: .9 !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .elementor-widget-image a:hover::after {
  opacity: 1 !important;
}

/* ---------- Produkt-Widget ---------- */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  container: pz / inline-size;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen .elementor-widget-container {
  margin: 0 !important; padding: 0 !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products::before,
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products::after {
  display: none !important;
}

/* Zeile: Name | Beschreibung | Preis | Menge | Button */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product {
  display: grid !important;
  grid-template-columns: minmax(160px, 190px) minmax(240px, 1fr) auto auto auto;
  grid-template-areas:
    "title desc price qty  btn"
    "title desc tax   disc disc"
    "title desc ship  disc disc"
    "title desc .     more more"
    "tbl   tbl  tbl   tbl  tbl";
  align-items: center !important;
  column-gap: 22px;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: white !important;
  box-shadow: none !important;
  text-align: left !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product > a.woocommerce-LoopProduct-link {
  display: contents !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product img,
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .onsale,
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .star-rating {
  display: none !important;
}

/* Name + ID */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product .woocommerce-loop-product__title {
  grid-area: title;
  display: block !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--pz-font) !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -.005em;
  text-align: left !important;
  color: var(--pz-navy) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .woocommerce-loop-product__title .product-sku {
  display: block !important;
  margin: 8px 0 0 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  color: var(--pz-muted) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .woocommerce-loop-product__title .product-sku br {
  display: none !important;
}

/* Beschreibung */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .description {
  grid-area: desc;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--pz-font) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  text-align: left !important;
  color: var(--pz-text) !important;
}

/* Preis mit senkrechter Trennlinie */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .price {
  grid-area: price;
  display: block !important;
  margin: 0 !important;
  padding: 4px 0 4px 22px !important;
  border-left: 1px solid var(--pz-line-2);
  text-align: left !important;
  white-space: nowrap;
  font-family: var(--pz-font) !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -.01em;
  color: var(--pz-navy) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .price :is(.amount, bdi, .woocs_price_code) {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  color: inherit !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .wc-gzd-additional-info {
  margin: 0 !important;
  padding: 0 0 0 22px !important;
  border-left: 1px solid var(--pz-line-2);
  font-family: var(--pz-font) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  text-align: left !important;
  white-space: nowrap;
  color: var(--pz-muted) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .wc-gzd-additional-info.tax-info { grid-area: tax; }
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .wc-gzd-additional-info.shipping-costs-info { grid-area: ship; }
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .wc-gzd-additional-info a {
  color: inherit !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Menge: waagerecht  –  1  + */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen .qib-button-wrapper {
  grid-area: qty;
  min-width: max-content !important;
  flex-shrink: 0 !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  float: none !important;
  height: 48px !important;
  margin: 0 !important;
  border: 1px solid var(--pz-field) !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #fff !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen .qib-button-wrapper .quantity {
  display: flex !important;
  width: auto !important;
  height: 100% !important;
  margin: 0 !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen .qib-button-wrapper button.qib-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--pz-navy) !important;
  font-family: var(--pz-font) !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  cursor: pointer;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen .qib-button-wrapper button.qib-button:hover {
  background: var(--pz-light) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen .qib-button-wrapper .quantity input.qty {
  width: 50px !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-left: 1px solid var(--pz-field) !important;
  border-right: 1px solid var(--pz-field) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--pz-navy) !important;
  font-family: var(--pz-font) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  text-align: center !important;
  box-shadow: none !important;
  -moz-appearance: textfield;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen input.qty::-webkit-outer-spin-button,
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Button – zeigt den echten (übersetzbaren) WooCommerce-Buttontext */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product a.button {
  grid-area: btn;
  min-width: max-content !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px;
  width: 100% !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: linear-gradient(180deg, var(--pz-blue-2) 0%, var(--pz-blue) 100%) !important;
  color: #fff !important;
  font-family: var(--pz-font) !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-transform: none !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-shadow: 0 8px 20px rgba(10,139,227,.26) !important;
  transition: transform .2s ease, box-shadow .2s ease;
}
/* Warenkorb-Icon (ersetzt das alte CSS-„hinzufügen“) */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product a.button::before {
  content: "" !important;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  font-size: 0 !important;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3.5h2.6l2.3 11.2a1.6 1.6 0 0 0 1.6 1.3h8.5a1.6 1.6 0 0 0 1.6-1.2L21 7.5H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.3'/%3E%3Ccircle cx='17.5' cy='20' r='1.3'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3.5h2.6l2.3 11.2a1.6 1.6 0 0 0 1.6 1.3h8.5a1.6 1.6 0 0 0 1.6-1.2L21 7.5H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.3'/%3E%3Ccircle cx='17.5' cy='20' r='1.3'/%3E%3C/svg%3E") center/contain no-repeat;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product a.button:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(10,139,227,.32) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product a.button.loading { opacity: .7 !important; }
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product a.button.added::after { display: none !important; }
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product a.added_to_cart {
  grid-area: more;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  background: none !important;
  font-family: var(--pz-font) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-align: center !important;
  color: var(--pz-blue) !important;
}


/* =========================================================================
   Discount-Button + Staffelpreis-Tabelle (discount-table-ajax.js)
   Button = Zweit-Button unter Menge/Warenkorb, Tabelle = aufklappende Zeile
   in der Karte. Sichtbarkeit steuert weiterhin jQuery (slideToggle) –
   deshalb hier KEIN display auf .awdr-bulk-customizable-table.
   ========================================================================= */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product button.discount-product-id {
  grid-area: disc;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px;
  position: static !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 40px !important;
  margin: 10px 0 0 !important;
  padding: 0 16px !important;
  border: 1px solid #d6e0ec !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--pz-navy) !important;
  font-family: var(--pz-font) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  white-space: nowrap;
  box-shadow: none !important;
  cursor: pointer;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product button.discount-product-id:hover,
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product button.discount-product-id.open {
  background: var(--pz-tint) !important;
  border-color: var(--pz-blue) !important;
  color: var(--pz-blue) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product button.discount-product-id:focus-visible {
  outline: 3px solid rgba(34,168,240,.4) !important;
  outline-offset: 2px;
}
/* Prozent-Badge als Icon (ersetzt das PNG) */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product button.discount-product-id::before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 18px;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  background: currentColor !important;
  background-image: none !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2.5l2.2 1.6 2.7-.2.9 2.6 2.3 1.4-.6 2.6 1.1 2.5-1.9 1.9-.2 2.7-2.6.6-1.6 2.2-2.4-1.2-2.4 1.2-1.6-2.2-2.6-.6-.2-2.7-1.9-1.9 1.1-2.5-.6-2.6 2.3-1.4.9-2.6 2.7.2z'/%3E%3Cpath d='M9 15l6-6'/%3E%3Ccircle cx='9.5' cy='9.5' r='.6' fill='black'/%3E%3Ccircle cx='14.5' cy='14.5' r='.6' fill='black'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2.5l2.2 1.6 2.7-.2.9 2.6 2.3 1.4-.6 2.6 1.1 2.5-1.9 1.9-.2 2.7-2.6.6-1.6 2.2-2.4-1.2-2.4 1.2-1.6-2.2-2.6-.6-.2-2.7-1.9-1.9 1.1-2.5-.6-2.6 2.3-1.4.9-2.6 2.7.2z'/%3E%3Cpath d='M9 15l6-6'/%3E%3Ccircle cx='9.5' cy='9.5' r='.6' fill='black'/%3E%3Ccircle cx='14.5' cy='14.5' r='.6' fill='black'/%3E%3C/svg%3E") center/contain no-repeat;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product button.discount-product-id.loading::before { display: none !important; }
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product button.discount-product-id .discount-icon { display: none !important; }
/* vorhandener Zusatz „anzeigen/schließen“ (aus eurem CSS, sprachabhängig) bleibt */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product button.discount-product-id::after {
  font: inherit !important;
}
/* Kachel oben halten, wenn die Tabelle offen ist */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen):has(.discount-product-id.open) > .elementor-widget-wrap {
  align-items: flex-start !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product button.discount-product-id.loading .spinner {
  display: inline-block !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  border-width: 2px !important;
  border-color: #d6e0ec !important;
  border-top-color: var(--pz-blue) !important;
}

/* --- Staffelpreis-Tabelle: volle Zeile unten in der Karte --- */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table {
  grid-area: tbl;
  position: static !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 20px 0 0 !important;
  padding: 0 !important;
  top: auto !important; right: auto !important; bottom: auto !important; left: auto !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  box-shadow: none !important;
  z-index: auto !important;
}
/* Tabelle quer: Spalte 1 = Beschriftung, danach je Staffel eine Spalte */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table table {
  display: grid !important;
  grid-auto-flow: column;
  grid-auto-columns: minmax(84px, 1fr);
  grid-template-columns: max-content;
  width: 100% !important;
  margin: 0 !important;
  overflow-x: auto;
  border: 1px solid var(--pz-line) !important;
  border-radius: 12px !important;
  background: #fff !important;
  border-collapse: separate !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table :is(thead, tbody) {
  display: contents !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table tr {
  display: grid !important;
  grid-template-rows: 44px 52px;
  background: transparent !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table :is(th, td) {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 16px !important;
  border: 0 !important;
  border-left: 1px solid var(--pz-line) !important;
  background: #fff !important;
  font-family: var(--pz-font) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  white-space: nowrap;
  color: var(--pz-text) !important;
}
/* versteckte Titel-Zellen des Plugins bleiben versteckt */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table :is(th, td)[style*="display:none"],
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table :is(th, td)[style*="display: none"] {
  display: none !important;
}
/* Beschriftungs-Spalte (Menge / Preis) */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table thead :is(th, td) {
  justify-content: flex-start;
  border-left: 0 !important;
  background: var(--pz-light) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--pz-muted) !important;
}
/* obere Zeile = Menge, untere = Preis */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table tbody .wdr_bulk_range {
  border-bottom: 1px solid var(--pz-line) !important;
  background: var(--pz-light) !important;
  font-weight: 600 !important;
  color: var(--pz-navy) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table thead tr > :is(th, td):not([style*="none"]):first-of-type,
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table thead #customize-bulk-table-range {
  border-bottom: 1px solid var(--pz-line) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table .wdr_bulk_table_discount,
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table .wdr_bulk_table_discount :is(.amount, bdi) {
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--pz-navy) !important;
}
/* günstigste Staffel hervorheben */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table tbody tr:last-child :is(td) {
  background: var(--pz-tint) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table tbody tr:last-child .wdr_bulk_table_discount,
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table tbody tr:last-child .wdr_bulk_table_discount :is(.amount, bdi) {
  color: var(--pz-blue) !important;
}


/* Tabelle in schmalen Karten senkrecht (Menge | Preis untereinander) */
@container pz (max-width: 479px) {
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table table {
    grid-auto-flow: row !important;
    grid-template-columns: 1fr !important;
    grid-auto-columns: auto !important;
    overflow: hidden !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table tr {
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: 42px !important;
    border-top: 1px solid var(--pz-line);
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table thead tr { border-top: 0; }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table :is(th, td) {
    justify-content: center !important;
    border-bottom: 0 !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table tr > :is(th, td):not([style*="none"]) ~ :is(th, td) {
    border-left: 1px solid var(--pz-line) !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product .awdr-bulk-customizable-table tr > :is(th, td):not([style*="none"]):nth-child(2) {
    border-left: 0 !important;
  }
}

/* ---------- Spaltenbreite: altes 320px-Layout neutralisieren ---------- */
@media (max-width: 1120px) {
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen),
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex.mobile-max-width-320:has(.software-paket-woo-bestellen) {
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) > .elementor-widget-wrap {
    gap: 22px;
    padding: 22px !important;
  }
}

/* ---------- Gestapelt, sobald die Zeile zu schmal wird ----------
   Container-Query auf das Produkt-Widget selbst: unabhängig von
   Bildschirm, Zoom oder Seitenbreite wird die Beschreibung NIE gequetscht. */
@container pz (max-width: 999px) {
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-areas:
      "title title price"
      "title title tax"
      "title title ship"
      "desc  desc  desc"
      "qty   btn   btn"
      "disc  disc  disc"
      ".     more  more"
      "tbl   tbl   tbl" !important;
    align-items: start !important;
    row-gap: 0;
    column-gap: 16px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product .woocommerce-loop-product__title {
    font-size: 20px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product .description {
    margin: 14px 0 18px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product .price {
    padding-left: 18px !important;
    font-size: 26px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product .wc-gzd-additional-info {
    padding-left: 18px !important;
  }
}
@container pz (max-width: 479px) {
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product {
    grid-template-columns: auto minmax(0, 1fr) !important;
    grid-template-areas:
      "title title"
      "desc  desc"
      "price price"
      "tax   tax"
      "ship  ship"
      "qty   btn"
      "disc  disc"
      "more  more"
      "tbl   tbl" !important;
    column-gap: 10px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product .woocommerce-loop-product__title {
    font-size: 18px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product .description {
    margin: 12px 0 14px !important;
    font-size: 15px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product .price {
    padding: 14px 0 2px !important;
    border-left: 0 !important;
    border-top: 1px solid var(--pz-line-2);
    font-size: 24px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product .wc-gzd-additional-info {
    padding-left: 0 !important;
    border-left: 0 !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen .qib-button-wrapper {
    height: 46px !important;
    margin-top: 12px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen .qib-button-wrapper button.qib-button { width: 36px !important; }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen .qib-button-wrapper .quantity input.qty { width: 42px !important; }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen ul.products li.product a.button {
    height: 46px !important;
    margin-top: 12px !important;
    padding: 0 12px !important;
    font-size: 15px !important;
  }
}

/* ---------- Mobil: Bild-Kachel über dem Inhalt ---------- */
@media (max-width: 767px) {
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) {
    --pz-tile: 84px;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) > .elementor-widget-wrap {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 14px;
    padding: 18px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .elementor-widget-image {
    flex: 0 0 auto !important;
    align-self: flex-start !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .elementor-widget-image img {
    padding: 6px !important;
    border-radius: 14px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .elementor-widget-image a {
    border-radius: 14px !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .elementor-widget-image a::after {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) * { transition: none !important; }
}

/* =========================================================================
   Sprung-Buttons oben (Elementor-Button mit Klasse btn-blue)
   gleiche Farbe/Form wie „In den Warenkorb“, eine Nummer größer
   ========================================================================= */
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 60px !important;
  padding: 14px 34px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #22a8f0 0%, #0a8be3 100%) !important;
  color: #fff !important;
  fill: #fff !important;
  font-family: "Roboto Condensed", "Roboto", Arial, sans-serif !important;
  font-size: 21px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(10,139,227,.28) !important;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button:hover,
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button:focus-visible {
  color: #fff !important;
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 14px 30px rgba(10,139,227,.34) !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button:focus-visible {
  outline: 3px solid rgba(34,168,240,.45) !important;
  outline-offset: 3px;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button .elementor-button-content-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button .elementor-button-text {
  color: inherit !important;
  font: inherit !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button .elementor-button-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px; height: 30px;
  margin: 0 !important;
  border-radius: 50%;
  background: none!important;
  font-size: 14px !important;
  color: #fff !important;
  fill: #fff !important;
}
body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button .elementor-button-icon :is(i, svg) {
  font-size: 14px !important;
  width: 14px; height: 14px;
}
@media (max-width: 767px) {
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue {
    width: 100% !important;
  }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button {
    width: 100% !important;
    min-height: 56px !important;
    padding: 12px 20px !important;
    font-size: 18px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button { transition: none !important; }
  body:is(.base-id-9776, .base-id-8375, .base-id-9767, .base-id-8669, .base-id-12491, .base-id-12066, .base-id-12303, .base-id-12445) .elementor-widget-button.btn-blue .elementor-button:hover { transform: none; }
}

/* ===== Warenkorb „Zurück“-Button – im Design der Produktseiten =====
   Zweit-Button (weiß, feiner Rahmen) wie der Discount-Button,
   Pfeil im runden Badge wie bei den Sprung-Buttons. Global einfügen. */
.dep-cart-back {
  margin: 0 !important;
}
/* Warenkorb-Raster (2 Spalten): Button über die volle Breite,
   damit Artikelliste und Summen-Karte an ihrem Platz bleiben */
.woocommerce-cart .woocommerce > .dep-cart-back {
  grid-column: 1 / -1 !important;
  margin: -12px 0 -8px !important;
}
.dep-cart-back .dep-cart-back__btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px;
  height: 52px;
  padding: 0 24px 0 12px !important;
  border: 1px solid #d6e0ec !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #0b1f3a !important;
  font-family: "Roboto Condensed", "Roboto", Arial, sans-serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-transform: none !important;
  box-shadow: 0 1px 2px rgba(16,40,80,.04), 0 10px 28px rgba(16,40,80,.05) !important;
  transition: background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.dep-cart-back .dep-cart-back__icon {
  display: inline-flex;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #eaf5fd;
  position: relative;
  transition: transform .2s ease, background .2s ease;
}
.dep-cart-back .dep-cart-back__icon::before {          /* Pfeil, reine Grafik */
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: 14px;
  height: 14px;
  background: #0a8be3;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 18l-6-6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 18l-6-6 6-6'/%3E%3C/svg%3E") center/contain no-repeat;
}
.dep-cart-back .dep-cart-back__btn:hover,
.dep-cart-back .dep-cart-back__btn:focus-visible {
  background: #eaf5fd !important;
  border-color: #0a8be3 !important;
  color: #0a8be3 !important;
}
.dep-cart-back .dep-cart-back__btn:hover .dep-cart-back__icon {
  background: #fff;
  transform: translateX(-3px);
}
.dep-cart-back .dep-cart-back__btn:focus-visible {
  outline: 3px solid rgba(34,168,240,.4) !important;
  outline-offset: 2px;
}
@media (max-width: 767px) {
  .dep-cart-back .dep-cart-back__btn {
    height: 48px;
    font-size: 17px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .dep-cart-back .dep-cart-back__btn,
  .dep-cart-back .dep-cart-back__icon { transition: none !important; }
  .dep-cart-back .dep-cart-back__btn:hover .dep-cart-back__icon { transform: none; }
}

/* =========================================================================
   Menü-Warenkorb (Elementor „Menü-Warenkorb“) – Buttons im neuen Design
   Global einfügen. Keine neuen Texte – vorhandene Texte/Pfeile bleiben.
   ========================================================================= */

/* ---------- Button-Bereich ---------- */
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  margin: 0 !important;
  border-radius: 10px !important;
  font-family: "Roboto Condensed", "Roboto", Arial, sans-serif !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease !important;
}
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button .elementor-button-text {
  display: inline-flex !important;
  align-items: center !important;
  color: inherit !important;
  font: inherit !important;
}

/* „Zur Kasse“ – Haupt-Button (wie „In den Warenkorb“ / „Weiter zur Kasse“) */
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button.elementor-button--checkout {
  height: 54px !important;
  padding: 0 22px !important;
  border: 0 !important;
  background: linear-gradient(180deg, #22a8f0 0%, #0a8be3 100%) !important;
  color: #fff !important;
  font-size: 18px !important;
  box-shadow: 0 8px 20px rgba(10,139,227,.28) !important;
}
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button.elementor-button--checkout:hover {
  color: #fff !important;
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(10,139,227,.34) !important;
}
/* vorhandener Pfeil (Font Awesome) */
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--checkout .elementor-button-text::after {
  margin-left: 10px !important;
  font-size: 14px !important;
  color: #fff !important;
  transition: transform .2s ease;
}
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--checkout:hover .elementor-button-text::after {
  transform: translateX(3px);
}

/* „Warenkorb anzeigen“ – Zweit-Button (wie „Zurück“) */
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button.elementor-button--view-cart {
  height: 50px !important;
  padding: 0 20px !important;
  border: 1px solid #d6e0ec !important;
  background: #fff !important;
  color: #0b1f3a !important;
  font-size: 17px !important;
  box-shadow: none !important;
}
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button.elementor-button--view-cart:hover {
  border-color: #0a8be3 !important;
  background: #eaf5fd !important;
  color: #0a8be3 !important;
}

body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button:focus-visible {
  outline: 3px solid rgba(34,168,240,.45) !important;
  outline-offset: 2px;
}

/* ---------- „Weiter einkaufen“-Leiste oben (Schließen-Button) ---------- */
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__close-button {
  align-items: center !important;
  background: #eaf5fd !important;
  border-bottom: 1px solid #cfe2f5 !important;
  border-radius: 0 !important;
  transition: background .2s ease !important;
}
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__close-button::before,
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__close-button::after {
  color: #0a8be3 !important;
  font-weight: 600 !important;
}
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__close-button:hover {
  background: #d9eefc !important;
}
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__close-button:hover::before,
body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle_wrapper .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__close-button:hover::after {
  color: #0b1f3a !important;
}

@media (prefers-reduced-motion: reduce) {
  body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button { transition: none !important; }
  body .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button:hover { transform: none; }
}

/* =========================================================================
   FOOTER – modern im Stil der Sparpakete-Seite (global, alle Sprachen)
   Greift auf die Elementor-Footer-Vorlage über .elementor-location-footer,
   ohne Element-IDs → auch für übersetzte Footer-Vorlagen. Keine Texte im CSS.
   ========================================================================= */

.elementor-location-footer footer.elementor-top-section {
  --ft-navy: #0b1f3a;
  --ft-navy-2: #071629;
  --ft-blue: #0a8be3;
  --ft-blue-2: #22a8f0;
  --ft-text: rgba(255,255,255,.74);
  --ft-soft: rgba(255,255,255,.08);
  --ft-font: "Roboto Condensed", "Roboto", Arial, sans-serif;

  position: relative !important;
  margin-bottom: 0 !important;
  padding: 64px 40px 104px !important;
  background: linear-gradient(180deg, var(--ft-navy) 0%, var(--ft-navy-2) 100%) !important;
  border-top: 4px solid transparent !important;
  border-image: linear-gradient(90deg, var(--ft-blue-2), var(--ft-blue)) 1 !important;
  font-family: var(--ft-font) !important;
}
/* Copyright-Leiste bezieht sich auf den ganzen Footer */
.elementor-location-footer footer.elementor-top-section > .elementor-container,
.elementor-location-footer footer.elementor-top-section > .elementor-container > .elementor-column,
.elementor-location-footer footer.elementor-top-section > .elementor-container > .elementor-column > .elementor-widget-wrap {
  position: static !important;
}
.elementor-location-footer footer.elementor-top-section > .elementor-container {
  max-width: 1140px !important;
  gap: 40px;
  align-items: flex-start;
}
.elementor-location-footer footer.elementor-top-section > .elementor-container > .elementor-column > .elementor-widget-wrap {
  margin: 0 !important;
  padding: 0 !important;
  align-content: flex-start;
}
/* Spalten teilen den Platz (statt fester 33 % + Abstand → kein Umbruch) */
@media (min-width: 768px) {
  .elementor-location-footer footer.elementor-top-section > .elementor-container {
    flex-wrap: nowrap !important;
  }
  .elementor-location-footer footer.elementor-top-section > .elementor-container > .elementor-column {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
  }
  .elementor-location-footer footer.elementor-top-section > .elementor-container > .elementor-column:first-child {
    flex-grow: 1.15 !important;
  }
}

/* ---------- Spaltenüberschriften (blauer Balken wie .dep-acc__group) ---------- */
.elementor-location-footer footer.elementor-top-section .elementor-widget-heading:not(.elementor-absolute) .elementor-heading-title {
  margin: 0 0 18px !important;
  padding: 16px 0 0 !important;
  background: linear-gradient(var(--ft-blue-2), var(--ft-blue-2)) no-repeat 0 0 / 32px 3px !important;
  font-family: var(--ft-font) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -.005em;
  color: #fff !important;
}

/* ---------- Spalte 1: Firma / Kontakt ---------- */
.elementor-location-footer footer.elementor-top-section .elementor-widget-text-editor,
.elementor-location-footer footer.elementor-top-section .elementor-widget-text-editor address {
  margin: 0 !important;
  font-family: var(--ft-font) !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  color: var(--ft-text) !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-text-editor address + address {
  margin-top: 14px !important;
  padding-top: 14px !important;
  border-top: 1px solid var(--ft-soft);
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-text-editor strong {
  font-weight: 600 !important;
  color: #fff !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-text-editor a {
  text-decoration: underline;
  text-decoration-color: var(--ft-blue-2);
  text-underline-offset: 3px;
  transition: text-decoration-color .2s ease;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-text-editor a:hover {
  text-decoration-color: #fff;
}
/* ausgeblendete Social-Icons (opacity-0) nehmen keinen Platz mehr weg */
.elementor-location-footer footer.elementor-top-section .elementor-widget-social-icons.opacity-0 {
  display: none !important;
}

/* ---------- Spalte 2: Navigation ---------- */
.elementor-location-footer footer.elementor-top-section .elementor-inner-section,
.elementor-location-footer footer.elementor-top-section .elementor-inner-section .elementor-column {
  width: 100% !important;
  margin: 0 !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-icon-list .elementor-icon-list-item {
  margin: 0 !important;
  padding: 0 !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-icon-list .elementor-icon-list-item > a {
  display: flex !important;
  align-items: center !important;
  gap: 10px;
  padding: 7px 0 !important;
  text-decoration: none !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-icon-list .elementor-icon-list-icon {
  padding: 0 !important;
  transition: transform .2s ease;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-icon-list .elementor-icon-list-icon i {
  font-size: 12px !important;
  color: var(--ft-blue-2) !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-icon-list .elementor-icon-list-icon svg {
  fill: var(--ft-blue-2) !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-icon-list .elementor-icon-list-text {
  font-family: var(--ft-font) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  color: var(--ft-text) !important;
  transition: color .2s ease;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-icon-list .elementor-icon-list-item > a:hover .elementor-icon-list-text,
.elementor-location-footer footer.elementor-top-section .elementor-widget-icon-list .elementor-icon-list-item > a:focus-visible .elementor-icon-list-text {
  color: #fff !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-icon-list .elementor-icon-list-item > a:hover .elementor-icon-list-icon {
  transform: translateX(3px);
}

/* ---------- Spalte 3: Newsletter als Karte ---------- */
.elementor-location-footer footer.elementor-top-section > .elementor-container > .elementor-column:has(.elementor-widget-button) > .elementor-widget-wrap {
  padding: 24px 26px 28px !important;
  background: rgba(255,255,255,.04) !important;
  border: 1px solid var(--ft-soft) !important;
  border-radius: 16px !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-button .elementor-widget-container {
  margin: 0 !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-button .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px;
  width: 100%;
  min-height: 50px;
  padding: 0 18px !important;
  background: linear-gradient(180deg, var(--ft-blue-2) 0%, var(--ft-blue) 100%) !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: #fff !important;
  fill: #fff !important;
  font-family: var(--ft-font) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  letter-spacing: .01em !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  box-shadow: 0 8px 22px rgba(10,139,227,.35) !important;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
/* Brief-Icon (reine Grafik) */
.elementor-location-footer footer.elementor-top-section .elementor-widget-button .elementor-button::before {
  content: "";
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3.5 6.5 12 13l8.5-6.5'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3.5 6.5 12 13l8.5-6.5'/%3E%3C/svg%3E") center/contain no-repeat;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-button .elementor-button:hover,
.elementor-location-footer footer.elementor-top-section .elementor-widget-button .elementor-button:focus-visible {
  background: linear-gradient(180deg, var(--ft-blue-2) 0%, var(--ft-blue) 100%) !important;
  color: #fff !important;
  filter: brightness(1.08);
  transform: translateY(-1px);
  box-shadow: 0 12px 28px rgba(10,139,227,.45) !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-button .elementor-button:focus-visible {
  outline: 3px solid rgba(34,168,240,.5) !important;
  outline-offset: 3px;
}

/* ---------- Copyright als Leiste unten über die volle Breite ---------- */
.elementor-location-footer footer.elementor-top-section .elementor-widget-heading.elementor-absolute {
  position: absolute !important;
  top: auto !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 40px !important;
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-heading.elementor-absolute .elementor-widget-container {
  max-width: 1140px;
  margin: 0 auto !important;
  padding: 20px 0 !important;
  border-top: 1px solid var(--ft-soft);
}
.elementor-location-footer footer.elementor-top-section .elementor-widget-heading.elementor-absolute .elementor-heading-title {
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  font-family: var(--ft-font) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  color: rgba(255,255,255,.5) !important;
}

/* ---------- Tablet / Mobil ---------- */
@media (max-width: 1024px) {
  .elementor-location-footer footer.elementor-top-section {
    padding: 48px 24px 96px !important;
  }
  .elementor-location-footer footer.elementor-top-section > .elementor-container { gap: 28px; }
  .elementor-location-footer footer.elementor-top-section > .elementor-container > .elementor-column > .elementor-widget-wrap {
    margin: 0 !important;
  }
  .elementor-location-footer footer.elementor-top-section .elementor-widget-heading.elementor-absolute { padding: 0 24px !important; }
  .elementor-location-footer footer.elementor-top-section > .elementor-container > .elementor-column:has(.elementor-widget-button) > .elementor-widget-wrap {
    padding: 20px !important;
  }
  .elementor-location-footer footer.elementor-top-section .elementor-widget-button .elementor-button {
    white-space: normal !important;
    padding: 10px 16px !important;
    font-size: 14px !important;
    text-align: center !important;
  }
}
@media (max-width: 767px) {
  .elementor-location-footer footer.elementor-top-section {
    padding: 40px 20px 92px !important;
  }
  .elementor-location-footer footer.elementor-top-section > .elementor-container {
    flex-wrap: wrap !important;
    gap: 32px;
  }
  .elementor-location-footer footer.elementor-top-section > .elementor-container > .elementor-column {
    width: 100% !important;
  }
  .elementor-location-footer footer.elementor-top-section > .elementor-container > .elementor-column > .elementor-widget-wrap {
    margin: 0 !important;
  }
  .elementor-location-footer footer.elementor-top-section .elementor-widget-heading.elementor-absolute { padding: 0 20px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .elementor-location-footer footer.elementor-top-section * { transition: none !important; }
  .elementor-location-footer footer.elementor-top-section .elementor-button:hover,
  .elementor-location-footer footer.elementor-top-section .elementor-icon-list-item > a:hover .elementor-icon-list-icon { transform: none; }
}

/* =========================================================================
   WooCommerce Multilingual – Sprachwechsel-Dialog (#wcml-cart-dialog-wrapper)
   Modernes Design im Stil der Sparpakete-Seite. Global (kann überall kommen).
   Keine Texte im CSS – alle Texte kommen von WCML (übersetzt).
   ========================================================================= */

/* Hintergrund: abgedunkelt + leicht unscharf, Dialog mittig */
body #wcml-cart-dialog-wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  box-sizing: border-box !important;
  background: rgba(11, 31, 58, .55) !important;
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
  animation: wcmlFade .2s ease-out;
}

/* Karte */
body #wcml-cart-dialog-wrapper .wcml-cart-dialog-confirm {
  position: relative;
  width: 100% !important;
  max-width: 520px !important;
  margin: auto !important;
  padding: 32px 32px 28px !important;
  background: #fff !important;
  border: 1px solid #e3eaf3 !important;
  border-radius: 20px !important;
  box-shadow: 0 24px 60px rgba(11, 31, 58, .28), 0 4px 14px rgba(11, 31, 58, .12) !important;
  text-align: left !important;
  font-family: "Roboto Condensed", "Roboto", Arial, sans-serif !important;
  box-sizing: border-box !important;
  animation: wcmlPop .25s cubic-bezier(.2, .9, .3, 1.2);
}

/* Sprach-Icon (Globus) im hellblauen Kreis – reine Grafik */
body #wcml-cart-dialog-wrapper .wcml-cart-dialog-confirm::before {
  content: "";
  display: block;
  width: 56px;
  height: 56px;
  margin: 0 0 18px;
  border-radius: 50%;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a8be3' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18'/%3E%3Cpath d='M12 3a14 14 0 0 1 0 18'/%3E%3Cpath d='M12 3a14 14 0 0 0 0 18'/%3E%3C/svg%3E") center / 28px no-repeat,
    #eaf5fd;
}

/* Titel */
body #wcml-cart-dialog-wrapper .wcml-cart-dialog-title {
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  font-family: inherit !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -.01em;
  text-align: left !important;
  color: #0b1f3a !important;
}

/* Erklärtext – Hinweis zum Leeren des Warenkorbs dezent hervorgehoben */
body #wcml-cart-dialog-wrapper .wcml-cart-dialog-content {
  margin: 0 0 24px !important;
  padding: 14px 16px !important;
  background: #f4f7fb !important;
  border: 1px solid #e3eaf3 !important;
  border-left: 4px solid #0a8be3 !important;
  border-radius: 12px !important;
  font-family: inherit !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  text-align: left !important;
  color: #34465e !important;
}

/* Buttons */
body #wcml-cart-dialog-wrapper .wcml-cart-dialog-buttons {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: initial !important;
}
body #wcml-cart-dialog-wrapper .wcml-cart-dialog-buttons button.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 10px 16px !important;
  border-radius: 10px !important;
  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-transform: none !important;
  text-decoration: none !important;
  white-space: normal !important;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}

/* Hauptaktion: zur vorherigen Sprache zurück – Warenkorb bleibt erhalten */
body #wcml-cart-dialog-wrapper #wcml-cart-dialog-stay {
  order: 2;
  background: linear-gradient(180deg, #22a8f0 0%, #0a8be3 100%) !important;
  border: 0 !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(10, 139, 227, .28) !important;
}
body #wcml-cart-dialog-wrapper #wcml-cart-dialog-stay:hover,
body #wcml-cart-dialog-wrapper #wcml-cart-dialog-stay:focus-visible {
  color: #fff !important;
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(10, 139, 227, .34) !important;
}

/* Zweitaktion: neue Sprache behalten – leert den Warenkorb */
body #wcml-cart-dialog-wrapper #wcml-cart-dialog-switch {
  order: 1;
  background: #fff !important;
  border: 1.5px solid #d6e0ec !important;
  color: #0b1f3a !important;
  box-shadow: none !important;
}
body #wcml-cart-dialog-wrapper #wcml-cart-dialog-switch:hover,
body #wcml-cart-dialog-wrapper #wcml-cart-dialog-switch:focus-visible {
  background: #eaf5fd !important;
  border-color: #0a8be3 !important;
  color: #0a8be3 !important;
}
body #wcml-cart-dialog-wrapper .wcml-cart-dialog-buttons button.button:focus-visible {
  outline: 3px solid rgba(34, 168, 240, .45) !important;
  outline-offset: 2px;
}

/* Mobil: Buttons untereinander, Hauptaktion oben */
@media (max-width: 560px) {
  body #wcml-cart-dialog-wrapper .wcml-cart-dialog-confirm {
    padding: 24px 20px 20px !important;
    border-radius: 18px !important;
  }
  body #wcml-cart-dialog-wrapper .wcml-cart-dialog-confirm::before {
    width: 48px;
    height: 48px;
    margin-bottom: 14px;
    background-size: 24px, auto;
  }
  body #wcml-cart-dialog-wrapper .wcml-cart-dialog-title { font-size: 22px !important; }
  body #wcml-cart-dialog-wrapper .wcml-cart-dialog-content { font-size: 15px !important; }
  body #wcml-cart-dialog-wrapper .wcml-cart-dialog-buttons { grid-template-columns: 1fr; }
  body #wcml-cart-dialog-wrapper #wcml-cart-dialog-stay { order: 1; }
  body #wcml-cart-dialog-wrapper #wcml-cart-dialog-switch { order: 2; }
}

@keyframes wcmlFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes wcmlPop { from { opacity: 0; transform: translateY(10px) scale(.98); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  body #wcml-cart-dialog-wrapper,
  body #wcml-cart-dialog-wrapper .wcml-cart-dialog-confirm { animation: none !important; }
  body #wcml-cart-dialog-wrapper .wcml-cart-dialog-buttons button.button { transition: none !important; }
}

/* =========================================================================
   HEADER – modern im Stil der Sparpakete-Seite (global, alle Sprachen)
   Obere Leiste (.mobile-setup-menu) + Produkt-Leiste (.extra-navigation-flexbox)
   - keine Texte im CSS, keine Element-IDs der Vorlage → auch für Übersetzungen
   - P-Menü (.megamenu) bleibt unangetastet (weiter nur für Admins sichtbar)
   - bewusst KEIN transform/filter/backdrop-filter auf Header-Containern,
     damit der Seiten-Warenkorb (position: fixed) korrekt bleibt
   ========================================================================= */

.elementor-location-header {
  --hd-navy: #0b1f3a;
  --hd-text: #34465e;
  --hd-muted: #6b7c93;
  --hd-blue: #0a8be3;
  --hd-blue-2: #22a8f0;
  --hd-tint: #eaf5fd;
  --hd-light: #f4f7fb;
  --hd-line: #e3eaf3;
  --hd-font: "Roboto Condensed", "Roboto", Arial, sans-serif;
}

/* =========================================================================
   1) OBERE LEISTE
   ========================================================================= */
.elementor-location-header .mobile-setup-menu,
.elementor-location-header .mobile-setup-menu:not(.elementor-motion-effects-element-type-background) {
  background: rgba(255, 255, 255, .97) !important;
  background-image: none !important;
  border-bottom: 1px solid var(--hd-line) !important;
  box-shadow: 0 6px 24px rgba(16, 40, 80, .06) !important;
}
.elementor-location-header .mobile-setup-menu > .elementor-background-overlay { display: none !important; }

/* Menüpunkte */
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu {
  align-items: center;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li {
  min-width: 0 !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item {
  min-width: 0 !important;
  padding: 20px 16px !important;
  font-family: var(--hd-font) !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  letter-spacing: .005em;
  color: var(--hd-text) !important;
  fill: var(--hd-text) !important;
  transition: color .2s ease !important;
}
/* Hover-/Aktiv-Fläche als runde „Pille“ (Elementor-Pointer) */
.elementor-location-header .elementor-nav-menu--main.e--pointer-background > .elementor-nav-menu > li > a.elementor-item::before {
  top: 12px !important;
  bottom: 12px !important;
  left: 4px !important;
  right: 4px !important;
  border-radius: 10px !important;
  background-color: var(--hd-tint) !important;
  transition: opacity .2s ease !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item:hover,
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item:focus-visible,
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item.highlighted {
  color: var(--hd-blue) !important;
  fill: var(--hd-blue) !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item.elementor-item-active,
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li.current-menu-ancestor > a.elementor-item {
  color: var(--hd-blue) !important;
  fill: var(--hd-blue) !important;
  font-weight: 600 !important;
}
/* bisherige graue Aktiv-Flächen (Theme-CSS pro Seite) neutralisieren */
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item[class] {
  background: transparent !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item:focus-visible {
  outline: 2px solid rgba(34, 168, 240, .5) !important;
  outline-offset: -8px;
  border-radius: 12px;
}
/* Dropdown-Pfeile */
.elementor-location-header .elementor-nav-menu--main .sub-arrow {
  margin-left: 6px !important;
  padding: 0 !important;
  font-size: 12px !important;
  color: var(--hd-muted) !important;
  transition: transform .2s ease, color .2s ease;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item:hover .sub-arrow,
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item.highlighted .sub-arrow {
  color: var(--hd-blue) !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item.highlighted .sub-arrow {
  transform: rotate(180deg);
}

/* Logo (Home) & Konto-Icon: Text bleibt ausgeblendet (nur Symbol) */
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:is(.home-icon, .xoo-el-myaccount-menu, .xoo-el-login-tgr) > a.elementor-item,
.elementor-location-header nav.elementor-nav-menu--dropdown li:is(.home-icon, .xoo-el-myaccount-menu, .xoo-el-login-tgr) > a.elementor-item {
  font-size: 0 !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:is(.home-icon, .xoo-el-myaccount-menu, .xoo-el-login-tgr) > a.elementor-item::after {
  font-size: 18px !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li.home-icon > a.elementor-item {
  min-width: 72px !important;
  justify-content: center !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:is(.xoo-el-myaccount-menu, .xoo-el-login-tgr) > a.elementor-item {
  min-width: 54px !important;
  justify-content: center !important;
}
/* Logo (Home) & Konto-Icon: Farbe bleibt beim Überfahren */
.elementor-location-header li.home-icon .elementor-item:hover::after {
  filter: none !important;
  -webkit-filter: none !important;
}
.elementor-location-header li.xoo-el-myaccount-menu > .elementor-item::after,
.elementor-location-header li.xoo-el-login-tgr > .elementor-item::after {
  color: var(--hd-text) !important;
}
.elementor-location-header li.xoo-el-myaccount-menu > .elementor-item:hover::after,
.elementor-location-header li.xoo-el-login-tgr > .elementor-item:hover::after {
  color: var(--hd-blue) !important;
}

/* Dropdown-Karten (nicht das P-Menü) */
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:not(.megamenu) > ul.sub-menu {
  min-width: 240px !important;
  padding: 8px !important;
  background: #fff !important;
  border: 1px solid var(--hd-line) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 40px rgba(16, 40, 80, .12), 0 2px 6px rgba(16, 40, 80, .05) !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:not(.megamenu) > ul.sub-menu > li {
  border: 0 !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:not(.megamenu) > ul.sub-menu > li > a.elementor-sub-item {
  padding: 11px 14px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: transparent !important;
  font-family: var(--hd-font) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  color: var(--hd-text) !important;
  white-space: nowrap;
  transition: background .15s ease, color .15s ease;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:not(.megamenu) > ul.sub-menu > li > a.elementor-sub-item:hover,
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:not(.megamenu) > ul.sub-menu > li > a.elementor-sub-item:focus-visible,
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:not(.megamenu) > ul.sub-menu > li > a.elementor-sub-item.elementor-item-active {
  background: var(--hd-tint) !important;
  color: var(--hd-blue) !important;
}
/* Sprach-Flaggen im Dropdown */
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li.wpml-ls-item > ul.sub-menu {
  min-width: 0 !important;
}
.elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li.wpml-ls-item > ul.sub-menu > li > a.elementor-sub-item {
  justify-content: center;
  padding: 9px 14px !important;
}
.elementor-location-header li.wpml-ls-item .wpml-ls-flag {
  border-radius: 3px;
  box-shadow: 0 0 0 1px rgba(11, 31, 58, .08);
}

/* Warenkorb-Symbol */
.elementor-location-header .elementor-widget-woocommerce-menu-cart {
  --toggle-button-icon-color: var(--hd-text) !important;
  --toggle-button-icon-hover-color: var(--hd-blue) !important;
  --items-indicator-background-color: var(--hd-blue) !important;
  --items-indicator-text-color: #fff !important;
  min-width: 0 !important;
}
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle_button {
  background: transparent !important;
  transition: color .2s ease;
}
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button-icon[data-counter]::before {
  font-family: var(--hd-font) !important;
  font-weight: 700 !important;
  box-shadow: 0 0 0 2px #fff;
}

/* „Jetzt Angebot anfragen“ (nur Startseite, Tablet) im Button-Design */
.elementor-location-header .icon-hand-before .elementor-button {
  background: linear-gradient(180deg, var(--hd-blue-2) 0%, var(--hd-blue) 100%) !important;
  border-radius: 10px !important;
  font-family: var(--hd-font) !important;
  font-weight: 600 !important;
  box-shadow: 0 6px 16px rgba(10, 139, 227, .28) !important;
}

/* =========================================================================
   2) PRODUKT-LEISTE
   ========================================================================= */
.elementor-location-header .elementor-section:has(.extra-navigation-flexbox),
.elementor-location-header .elementor-section:has(.extra-navigation-flexbox):not(.elementor-motion-effects-element-type-background) {
  background: #fff !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}
.elementor-location-header .extra-navigation-flexbox > .elementor-widget-wrap {
  overflow-x: auto !important;
  scroll-behavior: smooth;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  padding: 8px 4px !important;
  gap: 4px;
}
.elementor-location-header .extra-navigation-flexbox > .elementor-widget-wrap::-webkit-scrollbar { display: none; }

/* Kacheln */
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image {
  margin: 0 !important;
  scroll-snap-align: start;
}
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image > .elementor-widget-container {
  padding: 0 !important;
}
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image a {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 10px 8px 12px !important;
  border-radius: 14px;
  text-decoration: none !important;
  transition: background .2s ease, box-shadow .2s ease;
}
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image img {
  display: block;
  width: auto !important;
  max-width: 100% !important;
  height: 58px !important;
  object-fit: contain;
  mix-blend-mode: multiply;          /* weiße Bildhintergründe verschmelzen mit der Kachel */
  transition: transform .25s ease;
}
/* vorhandene Produktnamen (Text aus euren Elementor-Einstellungen) */
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image a::after {
  font-family: var(--hd-font) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  color: var(--hd-text) !important;
  white-space: nowrap;
  transition: color .2s ease;
}
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image a:hover,
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image a:focus-visible {
  background: var(--hd-tint);
}
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image a:hover img,
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image a:focus-visible img {
  transform: translateY(-2px) scale(1.04);
}
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image a:hover::after,
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image a:focus-visible::after {
  color: var(--hd-blue) !important;
}
.elementor-location-header .extra-navigation-flexbox .elementor-widget-image a:focus-visible {
  outline: 2px solid rgba(34, 168, 240, .5);
  outline-offset: -2px;
}

/* aktuelle Seite hervorheben (über base-id → alle Sprachen) */
body.home .elementor-location-header .dep-text a,
body.base-id-12445 .elementor-location-header .canon-text a,
body:is(.base-id-9776, .base-id-9767) .elementor-location-header .fotospiegel-text a,
body.base-id-8375 .elementor-location-header .kontrastoren-text a,
body.base-id-8669 .elementor-location-header .wangernhalter-text a,
body.base-id-12303 .elementor-location-header .mirror-text a,
body.base-id-12066 .elementor-location-header .wifi-text a,
body.base-id-12491 .elementor-location-header .ersatzteile-text a {
  background: var(--hd-tint);
  box-shadow: inset 0 0 0 1px #cfe2f5;
}
body.home .elementor-location-header .dep-text a::after,
body.base-id-12445 .elementor-location-header .canon-text a::after,
body:is(.base-id-9776, .base-id-9767) .elementor-location-header .fotospiegel-text a::after,
body.base-id-8375 .elementor-location-header .kontrastoren-text a::after,
body.base-id-8669 .elementor-location-header .wangernhalter-text a::after,
body.base-id-12303 .elementor-location-header .mirror-text a::after,
body.base-id-12066 .elementor-location-header .wifi-text a::after,
body.base-id-12491 .elementor-location-header .ersatzteile-text a::after {
  color: var(--hd-blue) !important;
  font-weight: 700 !important;
}

/* Scroll-Pfeile links/rechts als runde Buttons */
.elementor-location-header .navigation-links-container #navi-links a.elementor-button.elementor-button-link,
.elementor-location-header .navigation-rechts-container #navi-rechts a.elementor-button.elementor-button-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
  border: 1px solid var(--hd-line) !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: var(--hd-navy) !important;
  fill: var(--hd-navy) !important;
  font-size: 15px !important;
  box-shadow: 0 4px 14px rgba(16, 40, 80, .10) !important;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.elementor-location-header .navigation-links-container #navi-links a.elementor-button.elementor-button-link:hover,
.elementor-location-header .navigation-rechts-container #navi-rechts a.elementor-button.elementor-button-link:hover {
  background: var(--hd-tint) !important;
  border-color: #cfe2f5 !important;
  color: var(--hd-blue) !important;
  fill: var(--hd-blue) !important;
}
.elementor-location-header .navigation-links-container .elementor-button-icon,
.elementor-location-header .navigation-rechts-container .elementor-button-icon {
  margin: 0 !important;
  font-size: 15px !important;
}

/* =========================================================================
   3) BREITEN
   ========================================================================= */
/* Laptop: Menü bleibt einzeilig (bisher Umbruch in zwei Zeilen) */
@media (min-width: 1025px) and (max-width: 1366px) {
  .elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu {
    flex-wrap: nowrap !important;
  }
  .elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li > a.elementor-item {
    padding: 20px 11px !important;
    font-size: 16px !important;
  }
  .elementor-location-header .elementor-nav-menu--main .sub-arrow { margin-left: 4px !important; }
  .elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li.home-icon > a.elementor-item { min-width: 60px !important; }
  .elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu > li:is(.xoo-el-myaccount-menu, .xoo-el-login-tgr) > a.elementor-item { min-width: 46px !important; }
  .elementor-location-header .menu-adjust .elementor-menu-cart__toggle_button { padding-left: 16px !important; padding-right: 20px !important; }
}

/* Tablet & Handy: Burger-Menü */
@media (max-width: 1024px) {
  /* Warenkorb nicht mehr über den Rand (bisher 7 px horizontales Scrollen) */
  .elementor-location-header .menu-adjust.elementor-widget-woocommerce-menu-cart {
    right: 12px !important;
  }
  .elementor-location-header .mobile-setup-menu .elementor-menu-toggle {
    width: 46px;
    height: 46px;
    margin: 8px 0 8px 12px !important;
    border-radius: 12px !important;
    color: var(--hd-navy) !important;
    transition: background .2s ease;
  }
  .elementor-location-header .mobile-setup-menu .elementor-menu-toggle:hover,
  .elementor-location-header .mobile-setup-menu .elementor-menu-toggle.elementor-active {
    background: var(--hd-tint) !important;
    color: var(--hd-blue) !important;
  }
  .elementor-location-header .mobile-setup-menu .elementor-menu-toggle svg { fill: currentColor !important; }

  /* aufgeklapptes Menü */
  .elementor-location-header nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    background: #fff !important;
    border: 0 !important;
    border-top: 1px solid var(--hd-line) !important;
    box-shadow: 0 18px 40px rgba(16, 40, 80, .12) !important;
  }
  .elementor-location-header nav.elementor-nav-menu--dropdown li {
    border: 0 !important;
  }
  .elementor-location-header nav.elementor-nav-menu--dropdown > ul > li:not(:last-child) > a {
    border-bottom: 1px solid var(--hd-line) !important;
  }
  .elementor-location-header nav.elementor-nav-menu--dropdown a {
    padding: 15px 24px !important;
    background: #fff !important;
    font-family: var(--hd-font) !important;
    font-size: 19px !important;
    font-weight: 500 !important;
    color: var(--hd-text) !important;
    fill: var(--hd-text) !important;
    transition: background .15s ease, color .15s ease;
  }
  .elementor-location-header nav.elementor-nav-menu--dropdown a:hover,
  .elementor-location-header nav.elementor-nav-menu--dropdown a:focus-visible,
  .elementor-location-header nav.elementor-nav-menu--dropdown a.elementor-item-active,
  .elementor-location-header nav.elementor-nav-menu--dropdown a.highlighted {
    background: var(--hd-tint) !important;
    color: var(--hd-blue) !important;
    fill: var(--hd-blue) !important;
  }
  .elementor-location-header nav.elementor-nav-menu--dropdown ul.sub-menu {
    background: var(--hd-light) !important;
    border: 0 !important;
  }
  .elementor-location-header nav.elementor-nav-menu--dropdown ul.sub-menu a {
    padding-left: 40px !important;
    background: var(--hd-light) !important;
    font-size: 17px !important;
    border-bottom: 1px solid var(--hd-line) !important;
  }
  .elementor-location-header nav.elementor-nav-menu--dropdown .sub-arrow {
    color: var(--hd-muted) !important;
    font-size: 14px !important;
  }

  .elementor-location-header .extra-navigation-flexbox .elementor-widget-image img { height: 52px !important; }
}
@media (max-width: 767px) {
  .elementor-location-header .extra-navigation-flexbox .elementor-widget-image a {
    padding: 8px 6px 10px !important;
  }
  .elementor-location-header .extra-navigation-flexbox .elementor-widget-image img { height: 48px !important; }
  .elementor-location-header .extra-navigation-flexbox .elementor-widget-image a::after { font-size: 14px !important; }
  .elementor-location-header .navigation-links-container #navi-links a.elementor-button.elementor-button-link,
  .elementor-location-header .navigation-rechts-container #navi-rechts a.elementor-button.elementor-button-link {
    width: 34px !important;
    height: 34px !important;
    font-size: 13px !important;
  }
  .elementor-location-header .navigation-links-container { padding-left: 6px !important; }
  .elementor-location-header .navigation-rechts-container { padding-right: 6px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-location-header * { transition: none !important; }
  .elementor-location-header .extra-navigation-flexbox .elementor-widget-image a:hover img { transform: none; }
  .elementor-location-header .extra-navigation-flexbox > .elementor-widget-wrap { scroll-behavior: auto; }
}

body .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product.outofstock a.button{
    font-size: 0 !important;
background:#da0000!important;
cursor: not-allowed !important;
}

body .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen li.product.outofstock a.button::before{
    content:none!important;
}

body .elementor-column.horizontal-flex:has(.software-paket-woo-bestellen) .software-paket-woo-bestellen .qib-button-wrapper button.qib-button{
outline:none!important;
}

/* =========================================================================
   KASSE – Zoll-/Einfuhrabgaben-Box (#simplyduty-ack-box)
   Markup: inc/jumingo/jumingo-master-logic.php (sd_… Ausgabe)
   Passt die Box an das Karten-Design der Kasse an (--ck-* Variablen).
   WICHTIG: Kein "display … !important" auf der Box, .de-alert, dem Hinweis
   (#simplyduty_calc_hint) oder der Schätzzeile – die werden per jQuery
   (.show/.hide) bzw. Klasse .hidden ein-/ausgeblendet.
   ========================================================================= */

body.base-id-6164 #simplyduty-ack-box {
  --sd-red: #d12b2b;
  --sd-red-tint: #fdeeee;
  --sd-red-line: #f5c9c7;
  margin: 20px 0 0 !important;
  font-family: var(--ck-font) !important;
}

/* ---------- Karte (alter 5px-Rahmen aus dem globalen CSS wird ersetzt) ---------- */
body.base-id-6164 #simplyduty-ack-box > .de-alert {
  position: relative;
  margin: 0 !important;
  padding: 20px 22px 20px 24px !important;
  background: #fff !important;
  border: 1px solid var(--sd-red) !important;
  border-radius: 14px !important;
  box-shadow: var(--ck-shadow) !important;
  font-family: var(--ck-font) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  color: var(--ck-text) !important;
  text-align: left !important;
}

/* ---------- Kopfzeile: Icon + Titel ---------- */
body.base-id-6164 #simplyduty-ack-box .grid-upper-checkout {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 12px !important;
  padding: 0 0 14px !important;
  border-bottom: 1px solid var(--ck-line) !important;
}
body.base-id-6164 #simplyduty-ack-box .de-alert__icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 42px;
  width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--sd-red-tint) !important;
  border-radius: 12px !important;
  color: var(--sd-red) !important;
}
body.base-id-6164 #simplyduty-ack-box .de-alert__icon svg {
  display: block;
  width: 26px !important;
  height: 26px !important;
}
body.base-id-6164 #simplyduty-ack-box .de-alert__text {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--ck-font) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  color: var(--ck-navy) !important;
}

/* ---------- Geschätzte Zollgebühren (erscheint nach „Jetzt berechnen“) ---------- */
body.base-id-6164 #simplyduty-ack-box #simplyduty_estimate_line {
  margin: 14px 0 0 !important;
  padding: 12px 14px !important;
  background: var(--sd-red-tint) !important;
  border: 1px solid var(--sd-red-line) !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  color: var(--ck-navy) !important;
}
body.base-id-6164 #simplyduty-ack-box #simplyduty_estimate_value {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--sd-red) !important;
  white-space: nowrap;
}

/* ---------- Aktionszeile: Button + Bestätigung (Wrapper ohne Klasse) ---------- */
body.base-id-6164 #simplyduty-ack-box > .de-alert > div:not(.grid-upper-checkout):not(#simplyduty_calc_hint):not(#simplyduty_calc_status) {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 12px !important;
  margin: 16px 0 0 !important;
}

/* Button „Jetzt berechnen“ / „Neu berechnen“ */
body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_btn {
  align-self: flex-start;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 22px !important;
  background: linear-gradient(180deg, var(--ck-blue-2) 0%, var(--ck-blue) 100%) !important;
  border: 0 !important;
  border-radius: 10px !important;
  box-shadow: 0 8px 20px rgba(10,139,227,.22) !important;
  color: #fff !important;
  font-family: var(--ck-font) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_btn:hover,
body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_btn:focus-visible {
  transform: translateY(-1px);
  filter: brightness(1.04);
  box-shadow: 0 12px 26px rgba(10,139,227,.3) !important;
}
body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_btn:focus-visible {
  outline: 3px solid rgba(34,168,240,.45) !important;
  outline-offset: 3px;
}
body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_btn:disabled {
  opacity: .6 !important;
  cursor: wait;
  transform: none;
}

/* Bestätigungs-Checkbox als Kachel (wie die AGB-Checkbox darunter) */
body.base-id-6164 #simplyduty-ack-box > .de-alert label:has(#simplyduty_ack) {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  background: var(--ck-light) !important;
  border: 1.5px solid var(--ck-line) !important;
  border-radius: 12px !important;
  font-family: var(--ck-font) !important;
  font-size: 15px !important;
  cursor: pointer;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
body.base-id-6164 #simplyduty-ack-box > .de-alert label:has(#simplyduty_ack):hover {
  border-color: #b9d6f0 !important;
}
body.base-id-6164 #simplyduty-ack-box > .de-alert label:has(#simplyduty_ack:checked) {
  background: #f7fbff !important;
  border-color: var(--ck-blue) !important;
  box-shadow: 0 0 0 3px rgba(10,139,227,.12) !important;
}
body.base-id-6164 #simplyduty-ack-box #simplyduty_ack {
  margin: 1px 0 0 !important;
}
body.base-id-6164 #simplyduty-ack-box > .de-alert label:has(#simplyduty_ack) > span {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  color: var(--ck-navy) !important;
}

/* ---------- „Bitte zuerst Einfuhrabgaben berechnen.“ ---------- */
body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_hint {
  position: relative;
  margin: 12px 0 0 !important;
  padding: 10px 14px 10px 38px !important;
  background: var(--sd-red-tint) !important;
  border: 0 !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  font-family: var(--ck-font) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: var(--sd-red) !important;
}
body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_hint::before {
  content: "!";
  position: absolute;
  top: 50%;
  left: 12px;
  width: 18px;
  height: 18px;
  margin-top: -9px;
  border-radius: 50%;
  background: var(--sd-red);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  text-align: center;
}
body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_hint::after { display: none !important; }

/* ---------- Status („Berechne Einfuhrabgaben …“ / Fehler) ---------- */
body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_status {
  margin: 10px 0 0 !important;
  font-family: var(--ck-font) !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
}
body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_status:empty { margin: 0 !important; }
body.base-id-6164 #simplyduty-ack-box .sd-spinner { border-top-color: var(--ck-blue) !important; }

/* ---------- Mobil ---------- */
@media (max-width: 767px) {
  body.base-id-6164 #simplyduty-ack-box > .de-alert {
    padding: 16px 16px 16px 18px !important;
    font-size: 14px !important;
  }
  body.base-id-6164 #simplyduty-ack-box .de-alert__icon { flex-basis: 36px; width: 36px !important; height: 36px !important; }
  body.base-id-6164 #simplyduty-ack-box .de-alert__icon svg { width: 22px !important; height: 22px !important; }
  body.base-id-6164 #simplyduty-ack-box .de-alert__text { font-size: 16px !important; }
  body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_btn { align-self: stretch; width: 100% !important; }
}
@media (prefers-reduced-motion: reduce) {
  body.base-id-6164 #simplyduty-ack-box * { transition: none !important; }
  body.base-id-6164 #simplyduty-ack-box #simplyduty_calc_btn:hover { transform: none; }
}

body.base-id-6164 .elementor-widget-woocommerce-checkout-page .e-woocommerce-login-section {
    margin-bottom: 30px !important;
}

#simplyduty-ack-box > .de-alert.hidden { display: block !important; }

/* =========================================================================
   Upsell-Popup vor der Kasse (#checkout-popup) – modernes Design
   Ersetzt upsell-popup-button.css (Button ist hier enthalten).
   Global laden (Popup kann auf jeder Seite kommen). Keine Texte im CSS.
   ========================================================================= */

/* Hintergrund: abgedunkelt + leicht unscharf, Popup mittig */
body #checkout-popup {
  padding: 16px !important;
  box-sizing: border-box !important;
  z-index: 9999 !important;
}
body #checkout-popup .backdrop-upselling {
  background: rgba(11, 31, 58, .55) !important;
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
  animation: upFade .2s ease-out;
}

/* Karte */
body #checkout-popup section.popup {
  position: relative;
  width: 100% !important;
  max-width: 540px !important;
  max-height: calc(100vh - 32px);
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
  overscroll-behavior: contain;
  margin: 0 !important;
  padding: 36px 32px 28px !important;
  background: #fff !important;
  border: 1px solid #e3eaf3 !important;
  border-radius: 20px !important;
  box-shadow: 0 24px 60px rgba(11, 31, 58, .28), 0 4px 14px rgba(11, 31, 58, .12) !important;
  box-sizing: border-box !important;
  font-family: "Roboto Condensed", "Roboto", Arial, sans-serif !important;
  text-align: center;
  animation: upPop .25s cubic-bezier(.2, .9, .3, 1.2);
}

/* Schließen */
body #checkout-popup .checkout-popup-close {
  top: 14px !important;
  right: 14px !important;
  width: 40px !important;
  height: 40px !important;
  padding: 0 0 3px !important;
  background: #f4f7fb !important;
  border: 1px solid #e3eaf3;
  border-radius: 50% !important;
  color: #0b1f3a !important;
  font-size: 26px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  box-sizing: border-box;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}
body #checkout-popup .checkout-popup-close:hover {
  background: #eaf5fd !important;
  border-color: #0a8be3;
  color: #0a8be3 !important;
}

/* Titel */
body #checkout-popup section.popup > h2 {
  max-width: none !important;
  margin: 0 auto 6px !important;
  padding: 0 44px !important;
  color: #0b1f3a !important;
  font-family: inherit !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -.01em;
}

/* Set-Bild */
body #checkout-popup section.popup .center-column img {
  width: 100% !important;
  max-width: 420px !important;
  height: auto !important;
  margin: 10px auto 18px !important;
}

/* Liste/Produkt */
body #checkout-popup section.popup ul.products {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body #checkout-popup section.popup ul.products::before,
body #checkout-popup section.popup ul.products::after {
  display: none !important;
}

/* Aktionszeile + Zeitraum als Badge */
body #checkout-popup .aktion-zeit-heading {
  display: block !important;
  margin: 0 auto 4px !important;
  color: #0b1f3a !important;
  font-family: inherit !important;
  font-size: 21px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}
body #checkout-popup .aktion-zeit-heading > span {
  display: inline-block;
  margin-top: 8px;
  padding: 5px 14px;
  background: #eaf5fd;
  border-radius: 999px;
  color: #0a8be3;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
}

body #checkout-popup section.popup li.product {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  float: none !important;
  width: 100% !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  text-align: left;
}

/* Preis */
body #checkout-popup section.popup .price {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 2px;
  margin: 0 0 14px !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
body #checkout-popup section.popup .price :is(del, ins) {
  text-decoration: none !important;
  background: none !important;
  opacity: 1 !important;
}
body #checkout-popup section.popup .price bdi {
  font-family: inherit !important;
  line-height: 1.1 !important;
}
body #checkout-popup section.popup .price del bdi {
  position: relative;
  color: #6b7c93 !important;
  font-size: 24px !important;
  font-weight: 500 !important;
}
body #checkout-popup section.popup .price del bdi::after {
  top: 50% !important;
  left: -4px !important;
  right: -4px !important;
  height: 2px !important;
  margin-top: -1px;
  background: #e5484d !important;
  border-radius: 2px;
  transform: rotate(-8deg) !important;
}
body #checkout-popup section.popup .price ins bdi {
  color: #0b1f3a !important;
  font-size: 48px !important;
  font-weight: 700 !important;
  letter-spacing: -.02em;
}

/* =========================================================================
   Set-Inhalt als hellblaue Box – UNABHÄNGIG vom HTML der Kurzbeschreibung.
   Die Box wird nicht an p.description gehängt (die ist in manchen Sprachen
   leer, weil dort eigene <p>-Absätze gepflegt sind), sondern um ALLES
   zwischen Preis und Steuerhinweis gezeichnet:
     li::before = obere Kante · Inhalt = Mittelteil · li::after = untere Kante
   Reihenfolge per flex-order: Preis → Box → Steuerhinweis → Button.
   ========================================================================= */
body #checkout-popup section.popup li.product > * { order: 3; }
body #checkout-popup section.popup li.product > .price { order: 1 !important; }
body #checkout-popup section.popup li.product > .tax-info { order: 5 !important; }
body #checkout-popup section.popup li.product > :is(a.button, .added_to_cart) { order: 6 !important; }
body #checkout-popup section.popup li.product > :is(.screen-reader-text, script, .onsale) { order: 7 !important; }

body #checkout-popup section.popup li.product::before,
body #checkout-popup section.popup li.product::after {
  content: "" !important;
  display: block !important;
  height: 18px;
  background: #f4f7fb;
  border: 1px solid #e3eaf3;
}
body #checkout-popup section.popup li.product::before {
  order: 2;
  border-bottom: 0;
  border-radius: 14px 14px 0 0;
}
body #checkout-popup section.popup li.product::after {
  order: 4;
  margin-bottom: 12px;
  border-top: 0;
  border-radius: 0 0 14px 14px;
}

/* Mittelteil: jedes Element zwischen Preis und Steuerhinweis */
body #checkout-popup section.popup li.product > :not(.price, .tax-info, a, .added_to_cart, .onsale, .screen-reader-text, script) {
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 20px !important;
  background: #f4f7fb !important;
  border: 1px solid #e3eaf3 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-radius: 0 !important;
  color: #34465e !important;
  font-family: inherit !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.75 !important;
  text-align: left !important;
}
/* leere Absätze (z. B. leere p.description) */
body #checkout-popup section.popup li.product > :is(p, div):empty { display: none !important; }
/* Absatz-Abstand, wenn die Inhalte in eigenen <p> stehen */
body #checkout-popup section.popup li.product > p:not(.tax-info, :empty) ~ p:not(.tax-info, :empty) { padding-top: 6px !important; }

/* Zeilenumbrüche vereinheitlichen */
body #checkout-popup section.popup li.product br + br,
body #checkout-popup section.popup li.product .sparen-title-upseller + br,
body #checkout-popup section.popup li.product strong[style] + br { display: none !important; }

/* „Sie sparen …“ als Badge – egal wo es steht */
body #checkout-popup section.popup li.product .sparen-title-upseller {
  display: table !important;
  margin: 0 auto 14px !important;
  padding: 7px 16px !important;
  background: linear-gradient(180deg, #22a8f0 0%, #0a8be3 100%) !important;
  border-radius: 999px;
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  box-shadow: 0 6px 16px rgba(10, 139, 227, .25);
}
/* „Das Set besteht aus:“ */
body #checkout-popup section.popup li.product strong[style] {
  display: block;
  margin-bottom: 4px;
  color: #0b1f3a;
  font-size: 17px !important;
  font-weight: 700 !important;
}
/* Mengen „1x“ */
body #checkout-popup section.popup li.product > :not(.price) strong:not([style]) {
  padding-right: 6px;
  color: #0a8be3;
  font-weight: 700;
}
/* Positionen ohne <br> (z. B. IT): neue Zeile vor jeder Menge */
body #checkout-popup section.popup li.product span[style] + strong:not([style])::before {
  content: "\A";
  white-space: pre;
}
/* Einzelpreise: fett hinter dem Namen; ab Tablet rechtsbündig wie auf einer Rechnung */
body #checkout-popup section.popup li.product > :not(.price) span[style] {
  margin-left: 4px;
  color: #0b1f3a;
  font-size: 16px !important;
  font-weight: 700 !important;
  white-space: nowrap;
}
@media (min-width: 561px) {
  /* feste Preisspalte rechts: Inhalt rückt 76px ein, Preis hängt in diese Spalte */
  body #checkout-popup section.popup li.product > :not(.price, .tax-info, a, .added_to_cart, .onsale, .screen-reader-text, script) {
    padding-right: 96px !important;
  }
  body #checkout-popup section.popup li.product > :not(.price) span[style] {
    float: right;
    width: 76px;
    margin: 0 -76px 0 0;
    text-align: right;
  }
  body #checkout-popup section.popup li.product .sparen-title-upseller {
    transform: translateX(38px);
  }
}
/* per JS angehängte Artikelnummer im Popup-Titel ausblenden */
body #checkout-popup section.popup > h2 .product-sku { display: none !important; }
body #checkout-popup section.popup li.product > :not(.price, .tax-info, a, .added_to_cart, .onsale, .screen-reader-text, script)::after {
  content: "";
  display: table;
  clear: both;
}

/* Steuerhinweis */
body #checkout-popup section.popup .tax-info {
  margin: 0 0 14px !important;
  color: #6b7c93 !important;
  font-size: 14px !important;
  text-align: center !important;
}

/* Button „In den Warenkorb“ (auch Bundle) */
body #checkout-popup section.popup li.product a.button.add_to_cart_button:not(#ck-boost) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px;
  width: 100% !important;
  height: 56px !important;
  margin: 0 !important;
  padding: 0 24px !important;
  background: linear-gradient(180deg, #22a8f0 0%, #0a8be3 100%) !important;
  border: 0 !important;
  border-radius: 12px !important;
  color: #fff !important;
  font-family: "Roboto Condensed", "Roboto", Arial, sans-serif !important;
  font-size: 19px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  white-space: nowrap;
  box-shadow: 0 10px 24px rgba(10, 139, 227, .28) !important;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
body #checkout-popup section.popup li.product a.button.add_to_cart_button:not(#ck-boost)::before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  font-size: 0 !important;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3.5h2.6l2.3 11.2a1.6 1.6 0 0 0 1.6 1.3h8.5a1.6 1.6 0 0 0 1.6-1.2L21 7.5H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.3'/%3E%3Ccircle cx='17.5' cy='20' r='1.3'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3.5h2.6l2.3 11.2a1.6 1.6 0 0 0 1.6 1.3h8.5a1.6 1.6 0 0 0 1.6-1.2L21 7.5H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.3'/%3E%3Ccircle cx='17.5' cy='20' r='1.3'/%3E%3C/svg%3E") center/contain no-repeat;
}
body #checkout-popup section.popup li.product a.button.add_to_cart_button:not(#ck-boost)::after {
  display: none !important;
}
body #checkout-popup section.popup li.product a.button.add_to_cart_button:not(#ck-boost):hover,
body #checkout-popup section.popup li.product a.button.add_to_cart_button:not(#ck-boost):focus-visible {
  color: #fff !important;
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 14px 30px rgba(10, 139, 227, .34) !important;
}
body #checkout-popup section.popup li.product a.button.add_to_cart_button:not(#ck-boost):focus-visible {
  outline: 3px solid rgba(34, 168, 240, .45) !important;
  outline-offset: 2px;
}
body #checkout-popup section.popup li.product a.button.add_to_cart_button:not(#ck-boost).loading {
  opacity: .7 !important;
}

/* Mobil */
@media (max-width: 560px) {
  body #checkout-popup { padding: 10px !important; }
  body #checkout-popup section.popup {
    max-height: calc(100vh - 20px);
    max-height: calc(100dvh - 20px);
    padding: 28px 18px 20px !important;
    border-radius: 18px !important;
  }
  body #checkout-popup .checkout-popup-close { top: 10px !important; right: 10px !important; width: 36px !important; height: 36px !important; font-size: 24px !important; }
  body #checkout-popup section.popup > h2 { font-size: 24px !important; padding: 0 38px !important; }
  body #checkout-popup .aktion-zeit-heading { font-size: 18px !important; }
  body #checkout-popup section.popup .price del bdi { font-size: 20px !important; }
  body #checkout-popup section.popup .price ins bdi { font-size: 40px !important; }
  body #checkout-popup section.popup li.product > :not(.price, .tax-info, a, .added_to_cart, .onsale, .screen-reader-text, script) { padding: 0 14px !important; font-size: 15px !important; }
  body #checkout-popup section.popup li.product > :not(.price) span[style] { font-size: 15px !important; }
}

@keyframes upFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes upPop { from { opacity: 0; transform: translateY(10px) scale(.98); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  body #checkout-popup .backdrop-upselling,
  body #checkout-popup section.popup { animation: none !important; }
  body #checkout-popup section.popup li.product a.button.add_to_cart_button { transition: none !important; }
}

/* =========================================================================
   UNTERSEITEN – minimale Angleichung an das neue Design
   Datei: css/seiten-modern.css (global laden)

   Teil A (global, alle Seiten, nur im Seiteninhalt):
     – Elementor-Buttons mit Klasse .btn-blue
     – Elementor-Formulare (Felder, Buttons, Schrittanzeige)
     – Brevo-Termin-Button (HTML-Widget)
   Teil B (nur Service-/Kontakt-Unterseiten, per WPML base-id → alle Sprachen):
     – Überschriften/Text, Tabellen, Zeitstrahl, Galerien

   Keine Texte im CSS. Shape-Divider (Dreiecke) bleiben unangetastet.
   ========================================================================= */

/* =========================================================================
   TEIL A1 – Buttons .btn-blue (global, gleiche Optik wie Produktseiten)
   ========================================================================= */
body [data-elementor-type="wp-page"] .elementor-widget-button.btn-blue .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 60px !important;
  padding: 14px 34px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #22a8f0 0%, #0a8be3 100%) !important;
  color: #fff !important;
  fill: #fff !important;
  font-family: "Roboto Condensed", "Roboto", Arial, sans-serif !important;
  font-size: 21px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(10, 139, 227, .28) !important;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease !important;
}
body [data-elementor-type="wp-page"] .elementor-widget-button.btn-blue .elementor-button:hover,
body [data-elementor-type="wp-page"] .elementor-widget-button.btn-blue .elementor-button:focus-visible {
  color: #fff !important;
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 14px 30px rgba(10, 139, 227, .34) !important;
}
body [data-elementor-type="wp-page"] .elementor-widget-button.btn-blue .elementor-button:focus-visible {
  outline: 3px solid rgba(34, 168, 240, .45) !important;
  outline-offset: 3px;
}
body [data-elementor-type="wp-page"] .elementor-widget-button.btn-blue .elementor-button .elementor-button-content-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px;
}
body [data-elementor-type="wp-page"] .elementor-widget-button.btn-blue .elementor-button .elementor-button-text {
  color: inherit !important;
  font: inherit !important;
}
body [data-elementor-type="wp-page"] .elementor-widget-button.btn-blue .elementor-button .elementor-button-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px;
  height: 30px;
  margin: 0 !important;
  border-radius: 50%;
  background: rgba(255, 255, 255, .2);
  font-size: 14px !important;
  color: #fff !important;
  fill: #fff !important;
}
body [data-elementor-type="wp-page"] .elementor-widget-button.btn-blue .elementor-button .elementor-button-icon :is(i, svg) {
  font-size: 14px !important;
  width: 14px;
  height: 14px;
}
@media (max-width: 767px) {
  body [data-elementor-type="wp-page"] .elementor-widget-button.btn-blue .elementor-button {
    min-height: 56px !important;
    padding: 12px 20px !important;
    font-size: 18px !important;
  }
}

/* =========================================================================
   TEIL A2 – Elementor-Formulare im Seiteninhalt
   ========================================================================= */
/* Labels & Abschnitts-Titel im Formular */
body [data-elementor-type="wp-page"] .elementor-widget-form .elementor-field-label {
  color: #0b1f3a !important;
  font-weight: 600 !important;
}
body [data-elementor-type="wp-page"] .elementor-widget-form .de-form-section {
  color: #0b1f3a !important;
}

/* Text-Felder, E-Mail, Telefon, Textarea, Select */
body [data-elementor-type="wp-page"] .elementor-widget-form .elementor-field-group .elementor-field.elementor-field-textual,
body [data-elementor-type="wp-page"] .elementor-widget-form .elementor-field-group .elementor-select-wrapper select {
  min-height: 52px !important;
  padding: 12px 16px !important;
  background-color: #fff !important;
  border: 1.5px solid #d6e0ec !important;
  border-radius: 10px !important;
  color: #0b1f3a !important;
  font-size: 20px !important;
  line-height: 1.4 !important;
  box-shadow: none !important;
  transition: border-color .2s ease, box-shadow .2s ease;
}
body [data-elementor-type="wp-page"] .elementor-widget-form .elementor-field-group textarea.elementor-field.elementor-field-textual {
  min-height: 130px !important;
}
body [data-elementor-type="wp-page"] .elementor-widget-form .elementor-field-group .elementor-field.elementor-field-textual::placeholder {
  color: #8796ab !important;
  opacity: 1;
}
body [data-elementor-type="wp-page"] .elementor-widget-form .elementor-field-group .elementor-field.elementor-field-textual:hover {
  border-color: #b9cbe0 !important;
}
body [data-elementor-type="wp-page"] .elementor-widget-form .elementor-field-group .elementor-field.elementor-field-textual:focus,
body [data-elementor-type="wp-page"] .elementor-widget-form .elementor-field-group .elementor-select-wrapper select:focus {
  border-color: #0a8be3 !important;
  box-shadow: 0 0 0 3px rgba(10, 139, 227, .15) !important;
  outline: none !important;
}

/* Checkboxen / Radios in Markenfarbe */
body [data-elementor-type="wp-page"] .elementor-widget-form input[type="checkbox"],
body [data-elementor-type="wp-page"] .elementor-widget-form input[type="radio"] {
  accent-color: #0a8be3;
  width: 18px;
  height: 18px;
  vertical-align: -3px;
}

/* Formular-Buttons: Form, Schrift, Größe (alle) */
body [data-elementor-type="wp-page"] .elementor-widget-form button.elementor-button:not(#dep-boost) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 56px !important;
  padding: 12px 32px !important;
  border: 0 !important;
  border-radius: 12px !important;
  font-family: "Roboto Condensed", "Roboto", Arial, sans-serif !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease, opacity .2s ease !important;
}
body [data-elementor-type="wp-page"] .elementor-widget-form button.elementor-button .elementor-button-text {
  color: inherit !important;
  font: inherit !important;
}
/* Farbe: blauer Verlauf.
   Ausnahme .angebot-jquery (Software-Abfrage): dort steuert das Seiten-CSS den grauen Sperr-Zustand – bleibt unberührt. */
body [data-elementor-type="wp-page"] .elementor-widget-form:not(.angebot-jquery) button.elementor-button:not(#dep-boost) {
  background: linear-gradient(180deg, #22a8f0 0%, #0a8be3 100%) !important;
  color: #fff !important;
  fill: #fff !important;
  box-shadow: 0 10px 24px rgba(10, 139, 227, .26) !important;
}
body [data-elementor-type="wp-page"] .elementor-widget-form:not(.angebot-jquery) button.elementor-button:not(#dep-boost):hover:not(:disabled, [aria-disabled="true"]) {
  color: #fff !important;
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 14px 30px rgba(10, 139, 227, .32) !important;
}
/* „Zurück“-Buttons (Mehrschritt-Formulare) als weißer Zweit-Button */
body [data-elementor-type="wp-page"] .elementor-widget-form:not(.angebot-jquery) button.elementor-button:is(.e-form__buttons__wrapper__button-previous, .laub-subbtn-prev, .lauc-subbtn-prev):not(#dep-boost) {
  background: #fff !important;
  color: #0b1f3a !important;
  fill: #0b1f3a !important;
  border: 1.5px solid #d6e0ec !important;
  box-shadow: none !important;
}
body [data-elementor-type="wp-page"] .elementor-widget-form:not(.angebot-jquery) button.elementor-button:is(.e-form__buttons__wrapper__button-previous, .laub-subbtn-prev, .lauc-subbtn-prev):not(#dep-boost):hover {
  background: #eaf5fd !important;
  border-color: #0a8be3 !important;
  color: #0a8be3 !important;
  filter: none;
  box-shadow: none !important;
}
/* Gesperrt (z. B. Mindestauswahl nicht erfüllt) */
body [data-elementor-type="wp-page"] .elementor-widget-form button.elementor-button:is(:disabled, [aria-disabled="true"]):not(#dep-boost) {
  opacity: .5 !important;
  box-shadow: none !important;
  transform: none !important;
  cursor: not-allowed;
}
body [data-elementor-type="wp-page"] .elementor-widget-form button.elementor-button:focus-visible {
  outline: 3px solid rgba(34, 168, 240, .45) !important;
  outline-offset: 2px;
}

/* Schrittanzeige (1 – 2 – 3) */
body [data-elementor-type="wp-page"] .elementor-widget-form {
  --e-form-steps-indicator-active-primary-color: #0a8be3;
  --e-form-steps-indicator-active-secondary-color: #eaf5fd;
  --e-form-steps-indicator-inactive-primary-color: #8796ab;
  --e-form-steps-indicator-inactive-secondary-color: #fff;
  --e-form-steps-indicator-completed-primary-color: #0a8be3;
  --e-form-steps-indicator-completed-secondary-color: #fff;
}
body [data-elementor-type="wp-page"] .elementor-widget-form .e-form__indicators__indicator__number {
  font-weight: 700;
}
body [data-elementor-type="wp-page"] .elementor-widget-form .e-form__indicators__indicator--state-active .e-form__indicators__indicator__number {
  border-color: #0a8be3 !important;
  box-shadow: 0 0 0 4px rgba(10, 139, 227, .12);
}
body [data-elementor-type="wp-page"] .elementor-widget-form .e-form__indicators__indicator__separator {
  background-color: #d6e0ec !important;
}

@media (max-width: 767px) {
  body [data-elementor-type="wp-page"] .elementor-widget-form .elementor-field-group .elementor-field.elementor-field-textual {
    font-size: 18px !important;
  }
  body [data-elementor-type="wp-page"] .elementor-widget-form button.elementor-button:not(#dep-boost) {
    font-size: 18px !important;
  }
}

/* =========================================================================
   TEIL A3 – Brevo „Termin vereinbaren“-Button (HTML-Widget, Inline-Styles)
   Erkennung über den Brevo-Aufruf, nicht über Text → sprachunabhängig.
   Hinweis: Schriftgröße, Innenabstand und Rundung sind dort inline mit
   !important gesetzt und lassen sich per CSS nicht ändern.
   ========================================================================= */
body [data-elementor-type="wp-page"] a[onclick*="BrevoBookingPage"] {
  background: linear-gradient(180deg, #22a8f0 0%, #0a8be3 100%) !important;
  color: #fff !important;
  font-weight: 600 !important;
  box-shadow: 0 10px 24px rgba(10, 139, 227, .26) !important;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
body [data-elementor-type="wp-page"] a[onclick*="BrevoBookingPage"]:hover {
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 14px 30px rgba(10, 139, 227, .32) !important;
}

/* =========================================================================
   TEIL B – Service-/Kontakt-Unterseiten (alle Sprachen über base-id)
   10641 Einrichtung · 59268 Rücksende · 27156 Fernwartung · 27179 Vergleich
   556 Schnittstellen · 11265 Produkthistorie · 330 Galerie · 10702 Bildarten
   10524 Produkt-Fotos · 357 Impressum · 1711 Anfrage · 22501 Termin
   60571 Talentsuche · 38767 Stellenausschreibung · 7721 Software-Abfrage
   ========================================================================= */

/* Überschriften Navy, Fließtext Blau-Grau (farbige Inline-Wortmarken bleiben) */
body:is(.base-id-10641, .base-id-59268, .base-id-27156, .base-id-27179, .base-id-556, .base-id-11265, .base-id-330, .base-id-10702, .base-id-10524, .base-id-357, .base-id-1711, .base-id-22501, .base-id-60571, .base-id-38767, .base-id-7721) [data-elementor-type="wp-page"] .elementor-widget-heading .elementor-heading-title {
  color: #0b1f3a !important;
  font-weight: 700 !important;
  letter-spacing: -.015em;
  line-height: 1.2 !important;
}
body:is(.base-id-10641, .base-id-59268, .base-id-27156, .base-id-27179, .base-id-556, .base-id-11265, .base-id-330, .base-id-10702, .base-id-10524, .base-id-357, .base-id-1711, .base-id-22501, .base-id-60571, .base-id-38767, .base-id-7721) [data-elementor-type="wp-page"] .elementor-widget-text-editor {
  color: #34465e !important;
}
body:is(.base-id-10641, .base-id-59268, .base-id-27156, .base-id-27179, .base-id-556, .base-id-11265, .base-id-330, .base-id-10702, .base-id-10524, .base-id-357, .base-id-1711, .base-id-22501, .base-id-60571, .base-id-38767, .base-id-7721) [data-elementor-type="wp-page"] .elementor-widget-text-editor :is(strong, b, h2, h3, h4) {
  color: #0b1f3a;
}
/* Icon-Boxen (Kontakt: Telefon / Adresse) */
body:is(.base-id-1711) [data-elementor-type="wp-page"] .elementor-widget-icon-box .elementor-icon {
  color: #0a8be3 !important;
  fill: #0a8be3 !important;
}
body:is(.base-id-1711) [data-elementor-type="wp-page"] .elementor-widget-icon-box .elementor-icon-box-title {
  color: #0b1f3a !important;
}

/* Tabellen (Vergleich, Schnittstellen) */
body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table-container {
  background: #fff;
  border: 1px solid #e3eaf3;
  border-radius: 14px;
  box-shadow: 0 1px 2px rgba(16, 40, 80, .04), 0 10px 28px rgba(16, 40, 80, .05);
  overflow: hidden;
}
body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table {
  margin: 0 !important;
  border: 0 !important;
}
body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table thead th {
  background: #f4f7fb !important;
  color: #0b1f3a !important;
  border: 0 !important;
  border-bottom: 2px solid #d6e0ec !important;
  vertical-align: top;
}
body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table tbody :is(td, th) {
  border: 0 !important;
  border-bottom: 1px solid #e3eaf3 !important;
  color: #34465e !important;
}
body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table tbody tr:last-child :is(td, th) {
  border-bottom: 0 !important;
}
body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table tbody tr {
  background: #fff !important;
  transition: background .15s ease;
}
body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table tbody tr:nth-child(even) {
  background: #fafcfe !important;
}
body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table tbody tr:hover {
  background: #eaf5fd !important;
}
body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table tbody :is(td, th) strong {
  color: #0b1f3a;
}
body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table :is(i, svg) {
  color: #0a8be3 !important;
  fill: #0a8be3 !important;
}

/* Zeitstrahl (Produkthistorie) */
body.base-id-11265 [data-elementor-type="wp-page"] .pp-timeline-card {
  border: 1px solid #e3eaf3 !important;
  border-radius: 14px !important;
  box-shadow: 0 1px 2px rgba(16, 40, 80, .04), 0 10px 28px rgba(16, 40, 80, .06) !important;
}
body.base-id-11265 [data-elementor-type="wp-page"] .pp-timeline-card-title {
  color: #0b1f3a !important;
}
body.base-id-11265 [data-elementor-type="wp-page"] .pp-timeline-marker {
  background: linear-gradient(180deg, #22a8f0 0%, #0a8be3 100%) !important;
  box-shadow: 0 0 0 4px rgba(10, 139, 227, .14);
}
body.base-id-11265 [data-elementor-type="wp-page"] .pp-timeline-connector {
  background-color: #d6e0ec !important;
}
body.base-id-11265 [data-elementor-type="wp-page"] .pp-timeline-connector-inner {
  background-color: #0a8be3 !important;
}
body.base-id-11265 [data-elementor-type="wp-page"] .pp-timeline-card-date {
  color: #0b1f3a !important;
}

/* Galerien / Bildkacheln */
body:is(.base-id-330, .base-id-10524, .base-id-10702) [data-elementor-type="wp-page"] :is(.elementor-widget-image-gallery .gallery-icon img, .elementor-widget-pp-image-gallery img, .elementor-widget-gallery .e-gallery-image) {
  border-radius: 12px;
}

@media (max-width: 767px) {
  body:is(.base-id-27179, .base-id-556) [data-elementor-type="wp-page"] .elementor-widget-pp-table .pp-table-container {
    border-radius: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body [data-elementor-type="wp-page"] :is(.elementor-widget-button.btn-blue .elementor-button, .elementor-widget-form button.elementor-button, a[onclick*="BrevoBookingPage"]) {
    transition: none !important;
    transform: none !important;
  }
}