/* General
--------------------------------------------------------- */
body {
	font-size: var(--fs-m);
	font-weight: 300;
}
h1 + .headline-smile,.h1 + .headline-smile,
h2 + .headline-smile,.h2 + .headline-smile,
h3 + .headline-smile,.h3 + .headline-smile {
	margin-top: -2rem;
}
.headline-smile svg {
	width: 100%;
	max-width: 151.249px;
	height: auto;
}
.bg-dark {
	color:var(--c-white);
	background-color:var(--c-bg-invert);
}


/* 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 {
	font-weight: 700;
}
/* 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(4.2rem, 3.807rem + 0.500vw, 4.8rem);
	text-transform: uppercase;
	font-weight: 800;
}
/* 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(3.1rem, 2.772rem + 0.400vw, 3.6rem);
	text-transform: uppercase;
	font-weight: 800;
}
/* 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 {
	
}
/* 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 {
	
}
/* 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 {
	
}
/* 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 {
	
}

/* Huge Headline */
.big-title {
	font-size: clamp(8.4rem, 7.614rem + 1.000vw, 9.6rem) !important;
	text-transform: uppercase;
	font-weight: 800 !important;
}
/* Body L */
.font--body-l {
	font-weight: 400;
	font-size: var(--fs-l);
}
.font--body-m {
	font-weight: 300;
	font-size: var(--fs-m);
}
.font--body-s {
	font-weight: 300;
	font-size: var(--fs-s);
}

.schaltflaeche {
	font-weight: 700;
	font-size: var(--fs-schaltflaechen);
}

@media (min-width:1080px) {
	h1, .h1, h2, .h2 {
		margin-bottom: 5rem;
	}
	h1 + .headline-smile,.h1 + .headline-smile,
	h2 + .headline-smile,.h2 + .headline-smile {
		margin-top: -4rem;
	}
	.headline-smile svg {
		width: 100%;
		max-width: 251.249px;
		height: auto;
	}
}


/* Buttons
--------------------------------------------------------- */
.wp-block-button__link, .elementor-button, .elementor-widget-button .elementor-button, input#submit, input[type="button"], input[type="submit"], input[type="reset"], .button, button {
	font-size: 2.0rem;
	border-radius: var(--border-radius-buttons);
	font-weight: 700;
}


/* Header
--------------------------------------------------------- */
/* main menu */
#main-menu li button:not(.button), #main-menu li a:not(.button) {
	font-weight: 400;
	font-size: 2rem;
}
@media (min-width:1081px) {
	.logo.logo-footer img,
	.logo.logo-footer svg {
		height:73px;
	}
}


/* Footer
--------------------------------------------------------- */
.footer-middle {
	border: none;
	padding-top: 0;
}
#footer-menu {
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#footer-menu li {
	width: 50%;
	margin: 0 0 var(--space-xs) 0 !important;
}
#footer-menu li a {
	padding: 0;
	font-weight: 700;
}
#copyright {
	text-align:left;
}
#copyright a {
	font-weight: 700;
}
.menu#rechtliches {
	text-align:right;
}
.menu#rechtliches li {
	margin-left: var(--space-s);
}
.menu#rechtliches li:first-child {
	marging-left: 0;
}
.logo.logo-footer img,
.logo.logo-footer svg {
	height:73px !important;
	width:auto;
	max-width:100%;
}
.footer-social-media {
	text-align:right;
}
#footer-menu li button:not(.button), #footer-menu li a:not(.button) {
	color: var(--c-text);
}
#footer-menu li button:not(.button):hover, #footer-menu li a:not(.button):hover {
	color: var(--c-primary);
}
#copyright, #rechtliches li a {
	color: var(--c-text);
}
#rechtliches li a:hover {
	color: var(--c-primary);
}
@media (max-width:767px) {
	.logo.logo-footer img,
	.logo.logo-footer svg {
		height:40px !important;
	}
	#footer-menu li {
		width: 100%;
	}
	.menu#rechtliches,
	.footer-social-media {
		text-align:left;
	}
	#rechtliches li {
		margin-left: 0;
		margin-right: var(--space-s);
	}
	#rechtliches li:last-child {
		margin-right: 0;
	}
}


/* Blog
--------------------------------------------------------- */
/* Single */

/* Cards */
.post-categories .tag {
	border-radius: var(--border-radius-buttons);
	background-color: var(--c-light-gray);
	color: var(--c-primary);
}


/* Forms
--------------------------------------------------------- */
.wpcf7-form label {
	width: 100%;
}