/* General
--------------------------------------------------------- */
body {
	/* background-color: var(--c-brown-lighten-3); */
}
#content {
	padding-top: var(--header-height);
}


/* Typography
--------------------------------------------------------- */
/* all headings */
.h1, .h2, .h3, .h4, .h5, .h6,.elementor-widget-heading h1.elementor-heading-title, h1,.elementor-widget-heading h2.elementor-heading-title, h2,.elementor-widget-heading h3.elementor-heading-title, h3,.elementor-widget-heading h4.elementor-heading-title, h4,.elementor-widget-heading h5.elementor-heading-title, h5,.elementor-widget-heading h6.elementor-heading-title, h6 {
	text-transform: uppercase;
	letter-spacing: 0.4rem;
	font-weight: var(--fw-500);
	hyphens: manual;
}
/* h1 */
.h1,.elementor-widget-heading.h1 h2.elementor-heading-title, .entry-content h2.h1, h2.h1,.elementor-widget-heading.h1 h3.elementor-heading-title, .entry-content h3.h1, h3.h1,.elementor-widget-heading.h1 h4.elementor-heading-title, .entry-content h4.h1, h4.h1,.elementor-widget-heading.h1 h5.elementor-heading-title, .entry-content h5.h1, h5.h1,.elementor-widget-heading.h1 h6.elementor-heading-title, .entry-content h6.h1, h6.h1,.elementor-widget-heading.h1 h1.elementor-heading-title, .entry-content h1, h1 {
	/* font-size: clamp(2.2rem, 1.807rem + 0.500vw, 2.8rem); */
	font-size: clamp(2.1rem, 1.938rem + 0.300vw, 2.6rem);
	letter-spacing: clamp(0.4rem, 0.138rem + 0.300vw, 0.8rem);
	line-height: 1.4;
	font-weight: var(--fw-500);
}
/* h2 */
.h2,.elementor-widget-heading.h2 h1.elementor-heading-title, .entry-content h1.h2, h1.h2,.elementor-widget-heading.h2 h3.elementor-heading-title, .entry-content h3.h2, h3.h2,.elementor-widget-heading.h2 h4.elementor-heading-title, .entry-content h4.h2, h4.h2,.elementor-widget-heading.h2 h5.elementor-heading-title, .entry-content h5.h2, h5.h2,.elementor-widget-heading.h2 h6.elementor-heading-title, .entry-content h6.h2, h6.h2,.elementor-widget-heading.h2 h2.elementor-heading-title, .entry-content h2, h2 {
	/* font-size: clamp(2.1rem, 1.938rem + 0.300vw, 2.6rem); */
	font-size: clamp(2rem, 1.869rem + 0.200vw, 2.2rem);
	letter-spacing: clamp(0.4rem, 0.138rem + 0.300vw, 0.8rem);
	font-weight: var(--fw-500);
}
/* h3 */
.h3,.elementor-widget-heading.h3 h1.elementor-heading-title, .entry-content h1.h3, h1.h3,.elementor-widget-heading.h3 h2.elementor-heading-title, .entry-content h2.h3, h2.h3,.elementor-widget-heading.h3 h4.elementor-heading-title, .entry-content h4.h3, h4.h3,.elementor-widget-heading.h3 h5.elementor-heading-title, .entry-content h5.h3, h5.h3,.elementor-widget-heading.h3 h6.elementor-heading-title, .entry-content h6.h3, h6.h3,.elementor-widget-heading.h3 h3.elementor-heading-title, .entry-content h3, h3 {
	/* font-size: clamp(2rem, 1.869rem + 0.200vw, 2.2rem); */
	font-size: clamp(1.8rem, 1.669rem + 0.200vw, 2rem);
	letter-spacing: clamp(0.4rem, 0.138rem + 0.300vw, 0.8rem);
	font-weight: var(--fw-500);
}
/* h4 */
.h4,.elementor-widget-heading.h4 h1.elementor-heading-title, .entry-content h1.h4, h1.h4,.elementor-widget-heading.h4 h2.elementor-heading-title, .entry-content h2.h4, h2.h4,.elementor-widget-heading.h4 h3.elementor-heading-title, .entry-content h3.h4, h3.h4,.elementor-widget-heading.h4 h5.elementor-heading-title, .entry-content h5.h4, h5.h4,.elementor-widget-heading.h4 h6.elementor-heading-title, .entry-content h6.h4, h6.h4,.elementor-widget-heading h4.elementor-heading-title, .entry-content h4, h4 {
	/* font-size: clamp(1.8rem, 1.669rem + 0.200vw, 2rem); */
	font-size: clamp(1.7rem, 1.569rem + 0.200vw, 1.9rem);
	letter-spacing: 0.4rem;
	font-weight: var(--fw-500);
}
/* h5 */
.h5,.elementor-widget-heading.h5 h1.elementor-heading-title, .entry-content h1.h5, h1.h5,.elementor-widget-heading.h5 h2.elementor-heading-title, .entry-content h2.h5, h2.h5,.elementor-widget-heading.h5 h3.elementor-heading-title, .entry-content h3.h5, h3.h5,.elementor-widget-heading.h5 h4.elementor-heading-title, .entry-content h4.h5, h4.h5,.elementor-widget-heading.h5 h6.elementor-heading-title, .entry-content h6.h5, h6.h5,.elementor-widget-heading h5.elementor-heading-title, .entry-content h5, h5 {
	/* font-size: clamp(1.7rem, 1.569rem + 0.200vw, 1.9rem); */
	font-size: clamp(1.5rem, 1.369rem + 0.200vw, 1.7rem);
	letter-spacing: 0.4rem;
	font-weight: var(--fw-500);
}
/* h6 */
.h6,.elementor-widget-heading.h6 h1.elementor-heading-title, .entry-content h1.h6, h1.h6,.elementor-widget-heading.h6 h2.elementor-heading-title, .entry-content h2.h6, h2.h6,.elementor-widget-heading.h6 h3.elementor-heading-title, .entry-content h3.h6, h3.h6,.elementor-widget-heading.h6 h4.elementor-heading-title, .entry-content h4.h6, h4.h6,.elementor-widget-heading.h6 h5.elementor-heading-title, .entry-content h5.h6, h5.h6,.elementor-widget-heading h6.elementor-heading-title, .entry-content h6, h6 {
	/* font-size: clamp(1.6rem, 1.469rem + 0.200vw, 1.8rem); */
	font-size: clamp(1.4rem, 1.138rem + 0.300vw, 1.8rem);
	letter-spacing: 0.4rem;
	font-weight: var(--fw-500);
}
.entry-content p, p {
	hyphens: manual;
}
/* @media (max-width:320px) {
	.entry-content p, p {
		hyphens: auto;
	}
} */

.coming-soon-content-wrapper a:not(.button),
footer#main-footer a:not(.button),
.wysiwyg a:not(.button) {
	color: var(--c-text);
	text-decoration: underline;
}
.coming-soon-content-wrapper a:not(.button):hover,
footer#main-footer a:not(.button):hover,
.wysiwyg a:not(.button):hover {
	color: var(--c-text);
	text-decoration: underline;
	opacity: 0.6;
}


/* Buttons
--------------------------------------------------------- */
.button, button {
	text-transform: uppercase;
	font-size: var(--fs-s);
	font-weight: var(--fw-500);
	letter-spacing: var(--ls-l);
}
.button.primary.filled {
	--btn-text: var(--c-text);
}
.button.primary.filled:hover {
	--btn-bg-hover: var(--c-primary-alt);
}
.button.primary.outline {
	--btn-text: var(--c-text);
}
.button.primary.outline:hover {
	--btn-text: var(--c-text);
	--btn-bg-hover: var(--c-primary-alt);
}


/* Header
--------------------------------------------------------- */
header#main-header {
	/* this is the old value */
	background-color: color-mix(in srgb, #a47b62 7%, white);
	/* this is the new value */
	/* background-color: color-mix(in srgb, rgb(124,123,98) 15%, white); */
	box-shadow: none !important;
}
/* mainmenu */
#main-menu li button:not(.button), #main-menu li a:not(.button) {
	color: var(--c-text);
	text-transform: uppercase;
	letter-spacing: var(--ls-l);
	position: relative;
	font-size: var(--fs-s);
	font-weight: var(--fw-500);
}
#main-menu li button:not(.button)::after, #main-menu li a:not(.button)::after {
	content:"";
	width:0;
	height: 1px;
	background-color: var(--c-text);
	display: block;
	position: absolute;
	bottom: 6px;
	left: 0;
	right: 0;
	margin: auto;
	transition: var(--transition);
}
/* active state - main menu links */
#main-menu li.current-page-ancestor > button:not(.button)::after,
#main-menu li.current-menu-ancestor > button:not(.button)::after,
#main-menu li.current-menu-item > button:not(.button)::after,
#main-menu li button:not(.button):hover::after,
#main-menu li.current-page-ancestor > a:not(.button)::after,
#main-menu li.current-menu-ancestor > a:not(.button)::after,
#main-menu li.current-menu-item > a:not(.button)::after,
#main-menu li a:not(.button):hover::after {
	width: calc(100% - 3rem);
}

#mobile-main-menu li button:not(.button), #mobile-main-menu li a:not(.button),
.mm-contacts-inner a {
	color: var(--c-text);
}
#mobile-main-menu li button:not(.button):hover, #mobile-main-menu li a:not(.button):hover,
.mm-contacts-inner a:hover {
	color: var(--c-text);
	text-decoration: underline;
}

@media (min-width: 1081px) {
	header#main-header .menu-hauptmenue-container {
		display: flex;
		align-items: center;
	}
}
@media (max-width: 390px) {
	.logo svg, .logo img,
	.mobile-menu-open .logo img, .mobile-menu-open .logo svg, .sticky-nav .logo img, .sticky-nav .logo svg {
		height: 25px !important;
	}
}


/* Buttons
--------------------------------------------------------- */
.wp-block-button__link, .elementor-widget-button .elementor-button, input#submit, input[type="button"], input[type="submit"], input[type="reset"], .button, button {
	padding: 2.2rem 4.4rem;
}
button.burger {
	padding: 0;
	width: 30px;
}


/* Footer
--------------------------------------------------------- */
.footer-middle {
	background-color: color-mix(in srgb, #a47b62 15%, white);
	border-bottom: none;
	text-transform: uppercase;
	font-size: var(--fs-xs);
	letter-spacing: var(--ls-l);
}
#footer-menu li button:not(.button), #footer-menu li a:not(.button) {
	text-transform: uppercase;
	font-size: var(--fs-xs);
	letter-spacing: var(--ls-l);
	padding: 0;
	margin: 0;
}
.footer-logo svg {
	width:100%;
	height: auto;
	max-width: clamp(8rem, 4.724rem + 4.300vw, 13rem);
}
.scrolltop-btn {
	padding: 0;
	background-color: var(--c-primary-21);
	color: var(--c-text);
}


/* Leistungen
--------------------------------------------------------- */
/* single */
.single .nav-links {
	display: flex;
	justify-content: space-evenly;
}


/* shortcode: opening-hours (Öffnungszeiten)
--------------------------------------------------------- */
.nts_opening-hours-days {
	display: inline-block;
	width:100%;
}

.contacts-block-combined {
	margin-bottom: var(--space-s);
}


/* Anpassung - Widget: Logos
--------------------------------------------------------- */
.logo-inner img {
	mix-blend-mode: multiply;
}


/* -----------------------------------------------
	5.2 Real Cookie Banner
----------------------------------------------- */
.rcb-tb-right,
.rcb-header-container,
.rcb-body-container,
.rcb-footer-container {
	background: var(--c-bg, #FFFFFF) !important;
}
.rcb-content {
	border-radius: var(--border-radius) !important;
	color: var(--c-text) !important;
}
.rcb-content a:hover {
	color:var(--c-text) !important;
	opacity: 0.6;
}
.rcb-teaching,
.rcb-group-inner span,
.rcb-headline {
	color: var(--c-text) !important;
}
.rcb-group-description a {
	color: var(--c-text) !important;
}
.rcb-group-description a:hover {
	color: var(--c-text) !important;
	opacity: 0.6;
}
.rcb-content-blocker a[role="button"],
.rcb-tb-right a[role="button"] {
	background-color: var(--c-text) !important;
	border-color: var(--c-text);
}
.rcb-content-blocker a[role="button"] > span,
.rcb-tb-right a[role="button"] > span {
	color: var(--c-white, #FFFFFF) !important;
}
.rcb-content-blocker a[role="button"]:hover,
.rcb-tb-right a[role="button"]:hover {
	background-color: color-mix(in srgb, var(--c-text) 90%, white) !important;
	border-color: color-mix(in srgb, var(--c-text) 90%, white) !important;
}
.rcb-tb-right a[role="button"]:focus-visible {
	outline-color: var(--c-text);
}
.rcb-cookie label > input:checked + div,
.rcb-group .rcb-group-inner label > input:checked + div {
	background-color: var(--c-text) !important;
	border-color: var(--c-text) !important;
}