@media screen and (max-width:1240px){
	#nav li{
		margin: 0 0 0 20px;
	}
	.persons-list li{
		width: 33.33%;
	}
	.persons-list li:nth-child(-n+4):after{
		display: block;
	}
	.persons-list li:nth-child(-n+3):after{
		display: none;
	}
	.contacts-list li, .info-section strong.text{
		font-size: 18px;
		line-height: 28px;
	}
	.info-section strong.text{
		min-height: 80px;
	}
}
@media screen and (max-width:1000px){
	body{
		font-size: 16px;
		line-height: 30px;
	}
	ul li:after{
		top: 1px;
	}
	.logo{
		width: 150px;
		height: 35px;
		-webkit-background-size: 150px auto;
		background-size: 150px auto;
		top: 38px;
	}
	#nav ul.menu-list-header{
		display: none;
	}
	#nav ul.menu-list-header > li {
		display: block;
		text-align: center;
		margin: 0;
	}
	#nav ul.menu-list-header  li .menu-link,
	#nav ul.menu-list-header > li ul .menu-link {
		display: inline-block;
	}
	#nav ul.menu-list-header > li.has-child {
		position: relative;
		text-align: center;
	}
	#nav ul.menu-list-header > li.has-child.open > ul {
		background: transparent;
	}
	#nav ul.menu-list-header > li.has-child.open > ul,
	#nav ul.menu-list-header > li ul > li.has-child.open ul {
		display: block;
		position: relative;
		left: auto;
		opacity: 1;
		visibility: visible;
		top: auto;
		margin: 0 auto;
		right: auto;
		width: 100%;
	}
	#nav ul.menu-list-header > li ul  li ul {
		background: rgba(165, 188, 195, 0.08);
	}

	#nav ul.menu-list-header > li.has-child.open > ul li a:hover {
		color:#828282;
	}
	#nav ul.menu-list-header > li.has-child.open ul li {
		border:none;
		padding:0;
		font-size: 14px;
		color:#828282;
		text-align: center;
	}

	#nav ul.menu-list-header > li.has-child:hover > a:after,
	#nav ul.menu-list-header > li.has-child.open > a:after{
		border-color: #00a7df;
	}
	#nav ul.menu-list-header > li.has-child > a:hover,
	#nav ul.menu-list-header > li ul a.active,
	#nav ul.menu-list-header > li ul a:hover {
		color: #00a7df;
	}

	#nav ul.menu-list-header > li.has-child:not(.open):hover ul,
	#nav ul.menu-list-header > li:not(.open):hover ul,
	#nav ul.menu-list-header > li ul > li:not(.open):hover ul,
	#nav ul.menu-list-header > li ul > li:not(.open) ul{
		visibility: hidden;
		z-index: -999999;
		display: none;
	}


	#nav ul.menu-list-header  li.has-child > a {
		position: relative;

	}
	#nav ul.menu-list-header  li.has-child.open > a > span {
		-moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
		top: 10px;
	}
	#nav ul.menu-list-header  li.has-child >  a.active > span {
		border-color:#00a7df;
	}


	#nav ul.menu-list-header  li.has-child >  a > span {
		position: absolute;
		display: block;
		width: 8px;
		height: 8px;
		top: 7px;
		right: -22px;

		-moz-transform: rotate(-135deg);
		-ms-transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
		-o-transform: rotate(-135deg);
		transform: rotate(-135deg);
		border-top:solid 2px #828282; //#00a7df;
		border-left:solid 2px #828282; //#00a7df;
		-webkit-transition: all 100ms linear;
		-moz-transition: all 100ms linear;
		-ms-transition: all 100ms linear;
		-o-transition: all 100ms linear;
		transition: all 100ms linear;
	}
	#header .container{
		height: 55px;
	}
	.mob-btn{
		width: 46px;
		height: 37px;
		position: absolute;
		top: 14px;
		right: 20px;
		padding:0;
		z-index: 2;
		display: block;
	}
	.mob-btn span {
		display: block;
		position: relative;
		width: 26px;
		height: 3px;
		background: #2cb5e2;
		margin: 14px auto 0;
	}
	.mob-btn span:before,
	.mob-btn span:after {
		content: '';
		position: absolute;
		width: 100%;
		background: #2cb5e2;
		height: 3px;
		top: -7px;
		left:0;
		-webkit-transition: all 200ms linear;
		-moz-transition: all 200ms linear;
		-ms-transition: all 200ms linear;
		-o-transition: all 200ms linear;
		transition: all 200ms linear;
	}
	.mob-btn span:after {
		top: 7px;
	}
	#nav.active .mob-btn span {
		background: none;
	}
	#nav.active .mob-btn span:before {
		-moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
		margin: 7px 0 0;
	}
	#nav.active .mob-btn span:after {
		-moz-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		transform: rotate(-45deg);
		margin: -7px 0 0;
	}
	#nav.active .wrap-menu-list{
		position: fixed;
		left: 0;
		top: 55px;
		width: 100%;
		bottom: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		align-content: center;
		background: #fff;

		-webkit-overflow-scrolling: touch;
	}

	#nav.active .wrap-menu-list > ul{
		display: block;
		overflow-y: scroll;
		max-height: 100%;
	}
	#nav li{
		display: block;
		text-align: center;
		margin: 0;
		font-size: 20px;
		line-height: 30px;
	}
	#nav li a{
		display: block;
		padding: 10px 0;
	}
	.section, .blue-mask, .index .section{
		padding: 40px 0;
	}
	.index .map-section{
		padding: 0;
	}
	.index .map-section .container{
		padding: 90px 0 80px;
	}
	h1{
		font-size: 60px;
		line-height: 60px;
	}
	h2, h3, h4{
		font-size: 30px;
		line-height: 30px;
		margin: 0 0 30px;
	}
	.what-we-do li{
		width: 50%;
		margin: 0 0 40px;
	}
	.what-we-do .visual{
		margin: 0 0 15px;
	}
	.info{
		width: 100%;
		padding: 0;
		float: none;
	}
	.video-info{
		padding: 0;
	}
	.info strong{
		font-size: 25px;
		line-height: 25px;
	}
	.video-play{
		width: 37px;
		height: 26px;
		-webkit-background-size: 37px 26px;
		background-size: 37px 26px;
	}
	.map-section h2{
		top: 20px;
		right: 20px;
	}
	.copy-list li:first-child{
		display: block;
	}
	.copy-list li:nth-child(2):after{
		display: none;
	}
	.index .main-section .container{
		min-height: 440px !important;
	}
	.index .main-section h1{
		bottom: 70px;
	}
	.content-block{
		float: none;
		margin: 0 0 40px;
		padding: 0;
	}
	.sidebar{
		float: none;
		width: 100%;
		margin: 0;
		padding: 0;
	}
	.sidebar-list strong{
		max-width: 100%;
	}
	.sidebar .sidebar-img{
		max-width: 200px;
		bottom: 0;
		left: 0;
	}
	.news-list{
		padding: 20px 0 0;
	}
	.video-section{
		background-position-x: 70% !important;
	}
	.video-section h4{
		display: none;
	}
	.video-section .container{
		min-height: 300px;
	}
	.video-section .video-play {
		width: 32px;
		height: 37px;
	}
	.video-section .video-play:after {
		border-top: 19px solid transparent;
		border-left: 31px solid #fff;
		border-bottom: 19px solid transparent;
	}
	.persons-list li{
		width: 50%;
	}
	.persons-list li:nth-child(-n+3):after{
		display: block;
	}
	.persons-list li:nth-child(-n+2):after{
		display: none;
	}
	.stories-list{
		margin: 0;
	}
	.our-clients li{
		width: 25%;
	}
}
@media screen and (max-width:768px){
	.our-clients li{
		width: 33.33%;
		height: 120px;
		line-height: 120px;
	}
	.map-section .container{
		-webkit-background-size: 100% auto;
		background-size: 170% auto;
		background-position: 50% 0;
	}
	.f-logo{
		float: none;
		display: block;
		margin: 0 auto 20px;
	}
	.f-info > ul{
		width: 100%;
		margin: 0;
	}
	.f-info > ul a{
		display: block;
		padding: 10px 0 5px;
	}
	.main-section .container{
		height: 300px;
	}
	.news-list{
		font-size: 16px;
		line-height: 24px;
	}
	.news-list .visual{
		float: none;
		width: 100%;
		margin: 0 0 20px;
	}
	.slider{
		font-size: 16px;
		line-height: 28px;
	}
	.filter, .section .filter{
		text-align: center;
	}
	.section .filter label, .filter label{
		display: block;
		margin: 0 0 10px;
	}
	.form-icon{
		right: 16px;
	}
	.filter .form-row, .section .filter .form-row{
		width: 100%;
		margin: 0 0 10px;
		padding: 0;
	}
	.mob-btn{
		right: 10px;
	}
	.contacts-list li{
		width: 100%;
		margin: 20px 0 0;
	}
	.contacts-list li:first-child{
		margin: 0;
	}
	.stories-list .date{
		width: 50px;
		font-size: 12px;
		margin: 0 20px 0 0;
		padding: 0 5px 0 0;
	}
	.stories-list .date span{
		font-size: 15px;
		line-height: 17px;
	}
	.stories-list .date strong{
		font-size: 25px;
		line-height: 25px;
	}
	.stories-list .title-box p, .publications-list .title-box p, .projects-list .title-box > p, .projects-list .title-box ol{
		font-size: 14px;
		line-height: 18px;
	}
	.projects-list .title-box > span{
		font-size: 14px;
		line-height: 18px;
		display: block;
	}
	.stories-list .title-box strong, .publications-list .title-box strong, .projects-list .title-box strong{
		font-size: 18px;
		line-height: 20px;
	}
	.publications-list .visual{
		float: none;
		width: 100%;
		margin: 0 0 20px;
	}
	.projects-list .projects-info{
		float: none;
		margin: 0 0 20px;
		padding: 0 0 20px;
		border-right: none;
		border-bottom: 1px solid #e2e2e2;
		width: 100%;
		font-size: 14px;
		text-align: left;
	}
	.projects-list .projects-info p{
		display: inline-block;
		vertical-align: top;
		margin: 0 20px 15px 0;
	}
	.projects-list .projects-info p:first-child{
		margin: 0 20px 15px 0;
	}
}
@media screen and (max-width:640px){
	#nav li{
		font-size: 16px;
		line-height: 20px;
	}
	#nav li a{
		padding: 5px 0;
	}
	h1{
		font-size: 33px;
		line-height: 33px;
		margin: 0 0 30px;
		padding: 0 0 30px;
	}
	h1:after{
		height: 10px;
		width: 40px;
	}
	.map-section h2 {
		max-width: 340px;
	}
	.index .map-section .container {
		padding: 90px 0 0px;
	}
	.map-list{
		-moz-column-count: 4;
		-moz-column-gap: 20px;
		-webkit-column-count: 4;
		-webkit-column-gap: 20px;
		column-count: 4;
		column-gap: 20px;
		left: auto;
		right: auto;
		position: relative;
		margin: 30px auto 0;
		max-width: 90%;
	}
	.copy{
		text-align: center;
	}
	.social{
		float: none;
		margin: 0 0 20px;
	}
	.persons-list li{
		width: 100%;
	}
	.persons-list li:nth-child(-n+2):after{
		display: block;
	}
	.persons-list li:nth-child(-n+1):after{
		display: none;
	}
}
@media screen and (max-width:480px){
	h2{
		text-align: center;
	}
	.what-we-do li{
		width: 100%;
		text-align: center;
	}
	.what-we-do strong{
		max-width: 100%;
	}
	.map-section h2 {
		font-size: 24px;
	}
	.map-list{
		-moz-column-count: 2;
		-moz-column-gap: 20px;
		-webkit-column-count: 2;
		-webkit-column-gap: 20px;
		column-count: 2;
		column-gap: 20px;
	}
	.map-section .container{
		-webkit-background-size: 260% auto;
		background-size: 260% auto;
	}
}
@media screen and (max-height:480px){
	#nav li{
		font-size: 16px;
		line-height: 20px;
	}
	#nav li .menu-link{
		padding: 5px 0;
	}
}
