@color_1: #2F78C3;

/* --- > 1600px --------------------------------------------- */
@media only screen and (min-width: 1600px) and (min-height: 340px) {
	#introsection .textbox {
		min-height: 200px;
	}
	#quicklinks { margin-right: 100px; }
	

}
/* --- > 2000px --------------------------------------------- */
@media only screen and (min-width: 2000px) and (min-height: 340px) {
	#keyvisual .container {
		height: 40vw;
	}
}

/* --- 1280px --------------------------------------------- */
@media only screen and (max-width: 1279px) and (min-height: 340px) {

}

/* -- iPad --------------------------------------------- */
@media only screen and (max-width: 1025px) and (min-height: 340px) {
	#keyvisual .keyvisual_text { font-size: 50px; }
	h1, .h1, h2, .h2 { font-size: 45px; }
	.mediumtext { font-size: 30px; }
}

/* --- 980px --------------------------------------------- */
@media only screen and (max-width: 979px) {
	#quicklinks { margin-right: 70px; }
	#nav_quicklinks li { margin-right: 10px; }
	
	.section.team .colleague_gallery .item { width: ~"calc(33.33% - 40px)"; }
	
	#filter .box { flex-wrap: wrap; }
	#filter .item { width: 20%; margin-bottom: 1px; }
	
	#objects .item { width: ~"calc(50% - 20px)"; }
}


/* --- widescreen ? --------------------------------------------- */
@media only screen and (max-height: 1000px) and (orientation: landscape) {
	#nav_mobile li.lvl1 { padding-bottom: 15px; }
	#nav_mobile li.lvl1 > a { font-size: 100%; }
	#nav_mobile li.lvl2 > a { font-size: 14px; line-height: 28px; }
}

/* --- widescreen laptop? --------------------------------------------- */
@media only screen and (max-height: 760px) and (orientation: landscape) {
	#nav_mobile { 
		margin-top: 10vh;
		flex-wrap: wrap;
		max-height: 80vh;
		gap: 50px;
		justify-content: flex-start;
	}
}

/* --- 880px --------------------------------------------- */
@media only screen and (max-width: 880px) {
	#nav_quicklinks li:nth-Child(1),
	#nav_quicklinks li:nth-Child(2) { display: none; }
	
	#keyvisual_slider,
	#keyvisual_slider .item { height: 55vh; }
	
	#glossar_wrapper,
	#news_wrapper,
	#career_box_wrapper,
	#contact_box_wrapper {
		.flexcontainer {
			flex-wrap: wrap;
			
			.container {
				padding-left: 0px;
			}
		}
		.flexcontainer > .headline {
			width: 100%;
			text-align: left;
			
			h1, .h1 {
				border-right: 0px;
				border-left: 5px solid @color_1;
				padding-left: 25px;
				margin-bottom: 20px; 
			}
		}
	}
	#news_wrapper .news_container {
		max-height: 99999px;
	}
	#glossar_index {
		margin: 30px 0px;
	}
}

/* --- 768px --------------------------------------------- */
@media only screen and (max-width: 767px) {
	#mainmenu { display: none; }
	#mobilemenu { display: block; }
	#mobilemenu_container { display: flex; }
	
	h1, .h1, h2, .h2 { font-size: 40px !important; }
	.mediumtext { font-size: 25px; }
	
	#logo img,
	#logo_start img {
		max-height: 100px;
	}
	#logo_start { min-height: 100px;}
	
	#keyvisual .keyvisual_text { font-size: 40px; }
	
	#footer .container { flex-wrap: wrap; }
	#footer address { width: 100%; margin-bottom: 30px; }
	#pre_footer .textbox { font-size: 30px; }
	
	#introsection .container {
		left: 10px !important;
		width: ~"calc(100% - 20px)" !important;
		max-width: 100% !important;
		padding: 15px 25px 15px 40px;
	}
	#introsection .textbox { max-width: 100%; }
	
	.section.quote .container { flex-wrap: wrap; }
	.section.quote .imagebox,.section.quote .textbox { width: 100%; text-align: center; margin: 0px; }
	.section.quote .textbox .quotation { font-size: 25px; }
	.section.quote .textbox .quotation img { width: 80px; }
	
	.section.referenz_list .hoverbox .flexcontainer { flex-wrap: wrap; }
	.section.referenz_list .hoverbox .icon { margin-bottom: 5px; width: 100%; }
	.section.referenz_list .hoverbox .icon.type2 { display: none; }
	
	.section.text_img .layout_topleft,
	.section.text_img .layout_topleft_2,
	.section.text_img .layout_topleft_fullwidth,
	.section.text_img .layout_bottomleft {
		padding-left: 3%; 
	}
	.section.text_img .layout_topleft_fullwidth {
		margin-top: 0vw;
	}
	.section.text_img .layout_topleft .textbox,
	.section.text_img .layout_topleft_2 .textbox,
	.section.text_img .layout_topleft_fullwidth .textbox,
	.section.text_img .layout_bottomleft .text,
	.section.text_img .layout_bottomright .text {
		max-width: 95%;
	}
	.section.text_img .layout_bottomright .textbox {
		padding-right: 0px;
	}
	.section.text_img .layout_bottomleft .image,
	.section.text_img .layout_bottomright .image {
		position: relative;
		max-height: 25vh;
	}
	.section.text_img .text > p {
		padding-left: 0px !important;
	}
	.section.text_img .layout_fullwidth .headlinebox {
		left: 20%;
		max-width: 80%;
		box-sizing: border-box;
		padding: 20px;
	}
	.section.text_img .layout_topleft_2 .image {left: 0px !important; }
	.section.text_img .layout_topleft_2 .headlinebox { margin-top: 50% !important; }
	
	.section.form .container { padding-left: 25px; }
	
	#quicksearch_container #searchbox { flex-wrap: wrap; }
	#quicksearch_container #searchbox .item { width: ~"calc(50% - 1px)"; flex-grow: 0; }
	#quicksearch_container .textbox { margin-left: 0px; }
	
	#keyvisual_slider,
	#keyvisual_slider .item { height: 52vw; }
	
	.section.contact_box .container { padding-left: 30px !important; }
	
	#career_box_wrapper .flexcontainer > .headline span { border: 0px; }
}



/* --- 580px --------------------------------------------- */
@media only screen and (max-width: 584px) {	
	body { font-size: 16px; }
	h1, .h1, h2, .h2 { font-size: 30px !important; }
	.mediumtext { font-size: 22px; }
	
	.frontpage #nav_quicklinks li { opacity: 0; transition: 0.25s all; }
	.scrolled #nav_quicklinks li { opacity: 1; }
	
	#nav_mobile li.lvl1 > a { font-size: 100%; }
	#nav_mobile li.lvl2 > a { font-size: 16px; }
	
	#keyvisual .keyvisual_text { font-size: 35px; }	
	
	.section.quote .textbox .quotation { font-size: 22px; }
	.section.quote .textbox .quotation img { width: 60px; }
	
	.section.referenz_list .listcontainer { margin: 0px; }
	.section.referenz_list .item { width: ~"calc(100% - 10px)"; }
	
	.section.team .colleague_gallery .item { margin: 0px 5px 20px 5px; width: ~"calc(50% - 10px)"; }
	.section.team .pos, .section.text .pos { font-size: 12px;}
	
	/* contact page table */
	.doc_74 .textbox > .text > table td {
		display: block;
		width: 100% !important;
	}
	.doc_74 #routingtable td {
		display: table-cell;
		width: auto !Important;
	}
	.doc_74 #routingtable td:first-Child {
		width: 30px !important;
	}
	
	.section.tiles .container { flex-wrap: wrap; }
	.section.tiles .container .item { width: ~"calc(100% - 0px)"; flex-grow: 0; margin-bottom: 60px; }
	.section.tiles .container .image { padding-bottom: 70%; }
	.section.tiles .container .equalheight {
		min-height: 0px !important;
		margin-bottom: 15px;
	}
	.section.tiles .container .image .hover { display: none; }
	
	#objects .item { width: ~"calc(100% - 20px)"; }
	
	#filter_toggle_container { display: block; }
	#filter {
		max-height: 0px;
		transition: 0.25s all;
		overflow: hidden;
	}
	.filteropen #filter {
		max-height: 999px;
	}
	
	#filter .row2-7 { width: 100%; }
	#filter .row5-7 { width: 100%; }
	#filter .item { width: 50%; border-right: 0px; }
	
	#filter .options_filter .item { width: 100%; margin-bottom: 10px; }
	
	#immo .section {
		padding-right: 15px;
	}
	#immo .energy_attributes .label { min-width: 100%; }
	#immo .energy_attributes .value { display: block; padding: 5px 0px 10px 0px;}
	
	#immo #immo_attr { flex-wrap: wrap; padding: 15px; width: 100%; box-sizing: border-box; justify-content:space-between; }
	#immo #immo_attr > * { margin: 0px; padding-top: 15px; padding-bottom: 15px; }
	#immo_breadcrump .container { padding-left: 0px; padding-right: 0px; }
	#immo_breadcrump .goback { display: none; }
	
	#immo #map {
		height: 300px;
	}
	
	#slider_yourwaywithus .title {
		font-size: 25px;
	}
	#slider_yourwaywithus .title .number {
		left: 0px;
		bottom: 65px;
		font-size: 50px;
	}
	#slider_yourwaywithus .textbox {
		padding-right: 70px;
	}
	#slider_yourwaywithus .slider_next { background-color: transparent;}
	#slider_yourwaywithus .content::after {
		opacity: 0.3;
	}
	#slider_yourwaywithus .item::after,
	#slider_yourwaywithus .item::before {
		display: none;
	}
	
	#news_wrapper .news_container .box  {
		flex-wrap: wrap;
		
		.image { width: 100%; }
		.textinfo { width: 100%; padding: 20px 0px 0px 0px;}
	}
	
	.section.gallery .container .item {
		width: ~"calc(50% - 10px)";
		padding-bottom: 35%;
	}
	
	.section.logos_networking .container .item {
		width: ~"calc(100% - 40px)";
	}
	
	.section.logo_tiles .container .item {
		width: ~"calc(33.33% - 20px)";
	}
	
	.landingpageExternal #introsection .pagetitle {
		min-width: 0px;
		padding-right: 35px;
	}
}

/* --- 480px --------------------------------------------- */
@media only screen and (max-width: 479px) and (orientation: portrait) {
	#quicksearch_container #searchbox .item { width: ~"calc(100% - 1px)"; flex-grow: 0; }
	
	#immo .section { padding: 60px 10px 50px 10px; }
	#immo .section .section_icon { top: 20px; }
	
	.section.text_img .layout_mid { padding-left: 0px; }
	.section.text_img .layout_mid .image { margin-top: 0px;}
	
	.section.text_img .layout_bottomleft .image { left: -5px; }
}


/* --- 380px --------------------------------------------- */
@media only screen and (max-width: 380px) and (orientation: portrait) {
	.animated .headlinebox h2 {
		hyphens: auto;
	}
	
	.section.team .name, .section.text .name {
		min-height: 38px;
	}
}

/* mobile LANDSCAPE ---------------------------------------------*/
@media only screen and (max-height: 320px) and (orientation: landscape) {

}
