#header .inner {
  background: transparent;
  height: auto;
  padding: 0;
  padding-top: 25px;
}

#header .logo {
  width: 560px;
  float: left;
}

#header .logo p {
  margin: 0;
  width: 553px;
  height: 93px;
}

#header .contacts {
  width: 220px;
  float: right;
  text-align: right;
  padding-top: 10px;
}

#header .contacts ul li {
  display: inline-block;
  margin-left: 5px;
}

#header .contacts ul li a img {
  opacity: .7;
}

#header .contacts ul li a:hover img {
  opacity: 1;
}

#header .contacts p {
  margin: 0;
}

#header .contacts p.callback {
  margin-top: -10px;
}

#header .contacts p.callback a {
  text-decoration: none;
  border-bottom: 1px dashed;
  font-size: 15px;
  color: #ffffff;
}

#courses_filter_wrapper {
  height: 59px;
  position: relative;
}

#courses_filter_wrapper .wrapper_outer {
  background-color: #e4e4e4;
  height: 55px;
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
}

#courses_filter_wrapper .wrapper_outer.fixed {
  position: fixed;
  left: 0;
  right: 0;
  top: 34px;
  z-index: 5000;
}

/* @UPD 2018-04-22_1852 снимаем fixed для мобильных устройств */
@media all and (min-width: 320px) and (max-width: 959px) {
	#courses_filter_wrapper .wrapper_outer.fixed {
  	position: static;
  }
}

#courses_filter_wrapper .inner {
  padding-top: 10px;
  padding-bottom: 10px;
}

#courses_filter_wrapper form {
  margin: 0;
}

#courses_filter_wrapper .form-item {
  float: left;
  margin-right: 20px;
}

#courses_filter_wrapper .form-item:last-child {
  margin-right: 0;
}

#courses_filter_wrapper .form-item.form-item-wide {
  width: 245px;
}

#courses_filter_wrapper .form-item.form-item-middle {
  width: 245px;
}

#courses_filter_wrapper .form-item.form-item-narrow {
  width: 140px;
}

#courses_filter_wrapper .form-item select {
  width: 245px;
}

#courses_filter_wrapper .select2-container .select2-selection--single {
  height: 34px;
}

#courses_filter_wrapper .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 34px;
}

#courses_filter_wrapper .select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 4px;
}

.select2-dropdown {
  text-align: left !important;
  z-index: 6000;
}

.select2-results__option {
  font-size: 12px;
}

.select2-results__option .wrap:before {
  content: '';
  display: inline-block;
  position: relative;
  left: 0px;
  top: 3px;
  width: 16px;
  height: 16px;
  margin-right: 5px;
  background: transparent url(../images/2018_checkbox.png?v=2) no-repeat 0 0;
}

.select2-results__option[aria-selected=true] .wrap:before {
  background-position: -16px 0;
}

#courses_filter_wrapper .cart_wrapper {
  padding-left: 30px;
  background: transparent url(../images/2018_cart_icon.png) no-repeat left center;
}

#courses_filter_wrapper .cart_wrapper p {
  margin: 0;
  padding: 0;
  font-size: 12px;
  line-height: 16px;
}

#courses_filter_wrapper .cart_wrapper p a {
  color: #000000;
  text-decoration: underline;
}

#courses_content_wrapper {
  margin-top: 80px;
  margin-bottom: 60px;
}

#courses_content_wrapper .list_wrapper {
  float: left;
  width: 620px;
}

#courses_content_wrapper.cart .list_wrapper {
  width: 540px;
}

#courses_content_wrapper .list_wrapper .month {
  margin-bottom: 40px;
}

#courses_content_wrapper .list_wrapper .month h3,
#courses_content_wrapper .list_wrapper .order h3,
#courses_content_wrapper .list_wrapper .total h3 {
  font-size: 20px;
  color: #000000;
  text-align: left;
  margin: 0;
  margin-bottom: 5px;
}

#courses_content_wrapper .list_wrapper .event {
  padding-left: 40px;
  padding-top: 35px;
  position: relative;
}

#courses_content_wrapper .list_wrapper .event:before {
  content: ' ';
  position: absolute;
  left: 10px;
  top: 0;
  bottom: 0;
  width: 1px;
  background-color: #000000;
}

#courses_content_wrapper .list_wrapper .event.last:before {
  bottom: auto;
  height: 58px;
}

#courses_content_wrapper .list_wrapper .event .image {
  float: left;
  width: 160px;
  position: relative;
}

#courses_content_wrapper .list_wrapper .event .image img {
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .4);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, .4);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 3px solid #fff;
}

#courses_content_wrapper .list_wrapper .event .image .abbr {
  position: absolute;
  top: 10px;
  left: -5px;
  width: 60px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  background-color: #444444;
}

#courses_content_wrapper .list_wrapper .event .image .abbr:before {
  content: '';
  position: absolute;
  left: -25px;
  top: 12px;
  height: 1px;
  width: 12px;
  background-color: #000000;
}

#courses_content_wrapper .list_wrapper .event.gnm .image .abbr {
  background-color: #415914;
}

#courses_content_wrapper .list_wrapper .event.vpg .image .abbr {
  background-color: #fb5e00;
}

#courses_content_wrapper .list_wrapper .event.ppg .image .abbr {
  background-color: #418fba;
}

#courses_content_wrapper .list_wrapper .event.sbor .image .abbr {
  background-color: #4e473e;
}

#courses_content_wrapper .list_wrapper .event .text {
  overflow: hidden;
}

#courses_content_wrapper .list_wrapper .event .text p.title {
  margin-top: 0;
  font-size: 15px;
  line-height: 20px;
  font-weight: bold;
}

#courses_content_wrapper .list_wrapper .event .text ul,
#courses_content_wrapper .list_wrapper .event .text ul li {
  margin: 0;
  padding: 0;
  list-style: none none;
}

#courses_content_wrapper .list_wrapper .event .text ul li {
  font-size: 13px;
}

#courses_content_wrapper .list_wrapper .event .text .actions a {
  font-size: 13px;
  padding-left: 15px;
  padding-right: 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 2px solid #415914;
}

#courses_content_wrapper .list_wrapper .event .text .actions a.more {
  background-color: #ffffff;
  color: #415914;
}

#courses_content_wrapper .list_wrapper .event .text .actions a.more:hover {
  background-color: #e8e8e8;
}

#courses_content_wrapper .list_wrapper .order {
  position: relative;
}

#courses_content_wrapper .list_wrapper .order:before {
  content: '';
  position: absolute;
  top: 150px;
  right: -85px;
  width: 113px;
  height: 104px;
  background: transparent url(../images/cart_arrow.png) no-repeat 0 0;
}

#courses_content_wrapper .list_wrapper .order form {
  margin: 35px 0;
}

#courses_content_wrapper .list_wrapper .order form .form-item {
  margin: 5px 0;
}

.form-checkbox {
  vertical-align: top;
  margin: 0 3px 0 0;
  width: 16px;
  height: 16px;
}

.form-checkbox + label {
  cursor: pointer;
}

.form-checkbox:not(checked) {
  position: absolute;
  opacity: 0;
}

.form-checkbox:not(checked) + label {
  position: relative;
  display: block;
  padding: 0;
  padding-left: 30px;
}

.form-checkbox:not(checked) + label:before {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  width: 16px;
  height: 16px;
  background: transparent url(../images/2018_checkbox.png) no-repeat 0 top;
}

.form-checkbox:checked + label:before {
  content: '';
  position: absolute;
  top: 2px;
  left: 0;
  width: 16px;
  height: 16px;
  background: transparent url(../images/2018_checkbox.png) no-repeat -16px top;
}

#courses_content_wrapper .total_wrapper {
  background-color: #ededed;
  padding: 20px;
  margin-top: 20px;
}

#courses_content_wrapper .total_wrapper #courses_total_before_discount {
  font-size: 20px;
  color: #777777;
  text-decoration: line-through;
  margin-right: 10px;
}

#courses_content_wrapper .total_wrapper #courses_total_after_discount {
  font-size: 32px;
  color: #000;
}

#courses_content_wrapper .sidebar_wrapper {
  float: right;
  width: 300px;
}

#courses_content_wrapper .sidebar_wrapper .block {
  margin-bottom: 40px;
  background-color: #e4e4e4;
  text-align: center;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .4);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, .4);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 3px solid #fff;
  position: relative;
}

#courses_content_wrapper .sidebar_wrapper .block .image {
  height: 150px;
  overflow: hidden;
  background-color: #777777;
  border-bottom: 3px solid #fff;
}

#courses_content_wrapper .sidebar_wrapper .block .text {
  padding-left: 10px;
  padding-right: 10px;
}

#courses_content_wrapper .sidebar_wrapper .block .text p {
  font-size: 13px;
  line-height: 20px;
}

#courses_content_wrapper .sidebar_wrapper .block .text p.title {
  font-size: 15px;
  font-weight: bold;
}

#courses_content_wrapper .sidebar_wrapper .block .text p a {
  color: #000000;
}

#courses_content_wrapper #courses_testimonials_wrapper {
}

#courses_content_wrapper #courses_testimonials_wrapper .testimonial {
  text-align: left;
  min-height: 250px;
  margin-top: 30px;
}

#courses_content_wrapper #courses_testimonials_wrapper .testimonial .author {
}

#courses_content_wrapper #courses_testimonials_wrapper .testimonial .author .author_image {
  width: 90px;
  float: left;
}

#courses_content_wrapper #courses_testimonials_wrapper .testimonial .author .author_image img {
  border-radius: 50%;
}

#courses_content_wrapper #courses_testimonials_wrapper .testimonial .author .author_name {
  overflow: hidden;
}

#courses_content_wrapper #courses_testimonials_wrapper .testimonial .author .author_name {
  padding-top: 20px;
  font-weight: bold;
}

#courses_content_wrapper #courses_testimonials_wrapper .testimonial .testimonial_text {
}

#courses_content_wrapper #courses_testimonials_wrapper .testimonial .testimonial_text p {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-style: italic;
}

#courses_content_wrapper #courses_testimonials_wrapper .testimonial .testimonial_text p.show_more {
  font-family: 'Noto Sans', Arial, Helvetica, Geneva, SunSans-Regular, sans-serif;
  font-style: normal;
}

#courses_content_wrapper #courses_testimonials_wrapper .testimonial .testimonial_text p.show_more a {
  border-bottom: 1px dashed;
  text-decoration: none;
}

#courses_content_wrapper #courses_testimonials_pager {
  font-size: 13px;
  margin: 30px 0;
  color: #777777;
  height: 24px;
  line-height: 24px;
}

#courses_content_wrapper #courses_testimonials_pager a {
  display: inline-block;
  width: 24px;
  height: 24px;
  overflow: hidden;
  text-indent: -2000px;
  background: transparent url(../images/2018_sidebar_arrows.png) no-repeat 0 0;
}

#courses_content_wrapper #courses_testimonials_pager a.next {
  background-position: -24px 0;
}

#courses_content_wrapper #courses_testimonials_pager #courses_testimonials_pager_inner {
  display: inline-block;
  position: relative;
  top: -7px;
  padding-left: 10px;
  padding-right: 10px;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock:after {
  content: '';
  position: absolute;
  top: -25px;
  right: -5px;
  width: 42px;
  height: 52px;
  background: transparent url(../images/cart_lock.png) no-repeat 0 0;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock .text {
  padding: 10px 0;
  width: 270px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock p.title {
  font-size: 20px;
  font-weight: normal;
  margin-bottom: 20px;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock .form-item {
  margin: 15px 0;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock label {
  display: none;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock input.form-text {
  width: 250px;
  background-color: #ffffff;
  border: 1px solid #cccccc;
  font-size: 14px;
  padding: 10px 8px;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock .form-submit {
  -webkit-appearance: none;
  width: 270px;
  text-align: center;
  border: none;
  background: #415914;
  color: #ffffff;
  font-size: 16px;
  border-radius: 4px;
  padding: 10px 0;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock .payment {
  margin: 10px 0;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock .payment img {
  width: 100%;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock .disclaimer {
  font-size: 12px;
  line-height: 18px;
  text-align: center;
  color: #aaa;
}

#courses_content_wrapper .sidebar_wrapper .block.with_lock .disclaimer a {
  color: #aaa;
}

/* ======================== */
/* Все мобильные устройства */
/* ======================== */

@media all and (min-width: 320px) and (max-width: 959px) {

  #header {
    height: auto;
  }

  #header .inner {
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 25px;
    margin-left: auto;
    margin-right: auto;
  }

  #header .logo {
    width: auto;
    float: none;
  }

  #header .logo img {
    width: 100%;
  }

  #header .contacts {
    width: auto;
    float: none;
    text-align: center;
  }

  #header .contacts ul {
    padding: 0;
  }

  #header .contacts ul li {
    margin-left: 3px;
    margin-right: 3px;
  }

  #courses_filter_wrapper {
    height: auto;
  }

  #courses_filter_wrapper .wrapper_outer {
    height: auto;
  }

  #courses_filter_wrapper form {
    position: relative;
  }

  #courses_filter_wrapper .form-item {
    width: auto !important;
    float: none;
    margin: 0;
    margin-bottom: 10px;
  }

  #courses_content_wrapper .list_wrapper {
    float: none;
    width: auto !important;
  }

  #courses_content_wrapper .sidebar_wrapper {
    float: none;
    width: auto;
    margin-top: 60px;
  }

  #courses_content_wrapper .list_wrapper .month h3,
  #courses_content_wrapper .list_wrapper .order h3,
  #courses_content_wrapper .list_wrapper .total h3 {
    border-bottom: 1px solid;
    padding-bottom: 5px;
  }

  #courses_content_wrapper .list_wrapper .event {
    padding-left: 0;
  }

  #courses_content_wrapper .list_wrapper .event:before {
    display: none !important;
  }

  #courses_content_wrapper .list_wrapper .event .image .abbr:before {
    display: none !important;
  }

  #courses_content_wrapper .list_wrapper .event .text .actions {
    width: 180px;
    margin-top: 20px;
  }

  #courses_content_wrapper .list_wrapper .event .text .actions a {
    display: block;
    margin-bottom: 5px;
  }

  #courses_content_wrapper .list_wrapper .order:before {
    display: none;
  }

}

/* ======== */
/* Планшеты */
/* ======== */

@media (max-width: 959px) and (min-width: 480px) {

  #header .inner {
    width: 460px;
  }

  #courses_filter_wrapper .form-item.form-item-narrow {
    position: absolute;
    right: 0;
    top: 0;
  }

  #courses_content_wrapper #courses_testimonials_wrapper .testimonial {
    min-height: 200px;
  }

}

/* ======== */
/* Телефоны */
/* ======== */

@media all and (min-width: 320px) and (max-width: 479px) {

  #header .inner,
  #courses_filter_wrapper .inner,
  #courses_content_wrapper .inner {
    width: 300px;
  }

  #courses_filter_wrapper form {
    width: 245px;
    margin-left: auto;
    margin-right: auto;
  }

  #courses_content_wrapper .list_wrapper .event .image {
    float: none;
    width: auto;
    margin-bottom: 10px;
  }

}