/* Mobile */
@media (min-width: 1920px) {
	body {
		max-width:100%;
	}
	#wrapper {
		margin-inline:auto;
		max-width:100%;
	}
}
@media (max-width: 1600px) {
	.flexwrap.box-container {
	display: flex;
  justify-content: flex-start;
  gap: 1em;
  align-items: stretch;
  flex-flow: row nowrap;
  scroll-snap-type: x mandatory;
  width: 100%;
  overflow-x: auto;
  scrollbar-width: auto;
  .start_box {
  	width: calc(50vw - 7.5em);
  	scroll-snap-align: start;
	flex-shrink: 0;
	margin:0;
	  }
	}
}
@media (max-width: 1280px) {

}
@media (max-width: 1024px) {
	#article-1 h2 {
		hyphens:auto;
	}
}
@media (max-width: 960px) {
	.mod_navigation ul.level_2 {
		top:60px;
	}
	.mod_navigation ul li a, .mod_navigation ul li strong.active {
		padding: 15px;
	}
	.flexwrap.box-container {
		.start_box {
  			width: calc(100vw - 10em);
		}
    }
    .ce_text h1, h1.ce_headline, .ce_table h1 {
    	line-height:100%;
    }
    .gridwrap {
    	grid-template-columns: auto;
    }
    #kontakt .kontakt-box {
    	grid-template-columns: auto;
    }
    .mod_faqpage section {
    	margin-bottom:0.5em;
    }
}
@media (max-width: 768px) {
  body {
  	font-size:1.1em;
  }
	.mod_navigation ul li a.submenu::after, .mod_navigation ul li strong.submenu.active::after {
		display:none;
	}
  .flexwrap.hero {
  	flex-flow:column-reverse;
  	.about-img {
  		width:55vw;
  	}
  }

	  .flexwrap.start-teaser-box {
  	flex-flow:column-reverse;
  	.start-teaser {
  		width:auto;
  	}
  }
.menu-toggle {
	display:block;
}
.menu-toggle:focus-within {
	pointer-events: none;
}
.menu .menu-toggle:focus + .level_1, .menu .menu-toggle + .level_1:focus-within {
  opacity: 1;
  visibility: visible;
  right: 0vw;
	}
body:has(.menu .menu-toggle:focus) {
  overflow: hidden;	
}
.menu .level_1 {
	position: fixed;
    top: 0;
    right: -100vw;
    height: 100vh;
    background-color: rgb(130,129,109);
    padding: 150px 2em;
    width: 65vw;
    transition-property: opacity, visibility, right;
	transition-duration: 300ms;
	box-shadow: -1em 0 1em 0 rgba(0,0,0,0.25);
	display:flex;
	flex-flow:column;
	text-align: right;
	justify-content: flex-start;
	align-content: flex-end;
	overflow-y:scroll;
	margin-bottom: 0;
  }
.mod_navigation .level_1 li a, .mod_navigation .level_1 li strong {
display:block;
background:none;
color:white;
font-size:1.5em;
}
.mod_navigation ul li a:hover, .mod_navigation ul li a:focus, .mod_navigation ul li a.trail {
display:block;
background:none;
color:white;

}
.mod_navigation ul li a, .mod_navigation ul li strong.active {
		padding: 5px 0px;
	}
.mod_navigation ul li a:hover, .mod_navigation ul li a:focus, .mod_navigation ul li strong.active, .mod_navigation ul li a.trail, .mod_navigation ul.level_2 li a:hover, .mod_navigation ul.level_2 li a:focus {
	color:#2d3436;
}
.mod_navigation ul.level_2 {
	top: auto;
	position: relative;
	background: none;
	left: auto;
	display: block;
	margin: 0 0 1em 0;
	padding: 0;
	white-space: nowrap;
	list-style-type: none;
	z-index: 1;
	opacity: 0.75;
	pointer-events: all;
	box-shadow:none;
}
.mod_navigation ul.level_2 li {
	display: block;
	text-align: right;
}
.mod_navigation ul.level_2 li a {
	display: block;
    padding: 5px 0;
    background: none;
    color: white;
    font-size: 1.5em;
    text-transform: uppercase;
}
.mod_navigation ul.level_1 li.start {
	display:block;
}
}
@media (max-width: 660px) {
	.menu .level_1 {
    	width: 75vw;
	}    
	.mod_navigation .level_1 li a, .mod_navigation ul li strong.active {
		font-size:1.1em;
		overflow: scroll;
	}
	.mod_navigation ul.level_2 li a {
    	font-size: 1.1em;
    	overflow: scroll;
	}
	.flexwrap.box-container {
	.start_box {
  		width: calc(100vw - 8em);
		}
	}
	.ce_text h1, h1.ce_headline, .ce_table h1 {
		font-size:2.5em;
	}
	.ce_text h2, h2.ce_headline, .ce_table h2 {
		font-size:1.75em;
	}
}
@media (max-width: 480px) {
	.ce_text h1, h1.ce_headline, .ce_table h1 {
		font-size:2em;
	}
	.ce_text h2, h2.ce_headline, .ce_table h2 {
		font-size:1.3em;
	}
}