/* ============================================================
   Shop: ersetzt woocommerce-general und bringt WooCommerce in
   die Formensprache des Themes. Struktur- und Mobilstile von
   WooCommerce (layout, smallscreen) bleiben geladen.
   ============================================================ */

/* ---------- Kopf ---------- */
.shophero .facts{margin-top:26px}
.shophero .facts span{align-items:baseline}
.shopnav{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.shopnav a{border:1px solid var(--mist);background:var(--white);border-radius:999px;padding:9px 16px;font-size:14.5px;font-weight:500;transition:border-color .2s,background .2s,color .2s}
.shopnav a:hover{border-color:var(--anthracite)}
.shopnav a[aria-current="page"]{background:var(--ink);border-color:var(--ink);color:#fff}

.shopmain{padding-top:0}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13.5px;color:var(--steel);margin-bottom:22px}
.crumbs a{color:var(--steel)}
.crumbs a:hover{color:var(--ink)}
.crumbs span{color:var(--mist)}

/* ---------- Sortierleiste ---------- */
.shopbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  padding-bottom:20px;margin-bottom:32px;border-bottom:1px solid var(--mist)}
.shopbar .woocommerce-result-count{margin:0;font-size:14.5px;color:var(--steel)}
.shopbar .woocommerce-ordering{margin:0}
.shopbar select,.woocommerce-ordering select{appearance:none;border:1px solid var(--mist);background:var(--white);
  border-radius:var(--radius);padding:11px 40px 11px 14px;font:inherit;font-size:14.5px;color:var(--ink);cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--steel) 50%),linear-gradient(135deg,var(--steel) 50%,transparent 50%);
  background-position:calc(100% - 20px) calc(50% + 2px),calc(100% - 15px) calc(50% + 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.shopbar select:focus-visible{outline:2px solid var(--green);outline-offset:2px}

/* ---------- Produktraster ---------- */
.woocommerce ul.products,.woocommerce-page ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 28px;margin:0;padding:0;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:0;text-align:left;position:relative}
.woocommerce ul.products li.product a{display:block}
.woocommerce ul.products li.product .pimg{position:relative;overflow:hidden;border-radius:var(--radius);background:var(--white);border:1px solid var(--mist);aspect-ratio:4/3}
.woocommerce ul.products li.product .pimg img{width:100%;height:100%;object-fit:cover;margin:0;display:block;transition:transform .7s var(--ease)}
.woocommerce ul.products li.product:hover .pimg img{transform:scale(1.035)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:17.5px;font-weight:600;line-height:1.35;margin:16px 0 6px;padding:0;color:var(--ink);letter-spacing:-.01em;text-transform:none;font-variation-settings:normal}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title{color:var(--green)}
.woocommerce ul.products li.product .price{display:block;font-size:17px;font-weight:600;color:var(--ink);margin:0}
.woocommerce ul.products li.product .price del{color:var(--steel);font-weight:400;margin-right:8px}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce ul.products li.product .wc-gzd-additional-info,
.woocommerce ul.products li.product .product_unit_price,
.woocommerce ul.products li.product .wc-gzd-additional-info-loop{font-size:12.5px;line-height:1.5;color:var(--steel);margin-top:6px;display:block}
.woocommerce ul.products li.product .wc-gzd-additional-info p,
.woocommerce ul.products li.product .wc-gzd-additional-info span{display:inline;margin:0}
.woocommerce ul.products li.product .wc-gzd-additional-info .wc-gzd-additional-info-placeholder{display:inline}
.woocommerce ul.products li.product .button{margin-top:14px}

.pflag{position:absolute;top:12px;left:12px;z-index:2;border-radius:999px;padding:6px 13px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.pflag.sale{background:var(--lime);color:var(--lime-ink)}
.pflag.out{background:var(--ink);color:#fff}
.woocommerce span.onsale{display:none}

/* ---------- Buttons ---------- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.wc-block-components-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  background:var(--green);color:#fff;border:0;border-radius:var(--radius);padding:15px 26px;
  font:inherit;font-weight:600;font-size:15.5px;line-height:1.2;letter-spacing:.01em;white-space:nowrap;cursor:pointer;
  transition:background .25s,transform .35s var(--ease);text-shadow:none}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover{background:var(--green-2);color:#fff}
.woocommerce a.button:active,.woocommerce button.button:active{transform:translateY(1px) scale(.985)}
.woocommerce a.button:focus-visible,.woocommerce button.button:focus-visible,.woocommerce input.button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.woocommerce a.button.added_to_cart{background:transparent;color:var(--green);padding:10px 0;text-decoration:underline;text-underline-offset:3px}
.woocommerce ul.products li.product .button{background:transparent;color:var(--ink);border:1px solid var(--anthracite);padding:12px 20px;font-size:14.5px}
.woocommerce ul.products li.product .button:hover{background:var(--ink);color:#fff}
.woocommerce .button.wc-backward,.woocommerce a.button.wc-backward{background:transparent;color:var(--ink);border:1px solid var(--anthracite)}
.woocommerce .button.wc-backward:hover{background:var(--ink);color:#fff}
.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled]{background:var(--mist);color:var(--steel);cursor:not-allowed;opacity:1;padding:15px 26px}

/* ---------- Produktseite ---------- */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,4vw,72px);align-items:start}
.woocommerce div.product .woocommerce-product-gallery{width:auto!important;float:none!important;margin:0;grid-column:1}
.woocommerce div.product .summary{width:auto!important;float:none!important;margin:0;grid-column:2;position:sticky;top:110px}
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related,
.woocommerce div.product .up-sells{grid-column:1/-1}
.woocommerce div.product .woocommerce-product-gallery__wrapper{border:1px solid var(--mist);border-radius:var(--radius);overflow:hidden;background:var(--white)}
.woocommerce div.product .woocommerce-product-gallery img{display:block;border-radius:0}
.woocommerce div.product .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:12px 0 0;padding:0}
.woocommerce div.product .flex-control-thumbs li{width:auto;float:none;margin:0}
.woocommerce div.product .flex-control-thumbs img{border:1px solid var(--mist);border-radius:var(--radius);opacity:.75;transition:opacity .2s,border-color .2s}
.woocommerce div.product .flex-control-thumbs img.flex-active,.woocommerce div.product .flex-control-thumbs img:hover{opacity:1;border-color:var(--anthracite)}

.woocommerce div.product .product_title{font-size:clamp(28px,3.2vw,44px);line-height:1.05;letter-spacing:-.02em;margin:0 0 16px;font-variation-settings:"wdth" 108}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:30px;font-weight:600;color:var(--ink);margin:0 0 4px}
.woocommerce div.product p.price del{font-size:20px;color:var(--steel);font-weight:400}
.woocommerce div.product p.price ins{text-decoration:none}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--ink-2);line-height:1.65;margin:18px 0 0;max-width:52ch}
.woocommerce div.product .wc-gzd-additional-info,.woocommerce div.product .product_unit_price,
.woocommerce div.product .wc-gzd-additional-info-placeholder{font-size:13px;line-height:1.6;color:var(--steel);margin:0}
.woocommerce div.product form.cart{margin:26px 0 0;display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}
.woocommerce div.product form.cart .button{flex:1 1 auto;min-width:200px}
.woocommerce .quantity .qty{width:84px;height:100%;min-height:52px;border:1px solid var(--mist);border-radius:var(--radius);
  background:var(--white);text-align:center;font:inherit;font-size:16px;font-weight:600;color:var(--ink);padding:0 6px}
.woocommerce .quantity .qty:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.woocommerce div.product .product_meta{margin:26px 0 0;padding-top:22px;border-top:1px solid var(--mist);font-size:14px;color:var(--steel);display:grid;gap:6px}
.woocommerce div.product .product_meta a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.woocommerce div.product .stock{font-size:14.5px;font-weight:600;margin:14px 0 0}
.woocommerce div.product .stock.in-stock{color:var(--green)}
.woocommerce div.product .stock.out-of-stock{color:#8B2E2E}
.ptrust{display:flex;flex-wrap:wrap;gap:8px 22px;margin:22px 0 0;padding-top:20px;border-top:1px solid var(--mist);font-size:14px;color:var(--ink-2)}
.ptrust span{display:inline-flex;align-items:center;gap:8px}
.ptrust .ms{font-size:19px;color:var(--green)}

/* Reiter */
.woocommerce div.product .woocommerce-tabs{margin-top:clamp(48px,6vw,88px);border-top:1px solid var(--mist);padding-top:8px}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 28px;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none;border:0;border-radius:0;margin:0;padding:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:16px 4px;margin-right:26px;font-weight:600;font-size:16px;color:var(--steel);border-bottom:2px solid transparent}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover{color:var(--ink);border-bottom-color:var(--green)}
.woocommerce div.product .woocommerce-tabs .panel{max-width:70ch;font-size:16.5px;line-height:1.7;color:var(--ink-2)}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:22px;margin:0 0 14px;color:var(--ink)}
.woocommerce table.shop_attributes{border:1px solid var(--mist);border-radius:var(--radius);border-collapse:collapse;width:100%;max-width:none}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{border:0;border-bottom:1px solid var(--mist);padding:13px 18px;font-size:15px;line-height:1.5;font-style:normal}
.woocommerce table.shop_attributes th{background:var(--paper);font-weight:600;width:34%;text-align:left}
.woocommerce table.shop_attributes tr:last-child th,.woocommerce table.shop_attributes tr:last-child td{border-bottom:0}
.woocommerce table.shop_attributes td p{margin:0;padding:0}

.woocommerce .related,.woocommerce .up-sells,.woocommerce .cross-sells{display:block;width:100%;float:none;clear:both}
.woocommerce div.product>.related,.woocommerce div.product>.up-sells,.woocommerce div.product>.woocommerce-tabs{grid-column:1/-1}
.woocommerce .related>h2,.woocommerce .up-sells>h2,.woocommerce .cross-sells>h2{font-size:clamp(24px,2.6vw,34px);letter-spacing:-.02em;margin:clamp(48px,6vw,80px) 0 28px;text-transform:none}
.woocommerce .related ul.products,.woocommerce .up-sells ul.products,.woocommerce .cross-sells ul.products{grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.woocommerce .related ul.products,.woocommerce .up-sells ul.products{grid-template-columns:repeat(2,1fr)}}

/* ---------- Warenkorb, Kasse, Konto ---------- */
.shoppage{max-width:1180px;margin-inline:auto}
.woocommerce table.shop_table{border:1px solid var(--mist);border-radius:var(--radius);border-collapse:collapse;width:100%;margin:0 0 28px}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border:0;border-bottom:1px solid var(--mist);padding:18px;font-size:15.5px;vertical-align:middle}
.woocommerce table.shop_table thead th{background:var(--paper);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel);font-weight:600}
.woocommerce table.shop_table tbody tr:last-child td{border-bottom:0}
.woocommerce table.shop_table td.product-thumbnail img{width:78px;height:auto;border-radius:var(--radius);border:1px solid var(--mist)}
.woocommerce table.shop_table td.product-name a{font-weight:600;color:var(--ink)}
.woocommerce table.shop_table td.product-name a:hover{color:var(--green)}
.woocommerce a.remove{width:26px;height:26px;line-height:24px;font-size:20px;color:var(--steel)!important;border:1px solid var(--mist);border-radius:999px}
.woocommerce a.remove:hover{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)}
.woocommerce .cart-collaterals,.woocommerce-cart .cart-collaterals{width:100%}
.woocommerce .cart-collaterals .cart_totals{width:100%;float:none}
.woocommerce .cart_totals h2,.woocommerce-checkout h3,.woocommerce-checkout #order_review_heading{font-size:22px;letter-spacing:-.01em;margin:0 0 16px}
.woocommerce .cart_totals table.shop_table th{background:transparent;text-transform:none;font-size:15.5px;letter-spacing:0;color:var(--ink)}
.woocommerce .cart_totals .order-total th,.woocommerce .cart_totals .order-total td{font-size:19px;font-weight:600}
.woocommerce-cart .wc-proceed-to-checkout{padding:0}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{display:flex;width:100%;font-size:16.5px;padding:18px 26px}
.woocommerce .cart .button,.woocommerce .cart input.button{padding:13px 20px;font-size:14.5px}

.woocommerce form .form-row{margin:0 0 18px;padding:0;display:flex;flex-direction:column}
.woocommerce form .form-row label{font-size:14px;font-weight:600;color:var(--ink);margin-bottom:7px}
.woocommerce form .form-row .required{color:#8B2E2E;text-decoration:none}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,
.woocommerce .select2-container .select2-selection--single{width:100%;border:1px solid var(--mist);border-radius:var(--radius);
  background:var(--white);padding:14px 16px;font:inherit;font-size:16px;color:var(--ink);line-height:1.4;height:auto;min-height:52px}
.woocommerce form .form-row textarea{min-height:110px;resize:vertical}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus,.woocommerce form .form-row select:focus{outline:2px solid var(--green);outline-offset:1px;border-color:var(--green)}
.woocommerce form .form-row .description,.woocommerce form .form-row small{font-size:13px;color:var(--steel);margin-top:6px}
.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:calc(50% - 9px)}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:24px;padding:0;color:var(--ink)}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{height:50px;right:12px}
.woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr;gap:0}
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{width:auto;float:none}
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,4vw,64px);align-items:start}
.woocommerce-checkout form.checkout #customer_details{grid-column:1}
.woocommerce-checkout form.checkout #order_review_heading,.woocommerce-checkout form.checkout #order_review{grid-column:2}
.woocommerce-checkout #order_review{background:var(--white);border:1px solid var(--mist);border-radius:var(--radius);padding:26px;position:sticky;top:110px}
.woocommerce-checkout #order_review table.shop_table{border:0;margin-bottom:0}
.woocommerce-checkout #order_review table.shop_table th,.woocommerce-checkout #order_review table.shop_table td{padding:12px 0}
.woocommerce-checkout #payment{background:transparent;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{border:0;border-top:1px solid var(--mist);padding:20px 0 0;margin:12px 0 0}
.woocommerce-checkout #payment ul.payment_methods li{margin:0 0 12px;list-style:none}
.woocommerce-checkout #payment ul.payment_methods li label{font-weight:600;font-size:15.5px}
.woocommerce-checkout #payment div.payment_box{background:var(--paper);border-radius:var(--radius);font-size:14.5px;color:var(--ink-2);margin:10px 0 0;padding:16px 18px}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment div.form-row.place-order{padding:20px 0 0;margin:0}
.woocommerce-checkout #payment #place_order{width:100%;font-size:16.5px;padding:18px 26px}

.woocommerce-account .woocommerce-MyAccount-navigation{width:26%;float:left}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--mist);border-radius:var(--radius);overflow:hidden;background:var(--white)}
.woocommerce-account .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--mist)}
.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:14px 18px;font-size:15px;font-weight:500;color:var(--ink-2)}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:var(--paper);color:var(--ink)}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--ink);color:#fff;font-weight:600}
.woocommerce-account .woocommerce-MyAccount-content{width:70%;float:right}

/* ---------- Hinweise ---------- */
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error,
.woocommerce-page .woocommerce-message,.woocommerce-page .woocommerce-info,.woocommerce-page .woocommerce-error{
  background:var(--white);border:1px solid var(--mist);border-top:2px solid var(--green);border-radius:var(--radius);
  color:var(--ink);padding:18px 22px;margin:0 0 28px;font-size:15.5px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;list-style:none}
.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before,.woocommerce .woocommerce-error::before{display:none}
.woocommerce .woocommerce-error{border-top-color:#8B2E2E}
.woocommerce .woocommerce-message .button,.woocommerce .woocommerce-info .button{margin-left:auto;padding:11px 18px;font-size:14px}

.wcempty{text-align:center;padding:clamp(48px,8vw,96px) 24px;border:1px solid var(--mist);border-radius:var(--radius);background:var(--white)}
.wcempty .ms{font-size:44px;color:var(--steel)}
.wcempty b{display:block;font-size:22px;margin:14px 0 8px}
.wcempty p{color:var(--ink-2);max-width:46ch;margin:0 auto 24px}
.wcempty .ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

.wcnote{display:flex;gap:14px;background:var(--paper);border:1px solid var(--mist);border-radius:var(--radius);padding:16px 18px;margin:0 0 18px}
.wcnote .ms{color:var(--green);font-size:22px;flex:none}
.wcnote b{display:block;font-size:15px;margin-bottom:4px}
.wcnote p{margin:0;font-size:14px;line-height:1.6;color:var(--ink-2)}
.wcnote a{text-decoration:underline;text-underline-offset:3px}

/* Germanized: Rechtstexte im Bestellprozess */
.woocommerce-checkout .wc-gzd-checkbox-placeholder,.woocommerce-checkout p.form-row label.checkbox{font-size:14px;line-height:1.6;color:var(--ink-2);font-weight:400;display:flex;gap:10px;align-items:flex-start}
.woocommerce-checkout p.form-row label.checkbox input{margin-top:3px}
.wc-gzd-legal-checkbox-text a,.woocommerce-terms-and-conditions-wrapper a{text-decoration:underline;text-underline-offset:3px}
.woocommerce-checkout .legal{font-size:13.5px;color:var(--steel);line-height:1.6}

/* ---------- Warenkorb in der Kopfzeile ---------- */
.cartlink{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;
  border-radius:999px;border:1px solid var(--mist);background:var(--white);color:var(--ink);transition:border-color .2s,background .2s}
.cartlink:hover{border-color:var(--anthracite)}
.cartlink .ms{font-size:21px}
.cartlink .n{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;
  background:var(--green);color:#fff;font-size:11.5px;font-weight:700;line-height:19px;text-align:center;display:none}
.cartlink.has .n{display:block}
.nav-home .cartlink{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.35);color:#fff}
.nav-home .cartlink:hover{background:rgba(255,255,255,.16)}

/* ---------- Seitenzahlen ---------- */
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:8px;justify-content:center;margin:48px 0 0}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{
  min-width:42px;height:42px;line-height:42px;padding:0 10px;border:1px solid var(--mist);border-radius:var(--radius);
  background:var(--white);color:var(--ink);font-weight:500}
.woocommerce nav.woocommerce-pagination ul li a:hover{border-color:var(--anthracite);background:var(--white)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ink);border-color:var(--ink);color:#fff}

/* ---------- Responsiv ---------- */
@media (max-width:1100px){
  .woocommerce div.product{grid-template-columns:1fr}
  .woocommerce div.product .summary{position:static;grid-column:1}
  .woocommerce-checkout form.checkout{grid-template-columns:1fr}
  .woocommerce-checkout form.checkout #order_review_heading,.woocommerce-checkout form.checkout #order_review{grid-column:1}
  .woocommerce-checkout #order_review{position:static}
}
@media (max-width:900px){
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,1fr);gap:26px 20px}
  .woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none}
  .woocommerce-account .woocommerce-MyAccount-content{margin-top:28px}
}
@media (max-width:600px){
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:1fr}
  .woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%}
  .shopbar{flex-direction:column;align-items:flex-start;gap:12px}
  .woocommerce table.shop_table td.product-thumbnail img{width:56px}
  .woocommerce div.product form.cart{flex-direction:column}
  .woocommerce div.product form.cart .button{min-width:0}
  .woocommerce .quantity .qty{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .woocommerce ul.products li.product .pimg img{transition:none}
  .woocommerce ul.products li.product:hover .pimg img{transform:none}
}

/* ---------- Basisklassen, die mit woocommerce-general entfallen sind ---------- */
.screen-reader-text,.woocommerce .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.woocommerce .quantity{display:inline-flex}
.woocommerce div.product .woocommerce-product-gallery__trigger{position:absolute;top:14px;right:14px;left:auto;z-index:3;
  width:40px;height:40px;display:grid;place-items:center;border-radius:999px;background:var(--white);
  border:1px solid var(--mist);font-size:17px;text-decoration:none;color:var(--ink)}
.woocommerce div.product .woocommerce-product-gallery__trigger:hover{border-color:var(--anthracite)}
.woocommerce div.product .woocommerce-product-gallery{position:relative}
.woocommerce div.product .woocommerce-Tabs-panel{background:transparent}
.woocommerce .woocommerce-breadcrumb{margin:0 0 22px}
.woocommerce-error{list-style:none}
.woocommerce-error li,.woocommerce-message li,.woocommerce-info li{list-style:none;margin:0}
/* Die Kopfzeile ist fixiert (76 px hoch), Einzelprodukte brauchen deshalb eigenen Abstand. */
.shopsingle{padding-top:124px}
@media (max-width:900px){.shopsingle{padding-top:100px}}

/* ---------- Bestellübersicht in der Kasse ---------- */
.woocommerce-checkout #order_review table.shop_table td.product-name{width:auto;line-height:1.45;font-size:14.5px}
.woocommerce-checkout #order_review table.shop_table td.product-total,
.woocommerce-checkout #order_review table.shop_table th.product-total{text-align:right;white-space:nowrap}
.woocommerce-checkout #order_review table.shop_table img{display:none}
.woocommerce-checkout #order_review .product-quantity{font-weight:600;color:var(--steel)}
.woocommerce-checkout #order_review .wc-gzd-cart-info,
.woocommerce-checkout #order_review .delivery-time-info{display:block;font-size:12.5px;color:var(--steel);margin:4px 0 0}
.woocommerce-checkout #order_review ul#shipping_method{list-style:none;margin:0;padding:0;text-align:right}
.woocommerce-checkout #order_review ul#shipping_method li{margin:0 0 6px;display:flex;gap:8px;justify-content:flex-end;align-items:baseline;line-height:1.4}
.woocommerce-checkout #order_review ul#shipping_method li:last-child{margin-bottom:0}
.woocommerce-checkout #order_review ul#shipping_method label{font-weight:500;font-size:14.5px}
.woocommerce-checkout .wc-gzd-checkbox-placeholder{margin:0 0 16px}
.woocommerce-checkout #order_review_heading{margin-top:26px}
.woocommerce-checkout .woocommerce-form-login-toggle,.woocommerce-checkout .woocommerce-form-coupon-toggle{margin-bottom:14px}

/* ---------- Feinschliff Warenkorb, Kasse, Konto ---------- */
/* Bestellübersicht darf nicht über die Karte hinauslaufen. */
.woocommerce-checkout #order_review{overflow:hidden}
.woocommerce-checkout #order_review table.shop_table{table-layout:fixed}
.woocommerce-checkout #order_review table.shop_table td,
.woocommerce-checkout #order_review table.shop_table th{overflow-wrap:anywhere}
.woocommerce-checkout #order_review table.shop_table thead th{background:transparent;padding-bottom:10px;border-bottom:1px solid var(--mist)}
.woocommerce-checkout #order_review ul#shipping_method li{flex-wrap:wrap}

/* Kopf der Shop-Seiten kompakter als auf den Inhaltsseiten. */
.woocommerce-cart .ahero,.woocommerce-checkout .ahero,.woocommerce-account .ahero,
.woocommerce-order-received .ahero{padding-bottom:0}
.woocommerce-cart .ahero h1,.woocommerce-checkout .ahero h1,.woocommerce-account .ahero h1,
.woocommerce-order-received .ahero h1{font-size:clamp(30px,4vw,52px);margin-bottom:0}
.woocommerce-cart .content-sections,.woocommerce-checkout .content-sections,
.woocommerce-account .content-sections{padding-top:36px}

/* Artikel ohne Festpreis */
.woocommerce .anfrage{font-weight:600;color:var(--steel)}
.woocommerce div.product p.price .anfrage{font-size:22px}
