.h2 {
	font-size: 30px;
	line-height: normal;
	color: #3E4757;
	font-family: Neucha, sans-serif;
	margin-bottom: 20px;
}
.lnk-js { text-decoration: none; border-bottom: 1px dashed; }
.lnk-js:hover { border-bottom-color: transparent; }

.runners-text { margin-bottom: 4em; font-size: 16px; line-height: 22px; }

.runners-sum__value {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.runners-sum__value span {
	display: inline-block;
	position: relative;
	top: -.075em;
	margin-right: .25em;
	padding: .125em .5em;
	background: #a4c53b;
	font-size: 2em;
	color: #fff;
}

.runners-progress {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-box-pack: justify;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	font-size: 16px;
	line-height: 1.2;
}
.runners-progress__bar {
	display: block;
	margin-bottom: 10px;
	width: 100%;
	background: #f0f0f0;
	border: 1px solid #e0e0e0;
	border-radius: 20px;
	overflow: hidden;
}
.runners-progress__bar span {
	display: block;
	width: 0;
	height: 20px;
	background: #a4c53b;
	border-radius: 20px;
}
.runners-progress__value strong { display: block; font-size: 1.33em; }
.runners-progress__value strong span { font-weight: 400; font-size: 12px; }
.runners-progress__value + .runners-progress__value { text-align: right; }


.runners-index {
	padding-top: 4em;
}

.runners-index__header {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	margin-bottom: 4em;
}

.runners-index__header__img {
	-ms-flex: 0 0 40%;
	-webkit-flex: 0 0 40%;
	flex: 0 0 40%;
}

.runners-index__header__img figure {
	display: block;
	position: relative;
	margin: 0;
	padding-bottom: 100%;
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 100%;
	box-shadow: 0 1em 3em -1em rgba(0, 0, 0, .75);
}

.runners-index__header__info {
	-ms-flex: 0 0 60%;
	-webkit-flex: 0 0 60%;
	flex: 0 0 60%;
	padding: 0 8%;
	text-align: center;
}

.runners-index__header__info .runners-sum__value {
	-webkit-box-pack: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	margin-left: 45px;
}

.runners-index__header__btn {
	margin-top: 3em;
}

.runners-index__header__btn .btn {
	padding-left: 1.5em;
	padding-right: 1.5em;
	width: auto;
	font-size: 1.25em;
	background: #4c9ac6;
	color: #fff;
}

.runners-index__header__btn .btn:hover {
	background: none;
	color: #4c9ac6;
}

.runners-grid {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	margin: 0 -15px;
}
.runners-grid__item {
	-ms-flex: 0 0 33.33%;
	-webkit-flex: 0 0 33.33%;
	flex: 0 0 33.33%;
	margin-bottom: 30px;
}
.runners-grid__item__body {
	display: block;
	margin: 0 15px;
	color: inherit;
	text-decoration: none;
}
.runners-grid__item__header { display: block; position: relative; }
.runners-grid__item__img {
	display: block;
	position: relative;
	padding-bottom: 100%;
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
	box-shadow: 0 .5em 1.5em -.75em rgba(0, 0, 0, .75);
}
.runners-grid__item__img:before {
	position: absolute;
	top: 25%;
	bottom: 0;
	left: 0;
	right: 0;
	content: "";
	background: -webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.5));
	background: -moz-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.5));
	background: -ms-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.5));
	background: -o-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.5));
	background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,.5));
}
.runners-grid__item__img img { display: none; }
.runners-grid__item__info { display: block; padding: .75em 15px 0; font-size: 16px; }
.runners-grid__item__info strong { display: block; font-size: 1.125em; }
.runners-grid .runners-progress {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 15px;
	color: #fff;
	font-size: 12px;
}
.runners-grid .runners-progress__bar {
	background: #fff;
	border-color: #fff;
	border-radius: 10px;
}
.runners-grid .runners-progress__bar span {
	height: 10px;
	border-radius: 10px;
}

.runners-register { max-width: 640px; }
.runners-register fieldset { margin: 0; padding: 0; border: 0; }
.runners-register__fields, .runners-register__field { margin: 0; padding: 0; list-style: none; }
.runners-register__fields {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	margin: 0 -15px;
}
.runners-register__field {
	-ms-flex: 0 0 100%;
	-webkit-flex: 0 0 100%;
	flex: 0 0 100%;
	margin-bottom: 30px;
}
.runners-register__field_detail_text {
	-ms-flex: 1 1 100%;
	-webkit-flex: 1 1 100%;
	flex: 1 1 100%;
}
.runners-register__field__body { padding: 0 15px; }
.runners-register__label { display: block; margin-bottom: .5em; font-weight: 700; }
.runners-register__control {}
.runners-register__control input,
.runners-register__control select,
.runners-register__control textarea {
	display: block;
	width: 100%;
	padding: .75em 15px .95em;
	background: #fff;
	border: 1px solid #cacaca;
	font-size: 16px;
	color: #5b5b5b;
	-webkit-transition: all .2s linear;
	-moz-transition: all .2s linear;
	-o-transition: all .2s linear;
	transition: all .2s linear;
	resize: none;
}
.runners-register__control input.is-invalid,
.runners-register__control select.is-invalid,
.runners-register__control textarea.is-invalid {
	border-color: red;
}
.runners-register__control input[type="checkbox"],
.runners-register__control input[type="radio"] {
	display: inline-block;
	width: auto;
	margin-right: 10px;
}
.runners-register__field_141,
.runners-register__field_143,
.runners-register__field_145,
.runners-register__field_148 {
	-ms-flex: 1 1 100%;
	-webkit-flex: 1 1 100%;
	flex: 1 1 100%;
}
.runners-register__field_141 .runners-register__field__body,
.runners-register__field_143 .runners-register__field__body,
.runners-register__field_145 .runners-register__field__body,
.runners-register__field_148 .runners-register__field__body {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}
.runners-register__field_141 .runners-register__label,
.runners-register__field_143 .runners-register__label,
.runners-register__field_145 .runners-register__label,
.runners-register__field_148 .runners-register__label {
	-ms-flex: 1 1 auto;
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
	-webkit-box-ordinal-group: 3;
	-moz-box-ordinal-group: 3;
	-ms-flex-order: 2;
	-webkit-order: 2;
	order: 2;
}

.runners-register div.is-invalid { margin-top: 4px; font-size: 12px; line-height: 1.2; color: red; }

.runners-detail__header {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-moz-box-align: start;
	-ms-flex-align: start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	margin-bottom: 3em;
}
.runners-detail__header figure {
	-ms-flex: 0 0 35%;
	-webkit-flex: 0 0 35%;
	flex: 0 0 35%;
	margin: 0 5% 0 0;
}
.runners-detail__header figure img { display: block; margin: 0; }
.runners-detail__header__sub {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-box-align: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-box-pack: justify;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.runners-detail__header__body {
	-ms-flex: 1 1 auto;
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
}
.runners-detail__header__body h1 { margin-bottom: 0; }
.runners-detail__header__body h2 { margin-right: 15px; color: #337da9; }
.runners-detail__descr { margin-bottom: 2em; padding-bottom: 2em; border-bottom: 1px solid #e0e0e0; }
.runners-detail__child { margin-bottom: 2em; padding-bottom: 2em; border-bottom: 1px solid #e0e0e0; }
.runners-detail__child:after { display: block; clear: both; content: ""; }
.runners-detail__child__img { float: right; margin: 0 0 1em 1em; max-width: 25%; }
.runners-detail__child__img img { display: block; width: 100%; margin: 0; }
.runners-detail__child__more { margin-top: 2em; }
.runners-detail__share { margin-bottom: 20px; }
.runners-detail__share ul { margin: 0 -5px 0 0; }
.runners-detail__share ul:after { display: none; }
.runners-detail__share .ya-share2__container_size_m .ya-share2__item { margin: 0 5px 0 0 !important; }
.runners-detail__btns {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-box-align: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	margin-right: -30px;
}
.runners-detail__btns a { margin: 20px 30px 0 0; }

.runners-detail_short .runners-detail__header { display: block; }
.runners-detail__header__body h1 { margin-bottom: 0; }
.runners-detail__header__body h2 { margin-right: 15px; color: #337da9; }


.grid-donations {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	margin: 0 -5px;
	font-size: 16px;
	line-height: 1.2;
}
.grid-donations__item {
	-ms-flex: 0 0 33.33%;
	-webkit-flex: 0 0 33.33%;
	flex: 0 0 33.33%;
}
.grid-donations__item__body {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 5px;
	border: 1px solid #e0e0e0;
	height: calc(100% - 10px);
}
.grid-donations__item__info {
	-ms-flex: 1 1 auto;
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
	padding: 10px;
	font-weight: 700;
}
.grid-donations__item__info span {
	display: block;
	font-weight: 400;
	font-size: 14px;
	color: #999;
}
.grid-donations__item__info-descr { margin-top: 5px; font-size: 12px; font-weight: 400; }
.grid-donations__item__sum {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-ms-flex: 0 0 auto;
	-webkit-flex: 0 0 auto;
	flex: 0 0 auto;
	padding: 0 15px;
	background: #a4c53b;
	font-weight: 700;
	font-size: 18px;
	color: #fff;
}

.runners-donation {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-top: 3em;
}
.runners-donation__form {
	flex: 1 1 auto;
	max-width: 100%;
}

.runners-donation__person {
	flex: 0 0 360px;
	padding-left: 30px;
}

.runners-paymemt-methods {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	margin: 0 -15px -15px 0;
}
.runners-paymemt-methods__item { position: relative; margin: 0 15px 15px 0; }
.runners-paymemt-methods__item-control { position: absolute; top: 0; left: 0; width: 1px; height: 1px; opacity: 0; }
.runners-paymemt-methods__item-label { display: block; cursor: pointer; font-size: 12px; color: #999; }
.runners-paymemt-methods__item-label-img { display: block; width: 138px; height: 60px; background: #fff 50%/100% no-repeat; border: 3px solid #eee; border-radius: 10px; }
.runners-paymemt-methods__item-label-caption { display: block; margin: 2px 10px 0; }
.runners-paymemt-methods__item-control:checked + .runners-paymemt-methods__item-label .runners-paymemt-methods__item-label-img { border-color: #a4c53b; }

@media (max-width: 1023px){
	.runners-grid__item {
		-ms-flex: 0 0 50%;
		-webkit-flex: 0 0 50%;
		flex: 0 0 50%;
	}
	.grid-donations__item {
		-ms-flex: 0 0 50%;
		-webkit-flex: 0 0 50%;
		flex: 0 0 50%;
	}
}

@media (max-width: 767px){
	.runners-index { padding-top: 2em; }
	.runners-index__header {
		display: block;
	}
	.runners-index__header__img figure {
		margin: -2em -15px 2em;
		padding-bottom: 56.25%;
		border-radius: 0;
		box-shadow: none;
	}
	.runners-index__header__btn {
		margin-top: 1.5em;
	}
	.grid-donations__item {
		-ms-flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		flex: 0 0 100%;
	}
	.runners-register__field {
		-ms-flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		flex: 0 0 100%;
		margin-bottom: 15px;
	}

	.runners-detail__header {
		display: block;
	}
	.runners-detail__header figure {
		margin: 0 -15px 1em;
	}
	.runners-detail__child__img { float: none; margin: 0 0 1em; max-width: 100%; }
	.runners-detail__child__img img { margin: 0 auto; }

	.runners-donation { display: block; }
	.runners-donation__person {
		margin: 3em auto 0;
		padding: 0;
		max-width: 360px;
	}
}

@media (max-width: 639px){
	.h2 {
		font-size: 18px;
	}
	.runners-text { font-size: 14px; line-height: 20px; }
	.runners-grid__item {
		-ms-flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		flex: 0 0 100%;
	}
	.runners-index__header__info { padding: 0; }
	.runners-index__header__info h1 { text-align: center; }
	.runners-sum__value span { font-size: 1.5em; }
	.runners-index__header__btn .btn { display: block; font-size: 1em; }
	.runners-index__header__info .runners-sum__value { margin-left: 0; }
}