/* 
Theme Name: Schwarz+Matt Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Schwarz+Matt Child is a child theme of Hello Elementor, created by the Elementor team and modified by Schwart+Matt.
Author: Schwarz+Matt Team
Author URI: https://www.schwarz-matt.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: schwarz+matt-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Global Start */

@media (min-width: 200px) {
	.wrapper {
	  padding-left: 24px !important;
	  padding-right: 24px !important;
	}
	
	.pt-s {
	  padding-top: 24px !important;
	}
	
	.pt-m {
		padding-top: 32px !important;
	}
	
	.pt-l {
		padding-top: 48px !important;
	}
	
	.pt-xl {
		padding-top: 72px !important;
	}
	
	.pt-xxl {
		padding-top: 72px !important;
	}
	
	.pb-s {
		padding-bottom: 24px !important;
	}
	
	.pb-m {
		padding-bottom: 32px !important;
	}
	
	.pb-l {
		padding-bottom: 48px !important;
	}
	
	.pb-xl {
		padding-bottom: 72px !important;
	}
	
	.pb-xxl {
		padding-bottom: 72px !important;
	}
	
	.p-m {
		padding: 24px !important;
	}
	
	.p-l {
		padding: 24px !important;
	}
	
	.mt-m {
		margin-top: -48px !important;
	}
	
	.mt-l {
		margin-top: -72px !important;
	}
	
	.mb-l {
		margin-bottom: 72px !important;
	}
}

@media (min-width: 768px) {
	.wrapper {
		padding-left: 32px !important;
		padding-right: 32px !important;
	}
	
	.pt-s {
		padding-top: 24px !important;
	}
	
	.pt-m {
		padding-top: 32px !important;
	}
	
	.pt-l {
		padding-top: 48px !important;
	}
	
	.pt-xl {
		padding-top: 72px !important;
	}
	
	.pt-xxl {
		padding-top: 96px !important;
	}
	
	.pb-s {
		padding-bottom: 24px !important;
	}
	
	.pb-m {
		padding-bottom: 32px !important;
	}
	
	.pb-l {
		padding-bottom: 48px !important;
	}
	
	.pb-xl {
		padding-bottom: 72px !important;
	}
	
	.pb-xxl {
		padding-bottom: 96px !important;
	}
	
	.p-m {
		padding: 32px !important;
	}
	
	.p-l {
		padding: 48px !important;
	}
	
	.mt-m {
		margin-top: -48px !important;
	}
	
	.mt-l {
		margin-top: -72px !important;
	}
	
	.mb-l {
		margin-bottom: 72px !important;
	}
}

@media (min-width: 1024px) {
	.wrapper {
		padding-left: 48px !important;
		padding-right: 48px !important;
	}
	
	.pt-s {
		padding-top: 24px !important;
	}
	
	.pt-m {
		padding-top: 48px !important;
	}
	
	.pt-l {
		padding-top: 72px !important;
	}
	
	.pt-xl {
		padding-top: 96px !important;
	}
	
	.pt-xxl {
		padding-top: 120px !important;
	}
	
	.pb-s {
		padding-bottom: 24px !important;
	}
	
	.pb-m {
		padding-bottom: 48px !important;
	}
	
	.pb-l {
		padding-bottom: 72px !important;
	}
	
	.pb-xl {
		padding-bottom: 96px !important;
	}
	
	.pb-xxl {
		padding-bottom: 120px !important;
	}
	
	.p-m {
		padding: 48px !important;
	}
	
	.p-l {
		padding: 72px !important;
	}
	
	.mt-m {
		margin-top: -48px !important;
	}
	
	.mt-l {
		margin-top: -72px !important;
	}
	
	.mb-l {
		margin-bottom: 72px !important;
	}
}

html, body {
	max-width: 100% !important;
	overflow-x: hidden !important;
	scroll-padding-top: 70px;
}

.link a {
	color: #52AB32;
}

.link a:hover {
	text-decoration: underline;
}

.legal h2, h3, h4, h5 {
	font-weight: 700;
}

.jet-select__control {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='6' viewBox='0 0 11 6'%3E%3Cpath id='chevron-runter' d='M6.5,12a.51.51,0,0,1-.354-.146l-5-5a.5.5,0,1,1,.707-.707L6.5,10.793l4.647-4.647a.5.5,0,1,1,.707.707l-5,5A.51.51,0,0,1,6.5,12Z' transform='translate(-1 -6)' fill='%2318438b'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position-x: 90%;
  background-position-y: 16px;
}

::-webkit-input-placeholder {
	color: rgb(255, 255, 255) !important;
}

.p-reset.elementor-widget-text-editor p {
	margin-bottom: 0;
}

.p-reset.elementor-widget-text-editor p:not(:last-child) {
	margin-bottom: 12px;
}

.p-reset ul {
	padding-bottom: 24px;
	padding-left: 18px;
}

.produkt-tab a {
	color: #fff;
	text-decoration: underline;
}

.produkt-tab a:hover {
	color: #52AB32;
}

.aspect-1-1 img {
	aspect-ratio: 1/1 !important;
	object-fit: cover !important;
	object-position: center center !important;
}

.full-height.elementor-widget-image {
	height: auto;
}

.full-img-height .elementor-widget.elementor-widget-image {
	height: 100%;
}

/* Button Start */
.elementor-button {
	display: inline-block;
	line-height: 1;
	border-radius: 100px !important;
	text-align: center;
	transition: all .3s;
	font-family: "Muli", sans-serif;
	line-height: 120%;
	font-weight: 600;
}
/* Button End */

/* Button Primary Start */

.btn-primary .elementor-button {
	background-color: #52AB32 !important;
	border-radius: 100px !important;
	color: #ffffff !important;
	border: 1px solid #52AB32;
	padding: 12px 24px 12px 24px !important;
}

.btn-primary .elementor-button:hover, .btn-primary .elementor-button:focus {
	background-color: #fff !important;
	color: #52AB32 !important;
	border-color: #fff;
}

.btn-primary .elementor-button svg {
	fill: #ffffff;
}

.btn-primary .elementor-button:hover svg {
	fill: #52AB32;
}

/* Button Primary End */

/* Button Primary 02 Start */

.btn-primary-02 .elementor-button {
	background-color: #52AB32 !important;
	border-radius: 100px !important;
	color: #ffffff !important;
	border: 1px solid #52AB32;
	padding: 12px 24px 12px 24px !important;
}

.btn-primary-02 .elementor-button:hover, .btn-primary-02 .elementor-button:focus {
	background-color: #191A1B !important;
	color: #fff !important;
	border-color: #191A1B;
}

.btn-primary-02 .elementor-button svg {
	fill: #ffffff;
}

.btn-primary-02 .elementor-button:hover svg {
	fill: #fff;
}

.card-produkte:hover .btn-primary-02 .elementor-button {
	background-color: #191A1B !important;
	color: #fff !important;
	border-color: #191A1B;
}

/* Button Primary 02 End */

/* Elementor Form Start
 -------------------------------- */

/*-- select field custom icon --*/

.elementor-field.elementor-select-wrapper .select-caret-down-wrapper svg {
	display: none;
}

.elementor-form input[type=date],
.elementor-form input[type=email],
.elementor-form input[type=number],
.elementor-form input[type=password],
.elementor-form input[type=search],
.elementor-form input[type=tel],
.elementor-form input[type=text],
.elementor-form input[type=url],
.elementor-form select,
.elementor-form textarea {
	padding: 8px 12px;
}

.elementor-field.elementor-select-wrapper .select-caret-down-wrapper:before {
	content: "";
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='enable-background:new 0 0 511.9 272' viewBox='0 0 511.9 272'%3E%3Cpath d='M256 272c-4.2 0-8.2-1.6-11.4-4.6l-240-240c-6.2-6.2-6.2-16.3 0-22.6s16.3-6.2 22.6 0L256 233.5 484.7 4.7c6.2-6.2 16.3-6.2 22.6 0 6.2 6.2 6.2 16.3 0 22.6l-240 240c-3.1 3.1-7.1 4.7-11.3 4.7z' style='fill:%23111'/%3E%3C/svg%3E");
	width: 15px;
	height: 8px;
	display: block;
	background-size: contain;
	position: absolute;
	right: 12px;
	top: 4px;
}

.eicon-caret-down:before {
	content: "" !important;
}

/*-- dse checkbox --*/

.elementor-form .elementor-field-type-acceptance .elementor-field-option {
	display: flex;
	gap: .5rem;
	cursor: pointer;
}

/* reset checkbox */
.elementor-form .elementor-field-type-acceptance input {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	position: relative;
	width: 20px;
	height: 20px;
	cursor: pointer;
	background-color: transparent !important;
}

.elementor-element.elementor-widget-form .elementor-form .elementor-field-type-acceptance label {
	font-size: 12px;
	line-height: 1.6;
	cursor: pointer;
}

.elementor-form .elementor-field-type-acceptance label a {
	color: #191A1B;
	text-decoration: underline;
}

.elementor-form .elementor-field-type-acceptance label a:hover {
	color: #52ab32;
}

.elementor-field-subgroup.elementor-subgroup-inline {
	gap: 32px;
}

body .elementor-19 .elementor-element.elementor-element-e1087f3 .elementor-labels-above .elementor-field-group > label {
	padding-top: 24px;
}

.elementor-field-group.elementor-column.elementor-field-type-submit.elementor-col-100.e-form__buttons {
	margin-top: 24px;
}

.list-blog ul {
	padding-left: 16px;
}

.list-blog li {
	padding-left: 16px;
	padding-bottom: 12px;
}

/* check box */
.elementor-form .elementor-field-type-acceptance input:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	border-radius: 4px;
	border: 1px solid #212121;
	background-color: #ffffff;
}

/* checked icon */
.elementor-form .elementor-field-type-acceptance input:after {
	content: "";
	border-bottom-style: solid;
	border-bottom-width: 2px;
	border-right-style: solid;
	border-right-width: 2px;
	border-color: #212121;
	display: inline-block;
	position: absolute;
	height: 10px;
	width: 5px;
	left: 8px;
	top: 4px;
	transform: rotate(45deg);
	opacity: 0;
	transition: .125s;
}

.elementor-form .elementor-field-type-acceptance input:checked:after {
	opacity: 1;
}

/* Making checkbox and radio button invisible */
input[type="radio"] {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden !important;
	padding: 0;
	position: absolute;
	width: 1px;
}

/* For Radio button */
.elementor-field-type-radio > div label:before {
	content: "";
	display: inline-block;
	width: 15px;
	height: 15px;
	margin-right: 16px;
	border-radius: 100%;
	vertical-align: -1px;
	border: 2px solid #fff;
	/* border: 2px solid rgba(0,0,0,0.25); */
	padding: 0.13em;
	background-color: #fff;
	/* background-color: transparent; */
	/* background-clip: content-box; */
	transition: all 0.2s ease;
}
.elementor-field-type-radio > div label {
	margin-right: 1em;
}
.elementor-field-type-radio > div input:hover + label:before {
	border-color: #fff;
}
.elementor-field-type-radio > div input:checked + label:before {
	background-color: #191A1B;
	border-color: #fff;
}
 
 @media (max-width:767px) {
	 .elementor-element.elementor-widget-form .elementor-form .elementor-field-type-acceptance label {
		 font-size: 12px !important;
	 }
	 
	 .elementor-field-subgroup.elementor-subgroup-inline {
		 gap: 12px;
		 flex-direction: column;
	 }
	 
 }
 
 /* Elementor Form End
  -------------------------------- */
  
.slider-dots.elementor-widget-n-carousel .swiper-pagination-bullet {
	  height: 4px;
	  width: 32px;
	  border-radius: 12px;
  }
  
  .aspect-3-2 img {
 	aspect-ratio: 3/2;
	object-fit: cover;
	object-position: center center;
  }
  
  .leistungen-card .leistungen-card-img img {
	  scale: 1;
	  transition: all .3s ease-in;
  }
  
  .leistungen-card:hover .leistungen-card-img img{
	  scale: 1.05;
	  transition: all .3s ease-in;
  }
  
  .aktuelles-card .aktuelles-card-img img {
		scale: 1;
		transition: all .3s ease-in;
	}
	
	.aktuelles-card:hover .aktuelles-card-img img {
		scale: 1.05;
		transition: all .3s ease-in;
	}
	
	.produkte-listing-card .produkte-listing-card-img img {
		scale: 1;
		transition: all .3s ease-in;
	}
	
	.produkte-listing-card:hover .produkte-listing-card-img img {
		scale: 1.05;
		transition: all .3s ease-in;
	}
	
	.jet-listing-grid__slider-icon.next-arrow.slick-arrow {
		border-radius: 100px;
	}
	
	.jet-listing-grid__slider-icon.prev-arrow.slick-arrow {
		border-radius: 100px;
	}

	.card-kat .btn-mehr-icon {
		padding-left: 0px;
		transition: all .2s ease-in;
	}
	
	.card-kat:hover .btn-mehr-icon {
		padding-left: 3px;
		transition: all .2s ease-in;
	}
	
	.jet-smart-filters-select .jet-select__control {
		width: fit-content !important;
	}
	
	.video.elementor-widget-video .elementor-wrapper iframe {
		border-radius: 24px !important;
	}
	
	.zoom-img .zoom-icon {
	 scale: 1;
	 transition: all .2s ease-in;
	}
	
	.zoom-img:hover .zoom-icon {
	 scale: 1.15;
	 transition: all .2s ease-in;
	}
	
	.elementor-lightbox .elementor-lightbox-image {
		border-radius: 24px !important;
	}
	
	.elementor embed, .elementor iframe, .elementor object, .elementor video {
		border-radius: 24px;
	}
	
.aktuelles-post h2, h3, h4, h5 {
			font-weight: 700;
		}
		
	.aktuelles-post h2 {
			font-size: 20px;
			line-height: 1.4;
		}
		
		.aktuelles-post ul {
			padding-left: 14px;
			padding-bottom: 24px;
		}