html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, strike, strong, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
*, *:after {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body {
  background: #eae8e9;
}
@font-face {
  font-family: 'Fira Sans';
  src: url('../fonts/firasans-bold-webfont.woff2') format('woff2'), url('../fonts/firasans-bold-webfont.woff') format('woff');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'Fira Sans';
  src: url('../fonts/firasans-bolditalic-webfont.woff2') format('woff2'), url('../fonts/firasans-bolditalic-webfont.woff') format('woff');
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: 'Fira Sans';
  src: url('../fonts/firasans-extrabold-webfont.woff2') format('woff2'), url('../fonts/firasans-extrabold-webfont.woff') format('woff');
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: 'Fira Sans';
  src: url('../fonts/firasans-extrabolditalic-webfont.woff2') format('woff2'), url('../fonts/firasans-extrabolditalic-webfont.woff') format('woff');
  font-weight: 800;
  font-style: italic;
}
@font-face {
  font-family: 'Fira Sans';
  src: url('../fonts/firasans-medium-webfont.woff2') format('woff2'), url('../fonts/firasans-medium-webfont.woff') format('woff');
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: 'Fira Sans';
  src: url('../fonts/firasans-mediumitalic-webfont.woff2') format('woff2'), url('../fonts/firasans-mediumitalic-webfont.woff') format('woff');
  font-weight: 600;
  font-style: italic;
}
@font-face {
  font-family: 'Fira Sans';
  src: url('../fonts/firasans-italic-webfont.woff2') format('woff2'), url('../fonts/firasans-italic-webfont.woff') format('woff');
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: 'Fira Sans';
  src: url('../fonts/firasans-regular-webfont.woff2') format('woff2'), url('../fonts/firasans-regular-webfont.woff') format('woff');
  font-weight: 400;
  font-style: normal;
}
blockquote, q {
  quotes: none;
}
ol, ul {
  list-style: none;
}
input {
  vertical-align: middle;
}
table, th, td {
  border: 0 none;
}
table {
  border-collapse: separate;
  border-spacing: 0;
}
th, td {
  padding: 0;
}
caption, th, td {
  text-align: left;
  font-weight: normal;
}
table, td {
  vertical-align: top;
}
th {
  vertical-align: top;
  font-weight: bold;
}
a {
  text-decoration: none;
  color: #1a1a1a;
}
html, body {
  height: 100%;
  font-family: 'Fira Sans', sans-serif;
}
.layout_main {
  max-width: 1296px;
  margin-left: auto;
  margin-right: auto;
}
/*.main_content {display: flex; flex-direction: column; flex-wrap: nowrap;}*/
.header_wrapper {
  height: 57px;
}
.news_layout .header_wrapper, .article_layout .header_wrapper {
  height: 62px;
}
.header {
  background: #7e0019;
  padding: 12px 0;
  border-bottom: #7e0019 1px solid;
}
.main_logo {
  text-align: center;
}
.main_logo_link {
  display: block;
  width: 308px;
  margin: 4px auto 0 auto;
}
.main_logo_info {
  font-size: 11px;
  text-transform: uppercase;
  color: #fff;
  position: relative;
  top: -4px;
  margin: 0 auto;
  width: 308px;
}
.header_small {}
.top_all_sections {
  float: left;
  margin: -4px 0 0 12px;
  cursor: pointer;
  position: relative;
  font-size: 0;
}
.top_all_sections .top_menu_link {
  display: inline-block;
  font-size: 20px;
  min-width: 24px;
  height: 34px;
  text-align: center;
  vertical-align: top;
  color: #111;
  display: flex;
  align-items: center;
  height: 36px;
}
.top_all_sections span.options_text {
/*  margin-top: 7px;*/
}
.options_text {
  display: inline-block;
  text-align: center;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
/*  margin-top: 7px;*/
  padding: 0 12px;
  vertical-align: top;
  color: #fff;
  cursor: pointer;
}
.top_all_sections .icon-menu {
  display: inline-block;
  width: 24px;
  height: 26px;
  padding: 0;
  position: relative;
  top: -1px;
}
.top_all_sections .icon-menu > span {
  position: absolute;
  top: 50%;
  left: 0;
  width: 24px;
  height: 3px;
  background-color: #fff;
}
.top_all_sections .icon-menu > span:before, .top_all_sections .icon-menu > span:after {
  position: absolute;
  content: '';
  width: 24px;
  height: 3px;
  background-color: #fff;
  left: 0;
}
.top_all_sections .icon-menu > span:before {
  transform: translateY(-6px);
}
.top_all_sections .icon-menu > span:after {
  transform: translateY(6px);
}
*, *:before, *:after {
  box-sizing: border-box;
  outline: none;
}
.modal-active .top_all_sections .icon-menu > span:before {
  transform: rotate(-45deg);
}
.modal-active .top_all_sections .icon-menu > span:after {
  transform: rotate(45deg);
}
.modal-active .top_all_sections .icon-menu > span {
  background: none;
}
.top_options {
  float: right;
  font-size: 0;
  margin: -4px 12px 0 0;
  display: flex;
  align-items: center;
  height: 36px;
}
.top_options .top_options_item {
  display: inline-block;
/*  height: 34px;*/
}
.top_options .options_text_active {
  opacity: 0.5;
}
.menu_wrapper {
  position: relative;
}
.modal_local {
  position: absolute;
  top: 41px;
  left: 0;
  z-index: 999;
  display: none;
  width: 100%;
  min-width: 300px;
  margin: 0;
  background: #2e2e2e;
  color: #fff;
  padding: 0 0 60px;
  -webkit-box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.36);
  -moz-box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.36);
  box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.36);
}
.news_layout .modal_local, .article_layout .modal_local {
  top: 46px;
}
.fixed .modal_local {
  top: 49px;
}
.wide_nav {
  padding: 0 20px;
}
.menu_title {
  padding: 0px 0 13px 0;
  font-size: 10px;
  text-transform: uppercase;
  opacity: 0.5;
}
.modal-active .header {
  background: #2e2e2e;
  border-bottom: #2e2e2e 1px solid;
}
/* ---- */
.side_menu__wrapper {
  margin: 0 -13px 0 -13px;
  width: calc(100% - 40px);
  padding: 30px 20px 20px 20px;
}
.side_menu {
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
.block_menu {
  border: none;
  width: calc(100% / 4);
  padding: 0 20px 0 20px;
  margin-bottom: 20px;
  position: relative;
  border-right: #626265 1px solid;
}
/*.block_menu:last-child {width: calc(100% / 2); border: none;}*/
.block_menu:last-child {
  border: none;
}
.top_menu {
  font-size: 18px;
  text-transform: uppercase;
  padding: 0 15px 0 0;
  overflow: hidden;
  text-align: left;
  font-weight: 700;
}
.top_menu__item {
  display: block;
  position: relative;
  padding: 0 12px 10px 0;
}
.top_menu__link {
  color: #fff;
}
.top_menu__link_active {
  color: #900022;
}
.top_menu__link:hover {
  opacity: 0.82;
}
.top_menu__link_selected {
  color: #900022;
}
.top_menu_sp {
  font-size: 18px;
  text-transform: uppercase;
  padding: 0 15px 0 0;
  overflow: hidden;
  text-align: left;
  font-weight: 400;
}
.top_menu_sp__item {
  display: block;
  position: relative;
  padding: 0 12px 10px 0;
}
.top_menu_sp__link {
  color: #fff;
}
.top_menu_sp__link_active {
  color: #900022;
}
.top_menu_sp__link:hover {
  opacity: 0.82;
}
.top_menu_sp__link_selected {
  color: #900022;
}
.top_menu_th {
  font-size: 13px;
  padding: 0 15px 0 0;
  overflow: hidden;
  text-align: left;
  font-weight: 400;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
.top_menu_th__item {
  display: block;
  position: relative;
  padding: 0 12px 10px 0;
  width: 100%;
}
.top_menu_th__link {
  color: #fff;
}
.top_menu_th__link_active {
  color: #900022;
}
.top_menu_th__link:hover {
  opacity: 0.82;
}
.top_menu_th__link_selected {
  color: #900022;
}
.block_project_menu {
  border-bottom: none;
  border-top: #111 1px solid;
  display: none;
}
.block_project_menu .menu_title {
  padding: 30px 20px 0 20px;
}
/* ---- */
.layout_content {
  width: 100%;
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 2;
}
.main_header {
  text-align: center;
  padding: 80px 20px;
}
.main_header_title_sm {
  font-size: 17px;
  font-weight: 600;
}
.main_header_title_sm a:hover {
  color: #900022;
}
.main_header_title {
  font-size: 47px;
  font-weight: 800;
  text-transform: uppercase;
  padding: 10px 0;
}
.cab_header_title {
  font-size: 30px;
  font-weight: 800;
  padding: 10px 0 5px 0;
}
.cab_header_title_sm {
  font-size: 17px;
  font-weight: 400;
  padding: 0 0 5px 0;
}
.main_footer {
  text-align: center;
  padding: 50px 20px;
}
.main_content {
  background: #fff;
  padding: 30px 20px;
}
.content_wrapper {
  padding: 20px 120px;
}
.form_step {
  font-size: 24px;
  font-weight: 800;
  text-transform: uppercase;
  position: relative;
  margin: 15px 0;
}
.form_step > span {
  display: inline-block;
  width: 34px;
  height: 34px;
  font-size: 14px;
  line-height: 34px;
  text-align: center;
  color: #fff;
  background: #7e0019;
  border-radius: 50%;
  position: absolute;
  left: -55px;
  top: -7px;
}
.form_step.disabled {
  color: #888;
}
.form_step.disabled > span {
  background: #888;
}

.form_title {
  font-size: 24px;
  font-weight: 800;
  text-transform: uppercase;
  position: relative;
  margin: 15px 0;
}

.form_title a{
  color: #900022;
}

.form_title .status_inf{
  text-transform: initial;
  font-size: 19px;
}

.content_wrapper input, .content_wrapper select {
  border: #c6c6c6 1px solid;
  background: none;
  padding: 5px;
  font-weight: normal;
  width: 100%;
  margin-bottom: 12px;
  font-size: 16px;
  font-family: 'Fira Sans', sans-serif;
}

.content_wrapper .error input {
  border: #900022 1px solid;
}


.content_wrapper input:disabled, .content_wrapper select:disabled {
  border: #aaa 1px solid;
  color: #666;
  background: none;
  padding: 0px 10px;
  width: 100%;
  margin-bottom: 12px;
  font-size: 16px;
}

.content_wrapper input.no_edit, .content_wrapper select.no_edit {
  border: #fff 1px solid;
  margin-bottom: 0;
	color: #111;
}

.content_wrapper input::-webkit-input-placeholder {
  color: #888;
  font-weight: 400;
}
.content_wrapper input::-moz-placeholder {
  color: #888;
  font-weight: 400;
}
.content_wrapper input:-ms-input-placeholder {
  color: #888;
  font-weight: 400;
}
.content_wrapper input:-moz-placeholder {
  color: #888;
  font-weight: 400;
}
.input_block {
  margin: 0 0 12px 0;
  position: relative;
}
.input_block input {
  display: block;
  padding: 0 10px;
  height: 46px;
  background: none;
  font-size: 16px;
  color: #000;
  outline: none;
  outline: none;
  position: relative;
  z-index: 1;
  font-family: sans-serif;
}
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px white inset !important;
}
.input_block label {
  display: block;
  width: 100%;
  height: 46px;
  position: absolute;
  top: 0;
  left: 10px;
}
.input_desc {
  font-size: 12px;
  color: #666;
  line-height: 1em;
  padding-bottom: 12px;
}

.error .input_desc {
  color: #900022;
	font-weight: 700;
}

.input_block label span {
  display: block;
  height: 24px;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  transition: all 0.2s ease;
  font-size: 16px;
  line-height: 24px;
  color: #666;
  position: absolute;
  top: 12px;
  left: 7px;
  background: #fff;
  padding: 0 3px;
  z-index: 2;
  pointer-events: none;
}
.input_block input:focus + label span {
  font-size: 12px;
  top: -11px;
}
.has_value + label span {
  font-size: 12px;
  top: -11px;
}
.input_wrapper {
  width: calc(100% + 20px);
  margin-left: -10px;
  margin-right: -10px;
  display: flex;
  flex-flow: row wrap;
}
.input_block {
  width: 100%;
  padding-left: 10px;
  padding-right: 10px;
}
.input_block_2 {
  width: 50%;
}
.content_wrapper .form_button {
  border: #7e0019 1px solid;
  background: #7e0019;
  color: #fff;
  display: inline-block;
  font-size: 22px;
  height: 55px;
  text-align: center;
  padding: 0 20px;
  vertical-align: top;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0px 3px 13px 0px rgba(17, 17, 17, 0.1);
	font-family: 'Fira Sans', sans-serif;
	width: 100%;
	border-radius: 30px;
}

.content_wrapper .form_button_white {
	border-color: #fff;
	background: #fff;
	font-size: 17px;
	text-transform: none;
	color: #900022;
	font-weight: normal;
	height: 46px;
}
.input_block_amount {
  padding: 0;
  width: 50%;
  display: none;
}
.input_block_amount label span {
  left: 0;
}
.input_block_amount input {
  font-weight: 700;
  margin-top: 10px;
}
.input_block_amount label {
  font-weight: normal;
}
.form_button:hover {
  opacity: 0.86;
}
.input_block_pad {
  padding-top: 12px;
}
.form_registration {
  margin-bottom: 20px;
}
.form_registration_social {
  margin-bottom: 50px;
}
.form_support {
  margin-bottom: 50px;
}
.text_block_1 {
  padding: 25px;
  text-align: center;
  font-weight: 700;
}
.text_block_1 a {
  color: #900022;
  border-bottom: #e6ccd2 1px solid;
}
.text_block_2 {
  line-height: 1.3em;
}
.text_block_2 a {
  color: #900022;
  border-bottom: #e6ccd2 1px solid;
}

.text_block_3 {
  padding: 6px 0;
  font-size: 13px;
  line-height: 1.3em;
}
.text_block_3 a {
  color: #900022;
  border-bottom: #e6ccd2 1px solid;
}
.input_wrapper .text_block_3 {padding: 0 10px 10px 10px;}
.subheader {
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
}
.copy {
  font-size: 12px;
  padding: 15px 0;
}
.social_wrapper {
  width: calc(100% + 20px);
  margin-left: -10px;
  margin-right: -10px;
  display: flex;
  flex-flow: row wrap;
  padding: 20px 0;
}
.social_button {
  margin-left: 10px;
  margin-right: 10px;
  width: calc(100% / 3 - 20px);
  box-shadow: 0px 3px 13px 0px rgba(17, 17, 17, 0.1);
  padding: 10px 10px;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
	border-radius: 30px;
}
.social_button_img {
  width: 41px;
  height: 41px;
  border: #111 1px solid;
  border-radius: 50%;
  margin-right: 12px;
}
.social_button_img svg {
  width: 39px;
  height: 39px;
}
.social_button_desc {
  font-size: 16px;
  font-weight: 700;
}

.social_button_desc > span {font-size: 13px; color: #900022; border-bottom: #e6ccd2 1px solid; font-weight: normal;}
.social_button:hover {
  color: #900022;
}
.social_button:hover svg {
  fill: #900022;
}
.social_button:hover .social_button_img {
  border-color: #900022;
}

.social_button.active  .social_button_img {border-color: #900022;}
.social_button.active svg {
    fill: #900022;
}

.spacer {
  margin-top: 80px;
}
.spacer_sm {
  margin-top: 20px;
}
.spacer_m {
  margin-top: 40px;
}
.layout_bg {
  position: relative;
}
.bg1 {
  width: 100%;
  height: 100%;
  position: absolute;
  background-image: url("../images/icons/bg2.jpg");
	background-color: #eae8e9;
 /* background-position: 58% 0%;*/
	background-position-x: calc(50% + 300px);
  background-repeat: no-repeat;
}
.bg2 {
/*  width: 100%;
  height: 500px;
  position: absolute;
  bottom: 0;
  background-image: url("../images/icons/bg2.png");
  background-position: 48% bottom;
  background-repeat: no-repeat;*/
}
.options_wrapper {
  width: calc(100% + 20px);
  margin-left: -10px;
  margin-right: -10px;
  display: flex;
  flex-flow: row wrap;
  padding: 30px 0;
}
.options_item {
  width: 50%;
  padding-left: 10px;
  padding-right: 10px;
}
.options_title {
  padding: 0px 0 12px 0;
}
.form_support input[type="radio"] {
  display: none;
}
.form_support label.radio_label {
  font-size: 1rem;
  line-height: 1.4em;
  cursor: pointer;
  display: block;
  padding: 6px 10px 6px 35px;
  position: relative;
  white-space: no-wrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: all 0.15s ease;
  margin-top: -1px;
  font-weight: 700;
}
.form_support label.radio_label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1px solid #111;
}
.form_support input:hover + label.radio_label:before {
  background: #fff;
  border-width: 2px;
}
.form_support input:checked + label.radio_label:before {
  background: #7e0019;
  border-color: #7e0019;
}
.button_group input {
  display: none;
}
.button {
  display: inline-block;
  vertical-align: middle;
  font-family: inherit;
  padding: 14px;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0;
  font-size: 16px;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #fff;
  color: #111;
}
.button_group input:checked + label, .button-group input:checked + label:active {
  background-color: #7e0019;
  color: #fff;
}
.button_group {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  /*padding: 6px 0;*/
  font-weight: 400;
	/*border: #111 1px solid;*/
	margin-bottom: 45px;
}
.button_group input, .button_group label {
  width: calc(100% / 3 - 2px);
  margin-left: 1px;
  margin-right: 1px;
	background: #e5e3e4;
}

.button_group input:nth-child(2), .button_group label:nth-child(2) {border-radius: 30px 0 0 30px;}

.button_group input:nth-child(6), .button_group label:nth-child(6) {border-radius: 0 30px 30px 0;}

.cab_menu {background: #fff; margin-bottom: 30px; padding: 5px;}

.cab_menu ul {
    font-size: 17px;
    line-height: 1.4em;
    text-transform: uppercase;
    padding-top: 10px;
    padding-bottom: 8px;
    overflow: hidden;
    text-align: center;
    font-weight: 800;
}

.cab_menu ul li {
    display: inline-block;
    position: relative;
    padding: 0 8px;
}

.cab_menu ul li.active a {
    color: #900022;
}

.cab_menu ul li a:hover {opacity: 0.86;}


.text_block_support {position: relative; font-size: 1.22em; padding: 15px 0 15px 32px;}

.text_block_support:before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1px solid #900022;
	background: #900022;
}

.text_block_support.disabled:before {
    border: 1px solid #888;
	background: #888;
}

.button_history {
	margin-top: 10px;
	width: 100%;
	display: inline-block;
    vertical-align: middle;
    font-family: inherit;
    padding: 14px;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    font-size: 16px;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #fff;
    color: #111;
	box-shadow: 0px 3px 13px 0px rgba(17, 17, 17, 0.1);
	border-radius: 30px;
}

.button_history > span {position: relative; top: 2px; left: 6px}

.complete {display: none; position: relative;}

.more img {transition: all 300ms ease-in 0s;}
.more img.cp {transform: rotate(180deg);}

.complete {padding: 12px 0;}
.payment_item {display: flex; font-size: 14px; border-bottom: #c6c6c6 1px solid; padding: 8px 0;}
.payment_date {width: 30%; padding: 0 10px;}
.payment_method {width: 30%; padding: 0 10px;}
.payment_tariff {width: 30%; padding: 0 10px;}
.payment_amount {width: 30%; padding: 0 10px; font-weight: 700; text-align: right;}

.community_card_amount {padding: 0 0 20px 0; font-size: 15px; font-weight: 700; text-align: center; text-transform: uppercase;}
.community_card_amount > span {font-size: 24px;}

.text_block_3 > span {display: inline-block; margin-right: 20px;}

.input_control {display: block; padding-bottom: 10px;}

.input_control.checkbox input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    width: 0.0625rem;
    height: 0.0625rem;
}
.input_control.checkbox .check {
    width: 1.625rem;
    height: 1.625rem;
    background-color: #ffffff;
    border: 1px #111 solid;
    padding: 0;
    position: relative;
    display: inline-block;
    vertical-align: middle;
}

.input_control.small_check .check {width: 20px; height: 20px; float: left;}

.input_control.checkbox .check:before {
    position: absolute;
    vertical-align: middle;
    color: transparent;
    font-size: 0;
    content: "";
    height: .3125rem;
    width: .565rem;
    background-color: transparent;
    border-left: .1875rem solid;
    border-bottom: .1875rem solid;
    border-color: transparent;
    left: 50%;
    top: 50%;
    margin-left: -0.325rem;
    margin-top: -0.365rem;
    display: block;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: all 0.2s linear;
}

.input_control.small_check .check:before {width: 10px; height: 6px; margin-left: -5px; margin-top: -4px; border-width: 3px;}

.input_control.checkbox input[type="checkbox"]:checked ~ .check:before {border-color: #900022; transition: all 0.2s linear;}

.input_control .caption {display: block; margin: 0 0 0 35px;}

.input_control .caption a {color: #900022; border-bottom: #e6ccd2 1px solid;}

.community_card {border: #900022 1px solid; padding: 20px 15px; margin-top: 25px;}

.community_card_title {font-size: 24px; font-weight: 800; text-transform: uppercase; color: #900022; text-align: center;}

.tips_wrapper {column-count: 2; padding: 20px 10px;}
.tips_item {padding: 5px 25px 5px 15px; position: relative; font-size: 15px;}

.tips_item:before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #111;
    position: absolute;
    left: -3px;
    top: 8px;
    z-index: 2;
}



input[type="checkbox"] {
    display: none;
}
input[type="checkbox"] + label {
    cursor: pointer;
    padding-left: 45px;
    position: relative;
    line-height: 40px;
	font-size: 15px;
	user-select: none;   
}
input[type="checkbox"] + label::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: -4px;
    left: 0;
    vertical-align: middle;
    padding: 0;
    height: 24px;
    width: 36px;
    margin: 0 5px 0 0;
    border: 1px solid #111;
    border-radius: 12px;
    /* background: #dddddd;*/
}
input[type="checkbox"] + label::before,
input[type="checkbox"] + label::after {
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
}
input[type="checkbox"] + label::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 4px;
    width: 16px;
    height: 16px;
    border-radius: 22px;
    background: #111;
    /* border: 1px solid #900022; */
    /* box-shadow: 0 3px 3px rgba(140, 140, 140, .1);*/
}
input[type="checkbox"]:checked + label::before {
	background: #fff;
    border-color: #111;
}
input[type="checkbox"]:checked + label::after {
	left: 16px;
    background: #900022;
}

.mail_card {box-shadow: 0px 3px 13px 0px rgba(17, 17, 17, 0.1); padding: 15px; position: relative; margin-bottom: 25px;}
.mail_card .link {position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    z-index: 1;
	cursor: pointer;
}
.mail_title {font-size: 22px; font-weight: 700; padding-top: 10px;}
.mail_description {font-size: 15px; line-height: 1.2em; padding-top: 8px;}


.event_card {box-shadow: 0px 3px 13px 0px rgba(17, 17, 17, 0.1); padding: 15px; position: relative; margin-bottom: 25px;}
.event_card .link {position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    z-index: 1;
	cursor: pointer;
}
.event_title {font-size: 28px; font-weight: 700; padding-top: 10px;}
.event_description {font-size: 15px; line-height: 1.2em; padding-top: 8px;}
.event_date {font-size: 1.3em; color: #900022; font-weight: 400; padding-top: 8px;}
.event_place {font-size: 15px; color: #900022; font-weight: 400; padding-top: 6px;}
.event_button {background: #7e0019; padding: 8px 16px; color: #fff; border: none; font-family: 'Fira Sans', sans-serif; margin: 15px 0; border-radius: 20px;}
/*.event_card:hover .event_button {opacity: 0.86;}*/
.event_card:hover .event_title {color: #900022;}

.event_media_wrapper {margin-bottom: 7px;}
.event_media_wrapper img {width: 100%; height: auto;}

.contacts_card {/*box-shadow: 0px 3px 13px 0px rgba(17, 17, 17, 0.1); padding: 15px; */position: relative; margin-bottom: 25px;}
.contacts_title {font-size: 22px; font-weight: 700; padding-top: 10px;}
.contacts_description {font-size: 15px; line-height: 1.2em; padding: 8px 0 10px 0;}
.contacts_mail {font-size: 19px; font-weight: 700; padding: 10px 0;}
.contacts_mail a {color: #900022; border-bottom: #e6ccd2 1px solid;}

.poll_card {box-shadow: 0px 3px 13px 0px rgba(17, 17, 17, 0.1); padding: 15px; position: relative; margin-bottom: 25px;}
.poll_card .link {position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    z-index: 1;
	cursor: pointer;
}
.poll_title {font-size: 22px; font-weight: 700; padding-top: 10px;}
.poll_description {font-size: 15px; line-height: 1.2em; padding-top: 8px;}
.poll_date {font-size: 1.3em; color: #900022; font-weight: 400; padding-top: 6px;}
.poll_place {font-size: 15px; color: #900022; font-weight: 400; padding-top: 6px;}
.poll_button {background: #7e0019; padding: 8px 16px; color: #fff; border: none; font-family: 'Fira Sans', sans-serif; margin: 15px 0; border-radius: 20px;}
.poll_card:hover .poll_button {opacity: 0.86;}

.articles_wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	margin-left: -12px;
	margin-right: -12px;
}

.article_grid {
    width: calc(50% - 24px);
    margin: 0 12px 24px 12px;
	box-shadow: 0px 3px 13px 0px rgba(17, 17, 17, 0.1);
	transition: all 300ms ease-in 0s;
}

.article_grid .article_body {
    position: relative;
}

.article_media_wrapper {
    position: relative;
}

.article_grid .article_media_wrapper img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

.article_grid .article_header {
    font-size: 1.22em;
    padding: 13px 0 5px 0;
    line-height: 1.1em;
	font-weight: 700;
}

.article_grid .article_author {
    font-size: 12px;
    text-transform: uppercase;
    color: #888;
    padding: 5px 0;
    line-height: 1.1em;
    font-weight: 300;
}

.article_grid .article_header a:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    z-index: 2;
}

.article_grid .article_content {padding: 4px 15px 15px 15px;}

.article_grid .article_body:hover .article_header a {
    color: #900022;
}

.article_grid .article_body:hover .article_close {
    opacity: 1;}

.article_close {
  position: absolute;
  right: 10px;
  top: 10px;
  width: 26px;
  height: 26px;
  opacity: 1;
  background-color: rgba(1, 1, 1, .25);
	border-radius: 50%;
	opacity: 0;
	transition: all 300ms ease-in 0s;
	z-index: 3;
}
.article_close:hover {
  background-color: rgba(126, 1, 25, 1);
}
.article_close:before, .article_close:after {
  position: absolute;
  top: 5px;
  left: 12px;
  content: ' ';
  height: 16px;
  width: 2px;
  background-color: #fff;
}
.article_close:before {
  transform: rotate(45deg);
}
.article_close:after {
  transform: rotate(-45deg);
}

.pagination {padding-top: 20px;}

.pagination li {
    display: inline-block;
    position: relative;
    padding: 0 5px;
}

.pagination li a {padding: 8px 8px;}

.pagination li.active a {font-weight: 800; color: #900022;}

.form_disable_ads {margin-top: 30px;}

.mail_save {margin: -10px 0 18px 0; height: 15px;}
.mail_save_text {display: none; font-weight: 700; color: #900022;}



.subheader {
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
}

.button_auth_link {
  margin-top: 10px;
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  font-family: inherit;
  padding: 14px;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #fff;
  color: #900022;
  box-shadow: 0px 3px 13px 0px rgba(17, 17, 17, 0.1);
  border-radius: 30px;
  margin: 20px 0 60px 0;
}

/* ---- */

@media screen and (min-width: 1024px) {
.form_step {
    font-size: 28px;
    line-height: 0.9em;
}
	.form_title {
    font-size: 26px;
}
}

@media screen and (max-width: 1024px) {
  .block_menu {
    border: none;
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
    position: relative;
  }
}
@media screen and (max-width: 768px) {
  .top_all_sections span.options_text {
    display: none;
  }
  .main_header_title {
    font-size: 36px;
  }
  .content_wrapper {
    padding: 20px 0 20px 0;
  }
  .form_step > span {
    position: relative;
    left: 0;
    top: -5px;
    margin-right: 12px;
  }
  .bg1 {
    background-position-x: calc(50% + 250px);
  }
	
	  .options_item {
    width: 100%;
  }
	
	  .button_group input, .button_group label {
    width: calc(100% - 20px);
text-align: left;
	  position: relative;
	  font-weight: 700;
	      font-size: 1rem;
    line-height: 1.4em;
    cursor: pointer;
    display: block;
    padding: 6px 10px 6px 35px;
    position: relative;
    white-space: no-wrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: all 0.15s ease;
    margin-top: -1px;
    font-weight: 700;
	  margin-left: 0;
	  margin-right: 0;
  }
	
	.button_group label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1px solid #111;
}
	
	.button_group input:checked + label:before {
    background: #7e0019;
    border-color: #7e0019;
}
	
	.button_group {border: none;}
	.button_group input:checked + label, .button-group input:checked + label:active {background: none; color: #111;
	}
	
	.social_button {width: 100%; margin-bottom: 18px;}
	
	.button_group input, .button_group label {background: #fff;}
	
}


@media screen and (max-width: 690px) {
  .bg1 {
    background-image: url("../images/icons/bg2.jpg");
    background-position: 50% 0%;
    background-size: 1400px auto;
  }
  .main_header {
    text-align: center;
    padding: 180px 20px 60px 20px;
  }
}

@media screen and (max-width: 480px) {
  .main_content {
    padding: 15px 20px;
  }
  .top_options .options_text {
    font-size: 10px;
  }
  .input_block_2 {
    width: 100%;
  }
  .content_wrapper input, .content_wrapper select {
    margin-bottom: 6px;
  }
  .social_button_img {
/*    margin-right: auto;
    margin-left: auto;*/
  }
  .social_button_desc {
    text-align: center;
    /*width: 100%;*/
    padding-top: 5px;
  }
  .text_block_1 {
    padding: 10px 10px 20px 10px;
  }
  .input_block_pad {
    padding-top: 0;
  }
  .social_button_desc {
    /*font-size: 12px;*/
  }
  .social_button {
    padding: 8px;
  }



  .options_wrapper .options_item:first-child {
    padding-bottom: 30px;
  }
	
	.cab_menu ul {
	overflow-x: scroll;
    overflow-y: visible;
    white-space: nowrap;
    width: 100%;
    -webkit-overflow-scrolling: touch;
    display: block;
	}
	
.payment_date {width: 60%;}
.payment_method {display: none;}
.text_block_3 > span {width: 100%; display: block; margin-bottom: 6px;}
.tips_wrapper {column-count: 1;}
.article_grid {width: calc(100% - 24px);}
	
.event_title {font-size: 22px;}
	
.event_media_wrapper {margin-bottom: 7px; margin-left: -15px; margin-right: -15px; margin-top: -15px;}
	
}

@media screen and (max-width: 375px) {
.header.header_small .top_options {
    margin-top: -4px;
}
.header.header_small .top_all_sections {
    margin-top: -6px;
}
}
	
@media screen and (max-width: 360px) {
  .main_logo_link {
    width: 190px;
  }
  .top_options {
    margin: 0 10px 0 0;
  }
  .top_all_sections {
    margin: 0 0 0 12px;
  }
  .options_text {
    padding: 0;
  }
  .main_header_title {
    font-size: 32px;
  }
  .bg1 {
    background-position: 50% 0%;
  }
	
	
}
@media screen and (min-width: 360px) {
  .header.fixed .main_logo_link {
    width: 220px;
  }
  .header.fixed .top_all_sections, .header.fixed .top_options {
    margin-top: 2px;
  }
  .header.fixed .main_logo_info {
    display: none;
  }
  .header.header_small .main_logo_link {
    width: 190px;
  }
  .header.header_small .top_all_sections, .header.header_small .top_options {
    margin-top: -4px;
  }
  .header.header_small .main_logo_info {
    display: none;
  }
}

.error_list{
  text-align: center;
  padding: 20px 0px 0px 0px;
  z-index: 1;
  position: relative;
  color: #7e0019;
}

.error_list li{
  margin: 5px 0px;
}

.main_footer{
  position: relative;
  z-index: 1;
}

.form_disable_ads {
  margin-top: 30px;
}

.form_button.checkout,
.form_button.change_amount{
  display: none;
}