.calendar {
  position: relative;
  margin: 20px auto 20px; }
  @media only screen and (max-width: 992px) {
    .calendar {
      display: none; } }
  .calendar__header {
    position: relative;
    font: bold 18px/130% "Arial", sans-serif;
    text-transform: uppercase;
    margin: 0 0 7px 0;
    color: #000000; }
    .calendar__header a {
      color: #000000;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .calendar__header a:hover, .calendar__header a:active, .calendar__header a:focus {
        color: #578ce2; }
  .calendar__btn {
    margin: 0 auto;
    height: 35px;
    color: #000;
    font: 300 14px/100% "Arial", sans-serif;
    position: relative;
    padding: 0 5px;
    text-transform: lowercase;
    -webkit-transition: all .3s ease;
    transition: all .3s ease; }
    .calendar__btn:hover, .calendar__btn:active, .calendar__btn:focus {
      color: #578ce2; }
  .calendar__title {
    color: #000000;
    font: 500 16px/100% "Arial", sans-serif; }
  .calendar__weekday {
    color: #000;
    font: 300 14px/130% "Arial", sans-serif;
    position: relative;
    text-transform: lowercase; }
  .calendar__grey {
    color: #a7a7a7; }
  .calendar__day {
    color: #a7a7a7;
    border-bottom: 1px solid #d9dee1 !important; }
  .calendar__item {
    position: relative;
    -webkit-transition: all .3s ease;
    transition: all .3s ease; }
    .calendar__item.active:before {
      content: '';
      position: absolute;
      background: #e5353c;
      z-index: 1;
      height: 26px;
      width: 26px;
      -webkit-border-radius: 26px;
      border-radius: 26px;
      left: 12.5%;
      right: 12.5%;
      top: 12.5%;
      bottom: 12.5%;
      overflow: hidden; }
    .calendar__item a {
      display: block;
      -webkit-transition: all .3s ease;
      transition: all .3s ease;
      position: relative;
      z-index: 1; }
    .calendar__item.active {
      color: #ffffff; }
      .calendar__item.active a {
        color: #ffffff; }
  .calendar table.calendar__head {
    border-top: 2px solid #4d5a68; }
    .calendar table.calendar__head td {
      height: 40px !important;
      padding: 7px 0 0 0; }
  .calendar table.calendar__bottom {
    border-bottom: 2px solid #4d5a68; }
    .calendar table.calendar__bottom td {
      height: 30px !important; }
  .calendar table {
    width: 100%;
    min-width: 100% !important;
    color: #000;
    margin: 0 auto;
    border: 0 none; }
    .calendar table thead {
      background-color: transparent !important; }
    .calendar table td {
      font: 300 14px/100% "Arial", sans-serif;
      height: 30px !important;
      padding: 0;
      text-align: center;
      border: 0 none; }
    .calendar table tr:nth-child(2n+2) {
      background-color: transparent; }
    .calendar table tr {
      height: 30px !important; }

.calendar-min .calendar__link:after {
  right: -5px;
  top: -3px; }

.calendar-min .calendar__btn {
  height: 40px;
  font-size: 0;
  padding: 0;
  width: 50px; }
  .calendar-min .calendar__btn:before {
    content: '';
    display: inline-block;
    vertical-align: middle; }
  .calendar-min .calendar__btn--left {
    text-align: right; }
    .calendar-min .calendar__btn--left:before {
      background-image: url(/local/static/build/img/sprite/sprite.png);
      background-position: -52px -90px;
      width: 8px;
      height: 14px; }
  .calendar-min .calendar__btn--right {
    text-align: left; }
    .calendar-min .calendar__btn--right:before {
      background-image: url(/local/static/build/img/sprite/sprite.png);
      background-position: -44px -90px;
      width: 8px;
      height: 14px; }

.calendar-min .calendar__title {
  color: #000000;
  font: bold 16px/100% "Arial", sans-serif; }

.calendar-main .calendar__header {
  display: none; }
