body {
    -ms-text-size-adjust: 100%;
        -moz-text-size-adjust: 100%;
        -webkit-text-size-adjust: 100%;
 
    -webkit-appearance: none;
    -moz-appearance: none;
    font-family: "Avenir Next Cyr";
    font-style: normal;
    font-weight: 500;
}
body button, textarea, input[type="submit"],input[type="button"], input[type="text"] {
    -webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
body {
  background: #f4f8fb;
}
.transition {
  transition: all 0.3s linear 0s;
}
.inside {
  width: 1080px;
  max-width: 98%;
  margin: 0 auto;
  position: relative;
}
.flex {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6 */
  display: -moz-box;
  /* OLD - Firefox 19- (buggy but mostly works) */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Chrome */
  display: flex;
  /* NEW, Spec - Opera 12.1, Firefox 20+ */
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.flex-sa {
  justify-content: space-around;
}
.flex-t {
  align-items: flex-start;
}
.flex-l {
  justify-content: flex-start;
}
.flex-e {
  align-items: flex-end;
}
#header .logo-text {
  color: #fff;
  font: 36px/1.2 "DomkratBold";
}
#header .logo-text span {
  text-transform: none;
  font: 16px/1 "Avenir Next Cyr";
}
#header .logo img {
  display: block;
}
#header .logo a {
  display: block;
}
.full-width {
  width: 1920px;
  max-width: 100%;
  margin: 0 auto;
}
.banner-position-top {
  text-align: center;
  padding: 12px 0 12px;
  background: #fff;  
}
#header {
  border-top: 1px solid #ebebeb;
  border-bottom: 1px solid #ebebeb;
  background: #fff;
  padding: 27px 0;
}
#header #toggler-wrapper {
  display: none;
}
#header #toggler-wrapper #toggler {
  position: relative;
  width: 44px;
  height: 26px;
  cursor: pointer;
}
#header #toggler-wrapper #toggler > span {
  width: 44px;
  height: 5px;
  margin-bottom: 5px;
  border-radius: 3px;
  background: #f9253f;
  display: block;
  z-index: 100;
}
#header #toggler-wrapper #toggler span.hide {
  margin-bottom: 0 !important;
}
#header #toggler-wrapper #toggler.open .left {
  transform: rotate(-45deg);
  top: 10px;
  left: 0;
  position: absolute;
}
#header #toggler-wrapper #toggler.open .right {
  transform: rotate(45deg);
  top: 10px;
  left: 0;
  position: absolute;
}
#header #toggler-wrapper #toggler.open .hide {
  display: none;
}
#header .nav li {
  margin-left: 58px;
}
#header .nav li a {
  font-size: 18px;
  color: #424543;  
  display: block;
  padding: 1px 0;
  border-bottom: 1px solid transparent;
  text-decoration: none;
  transition: all 0.3s ease 0s;
}

#header .nav li a:hover {
  transition: all 0.3s ease 0s;
  color:#f9253f;
  border-bottom: 1px solid #f9253f;
}

#header .nav li a:active {
  color:#f9253f;
}
#header .nav li.active a {
  color:#f9253f;
}
#footer {
  margin-bottom: 0;
  margin-top: 0px;
  padding: 16px 0 0;
  
}
#footer .logo {
    padding-top: 2px;
}
#footer .logo img {
    display: block;
}
#footer .nav li {
  margin-left: 58px;
}
#footer .nav li a {
  color: #424543;
  font-size: 16px;
  text-decoration: none;
  font-weight: 500;
  border-bottom: 1px solid transparent;
}
#footer .nav li.active a {
    color:#f9253f;
}
#footer .nav li a:hover {
  border-bottom-color: #f9253f;
  color:#f9253f;
}
#footer .inside {
  padding-bottom: 14px;
  border-bottom: 1px solid #e0e0e0;
}
#copy {  
  padding: 21px 0;
}
#copy .copyright {
  border: none;
  color: #424543;
  font: 14px/1 Arial;
}

#copy .social li a {
  display: block;
  text-align: center;
  width: 40px;
}
#copy .social li a img {
  display: block;
}
#toggler-close {
  position: relative;
  width: 26px;
  height: 20px;
  cursor: pointer;
  display: inline-block;
}
#toggler-close > span {
  width: 26px;
  height: 5px;
  margin-bottom: 5px;
  border-radius: 3px;
  background: #fff;
  display: block;
  z-index: 100;
}
#toggler-close .left {
  transform: rotate(-45deg);
  top: 10px;
  left: 0;
  position: absolute;
}
#toggler-close .right {
  transform: rotate(45deg);
  top: 10px;
  left: 0;
  position: absolute;
}
#left-sidebar {
  width: 338px;
  padding-top: 22px;
}
#left-sidebar .banner {
  margin-bottom: 32px;
}
#left-sidebar .banner img {
    max-width: 100%;
}
#left-sidebar > div:last-child > div {
  margin-bottom: 0;
}
#left-sidebar .sidebar-widget-text-2 {
  margin-bottom: 34px;
}
#left-sidebar .sidebar-widget-text-2 .ico {
  margin-bottom: 0px;
}
#left-sidebar .sidebar-widget-text-2 .ico img {
  max-width: 100%;
}
#left-sidebar .sidebar-widget-text-2 .text {
  padding: 12px;
  padding-bottom: 2px;
  text-align: left;
}
#left-sidebar .sidebar-widget-text-2 .text strong {
  font-weight: bold;
}
#left-sidebar .sidebar-widget-text-2 > div {
  text-align: left;
  padding: 0px;
  background-color: #fff;
  border: 1px solid #febf00;  
}
#left-sidebar .sidebar-widget-text-2 > div p {
  margin-bottom: 14px;
  color: #424543;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 500;
  text-align: justify;
}

#left-sidebar .sidebar-widget-text-2 > div p a {
  color: #123e80;
  text-decoration: underline;
}
#left-sidebar .sidebar-widget-text-2 > div p a:hover {
  text-decoration: none;
}
#left-sidebar .sidebar-widget-text-2 > div p.strong {
  line-height: 1.4;
  padding: 0 6px;
  font-size: 16px;
  color:#424543;
  padding-bottom: 2px;
  font-weight: 500;
}
#left-sidebar .sidebar-widget-text-2.text-1 .ico {
  text-align: center;
}
#left-sidebar .sidebar-widget-text-2.text-1 > div {
  text-align: left;
}
#left-sidebar .sidebar-widget-text-2.text-2 .ico {
  text-align: center;
  padding-bottom: 8px;
}
#left-sidebar .sidebar-widget-text-2.text-3 > div {
  border-color: #f9253f
}
#left-sidebar .sidebar-widget-text-2.text-2 > div {
  border-color: #47dd8c
}
#left-sidebar .sidebar-widget-text-2.text-2 div p {
  text-align: center;
}
#left-sidebar .sidebar-widget-text-2.text-2 .list p {
  margin-bottom: 8px;
}
#left-sidebar .sidebar-widget-text-2.text-2 .list {
  padding-bottom: 8px;
}
#left-sidebar .sidebar-widget-text-2.text-2 .list a {
  text-decoration: none;
  border-bottom: 1px solid #123e80;
  transition: all 0.3s ease 0s;
  line-height: 1;
  display: inline;
  color: #123e80;
  font-weight: 500;

}
#left-sidebar .sidebar-widget-text-2.text-2.text-2e .list a {
    display: inline;
}

#left-sidebar .sidebar-widget-text-2.text-2 .list a:hover {
  border-bottom-color: transparent;
  transition: all 0.3s ease 0s;
}
#content-main-part #block1_bg {
  margin-bottom: 32px;
}
#content-main-part .inside {
  padding: 60px 50px 43px;
  background: #fff;
  width: 1180px;
  box-sizing: border-box;
}
#main-content {
  width: 728px;
}
.title {
  color: #101010;
  font-size: 30px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 22px;
  
}
#busstations {
  margin-bottom: 28px;
}
#busstations li {
  margin-bottom: 13px;
}
#busstations .title {
  margin-top: 40px;
  margin-bottom: 28px;
}
#busstations .wide {
  width: 358px;
  height: 207px;
  overflow: hidden;
  max-width: 49.5%;
}

#busstations .busstation-wrapper {
  position: relative;
}
#busstations .busstation-wrapper .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  transition: all 0.3s ease 0s;
}
#busstations .busstation-wrapper .overlay:hover {
  background: rgba(0, 0, 0, 0.55);
  transition: all 0.3s ease 0s;
}
#busstations .busstation-wrapper .overlay:hover .caption p span {
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);

}
#busstations .busstation-wrapper .image {
  margin-bottom: 4px;
}
#busstations .busstation-wrapper .image img {
  display: block;
}
#busstations .busstation-wrapper .caption {
  padding: 9px 12px;
  position: relative;
}
#busstations .busstation-wrapper .caption:before {
  position: absolute;
  top: -18px;
  height: 20px;
  width: 15px;
  background: url('../images/pin.svg') no-repeat center 0;
  content:"";
  left: 12px;
  background-size: 15px;
}
#busstations .wide:hover .busstation-wrapper .caption:before {
  background-position: center bottom;
}
#busstations .busstation-wrapper .caption p {
  color: #fff;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.3px;
}
#busstations .busstation-wrapper .caption p span {
  border-bottom: 1px solid transparent;
  line-height: 1;
  display: inline-block;

}
.soc-widget {
  background: #f7c61b;
  margin-bottom: 28px;
  padding: 16px 20px;
  box-sizing: border-box;
  border: 1px solid #ecb200;
  border-radius: 7px;
}
.soc-widget .social li {
  margin-left: 6px;
}
.soc-widget .social li a,
.soc-widget .social li img {
  display: block;
}
.soc-widget .left-part img {
  display: inline-block;
  vertical-align: middle;
}
.soc-widget .left-part span {
  display: inline-block;
  vertical-align: middle;
  margin-left: 15px;
  color: #fff;
  font: 700 18px "Avenir Next Cyr";
}
.soc-widget.list {
  margin-top: 30px;
}

#helpfull-information .description strong{
    font-weight: bold;
}
.article.about img,
.article.news-detail img {
  float: left;
  margin: 6px 20px 10px 0;
}

#helpfull-information,
.article.about,
.article.news-detail {
  margin-top: 40px;
}

.article.news .desc {
  width: calc(100% - 248px);
}
.article.news .row {
  border-bottom: 1px solid #ebebeb;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
.article.news .row:last-child {
    border-bottom: none;
}
.article.news .row .image {
    width: 235px;
}
.article.news .row .image img {
    max-width: 100%;
}
.article.news .title {
  font-size: 30px;
  font-weight: 700;
  margin-top: 41px;  
  margin-bottom: 28px;
}
.article.news .news-list .small-title {
  margin-bottom: 10px;
}
.article.news .news-list .small-title a {
  border-bottom: 1px solid transparent;
  transition: all 0.3s ease 0s;
  display: inline-block;
  padding-bottom: 1px;
  font-weight: 500;
  font-size: 17px;
  color: #123e80;
}
.article.news .desc .text {
    text-align: justify;
}
.article.news .desc .text p {
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: -0.8px;
}
.article.news .desc .more {
  margin-top: 8px;
}
.article.news .desc .more a {
  font-size: 14px;
  display: inline-block;
  border-bottom: 1px solid #123e80;
  transition: all 0.3s ease 0s;
}
.article.news .news-list .small-title a:hover{
  /*border-bottom: 1px solid #123e80;*/
  text-decoration: underline;
}
.article.news .desc .more a:hover {
  border-bottom-color: transparent;
}
#helpfull-information .title,
.article.about .title,
.article.news-detail .title {
  margin-bottom: 14px;
}
.article.news-detail .title {
  font-size: 24px;
  font-weight: 700;
}
.article.about .title {
  line-height: 1.2;
  margin-bottom: 20px;
}
.soc-with-angle {
  background: #ececec;
  margin-bottom: 42px;
}
.soc-with-angle .right {
  padding-right: 24px;
}
.soc-with-angle .left {
  padding-left: 50px;
  background: url('../images/angle.png') no-repeat 0 center;
  padding: 19px 84px 19px 40px ;
  color:#fff;
  font: 700 18px/1.2 "Avenir Next Cyr";
}
#helpfull-information .article-title,
.article.about .article-title,
.article.news-detail .article-title {
  color: #214d77;
  text-align: center;
  margin-bottom: 20px;
}
#helpfull-information .description,
.article.about .description,
.article.news-detail .description {
  margin-bottom: 46px;
  padding-top: 4px;
  text-align: justify;
}

#helpfull-information .description .about_img,
.article.about .description .about_img,
.article.news-detail .description .about_img {
  display: inline-block;
  margin: 0 16px 0 0;
  
}
#helpfull-information .description p,
.article.about .description p,
.article.news-detail .description p {
  font: 16px/1.4 "Avenir Next Cyr";
  margin-bottom: 7px;
  letter-spacing: -0.2px;
  font-weight: 500;
  color: #424543;
}
#helpfull-information .description p.strong,
.article.about .description h2.strong,
.article.news-detail .description h2.strong { 
  font: 600 18px/1.6 "Avenir Next Cyr";
  color: #424543;
  margin-bottom: 5px;
  padding-top: 4px;
  letter-spacing: -0.5px;
}
#helpfull-information .description ul,
.article.about .description ul,
.article.news-detail .description ul {
  margin-bottom: 11px;
}
#helpfull-information .description li,
.article.about .description li,
.article.news-detail .description li {
  font: 15px/1.4 "Avenir Next Cyr";
  margin-bottom: 1px;
  color: #4e5055;
}
#helpfull-information .description li i,
.article.about .description li i,
.article.news-detail .description li i {
  color: #1872a8;
  font-style: normal;
  font-size: 14px;
}
#helpfull-information .description h2,
.article.about .description h2,
.article.news-detail .description h2 {
  color: #4e5055;
  font: 20px/1.2 "Avenir Next Cyr";
}
#block_form {
  margin-bottom: 30px;
  margin-top: -20px;
}
#block_form .form-desc {
  display: none;
}
#block_form .form-desc.active {
  display: block;
}
#block_form .tabs {
    position: relative;
    z-index: 2;
}
#block_form .tabs .tab-1 {
  margin-left: 68px;
}
#block_form .tabs .tab-2 {
  margin-right: 68px;
}
#block_form .tabs .tab-item {
  width: 270px;
  color: #fff;
  font: 500 18px/42px "Avenir Next Cyr";
  cursor: pointer;
  height: 42px;
  text-align: center;
  background: #c7c5c5;
  border-radius: 8px 8px 0 0;
  transition: all 0.3s ease 0s;
 
}

#block_form .tabs .tab-item:hover,
#block_form .tabs .tab-item.active {
  color: #fff;
  transition: all 0.3s ease 0s;
  background: #47dd8c;
}

#block_form .search input {
  background: #fea601 url('../images/search.png') no-repeat 47px center;
  width: 182px;
  height: 42px;
  text-align: center;
  color: #fff;
  font: 15px "Avenir Next Cyr";
  text-transform: uppercase;
  border-radius: 6px;
  border: none;
  cursor: pointer;
  padding: 0;
  padding-left: 13px;
}
#block_form .search input:hover {
  background-color: #ffad12;
}
#block_form .forms {
  
  background: url('../images/form-main.jpg') no-repeat center 0;
  border-radius: 10px;
  padding: 37px 34px 31px;
}
#block_form .forms .control-label {
  color: #868686;  
  display: block;
  margin-bottom: 6px;
  position: relative;
  letter-spacing: 0.2px;
}

#block_form .forms button {
  background: #f9253f;
  border-radius: 8px;
  border: none;
  color: #fff;
  cursor: pointer;
  font-size: 18px;
  font-weight: bold;
  box-shadow: 0px 2px 3px 0px rgba(249, 37, 63, 0.34);
  text-transform: uppercase;
  width: 200px;
  height: 50px;
  line-height: 50px;
  transition: all 0.3s ease 0s;
  margin-left: 102px;
}
#block_form .forms #station-form  button {
  margin-left: 0px;
}
#block_form .forms button:hover {
  background: #febf00;
  transition: all 0.3s ease 0s;
  box-shadow: 0px 2px 3px 0px rgba(254, 191, 0, 0.34);
}
#block_form .forms .form-group {
  margin-bottom: 30px;
  display: inline-block;
  position: relative;
}
#block_form .forms .form-group input {
  width: 302px;
  height: 52px;
  padding: 0 10px;
  font: 16px "Avenir Next Cyr";
  border: 1px solid #c7c5c5;
  border-radius: 8px;
 
  background-color: #fff;
  box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.07);
  box-sizing: border-box;
}
#block_form .forms .form-group input#routeform-date {
  width: 202px;
}

#block_form .forms .label {
  margin-bottom: 6px;
  display: block;
}
#block_form .forms .label img {
  margin-right: 3px;
  vertical-align: middle;
  display: inline-block;
}
#block_form .forms .label span {
  vertical-align: middle;
  display: inline-block;
  color: #4e5055;
  font: 13px/1 "Avenir Next Cyr";
}
#block_form .forms .row-input input {
  width: 308px;
  height: 44px;
  box-shadow: 0 0 2px #e4dede;
  padding-left: 8px;
  color: #4e5055;
  font: 16px "Avenir Next Cyr";
  border-radius: 6px;
  box-sizing: border-box;
  max-width: 100%;
}
#block_form .forms .row-input-single input {
  width: 460px;
}
#block_form #route-form {
  display: none;
}
#block_form #route-form .field-routeform-from {
  margin-right: 42px;
}

#block_form #route-form .field-routeform-date {
  margin-right: 148px;
}

#block_form #station-form {
  width: 530px;
  display: none;
  margin: 0 auto;
}
#block_form #station-form .field-stationform-date {
  margin-right: 125px;
  width: 200px;
}

#block_form #station-form .field-stationform-date input {
  width: 200px;
}
#block_form #station-form .field-stationform-from {
  width: 530px;
}

#block_form #station-form .field-stationform-from input {
  width: 530px;
}
#block_form #route-form.active {
  display: block;
}
#block_form #station-form.active {
  display: block;
}
#usfull-stations {
  margin-bottom: 27px;
}
#usfull-stations .links-of-roads {
  padding-top: 6px;
}
#usfull-stations .links-of-roads li {
  width: 32%;
  text-align: center;
  margin-bottom: 18px;
}
#usfull-stations .links-of-roads li a {
  color: #123e80;
  font-size: 16px;
  border-bottom: 1px solid #123e80;
  transition: all 0.3s ease 0s;
  font-weight: 500;
  padding-bottom: 1px;

}
#usfull-stations .links-of-roads li a:hover {
  border-bottom: 1px solid transparent;
  transition: all 0.3s ease 0s;
}
#news {
  padding-top: 32px;
  margin-bottom: 34px;
}
#news .lists-of-news .news-row {
  background: #f9fbfc;
  border-radius: 4px;
  padding: 15px 13px;
  border: 1px solid #d5e6fa;
  margin-bottom: 4px;
}
#news .lists-of-news .news-row .news-title {
  margin-bottom: 8px;
}
#news .lists-of-news .news-row .news-title a {
  color: #214d77;
  text-decoration: none;
  display: inline-block;
  font: 700 18px/1 "Avenir Next Cyr";
}
#news .lists-of-news .news-row .news-title a img {
  display: inline-block;
  vertical-align: middle;
}
#news .lists-of-news .news-row .news-title a span {
  display: inline-block;
  vertical-align: middle;
  margin-left: 8px;
}

#news .lists-of-news .news-row .news-title a span:hover {
  text-decoration: underline;
}
#news .lists-of-news .news-row .news-description p {
  color: #424543;
  text-align: justify;
  font: 15px/1.4 "Avenir Next Cyr";
}
#news .lists-of-news .news-row .read-more {
  padding-top: 4px;
}
#news .lists-of-news .news-row .read-more a {
  border-bottom: 1px solid #6f859e;
  color: #214d77;
  transition: all 0.3s ease 0s;
  font: 14px/0.9 "Avenir Next Cyr";
  display: inline-block;
}
#news .lists-of-news .news-row .read-more a:hover {
  border-bottom-color: transparent;
  transition: all 0.3s ease 0s;
}
.banner-position-inside-4 {
  margin-top: 30px;
}
#calendar {
  padding-top: 38px;
  padding-bottom: 14px;
}
#calendar .title span {
  color: #214d77;
}
.banner-position-inside.mb {
  margin-bottom: 44px;
}

#calendar .short-description {
  margin-bottom: 34px;
}
#calendar .short-description p {
  color: #4e5055;
  font: 15px/1.5 "Avenir Next Cyr";
  text-align: justify;
 
}
#calendar .listof-calendars {
  margin-top: 33px;
}
#calendar .listof-calendars .calendar-item {
  width: 354px;
  margin-bottom: 25px;
}
#calendar .listof-calendars .calendar-item .month-year {
  height: 50px;
  background: #214d77;
  color: #fff;
  text-align: center;
  font: 20px/50px "Avenir Next Cyr";
}
#calendar .listof-calendars .calendar-item table {
  text-align: center;
  width: 100%;
  border: 1px solid #e4dede;
  padding: 0 8px 16px;
  background: #f7f7f7;
}
#calendar .listof-calendars .calendar-item table thead th {
  color: #214d77;
  font: 13px "Avenir Next Cyr";
  height: 34px;
  padding-top: 4px;
  vertical-align: middle;
  text-align: center;
}
#calendar .listof-calendars .calendar-item table tbody td {
  text-align: center;
  padding: 2px;
}
#calendar .listof-calendars .calendar-item table tbody td > div {
  border: 1px solid #e4dede;
  width: 42px;
  height: 29px;
  font: 14px/29px "Avenir Next Cyr";
  color: #b1b1b1;
  vertical-align: middle;
}
#calendar .listof-calendars .calendar-item table tbody td.event div {
  color: #121212;
  border-color: #3db39e;
  cursor: pointer;
  background: url('../images/check_small.png') no-repeat right 3px top 3px;
}
#contacts {
  padding-top: 34px;
}
#contacts .title {
  margin-bottom: 32px;
  font-weight: 600;
  padding-top: 6px;
}

#contacts .contact-description p {
  text-align: left;
  padding: 0 52px 0 130px;
  text-align: left;
  color: #424543;
  font: 500 16px/1.45 "Avenir Next Cyr";
  margin-bottom: 34px;
  position: relative;
}
#contacts .contact-description p:after {
  position: absolute;
  top: 0;
  left: 66px;
  background: url('../images/info.png') no-repeat center;
  width: 51px;
  height: 51px;
  content:"";
}
#contacts .contact-description p a {
  color: #123e80;
}
#contacts .contact-description p.strong {
  color: #033a72;
  margin-bottom: 0;
}
#contacts .contact-form .title {
  margin-bottom: 35px;
}
#contacts .contact-form .form-row {
  margin-bottom: 18px;
}
#contacts .contact-form input.error,
#contacts .contact-form textarea.error {
  box-shadow: 0 0 5px #ff5656 !important;
}
#contacts .contact-form .text input {
  width: 348px;
  height: 51px;
  border-radius: 10px;
  border: 1px solid #c7c5c5;
  background: #fff;
  padding-left: 12px;
  box-sizing: border-box;
  font: 16px "Avenir Next Cyr";
  color: #4e5055;
  
  box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.07);
}
#contacts .contact-form .textarea textarea {
  background: #fff;
  padding: 12px;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #c7c5c5;
  height: 96px;
  border-radius: 10px;
  resize: none;
  font: 16px "Avenir Next Cyr";
  color: #4e5055;
   
  box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.07);
}
#contacts .contact-form .submit {
  text-align: center;
  margin-bottom: 42px;
}
#contacts .contact-form .submit input {
  background: #f9253f;
  width: 200px;
  height: 50px;
  text-align: center;
  color: #fff;
  font: 600 18px "Avenir Next Cyr";
  text-transform: uppercase;
  border-radius: 6px;
  border: none;
  cursor: pointer;
  padding: 0;
  transition: all 0.3s ease 0s;
  box-shadow: 0px 2px 3px 0px rgba(249, 37, 63, 0.34);
}
.caption-footer {
  margin-bottom: 24px;
}
.caption-footer .checked:after {
  position: absolute;
  width: 15px;
  height: 15px;
  content: "";
  top: 0;
  left: 0;
  background: url('../images/checked.png') no-repeat center;
}
.caption-footer .labell a,
.caption-footer .labell {
  color:#868686;
  font-size: 14px;
}
.caption-footer .check {
  background: #ffd800;
  width: 15px;
  height: 15px;
  position: relative;
  border-radius: 4px;
  margin-right: 8px;
}
#contacts .contact-form .submit input:hover {
  background-color: #febf00;
  box-shadow: 0px 2px 3px 0px rgba(254, 191, 0, 0.34);
  transition: all 0.3s ease 0s;
}
#search {
  padding-top: 38px;
  padding-bottom: 14px;
}
#search .title span {
  color: #214d77;
  display: block;
}
#search .short-description {
  margin-bottom: 34px;
}
#search .short-description p {
  color: #4e5055;
  font: 15px/1.5 "Avenir Next Cyr";
  text-align: justify;
 
}
#bus-page {
  padding-top: 38px;
  padding-bottom: 30px;
}
#bus-page .title {
  line-height: 1.2;
  font-weight: 700;
}
#bus-page .title span {
  color: #214d77;
}
#bus-page .short-description {
  margin-bottom: 34px;
}
#bus-page .short-description p {
  color: #4e5055;
  font: 500 15px/1.5 "Avenir Next Cyr";
  text-align: justify;
 
}
.train-table {
  margin-top: 40px;
}
.train-table .result-row {
  margin-bottom: 16px;
  border: 1px solid #e5e4e4;
  background: #f9f9f9;
}
.train-table .result-row .lbl-bottom {
  font: 500 13px/1.2 "Avenir Next Cyr";
  margin-top: 8px;
  color: #424543;
}
.train-table .result-row .lbl-bottom a {  
    color: inherit;    
    text-decoration: underline;
}
.train-table .result-row .lbl-bottom a:hover {
    text-decoration: none;
}
.train-table .result-row > div {
  padding: 16px 12px;
}
.train-table .result-row .result-footer {
  background: #e8e8e8;
  font: 500 13px/1.3 "Avenir Next Cyr";
  color: #424543;
  padding: 10px 12px;
}
.train-table .result-row .result-footer.red {
  color:#f9253f;
}
.train-table .result-row .result-footer strong {
  color: #424543;
}
.train-table .result-row .departures {
  width: 166px;
  position: relative;
}
.train-table .result-row .departures .label {
  color: #424543;
  font: 500 14px/1 "Avenir Next Cyr";
  margin-bottom: 10px;
  display: block;
  padding: 0;
  text-align: inherit;
}
.soc-with-angle.mt {
  margin-top: 44px;
}
.bus-information {
  margin-bottom: 44px;
  margin-top: 44px;
}
.bus-information .article2 {
    margin-top: 40px;
}
.bus-information .title {
  line-height: 1.2;
  font-weight: 600;
}
.bus-information p {
  margin-bottom: 10px;
  text-align: justify;
  letter-spacing: -0.4px;
  color: #424543;
  line-height: 1.4;
}
.bus-information p strong {
  font-weight: 700;
  display: block;
  padding-top: 5px;
}
.train-table .result-row .departures .time {
  font: 700 18px/1 "Avenir Next Cyr";
  color: #1f1f1f;
}
.banner-position-inside.mb {
  margin-bottom: 40px;
}
.train-table .result-row .departures:after {
  top: 4px;
  right: 42px;
  width: 26px;
  content: "";
  position: absolute;
  height: 10px;
  background: url('../images/road-arrow.png') no-repeat center 0;
}
.train-table .result-row .departures.empty:after {
  right: auto;
  left: 0;
  width: 238px;
}
.train-table .result-row .departures.no-line {
  position: static;
}
.train-table .result-row .departures.no-line:after {
  right: 52px;
  width: 238px;
}
.train-table .result-row .waiting.show .time.small {
  text-align: center;
  width: 76px;

}
.train-table .result-row .waiting.show .time.small span {
  display: block;
  text-align: center;
  font-weight: 500;
  margin-bottom: 10px;
}
.train-table .result-row .waiting.empty:after {
  display: none;
}
.train-table .result-row .train-ad {
  position: relative;
}
.train-table .result-row .waiting {
  width: 134px;
  position: relative;
}
.train-table .result-row .waiting .label {
  color: #424543;
  font: 14px/1 "Avenir Next Cyr";
  margin-bottom: 10px;
  display: block;
  padding: 0;
  text-align: inherit;
}
.train-table .result-row .waiting .time {
  font: 700 14px/1 "Avenir Next Cyr";
  color: #1f1f1f;
}
.train-table .result-row .waiting .time.small {
  font-size: 14px;
}
.train-table .result-row .waiting .time.small span {
  font: 700 14px/1 "Avenir Next Cyr";
  display: none;
  color: #424543;
}
.train-table .result-row .train-ad {
  padding-right: 12px;
}
.train-table .result-row .train-ad.reverse {
  margin-right: 296px;
}
.train-table .result-row .reverse .departures:after {
  transform: rotate(180deg)
}
.train-table .result-row .waiting:after {
  top: 4px;
  right: 24px;
  width: 26px;
  content: "";
  position: absolute;
  height: 10px;
  background: url('../images/road-arrow.png') repeat-x center 0;
}
.train-table .result-row .arrivals {
  width: 146px;
}
.train-table .result-row .arrivals .label {
  color: #424543;
  font: 500 14px/1 "Avenir Next Cyr";
  margin-bottom: 10px;
  display: block;
  padding: 0;
  text-align: inherit;
}
.train-table .result-row .arrivals .time {
  font: 700 18px/1 "Avenir Next Cyr";
  color: #1f1f1f;
}
.train-table .train-info {
  width: 160px;
}
.train-table .train-number {
  font: 700 18px/1 "Avenir Next Cyr";
  color: #1f1f1f;
  margin-bottom: 10px;
}
.train-table .train-name {
  font: 500 16px/1.4 "Avenir Next Cyr";
  vertical-align: top;
  margin-top: -5px;
  color: #101010;
  margin-bottom: 10px;
}
.train-table.by-bus .train-name {
    margin-bottom: 0;
}
.train-table .train-name a {    
  text-decoration: underline;
  color: #101010;
}
.train-table .train-name a:hover {        
  text-decoration: none;
}
.train-table .train-links {
  width: 164px;
  padding-right: 16px;
  padding-top: 16px;
}
.train-table .train-links li {
  color:#f9253f;
  font: 14px/1.4 "Avenir Next Cyr";
}
#route-form {
  position: relative;
}
.refresh-button {
  position: absolute;
  top: 40px;
  left: 48%;
}
.train-table .train-links a {
  color: #f9253f;
  font: 500 14px/1 "Avenir Next Cyr";
  display: inline-block;
  border-bottom: 1px solid #f9253f;
  padding-bottom: 1px;
  transition: all 0.3s ease 0s;
}
.train-table .train-links a:hover {
  border-bottom-color: transparent;
  transition: all 0.3s ease 0s;
}

.train-table.bus .train-info {
  width: 180px;
}
.train-table.bus .result-row .departures {
  width: 160px;
}
.train-table.bus .result-row .departures:after {
  right: 20px;
}
.train-table.bus .result-row .waiting {
  width: 150px;
}
#helpfull-information {
  margin-top: 32px;
}
#helpfull-information .title span {
  display: block;
  color: #033a72;
}
#nearest-stations {
  margin-top: 32px;
  margin-bottom: 16px;
}
#nearest-stations .links-of-roads {
  padding-top: 6px;
}
#nearest-stations .links-of-roads li {
  width: 24%;
  text-align: center;
  margin-bottom: 17px;
}
#nearest-stations .links-of-roads li a {
  color: #214d77;
  font: 18px/1 "Avenir Next Cyr";
  text-decoration: underline;
}
#similar-dirrections {
  margin-bottom: 40px;
}
#similar-dirrections .links-of-dirrections {
  text-align: justify;
}
#similar-dirrections .title {
    font-weight: 600;
}
#similar-dirrections .links-of-dirrections li {
  color: #4e5055;
  font: 500 14px/1.7 "Avenir Next Cyr";
  display: inline-block;
  vertical-align: middle;
  display: inline;
}
#similar-dirrections .links-of-dirrections li a {
  display: inline;
  color: #123e80;
}
#similar-dirrections .links-of-dirrections li a:hover {
  text-decoration: underline;
}
.banner-1,
.banner-2,
.banner-4,
.banner-3 {
  text-align: center;
}
.banner-1 img,
.banner-2 img,
.banner-4 img,
.banner-3 img {
  max-width: 100%;
  display: inline-block;
}
#mobile-sidebar {
  position: fixed;
  left: -310px;
  z-index: 999;
  font: 18px "Avenir Next Cyr";
  height: 100%;
  display: inline-block;
  background: #47dd8c;
}
#mobile-sidebar #close-mobile {
  cursor: pointer;
  text-align: right;
}
#mobile-sidebar .close {
  text-align: center;
  padding-bottom: 20px;
  padding-top: 20px;
  text-align: right;
  display: none;
}
#mobile-sidebar .close > div {
  cursor: pointer;
  display: inline-block;
  width: 30px;
  height: 30px;
  position: relative;
}
#mobile-sidebar .close > div:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  background: #fff;
  content: " ";
  height: 3px;
  transform: rotate(45deg);
}
#mobile-sidebar .close > div:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  background: #fff;
  content: " ";
  height: 3px;
  transform: rotate(-45deg);
}
#mobile-sidebar #mobile-navigation {
  padding: 20px 20px 20px 30px;
  box-sizing: border-box;
  width: 300px;
}
#mobile-sidebar #mobile-navigation li {
  color: #fff;
  cursor: pointer;
  padding: 5px 0;
  margin-bottom: 10px;
}
#mobile-sidebar #mobile-navigation li a {
  display: inline-block;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.5px;
}
#mobile-sidebar #mobile-navigation li.active a {
  border-bottom: 1px solid #fff;
}
#mobile-sidebar.open {
  left: 0;
  box-shadow: 2px 2px 11px rgba(0, 0, 0, 0.8);
}
.help-block-error {
  position: absolute;
  bottom: 2px;
  left: 10px;
  font-size: 13px;  
  color: #a94442;
}
.field-routeform-from,
.field-routeform-to {
  display: inline-block;
  vertical-align: middle;
  width: 306px;
}
.ya-share2__container_size_m .ya-share2__icon {
    width: 40px !important;
    height: 40px !important;
}
#success {
    text-align: center;
    padding: 30px 20px;
    width: 380px;
    display: none;
    font: 700 18px/1 "Avenir Next Cyr";
    box-sizing: border-box;
}
#success p {
    margin-top: 10px;
    font: 16px/1 "Avenir Next Cyr";
}

.copy_h{    
    width: 740px;
    margin: 0 auto;    
}

.copy_v{
    display: none;
    width: 240px;
    margin: 0 auto;    
}

.copy_h.ukraine{    
    width: 740px;
    margin: 0 auto;
    text-align: left;
}

.copy_v.ukraine{    
    width: 210px;
    margin: 0 auto;
    text-align: left;
}

.copyright {
    font: 12px/18px Arial, sans-serif;
    display: inline-block;
    text-decoration: none;
    border: 1px solid rgba(0,0,0,.2);
    border-radius: 2px;
    color: #000;
}
.copyright_type_horiz {
    line-height: 28px;
    width: 730px;                        
    padding: 12px 28px 6px 28px;
}
.logo-yandex {
    display: inline-block;
    padding-right: 10px;
}

.copyright__link {
    display: inline-block;
    color: #44b;
}
.copyright__link:hover {
    color: #e00;
}
.copyright_type_horiz .copyright__data {
    display: inline-block;
    padding: 0 0 0 40px;
}
.copyright_type_horiz .copyright__link {
    display: inline-block;
    float: right;
}
.arrow-yandex {
    font: 13px textbook, sans-serif;
    line-height: 27px;
    position: relative;
    display: inline-block;
    width: 93px;
    height: 25px;
    margin: 2px 0 0 0;
    padding: 0 0 0 7px;
    vertical-align: top;
}
.copyright_theme_yellow .arrow-yandex {
    background: url('../images/arrow_yellow.png') top left no-repeat;
}
         
.copyright_type_vert
{
    width: 208px;    
    padding: 18px;
}

.copyright__data
{
    vertical-align: top;
    opacity: .6;
    filter: alpha(opacity=60);
    color: #000;
}

.copyright_type_vert .copyright__data
{
    margin-top: 12px;
}

.datepicker table tr td, .datepicker table tr th {
    font: 15px/1.4 "Avenir Next Cyr";
}

.forms-similar {
    font: 16px/1.4 "Avenir Next Cyr";
    font-weight: 500;
    color: #424543;
    margin-top: 20px;
    text-align: left;
}

.forms-similar label {
    display: block;
    margin-bottom: 8px;
    cursor: pointer;
}

.forms-similar input[type="radio"] {
    -webkit-appearance: radio;
}

.forms-similar button.fm4 {
    background: #f9253f;
    border-radius: 8px;
    border: none;
    color: #fff;
    cursor: pointer;
    font-size: 18px;
    font-weight: bold;
    box-shadow: 0px 2px 3px 0px rgba(249, 37, 63, 0.34);
    text-transform: uppercase;
    width: 200px;
    height: 50px;
    line-height: 50px;
    transition: all 0.3s ease 0s;  
    margin-top: 15px;
}

.forms-similar button.fm4:hover {
    background: #febf00;
    transition: all 0.3s ease 0s;
    box-shadow: 0px 2px 3px 0px rgba(254, 191, 0, 0.34);
}

.bus-information p.desc-p {
    margin-bottom: 20px;
}

.forms-similar .departures-list, .forms-similar .arrivals-list {
    float: left;
    width: 50%;
}

.forms-similar h3 {
    margin-bottom: 20px;
    color: #f9253f;
    font-size: 20px;
}

.buy-ticket{   
    margin-top: 20px;
}

.buy-ticket button {
    background: #f9253f;
    border-radius: 8px;
    border: none;
    color: #fff;
    cursor: pointer;
    font-size: 13px;
    font-weight: bold;
    box-shadow: 0px 2px 3px 0px rgba(249, 37, 63, 0.34);
    text-transform: uppercase;
    width: 128px;
    height: 35px;
    line-height: 35px;
    transition: all 0.3s ease 0s;
}

.buy-ticket button:hover {
    background: #febf00;
    transition: all 0.3s ease 0s;
    box-shadow: 0px 2px 3px 0px rgba(254, 191, 0, 0.34);
}

.article.news-detail .description .buy-ticket-desc{
    margin-bottom: 20px;
}



