/* General
--------------------------------------------------------- */
.site-content {
	padding: 10rem clamp(0rem, -1.310rem + 1.700vw, 2rem) 0;
	/* padding: clamp(2rem, 0.690rem + 1.700vw, 4rem) clamp(0rem, -1.310rem + 1.700vw, 2rem) 0; */
}
.site-content > article {
	padding: clamp(2rem, 0.690rem + 1.700vw, 4rem) 0;
}
@media (min-width: 1081px) {
	.page-inner-wrapper {
		display: grid;
		grid-template-columns: 315px auto;
		width: 100%;
		max-width: 2560px;
		margin:auto;
		min-height: 100svh;
	}
	.site-content {
		padding: 8rem clamp(0rem, -1.310rem + 1.700vw, 2rem) 0;
	}
}

/* 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 {
	
}
/* 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.4rem, 1.876rem + 0.700vw, 3.4rem);
}
/* 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.2rem, 1.676rem + 0.700vw, 3rem);
}
/* 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(2.1rem, 1.641rem + 0.600vw, 2.8rem);*/
	
	font-size: clamp(1.9rem, 1.483rem + 0.543vw, 2.531rem);
}
/* 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 {
	
}

/* Header
--------------------------------------------------------- */
header#main-header {
	box-shadow: none;
	background-color: var(--c-lightest-gray);
}
.logo {
	max-width: 100%;	
}
@media (min-width: 1081px) {
	header#main-header {
		position: relative !important;
		transform: none !important;
		top: 0 !important;
		left:0 !important;
		padding: 0 clamp(2rem, 0.690rem + 1.700vw, 4rem);
	}
	.header-middle {
		position: sticky;
		top: 0;
		left:0;
		padding-top: clamp(2rem, 0.690rem + 1.700vw, 4rem);
		padding-bottom: clamp(2rem, 0.690rem + 1.700vw, 4rem);
	}
	.header-middle > .container {
		padding-left:0;
		padding-right:0;
	}
	.header-middle > .container > .flex-row {
		display: block !important;
	}
	.header-middle > .container > .flex-row .flex-col {
		display: block !important;
	}
	#hm-col-2 {
		/* padding-top: clamp(2rem, 0.690rem + 1.700vw, 4rem); */
		padding-top: var(--space-m);
	}
}
#main-menu {
	float: none;
	width: 100%;
}
#main-menu li {
	float: none;
	width: 100%;
}
#main-menu li a,
#main-menu li button {
	padding: 5px 0;
	color: var(--c-text) !important;
	font-size: clamp(1.8rem, 1.538rem + 0.300vw, 2.2rem);
	text-transform: uppercase;
	font-weight: 300;
	position: relative;
	letter-spacing:var(--ls-l);
}
#main-menu li a::after,
#main-menu li button::after {
	content:"";
	position: absolute;
	bottom: 2px;
	left:0;
	width: 0;
	height: 1px;
	transition: all .2s ease-out;
	background-color: var(--c-text);
	opacity: 0;
}
#main-menu li a:hover::after,
#main-menu li button:hover::after {
	width: 100%;
	opacity: 1;
}
#main-menu li.current-page-ancestor > button, #main-menu li.current-menu-ancestor > button, #main-menu li.current-menu-item > button, #main-menu li.current-page-ancestor > a, #main-menu li.current-menu-ancestor > a, #main-menu li.current-menu-item > a {
	font-weight: 700;
}
.desk-header-contacts a {
	text-decoration: underline;
	color: var(--c-text);
}
.desk-header-contacts a:hover {
	text-decoration: none;
	color: var(--c-text);
}
@media (max-width: 1080px) {
	.logo img,
	.logo svg {
		height: 30px !important;
	}
	.desk-header-contacts {
		display: none;
	}
}


@media (max-width: 768px) {
	body.home #homewerke .grid {
		grid-template-columns: repeat(2, 2fr);
	}
}




/* Footer
--------------------------------------------------------- */
.footer-bottom {
	background: none;
	color: var(--c-text);
	padding-bottom: 2rem;
	padding-top: 8rem;
}
.footer-bottom a,
.footer-bottom button {
	color: var(--c-text) !important;
	margin-bottom: 0;
}
.footer-bottom a:hover,
.footer-bottom button:hover {
	color: var(--c-text) !important;
	text-decoration: underline !important;
}
#copyright {
	text-align: left;
	font-size: var(--fs-m);
}
#footer-menu {
	text-align: left;
	display: flex;
	flex-wrap: wrap;
	grid-gap: 0 20px;
}
#footer-menu li {
	width: auto;
	margin: 5px 0 5px 0;
}
#footer-menu li:first-child {
	margin-left: 0;
}
#footer-menu li a,
#footer-menu li button {
	font-size: var(--fs-m);
}


/* Tablepress
--------------------------------------------------------- */
.tablepress tr td:first-child {
	width: 150px;
}

.tablepress tr td {
	border-bottom: 1px solid #e5e5e5;
}

tr.row-1 td {
	border-top: 0px;
}



/* SAFARI Galerie aspect-ratio Anpassungen
--------------------------------------------------------- */
body.safari .widget-gallery .gallery-image.contain img {
	height: auto !important;
	aspect-ratio: 1 / 1;
}