/*
Theme Name: Divi Child
Theme URI: http://www.elegantthemes.com/gallery/divi/
Template: Divi
Author: Elegant Themes
Author URI: http://www.elegantthemes.com
Description: Smart. Flexible. Beautiful. Divi is the most powerful theme in our collection.
Version: 4.17.6.1660211009
Updated: 2022-08-11 09:43:29

*/
:root {
	--black: #2D1E1B;
	--white: #ffffff;
	--background: #FFF7F5;
	--background-transparent: #FFF7F5aa;
	--background-transparent2: #FFF7F5E6;
	--primary: #A988B1;
	--primary-transparent: rgba(169,136,177,0.7);
	--secondary: #7E5C8E;
	--highlight: #FFE2B9;
	--grey: #564F5B;
	--error: #9E2A2B;
	--avro: "Arvo", serif;
	--opensans: "Open Sans", serif;
	--bold: 800;
	--regular: 400;
	--transition: .2s;
}

::selection {
	background: var(--primary-transparent);
	color: var(--black);
}

#page-container{
	padding: 0 !important;
}

#main-content {
	background: var(--background);
}

html, body {
	max-width: 100%;
	overflow-x: hidden;
}

.nopadding {
	padding: 0;
}

.nomargin {
	padding: 0;
}

/*Fonts*/
h1, .mimic-h1,
h2, .mimic-h2,
h3, .mimic-h3,
h4, .mimic-h4,
h5, .mimic-h5,
h6, .mimic-h6 {
	font-family: var(--avro);
	font-weight: var(--bold);
	text-transform: uppercase;
	color: var(--black);
	hyphens: auto;
	line-height: 1!important;
}

h1, .mimic-h1 {
	font-size: 6rem !important;
}

h2, .mimic-h2 {
	font-size: 3.2rem !important;
}

h3, .mimic-h3,
#wm-c-privacy h2,
div#customer_login h2 {
	font-size: 1.6rem !important;
}

h4, .mimic-h4,
.woocommerce-Address h2,
.woocommerce-customer-details h2,
h2.woocommerce-shipments-list__title {
	font-size: 1.1rem !important;
	color: var(--grey);
}

h5, .mimic-h5, #wm-c-privacy h3 {
	font-size: 1.1rem !important;
	text-transform: none;
}

h6, .mimic-h6,
#wm-c-privacy h4m, #wm-c-privacy h5 {
	font-size: 1rem !important;
	text-transform: none;
}

#main-content a {
	font-weight: var(--bold);
}

footer a:focus-visible,
#main-content a:focus-visible {
	color: var(--secondary);
	text-decoration: underline;
}

/*Container*/
.wm-half-grid {
	display: grid;
	grid-template-columns: repeat(2, 48%);
	justify-content: space-between;
}

/*Footer*/
.wm-footer-row>div {
	width: 100% !important;
	margin: 0 !important;
}

.et-db #et-boc footer.et-l #wm-footer-content,
#wm-footer-content {
	display: grid;
	grid-template-columns: 14% 16% 20% 23%;
	justify-content: space-between;
	padding: 50px 0!important;
}

#footer-links,
#copyright-section {
	display: flex;
	align-items: baseline;
}

#footer-links {
	gap: 20px;
	flex-wrap: wrap;
}

#copyright-section {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
}

#waymark {
	display: flex;
	align-items: center;
	gap: 5px;
}

#waymark > * {
	display: flex;
	align-items: flex-end;
	white-space: nowrap;
}

.et-db #et-boc footer.et-l .contact-info-container:not(:nth-child(2)),
.contact-info-container:not(:nth-child(2)) {
	padding-top: 10px;
}

.fauster-categories-footer > a {
	display: block;
}

/*Menu*/
#menubar #menu-hauptmenue li.menu-item>a,
#menubar #mobile_menu1 li.menu-item>a,
#menubar #mobile_menu1 li.menu-item:hover>a,
#menubar li.menu-item>a {
	padding: 0 !important;
	font-family: var(--avro);
	font-weight: var(--bold);
	text-transform: uppercase;
	color: var(--black);
}

#menubar #mobile_menu1 li.menu-item {
	padding: 10px 0;
}

#menubar #mobile_menu1 li.menu-item>a {
	border-bottom: 0;
}

#menubar #mobile_menu1 {
	box-shadow: none;
	padding-left: 0;
	border-color: var(--background);
	width: 90vw;
}

.et-db #et-boc .et-l .et_mobile_menu li a:hover,
.et-db #et-boc .et-l .nav ul li a:hover {
	background-color: transparent;
	opacity: 1;
}

#menubar #menu-hauptmenue li.menu-item:hover>a,
#menubar li.menu-item:hover>a {
	color: var(--primary);
	opacity: 1;
}

#menubar #mobile_menu1 li.menu-item a:focus-visible,
#menubar #menu-hauptmenue li.menu-item a:focus-visible,
#menubar li.menu-item a:focus-visible {
	color: var(--primary);
	text-decoration: underline;
}

#menubar #menu-hauptmenue li.menu-item,
#menubar li.menu-item {
	padding: 0;
}

#menubar .et_pb_menu_inner_container {
	align-items: baseline!important;
	gap: 5%;
}

#menubar .et_pb_menu__logo {
	margin: 0!important;
}

#menubar #menu-hauptmenue.et-menu.nav,
#menubar .et-menu.nav {
	gap: 10%;
	flex-wrap: nowrap;
}

#menubar .et-db #et-boc .et-l .et_mobile_menu li a {
	padding: 0 10px;
	border: 0px;
	color: var(--black);
} 

#menubar ul#mobile_menu1 {
	width: 102vw !important;
	background: var(--background-transparent2) !important;
	transform: translatex(-6vw);
	padding-left: 6vw !important;
}

/*Buttons*/
.wm-c-button-container button,
.wm-e-button-secondary,
.wm-e-button-secondary.wm-e-cart-apply-coupon,
.fauster-buttonreset,
.woocommerce .button-container button.button,
.button-container button,
a.fauster-buttonreset,
button.woocommerce-button.button,
button.woocommerce-Button.button,
a.woocommerce-Button.wc-forward.button,
#mein-konto .button {
	padding: 0px!important;
	border-radius: 0!important;
	border: 0!important;
	text-align: center;
}

button.woocommerce-Button.button::after,
button.woocommerce-button.button::after,
.woocommerce .button-container button.button::after,
.fauster-buttonreset::after,
a.woocommerce-Button.wc-forward.button::after,
#mein-konto .button:after {
	display: none;
}

.wm-e-button,
.wm-button,
.fauster-button,
.wm-e-button-secondary.wm-e-cart-apply-coupon,
.woocommerce  .button-container button.button,
.button-container button,
a.fauster-button,
button.woocommerce-button.button,
button.woocommerce-Button.button,
a.woocommerce-Button.wc-forward.button,
.wm-c-button-container button,
#mein-konto .button {
	font-weight: var(--bold);
	font-family: var(--avro);
	font-size: 16px;
	cursor: pointer;
}

.wm-e-button,
.wm-button,
.fauster-primary-button,
.wm-e-button-secondary.wm-e-cart-apply-coupon,
.primary-button-container button,
.woocommerce .primary-button-container button.button,
.fauster-primary-button:disabled:hover, 
a.fauster-primary-button,
button.woocommerce-button.button,
button.woocommerce-Button.button,
.wm-c-button-container button,
a.woocommerce-Button.wc-forward.button,
#mein-konto .button {
	padding: 10px 15px!important;
	min-width: 200px;
	color: var(--white)!important;
	background: var(--black);
	background-color: var(--black);
	text-transform: uppercase;
	transition: var(--transition);
}

.wm-e-button:hover,
.wm-button:hover,
.fauster-primary-button:hover,
.wm-e-button-secondary.wm-e-cart-apply-coupon:hover,
.primary-button-container button:hover,
.woocommerce .primary-button-container button.button:hover,
a.et_pb_button.fauster-primary-button:hover,
button.woocommerce-button.button:hover,
button.woocommerce-Button.button:hover,
.wm-c-button-container button:hover,
a.woocommerce-Button.wc-forward.button:hover {
	background: var(--secondary);
}

.wm-e-button-secondary,
a.fauster-secondary-button {
	color: var(--black);
	background: transparent;
	background-color: transparent;
}

.wm-e-button-secondary:hover,
a.et_pb_button.fauster-secondary-button:hover {
	background: transparent;
	color: var(--primary);
}

.fullwidth-button-container button {
	width: 100%;
}

.wm-e-button:disabled,
.wm-button:disabled,
.fauster-button:disabled {
	opacity: .5;
}
/*Heading with Line*/
.heading-with-line {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
}

/*
.heading-line {
flex-grow: 1;
height: 8px;
background: linear-gradient(90deg, var(--black) 0%, var(--grey) 100%);;
display: inline-block;
margin: 0 10px;
}

.heading-line {
flex: 0;
margin: 0;
transition: .2s;
}transform-line
*/

.heading-line {
	flex-grow: 1;
	height: 8px;
	background: linear-gradient(90deg, var(--black) 0%, var(--grey) 100%);;
	display: inline-block;
	margin: 0 10px;
}

.heading-post {
	color: var(--grey);
}

/*Container*/
.img-cover img {
	object-fit: cover;
}

.fauster-header {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.fauster-layout-2-columns, 
.fauster-layout-3-columns {
	display: grid!important;
	grid-template-columns: repeat(2, 32%) 23%;
	justify-content: space-between;
	align-items: end;
}

.fauster-layout-2-columns>div,
.fauster-layout-3-columns>div {
	width: 100%!important;
	margin: 0!important;
}

.fauster-layout-2-columns {
	grid-template-columns: 32% 62%;
}

.container-for-alignment {
	display: grid;
}

.align-bottom {
	align-self: end;
}

.container-align-top {
	align-items: start;
}

/*Slider*/
/*Swiper Navigation*/
.typ-1 .swiper-button-prev,
.typ-1 .swiper-button-next {
	top: 0;
	bottom: auto;
}

.typ-2 .swiper-button-prev,
.typ-2 .swiper-button-next,
.typ-3 .swiper-button-prev,
.typ-3 .swiper-button-next,
.typ-4 .swiper-button-prev,
.typ-4 .swiper-button-next,
.typ-5 .swiper-button-prev,
.typ-5 .swiper-button-next,
.typ-6 .swiper-button-prev,
.typ-6 .swiper-button-next,
.typ-7 .swiper-button-prev,
.typ-7 .swiper-button-next {
	top: auto;
	bottom: 0;
}

.typ-2 .swiper-wrapper,
.typ-3 .swiper-wrapper, 
.typ-4 .swiper-wrapper, 
.typ-5 .swiper-wrapper, 
.typ-6 .swiper-wrapper {
	margin-bottom: 60px;
}

.swiper-button-prev,
.swiper-button-next {
	width: 40px;
	height: 40px;
	background: var(--black);
	margin-top: 0;
	transition: var(--transition);
	transition-property: background;
	left: auto;
	right: 0;
}

.swiper-button-prev {
	right: 60px;
	transform: rotate(180deg);
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
	background: var(--secondary);
}

.swiper-button-prev::after,
.swiper-button-next::after {
	background: url('/wp-content/uploads/2025/02/fausterarrow.png');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 15px;
	height: 15px;
	font-size: 1px;
	color: transparent;
}

.typ-2 .swiper-scrollbar,
.typ-4 .swiper-scrollbar {
	display: none;
}

/*Markttage Slider .typ-1*/
.markttag-slide {
	background: var(--white);
	padding: 25px;
	min-height: 350px;
	margin-top: 70px;
}

.typ-1 .swiper-wrapper {
	height: 100%!important;
}

.markttag-date {
	font-weight: var(--bold);
}

.markttag-detail {
	margin-top: 15px;
}

/*Impressionen-Slider .typ-2*/
.typ-2 .gallery-swiper,
.typ-2 .gallery-swiper img{
	height: 400px;
}

.typ-2 .gallery-swiper img{
	width: 100%;
	object-fit: cover;
	object-position: center;
}

.typ-2 .swiper-wrapper {
	height: 1290px;
}

/*Familienslider .typ-4*/
.typ-4 .swiper-wrapper {
	margin-bottom: 60px;
}

.fauster-family-slide {
	background-color: var(--white);
	height: auto;
}

.fauster-family-content {
	padding: 20px;
}

.fauster-family-slide img {
	height: 250px;
	width: 100%;
	object-position: top;
	object-fit: cover;
}

.fauster-family-content>p:first-child {
	padding-bottom: 5px;
}

/*Lageslider .typ-5*/
.highlight-label {
	font-weight: var(--bold);
}

.fauster-lagen-slide-layout {
	display: grid;
	grid-template-columns: 41% 50%;
	justify-content: space-between;
	align-items: end;
}

.eckdaten-container,
.eckdaten-container * {
	color: var(--grey);
}

.eckdaten-container {
	background: var(--white);
	padding: 25px;	
}

.fauster-lagen-slide h4,
.fauster-lagen-slide .mimic-h4 {
	margin-bottom: 10px;
	padding: 0;
}

.lage-eckpunkt {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px;
}

.lage-eckpunkt:not(:last-child){
	margin-bottom: 15px;
}

.lage-header img {
	width: 100%;
	height: 70vh;
	min-height: 450px;
	object-fit: cover;
	margin-top: 15px;
}

span.highlight-label {
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

img.fauster-info-icon {
	height: 15px;
	width: auto;
}

.lage-description > p:first-child {
	padding-bottom: 10px;
}

.lage-description {
	margin-bottom: 50px;
}

/*Kategorien Startseite .typ-7*/
.typ-7 .present-category-img {
	max-height: 400px;
	width: 100%;
	object-fit: cover;
	margin-bottom: 50px;
}

.category-info .fauster-button {
	display: inline-block;
}

/*Formulare & Inputs*/
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7-not-valid-tip {
	color: var(--error);
}

.wpcf7-response-output {
	padding: 0 !important;
	border: 0 !important;
	margin: 20px 0 0 0 !important;
}

form.wpcf7-form.sent .fauster-form-wrapper {
	display: none;
}

.select2-container .select2-selection,
select.wm-e-input,
select.country_select,
span.woocommerce-input-wrapper>select.select,
input.wm-e-input,
input[type="text"].wm-e-input,
input[type="number"].wm-e-input,
input[type="email"].wm-e-input,
input[type="tel"].wm-e-input,
input[type="date"].wm-e-input,
textarea.wm-e-input,
.woocommerce .fauster-qty .quantity input.qty,
#wm-engine-search-input,
input[type="text"],
input[type="number"],
input[type="email"],
input[type="tel"],
input[type="date"],
.form-input,
textarea.form-input,
input.form-input,
#mein-konto .woocommerce form .form-row input.input-text {
	width: 100%;
	border: 1px solid var(--white);
	padding: 10px;
	background: var(--white);
	color: var(--black);
	border-radius: 0;
}

.select2-container .select2-selection--single .select2-selection__rendered {
	padding: 0;
}

#mein-konto .woocommerce #customer_login form .form-row input.input-text {
	background: var(--background);
}

#mein-konto .woocommerce form.woocommerce-ResetPassword.lost_reset_password .form-row input.input-text {
	background: var(--white);
}

textarea {
	resize: vertical;
}

.input-label {
	color: var(--grey);
}

.input-wrapper {
	margin-bottom: 15px;
}

.input-half {
	display: grid;
	grid-template-columns: repeat(2, 48%);
	justify-content: space-between;
}

/*Spinner*/
.wpcf7-spinner {
	background-color: var(--black);
	opacity: 1;
	width: 70px;
	height: 34px;
	border-radius: 0;
	padding: 0;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.wpcf7-spinner::before {
	top: 8px;
	left: 28px;
	background-color: var(--white);
}

.button-spinner-container {
	position: relative;
	width: fit-content;
}

.button-spinner-container:hover .fauster-button,
.button-spinner-container:hover .wpcf7-spinner {
	background-color: var(--secondary);
}

/*Checkbox*/
.cf-checkbox-container span.wpcf7-list-item {
	margin: 0;
}

.cf-checkbox-container span.wpcf7-list-item>label {
	display: block;
	position: relative;
	padding-left: 30px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.cf-checkbox-container span.wpcf7-list-item>label input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.fauster-checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 20px;
	width: 20px;
	background-color: var(--white);
}

.cf-checkbox-container span.wpcf7-list-item>label:hover input ~ .wpcf7-list-item-label .fauster-checkmark {
	background-color: var(--white);
}

.nobg .cf-checkbox-container span.wpcf7-list-item>label:hover input ~ .wpcf7-list-item-label .fauster-checkmark, 
.nobg .ab-checkmark {
	background-color: var(--grey);
}

.cf-checkbox-container span.wpcf7-list-item>label input:checked ~ .wpcf7-list-item-label .fauster-checkmark {
	background-color: var(--primary);
}

.fauster-checkmark::after {
	content: "";
	position: absolute;
	display: none;
}

.cf-checkbox-container span.wpcf7-list-item>label input:checked ~ .wpcf7-list-item-label .fauster-checkmark:after {
	display: block;
}

.cf-checkbox-container span.wpcf7-list-item>label .fauster-checkmark:after {
	left: 50%;
	top: 50%;
	width: 5px;
	height: 10px;
	border: solid var(--white);
	border-width: 0 2px 2px 0;
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	-ms-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
}

.wm-engine-checkbox_indicator {
	background: var(--white);
}

.wm-engine-checkbox input:checked ~ .wm-engine-checkbox_indicator,
.wm-engine-checkbox:hover input:checked ~ .wm-engine-checkbox_indicator,
.wm-engine-checkbox:hover input ~ .wm-engine-checkbox_indicator {
	background: var(--primary)!important;
}

.wm-engine-checkbox-input .wm-engine-checkbox_indicator:after {
	border: solid var(--white);
	border-width: 0 2px 2px 0;
}

/*Focus*/
.wm-e-button:focus-visible,
.wm-button:focus-visible,
.fauster-primary-button:focus-visible,
button.button:focus-visible,
#main-content a.fauster-primary-button:focus-visible,
button.woocommerce-button.button:focus-visible,
button.woocommerce-Button.button:focus-visible {
	color: var(--white);	
	text-decoration: underline;
}

.input-wrapper:focus-within .input-label {
	color: var(--secondary);	
	text-decoration: underline;
}

.wm-engine-checkbox.wm-engine-checkbox-input:focus-within .wm-engine-checkbox_indicator,
select.wm-e-input:focus-visible,
select.country_select:focus-visible,
span.woocommerce-input-wrapper>select.select:focus-visible,
input.wm-e-input:focus-visible,
textarea.wm-e-input:focus-visible,
input[type="text"].wm-e-input:focus-visible,
input[type="number"].wm-e-input:focus-visible,
input[type="email"].wm-e-input:focus-visible,
input[type="tel"].wm-e-input:focus-visible,
input[type="date"].wm-e-input:focus-visible,
.woocommerce .fauster-qty .quantity input.qty:focus-visible,
#wm-engine-search-input:focus-visible,
input[type="text"]:focus-visible,
input[type="number"]:focus-visible,
input[type="email"]:focus-visible,
input[type="tel"]:focus-visible,
input[type="date"]:focus-visible,
.cf-checkbox-container span.wpcf7-list-item>label input:focus-visible ~ .wpcf7-list-item-label .fauster-checkmark,
.form-input:focus-visible,
textarea.form-input:focus-visible,
input.form-input:focus-visible,
.fauster-image-container:focus-visible,
#mein-konto .woocommerce form .form-row input.input-text:focus-visible,
a.woocommerce-Button.wc-forward.button:focus-visible,
#mein-konto .button:focus-visible {
	border: 1px solid var(--secondary);
}

/*Age-Gate*/
div#wm-c-agegate-content {
	max-width: 600px;
}

div#wm-c-agegate-content h2 {
	font-size: 2rem !important;
	margin-bottom: 15px;
}

div#wm-c-agegate-content p {
	margin-bottom: 25px;
}

div#wm-c-agegate-container {
	background: var(--background-transparent2);
}

@media only screen and (max-width: 1400px) {
	/*Footer*/
	#wm-footer-content {
		grid-template-columns: repeat(4, 22%);
	}
}

@media only screen and (max-width: 1200px) {
	.fauster-layout-3-columns {
		grid-template-columns: repeat(2, 46%);
		row-gap: 50px;
		align-items: start;
	}

	.fauster-layout-3-columns>div:first-child {
		grid-column-start: 1;
		grid-column-end: 3;
	}

	.fauster-layout-3-columns>div:first-child img {
		height: 300px;
		min-height: 300px;
	}

	.typ-2 .swiper-wrapper {
		height: 860px;
	}
	.fauster-lagen-slide-layout {
		grid-template-columns: 100%;
		gap: 50px;
	}

	.lage-header img {
		width: 100%;
		height: 250px;
		min-height: 250px;
	}

	.lage-description {
		margin-bottom: 35px;
		padding: 0 25px; 
	}
}

@media only screen and (max-width: 980px) {
	/*Footer*/
	.et-db #et-boc footer.et-l #wm-footer-content,
	#wm-footer-content {
		grid-template-columns: repeat(2, 48%);
		row-gap: 35px;
	}

	h1, .mimic-h1 {
		font-size: 3.2rem !important;
	}

	h2, .mimic-h2 {
		font-size: 2rem !important;
	}

	#copyright-section {
		align-items: flex-end;
	}

	div#footer-links>h2 {
		width: 100%;
	}

	.primary-button-container button,
	a.fauster-primary-button {
		min-width: 10px;
	}

	div#wm-c-agegate-content {
		max-width: 80%;
	}
}

@media only screen and (max-width: 768px) {
	/*Footer*/
	#copyright-section {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}

	/*Container*/
	.fauster-layout-3-columns {
		grid-template-columns: 100%;
	}

	.fauster-layout-3-columns>div:first-child {
		grid-column-end: 2;
	}

	.fauster-layout-3-columns>div:last-child img {
		height: 300px;
		min-height: 300px;
	}

	.typ-2 .swiper-wrapper {
		height: 430px;
	}

	.wm-c-button-container {
		flex-direction: column;
	}
}

@media only screen and (max-width: 560px) {
	/*Footer*/
	.et-db #et-boc footer.et-l #wm-footer-content,
	#wm-footer-content {
		grid-template-columns: 100%;
	}

	h1, .mimic-h1 {
		font-size: 4rem !important;
	}

	h2, .mimic-h2 {
		font-size: 2.5rem !important;
	}

	.typ-7 .swiper-wrapper {
		margin-bottom: 60px;
	}
}

@media only screen and (max-width: 480px) {
	/*Footer*/

	h1, .mimic-h1 {
		font-size: 2rem !important;
	}

	h2, .mimic-h2 {
		font-size: 1.6rem !important;
	}

	.input-half {
		display: block;
	}
}