body {
    margin: 0px;
    padding: 0px;
    min-height: 1000px;
    font-family: bebas-neue-pro, sans-serif;
    color: #5b6f7d;
    max-width: 100%;
    overflow-x: hidden;
}

a {
    text-decoration: none;
    color: inherit;
}
.text-center {
	text-align: center;
}

header {
	display: flex;
	align-items: flex-end;
	z-index:8;

}
header #top_logo {
	position: relative;
	order:3;
}
header #top_name {
	flex:0 0 300px;
	padding-right: 50px;
}
header #top_menu {
	position: relative;
	order:2;
	left:auto;
	top:auto;
	flex:1;
}
header.light #top_logo {
	background:#002559;
}
header.light #top_menu_systems li {
	color:#002559;
	border-bottom-color: rgba(0, 37, 89, .6);
}
header.light #top_menu_systems li.active {
	border-bottom-color: rgba(0, 37, 89, 1)
}
header.light #top_menu_main li {
	color:#002559;
}
header.light #top_menu_systems li:not(.nolink):hover {
	background:#002559;
}
header.light #top_menu_main li:hover {
	background:#002559;
	color:#fff;
}

.container {
	position: relative;
    margin: auto;
    min-width: 600px;
    max-width: 1400px;
	width:100%;
}
#content {
    position: relative;
    margin: auto;
    min-width: 600px;
    max-width: 1400px;
    min-height: 1000px;
}
@media screen and (max-width: 920px) { 
	.container,
	#content {
		min-width: 100%;	
	}
}

#top_menu {
    position: relative;
    left: 290px;
    top: 38px;
}
#top_logo {
    position: absolute;
    background-color: #FFFFFF;
    width: 80px;
    padding: 30px 10px 10px 10px;

}
#top_evi_logo {
    position: absolute;
    top: 60px;
    left:140px;
    font-size:40px;
    font-weight: 600;
    color: #FFFFFF;
}

#top_menu_systems, #top_menu_main {
    position:relative;
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    margin: 0;
    padding: 0;
}
#top_menu_main {
	text-transform: uppercase;
}

#top_menu_systems li {
    padding: 6px 15px;
    color: #FFFFFF99;
    border-bottom: 1px solid #FFFFFF66;
    transition: all 0.6s;
}

#top_menu_systems li.active {
    color: #FFFFFF;
    border-bottom: 1px solid #FFFFFF;
}

#top_menu_systems li:not(.nolink):hover {
    color: #FFFFFF;
    border-bottom: 1px solid #FFFFFF;
    transform: scale(1.2) ;
}


#top_menu_main li {
    font-size: 24px;
    padding: 6px 10px;
    color: #FFFFFF99;
    transition: all 0.6s;
}

#top_menu_main li:hover {
    color: #000000;
    background-color: #FFFFFF;
    transform: scale(1.2) ;
}

.module {
    min-height: 500px;
    margin: 50px;
}

#footer {
    width:100%;
    color: #2f3944;
    background-color: #f0f3f6;
}
#footer_content {
    position: relative;
    margin: auto;
    padding: 40px;
    min-width: 600px;
    max-width: 1400px;
    min-height: 400px;
    font-size: 18px;
    font-weight: 300;
}
#footer_logo {
    width: 100px;
}
#footer_layout {
    display: flex;
    margin-top: 50px;
}
#footer_layout > div {
    flex:1;
}
#footer_venture {
    font-size: 24px;
}
#footer a {
    transition: all 0.3s;
}
#footer a:hover {
    font-weight: 700;
    color: #0a84ff;
}


@media only screen and (max-width: 640px) {
	.container,
    #content {
        width:100%;
        min-width: 100%;
    }
    header {
	    flex-wrap: wrap;
	    position: absolute;
	    left:0;
	    top:0;
	    width:100%;
    }
    header #top_name {
	    order:2;
	    flex:0 0 200px;
	    padding-left:25px;
    }
    header #top_logo {
	    order:1;
    }
    header #top_menu {
	    order:3;
	    flex:0 0 100%;
    }
    #footer_layout {
		flex-wrap:wrap;   
    }
    #footer_layout > div {
	    flex:0 0 100%;
	    margin-top:2rem;
    }
}

#mobile_menu {
	width:26px;
	height:50px;
	padding:0 12px;
	border:1px solid #fff;
	position: fixed;
	right:10px;
	top:10px;
	display: flex;
	justify-content: center;
	flex-direction: column;
	z-index:900;
	background: #1f2038;
	display: none;
}
#mobile_menu span {
	display: block;
	height:2px;
	width:100%;
	background: #fff;
	margin:4px 0;
}

#mobile_close_menu {
	width:50px;
	height:50px;
	padding:0;
	position: fixed;
	right:10px;
	top:10px;
	display: flex;
	justify-content: center;
	flex-direction: column;
	z-index:900;
	display: none;;
}

@media only screen and (max-width: 1000px) {
    #top_menu {
        position: relative;
        left: 0px;
        top: 120px;
    }
}
@media screen and (max-width: 640px) {
	#mobile_close_menu {
		display: flex;
	}
	#mobile_menu { 
		display: flex !important;	
	}
	body {
		overflow-x: hidden !important;
	}
	#documentation {
		margin-bottom: 0 !important;
	}
	#documentation_title {
		font-size:36px !important;
	}
	#documentation_files {
		padding:0 12.5px;
		flex-wrap: wrap;
		margin-top:30px !important;
	}
	#documentation_files > div {
		flex:0 0 calc(50% - 25px) !important;
		padding:16px 12.5px;
	}
	#realisation_title {
		font-size:32px !important;
	}
	#products_grid .title {
		font-size:28px !important;
	}
	#products_grid .desc {
		
	}
	section#realizations {
		flex-wrap: wrap !important;
	}
	section#realizations #map {
		flex:1 !important;
		margin-bottom: 30px !important;
	}
	#products_grid .single {
	    grid-column: span 2 !important;
	}
	#comfort {
		padding-top: 0 !important;
		padding-bottom: 200px !important;
	}
	#products_grid > div {
		margin: 20px 0 !important;
	}
	#comfort_title {
		margin-right:0 !important;
		font-size: 36px !important;
	}
	#benefit_title, #calculation_title {
		font-size:32px !important;
		margin-bottom: 24px !important;
	}
	#comfort_background {
		width:calc(100% - 40px) !important;
	}
	#comfort_right {
		min-width: 100% !important;
	}
	#calculation {
		margin-top: 20px !important;
		margin-left: 25px;
		margin-right: 25px
	}
	#calculation_title2 {
		font-size:18px !important;
		line-height:32px !important;
		margin-bottom: 24px !important;
	}
	#comfort {
		margin-top:30px !important;
	}
	#calculation_title2 span {
		display: inline-block;
	}
	#calculation_drafts img {
		width:calc(100% - 40px) !important;
	}
	#calculation_drafts > div {
		min-width: calc(100% - 50px) !important;
		padding:20px !important;
		margin:20px 0 !important;
	}
	.benefit_module_rect .title {
		font-size:32px !important;
		margin-bottom: 24px;
	}
	.benefit_module_rect .desc {
		font-size:22px !important;
	}
	img {
		max-width: 100%;
	}
	.module {
		margin:25px !important;
	}
	#benefit_user {
		left:auto !important;
	}
	.benefit_module_image {
		width:100% !important;
		height: 300px !important;
		margin-bottom:20px !important;
	}
	.benefit_module_rect {
		width:calc(100% - 48px) !important;
		left:auto !important;
		top:auto !important;
		position: relative !important;
		padding:24px !important;
	}
	.benefit_module {
		margin-top: 30px !important;
	}
	#footer {
		padding:0 25px !important;
		width:calc(100% - 50px) !important;
	}
	#footer_layout {
		margin-top: 20px !important;
	}
	#footer_content {
		min-width: 100%;	
		padding:40px 0 !important;
	}
	#footer_layout > div {
		flex:1;
		min-width: 100%;
		margin-top:30px !important;	
	}
	#realisation_grid {
		display: flex;
		height:auto !important;
		flex-wrap: wrap;
		margin-top:0 !important;
		margin-bottom: 0 !important;
	}
	#realisation_grid > div {
		position: relative !important;
		flex:0 0 100% !important;
	}
	#realisation_1,
	#realisation_2,
	#realisation_3,
	#realisation_4 {
		margin:16px 0 !important;
		left:auto !important;
		top:auto !important;
		width:100% !important;
		transform: none !important;
	}
	#top_menu {
		display: none !important;
		position: fixed !important;
		inset:0 !important;
		background: #fff;
		z-index:1000 !important;
		padding:25px !important;
	}
	#top_menu_main {
		margin-top: 30px !important;
	}
	#top_menu_systems, #top_menu_main {
		flex-wrap: nowrap;
		flex-direction: column;
		color:#000;
	}
	
	#top_menu_systems li {
		padding:10px 10px !important;l
	}
	#top_menu_systems li.nolink {
		border-bottom: none !important;
		color:#fff;
		padding-bottom: 15px !important;
		padding-left: 0 !important;
	}
	#slider_text {
		left:25px !important;
		top:150px;
		bottom: auto !important;
		font-size:48px !important;
	}
	#sl_1 {
		margin-bottom: 10px !important;
	}
	#sl_2 {
		font-size:36px !important;
		margin-bottom: 30px !important;
	}
	#sl_3 {
		font-size:68px !important;
		margin-bottom: 10px !important;
	}
	#rs_logo {
		top:auto !important;
		left: auto !important;
		padding:0 !important;
	}
	#realisation_list {
		margin-bottom: 30px !important;
	}
	#research_mobile,
	#system,
	#element,
	#slider_evihomefan_shadow,
	#slider_evihomefan {
		display: none !important;
	}
	#research {
		display: flex !important;
		flex-wrap: wrap !important;
	}
	.rs_module {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width:100% !important;
		margin:15px 0 !important;
	}
	.rs_text {
		padding:25px !important;
	}
	#rs_module2_rect {
		min-height: 300px !important;
	}
	.rs_shadow {
		left:10px !important;
		top:10px !important;
	}
	#slider_text {
		height:100vh !important;
		position: absolute;
		inset:0 25px !important;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	section#realizations nav ul {
		margin: 0 !important;
	}
	.packages div {
		height: auto !important;
	}
	.packages div h4 {
		margin:0 0 3rem 0 !important;
	}
	.packages div ul {
		margin: 3rem 0 0 0 !important;
	}
	.packages_annotation {
		margin:0 15px !important;
		text-align: left !important;
	}
	#realisation_grid_title_box {
		top:auto !important;
		background: none !important;
		color:#4F5A76 !important;
		font-size:24px !important;
	}
	#realisation_grid_title {
		flex:1 !important;
	}
	#realisation_grid_title_box span.prev, #realisation_grid_title_box span.next {
		width:48px !important;
		height: 48px !important;
		border-radius: 4px !important;
	}
}