/* /////// Height /////// */
@media screen and (max-height: 500px) {
	
}
@media screen and (max-height: 580px) {
	
}

/* /////// Width /////// */
@media screen and (max-width: 1850px) {

}
@media screen and (max-width: 1650px) {
	
}
@media screen and (max-width: 1600px) {
	
}
@media screen and (max-width: 1500px) {
	
}
@media screen and (max-width: 1360px) {
	
}
@media screen and (max-width: 1280px) {
	
}
@media screen and (max-width: 1270px) {
	
}
@media screen and (max-width:1241px){
	
}
@media screen and (max-width:1200px){

}
@media screen and (max-width:1140px){
	
}
@media screen and (max-width:1100px){
	.flex_kontakt {
		font-size: 1.6rem;
	}
	.impressum{
		font-size: 1rem;
	}
	footer .w1280{
		gap: 20px;
	}
}
@media screen and (max-width:1024px){
	
}
@media screen and (max-width: 1000px) {
	.verlinkungs_box {
	  width: calc(50% - 20px);
	}
}
@media screen and (max-width: 960px) {
	
}
@media screen and (max-width: 950px) {
	
}
@media screen and (max-width: 900px) {
	.button_w, .button_o {
	  margin-left: 10px;
	}
	.vs-image-wrap.tilt-b {
	  clip-path: none;
	}
	.vs-image-wrap {
	  aspect-ratio: 3/2;
	  max-height: 450px;
	}
	h1, h2 {
		font-size: 1.7rem;
	}
	h3, h4, h5, h6 {
		font-size: 1.2rem;
	}
	.is-content {
	  padding: 0 80px 0 0;
	  clip-path: none;
	}
	.hero-case9 .w1280{
		padding:0;
	}
	.hero9-inner {
	  position: relative;
	  z-index: 1;
	  width: 100%;
	  min-height: 20px;
	  display: block;
	  align-items: left;
	  float: none;
	}
	.hero9-inner.tilt-b{
	  clip-path: none;
	}
	.hero9-box {
	  padding: 40px 30px;
	}
	.fullwidth.hero-case9 > img.cover{
	  position: relative;
	  inset: 0;
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	  object-position: center;
	  display: block;
	}
}
@media screen and (max-width: 880px) {
	footer{
		padding: 50px 0;
	}
	footer .w1280 {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		gap: 50px;
	}
	.kontakt_box{
		align-items: center;
		padding: 0;
		text-align: center;
	}
	.map_box {
		clip-path: none;
	}
	.impressum{
		justify-content: center;
		flex-direction: row;
		align-items: center;
		gap: 20px;
		padding: 0;
	}
}
@media screen and (max-width: 850px) {
	.w1280{
		padding: 0 30px;
	}
}
@media screen and (max-width: 800px) {
	/* Layout wieder einspaltig */
	.menu .w1280{
		flex-direction: column;
		align-items: flex-start;
	}

	/* Hauptmenü nimmt volle Breite, keine rechte Border */
	.menu .w1280 .menu-hauptmenu-container{
		width: 100%;
		border-right: none;
		padding-right: 0;
	}

	/* Submenü soll nicht mehr rechts "schweben", sondern direkt unter "Leistungen" */
	.nav-menu .leistung{
		position: relative;
	}

	.nav-menu .leistung .sub-menu{
		position: relative;
		left: auto;
		top: auto;
		transform: none;
		width: 100%;
		padding: 0 0 0 20px;
		margin: 10px 0 0 0;
		box-sizing: border-box;
		list-style: none;

		/* Slide-Effekt */
		display: block;           /* immer Block, das Ein-/Ausblenden machen wir mit max-height */
		overflow: hidden;
		max-height: 0;
		opacity: 0;
		transition: max-height 0.3s ease, opacity 0.3s ease;
	}

	/* wenn "open" → aufsliden */
	.nav-menu .leistung.open .sub-menu{
		max-height: 500px;        /* genug Platz für alle Links */
		opacity: 1;
	}

	/* etwas engere Abstände bei den Submenü-Links auf Mobile */
	.nav-menu .leistung .sub-menu li{
		margin: 8px 0;
	}

	.nav-menu .leistung .sub-menu li a{
		font-size: 1rem;
	}
	
	.menu_link_box {
	  display: flex;
	  justify-content: flex-end;   /* 👉 schiebt den Inhalt nach rechts */
	  flex-direction: row;         /* normal lassen, nicht umdrehen */
		margin-left: auto; 
	}
	.menu_leiste {
	  width: 100%;
	}
}
@media screen and (max-width: 780px) {
	
}
@media screen and (max-width: 750px) {
	
}
@media screen and (max-width: 715px) {
	
}
@media screen and (max-width: 700px) {
	.spruch p {
	  max-width: 100%;
	}
}
@media screen and (max-width: 680px) {
	
}
@media screen and (max-width: 650px) {	
	.map_box iframe{
		height: 400px;
	}
	.verlinkungs_box {
	  width: 100%;
	  padding-top: 30%;
	}
	.flex_box_seiten {
	  gap: 20px;
	}
}
@media screen and (max-width: 625px) {
	
}
@media screen and (max-width: 600px) {	
	 h1, h2 {
		font-size: 1.5rem;
	}
	.insta, .faceb{
		display:none!important;
	}
	.social_box{
		margin-right: 20px;
	}
	.margin_oben{
		margin-top: 60px;
	}
	.margin_unten{
		margin-bottom: 60px;
	}
	.g-image-wrap.tilt-b {
	  clip-path: none;
	}
}
@media screen and (max-width: 580px) {
	.header_logo{
		width: 180px;
	}
	.header_rechts .social_box{
		gap: 15px;
	}
	.header_rechts .social_box a{
		width: 25px;
	}
}
@media screen and (max-width: 550px) {
	.map_box iframe{
		height: 350px;
	}
	.is-icon{
		display:none;
	}
	.is-content {
	  padding: 0;
	  clip-path: none;
	}
	.is-slide-inner{
		grid-template-columns: 1fr; /* untereinander */
		gap:0;
	}
	.is-content::after {
	  background: transparent;
	  clip-path: none;
	}
}
@media screen and (max-width: 500px){
	
}	
@media screen and (max-width: 450px){	
	
}
@media screen and (max-width: 430px){	
	h1, h2 {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 400px){	
	.social_box{
		margin-right: 0px;
	}
	.header_logo {
    	width: 150px;
  	}
}


/* /////// Print /////// */
@media print {
	body {
		background: none !important;
		color: #000;
		font-size: 10pt;
	}
}