@font-face {
    font-family: 'GothaProNarMed';
    src: url('fonts/GothaProNarMed.eot');
    src: url('fonts/GothaProNarMed.eot') format('embedded-opentype'),
         url('fonts/GothaProNarMed.woff2') format('woff2'),
         url('fonts/GothaProNarMed.woff') format('woff'),
         url('fonts/GothaProNarMed.ttf') format('truetype'),
         url('fonts/GothaProNarMed.svg#GothaProNarMed') format('svg');
}

@font-face {
    font-family: 'DINProMediumRegular';
    src: url('fonts/DINProMediumRegular.eot');
    src: url('fonts/DINProMediumRegular.eot') format('embedded-opentype'),
         url('fonts/DINProMediumRegular.woff2') format('woff2'),
         url('fonts/DINProMediumRegular.woff') format('woff'),
         url('fonts/DINProMediumRegular.ttf') format('truetype'),
         url('fonts/DINProMediumRegular.svg#DINProMediumRegular') format('svg');
}


@font-face {
    font-family: 'DINProRegular';
    src: url('fonts/DINProRegular.eot');
    src: url('fonts/DINProRegular.eot') format('embedded-opentype'),
         url('fonts/DINProRegular.woff2') format('woff2'),
         url('fonts/DINProRegular.woff') format('woff'),
         url('fonts/DINProRegular.ttf') format('truetype'),
         url('fonts/DINProRegular.svg#DINProRegular') format('svg');

}

* {
	font-family: DINProRegular, Tahoma, Arial, Helvetica, Roboto, Calibri, sans-serif;
}

html {
	margin: 0;
	padding: 0;
	height: 100%;
}

body, table, textarea {
/*	font-size: 90.7%;*/
	font-size: 1.1rem;
	line-height: 1.21;
	color: #000;
/*	height: 100%;*/
}

/*
h1, h2, h3, h4, strong, b {
	font-weight: normal;
	font-family: DaxlinePro-Regular;
}
*/


table {
	border-collapse: collapse;
}

table td,
table th {
	padding: 0;
}

div {
	box-sizing: border-box;
	}

img {
	border: none;
}

form {
	padding: 0;
	margin:0;
}

h1 {
	font-weight: normal;
	font-size: 200%;
	margin: 5px 0 7px 0;
	padding: 0;
}

h2 {
	font-weight: normal;
	font-size: 200%;
	margin: 5px 0 7px 0;
	padding: 0;
}

h3 {
	font-weight: normal;
	font-size: 125%;
	margin: 5px 0 7px 0;
	padding: 0;
}

p {
	padding: 0;
	margin: 0 0 1rem 0;
/*	text-align: justify;*/
}


a {
	color: #0D72B9;
	text-decoration: none;
	}

a:hover {
	text-decoration: underline;
	}

a[href^="tel:"] {
	color: #b8529e;
	text-decoration: none;
	}

/*
input[type="text"],
input[type="password"],
input[type="email"],
textarea,
select {
	border: solid 1px #A5B9D3;
	border: none;
	line-height: 27px;
	padding: 2px 5px;
	margin: 0;
	outline: none;
	box-sizing: border-box;
	height: 23px;
	font-size: 95%;
}

textarea {
	height: auto;
	}

select {
	padding-right: 0px;
	}


textarea {
	resize: none;
}

*/

button {
	border: none;
	background: none;
	outline: none;
}

button::-moz-focus-inner {
	border: 0;
	padding: 0;
}


/*
*{
	-webkit-transition:all .15s ease;
	-moz-transition:all .15s ease;
	-o-transition:all .15s ease;
	transition:all .15s ease;
}
*/


body {
	margin: 0;
	padding: 0;
	height: 100%;
}

.wrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
/*	height: auto !important;
	height: 100%;
	min-height: 100%;
	position: relative;*/
	min-width: 320px;
	overflow: hidden;
	background-color: #c0ecf7;
/*	background-image: url('pic/bg.png');*/
	background-size: auto;
	background-attachment: fixed;
/*	background-size: cover;*/
}

.header	{
/*	width: 100%;*/
	height: 370px;
	background-color: #0098B9;
	background-image: url('pic/bg_head.svg');
	background-repeat: repeat;
	background-position: center center;
/*	position: relative;
	z-index: 25;*/
	border-bottom: solid 75px #00557A;
	}

.main 	{
display: flex;
flex-grow: 1;
	border-top: solid 15px #fff;
/*flex: 1;*/
	}

.footer	{
	background-color: #EAF8FC;
	padding: 0 0 1rem 0;
	border-top: solid 15px #fff;
	border-bottom: solid 10px #0098B9;
	}

.container {
	width: 100%;
	max-width: 1280px;
	padding: 0 1rem;
	margin: 0 auto;
	}

.header > .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 2rem;
	}

.main > .container {
	margin-top: -245px;
/*	position: relative;
	z-index: 25;*/
	background-color: rgba(255, 255, 255, 1);
	border-radius: 1rem 1rem 0 0;
	}

.footer >.container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 1rem;
	}


.logo {
	padding: 0;
	}

.logo a {
	display: block;
	width: 164px;
	height: 164px;
	background-image: url('pic/logo.svg');
	background-size: 100% 100%;
	transition: all .25s ease;
	}

.logo a:hover {
	opacity: 0.8;
	}

.head_content {
	flex: 1;
	font-family: GothaProNarMed;
	font-size: 1.3rem;
	color: #fff;
	padding: 0 0 0 3rem;
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25);
	}

.head_content span {
	font-size: 3.3rem;
	display: block;
	}

.head_social {
	padding: 2rem 0 0 0;
	text-align: right;
	font-size: 0;
	line-height: 0;
/*	position: relative;
	z-index: 50;*/
	}

.head_social a {
	display: inline-block;
	width: 46px;
	height: 46px;
	background-size: 100% 100%;
	transition: all .25s ease;
	margin: .2rem;
	}

.head_social a:hover {
	opacity: 0.7;
	}

a.wa {
	background-image: url('pic/ico_wa.svg');
	}

a.tg {
	background-image: url('pic/ico_tg.svg');
	}

a.vk {
	background-image: url('pic/ico_vk.svg');
	}

.menu_social a.vk {
	background-image: url('pic/ico_vk_menu.svg');
	}


/*.head_menu a.vk {
	background-image: url('pic/ico_vk_menu.svg');
	}
*/


a.ph {
	background-image: url('pic/ico_ph.svg');
	display: none;
	}


.bottom_content {
	flex: 1;
	padding: 1rem 0 0 2rem;
	font-size: 1.0rem;
	}

.bottom_content p {
	font-family: GothaProNarMed;
	color: #00557A;
	}

.bottom_content p span {
	font-size: 2.3rem;
	display: block;
	margin: 0 0 .5rem 0;
	}

.bottom_content p a {
	color: #00557A;
	}



.head_menu {
	display: flex;
	align-items: center;
	padding: 0 1rem;
	margin: -5px -1rem 0 -1rem;
/*	font-size: 1.09rem;*/
	font-size: .87rem;
	font-weight: bold;
	text-transform: uppercase;
	background-color: #EAF8FC;
	text-align: center;
	border-radius: 1rem;
	position: relative;
	z-index: 999;
	}

.ankor {
	display: block;
	height: 1rem;
	}

.subtitle {
	background-color: #EAF8FC;
	border-radius: 1rem;
	padding: 1rem 0 1rem 1.5rem;
/*	margin: 0 0 2rem 0;*/
	margin: 0 0 1.5rem 0;
	margin: 0 -1rem 1.7rem -1rem;
	color: #007194;
	font-family: GothaProNarMed;
	font-size: 1.5rem;
	white-space: nowrap;
	overflow: hidden;
	}


.subtitle1,
.subtitle2 {
	display: inline-block;
	background-color: #5DB3D4;
	border-radius: 2rem;
	padding: 0 2rem 0 0;
	margin: 0 0 2rem 0;
	color: #fff;
	font-size: 1.5rem;
	text-transform: uppercase;
	white-space: nowrap;
	overflow: hidden;
	}

.subtitle2 {
	background-color: #609D36;
	}

.subtitle1 em,
.subtitle2 em  {
	font-style: normal;
	display: inline-block;
	border-radius: 2rem;
	background-color: #00557A;
	padding: 1rem 2rem;
	color: #fff;
	margin: 0 1rem 0 0;
/*vertical-align: middle;*/
	line-height: 1.1;
	}


.content_title {
/*	text-transform: uppercase;*/
	color: #007194;
	font-family: GothaProNarMed;
	font-size: 1.9rem;
	padding: 2rem 0 2rem calc(2rem + 46px + 1rem);
	margin: 0;
	background-size: 46px 46px;
	background-position: 2rem 52%;
	background-repeat: no-repeat;
	}

.content {
	margin: 0;
	padding: 0 2rem 1rem 2rem;
	}

.content p img {
	max-width: 100%;
	height: auto;
	}

.text {
/*	padding: 0 0 1rem 1.5rem; */
	padding: 0 0 0 1.5rem;
	}

.text ul,
.text ol {
	display: block;
	margin-top: .5rem;
	margin-bottom: .6rem;
	margin-left: 0;
	margin-right: 0;
	margin: 0 0 1rem 0;
	padding-left: 1rem;
/*	position: relative;*/
	overflow: hidden;
	}

.text ul ul,
.text ul ol,
.text ol ul,
.text ol ol {
	margin: 0;
	}


.text ul {
	list-style: none;
	}

.text ul li:before {
	content:  "- ";
/*	position: absolute;
	left: 1rem;*/
/*	position: relative;
	left: -.5rem;*/
	margin-left: -.68rem;
	}

/*
.submenu li:before {
	content: "";
	}
*/

.text_pic {
	aspect-ratio: 16/9;
	min-width: 400px;
	width: 460px;
	border-radius: 1rem;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	margin: 0 0 1.5rem 1.5rem;
	box-shadow: 0px 0px 7px 0px rgba(34, 60, 80, 0.05) inset;
	float: right;
	}

.text_photo {
	aspect-ratio: 1/1;
	min-width: 250px;
	width: 250px;
	border-radius: 50%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	margin: 0 0 0 1rem;
	border: solid 15px #fff;
	float: right;
	}

.info_block {
	background-color: rgba(0,52,185,.1);
	background-color: rgba(150,150,150,.1);
	border-radius: 1rem;
	padding: 1rem 1.5rem 1rem 3.5rem;
	margin: 0 -1rem 0rem -1rem;
	overflow: hidden;
	}

.info_title {
	font-size: 1.8rem;
	padding: 1rem 0 1rem 0;
	margin: 0;
	}

.info_subtitle {
	font-size: 1.4rem;
	padding: 0 0 1rem 0;
	margin: 0;
	}

.info_description {
	padding: .5rem 0 1rem 0;
	margin: 0;
	}

.info_block table td {
	padding: 1rem 1rem 0 0;
	}

.info_content {
	padding: 2rem 0 0 0;
	}

.submenu {
	display: block;
	padding: 0;
	margin: -.5rem 0 1rem 0;
	list-style: none;
/*border: solid 1px red;*/
	}

.submenu li {
	padding: .5rem 0 .5rem 4.0rem;
	background-image: url('pic/submenu.gif');
	background-position: 1.4rem 52%;
	background-repeat: no-repeat;
	}

.submenu li a {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 1.09rem;
	color: #00557A;
	}

.utile {
/*	border-bottom: solid 1px #E6E6E5;*/
	margin: 0 -1rem;
	padding: 1rem 1rem;
	}

.utile .text {
	}

.news {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	border-bottom: solid 1px #E6E6E5;
	margin: 0 -1rem;
	padding: 1rem 1rem;
	color: #000;
	}

.news:nth-child(1) {
	margin-top: -1.5rem;
	}

a.news:hover {
	background-color: #EAF8FC;
	text-decoration: none;
	}

.news_pic {
	flex: 0 1 25%;
	aspect-ratio: 16/9;
	min-width: 400px;
	width: 460px;
	border-radius: 1rem;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	margin: 0 2rem 0 0;
	box-shadow: 0px 0px 7px 0px rgba(34, 60, 80, 0.05) inset;
	}

.news_body {
	flex: 0 1 75%;
	padding: 0;
	margin-bottom: -.5rem;
	}

.news_date {
	color: #007194;
	font-size: .9rem;
	padding: 0 0 .5rem 0;
	}

.news_title {
	font-family: GothaProNarMed;
	padding: 0 0 1rem 0;
	}

.news .text {
	padding: 0 0 1rem 0;
	}

.btn-more {
	display: block;
	margin: 1rem auto!important;
	width: auto!important;
	background-color: #0098B9;
	color: #fff;
	text-transform: uppercase;
	text-align: center;
	font-size: 1.1rem;
	padding: .5rem 1rem;
	border-radius: 1rem;
	white-space: nowrap;
	}


.more {
	text-align: center;
	padding: 2rem 0 2rem 0;
	}

.more a {
	display: inline-block;
	text-transform: uppercase;
	color: #fff;
	background-color: #0098B9;
	padding: .5rem 1rem;
	border-radius: 1rem;
	}

.bg_flag .more a {
	background-color: #fff;
	color: #007194;
	}

.more a:hover {
	text-decoration: none;
	background-color: #0D72B9;
	}

.bg_flag .more a:hover {
	color: #fff;
	}

.wide_block {
	width: 100vw;
	position: relative;
	right: calc((100vw - 100%) / 2);
	background-color: #0098B9;
	background-image: url('pic/bg_head.svg');
	background-repeat: repeat;
	background-position: center center;
	padding: 0;
	}

.bg_flag {
	background-image: url('pic/bg_flag.jpg');
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	background-color: #fff;
	}

.wide_block .container {
	padding-bottom: 1rem;
	}

.wide_block .content_title {
	color: #fff;
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25);
	}

.bg_flag .content_title {
	color: #007194;
	text-shadow: none;
	}


.home_block {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: stretch;
	margin: 0;
	padding: 0;
	}

.actual_block {
	flex: 0 1 30%;
	display: flex;
	flex-direction: column;
	align-content: stretch;
	align-items: stretch;
	}

.actual {
	background-color: #EAF8FC;
	border-radius: 1rem;
	margin: 0 1rem 0 2rem;
	height: 100%;
	}

.actual_pic {
	aspect-ratio: 16/9;
	border-radius: 1rem;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	box-shadow: 0px 0px 7px 0px rgba(34, 60, 80, 0.05) inset;
	}

.actual_title {
	text-align: center;
	padding: 1rem;
	font-family: GothaProNarMed;
	}

.actual .text {
	padding: 0 1rem 1rem 1rem;
	max-height: 125px;
	overflow-y: scroll;
	box-shadow: 0px -5px 5px -5px rgba(34, 60, 80, 0.25) inset;
	}

.actual .text::-webkit-scrollbar {
	width: 7px;
	}

.actual .text::-webkit-scrollbar-track {
	background-color: rgba(150,150,150,.1);
	}

.actual .text::-webkit-scrollbar-thumb {
	background-color: #007194;
	border-radius: 4px;
	}

.actual a {
	display: block;
	padding: 1rem;
	}

.slider_block {
	flex: 0 1 70%;
	padding: 2rem 1rem 0 1rem;
	min-height: 525px;
	}

.slide_content {
	width: 100%;
	height: 100%;
	min-height: 100%;
/*	background-image: url('temp/slide_01.jpg');*/
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	border-radius: 1em;
	}

/*
.slide_block {
	position: relative;
	z-index: 10;
	width: 100%;
	height: calc(75vh - 232px);
	margin: 232px 0 0 0;
	background-position: center center;
	background-size: cover;
	}

.slide_block:after {
	content: ' ';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.01) 70%, rgba(0,0,0,0.65) 100%);
background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.01) 70%,rgba(0,0,0,0.65) 100%); 
background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.01) 70%,rgba(0,0,0,0.65) 100%); 
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#d9000000',GradientType=0 );
	}

.slide_block .container {
	display: flex;
	height: 100%;
	flex-direction: row;
	align-items: flex-end;
	background: none;
	position: relative;
	}

.slide_block .container img {
	margin: 0 0 -35px -150px;
	width: 400px;
	transition: all .25s ease;
	}

*/

.oiv {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	justify-content: space-between;
	border-bottom: solid 1px #E6E6E5;
	margin: 0 -1rem;
	padding: 1.5rem 1rem 1.5rem 1rem;
	clear: both;
	}

.oiv:nth-child(1) {
	padding-top: 0;
	}

.oiv_block {
	margin: 0 -1rem 0 -2.5rem;
	}

.oiv_name {
	background-color: #0098B9;
	color: #fff;
	border-radius: 1rem;
	padding: 1rem;
	width: 35%;
/*	min-height: 7.5rem; выравнивание высоты блоков */
	}

.oiv_name a {
	display: block;
	margin: 0 0 -.5rem 0;
	padding: 1rem 0 1rem 3rem;
	background-size: 35px 35px;
	background-position: left 52%;
	background-repeat: no-repeat;
	background-image: url('pic/ico_link.svg');
	color: #fff;
	overflow: hidden;
	}

.oiv_persons {
	width: 65%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	}

.oiv_persons p {
	display: flex;
	width: 100%;
	padding: 0 0 0 0;
	margin: 0;
	flex-direction: row;
	justify-content: space-between;
	}

.oiv_persons span {
	display: inline-block;
	width: 48%;
	background-color: rgba(0,52,185,.1);
	border-radius: 1rem;
	padding: 1rem;
	margin: 0 0 0 1rem;
	white-space: nowrap;
	overflow: hidden;
	}

.oiv_persons a {
	display: inline-block;
	width: 41%;
	background-color: rgba(150,150,150,.1);
	border-radius: 1rem;
	padding: 1rem;
	margin: 0 0 0 1rem;
	white-space: nowrap;
	overflow: hidden;
	}


.projects_block {
	}

.project {
	clear: both;
	padding: 0;
	margin: 0 0 2rem 0;
	}

.project_title {
	display: flex;
	width: 100%;
	flex-flow: row wrap;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 1rem 0;
	}

.project_title em {
	display: inline-block;
	padding: 1.05rem 2rem .95rem 2rem;
	margin: 0;
	border-radius: 2rem;
	font-style: normal;
	color: #0098B9;
	background-color: #EAF8FC;
	font-family: GothaProNarMed;
	background-color: rgba(0,52,185,.1);
	}

.project_title strong {
	flex: 0 1 100%;
	order: 2;
	display: inline-block;
	padding: 1rem 1rem 1rem 2rem;
	margin: 1rem 0 0 0;
	border-radius: 2rem;
	font-weight: normal;
	font-family: GothaProNarMed;
	background-color: #EAF8FC;
	}

.project_title a,
.project_title span {
	display: inline-block;
	padding: 1rem 2rem;
	margin: 0 0 0 1rem;
	border-radius: 2rem;
	font-family: GothaProNarMed;
	color: #0098B9;
	/*background-color: #EAF8FC;*/
	background-color: rgba(150,150,150,.1);
	}

.project_content {
	display: flex;
	width: 100%;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: flex-start;
	}

.project_pic {
	flex: 0 1 25%;
	min-width: 270px;
	aspect-ratio: 1/1;
	margin: .5rem 2rem .5rem .5rem;
	background-size: cover;
	background-position: center center;
	border-radius: 1rem;
	}

.grant_pic {
	flex: 0 1 25%;
	min-width: 270px;
	aspect-ratio: 1/1;
	margin: 0 2rem 0 0;
	background-size: cover;
	background-position: center center;
	border: solid 10px #EAF8FC;
	border-radius: 1rem;
	}


.project .text {
	flex: 1;
	padding: 0;
	}

.project_org {
	font-family: DINProMediumRegular;
	padding: 0;
	margin: .5rem 0 1rem 0;
	}

.profile_logo {
	float: right;
	width: 20%;
	min-width: 250px;
	aspect-ratio: 1/1;
	margin: -1rem  0 1rem 1.5rem;
	background-size: cover;
	background-position: center center;
	border-radius: 1rem;
	box-shadow: 0px 0px 7px 0px rgba(34, 60, 80, 0.05) inset;
	}

.organization_link {
	background-color: rgba(0,52,185,.1);
	border-radius: 1rem;
	padding: .5rem 1rem;
	margin: 0 0 1rem 0;
	white-space: nowrap;
	overflow: hidden;
	}

.regulation_file {
	background-color: rgba(150,150,150,.1);
	border-radius: 1rem;
	padding: .5rem 1rem;
	margin: 0 0 1rem 0;
	white-space: nowrap;
	overflow: hidden;
	}

@media screen and (max-width: 1370px) {
	.container {
		width: auto;
		max-width: 100%;
		margin: 0 3.5vw;
		}

	.header > .container {
		padding-top: 1.7rem;
		}

	.wide_block .container {
		margin: 0;
		}

	.wide_block {
		width: calc(100% + 2rem);
		position: static;
		margin: 0 -1rem;
		}

	.logo a {
		width: 150px;
		height: 150px;
		}

	.head_content {
		font-size: 1.2rem;
		padding: 0 0 0 2.5rem;
		}

	.head_content span {
		font-size: 3.0rem;
		}

	.head_social a {
		width: 40px;
		height: 40px;
		}

	.main > .container {
		margin-top: -265px;
		}

	.actual {
		margin: 0 1rem 0 2rem;
        	}


	.oiv {
		font-size: 1rem;
		}

	.oiv_name {
		padding: .8rem;
		width: 38%;
		min-height: 7.0rem;
		}

	.oiv_persons {
		width: 62%;
		}

	.oiv_persons span {
		padding: .8rem;
		}

	.oiv_persons a {
		padding: .8rem;
		}

	.news_pic {
		min-width: 300px;
		width: 100%;
		}

	.project_pic {
		margin: 0 1.5rem 0 0;
		}
	}


@media screen and (max-width: 1024px) {
	body, table, textarea {
		font-size: 1rem;
		line-height: 1.11;
		}

	.header > .container {
		padding-top: 1.5rem;
		}

	.logo a {
		width: 140px;
		height: 140px;
		}

	.head_content {
		font-size: 1.1rem;
		padding: 0 0 0 2rem;
		}

	.head_content span {
		font-size: 2.7rem;
		}

	.head_social a {
		width: 35px;
		height: 35px;
		}

	.main > .container {
		margin-top: -280px;
		}
/*
	.actual {
		margin: 0 1rem 0 2rem;
        	}

	.slider_block {
		height: 500px;
		}

*/


	.home_block {
		flex-direction: column;
		}

	.actual_block {
		order: 1;
		}

	.actual {
		margin: 0 1rem;
		display: flex;
		flex-direction: row;
		align-items: center;
		}

	.actual_pic {
		flex: 0 1 35%;
		margin: .5rem 1rem .5rem 1rem;
		min-width: 300px;
		}

	.actual_body {
		flex: 0 1 65%;
		}

	.actual_title {
		text-align: left;
		}

	.actual .text {
		max-height: 100%;
		overflow: hidden;
		box-shadow: none;
		}

	.slider_block {
		flex: 0 1 auto;
		height: 400px;
		}

	.text_pic {
		min-width: 350px;
		width: 350px;
		}

	.oiv {
		flex-direction: column;
		}

	.oiv_name {
		padding: 1rem;
		width: 100%;
		min-height: 0;
		}

	.oiv_persons {
		width: 100%;
		padding: 1rem 0 0 0;
		}

	.oiv_persons p {
		margin: 0 0 1rem 0;
		}

	.oiv_persons p:last-child {
		margin: 0;
		}

	.oiv_persons span {
		width: 50%;
		padding: 1rem;
		margin: 0;
		}

	.oiv_persons a {
		width: 50%;
		margin: 0 0 0 1rem;
		}

	.profile_logo {
		min-width: 200px;
		margin: -.5rem  0 1rem 1.5rem;
		}
	}


@media screen and (max-width: 900px) {
	.logo a {
		width: 130px;
		height: 130px;
		}

	.header > .container {
		padding-top: 1.3rem;
		}

	.head_content {
		font-size: 1.05rem;
		padding: 0 0 0 1.1rem;
		}

	.head_content span {
		font-size: 2.5rem;
		}

	.head_social a {
		width: 30px;
		height: 30px;
		}

	.main > .container {
		margin-top: -290px;
		}

	.slider_block {
		height: auto;
		min-height: 300px;
		aspect-ratio: 16/9;
		}

	.text_pic {
		min-width: 100%;
		width: 100%;
		margin: 0 0 1.5rem 0;
		float: none;
		}

/*
.actual_block {
	flex-direction: vrow;
	align-content: stretch;
	align-items: stretch;
	}

.actual {
	background-color: #EAF8FC;
	border-radius: 1rem;
	margin: 0 2rem 0 2rem;
	height: 100%;
	}

.actual_pic {
	aspect-ratio: 16/9;
	border-radius: 1rem;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	}

.actual_title {
	text-align: center;
	padding: 1rem;
	}

.actual a {
	display: block;
	padding: 1rem;
	}

*/

/*	.slider_block {
		padding: 1.5rem 0 0 0;
		}
*/
	.bottom_content {
		font-size: .9rem;
		}

	.bottom_content p span {
		font-size: 2.0rem;
		}
	}


@media screen and (max-width: 795px) {
	.container {
		width: 100%;
		}

	.logo a {
		width: 115px;
		height: 115px;
		}

	.header > .container {
		padding-top: 1rem;
		}

	.head_content {
		font-size: 1.0rem;
		padding: 0 0 0 1rem;
		font-family: 'DINProRegular';
		}

	.head_content span {
		font-size: 2rem;
		}

	.head_social {
/*		margin-right: -.5rem;*/
		}

	.head_social a {
		width: 25px;
		height: 25px;
		position: absolute;
		right: 2.25rem;
		}

	.slider_block {
		padding: 1.5rem 0 0 0;
		}

	.main > .container {
		margin-top: -320px;
		}

	.content {
/*		padding: 0 1rem 1rem 1rem;*/
		padding: 0 0 1rem 0;
		}

	.content > .text {
		padding: 0 0 0 1.5rem;
		}

	.content_title {
		font-size: 1.5rem;
		background-position: .25rem 52%;
		background-size: 40px 40px;
		padding: 1.7rem 0 1.5rem calc(40px + 1rem);
		}

	.subtitle {
		padding: 1rem 0 1rem 1.5rem;
		margin: 0 0 1rem 0;
		font-size: 1.3rem;
		}

	.subtitle1 {
		font-size: 1.3rem;
		padding: 0 1.5rem 0 0;
		margin: 0 0 1.5rem 0;
		}

	.subtitle1 em {
		padding: .7rem 1.5rem;
		margin: 0 .5rem 0 0;
		}

	.submenu li a {
		font-size: 1rem;
		}

	.actual {
		margin: 0;
		flex-direction: column;
		}

	.actual_pic {
		flex: 0 1 100%;
		margin: 0 0 1rem 0;
		min-width: 100%;
		}

	.news {
		flex-direction: column;
		align-items: flex-start;
		}

	.news_pic {
		width: 100%;
		margin: 0 0 1rem 0;
		}

/*	.news_body .text {
		padding: 0;
		}*/

	.project_title {
		flex-flow: column;
		align-items: flex-start;
		margin: 0;
		}

	.project_title em {
		padding: .55rem 1rem .5rem 1rem;
		border-radius: 2rem;
		margin: 0 0 .5rem 0;;
		}

	.project_title strong {
		padding: .55rem 1rem .5rem 1rem;
		border-radius: 1rem;
		margin: 0 0 .5rem 0;
		order: 0;
		}

	.project_title a,
	.project_title span {
		padding: .55rem 1rem .5rem 1rem;
		margin: 0;
		}

	.project_content {
		display: block;
		padding-bottom: 1rem;
		border-bottom: solid 1px #E6E6E5;
		}

	.project_pic {
		margin: 0 0 1rem 0;
		}

	.grant_pic {
		margin: 0 0 1rem 0;
		}

	.organization_link,
	.regulation_file {
		margin: 0 0 .5rem 0;
		}

	.oiv_block {
		margin: 0 0 0 -1.5rem;
		}

	.oiv {
		padding: 1.5rem 1rem 1.0rem 1rem;
		}

	.oiv_persons p {
		width: auto;
		padding: 0 2rem 0 0;
		margin: 0 0 .5rem 0;;
		flex-direction: column;
		}

	.oiv_persons span {
		width: 100%;
		margin: 0 0 .5rem 0;
		padding: 1rem;
		}

	.oiv_persons a {
		width: 100%;
		margin: 0 0 .5rem 0;
		padding: 1rem;
		}

	.info_block {
		padding: 1rem 1.5rem 1rem 3rem;
		margin: 0 0rem 0rem -1rem;
		}

	.bottom_content {
		padding-left: 1rem;
		}
	}


@media screen and (max-width: 700px) {
	.container {
		margin: 0;
		}

	.main > .container {
		border-radius: 0;
		}

	.subtitle {
		padding: .7rem 0 .7rem 1.5rem;
		}

	.subtitle1 em {
		padding: .7rem 1rem;
		}
	}


@media screen and (max-width: 600px) {
	.head_content {
		font-size: 0;
		}

	.head_content span {
		font-size: 1.7rem;
		max-width: 10rem;
		}

	.subtitle {
/*		padding: .6rem 0 .6rem .6rem;*/
		padding: .65rem 0 .5rem 1.25rem;
/*		margin: 0 0 .7rem 0;*/
		font-size: 1.2rem;
		}

	.subtitle1 {
		font-size: 1rem;
		padding: 0 1rem 0 0;
		}

	.subtitle1 em {
		font-size: 1rem;
		padding: .6rem .9rem;
		margin: 0 .1rem 0 0;
		}

	.submenu li a {
		font-size: .9rem;
		}

	.footer .logo {
		display: none;
		}

	.bottom_content {
		padding-left: .25rem;
		}

	.profile_logo {
		float: none;
		width: auto;
		margin: 0 0 1rem 0;
		}

	.text_photo {
		margin: 0;
		width: auto;
		float: none;
		}

	.info_block {
		padding: 1rem 1rem 1rem 1rem;
		margin: 0 0rem 0rem -1.5rem;
		text-align: center;
		}

	.info_block table {
		margin: 0 auto 1rem auto;
		}

	.info_block table td {
		text-align: left;
		}

	}


@media screen and (max-height: 550px) {
	}


@media screen and (max-height: 400px) {
	}


@media screen and (max-width: 480px) {
	}



@media all and (orientation:portrait) {
/*	.slide_block {
		height: calc(50vh - 188px);
		margin: 188px 0 0 0;
		}
*/
	}


@media all and (orientation:landscape) {
	}


.clear {
width: 100%;
clear: both;
overflow: hidden;
height: 0;
font-size: 0;
line-height: 0;
}







.black_bg {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,.6);
	z-index: 99;
	display: flex;
	justify-content: center;
/*align-content: space-between;*/
	align-items: center;
/*flex-direction: column;*/
	}

.request_form_block {
	margin: 0 auto 2rem auto;
	border-radius: 1rem;
/*	position: relative;*/
	background-color: rgba(255,255,255,.8);
/*	background-image: url('pic/bg.png');
	background-size: auto;
	background-attachment: fixed;*/
/*	max-width: 580px;*/
	max-width: calc(100% - 4rem);
}

.content_form .request_form_block {
	max-width: 100%;
	background-color: rgba(228,233,235,1);
	}

.request_form_block form {
/*	background-image: url('pic/bg_right.svg');
	background-size: 265px 170px;
	background-repeat: no-repeat;
	background-position: right 4% bottom;*/
	padding: 2rem;
	}




.form_massage {
	padding: 3rem 1.5rem 4rem 1.5rem;
	text-align: center;
	}

.upload_title {
	text-align: center;
	background-color: #00468c;	
	background-color: #3596cd;	
	color: #fff;
	text-transform: uppercase;
	margin: 0 auto 0 auto;
	padding: 1rem 0 1rem 0;
	font-size: 1.15rem;
	}

.upload_input {
	display: table;
	list-style: none;
	padding: 0;
	margin: 0 0 5px 0;
width: 100%;
	}

.upload_input li {
	display: table-cell;
	vertical-align: middle;
	padding: 0 0px 0 0;
	}

.upload_input li:nth-child(1) {
/*	width: 30%;*/
	width: 125px;
	text-align: right;
	padding: 0 1rem 0 0;
font-family: GothaProNarMed;
font-family: DINProMediumRegular;
    color: #00557A
	}

.upload_input:nth-child(4) {
	display: none;
	}

.upload_input li small {
	display: inline-block;
	text-align: left;
	font-size: .9rem;
	line-height: 1;
/*	min-width: 380px;*/
	}

.content_block .content .upload_input li .but {
	margin: 0;
	}

.upload_input input[type="text"],
.upload_input input[type="file"],
.upload_input textarea {
/*	width: 380px;*/
	min-width: 100%;
	border: solid 1px #d6d6d6;
	border: solid 1px #E6E6E5;
	background-color: #fff;
	font-size: 1rem;
	padding: .1rem .5rem;
	padding: .4rem .9rem .5rem .9rem;
	border-radius: 1rem;
	box-sizing: border-box;
	}

.upload_input input[type="text"] {
/*	height: 1.5rem;*/
	}

.upload_input textarea {
	height: 10rem;
	}

.upload_input button {
	font-size: 1rem;	
	}

.upload_input label {
/*	font-size: 90%;*/
	}

.upload_but {
	text-align: right;
	padding: 10px 3px 0 0;
	}

.close{width:55px;height:46px;position:absolute;right:0;top:0;cursor:pointer;z-index: 99;}
.close:after{position:absolute;top:22px;right:20px;display:block;height:4px;width:20px;border-top:2px solid #255598;border-bottom:2px solid #255598;content:''}
.close:before{position:absolute;top:16px;right:20px;display:block;height:2px;width:20px;background:#255598;content:''}
.close:after{top:23px;border:0;height:2px;width:19px;background:#fff;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}
.close:before{top:23px;background:#fff;width:19px;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}

.but {
	text-transform: uppercase;
	text-align: center;
	display: inline-block;
	text-decoration: none;
	color: #fff;
	background-color: #00468c;
	padding: .6rem 1rem;
	transition: all .25s ease;
	cursor: pointer;
	background: #b8529e;
	border-radius: 2rem;
	padding: .7rem 2.5rem;
}

.but:hover,
.but:active {
	background-color: #d46fba;	
	}


@media all and (max-width: 600px) {
	.upload_input {
		width: 100%;
		}
	.upload_input li:nth-child(3) {
		width: 2px;
		padding: 0;
		}
	.upload_input input[type="text"],
	.upload_input input[type="file"],
	.upload_input textarea {
		width: 100%;
		}
	.upload_block button,
	.upload_block .but {
		width: 100%;
		}
	.upload_notes {
		display: none;
		}
	.upload_notes p {
		display: none;
		}
	.content_form form {
		margin-left: 0;
		}
	}


@media all and (max-width: 699px) {
	.upload_input {
		display: block;
		}
	.upload_input li {
		display: block;
		padding: 0;
		}
	.upload_input li:nth-child(1) {
		width: auto;
		padding-bottom: 5px;
		text-align: left;
		margin-left: 1rem;
		}
	.upload_but {
		text-align: center;
		padding: 15px 0 0 0;
		}
	.upload_input li small {
		width: auto;
		}
	.request_form_block {
		margin: 0 0 1rem 0;
		max-width: 100%;}
        }






















.grid-container {
/*  columns: 5 250px;
  column-gap: 1.5rem;
  width: 90%;
*/
	display: grid;
	grid-template: repeat(1, 1fr)/repeat(4, 1fr);
	grid-gap: 1.5rem;
	margin: 0 0 1rem 0;
	}

.grid-container div {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin: 0;
	padding: 1.5rem;
/*	box-shadow: 0px 0px 7px -2px rgba(34, 60, 80, 0.25);*/
/*	border: solid 1px rgba(228,233,235,1);*/
	background-color: #EAF8FC;
	border-radius: 1rem;
transition: all 0.25s ease-in-out;
	}

.bg_flag .grid-container div,
.leaders_block .grid-container div {
	background: none;
	}

.grid-container div span {
/*	flex: 0 1 100%;
	padding: 0; 
	margin: 0;
	line-height: 0;
	font-size: 0;
	background-color: rgba(228,233,235,.8);
	border-radius: .25rem;
	display: flex;
	flex-direction: column;
	justify-content: center;*/
	}

.grid-container div:hover img {
}
.grid-container div:hover {
}

.grid-container div img {
	width: 100%;
	border-radius: .25rem;
	box-sizing: border-box;
transition: all 0.25s ease-in-out;
	}

.bg_flag .grid-container div img,
.leaders_block .grid-container div img {
	border-radius: 50%;
	border: solid 15px #EAF8FC;
	}

.grid-container div p {
	margin: 0;
	padding: 1rem 0 0 0;
	text-align: center;
	height: 100%;
	}

.bg_flag .grid-container div p {
	color: #fff;
	text-shadow: 0px 0px 3px rgba(0, 0, 0, .8);
	}

.grid-container div p strong {
	display: block;
	font-weight: normal;	
	margin: 0;
	padding: 0 0 1rem 0;
	font-family: GothaProNarMed;
	}

.grid-container div p em {
	display: block;
	font-style: normal;
	margin: 0;
	padding: 0 0 1.3rem 0;
	}

.grid-container div p a {
	display: inline-block;
	margin: 0;
	padding: 0 0 1rem 0;
width: 200px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
	}




@media all and (max-width: 1024px) {
	.grid-container {
		grid-gap: 1rem;
		}
	}

@media screen and (max-width: 900px) {
	.grid-container {
		grid-gap: .5rem;
		}

	.grid-container div {
		padding: 1rem;
		}

	}

@media all and (max-width: 1124px) {
	.grid-container {
		grid-template: repeat(1, 1fr)/repeat(3, 1fr);
		}

	.homepage .grid-container div:nth-child(4) {
		display: none;
		}
	}

@media all and (max-width: 750px) {
	.grid-container {
		grid-template: repeat(1, 1fr)/repeat(2, 1fr);
		}

	.homepage .grid-container div:nth-child(4) {
		display: grid;
		}
	}

@media all and (max-width: 550px) {
	.grid-container {
		grid-template: repeat(1, 1fr)/repeat(1, 1fr);
		}

	.homepage .grid-container div:nth-child(4) {
		display: none;
		}
	}








nav {
position: relative;
margin: 0 auto;
padding: 0;
}


* {
  margin: 0;
  padding: 0;
  text-decoration: none;
}

#cssmenu,
#cssmenu ul,
#cssmenu ul li,
#cssmenu ul li a,
#cssmenu #head-mobile {
  border: 0;
  list-style: none;
  line-height: 1;
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#cssmenu:after,
#cssmenu > ul:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
#cssmenu #head-mobile {
  display: none;
}

#cssmenu {
}

#cssmenu > ul {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 -.5rem;
				}

#cssmenu > ul > li:last-child {
	display: none;
	padding: 1.25rem 0 1.25rem 0;

	}

#cssmenu > ul > li:last-child a {
	display: inline-block;
	width: 40px;
	height: 40px;
	background-size: 100% 100%;
	transition: all .25s ease;
	margin: .2rem;
	}

#cssmenu > ul > li {
		/*  float: left;*/
}
#cssmenu > ul > li > a {
	padding: 1.3rem .6rem 1.2rem .6rem;
	color: #00557A;
	text-decoration: none;
	font-family: DINProMediumRegular;
}

#cssmenu > ul > li > a.selected {
	background: #fff;
	}

#cssmenu > ul > li:hover > a,
#cssmenu ul li.active a {
  color: #fff;
}

#cssmenu > ul > li:hover > a.selected,
#cssmenu ul li.active a.selected {
	color: #fff;
	background: #3596cd;
	}



#cssmenu > ul > li:hover,
#cssmenu ul li.active:hover,
#cssmenu ul li.active,
#cssmenu ul li.has-sub.active:hover {
  background: #3596cd !important;
  -webkit-transition: background 0.3s ease;
  -ms-transition: background 0.3s ease;
  transition: background 0.3s ease;
}
#cssmenu > ul > li.has-sub > a {
  padding-right: 30px;
}
#cssmenu > ul > li.has-sub > a:after {
	position: absolute;
	content: "";
/*  top: 22px;
  right: 11px;
  width: 8px;
  height: 2px;
  display: block;
  background: #ddd;
*/
	right: 13px;
	top: 37px;
	height: 2px;
	width: 10px;
	background: #404041;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
#cssmenu > ul > li.has-sub > a:before {
	position: absolute;
	content: "";
/*
  top: 19px;
  right: 14px;
  display: block;
  width: 2px;
  height: 8px;
  background: #ddd;
*/
	top: 37px;
	right: 7px;
	height: 2px;
	width: 10px;
	background: #404041;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#cssmenu > ul > li.has-sub:hover > a:before,
#cssmenu > ul > li.has-sub:hover > a:after {
    background: #fff;
/*  top: 23px;
  height: 0;*/
}
#cssmenu ul ul {
  position: absolute;
  left: -9999px;
  background: rgba(74,74,74,.85);
  padding: .5rem 0;
}
#cssmenu ul ul li {
/*  height: 0;*/
  -webkit-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
#cssmenu ul ul li:hover {
}
#cssmenu li:hover > ul {
  left: auto;
}
#cssmenu li:hover > ul > li {
/*  height: 35px;*/
}
#cssmenu ul ul ul {
  margin-left: 100%;
  top: 0;
}
#cssmenu ul ul li a {
/*  border-bottom: 1px solid rgba(150, 150, 150, 0.15);*/
  padding: .9rem 1rem .8rem 1rem;
  font-size: 1rem;
  text-decoration: none;
  color: #ddd;
white-space: nowrap;
}
#cssmenu ul ul li:last-child > a,
#cssmenu ul ul li.last-item > a {
  border-bottom: 0;
}
#cssmenu ul ul li:hover > a,
#cssmenu ul ul li a:hover {
  color: #fff;
  background: rgba(74,74,74,.99);
}
#cssmenu ul ul li.has-sub > a:after {
  position: absolute;
  top: 16px;
  right: 11px;
  width: 8px;
  height: 2px;
  display: block;
  background: #ddd;
  content: "";
}
#cssmenu ul ul li.has-sub > a:before {
  position: absolute;
  top: 13px;
  right: 14px;
  display: block;
  width: 2px;
  height: 8px;
  background: #ddd;
  content: "";
  -webkit-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
#cssmenu ul ul > li.has-sub:hover > a:before {
  top: 17px;
  height: 0;
}
#cssmenu ul ul li.has-sub:hover,
#cssmenu ul li.has-sub ul li.has-sub ul li:hover {
  background: #363636;
}
#cssmenu ul ul ul li.active a {
  border-left: 1px solid #333;
}
#cssmenu > ul > li.has-sub > ul > li.active > a,
#cssmenu > ul ul > li.has-sub > ul > li.active > a {
  border-top: 1px solid #333;
}



@media screen and (max-width: 1370px) {
	#cssmenu > ul > li > a {
		padding: 1.3rem 1.15rem 1.2rem 1.15rem;
		}
	}

@media screen and (max-width: 1024px) {
	#cssmenu > ul > li > a {
		padding: .9rem .7rem 1rem .7rem;
		}
	}

@media screen and (max-width: 900px) {
	#cssmenu > ul > li > a {
		padding: .9rem .6rem 1rem .6rem;
		}
	}




@media screen and (max-width: 795px) {
  nav {
    width: 100%;
  }
  #cssmenu {
	width: 100%;
	position: absolute;
	position: fixed;
	top: 0;
	left: 0;
	text-align: center;
	}
  #cssmenu ul {
/*    width: 100%;*/
	height: 100vh;
padding-top: 3rem;
    display: none;
	background-color: rgba(255,255,255,.97);
	font-size: 1.3rem;
  }

#cssmenu > ul > li:last-child {
	display: block;
	}

  #cssmenu ul li {
    width: 100%;
/*    border-top: 1px solid #444;*/
  }
  #cssmenu ul li:hover {
    background: #363636;
  }
  #cssmenu ul ul li,
  #cssmenu li:hover > ul > li {
    height: auto;
  }
  #cssmenu ul li a,
  #cssmenu ul ul li a {
    width: 100%;
    border-bottom: 0;
  }
  #cssmenu > ul > li {
    float: none;
  }
  #cssmenu ul ul li a {
/*    padding-left: 25px;*/
  }
  #cssmenu ul ul li {
/*    background: #333 !important;*/
text-align: center;
  }
  #cssmenu ul ul li:hover {
    background: #363636 !important;
  }
  #cssmenu ul ul ul li a {
    padding-left: 35px;
  }
  #cssmenu ul ul li a {
    color: #ddd;
    background: none;
  }
  #cssmenu ul ul li:hover > a,
  #cssmenu ul ul li.active > a {
    color: #fff;
  }
  #cssmenu ul ul,
  #cssmenu ul ul ul {
    position: relative;
    left: 0;
    width: 100%;
    margin: 0;
    text-align: left;
  }

#cssmenu > ul > li.has-sub > a {
  padding-right: 1rem;
}

  #cssmenu > ul > li.has-sub > a:after,
  #cssmenu > ul > li.has-sub > a:before,
  #cssmenu ul ul > li.has-sub > a:after,
  #cssmenu ul ul > li.has-sub > a:before {
    display: none;
  }
  #cssmenu #head-mobile {
    display: block;
/*    padding: 23px;*/
/*	padding: 1.9rem 1rem 2rem 1rem;*/
/*    color: #ddd;
    font-size: 12px;
    font-weight: 700;*/
  }

.button {
	width: 40px;
	height: 40px;
	position: absolute;
	right: .5rem;
	right: 2rem;
	top: .9rem;
	top: 1.5rem;
	background-color: #00557A;
	border-radius: 50%;
	cursor: pointer;
	z-index: 999;
	box-shadow: 0px 0px 5px 3px rgba(255, 255, 255, 0.25);
	}

  .button:after {
    position: absolute;
	top: 19px;
	right: 10px;
    display: block;
    height: 4px;
    width: 20px;
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
    content: "";
  }
  .button:before {
    -webkit-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: absolute;
    top: 13px;
    right: 10px;
    display: block;
    height: 2px;
    width: 20px;
	background: #fff;
    content: "";
  }
  .button.menu-opened:after {
    -webkit-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
	top: 19px;
    border: 0;
    height: 2px;
    width: 19px;
	background: #fff;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .button.menu-opened:before {
	top: 19px;
	background: #fff;
    width: 19px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  #cssmenu .submenu-button {
	position: absolute;
	z-index: 99;
	display: block;
	width: 100%;
	height: 100%;
	cursor: pointer;
/*    right: 0;
    top: 0;*/
  }
  #cssmenu ul ul {
	z-index: 100;
	padding: 0;
	}
  #cssmenu .submenu-button.submenu-opened {
/*    background: #262626;*/
  }

  #cssmenu ul ul .submenu-button {
/*    height: 34px;
    width: 34px;*/
  }
  #cssmenu .submenu-button:after {
	position: absolute;
/*
    top: 22px;
    right: 19px;
    width: 8px;
    height: 2px;
    display: block;
    background: #ddd;
*/
	content: "";
	right: 13px;
	top: 35px;
	height: 2px;
	width: 10px;
	background: #404041;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
  }

  #cssmenu ul ul .submenu-button:after {
    top: 15px;
    right: 13px;
  }


  #cssmenu .submenu-button:before {
	position: absolute;
/*    top: 19px;
    right: 22px;
    display: block;
    width: 2px;
    height: 8px;
    background: #ddd;*/
	content: "";
	top: 35px;
	right: 7px;
	height: 2px;
	width: 10px;
	background: #404041;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
  }


  #cssmenu .submenu-button:hover:after,
  #cssmenu .submenu-button:hover:before {
    background: #fff;
  }

  #cssmenu .submenu-button:active:after,
  #cssmenu .submenu-button:active:before {
    background: #fff;
  }

  #cssmenu .submenu-button.submenu-opened:after,
  #cssmenu .submenu-button.submenu-opened:before {
    background: #fff;
  }



  #cssmenu ul ul .submenu-button:before {
    top: 12px;
    right: 16px;
  }
/*  #cssmenu .submenu-button.submenu-opened:before {
    display: none;
  }*/

  #cssmenu ul ul ul li.active a {
    border-left: none;
  }
  #cssmenu > ul > li.has-sub > ul > li.active > a,
  #cssmenu > ul ul > li.has-sub > ul > li.active > a {
    border-top: none;
  }





}

/*
https://codepen.io/zornetru/pen/aRvbEd
*/



#up{
    position: fixed;
    z-index: 50;
    bottom: 20px;
    right: 20px;
    display: none;
    width: 44px;
    text-align: center;
    height: 44px;
    cursor: pointer;
    -webkit-transition: background-color 200ms ease-out;
    -moz-transition: background-color 200ms ease-out;
    -o-transition: background-color 200ms ease-out;
    transition: background-color 200ms ease-out;
    font-size: 40px;
	background-color: #3596cd;
	color: #fff;
/*	box-shadow: 0 0 2px 2px rgba(255,255,255,0.5);*/
	border: solid 1px #fff;
	opacity: .8;
}

#up:hover{
	background: #3596cd;
	color: #fff;
	opacity: 1;
	}

#up i {
	display: block;
	}
