.bb-wartung {
	outline:1px solid #eee;
	display:none;
}
.bb-wartung:hover {
	background:#eee;	
}

/* layout */
.shop-container, div.woocommerce {
	position:relative;
	width:1600px;
	margin-left:auto;
	margin-right:auto;
	padding-bottom:80px;
	min-height:400px;
}
body.woocommerce-cart h2,
body.woocommerce-checkout h2 {
	position:relative;
	max-width:1600px;
	margin-left:auto;
	margin-right:auto;
}
body.woocommerce-checkout h2 {
	margin-bottom:0;
}
body.single-product .site-content {
	padding-bottom:60px;
}
body.woocommerce-order-received h2,
body.woocommerce-order-received div.woocommerce {
	position:relative;
	width:700px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:calc(var(--durchschuss) * 2);/* 48 */
}

/* typo pauschal */
.shop-container *, div.woocommerce * {
	font-weight:normal !important;
}
.woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before {
	font-weight:normal !important;
}


/* uebersicht
//////////////////////////////////////// */

.woocommerce-result-count,
.woocommerce mark.count {
	display:none;
}

/* sortierfilter */
.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering {
	float:none;
}
.woocommerce .woocommerce-ordering select {
	box-sizing: border-box;
	border: 1px solid var(--gruen);
	border-radius: 0px;
	color: rgb(0,0,0);
	display: block;
	float: none;
	font: var(--lauftext);
	font-size:calc((var(--schriftgroesse) / 8) * 7);/* 14 */
	line-height:calc((var(--durchschuss) / 8) * 7);/* 21 */
	padding: 4px 8px 4px 8px;
	background: none;
}
/* links */
.woocommerce ul.products li.product a,
.woocommerce ul.products li.product a:hover {
	border:0;
}

/* badge auf produktbild */
.woocommerce ul.products li.product .onsale {
	  top: 0;
	  left: 0;
	  right: auto;
	  margin: -10px 0 0 -10px;
}
/* kategorie- und produkttitel */
.woocommerce ul.products li.product h2.woocommerce-loop-category__title,
.woocommerce ul.products li.product h2.woocommerce-loop-product__title {
	font-size:calc( (var(--schriftgroesse) / 2) * 3 ) ;/* 24 */
	line-height:var(--durchschuss);/* 24 */
	padding:0;
	margin:24px 0px 18px 0px;
}
/* kurzbeschrieb */
.woocommerce ul.products li.product .woocommerce_short_description p {
	margin:0px 0px 18px 0px;
}
/* preis */
.woocommerce ul.products li.product .price {
	font-family:var(--hervorhebung-lauftext), sans-serif;
	font-size:calc( (var(--schriftgroesse) / 2) * 3 ) ;/* 24 */
	line-height:var(--durchschuss);/* 24 */
	font-weight:normal;
	color:#000;
}
.woocommerce ul.products li.product .price span.woocommerce-Price-currencySymbol {
	font-family:var(--lauftext),sans-serif;
	font-size:var(--schriftgroesse);/* 16 */
	line-height:var(--schriftgroesse);/* 16 */
	vertical-align:top;
	padding-top:1px;
	display:inline-block;
}	

/* bild */
.woocommerce ul.products li.product a img {
	aspect-ratio:1 / 1;
	/*object-fit: scale-down;*/
	object-fit: cover;
	object-position:center center;
}

/* einzelnes produkt
//////////////////////////////////////// */

/* layout */
.woocommerce-page div.product div.images {
	width:40%;	
}
.woocommerce-page div.product div.summary {
	width:56%;
}

/* badge auf produktbild */
.woocommerce span.onsale {
	padding: 10px;
	font-size: 1em;
	font-weight: normal;
	position: absolute;
	text-align: center;
	font-family:var(--hervorhebung-lauftext),sans-serif;
	font-size:var(--schriftgroesse);
	line-height:var(--durchschuss);
	font-weight:normal;
	text-transform:uppercase;
	top: 0;
	left: 0;
	margin: -10px 0 0 -10px;
	border-radius: 0;
	background-color: var(--gruen);
	color: #fff;
	padding:4px 16px 4px 16px;
	min-height: 0em;
  	min-width: 80px;
	z-index: 9;
}
.woocommerce div.product div.images img {
	cursor:zoom-in;
}

/* galerie: bildlink */
.woocommerce-product-gallery__image a,
.woocommerce-product-gallery__image a:hover {
	border:0;
}
/* galerie: kleine bilder */
.woocommerce div.product div.images .flex-control-thumbs {
	padding-top:20px;
	display:grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-row-gap:    20px;
	grid-column-gap: 20px;
}
.woocommerce div.product div.images .flex-control-thumbs li {
  width: 100%;
  float: none;
}
.xxwoocommerce div.product .woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1) {/* 1., 5. etc. */
	padding:10px 20px 10px 0px;	
}

/* rechts */
.woocommerce div.product h1.product_title {
	margin-top:-10px;
}
.woocommerce div.woocommerce-product-details__short-description p {
	margin-bottom:0px;
}
.woocommerce .product div.product_meta {
	margin-top:0px;
}

.woocommerce .product p.price {
	font-family:var(--hervorhebung-lauftext), sans-serif;
	font-size:calc( (var(--schriftgroesse) / 2) * 4 ) !important;/* 32 */
	line-height:var(--durchschuss);/* 24 */
	font-weight:normal;
	color:#000 !important;
	margin:24px 0px 6px 0px;
}
.woocommerce .product p.price span.woocommerce-Price-currencySymbol {
	font-family:var(--lauftext),sans-serif;
	font-size:var(--schriftgroesse);/* 16 */
	line-height:var(--schriftgroesse);/* 16 */
	vertical-align:top;
	padding-top:0px;
	display:inline-block;
}	

.woocommerce div.product form.cart {
	margin-top:24px;
}
.woocommerce div.product form.cart div.quantity {/*anzahl*/
	margin:0px 10px 0px 0px;
}
.woocommerce .quantity .qty {/*input*/
	border:1px solid var(--gruen);
	font-family:var(--hervorhebung-lauftext), sans-serif;
	font-size:var(--schriftgroesse) ;/* 16 */
	line-height:var(--durchschuss);/* 24 */
	padding:3px 0px 3px 0px;
}

.woocommerce .color-picker-container {
	margin-bottom:24px;
}
.woocommerce .color-picker-container label {
}
.woocommerce .color-picker-container p {
	font-size:calc( (var(--schriftgroesse) / 8) * 7 );/* 14 */
	margin-bottom:4px;
}
	
.woocommerce .color-picker-container input[type=color] {
	margin:0px;
	padding:0px;
	border-radius:0;
	border:none;
	width:40px;
	height:30px;
	cursor:pointer;	
}


/* rechts varianten */
.woocommerce table.variations {
	text-align:left;
}
.woocommerce div.product form.cart .variations th.label {
	min-width:auto;
	width:120px;
}
.woocommerce div.product form.cart .variations select {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing: border-box;
	border-radius: 0px;
	color: rgb(0,0,0);
	display: block;
	width: auto;
	min-width: auto;
	max-width: auto;
	padding:6px 6px 8px 6px;
	background:none;
	border:1px solid var(--gruen);
}



/* unten */
.woocommerce div.product .woocommerce-tabs {
	clear:none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
	display:none;
}
.woocommerce div.product .woocommerce-tabs .panel {
	display:block !important;
	width:100%;	
	margin:0px !important;
	padding:24px 0px 0px 0px;
	clear:none;
}
.woocommerce div.product .woocommerce-tabs .panel h2 {
	font-family:var(--hervorhebung-lauftext), sans-serif;
	font-size:calc( (var(--schriftgroesse) / 2) * 3 ) ;/* 24 */
	line-height:var(--durchschuss);/* 24 */
	font-weight:normal;
	text-transform:uppercase;
	margin-top:0;
	margin-bottom:var(--durchschuss);/* 24 */
	clear:both;
}
.woocommerce .woocommerce-Tabs-panel--additional_information h2 {
	display:none;
}		

.woocommerce table.shop_attributes {
	border-top:2px solid var(--hellgruen);
}
.woocommerce table.shop_attributes th,
.woocommerce table.shop_attributes td {
	text-align:left;
	border-bottom:2px solid var(--hellgruen);
}
.woocommerce table.shop_attributes tr:nth-child(2n) td,
.woocommerce table.shop_attributes tr:nth-child(2n) th {
	background:none;
}



/* meldungen oben, buttons weiter unten //////////////////// */

.woocommerce-message::before {
	color:var(--gruen);
}
.woocommerce-info::before {
	color:var(--gruen);
}
	
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	padding: 1em 2em 1em 3.5em;
	margin: 0px 0px 24px 0px;
	position: relative;
	background-color: var(--hellgruen);
	color: #000;
	border-top: 0;
	list-style: none outside;
	width: auto;
	word-wrap: break-word;
}



/* warenkorb //////////////////////////////////// */

.woocommerce table.shop_table {
  border: 0;
  margin: 0px 0px 24px 0px;
  border-radius: 0px;
}
.woocommerce table.shop_table td,
.woocommerce table.shop_table th {
  border-top: 1px solid var(--gruen) !important;
  padding: 9px 0px 9px 0px;
  background:#fff;
  vertical-align: middle;
  line-height: var(--durchschuss);
  font-weight:normal !important;
}
.woocommerce .cart_totals h2 {/* --> h3 */
	font-family:var(--hervorhebung-lauftext), sans-serif;
	font-size:calc( (var(--schriftgroesse) / 2) * 3 ) ;/* 24 */
	line-height:var(--durchschuss);/* 24 */
	font-weight:normal;
	text-transform:uppercase;
	margin-top:calc(var(--durchschuss) * 2);/* 48 */
	margin-bottom:var(--durchschuss);/* 24 */
}



/* bestellen ///////////////////////////////////// */

/* formulare */
.woocommerce-page form .form-row-first,
.woocommerce-page form .form-row-last {
	width:100%;
	float:none;
}
.woocommerce form label {
	font-family:var(--hervorhebung-lauftext), sans-serif;
	font-size: calc((var(--schriftgroesse) / 8) * 7) !important;
	line-height: var(--durchschuss) !important;
}
.woocommerce form label abbr.required {
	color:var(--gruen) !important;
	font-weight:normal !important;
}
.woocommerce form input.input-text,
.woocommerce form textarea {
	border:1px solid var(--gruen) !important;
	border-color:var(--gruen) !important;
	padding:3px !important;
	font-family:var(--lauftext),sans-serif;
	font-size: var(--schriftgroesse) !important;
	line-height: calc(var(--durchschuss) * 1.05) !important;
}
.woocommerce div.woocommerce-billing-fields__field-wrapper {
	padding-top:4px !important;
}
.woocommerce span.woocommerce-input-wrapper strong {
	font-family:var(--lauftext), sans-serif !important;
	font-weight:normal;
}

.woocommerce ul.woocommerce-shipping-methods label {
	font-family:var(--lauftext);
}
	
.woocommerce ul.woocommerce-shipping-methods span.woocommerce-Price-amount {
	font-size: var(--schriftgroesse) !important;
	line-height: calc(var(--durchschuss) * 1.05) !important;
}	
td.product-total,
tfoot td {
	text-align:right;
}

/* Zahlungsart und bestelluebersicht */
.woocommerce-checkout-review-order {
	width:48%;
}
.woocommerce-checkout h3#order_payment_heading {
	display:none !important;
}
.woocommerce-checkout #payment {
  background:var(--hellgruen) !important;
  border-radius: 0 !important;
  margin-top:24px;
}
.woocommerce-checkout #payment * {
	border:0 !important;
}
.woocommerce-checkout #payment div.payment_box {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding: 1em;
  margin: 1em 0;
  font-size: var(--schriftgroesse);
  border-radius: 0;
  line-height: var(--durchschuss);
  background-color: var(--gruen);
  color: #000;
}
.woocommerce-checkout #payment div.payment_box::before {/* pfeil */
  border: 1em solid var(--gruen);
  border-right-color: transparent;
  border-left-color: transparent;
  border-top-color: transparent;
}


.woocommerce-checkout .shop_table {
	background:#fff;
	padding-top:24px;
}

.woocommerce form .form-row.place-order {/* beinhaltet bestell-button */
	padding:3px 3px 3px 0px;	
}



/* buttons //////////////////////////////////// */

.woocommerce .button#place_order {
	background:var(--orange) !important;
	text-transform:uppercase;
	padding:4px 20px 4px 20px !important;
}
.woocommerce .button#place_order:hover {
	background:#000 !important;
}

.woocommerce .button,
.woocommerce button.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button:disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button:disabled[disabled] {
	background:var(--gruen) !important;
	color:#fff  !important;
	font-family:var(--hervorhebung-lauftext), sans-serif !important;
	font-size:var(--schriftgroesse) !important;/* 16 */
	line-height:var(--durchschuss) !important;/* 24 */
	font-weight:normal !important;
	border-radius:0 !important;
	padding:4px 10px 5px 10px !important;
	display:inline-block !important;
}
.woocommerce .button:hover {
	background:#000 !important;
	color:#fff !important;
	border:0 !important;
}

:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button:disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button:disabled[disabled] {
	opacity:0.3;
}

/* buttons bei meldungen */
.woocommerce-page .woocommerce-message .button.wc-foreward,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.wc-foreward {
	font-family:var(--hervorhebung-lauftext), sans-serif !important;
	font-size:var(--schriftgroesse) !important;/* 16 */
	line-height:var(--durchschuss) !important;/* 24 */
	font-weight:normal !important;
	border-radius:0 !important;
	padding:4px 10px 4px 10px;
	font-weight: normal;
	color: var(--gruen);
	background-color: #fff;
	border: 2px solid var(--gruen);
}
.woocommerce-page .woocommerce-message .button.wc-foreward:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.wc-foreward:hover {
	color: #000;
	background-color: #fff;
	border: 2px solid #000;
}



/* dankeseite //////////////////////////////////////////////// */

p.woocommerce-thankyou-order-received {
	background:var(--hellgruen);
	padding:12px;
	font-family:var(--hervorhebung-lauftext), sans-serif;
}	
	
body.woocommerce-order-received h2.woocommerce-order-details__title,
body.woocommerce-order-received .woocommerce-customer-details h2 {/* --> h3 */
	font-family:var(--hervorhebung-lauftext), sans-serif;
	font-size:calc( (var(--schriftgroesse) / 2) * 3 ) ;/* 24 */
	line-height:var(--durchschuss);/* 24 */
	font-weight:normal;
	text-transform:uppercase;
	margin-top:calc(var(--durchschuss) * 2);/* 48 */
	margin-bottom:var(--durchschuss);/* 24 */
}
body.woocommerce-order-received .shop_table {
	padding-top:0;
}
body.woocommerce-order-received ul.woocommerce-thankyou-order-details li {
	padding-bottom:12px;
}
.woocommerce .woocommerce-customer-details address {
  font-style: normal;
  margin-bottom: 0;
  border:0;
    border-right-width: 0px;
    border-bottom-width: 0px;
  border-bottom-width: 0px;
  border-right-width: 0px;
  border-radius: 0px;
  padding: 0px;
}

.woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone,
.woocommerce .woocommerce-customer-details .woocommerce-customer-details--email {
	padding-left:0;
	margin-bottom:0;
}
.woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone::before,
.woocommerce .woocommerce-customer-details .woocommerce-customer-details--email::before {
  font-family: WooCommerce;
  speak: never;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  margin-right: 0;
  content: "";
  text-decoration: none;
  margin-left: 0;
  line-height:0;
  position: absolute;
}


/*.site-content p.price {
	margin-bottom:0px;
}
.site-content .product p.wc-gzd-additional-info {
	margin-bottom:18px;
}
.site-content .product p.wc-gzd-additional-info.variation_modified {
	margin-bottom:0px;
}*/




/* R E S P O N S I V E //////////////////////////////////////// */

@media only screen and (max-width: 1750px) {
	.shop-container, div.woocommerce {
		width:100%;
		padding:0px 70px 40px 70px;
	}
	body.woocommerce-order-received div.woocommerce {
		padding:0px;
	}
	body.woocommerce-cart h2,
	body.woocommerce-checkout h2 {
		width:100%;
		max-width:100%;
		padding:0px 70px 0px 70px;
	}
	body.woocommerce-order-received h2 {
		width:700px;
		padding:0;
	}
	.woocommerce .cart_totals h2 {
		padding:0;
	}
}

@media only screen and (max-width: 1060px) {
	.shop-container, div.woocommerce {
		width:100%;
		padding:0px 40px 40px 40px;
	}
	body.woocommerce-cart h2,
	body.woocommerce-checkout h2 {
		padding:0px 40px 0px 40px;
	}
	body.woocommerce-order-received h2 {
		width:700px;
		padding:0;
	}
}
@media only screen and (max-width: 950px) {/* woo breakpoint, geaendert in functions.php */
	/* einzelnes produkt */
	.woocommerce-page div.product div.images {
		float:left;
	}
	.woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary {
		float:right;
	}
	/* bestellen */
	.woocommerce-checkout-review-order {
	  width: 100%;
	}
	
	/* danke */
	.woocommerce-column--shipping-address h2 {
		margin-top:24px !important;
	}
}

/* mobile */
@media only screen and (max-width: 900px) {
	.woocommerce div.product h1.product_title {
	  margin-top: -7px;
	}
	body.woocommerce-order-received div.woocommerce {
		width:100%;
		padding:0px 40px 40px 40px;
	}
	body.woocommerce-order-received h2 {
		width:100%;
		padding:0px 40px 0px 40px;
	}

	body.woocommerce-order-received h2.woocommerce-order-details__title,
	body.woocommerce-order-received .woocommerce-customer-details h2 {
		width:100%;
		padding:0;
	}
}



/* einzelnes produkt einspaltig */
@media only screen and (max-width: 750px) {
	.woocommerce-page div.product div.images {
		float:none;
		width:100%;
	}
	.woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary {
		float:none;
		width:100%;
	}
	.woocommerce div.product h1.product_title {
	  margin-top: 48px;
	}
}


@media only screen and (max-width: 490px) {
	.shop-container, div.woocommerce {
		width:100%;
		padding:0px 20px 40px 20px;
	}
	body.woocommerce-cart h2,
	body.woocommerce-checkout h2 {
		width:100%;
		max-width:100%;
		padding:0px 20px 0px 20px;
	}
	body.woocommerce-order-received div.woocommerce {
		width:100%;
		padding:0px 20px 40px 20px;
	}
	.woocommerce .woocommerce-ordering select {
		width:100%;
	}
	/* kategorie- und produkttitel */
	.woocommerce ul.products li.product h2.woocommerce-loop-category__title,
	.woocommerce ul.products li.product h2.woocommerce-loop-product__title {
		font-size:calc( (var(--schriftgroesse) / 8) * 9 ) ;/* 18 */
		line-height:var(--durchschuss);/* 24 */
		padding:0;
		margin:24px 0px 18px 0px;
	}
	/* preis */
	.woocommerce ul.products li.product .price {
		font-size:calc( (var(--schriftgroesse) / 8) * 9 ) ;/* 18 */
		line-height:var(--durchschuss);/* 24 */
	}
	.woocommerce ul.products li.product .price span.woocommerce-Price-currencySymbol {
		font-size:calc((var(--schriftgroesse) / 8) * 7);/* 14 */
		line-height:var(--schriftgroesse);/* 16 */
		vertical-align:top;
		padding-top:2px;
		display:inline-block;
	}	
	/* badge auf produktbild */
	.woocommerce span.onsale {
		margin:-10px 0px 0px 0px;
	}
}



