/*** Breadcrumb ***/
.elementor-element.elementor-widget-woocommerce-breadcrumb {
	nav.woocommerce-breadcrumb {
		margin: 0 0 1.5625rem 0;
		color: var(--black);
		font-size: 0.75rem;
		a {
			color: inherit;
			&:hover {
				text-decoration: underline;
			}
		}
		span.breadcrumb-sep {
			font-size: 10px;
			padding: 0 5px 0 3px;
		}
	}
}

.elementor-element.elementor-widget-breadcrumbs {
	p#breadcrumbs {
		margin: 0 0 1.5625rem 0;
		color: var(--black);
		font-size: 0.75rem;
		span {
			a {
				margin: 0;
				&:hover {
					text-decoration: underline;
				}
			}
			i {
				font-size: 10px;
				padding: 0 5px 0 3px;
			}
		}
	}
}

/*** Filter ***/

.elementor-element.elementor-widget-woofilters {
	
	.wfpDescription {
		font-weight: 600;
		font-size: 1rem;
	}
	
	label {
		font-size: 1rem;
	}
	
	select {
		border-radius: 0 !important;
		&:hover {
			border: 0.0625rem solid var(--white);
		}
		&:focus {
			border-color: var(--black);
		}
	}
	
	.wpfFilterWrapper {
		padding: 0;
		margin: 0 0 1rem 0;
	}
	
	/** Preis **/
	#wpfBlock_8 {
		.wfpDescription {
			left: -0.625rem;
			position: relative;
		}
	}
	
	#wpfSliderRange {
		span.ui-slider-handle {
			&:hover, &:focus-visible  {
				border-color: var(--black) !important;
				background: var(--black);
			}
		}
	}
	
	/** Checkboxen **/
	.wpfCheckboxHier {
		
		label.wpfLiLabel {
			padding:  0.1875rem;
		}
		
		.wpfCheckbox {
			label {
				width: 0 !important;
				height: 0 !important;
				
				&::before {
					content: none !important;
				}
				span {
					padding: 0;
				}
			}
			input[type="checkbox"]  {
				appearance: none !important;
				display: inline-block !important;
				opacity: 1 !important;
				width: 1.25rem !important;
				height: 1.25rem !important;
				border: 0.0625rem solid var(--black) !important;
				padding: 0 !important;
				border-radius: 0 !important;
				position: relative;
				margin: 0 0.625rem 0 0;
				transform: scale(1);
				 &:checked {
					 background: var(--black);
					 color: var(--white);
				  &::after {
					content: "\f00c";
					font-family: "Font Awesome 6 Pro";
					position: absolute;
					top: 0px;
					left: 0px;
					width: 100%;
					height: 100%;
					display: flex;
					justify-content: center;
					align-items: center;
					line-height: 1;
				  }
				}
				&:focus-visible {
					outline: none;
					outline-offset: none;
					border-radius: 0;
					
					border: 0.0625rem solid var(--black) !important;
					background: var(--black);

				}
			}
		}
		
		.wpfDisplay {
			padding: 0 !important;
			display: inline-block;
			vertical-align: middle;
			.wpfValue {
				padding: 0.125rem 0 0 0 !important;
			}
		}
		
	}
	
	.wpfFilterButtons.wpfFilterButtonsBottom {
		margin-top: 2rem;
		.wpfFilterButton.wpfButton {
			font-family: "Proxima Nova", sans-serif;
			width: 100%;
			font-weight: 600;
			font-size: 1rem;
			border-radius: 0;
			text-transform: none;
			min-height: 100%;
			padding: 0.75rem 1.5rem 0.875rem 1.5rem;
			line-height: 1.3em;
			margin: 0.3125rem 0;
			background: none;
			border: 0.125rem solid var(--black);
			color: var(--black);
			position: relative;
			display: flex;
			justify-content: center;
			&::after {
				font-family: "Font Awesome 6 Pro";
				content: "\f054";
				position: absolute;
				font-size: 0.5625rem;
				opacity: 0;
				top: 0.75rem;
				right: -1.25rem;
				color: var(--white);
				transition: all 0.3s;
			}
			&:hover,  &:focus {
				color: var(--white);
				background: var(--black);
				padding-left: 1.25rem;
				padding-right: 1.75rem;
				&::after {
					right: 0.875rem;
					opacity: 1;
				}
			}
		}
		
		.wpfClearButton.wpfButton {
			font-family: "Proxima Nova", sans-serif;
			width: 100%;
			font-weight: 600;
			font-size: 1rem;
			border-radius: 0;
			text-transform: none;
			min-height: 100%;
			padding: 0.75rem 1.5rem 0.875rem 1.5rem;
			border: none;
			color: var(--black);
			line-height: 1.3em;
			margin: 0.3125rem 0;
			background: none;
			position: relative;
			display: flex;
			justify-content: center;
			transition: none !important;
			/*
			&::before {
				font-family: "Font Awesome 6 Pro";
				content: "\f057";
				font-size: 0.5625rem;
				top: 0.75rem;
				left: 0;
				color: var(--black);
				font-size: 1.5rem;
				font-weight: 300;
				margin: 0 10px 0 0;
			}
			*/
			&:hover, &:focus {
				color: var(--error);
				outline: revert;
				outline-offset: revert;
				box-shadow: revert;
				&::before {
					color: var(--error);
				}
			}
		}
	}
}

/** Filter - OffCanvas **/

#open-filter-btn {
	padding: 0.5625rem 1.5rem 0.5625rem 1.5rem;
	min-width: 13.75rem;
	.elementor-button-content-wrapper {
		span.elementor-button-icon {
			&::after {
				content: none;
			}
		}
		span.elementor-button-text {
			display: flex;
			align-items: center;
			&::before {
				content:'\f0b0';
				font-family: "Font Awesome 6 Pro";
				display: inline-block;
				font-size: 1.5rem;
				font-weight: 300;
				margin: 0 10px 0 0;
				opacity: 1;
			}
		}
	}
}

#filter-off-canvas {
	.header {
		> .e-con-inner {
			padding-left: 0;
			padding-right: 0;
		}
		.elementor-element.elementor-widget-text-editor {
			
		}
		
		.elementor-element.elementor-widget-button {
			#close-filter {
				background: none;
				color: var(--black);
				padding: 0;
				width: 3.125rem;
				height: 3.125rem;
				border: none;
				display: flex;
				justify-content: center;
				align-items: center;
				.elementor-button-content-wrapper {
					span.elementor-button-icon {
						&::after {
							content: none;
						}
					}
					span.elementor-button-text {
						font-size: 0;
						&::before {
							content: '\f00d';
							font-family: "Font Awesome 6 Pro";
							font-size: 1.5rem;
							color: var(--black);
							font-weight: 300;
							display: inline-block;
						}
					}
				}
				&:hover,  &:focus {
					background: var(--white);
				}
			}
		}
	}
	
	#wpfBlock_1 {
		margin: 0 0 1rem 0;
		.wpfFilterContent {
			width: 100%;
			flex-wrap: wrap;
			.wfpDescription {
				width: 100%;
			}
			select {
				width: 100%;
			}
		}
	}
	
}

/*** Products List ***/

.product-list-container {
	.filter-col {
		@media (max-width: 1280px) {
			display: none;
		}
	}
	
	.products-col {
		@media (max-width: 1280px) {
			width: 100%;
		}
	}
}

/** Filter Mobile **/

.filter-container-mbl {
	display: none;
	@media (max-width: 1280px) {
		display: block;
	}
	
	#wpfBlock_1 {
		padding: 0 !important;
		margin: 0;
		
		.wpfFilterContent {
			width: 300px;
			display: flex;
			align-items: center;
			.wfpDescription {
				width: 70px;
			}
			select {
				width: 230px;
			}
		}
	}
	
}

.product-list /* Loop Widget */ {
	@media (max-width: 1024px) {
		.elementor-loop-container.elementor-grid {
			grid-column-gap: 0.625rem;
			grid-row-gap: 0.625rem;
		}
	}
	@media (max-width: 480px) {
		.elementor-loop-container.elementor-grid {
			display: block !important;
			
			.product_item {
				margin-bottom: 1rem;
			}
		}
	}
}

/* gleiche Höhe */

.elementor-loop-container.elementor-grid {
	.e-loop-item.product.type-product {
		.product_item {
			height: 100%;
		}
	}
}

/* Product Item */

.product_item {
	
	> .e-con-inner {
		padding-left: 0;
		padding-right: 0;
	}

	&.combine-it-with {
		.price {
			margin-bottom: 0 !important;
		}
		
		.button-container {
			a.elementor-button {
				padding: 0.6875rem 1.5rem 0.9375rem 1.5rem;
				&:hover {
				padding-left: 1.25rem;
				padding-right: 1.75rem;
				}
			}
		}
	}
	
	.product-labels {
		position: absolute;
		top: 0.625rem;
		left: 0;
		width: 7.8rem;
		z-index: 10;
		span {
			line-height: 1;
			font-weight: 600;
			text-transform: uppercase;
			font-size: 0.75rem;
			margin: 0 0 0.3125rem 0;
			padding: 0.5rem 0.75rem;
			display: inline-block;
			letter-spacing: 0.015rem;
		}
		.prod-badge.new-product {
			background: linear-gradient(82deg, #FFEE57 0%, #F8B9A7 100%);
		}
		.prod-badge.topseller-product {
			background: linear-gradient(82deg, var(--violet) 0%, var(--blue) 100%);
		}
	}
	
	.price {
		del {
			opacity: 1 !important;
		}
	}
	
	.description_cropped {
		font-size: 0.875rem;
		line-height: 1.5;
	}
	
	.button-container {
		
		display: flex;
		flex-wrap: wrap;
		flex-direction: unset;
		
		.elementor-widget-button {
			margin-right: 0.5rem;
		}
		.elementor-widget-shortcode.wishlist-btn {
			
			.elementor-shortcode {
				.alg-wc-wl-btn-wrapper {
					button.alg-wc-wl-btn {
						padding: 0;
						width: 2.875rem;
						height: 2.875rem;
						margin-right: 0.8rem;
						display: flex;
						align-items: center;
						justify-content: center;
						border-radius: 0;
						margin: 0;
						background: none;
						transition: none;
						
						i {
							margin: 0;
							font-size: 1.5rem;
							font-weight: 300;
							color: var(--black);
							opacity: 1;
						}
						
						&:hover i {
							transform: none;
						}
						
						.alg-wc-wl-btn-text {
							display: none;
						}
						
						.alg-wc-wl-view-state-add {
							opacity: 1;
						}
						
						.alg-wc-wl-view-state-remove {
							opacity: 1;
							i {
								font-weight: 700;
							}
						}
						
						&:focus {
							outline: revert;
							outline-offset: revert;
							box-shadow: revert;
						}
					}
				}
			}
		}
	}
	
	.elementor-widget-shortcode.wishlist-btn-mbl {
		display: none;
		position: absolute;
		top: 0;
		right: 0;
			
			.elementor-shortcode {
				.alg-wc-wl-btn-wrapper {
					button.alg-wc-wl-btn {
						padding: 0;
						width: 3.125rem;
						height: 3.125rem;
						margin-right: 0.8rem;
						display: flex;
						align-items: center;
						justify-content: center;
						border-radius: 0;
						margin: 0;
						background: none;
						transition: none;
						
						i {
							margin: 0;
							font-size: 1.5rem;
							font-weight: 300;
							color: var(--black);
							opacity: 1;
						}
						
						&:hover i {
							transform: none;
						}
						
						.alg-wc-wl-btn-text {
							display: none;
						}
						
						.alg-wc-wl-view-state-add {
							opacity: 1;
						}
						
						.alg-wc-wl-view-state-remove {
							opacity: 1;
							i {
								font-weight: 700;
							}
						}
						
						&:focus {
							outline: revert;
							outline-offset: revert;
							box-shadow: revert;
						}
					}
				}
			}
		}
	
	
	@media (max-width: 1024px) {
			
		.elementor-widget-button {
			a.elementor-button {
				font-size: 0.875rem;
			}
		}
	}
	
	@media (max-width: 768px) {
		
		.elementor-widget-shortcode.wishlist-btn-mbl {
			display: block;
		}
		
		.product-labels {
			span {
				font-size: 0.625rem;
				padding: 0.375rem 0.625rem;
			}
		}
			
		.description_cropped {
			/*font-size: 0.75rem;
			line-height: 1.4;*/
		}
		
		.button-container {
			.elementor-widget-button {
				margin: 0;
				width: 100%;
				a {
					width: 100%;
				}
			}
			.elementor-widget-shortcode.wishlist-btn {
				display: none;
			}
		}
	}
	
	@media (max-width: 480px) {
		
		.img {
			img {
				max-height: 15.625rem;
				object-fit: contain;
			}
		}
		
		.description_cropped {
			line-height: 1.4;
		}
		
	}
	
}


/** Pagination **/

.elementor-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	margin: 1.5625rem 0 0 0;
	.page-numbers {
		font-family: "Proxima Nova", sans-serif;
		width: 3.125rem;
		height: 3.125rem;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		margin: 0 0.0625rem !important;
		font-weight: 400;
		font-size: 1rem;
		border: 0.125rem solid var(--white);
		background: var(--white);
		position: relative;
		
		&::before {
			content: '';
			position: absolute;
			top: -0.125rem;
			left: -0.25rem;
			width: calc(100% + 0.25rem);
			height: calc(100% + 0.25rem);
			background: var(--white);
			z-index: -1;
		}
		
		&.current {
			font-weight: 700;
			border-color: var(--black);
		}
	}
	a:hover {
		background: var(--black);
		border-color: var(--black);
		color: var(--white);
	}
}
	
/*** Product Archiv (Search Results) ***/

main.elementor-location-archive.product {
	padding-top: 3.125rem;
	overflow-y: hidden;
	@media (max-width: 768px) {
		padding-top: 1.5625rem;
	}
	
	/** Shapes **/
	.elementor-element.elementor-widget-loop-grid,
	.elementor-element.elementor-widget-wc-archive-products {
		&::before {
			content: '';
			position: absolute;
			top: -100px;
			right: -250px;
			background: url(/wp-content/uploads/2025/11/shape-blurred-1.svg) no-repeat center/contain;
			width: 62.5rem;
			height: 62.5rem;
			z-index: -1;
		}
		&::after {
			content: '';
			position: absolute;
			top: 62.5rem;
			left: 0;
			background: url(/wp-content/uploads/2025/11/shape-blurred-2.svg) no-repeat center/contain;
			width: 62.5rem;
			height: 62.5rem;
			z-index: -1;
			transform: rotate(90deg);
			opacity: 0.7;
			@media (max-width: 1024px) {
				top: 1300px;
			}
			@media (max-width: 1024px) {
				top: 1600px;
			}
			@media (max-width: 480px) {
				top: 1900px;
			}
		}
	}
	
}

.elementor-element.elementor-widget-wc-archive-products {
	.woocommerce {
		width: 100%;
		position: relative;
		.products {
			width: 100%;
			position: relative;
			display: flex;
			flex-wrap: wrap;
			column-gap: 1.875rem;
			.custom-loop-item {
				width: calc(50% - 0.9375rem);
				background: var(--white);
				margin: 0 0 1.875rem 0;
				position: relative;
				display: flex;
				flex-wrap: wrap;
				.product-labels {
					position: absolute;
					top: 0.625rem;
					left: 0;
					width: 7.8rem;
					span {
						line-height: 1;
						font-weight: 600;
						font-size: 0.75rem;
						margin: 0 0 0.3125rem 0;
						padding: 0.5rem 0.75rem;
						text-transform: uppercase;
						display: inline-block;
						letter-spacing: 0.015rem;
					}
					.prod-badge.new-product {
						background: linear-gradient(82deg, #FFEE57 0%, #F8B9A7 100%);
					}
					.prod-badge.topseller-product {
						background: linear-gradient(82deg, var(--violet) 0%, var(--blue) 100%);
					}
				}
				.img {
					width: 50%;
					padding: 1.5625rem;
					display: flex;
					justify-content: center;
					align-items: center;
				}
				.txt {
					width: 50%;
					padding: 1.5625rem 1.5625rem 1.5625rem 0;
					.title {
						font-size: 1.5rem;
						font-weight: 600;
						margin: 0 0 1rem 0;
						display: block;
						line-height: 1.25em;
						padding: 0.5rem 0 0 0;
					}
					.price {
						font-size: 1.5rem;
						font-weight: 700;
						margin: 0 0 1rem 0;
						ins {
							color: var(--error);
							text-decoration: none;
						}
					}
					.description {
						font-size: 0.875rem;
						margin: 0 0 1rem 0;
						line-height: 1.5;
					}
					.button-container {
						display: flex;
						flex-wrap: wrap;
						align-items: center;
						.btn.black {
							margin-right: 0.5rem;
						}
						.alg-wc-wl-btn-wrapper {
							button.alg-wc-wl-btn {
								padding: 0;
								width: 2.875rem;
								height: 2.875rem;
								margin-right: 0.8rem;
								display: flex;
								align-items: center;
								justify-content: center;
								border-radius: 0;
								margin: 0;
								background: none;
								transition: none;

								i {
									margin: 0;
									font-size: 1.5rem;
									font-weight: 300;
									color: var(--black);
									opacity: 1;
								}

								&:hover i {
									transform: none;
								}

								.alg-wc-wl-btn-text {
									display: none;
								}

								.alg-wc-wl-view-state-add {
									opacity: 1;
								}

								.alg-wc-wl-view-state-remove {
									opacity: 1;
									i {
										font-weight: 700;
									}
								}

								&:focus {
									outline: revert;
									outline-offset: revert;
									box-shadow: revert;
								}
							}
						}
					}
				}
			}
			
			@media (max-width: 1024px) {
				column-gap: 10px;
				.custom-loop-item {
					width: calc(50% - 5px);
					margin: 0 0 10px 0;
					.txt {
						.button-container {
							.btn.black {
								font-size: 0.875rem;
							}
						}
					}
				}
			}
			
			@media (max-width: 768px) {
				.custom-loop-item {
					.product-labels {
						span {
							font-size: 0.625rem;
							padding: 0.375rem 0.625rem;
						}
					}
					.img {
						width: 100%;
						padding: 1.25rem;
					}
					.txt {
						width: 100%;
						padding: 0 1.25rem 1.25rem 1.25rem;
						.title {
							font-size: 1.25rem;
							margin: 0 0 0.5rem 0;
							padding: 0;
						}
						.price {
							font-size: 1.125rem;
							margin: 0 0 0.8rem 0;
						}
						.description {
							/*font-size: 0.75rem;
							line-height: 1.4;*/
						}
						.button-container {
							a.btn.black {
								margin: 0;
								width: 100%;
								text-align: center;
							}
							.alg-wc-wl-btn-wrapper {
								position: absolute;
								top: 0;
								right: 0;
								button.alg-wc-wl-btn {
									width: 3.125rem;
									height: 3.125rem;
								}
							}
						}
					}
				}
			}
			
			@media (max-width: 480px) {
				.custom-loop-item {
					width: 100%;
					.img {
						img {
							max-height: 15.625rem;
							object-fit: contain;
						}
					}
					.txt {
						.description {
							/*font-size: 0.75rem;*/
							line-height: 1.4;
						}
						.button-container {
							.btn.black {
								text-align: center;
								width: calc(100% - 3.375rem);
							}
						}
					}
				}
			}
		}
	}
}


/*** Neuheiten ***/

body.page-id-13675, body.page-id-13669 {
	main {
		overflow-y: hidden;
	}

.elementor-element.elementor-widget-loop-grid {
		&::before {
			content: '';
			position: absolute;
			top: -100px;
			right: -250px;
			background: url(/wp-content/uploads/2025/11/shape-blurred-1.svg) no-repeat center/contain;
			width: 62.5rem;
			height: 62.5rem;
		}
		&::after {
			content: '';
			position: absolute;
			top: 62.5rem;
			left: 0;
			background: url(/wp-content/uploads/2025/11/shape-blurred-2.svg) no-repeat center/contain;
			width: 62.5rem;
			height: 62.5rem;
			z-index: -1;
			transform: rotate(90deg);
			opacity: 0.7;
			@media (max-width: 1024px) {
				top: 1300px;
			}
			@media (max-width: 1024px) {
				top: 1600px;
			}
			@media (max-width: 480px) {
				top: 1900px;
			}
		}
	}

}
	
/*** Product Single ***/

main.elementor-location-single.product {
	padding-top: 3.125rem;
	@media (max-width: 768px) {
		padding-top: 1.5625rem;
	}
	
	/*** Linke Spalte ***/
	
	.col-images {
	
	/** Bilder **/
	
	.woocommerce-product-gallery__wrapper {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		position: relative;
		
		.woocommerce-product-gallery__image  {

			background: var(--white);
			margin: 5px;
			width: calc(25% - 10px);
			img {
				display: block;
				margin: 0 auto;
			}
		}
		
		.woocommerce-product-gallery__image:nth-child(1), .woocommerce-product-gallery__image:nth-child(4) {
			width: calc(100% - 5px);
		}
		
		.woocommerce-product-gallery__image:nth-child(2), .woocommerce-product-gallery__image:nth-child(3) {
			width: calc(50% - 10px);
		}
		
		@media (max-width: 768px) {
			
			max-width: 100%;
			
			.woocommerce-product-gallery__image:nth-child(4),
			.woocommerce-product-gallery__image:nth-child(2), .woocommerce-product-gallery__image:nth-child(3){
				width: calc(25% - 10px);
			}
		}
	}

	}
	
	/*** Rechte Spalte ***/
	
	.col-product-informations {

	
	
	.product-labels-large {
		display: block;
		span {
			line-height: 1;
			font-weight: 600;
			text-transform: uppercase;
			font-size: 1rem;
			padding: 12px 16px;
			display: inline-block;
			margin: 0 0 0.5rem 0;
			letter-spacing: 0.015rem;
			@media (max-width: 768px) {
				font-size: 0.875rem;
				padding: 10px 14px;
			}
			@media (max-width: 480px) {
				font-size: 0.75rem;
				padding: 8px 12px;
			}
		}
		.prod-badge.new-product {
			background: linear-gradient(82deg, #FFEE57 0%, #F8B9A7 100%);
		}
	}
	
	h1 {
		margin-bottom: 2rem;
		@media (max-width: 768px) {
			margin-bottom: 1rem;
		}
	}
	
	.price {
		display: block;
	}
		
	
	
	/** Price Information **/
	
	.price_information {
		font-size: 0.75rem;
		display: flex;
		align-items: center;
		
		p.wc-gzd-additional-info {
			font-size: 0.75rem;
			@media (max-width: 480px) {
				font-size: 0.625rem;
			}
		}
		
		.elementor-widget-woocommerce-gzd-units {
			
		}
		
		.elementor-widget-woocommerce-gzd-unit-price {
			p.price.price-unit {
				font-size: 0.75rem;
				margin: 0;

				.amount {
					&::before {
						content: '(';
						display: inline-block;
						margin-right: 0.0625rem;
					}
				}
				.unit {
					&::after {
						content: ')';
						display: inline-block;
						margin-left: 0.0625rem;
					}
				}
				
				@media (max-width: 480px) {
					font-size: 0.625rem;
				}
				
			}
			
		}
		
		@media (max-width: 480px) {
			font-size: 0.625rem;
		}
	}
		
	/** inkl. Mwst. **/
	.product-vat {
		@media (max-width: 480px) {
			font-size: 0.625rem;
		}
	}
	
	/** Button Container **/
	
	.button-container-large {
		position: relative;
		width: 100%;
		
		/* Warenkorb */
		
		.elementor-element.elementor-widget-woocommerce-product-add-to-cart {
			width: calc(100% - 4.875rem);
			.elementor-add-to-cart {
				form.cart {
					flex-wrap: wrap;
					
					@media (max-width: 480px) {
						.single_add_to_cart_button {
							width: 100%;
							margin: 1rem 0 0 0 !important;
						}
					}
				}
			}
		}

		.woocommerce-variation-add-to-cart {
			@media (max-width: 480px) {
				flex-wrap: wrap !important;
			}
		}
		
		/* Wunschliste */
		
		.elementor-widget-shortcode.wishlist-btn {
			width: 4.875rem;
			padding-left: 1rem;
			align-content: flex-end;
			.elementor-shortcode {
				.alg-wc-wl-btn-wrapper {
					button.alg-wc-wl-btn {
						padding: 0;
						width: 2.875rem;
						height: 2.875rem;
						margin-right: 0.8rem;
						display: flex;
						align-items: center;
						justify-content: center;
						border-radius: 0;
						margin: 0;
						background: none;
						transition: none;
						
						i {
							margin: 0;
							font-size: 1.5rem;
							font-weight: 300;
							color: var(--black);
							opacity: 1;
						}
						
						&:hover i {
							transform: none;
						}
						
						.alg-wc-wl-btn-text {
							display: none;
						}
						
						.alg-wc-wl-view-state-add {
							opacity: 1;
						}
						
						.alg-wc-wl-view-state-remove {
							opacity: 1;
							i {
								font-weight: 700;
							}
						}
						
						&:focus {
							outline: revert;
							outline-offset: revert;
							box-shadow: revert;
						}
					}
				}
			}
		}
		
		
	}
	
	/** Variations **/
	
	table.variations {
		background: none;
		border: none;
		tbody {
			tr {
				th, td {
					border: none;
					background: none;
					padding: 0;
					text-align: left;
					display: block;
					
					label {
						margin-bottom: 1rem;
						@media (max-width: 480px) {
							font-size: 0.875rem !important;
							margin-bottom: 0.5rem;
						}
					}
				}
			}
		}
		
		/* Select */
		#pa_content {
			appearance: auto;
			font-family: "Proxima Nova", sans-serif;
			font-weight: 400;
			padding: 1rem;
			font-size: 1rem;
			background: none;
			border: 0.0625rem solid var(--black);
			color: var(--black);
			transition: none;
			border-radius: 0;
			width: 6rem;
			min-width: auto;
			max-width: auto;
			margin: 0 0 0.5rem 0;
			@media (max-width: 480px) {
				font-size: 0.875rem;
			}
		}
		.reset_variations {
			display: none !important;
		}
		
		@media (max-width: 480px) {
			width: auto;
		}
	}
	
	table.woocommerce-product-attributes.shop_attributes {
		border: none;
		tbody {
			tr {
				display: block;
				th {
					border: none;
					background: none;
					font-size: 1rem;
					font-weight: 600;
					padding: 0 0 1rem 0;
					line-height: 1.2;
					text-align: left;
					width: 100%;
				}
				td {
					display: inline-block;
					border: 0.0625rem solid var(--black);
					background: none;
					font-style: normal;
					font-size: 1rem;
					padding: 1rem 1.375rem;
					line-height: 1.2;
					text-align: left;
					p {
						padding: 0;
					}
				}
			}
		}
		@media (max-width: 480px) {
			tbody {
				tr {
					th {
						font-size: 0.875rem;
						padding: 0 0 0.5rem 0;
					}
					td {
						font-size: 0.875rem;
					}
				}
			}
		}
	}
	
	/** Quantity **/
	
	p.stock {
		display: none;
	}
	
	/*
	.quantity-wrapper {
		display: flex;
		flex-wrap: wrap;
		width: 10rem;
		border: 0.0625rem solid var(--black);
		height: 2.875rem;

		button.minus,
		button.plus {
			margin: 0 !important;
			width: 50px;
			padding: 0;
			background: none;
			color: var(--black);
			border: none;
			&:hover {
				background: none;
				color: var(--black);
			}
			@media (max-width: 480px) {
				width: 44px;
			}
		}
		
		.quantity {
			margin: 0 !important;
		}
		
		input {
			border: none;
			padding: 0;
			width: 58px;
			@media (max-width: 480px) {
				font-size: 0.875rem !important;
				width: 44px;
			}
		}
		
		input[type=number]::-webkit-outer-spin-button,
		input[type=number]::-webkit-inner-spin-button {
			-webkit-appearance: none;
			margin: 0;
		}
		input[type=number] {
			-moz-appearance: textfield;
		}
		
		@media (max-width: 480px) {
			width: 8.375rem;
			height: 3.125rem;
			margin-left: 6.5625rem;
		}
		
		@media (max-width: 370px) {
			margin-left: 0;
			margin-top: 0.5rem;
		}
		
	}
	*/
	
	/** Warenkorb Button **/
	
	.single_add_to_cart_button {
		width: calc(100% - 11rem);
		padding: 12px 24px 14px 24px !important;
		line-height: 1.25;
		margin-left: 1rem !important;
		&::after {
			font-family: "Font Awesome 6 Pro";
			content: "\f054";
			position: absolute;
			font-size: 0.5625rem;
			opacity: 0;
			top: 1.0625rem;
			right: -1.25rem;
			transition: all 0.3s;
		}
		&:hover, &:focus {
			padding-left: 1.25rem !important;
			padding-right: 1.75rem !important;
			&::after {
				right: 0.875rem;
				opacity: 1;
			}
		}
	}
	
	/* Button Container mobile anpassen Single/Varianten-Produkte */
	@media (max-width: 480px) {
		
		/* Single */
		table.woocommerce-product-attributes.shop_attributes {
			margin-bottom: -50px;
			position: relative;
			z-index: 5;
			width: auto;
		}
		
		/* Variante */
		table.variations {
			margin-bottom: -58px;
			position: relative;
			z-index: 5;
		}
		
	}
		
	@media (max-width: 370px) {
		
		/* Single */
		table.woocommerce-product-attributes.shop_attributes {
			margin-bottom: 0;
			position: relative;
		}
		
		/* Variante */
		table.variations {
			margin-bottom: 0;
		}
		
	}
		
	/** Product information **/
	
	.elementor-widget-woocommerce-product-content {
		ul {
			margin-bottom: 1rem;
		}
	}
	
	/** Akkordeon Product Info **/
	
	.product-info-accordeon.accordeon-container {
		border-top: 0.0625rem solid var(--black);
		.accorden {
			.acc-body {
				
				padding-bottom: 1.5rem;
				
				ul {
					margin-bottom: 1rem;
				}
				
				a {
					text-decoration-color: var(--violet);
					text-decoration-thickness: 0.375rem;
					text-decoration-line: underline;
					text-underline-offset: -0.1875rem;	
					-webkit-text-decoration-skip-ink: none;
					text-decoration-skip-ink: none;
					text-underline-offset: -0.1875rem;

					&:hover {
						text-decoration-color: var(--red);
					}
				}
				
			}
		}
	}
	
	/** Bewertungen **/
	
	.woocommerce-Reviews {
		h2 {
			display: none;
		}
		
		#comments {
			.commentlist {
				padding-left: 0 !important;
			}
			
			.comment_container {
				.avatar {
					border-radius: 100%;
				}
			}
		}
		
		.comment-form {
			padding: 1rem 0 0 0;
			.comment-form-rating {
				margin: 0 0 1rem 0;
				label {
					font-weight: 500;
					margin: 0 0 0.625rem 0;
				}
				
				.stars {
					a {
						color: var(--violet);
					}
				}
			}
			.comment-form-comment {
				position: relative;
				margin: 0 0 1rem 0 !important;
				label {
					position: absolute;
					left: 0.75rem;
					top: 1.0625rem;
					font-weight: 400;
					font-size: 1rem;
					background: none;
					line-height: 1;
					padding: 0.1875rem 0.3125rem 0.3125rem 0.3125rem !important;
					z-index: 2;
					transition: all 0.3s;
				}
			}
			
			.comment-form-comment:focus-within label,
			.comment-form-comment.filled label {
				top: -0.75rem;
				background: #fff;
			}
			
			.form-submit {
				margin: 0 !important;
				position: relative;
				width: 100%;
				
				&::after {
					font-family: "Font Awesome 6 Pro";
					content: "\f054";
					position: absolute;
					font-size: 0.5625rem;
					opacity: 0;
					top: 0.9375rem;
					right: -1.25rem;
					color: var(--white);
					font-weight: 600;
					transition: all 0.3s;
				}
				
				#submit {
					font-family: "Proxima Nova", sans-serif;
					background: var(--black) !important;
					color: var(--white) !important;
					font-size: 1rem !important;
					font-weight: 600 !important;
					border-radius: 0 !important;
					border: 0.125rem solid var(--black) !important;
					padding: 0.75rem 1.5rem 0.875rem 1.5rem !important;
					width: 100%;
					transition: all 0.3s !important;
				}
				
				&:hover {
					
					&::after {
						right: 0.9375rem;
						opacity: 1;
					}
					
					#submit {
						padding-left: 1.25rem  !important;
						padding-right: 1.75rem  !important;
					}
				}
			}
		}
	}
	
	/** Kombiniere es mit **/
	
	.combine-it-with-loop-en {
		.elementor-loop-container.elementor-grid {
			padding-top: 3.75rem;
			position: relative;
			&::before {
				content: 'Combine it with';
				cursor: text;
				display: block;
				width: 100%;
				font-weight: 600;
				padding: 1rem;
				position: absolute;
				top: 0;
				left: 0;
				color: var(--black);
				font-size: 1rem;
			}
		}
	}
	
	.combine-it-with-loop-de {
		.elementor-loop-container.elementor-grid {
			padding-top: 3.75rem;
			position: relative;
			&::before {
				content: 'Kaufe es zusammen mit';
				cursor: text;
				display: block;
				width: 100%;
				font-weight: 600;
				padding: 1rem;
				position: absolute;
				top: 0;
				left: 0;
				color: var(--black);
				font-size: 1rem;
			}
		}
	}

	
	/** Icons **/
	
	.product-picto-gallery {
		display: flex;
		flex-wrap: wrap;
		margin: 2rem 0 0 0;
		.picto-item {
			width: auto;
			margin: 0 1.25rem 1.25rem 0;
			img {
				display: block;
				height: 7.5rem;
				width: auto;
				margin: 0 auto;
			}
			p {
				text-transform: uppercase;
				font-size: 0.75rem;
				text-align: center;
				margin: 0 auto;
				margin-top: 0.625rem;
				max-width: 11.25rem;
				line-height: 1.2;
			}
		}
		@media (max-width: 768px) {
			.picto-item {
				margin: 0 1rem 1rem 0;
				img {
					height: 5.625rem;
				}
				p {
					font-size: 0.625rem;
					max-width: 8rem;
				}
			}
		}
	}
		
}
	
	/** Akkordeon FAQs **/
	
	.product-faqs {
		width: 100%;
		.accordeon {
			width: 100%;
			border-bottom: 0.0625rem solid var(--black);
			.acc-head {
				cursor: pointer;
				position: relative;
				padding: 1rem 2.5rem 1rem 1rem;
				font-weight: 600;
				&::after {
					content: "\2b";
					font-family: 'Font Awesome 6 Pro';
					font-size: 0.75rem;
					position: absolute;
					top: 1.25rem;
					right: 1rem;
					font-weight: 400;
				}
				&.open {
					&::after {
						content: "\f068";
						
					}
				}

			}
			.acc-body {
				display: none;
				padding: 0 1rem 1rem 1rem;
			}
		}
		
		.btn-container {
			display: flex;
			justify-content: center;
			padding: 1.5rem 0 0 0;
		}
	}
	
	
}



/** Pagination **/

nav.woocommerce-pagination {
	ul {
		border: none !important;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		li {
			border: none !important;
			display: inline-block;
			a, .page-numbers {
				width: 3.125rem;
				height: 3.125rem;
				padding: 0;
				display: flex !important;
				justify-content: center !important;
				align-items: center !important;
				background: var(--white) !important;
				color: var(--black) !important;
				border: 0.125rem solid var(--white) !important;
				font-size: 1rem;
				font-weight: 400;
				&.current {
					font-weight: 600;
					border-color: var(--black) !important;
				}
			}
			a:hover  {
				background: var(--black) !important;
				border-color: var(--black) !important;
				color: var(--white) !important;
			}
			a:focus  {
				background: var(--black) !important;
				border-color: var(--black) !important;
				color: var(--white) !important;
			}
			/*
			a:focus {
				outline: revert !important;
				outline-offset: revert !important;
				box-shadow: revert !important;
			}
			*/		}
	}
}

/*** Login ***/

#customer_login h2 {
	font-size: 1.75rem;
	margin-bottom: 0;
	@media (max-width: 1024px) {
		font-size: 1.5rem;
	}
	@media (max-width: 768px) {
		font-size: 1.25rem;
	}
}

.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login .button, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .register .button, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-ResetPassword .button {
	background: var(--black);
	color: var(--white);
	font-weight: 600;
	border-radius: 0;
	padding: 0.8125rem 1.5rem;
	display: block;
	float: none;
	margin: 0;
	width: 100%;
	font-size: 1rem;
	&::after {
			font-family: "Font Awesome 6 Pro";
			content: "\f054";
			position: absolute;
			font-size: 0.5625rem;
			opacity: 0;
			top: 1.0625rem;
			right: -1.25rem;
			transition: all 0.3s;
		}
		&:hover,  &:focus {
			color: var(--white);
			padding-left: 1.25rem;
			padding-right: 1.75rem;
			&::after {
				right: 0.875rem;
				opacity: 1;
			}
		}
}

.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login,
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .register {
	border: 0.125rem solid #eee;
	padding: 1.5625rem;
	border-radius: 0;
	
	form.woocommerce-form {
		.woocommerce-form-row {
			margin: 0 0 1rem 0 !important;
		}
	}
	
	.input-text {
		font-family: "Proxima Nova", sans-serif;
		font-weight: 400;
		padding: 1rem;
		font-size: 1rem;
		background: var(--white);
		border: 0.0625rem solid var(--white);
		outline: none;
		color: var(--black);
		transition: none;
		
		&:focus, &:active, &:hover {
			border-color: var(--black);
			color: var(--black);
			background: var(--white);
		}
	}
	
	label {
		font-size: 1rem;
		color: var(--black);
		font-weight: 400;
		display: block;
	}
	
	.woocommerce-form__label.woocommerce-form__label-for-checkbox.woocommerce-form-login__rememberme {
		position: relative;
		padding: 0 0 0 1.75rem !important;
		top: auto;
		left: auto;
		background: none;
		span {
			color: var(--black);
		}
		#rememberme {
			position: absolute;
			left: 0;
			top: -0.125rem;
		}
	}
	
	p {
		color: var(--black) !important;
		font-size: 0.75rem !important;

	}
	
	p.form-row {
		label.woocommerce-form-login__rememberme {
			margin: 0 0 1rem 0;
		}
	}
	
	p.woocommerce-LostPassword.lost_password {
		a {
			color: var(--black);
			font-size: 0.875rem;
			text-decoration-color: var(--violet);
			text-decoration-thickness: 0.375rem;
			text-decoration-line: underline;
			text-underline-offset: -0.1875rem;	
			-webkit-text-decoration-skip-ink: none;
			text-decoration-skip-ink: none;
			text-underline-offset: -0.1875rem;

			&:hover {
				text-decoration-color: var(--red);
			}
		}
	}
	
	p.mailchimp-newsletter {
		label {
			position: relative;
			padding: 0 0 0 1.75rem !important;
			top: auto;
			left: auto;
			background: none;
			span {
				color: var(--black);
				font-size: 1rem;
			}
			input[type="checkbox"] {
				top: -0.125rem;
			}
		}
		margin-bottom: 1rem !important;
	}
	
	@media (max-width: 480px) {
		padding: 0.9375rem;
	}
}

form.woocommerce-form.woocommerce-form-register.register {
	p.woocommerce-form-row.form-row:last-child {
		padding-top: 39px !important;
		
	}
	@media (max-width: 768px) {
		height: auto !important;
		p.woocommerce-form-row.form-row:last-child {
			padding-top: 0 !important;
		}
	}
}


/*** Accordeons ***/

.accordeon-container {
	.accorden {
		border-bottom: 0.0625rem solid var(--black);
		.acc-head {
			font-weight: 600;
			position: relative;
			padding: 1rem;
			cursor: pointer;
			&::after {
				content: "\2b";
				font-family: 'Font Awesome 6 Pro';
				position: absolute;
				top: 1.25rem;
				right: 1rem;
				font-weight: 400;
				font-size: 0.75rem;
			}
			&.open {
				&::after {
					content: "\f068";
				}
			}
		}
		
		.acc-body {
			display: none;
			padding: 0 1rem 1rem 1rem;
		}
	}
}

/*** Warenkorb ***/

@-webkit-keyframes coupon {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@-moz-keyframes coupon {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@keyframes coupon {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}

.elementor-widget-woocommerce-cart {
	
	.e-cart__container {
		display: flex;
		flex-wrap: wrap;
		grid-column-gap: 0;
		grid-row-gap: 0;
		.e-cart__column.e-cart__column-start {
			width: 65%;
			padding: 0 2.5rem 0 0;
			@media (max-width: 768px) {
				width: 100%;
				padding: 0;
			}
		}
		
		.e-cart__column.e-cart__column-end {
			width: 35%;
			@media (max-width: 768px) {
				width: 100%;
			}
		}
		
		.coupon.e-cart-section.shop_table {
			border: none !important;
			padding: 1.5625rem;
		    background: linear-gradient(270deg, var(--skin), var(--violet), var(--blue));
			background-size: 400% 400%;
			border-radius: 0;

			-webkit-animation: coupon 30s ease infinite;
			-moz-animation: coupon 30s ease infinite;
			animation: coupon 30s ease infinite;
			@media (max-width: 768px) {
				margin-bottom: 1.5625rem;
			}
			@media (max-width: 480px) {
				padding: 0.9375rem;
			}
		}
	}
	
	
	
	form.woocommerce-cart-form {
		.e-cart-section {
			/*
			border: 0.125rem solid #eee;
			padding: 1.5625rem;
			border-radius: 0;
			*/
			border: none;
			padding: 0;
			margin-bottom: 1rem;
			
			table {
				font-family: "Proxima Nova", sans-serif;
				font-size: 1rem;
				color: var(--black);
				thead {
					tr {
						th {
							padding: 0;
						}
					}
				}
				tbody {
					tr {
						td {
							border: none !important;
							border-bottom: 0.125rem solid var(--white) !important;
							padding: 1rem 0;
							vertical-align: top;
						}
					}
				}
			}
			
			.shop_table.cart {
				
				
				td.product-thumbnail {
					width: 10rem;
					a {
						display: flex;
						align-items: center;
						justify-content: center;
						height: 100%;
						width: 100%;
						background: var(--white);
						min-height: 200px;
						
						.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail {
							width: auto;
						}
					}
				}
				
				
				td.product-name {
					padding-left: 2rem;
					position: relative;
					a {
						color: var(--black) !important;
						font-size: 1.5rem;
						font-weight: 700;
						margin: 0 0 1rem 0;
						display: block;
						padding: 0 2.5rem 0 0;
						&:hover {
							color: var(--violet) !important;
						}
					}
					
					.product-price {
						display: flex;
						flex-wrap: wrap;
						width: 100%;
						span {
							font-size: 1.25rem;
							font-weight: 700;
						}
						
						.woocommerce-Price-amount.amount {
							display: block;
							width: 100%;
							
						}
						
						> .woocommerce-Price-amount.amount {
							margin: 0 0 0.25rem 0;
						}
						
						/* Einheiten */
						p.wc-gzd-cart-info.units-info {
							font-size: 0.75rem;
							font-weight: 400;
							margin: 0;
							padding-right: 5px;
						}
						p.wc-gzd-cart-info.units-info span {
							font-size: 0.75rem;
							font-weight: 400;
						}
						
						/* Grundpreis */
						.wc-gzd-cart-info.unit-price.unit-price-cart {
							font-size: 0.75rem;
							font-weight: 400;
							margin: 0;
							display: flex;
							&::before {
								content: '(';
								display: inline-block;
							}
							&::after {
								content: ')';
								display: inline-block;
							}
						}
						.wc-gzd-cart-info.unit-price.unit-price-cart span {
							font-size: 0.75rem;
							font-weight: 400;
						}
						
					}
					
					.product-quantity {
						margin: 1rem 0;
						position: relative;
						display: block;
						width: 100%;
					}
					
					.wc-gzd-cart-info.units-info {
						font-size: 0.75rem;
					}
					
					.cart-variation-details {
						font-size: 0.75rem;
						.cart-variation-summary {
							text-decoration: underline;
							position: relative;
							span {
								position: relative;
								font-size: 0.75rem;
								cursor: pointer;
									&::after {
									content: "+";
									float: right;
									font-size: 18px;
									font-weight: 400;
									line-height: 1;
									transition: transform 0.2s;
									position: absolute;
									right: -1rem;
									top: 50%;
									transform: translateY(-50%);
								}
							}
						}
						.cart-variation-summary::marker {
							content: '';
							margin-top: -0.0625rem;
						}
						.cart-variation-inner {
							.variation {
								margin: 0.3125rem 0 0 0;
								font-size: 0.75rem;
								line-height: 1.3;
								color: var(--black);
								dt {
									font-weight: 600;
								}
							}
						}
					}
					.cart-variation-details[open] .cart-variation-summary span::after {
						content: "–";  
					}
					
					a.remove {
						position: absolute;
						top: 0.8rem;
						right: 0;
						font-size: 1.5rem;
						padding: 0.3125rem;
						width: 2rem;
						height: 2rem;
						margin: 0;
						border-radius: 0;
						&:hover, &:focus {
							color: var(--black) !important;
							background: var(--white);
						}
					}
				}
				
				
				td.actions {
					padding: 1rem 0;
					text-align: right !important;
					button {
						border: 0.125rem solid var(--black);
						padding: 0.8125rem 1.5rem;
						border-radius: 0;
						color: var(--black);
						font-size: 1rem;
						font-weight: 600;
						&:hover {
							background: var(--black);
							color: var(--white);
						}
					}
				}
				
				@media (max-width: 768px) {
					
					tr {
						padding: 0 !important;
					}
					
					td.product-thumbnail {
						display: inline-block!important;
						border-bottom: none !important;
						&::before {
							content: none;
						}
					}
					td.product-name {
						display: inline-block !important;
						text-align: left !important;
						width: calc(100% - 10.3rem);
						padding-left: 1rem;
						border-bottom: none !important;
						&::before {
							content: none;
						}
						
						a {
							font-size: 1.25rem;
						}
						
						.product-price {
							span {
								font-size: 1.125rem;
							}
						}
					}
				}
				
				@media (max-width: 420px) {
					
					tr {
						padding: 0 !important;
					}
					
					td.product-thumbnail {
						width: 6.25rem;
						a {
							min-height: 100%;
							padding: 1rem 0;
						}
					}
					td.product-name {
						width: calc(100% - 6.6rem);
						
						a {
							font-size: 1.25rem;
						}
						
						.product-price {
							span {
								font-size: 1.125rem;
							}
						}
					}
				}
				
			}
		}
	}
	
	.form-row.coupon-col {
		margin-bottom: 0 !important;
		
		.coupon-col-start {
			input#coupon_code {
				font-size: 1rem;
			}
			input#coupon_code::placeholder {
				color: #777;
				opacity: 1;
				font-size: 1rem;
				font-weight: 400;
			}
			input#coupon_code:focus::placeholder {
				color: #777;
				opacity: 1;
				font-size: 1rem;
				font-weight: 400;
			}
		}
		
		.coupon-col-end {
			align-content: center;
			button.button.e-apply-coupon {
				font-family: "Proxima Nova", Sans-serif;
				font-size: 1rem;
				font-weight: 600;
				text-decoration: none;
				color: var(--white);
				border-radius: 0;
				padding: 0.8125rem 1.5rem;
				display: inline-block;
				position: relative;
				line-height: 1.25;
				background-color: none;
				position: relative;
				border: none;
				background: var(--black);
				transition: all 0.3s;
				&::after {
					font-family: "Font Awesome 6 Pro";
					content: "\f054";
					position: absolute;
					font-size: 0.5625rem;
					opacity: 0;
					top: 50%;
					margin-top: -0.3125rem;
					right: -1.25rem;
					transition: all 0.3s;
				}
				&:hover {
					padding-left: 1.25rem;
					padding-right: 1.75rem;
					&::after {
						right: 0.875rem;
						opacity: 1;
					}
				}
			}
		}
	}
	
	.coupon-error-notice {
		font-size: 0.875rem;
		padding: 1rem 0 0 0;
	}
	
	.e-cart-totals.e-cart-section {
		border: 0.125rem solid #eee;
		padding: 1.5625rem;
		border-radius: 0;
		
		h2 {
			font-size: 1.75rem;
			font-weight: 400;
			margin: 0 0 1rem 0;
			padding: 0;
			@media (max-width: 1024px) {
				font-size: 1.5rem;
			}
			@media (max-width: 768px) {
				font-size: 1.25rem;
			}
		}
		
		table.shop_table {
			font-family: "Proxima Nova", Sans-serif;
			font-size: 1rem;
			tr {
				td {
					color: var(--black);
					padding: 0.625rem 0;
					&::before {
						color: inherit;
						font-weight: 600;
					}
					
					ul.woocommerce-shipping-methods {
						li {
							label {
								color: var(--black) !important;
							}
						}
						span {
							color: var(--black) !important;
						}
					}
				}
			}
			
			tr.cart-discount {
				span {
					color: var(--black) !important;
				}
				a.woocommerce-remove-coupon {
					color: var(--black);
					font-weight: 400;
					display: block;
					font-size: 0.875rem;
					&:hover {
						color: var(--black);
					}
				}
			}
			
			tr.order-total {
				td {
					padding-bottom: 0.3125rem;
					font-size: 1.25rem;
					font-weight: 700;
					&::before {
						font-weight: 700;
					}
				}	
			}
			
			
			
			.cart-subtotal, .order-total, .order-tax {
				color: var(--black);
				.woocommerce-Price-amount.amount {
					color: var(--black);
					font-weight: 700;
				}
			}
			
			.order-tax td {
				padding-top: 0;
				padding-bottom: 0;
			}
			
			.order-tax td,
			.order-tax td::before,
			.order-tax td .woocommerce-Price-amount.amount {
				font-weight: 400;
				font-size: 0.875rem;
			}
		}
		
		.woocommerce-shipping-totals.shipping {
			span {
				color: var(--black);
			}
		}
		
		form.woocommerce-shipping-calculator {
			
			.e-cart-content {
				color: var(--black);
			}
			
			a.shipping-calculator-button {
				color: var(--black) !important;
				font-weight: 600;
				text-decoration-color: var(--violet);
				text-decoration-thickness: 0.375rem;
				text-decoration-line: underline;
				text-underline-offset: -0.1875rem;	
				-webkit-text-decoration-skip-ink: none;
				text-decoration-skip-ink: none;
				text-underline-offset: -0.1875rem;
				&:hover {
					text-decoration-color: var(--red);
				}
			}
			
			button {
				background-color: transparent;
				font-family: "Proxima Nova", Sans-serif;
				font-size: 1rem;
				font-weight: 600;
				text-decoration: none;
				color: var(--black);
				border-radius: 0;
				padding: 0.8125rem 1.5rem;
				display: inline-block;
				position: relative;
				line-height: 1;
				border: 0.125rem solid var(--black);
				transition: all 0.3s;
				&:hover, &:focus {
					background: var(--black);
					color: var(--white);
				}
			}
		}
		
		.wc-proceed-to-checkout {
			a.checkout-button {
				background-color: var(--black);
				font-family: "Proxima Nova", Sans-serif;
				font-size: 1rem;
				font-weight: 600 !important;
				text-decoration: none;
				color: var(--white);
				border-radius: 0;
				padding: 0.8125rem 1.5rem;
				display: inline-block;
				position: relative;
				line-height: 1.25;
				color: var(--white);
				transition: all 0.3s;
				&::after {
					font-family: "Font Awesome 6 Pro";
					content: "\f054";
					position: absolute;
					font-size: 0.5625rem;
					opacity: 0;
					top: 1.0625rem;
					right: -1.25rem;
					transition: all 0.3s;
				}
				&:hover, &:focus {
					padding-left: 1.25rem;
					padding-right: 1.75rem;
					&::after {
						right: 0.875rem;
						opacity: 1;
					}
				}
			}
		}
		
		#ppcp-recaptcha-v2-container {
			margin: 0 !important;
		}
		
		@media (max-width: 480px) {
			padding: 0.9375rem;
		}
		
	}
	
}


/*** Checkout ***/

.elementor-widget-woocommerce-checkout-page .woocommerce {
	
	.e-checkout__column {
		h3 {
			font-size: 1.75rem;
			font-weight: 300;
			@media (max-width: 1024px) {
				font-size: 1.5rem;
			}
			@media (max-width: 768px) {
				font-size: 1.25rem;
			}
		}
	}
	
	
	.e-checkout__container {
		
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		position: relative;
		grid-column-gap: 0;
		grid-row-gap: 0;
		
		.e-checkout__column.e-checkout__column-start {
			width: 65%;
			padding: 0 2.5rem 0 0;
			
			/* Returning customer */
			.e-woocommerce-login-section {
				font-size: 1rem;
				padding: 0 0 2rem 0;
				margin: 0 0 2rem 0;
				border-bottom: 0.125rem solid #eee;
				
				a.e-show-login {
					color: var(--black);
					text-decoration-color: var(--violet);
					text-decoration-thickness: 0.375rem;
					text-decoration-line: underline;
					text-underline-offset: -0.1875rem;	
					-webkit-text-decoration-skip-ink: none;
					text-decoration-skip-ink: none;
					text-underline-offset: -0.1875rem;

					&:hover {
						text-decoration-color: var(--red);
					}
				}
				
				.e-login-wrap {
					.e-login-wrap-start {
						
					}
					.e-login-wrap-end {
						.form-row {
							padding-left: 1rem !important;
							label.e-login-label {
								background: none;
								top: auto;
								left: auto;
								padding: 0;
								margin: 0;
							}
							
							button.woocommerce-button {
								width: 100%;
								font-size: 1rem;
								padding: 0.8125rem 1.5rem;
								&::after {
									font-family: "Font Awesome 6 Pro";
									content: "\f054";
									position: absolute;
									font-size: 0.5625rem;
									opacity: 0;
									top: 1.0625rem;
									right: -1.25rem;
									transition: all 0.3s;
								}
								&:hover,  &:focus {
									color: var(--white);
									padding-left: 1.25rem;
									padding-right: 1.75rem;
									&::after {
										right: 0.875rem;
										opacity: 1;
									}
								}
							}
							@media (max-width: 1024px) {
								padding-left: 0 !important;
							}
						}
					}
				}
				
				.e-login-actions-wrap {
					.e-login-actions-wrap-start {
						#rememberme {
							padding: 0;
							width: 1.25rem;
							height: 1.25rem;
							border: 0.0625rem solid var(--black);
							position: relative;
							&:checked {
								background: var(--black);
								&::after {
									content:'\f00c';
									font-family: "Font Awesome 6 Pro";
									position: absolute;
									top: 0;
									left: 0;
									width: 100%;
									height: 100%;
									display: flex;
									justify-content: center;
									align-items: center;
									color: var(--white);
									line-height: 1;
								}
							}
							&:focus-visible {
								background: var(--black);
							}
						}
					}
					.e-login-actions-wrap-end {
						.lost_password {
							a {
								font-size: 0.875rem;
								color: var(--black);
								text-decoration-color: var(--violet);
								text-decoration-thickness: 0.375rem;
								text-decoration-line: underline;
								text-underline-offset: -0.1875rem;	
								-webkit-text-decoration-skip-ink: none;
								text-decoration-skip-ink: none;
								text-underline-offset: -0.1875rem;

								&:hover {
									text-decoration-color: var(--red);
								}
							}
						}
					}
				}
			}
			
			/* Billing Details */
			.col-1 {
				padding: 0 !important;
				border: none !important;
				margin-bottom: 0 !important;
				
				.woocommerce-billing-fields__field-wrapper {
					display: flex;
					flex-wrap: wrap;
					justify-content: space-between;
				}
				
				#billing_postcode_field, #billing_phone_field, #billing_city_field, #billing_state_field {
					width: calc(50% - 0.5rem);
					@media (max-width: 1024px) {
						width: 100%;
					}
				}
				
				#billing_country_field, #billing_state_field {
					label {
						top: -0.75rem;
      					background: #fff;
					}
				}
				
				#billing_address_1::placeholder {
					opacity: 0;
				}
				
			}
			
			/* Shipping adress */
			.col-2 {
				.shipping_address {
					padding: 2rem 0 0 0 !important;
					border: none !important;
				}
				
				.woocommerce-shipping-fields__field-wrapper {
					display: flex;
					flex-wrap: wrap;
					justify-content: space-between;
				}
				
				#shipping_city_field, #shipping_postcode_field {
					width: calc(50% - 0.5rem);
					@media (max-width: 1024px) {
						width: 100%;
					}
				}
				
				#shipping_country_field, #shipping_state_field {
					label {
						top: -0.75rem;
      					background: #fff;
					}
				}
				
				#shipping_address_1::placeholder {
					opacity: 0;
				}
				
			}
			
			/* Zusatzfelder */
			.woocommerce-additional-fields {
				padding: 0;
				margin: 2em 0 0 0;
				
				#order_comments::placeholder {
					opacity: 0;
				}
			}
			
			@media (max-width: 768px) {
				width: 100%;
				padding: 0;
			}
		}
		
		.e-checkout__column.e-checkout__column-end {
			width: 35%;
			
			.e-checkout__order_review {
				border: 0.15rem solid #eee;
				padding: 1.625rem;
				
				.woocommerce-checkout-payment {
					margin: 0 !important;
					padding: 0 !important;
					ul {
						li {
							label {
								font-weight: 600;
								font-size: 1rem;
							}
							
							.payment_box {
								background: var(--white);
								font-size: 0.75rem;
								padding: 0.625rem;
								margin: 1rem 0 0 0 !important;
							}
						}
					}
				}
				
				@media (max-width: 480px) {
					padding: 0.9375rem;
				}
			}
			
			.e-coupon-box {
				padding: 1.5625rem;
				background: linear-gradient(270deg, var(--skin), var(--violet), var(--blue));
				background-size: 400% 400%;
				-webkit-animation: coupon 30s ease infinite;
				-moz-animation: coupon 30s ease infinite;
				animation: coupon 30s ease infinite;
				border-radius: 0;
				p {
					font-size: 1rem;
					a.e-show-coupon-form {
						font-size: inherit;
						color: var(--black);
						text-decoration-color: var(--white);
						text-decoration-thickness: 0.375rem;
						text-decoration-line: underline;
						text-underline-offset: -0.1875rem;
						-webkit-text-decoration-skip-ink: none;
						text-decoration-skip-ink: none;
						text-underline-offset: -0.1875rem;
						&:hover {
							text-decoration-color: var(--red);
						}
					}
				}
				.e-coupon-anchor-description {
					font-size: 0.875rem;
					margin: 0 0 1rem 0;
				}
				#coupon_code {
					height: 46px;
				}
				button {
					padding: 0.8125rem 1.5rem;
					&::after {
						font-family: "Font Awesome 6 Pro";
						content: "\f054";
						position: absolute;
						font-size: 9px;
						opacity: 0;
						top: 17px;
						right: -20px;
						transition: all 0.3s;
					}
					&:hover, &:focus {
						color: var(--white);
						padding-left: 20px;
						padding-right: 28px;
						&::after {
							right: 0.875rem;
							opacity: 1;
						}
					}
				}
				
				@media (max-width: 480px) {
					padding: 0.9375rem;
				}
			}
			
			.e-checkout__order_review-2 {
				border: 0.15rem solid #eee;
				padding: 1.625rem;
				border-radius: 0;
				
				.shop_table.woocommerce-checkout-review-order-table {
					font-size: 1rem;
					padding: 0;
					thead {
						tr {
							th {
								visibility: hidden;
								padding: 0;
								font-size: 0px;
								
							}
						}
					}
					tbody {
						tr {
							td {
								
							}
							
							td.product-name {
								padding: 0.3125rem 0;
								max-width: 100%;
								position: relative;
								
								.wc-gzd-cart-item-name-wrapper {
									font-family: "Proxima Nova", sans-serif;
									position: relative;
									display: block;
									padding: 0 5rem 0 6.25rem;
									min-height: 6.25rem;
									
									@media (max-width: 1024px) {
										padding: 0 5rem 0 0;
									}
									@media (max-width: 768px) {
										padding: 0 5rem 0 6.25rem;
									}
									@media (max-width: 400px) {
										padding: 0 5rem 0 0;
										min-height: auto;
									}
									
									.wc-gzd-cart-item-thumbnail {
										position: absolute;
										top: 0;
										left: 0;
										background: var(--white);
										width: 5rem;
										height: 6.25rem;
										margin: 0;
										min-width: 5rem;
										max-width: 5rem;
										img {
											object-fit: contain;
											width: 100%;
											height: 100%;
										}
										
										@media (max-width: 1024px) {
											display: none;
										}
										@media (max-width: 768px) {
											display: block;
										}
										@media (max-width: 400px) {
											display: none;
										}
										
									}
									p.wc-gzd-cart-info.units-info {
										font-size: 0.75rem;
									}
									span.wc-gzd-cart-info.unit-price.unit-price-cart {
										font-size: 0.75rem;
										margin: 0;
									}
									.product-quantity {
										font-size: 0.75rem;
										display: block;
										line-height: 1;
									}
								}
								
								.variation {
									display: none;
								}
								
								span.woocommerce-Price-amount.amount {
									position: absolute;
									top: 0.3125rem;
									right: 0;
									font-weight: 700;
								}
								
								
							}
							
							td.product-total {
								padding:  0.3125rem 0 0.3125rem 0.3125rem;
								max-width: 6.25rem;
								text-align: right;
							}
							
							.actions {
								padding: 0 0 1rem 0;
								text-align: right;
								
								a.button {
									font-family: "Proxima Nova", Sans-serif;
									color: var(--black);
									text-decoration-color: var(--violet);
									text-decoration-thickness: 0.375rem;
									text-decoration-line: underline;
									text-underline-offset: -0.1875rem;	
									-webkit-text-decoration-skip-ink: none;
									text-decoration-skip-ink: none;
									text-underline-offset: -0.1875rem;
									padding: 0;
									background: none;

									&:hover {
										text-decoration-color: var(--red);
									}
								}

							}
							
							.product-total {
								.woocommerce-Price-amount.amount {
									font-weight: 600;
								}
								.wc-gzd-cart-info.unit-price.unit-price-cart {
									font-size: 0.75rem;
									font-weight: 400;
									line-height: 1;
									span {
										font-size: 0.75rem;
										font-weight: 400; 
									}
									
								}
							}
							
						}
					}
					
					tfoot {
						tr {
							th {
								font-weight: 600;
								padding: 10px 10px 10px 0;
								width: 50%;
							}
							td {
								padding: 10px 0 10px 10px;
								text-align: right;
								width: 50%;
							}
						}
						
						tr.cart-subtotal {
							td {
								font-weight: 600;
							}
						}
						
						tr.cart-discount {
							td {
								font-weight: 600;
								a.woocommerce-remove-coupon {
									font-weight: 400;
									font-size: 0.875rem;
									display: block;
									color: var(--black);
									&:hover {
										color: var(--black);
									}
								}
							}
						}
						
						tr.woocommerce-shipping-totals.shipping {
							th {
							}
							td {
								ul {
									li {
										margin: 0 !important;
									}
								}
							}
						}
						
						tr.order-total {
							th {
								padding: 10px 10px 5px 0;
								font-size: 1.25rem;
								font-weight: 700;
							}
							td {
								padding: 10px 0 5px 10px;
								font-size: 1.25rem;
								font-weight: 700;
							}
						}
						
						tr.order-tax {
							th {
								font-weight: 400;
								padding: 0 10px 0 0;
								font-size: 0.875rem;
							}
							td {
								font-weight: 400;
								padding: 0 0 0 10px;
								font-size: 0.875rem;
							}
						}
					}
					
				}
				
				.wc-gzd-order-submit {
					.form-row {
						padding: 1.0625rem 0 0 0 !important;
						margin: 0 !important;
						
						.wc-gzd-checkbox-placeholder {
							p {
								padding: 0 !important;
								margin: 0 !important;
								font-size: 0.875rem;
							}
							label {
								font-size: 0.875rem;
								left: auto;
								top: auto;
								position: relative;
								background: none;
								line-height: 1.4;
							}
						}
						
						#ppcp-recaptcha-v2-container {
							margin: 0 !important;
						}
						
						button#place_order {
							margin-top: 1.5rem;
							font-family: "Proxima Nova", Sans-serif;
							font-size: 1rem;
							padding: 0.8125rem 1.5rem;
							color: var(--white);
							background: var(--black);
							border: 0.125rem solid var(--black);
							line-height: 1;
							transition: all 0.3s;
							&::after {
								font-family: "Font Awesome 6 Pro";
								content: "\f054";
								position: absolute;
								font-size: 0.5625rem;
								opacity: 0;
								top: 1.0625rem;
								right: -1.25rem;
								transition: all 0.3s;
							}
							&:hover,  &:focus {
								color: var(--white);
								padding-left: 1.25rem;
								padding-right: 1.75rem;
								&::after {
									right: 0.875rem;
									opacity: 1;
								}
							}
						}
						
					}
				}
				
				@media (max-width: 480px) {
					padding: 0.9375rem;
				}
			}
			
			@media (max-width: 768px) {
				width: 100%;
			}
		}
	}

}


.woocommerce {
	form {
		color: var(--black);
		
		legend {
			display: block;
			font-weight: 600 !important;
			font-size: 1rem !important;
			padding: 1rem 0 !important;
			width: 100%;
			font-size: 1.0625rem !important;
		}
		
		.form-row {
			width: 100%;
			padding: 0 !important;
			margin: 0 0 1rem 0 !important;
			position: relative;
			label {
				font-family: "Proxima Nova", sans-serif !important;
				color: var(--black) !important;
				line-height: 1.25;
				font-size: 0.875rem;
				margin-bottom: 5px;
				.required {
					color: var(--black) !important;
				}
			}
			
			input, select, textarea {
				font-family: "Proxima Nova", sans-serif;
				padding: 1rem;
				background: var(--white);
				font-size: 1rem !important;
				color: var(--black) !important;
				border: 0.0625rem solid var(--white);
				font-weight: 400;
				position: relative;
				line-height: 1.4 !important;
				&::placeholder {
					color: #777;
					font-family: "Proxima Nova", sans-serif;
					opacity: 1;
					font-size: 1rem;
					font-weight: 400;
				}
				&:focus {
					border-color: var(--black) !important;
				}
			}
			
			input[type="checkbox"] {
				padding: 0;
				width: 1.25rem;
				height: 1.25rem;
				border: 0.0625rem solid var(--black);
				display: inline-block;
				&:checked {
					background: var(--black);
					&::after {
						content:'\f00c';
						font-family: "Font Awesome 6 Pro";
						position: absolute;
						top: 0;
						left: 0;
						width: 100%;
						height: 100%;
						display: flex;
						justify-content: center;
						align-items: center;
						line-height: 1;
						color: var(--white);
					}
				}
				&:focus-visible {
					background: var(--black);
				}
			}
			
			input[type="radio"] {
				appearance: none;
				width: 1.25rem;
				height: 1.25rem;
				border-radius: 100%;
				border: 0.0625rem solid var(--black);
				display: inline-block;
				padding: 0;
				&:checked {
					background: var(--black);
					&::after {
						content:'\f00c';
						font-family: "Font Awesome 6 Pro";
						position: absolute;
						top: 0;
						left: 0;
						width: 100%;
						height: 100%;
						display: flex;
						justify-content: center;
						align-items: center;
						line-height: 1;
						color: var(--white);
						font-size: 0.875rem;
					}
				}
				&:focus-visible, &:focus {
					background: var(--black);
				}
			}
			
			
			
		}
		
		.form-row.form-row-first, .form-row.form-row-last {
			width: calc(50% - 0.5rem);
			@media (max-width: 1024px) {
				width: 100%;
			}
		}

	}
	
	/** Checkout **/
	
	/* Newsletter */
	.form-row.form-row-wide.mailchimp-newsletter.mailchimp-newsletter {
		margin: 0 0 0.5rem 0 !important;
		.woocommerce-form__label.woocommerce-form__label-for-checkbox {
			margin: 0 !important;
			position: relative;
			padding: 0 0 0 1.75rem !important;
			top: auto;
			left: auto;
			background: none;
		}
		input[type="checkbox"] {
			padding: 0;
			border: 0.0625rem solid var(--black);
			position: absolute;
			top: 0.0625rem;
			margin: 0;
			left: 0;
		}
	}
	
	/* Create Account */
	.woocommerce-account-fields .form-row.form-row-wide.create-account {
		margin: 0 0 0.5rem 0 !important;
		label {
			position: relative;
			top: auto;
			left: auto;
			padding: 0 0 0 1.75rem !important;
			background: none;
			span {
				font-size: 1rem;
			}
			input[type="checkbox"] {
				position: absolute;
				left: 0;
				top: 0;
			}
		}
	}
	
	/* Shipping diffrent adress */
	#ship-to-different-address {
		font-family: "Proxima Nova", sans-serif;
		font-size: 1rem;
		font-weight: 400;
		margin: 0 0 1rem 0;
		padding: 0 0 0 1.75rem;
		position: relative; 
		label span {
			font-family: "Proxima Nova", sans-serif;
			font-size: 1rem;
			font-weight: 400;
		}
		input[type="checkbox"] {
			padding: 0;
			border: 0.0625rem solid var(--black);
			position: absolute;
			top: 0.0625rem;
			margin: 0;
			left: 0;
			width: 1.25rem;
			height: 1.25rem;
			&:checked {
				background: var(--black);
				&::after {
					content:'\f00c';
					font-family: "Font Awesome 6 Pro";
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
					display: flex;
					justify-content: center;
					align-items: center;
					line-height: 1;
					color: var(--white);
				}
			}
			&:focus-visible {
				background: var(--black);
			}
		}
	}
	
	.legal.form-row.checkbox-legal {
		position: relative;
		padding-left: 2rem !important;
		label {
			font-size: 1rem;
			display: inline-block;
			a {
				font-weight: 400;
				color: inherit;
				text-decoration: underline;
				&:hover {
					text-decoration: none;
				}
			}
		}
		#legal {
			position: absolute;
			top: 0.1875rem;
			left: 0;
			margin: 0;
		}
	}
	
	/* Länderauswahl */
	#billing_country_field, #billing_state_field, #shipping_country_field, #shipping_state_field {
		
		.woocommerce-input-wrapper {
			select {}
			.select2 {
				height: 56.4px;
				span.selection {
					color: #777;
					font-size: 1rem;
					height: 56.4px;
					span.select2-selection.select2-selection--single {
						span.select2-selection__rendered {
							padding: 1rem;
							line-height: 1.5;
						}
						span.select2-selection__arrow {
							height: 100% !important;
						}
					}
				}
				
			}
		}
	}
	
	/* Länder calc */
	#calc_shipping_country_field, #calc_shipping_state_field {
		label {
			top: -0.75rem;
			background: #fff;
		}
	}
	
	.woocommerce-shipping-calculator {
		.shipping-calculator-form {
			margin: 0 !important;
			padding: 2rem 0 0 0;
			.form-row {
				select.country_to_state.country_select {
					
				}
				span.select2 {
					span.selection {
						span.select2-selection.select2-selection--single {
							height: auto;
							span.select2-selection__rendered {
								padding: 1rem;
								line-height: 1.25;
								min-height: 3.25rem;
							}
							span.select2-selection__arrow {
								height: 100%;
							}
						}
					}
				}
			}
			.form-row.form-row-first, .form-row.form-row-last {
				width: 100%;
			}
		}
	}
	
}

.woocommerce {
	form {
		.form-row {
			label {
				position: absolute;
				left: 0.75rem;
				top: 1.0625rem;
				font-weight: 400;
				font-size: 1rem;
				background: none;
				line-height: 1;
				padding: 0.1875rem 0.3125rem 0.3125rem 0.3125rem !important;
				z-index: 2;
				transition: all 0.3s;
			}
		}
		.form-row:focus-within label,
		.form-row.filled label{
			top: -0.75rem;
			background: #fff;
		}
	}
}


.woocommerce form .form-row.woocommerce-validated .select2-container:not(.select2-container--open) .select2-selection {
	border: 1px solid var(--white);
}

.select2-container.select2-container--default.select2-container--open.e-woo-select2-wrapper {
span.select2-dropdown.select2-dropdown--below,
span.select2-dropdown.select2-dropdown--above {
	
	border: 0.0625rem solid var(--black);
	background: #fff;
	border-radius: 0;
	
	span.select2-search.select2-search--dropdown {
		padding: 10px;
		input {
			padding: 1rem;
			font-size: 0.875rem;
			line-height: 1;
		}
	}
	
	span.select2-results {
		ul.select2-results__options {
			font-size: 0.875rem;
			li.select2-results__option {
				color: var(--black);
			}
			li.select2-results__option--highlighted {
				background: var(--violet);
				color: var(--black);
			}
			
			li.select2-results__option.select2-results__message {
				padding: 0 10px 10px 10px;
				font-weight: 500;
				font-size: 0.75rem;
			}
		}
	}
	
	}
}

/*** Plus Minus Button - Plugin ***/

form.cart, form.woocommerce-cart-form {
	.qib-button-wrapper {
		margin: 0 !important;
		border: 0.0625rem solid var(--black);
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		float: none;
		button {
			font-family: "Proxima Nova", sans-serif;
			font-size: 0 !important;
			color: var(--black) !important;
			background: #fff !important;
			border: none;
			margin: 0;
			padding: 0;
			position: relative;
			&::after {
				font-family: "Font Awesome 6 Pro";
				display: flex;
				justify-content: center;
				align-items: center;
				font-size: 0.875rem;
				font-weight: 400;
				position: absolute;
				top: 0;
				left: 0;
				height: 100%;
				width: 100%;
			}
			&.minus {
				&::after {
					content: '\f068';
				}
			}
			&.plus {
				&::after {
					content: '\2b'; 
				}
			}
		}
		.quantity.wqpmb_quantity {
			input.input-text {
				font-family: "Proxima Nova", sans-serif;
				font-size: 1rem;
				color: var(--black);
				background: #fff;
				font-weight: 400;
				border: none;
				padding: 0.5rem;
			}
		}
	}
}

form.cart {
	.qib-button-wrapper {
		width: 10rem;
		button {
			width: 46px;
			height: 100%;
		}
		.quantity.wqpmb_quantity {
			height: 100%;
			width: 58px;
			input.input-text {
				width: 100%;
				height: 100%;
			}
		}
		@media (max-width: 480px) {
			margin: -1px 0 0 90px !important;
			height: 50.8px;
			width: 8.8rem;
			button {
				&::after {
					font-size: 0.75rem;
				}
			}
			.quantity.wqpmb_quantity {
				width: 44px;
				input.input-text {
					font-size: 0.875rem;
				}
			}
		}
		@media (max-width: 370px) {
			margin: 1rem 0 0 0 !important;
		}
	}
}

form.variations_form.cart {
	.qib-button-wrapper {
		@media (max-width: 480px) {
			margin: -1px 0 0 105px !important;
			width: 8.8rem;
		}
		@media (max-width: 370px) {
			margin: 0.5rem 0 0 0 !important;
		}
	}	
}

form.woocommerce-cart-form {
	.qib-button-wrapper {
		width: 7.5rem;
		height: 40px;
		button {
			width: 40px;
			height: 100%;
		}
		.quantity.wqpmb_quantity {
			height: 100%;
			width: 35px;
			input.input-text {
				width: 100%;
				height: 100%;
				min-height: 100%;
				max-height: 100%;
			}
		}
		@media (max-width: 480px) {
			button {
				&::after {
					font-size: 0.75rem;
				}
			}
			.quantity.wqpmb_quantity {
				input.input-text {
					font-size: 0.875rem;
				}
			}
		}
	}
}

/*** Bestellbestätigung ***/

table.woocommerce-table.woocommerce-table--order-details.shop_table.order_details {
	padding: 0 !important;
	thead {
		tr {
			th {
				padding: 0.625rem;
			}
		}
	}
	tbody {
		tr {
			td {
				padding: 0.625rem;
				
				.wc-gzd-cart-info.units-info {
					color: var(--black);
					font-size: 0.875rem;
				}
				.wc-gzd-cart-info.unit-price.unit-price-cart {
					color: var(--black);
					font-size: 0.875rem;
				}
			}
			td.product-name {
				a {
					color: var(--black);
					text-decoration-color: var(--violet);
					text-decoration-thickness: 0.375rem;
					text-decoration-line: underline;
					text-underline-offset: -0.1875rem;	
					-webkit-text-decoration-skip-ink: none;
					text-decoration-skip-ink: none;
					text-underline-offset: -0.1875rem;
					font-weight: 600;

					&:hover {
						text-decoration-color: var(--red);
					}
				}
			}
		}
	}
	tfoot {
		tr {
			th {
				padding: 0.625rem;
			}
			td {
				padding: 0.625rem;
			}
		}
		
		a.woocommerce-button.order-actions-button {
			color: var(--black);
			text-decoration-color: var(--violet);
			text-decoration-thickness: 0.375rem;
			text-decoration-line: underline;
			text-underline-offset: -0.1875rem;	
			-webkit-text-decoration-skip-ink: none;
			text-decoration-skip-ink: none;
			text-underline-offset: -0.1875rem;
			font-weight: 600;
			background: none;
			padding: 0;
			&:hover {
				text-decoration-color: var(--red);
				
			}
		}
	}
}
